Skip to content

Track upstream drift for the kepano-adapted bundled skills #966

@allenhutchison

Description

@allenhutchison

Background

In #963 we added/enriched three bundled skills by adapting content from kepano/obsidian-skills to this plugin's in-Obsidian function tools (write_file, update_frontmatter, read_file) rather than the CLI workflow those upstream skills assume:

  • prompts/bundled-skills/obsidian-markdown/SKILL.md
  • prompts/bundled-skills/json-canvas/SKILL.md
  • prompts/bundled-skills/obsidian-bases/SKILL.md (Troubleshooting section folded in)

Because these are adaptations, not copies, we can't blindly re-pull upstream — but we also have no signal when kepano fixes/extends the underlying format guidance (Bases syntax, JSON Canvas spec, OFM). Today that drift is invisible.

Note: the obsidian-cli skill (.agents/skills/obsidian-cli/) is out of scope — it tracks the official Obsidian CLI directly (obsidian --help / help.obsidian.md), not kepano.

Reconciliation baseline

Last reconciled against kepano/obsidian-skills main @ a1dc48e68138490d522c04cbf5822214c6eb1202 (2026-06-08).

Proposed mechanism

  1. Pin the baseline SHA somewhere durable — e.g. a SKILL_SOURCES.md (or a comment block in src/services/bundled-skills.ts) mapping each adapted skill → upstream path + last-reconciled SHA.
  2. Low-frequency drift check (monthly is plenty): diff the relevant upstream paths between the pinned SHA and current main:
    • skills/obsidian-markdown/SKILL.md
    • skills/json-canvas/SKILL.md
    • skills/obsidian-bases/SKILL.md
      When there's a meaningful change, surface it for hand-merge into our adapted versions and bump the pinned SHA. Could ride along as a step in the existing daily/scheduled-agent machinery (at a weekly/monthly cadence), or be a standalone routine.
  3. On reconcile: re-adapt (not copy) the upstream change, keeping our function-tool framing, and update the pinned SHA.

Acceptance

  • A durable record of which upstream SHA each adapted skill was last reconciled against.
  • An automated (or scheduled) check that flags upstream changes to those three files since the pinned SHA.
  • A documented reconcile step so updates stay adaptations, not verbatim pulls.

Follow-up from #963.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions