{"id":49888495,"url":"https://github.com/mobius3/obsidian-auto-toc-plugin","last_synced_at":"2026-05-15T19:34:36.445Z","repository":{"id":354352715,"uuid":"1222961636","full_name":"mobius3/obsidian-auto-toc-plugin","owner":"mobius3","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-28T07:14:17.000Z","size":301,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-28T08:30:49.644Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"0bsd","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mobius3.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-27T22:01:17.000Z","updated_at":"2026-04-28T07:13:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/mobius3/obsidian-auto-toc-plugin","commit_stats":null,"previous_names":["mobius3/obsidian-auto-toc-plugin"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/mobius3/obsidian-auto-toc-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobius3%2Fobsidian-auto-toc-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobius3%2Fobsidian-auto-toc-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobius3%2Fobsidian-auto-toc-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobius3%2Fobsidian-auto-toc-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mobius3","download_url":"https://codeload.github.com/mobius3/obsidian-auto-toc-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mobius3%2Fobsidian-auto-toc-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33076246,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-05-15T19:34:35.718Z","updated_at":"2026-05-15T19:34:36.430Z","avatar_url":"https://github.com/mobius3.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Auto TOC\n\nAuto TOC is an Obsidian plugin for generating real Markdown tables of contents inside notes.\n\nThe plugin writes the generated TOC directly into Markdown source inside `[!toc]` callouts.\n\n![](demo.gif)\n\n## Usage\n\nAdd a TOC callout to a note, then run **Update table of contents in current note** from the command palette. The command rewrites only the TOC callout body. The first callout line is preserved exactly.\n\n### Local TOC\n\n`[!toc]` creates a local TOC for the nearest previous heading section.\n\nSource:\n\n```md\n# Project\n\n\u003e [!toc] Contents\n\n## Goals\n## Scope\n```\n\nGenerated:\n\n```md\n# Project\n\n\u003e [!toc] Contents\n\u003e - [[#Goals|Goals]]\n\u003e - [[#Scope|Scope]]\n\n## Goals\n## Scope\n```\n\n### Master TOC\n\n`[!toc#master]` creates a TOC for the whole note.\n\nSource:\n\n```md\n# Project\n\n\u003e [!toc#master] Contents\n\n## Goals\n## Scope\n```\n\nGenerated:\n\n```md\n# Project\n\n\u003e [!toc#master] Contents\n\u003e - [[#Project|Project]]\n\u003e   - [[#Goals|Goals]]\n\u003e   - [[#Scope|Scope]]\n\n## Goals\n## Scope\n```\n\n### Depth\n\nUse `depth` to control how many heading levels appear.\n\nSource:\n\n```md\n# Project\n\n\u003e [!toc?depth=1] Contents\n\n## Goals\n### Primary outcome\n## Scope\n```\n\nGenerated:\n\n```md\n# Project\n\n\u003e [!toc?depth=1] Contents\n\u003e - [[#Goals|Goals]]\n\u003e - [[#Scope|Scope]]\n\n## Goals\n### Primary outcome\n## Scope\n```\n\n### Bullet\n\nUse `bullet` to choose the list marker.\n\nSource:\n\n```md\n# Project\n\n\u003e [!toc?bullet=*] Contents\n\n## Goals\n## Scope\n```\n\nGenerated:\n\n```md\n# Project\n\n\u003e [!toc?bullet=*] Contents\n\u003e * [[#Goals|Goals]]\n\u003e * [[#Scope|Scope]]\n\n## Goals\n## Scope\n```\n\n## Options\n\nCallout query options:\n\n- `depth`: `1` through `6`\n- `bullet`: `-`, `*`, or `+`\n\nSee [examples/auto-toc-showcase.md](examples/auto-toc-showcase.md) for a larger source note that showcases master TOCs, local TOCs, frontmatter defaults, depth, and bullet options. See [examples/auto-toc-showcase-rendered.md](examples/auto-toc-showcase-rendered.md) for the generated result.\n\n## Settings\n\nOpen **Settings → Community plugins → Auto TOC** to configure defaults.\n\n- **Depth**: maximum heading depth to include (1–6, default 3)\n- **Bullet**: list bullet character (`-`, `*`, or `+`, default `-`)\n- **Auto-update**: automatically update TOCs when editing (default off)\n- **Update delay**: seconds to wait after editing before updating (default 10)\n\n### Folder and file overrides\n\nOverride defaults for specific folders or files in **Settings → Community plugins → Auto TOC**.\n\n- Folder overrides match by longest vault-relative prefix: `journal/` matches `journal/2024/note.md`.\n- File overrides match by exact vault-relative path.\n- File overrides take priority over folder overrides.\n- Each override can set depth, bullet, or both.\n- Folder and file override sections can be disabled independently without deleting saved overrides.\n\nExample: set depth 2 for everything in `projects/` but depth 5 for `projects/important.md`.\n\n### Frontmatter overrides\n\nUse frontmatter when a note should carry its own TOC rendering defaults:\n\n```yaml\n---\nauto-toc.depth: 2\nauto-toc.bullet: \"*\"\n---\n```\n\nFrontmatter overrides beat vault defaults, folder overrides, and file overrides. Callout query options still have the highest precedence for a single TOC callout.\n\nCallout query options override vault defaults per callout:\n\n```md\n\u003e [!toc?depth=2]\n\u003e [!toc?depth=2\u0026bullet=*]\n\u003e [!toc#master?depth=3\u0026bullet=+]\n```\n\n### Automatic updates\n\nEnable **Auto-update** to refresh TOC callouts after editing Markdown notes. Auto TOC waits for the configured update delay after the last file modification, updates only changed TOCs, and ignores writes made by the plugin itself.\n\nAuto-update is disabled by default.\n\n## Development\n\nInstall dependencies:\n\n```bash\nnpm install\n```\n\nRun tests:\n\n```bash\nnpm run test\n```\n\nBuild the plugin:\n\n```bash\nnpm run build\n```\n\nStart the development build watcher:\n\n```bash\nnpm run dev\n```\n\n## Manual installation for testing\n\nBuild and install the plugin into a vault:\n\n```bash\nnpm run install-plugin -- --vault /path/to/YourVault\n```\n\nYou can also set the vault path with an environment variable:\n\n```bash\nOBSIDIAN_VAULT=/path/to/YourVault npm run install-plugin\n```\n\nThe install command builds the plugin, then copies these files into `.obsidian/plugins/auto-toc/`:\n\n- `main.js`\n- `manifest.json`\n- `styles.css`\n\nReload Obsidian and enable **Auto TOC** in **Settings → Community plugins**.\n\n## Release\n\nCreate a GitHub release with a tag that exactly matches `manifest.json` version, without a leading `v`.\n\n```bash\ngit tag 1.0.0\ngit push origin 1.0.0\n```\n\nThe release workflow builds the plugin and uploads:\n\n- `main.js`\n- `manifest.json`\n- `styles.css`\n\n## Privacy\n\nAuto TOC is designed to work locally inside your vault. It does not use telemetry or network services.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobius3%2Fobsidian-auto-toc-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmobius3%2Fobsidian-auto-toc-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmobius3%2Fobsidian-auto-toc-plugin/lists"}