Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
ar9av avatar

Wiki Stage Commit

  • 1.2k installs
  • 3.1k repo stars
  • Updated August 4, 2026
  • ar9av/obsidian-wiki

wiki-stage-commit is an agent skill that stages and commits Obsidian wiki vault changes with structured git messages for publishing.

About

The wiki-stage-commit skill automates git staging and commit steps for Obsidian wiki repositories used as publishable knowledge bases. It helps agents inspect vault diffs, group related note changes, write clear commit messages, and commit without disturbing unrelated local edits. The workflow fits wikis that sync through git remotes where markdown notes, assets, and index pages change in batches before launch or distribution updates. Agents verify only intended paths are staged, avoid secrets or machine-specific config, and can follow repository conventions for conventional commit prefixes. Use when publishing Obsidian wiki updates that need disciplined git history rather than ad hoc saves.

  • Stages Obsidian wiki changes with focused git commits.
  • Groups related note and asset updates before commit.
  • Avoids committing unrelated local or secret files.
  • Supports publish workflows for git-backed vaults.
  • Encourages clear commit messages for wiki releases.

Wiki Stage Commit by the numbers

  • 1,218 all-time installs (skills.sh)
  • +31 installs in the week ending Aug 5, 2026 (Skillselion tracking)
  • Ranked #58 of 733 Git & Pull Requests skills by installs in the Skillselion catalog
  • Security screen: LOW risk (skills.sh audit)
  • Data as of Aug 5, 2026 (Skillselion catalog sync)
At a glance

wiki-stage-commit capabilities & compatibility

Capabilities
vault diff inspection · selective git staging · structured commit messages · publish oriented wiki workflows · secret and config exclusion checks
Works with
github
Use cases
documentation · project management
From the docs

What wiki-stage-commit says it does

wiki-stage-commit
SKILL.md
npx skills add https://github.com/ar9av/obsidian-wiki --skill wiki-stage-commit

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs1.2k
repo stars3.1k
Security audit3 / 3 scanners passed
Last updatedAugust 4, 2026
Repositoryar9av/obsidian-wiki

How do I cleanly stage and commit only the intended Obsidian wiki note changes before publishing?

Stage and commit Obsidian wiki vault changes with structured messages for publishing workflows.

Who is it for?

Developers maintaining git-backed Obsidian wikis that publish through remote sync.

Skip if: Skip for non-git vaults or general app repository commits outside wiki publishing flows.

When should I use this skill?

User wants to stage and commit Obsidian wiki changes before publishing or syncing the vault.

What you get

A git commit containing grouped wiki markdown and asset updates with a clear message.

  • promoted wiki pages
  • rejected files in _raw/

By the numbers

  • Uses two folders: _staging/ for pending writes and _raw/ for rejected edits

Files

SKILL.mdMarkdownGitHub ↗

Wiki Stage Commit — Staged Write Promotion

You are reviewing LLM-written pages that are waiting in _staging/ for human approval before they land in the live wiki. This skill is only useful when WIKI_STAGED_WRITES=true in the vault config.

Before You Start

1. Resolve config — follow the Config Resolution Protocol in llm-wiki/SKILL.md. This gives OBSIDIAN_VAULT_PATH and WIKI_STAGED_WRITES. 2. If WIKI_STAGED_WRITES is not set or is false, tell the user: "Staged writes mode is not enabled. Set WIKI_STAGED_WRITES=true in your .env to use this feature." Then stop. 3. Read the _staging/ directory inventory.

Invocation Forms

/wiki-stage-commit               # interactive review: show each file and ask accept/reject
/wiki-stage-commit --all         # accept all staged files without per-file review
/wiki-stage-commit --reject-all  # reject all staged files (move to _raw/ for manual editing)
/wiki-stage-commit --list        # list staged files with summary, no changes

Step 1: Inventory Staged Files

Glob $OBSIDIAN_VAULT_PATH/_staging/**/*.md — these are the pending pages.

Also glob $OBSIDIAN_VAULT_PATH/_staging/**/*.patch.md — these are pending updates to existing pages (diff-style files showing proposed additions and deletions).

Report the inventory:

Staged files: 4 new pages, 2 updates

New pages:
  _staging/concepts/attention-mechanism.md        (ingested 2 days ago)
  _staging/entities/andrej-karpathy.md            (ingested 2 days ago)
  _staging/skills/fine-tuning-llms.md             (ingested yesterday)
  _staging/references/attention-is-all-you-need.md (ingested 3 hours ago)

