Skip to content

feat(cli): deterministically rebuild index.md from frontmatter - #140

Draft
mike840609 wants to merge 8 commits into
Ar9av:mainfrom
mike840609:feat/cli-index-command
Draft

feat(cli): deterministically rebuild index.md from frontmatter#140
mike840609 wants to merge 8 commits into
Ar9av:mainfrom
mike840609:feat/cli-index-command

Conversation

@mike840609

Copy link
Copy Markdown
Contributor

Summary

  • add a deterministic obsidian-wiki index renderer using full vault-relative paths and frontmatter titles
  • support inline and block-list tags, preserved noncanonical category casing, and configurable wikilink or Markdown output
  • add --check plus link-format precedence: CLI, environment, global config, then wikilink
  • migrate all 19 index-writing skills to the CLI with guarded manual fallback

Why

Manual index.md edits across write skills drift over time and produce missing, stale, or ambiguous entries. The original implementation also collapsed nested pages to filename-only links, ignored block YAML tags, and did not honor OBSIDIAN_LINK_FORMAT.

Impact

Write workflows now rebuild the root index consistently after visible page changes. Same-named nested pages remain unambiguous, configured Markdown vaults retain their link format, and read-only, audit-only, quick, staged-only, and no-op paths remain non-mutating.

Validation

  • 244 passed, 11 subtests passed
  • git diff --check
  • clean merge-tree against current upstream/main
  • read-only index --check against an existing Digital Garden vault confirmed full paths, display titles, category casing, and tags

Related fork issue: mike840609/obsidian-wiki#1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant