Skip to content

Notify when a newer bundled skill is available#38

Merged
terzioglub merged 2 commits into
mainfrom
terzioglub/skill-update-notice
Jun 22, 2026
Merged

Notify when a newer bundled skill is available#38
terzioglub merged 2 commits into
mainfrom
terzioglub/skill-update-notice

Conversation

@terzioglub

Copy link
Copy Markdown
Contributor

Summary

Adds a passive staleness notice for bundled agent skills, plus dac skills update to refresh them.

  • Bundled skills now carry a version field in their frontmatter (create-dashboard starts at version: 1).

  • dac serve and dac validate compare the installed skill against the bundled one and, if the bundled version is newer, print a single line to stderr:

    A newer create-dashboard skill is available — run dac skills update.

  • The notice never modifies files — updating is always explicit.

  • dac skills update [skill...] refreshes installed skills to the bundled version (equivalent to install --force).

  • Skills with no version field (older installs) are treated as version 0, so existing projects get nudged after upgrading dac.

  • The project root (where .claude/ lives) is discovered by walking up from the dashboard directory, so the notice works whether you run from the root or a subdirectory.

Testing

  • make test (new tests cover version parsing, notice generation, root discovery, and the update command)
  • make build
  • manual smoke test: stale install → notice on validate; skills update overwrites and stamps the version; no notice afterward

Checklist

  • scanned docs/ and updated the relevant pages (commands/skills.md, commands/overview.md)
  • examples updated if the authoring model changed (n/a)
  • screenshots or recordings attached for UI changes (n/a)

@terzioglub terzioglub force-pushed the terzioglub/skill-update-notice branch from 6f7c92a to b15532c Compare June 22, 2026 12:52
Add a dedicated subcommand to refresh bundled skills installed in a
project to the version shipped with the current dac binary. It reinstalls
the selected skills with force, replacing the installed files (and
re-linking the Codex symlink), so a single command keeps both the Claude
and Codex copies current.

Updating is always explicit; install behaviour is unchanged.
Stamp bundled skills with a version field and compare it against the
copy installed in a project. dac serve and dac validate print a notice
to stderr when the bundled skill is newer than what is installed:

  A newer create-dashboard skill is available with the latest authoring
  features and fixes.
  Run `dac skills update` to update your project's copy.

The project root is discovered by walking up from the dashboard
directory to the nearest .claude directory, so the notice works from a
subdirectory too. Skills with no version field (older installs) are
treated as version 0, so existing projects get nudged after upgrading
dac. The notice never modifies files.
@terzioglub terzioglub force-pushed the terzioglub/skill-update-notice branch from b15532c to 3170f27 Compare June 22, 2026 13:19
@terzioglub terzioglub merged commit 1f668a7 into main Jun 22, 2026
2 checks passed
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.

2 participants