Updates (patch files):
  _staging/concepts/transformer-architecture.patch.md  (target: concepts/transformer-architecture.md)
  _staging/skills/prompt-engineering.patch.md          (target: skills/prompt-engineering.md)

If _staging/ is empty, report: "Nothing staged. All writes have been committed or no staged writes have been produced yet."

Step 2: Per-File Review (interactive mode)

For each staged file (new pages first, then updates):

For new pages:

Display a summary:

--- New page: concepts/attention-mechanism.md ---
Title:    Attention Mechanism
Tags:     #ml #architecture
Summary:  Core building block of transformers — computes weighted sum of values based on query-key similarity.
Tier:     supporting
Confidence: 0.72
Sources:  papers/attention.pdf

[Preview first 20 lines of body]
...

Accept [a], Reject [r], Skip [s], Preview full [p]?

For patch files:

Display a structured diff:

--- Update: concepts/transformer-architecture.md ---
Source: _staging/concepts/transformer-architecture.patch.md

Proposed additions (+):
+ Transformers outperform RNNs on tasks requiring long-range dependencies. ^[inferred]
+ New source: papers/survey-2026.pdf

Proposed deletions (-):
- The attention mechanism was first described in [Bahdanau 2015].  (to be replaced by updated claim)

⚠️  Conflict check: target page was modified 3 days after staging. Review carefully.

Accept [a], Reject [r], Skip [s], Preview full diff [p]?

If --all flag is set, skip prompting and accept every file. If --reject-all flag is set, skip prompting and reject every file. If --list flag is set, stop after printing the inventory (Step 1).

Step 3: Apply Decisions

Accepting a new page

1. Move _staging/<category>/page.md<category>/page.md (the final location) 2. Update index.md with the new page entry 3. Remove the staged file

Accepting a patch/update

1. Read the current page at the target path 2. Apply the proposed additions and deletions (merge, don't just overwrite) 3. Update the updated frontmatter timestamp 4. Update index.md if the summary changed 5. Remove the staged patch file

Rejecting a file

Move it to $OBSIDIAN_VAULT_PATH/_raw/ for manual editing:

  • _staging/concepts/page.md_raw/rejected-concepts-page.md
  • _staging/concepts/page.patch.md_raw/rejected-patch-concepts-page.md
  • Prefix with rejected- so the user can identify it

Conflict detection on patch accept

Before applying a patch, check whether the target page's updated frontmatter is newer than the patch file's own updated field:

  • If the target was modified AFTER the patch was staged, warn: ⚠️ Conflict: target was updated since this patch was staged. Applying may lose recent changes.
  • Give the user a chance to abort: Apply anyway [y], Skip [s], Reject [r]?

Step 4: Update Tracking Files

After processing all staged files:

1. `hot.md` — update the Recent Activity section: "Committed N staged pages; rejected M." 2. `log.md` — append:

   - [TIMESTAMP] STAGE_COMMIT accepted=N rejected=M skipped=K

Step 5: Report

Stage commit complete.

✅  Accepted (N):
  concepts/attention-mechanism.md     → now live
  entities/andrej-karpathy.md         → now live
  concepts/transformer-architecture.md → updated (patch applied)

❌  Rejected (M):
  skills/fine-tuning-llms.md          → moved to _raw/rejected-skills-fine-tuning-llms.md

⏭️  Skipped (K):
  references/attention-is-all-you-need.md → still in _staging/

Staging queue: K files remaining

Notes

  • Staged files use the same page template as live pages — they are ready to land, just awaiting approval
  • Patch files use a human-readable diff format: lines starting with + are additions, lines starting with - are deletions
  • index.md and log.md are always updated immediately on ingest (they are low-risk tracking files) — only category pages go through staging
  • The _staging/ directory is not tracked by Obsidian's graph view — pages only appear in the wiki after promotion

Related skills

How it compares

Choose wiki-stage-commit when LLM wiki output needs human approval gates rather than direct writes to live doc paths.

FAQ

What repository type does wiki-stage-commit target?

Git-backed Obsidian wiki vaults with markdown notes and assets published via remotes.

Does it commit everything in the repo?

It focuses on intended wiki paths and avoids unrelated local or secret files.

Why use structured commits for wikis?

To keep publish history readable when batching note updates before launch or sync.

Is Wiki Stage Commit safe to install?

skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.