- Use mktemp instead of hardcoded tmp.json in sync-versions.sh
- Add push trigger for master/dev in validate-version.yml
- Replace npx semver with bash regex for semver validation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add skills.json as single source of truth for ADK version compatibility.
Add sync-versions.sh to keep plugin.json and marketplace.json in sync.
Add CI workflow to validate version consistency on PRs.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix(commands): use relative paths in manifest generation
* chore(commands): include generated timestamp in manifest
* chore(commands): stop including generated timestamp in manifest
* chore: add script to generate commands manifest
Adds scripts/generate-manifest.sh that scans commands/*.md frontmatter
and produces commands/manifest.json with all commands listed.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore: add CI check for manifest freshness
Runs generate-manifest.sh on PRs touching commands/ and fails if the
committed manifest.json doesn't match.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore: remove auto-commit generate-manifest workflow
Replaced by the check-manifest CI check and the local script.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* chore(commands): regenerate manifest to include adk-explain command
* address greptile review feedback (greploop iteration 1)
- Remove generatedAt field to avoid date drift CI failures
- Use jq for safe JSON construction (no injection from descriptions)
- Fix double trailing newline
- Add scripts/generate-manifest.sh to CI path trigger
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: use sed instead of awk for description extraction
Avoids truncating descriptions containing ': ' (awk $2 only captures
the first field after the delimiter).
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>