| name | rusty-update |
| version | 1.0.0 |
| description | Consolidated Claude Code sync and parity tracking for RustyClawd.
Fetches latest Claude Code features from official sources, compares against
the local feature inventory, identifies gaps, and optionally creates GitHub issues.
Also supports deep analysis by deminifying the installed Claude Code cli.js.
|
| auto_activates | ["rusty update","sync with claude code","check claude code parity","feature parity","what's new in claude code","claude code changes","catch up with claude code","feature gaps","parity check","sync monitor"] |
| priority_score | 45 |
| evaluation_criteria | {"frequency":"MEDIUM","impact":"HIGH","complexity":"MEDIUM","reusability":"HIGH","philosophy_alignment":"HIGH","uniqueness":"HIGH"} |
| invokes | [{"type":"tool","name":"WebFetch"},{"type":"tool","name":"Bash"},{"type":"tool","name":"Read"},{"type":"tool","name":"Write"},{"type":"tool","name":"Grep"},{"type":"tool","name":"Glob"}] |
| dependencies | {"tools":["Read","Write","Edit","Bash","Grep","Glob","WebFetch"],"external":["cargo (for running Rust sync monitor)","git","curl"],"data_files":[".claude/data/feature_inventory.yaml",".claude/data/sync_ledger.json","docs/feature_inventory.yaml"],"rust_modules":["crates/tools/src/claude_code_sync/"]} |
| philosophy | [{"principle":"Ruthless Simplicity","application":"Single skill consolidates three separate tools into one workflow"},{"principle":"Zero-BS Implementation","application":"Real HTTP fetches and GitHub API calls, no mocked data"},{"principle":"Modular Design","application":"Rust sync monitor is the engine; skill is the interface"}] |
| maturity | production |
| maturity_reason | - Rust SyncMonitor module fully implemented with unit tests
- CI workflow running weekly (.github/workflows/claude-code-sync.yml)
- Feature inventory actively maintained (docs/ has 61 features, .claude/data/ has 38 - sync is a known issue)
- Sync ledger preventing duplicate issue creation
|
/rusty-update
Consolidated Claude Code sync and parity tracking skill for RustyClawd.
What This Skill Does
This skill consolidates three previously separate tools into one unified workflow:
- Feature Discovery - Fetches Claude Code's CHANGELOG.md and README.md from GitHub
- Gap Analysis - Compares discovered features against
.claude/data/feature_inventory.yaml
- Reporting - Summarizes what's new, what's missing, and what's drifted
- Issue Creation (optional) - Creates GitHub issues for gaps via the sync ledger
Additionally supports:
5. Deep Analysis - Deminifies installed Claude Code cli.js for pattern research
Modes
Quick Check (default)
Fetches Claude Code sources and compares against inventory. No side effects.
/rusty-update
/rusty-update check
Full Sync (creates GitHub issues)
Runs the Rust SyncMonitor which also creates GitHub issues for gaps.
/rusty-update sync
Requires: GITHUB_TOKEN environment variable.
Deep Analysis
Deminifies the installed Claude Code cli.js and creates searchable indices.
/rusty-update analyze
Requires: prettier and js-beautify (must be installed manually; skill will check and abort with instructions if missing).
Inventory Update
Interactively update the feature inventory after implementing new features.
/rusty-update inventory
Underlying Tools (Consolidated)
| Previous Tool | Location | Status | Merged Into |
|---|
claude_code_sync_cli | crates/tools/examples/ | Working | sync mode |
analyze-claude-code.sh | scripts/ | Working | analyze mode |
fetch_claude_features.rs | scripts/ | Redundant | check mode (superseded) |
claude-code-sync.yml | .github/workflows/ | Working | Unchanged (CI) |
Data Files
- Docs Inventory (primary):
docs/feature_inventory.yaml - Most comprehensive, with test evidence
- Sync Monitor Inventory:
.claude/data/feature_inventory.yaml - Used by Rust sync monitor (may lag behind docs version)
- Sync Ledger:
.claude/data/sync_ledger.json - Issue deduplication tracking
Important: The docs/ inventory is the more complete and up-to-date source. The .claude/data/ version is consumed by the Rust sync monitor. Both should be kept in sync.
Architecture
/rusty-update (skill)
|
+-- check: WebFetch CHANGELOG.md + README.md -> compare with inventory -> report
|
+-- sync: cargo run claude_code_sync_cli -> full sync with issue creation
|
+-- analyze: scripts/analyze-claude-code.sh -> deminify + index cli.js
|
+-- inventory: Interactive inventory update workflow
Execution
When this skill activates, follow this procedure:
For check mode (default):
-
Fetch the official Claude Code CHANGELOG.md and README.md:
https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md
https://raw.githubusercontent.com/anthropics/claude-code/main/README.md
-
Read both local feature inventories:
docs/feature_inventory.yaml (primary, most comprehensive)
.claude/data/feature_inventory.yaml (sync monitor source)
- Flag any drift between them
-
Compare features found in the changelog against the inventory:
- New features not in inventory = Missing
- Features marked partial = Incomplete
- Features that may have changed = Drift
-
Report findings as a summary table with:
- New Claude Code features since last check
- Gaps (missing/incomplete/drift)
- Recommended actions
For sync mode:
- Verify
GITHUB_TOKEN is set in environment. If not, abort with clear error.
- Run the Rust sync monitor (pass token via environment, not CLI arg if possible):
cargo run --package rustyclawd-tools --example claude_code_sync_cli -- \
--inventory .claude/data/feature_inventory.yaml \
--ledger .claude/data/sync_ledger.json \
--token $GITHUB_TOKEN \
--repo rysweet/RustyClawd
- Report created issues
For analyze mode:
- Check prerequisites:
claude, prettier, js-beautify must be installed. Abort with install instructions if missing.
- Run:
echo "n" | bash scripts/analyze-claude-code.sh (pipe "n" to skip interactive VS Code prompt)
- Report location of deminified files and indices
For inventory mode:
- Read both inventory files:
docs/feature_inventory.yaml (primary) and .claude/data/feature_inventory.yaml
- Flag any drift between them
- Ask what features to add/update
- Write updated inventory to BOTH files to keep them in sync