Claude-skill-registry claude-code-auto-improve
Fetch latest Claude Code updates, validate plugin, and apply improvements
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/claude-code-auto-improve" ~/.claude/skills/majiayu000-claude-skill-registry-claude-code-auto-improve && rm -rf "$T"
skills/data/claude-code-auto-improve/SKILL.mdAuto-Improve
Automatically improve bluera-base by fetching latest Claude Code updates and validating against best practices.
Modes
| Mode | Description |
|---|---|
| Analyze only, no changes (default) |
| Apply improvements after confirmation |
| Show/edit auto-improve configuration |
Workflow
┌─────────────────┐ │ Gather Updates │ ← CHANGELOG, GitHub issues, learnings, knowledge └────────┬────────┘ ▼ ┌─────────────────┐ │ Analyze Changes │ ← Parse recent entries, extract relevant updates └────────┬────────┘ ▼ ┌─────────────────┐ │ Validate Plugin │ ← Run audit, check patterns └────────┬────────┘ ▼ ┌─────────────────┐ │ Propose Changes │ ← Present findings, get approval └────────┬────────┘ ▼ ┌─────────────────┐ │ Apply & Commit │ ← Make changes, version bump if needed └─────────────────┘
Phase 1: Gather Updates
Collect information from multiple sources. See references/sources.md for details.
1.1 Read Pending Learnings
# Check for pending learnings cat .bluera/bluera-base/state/pending-learnings.jsonl 2>/dev/null
Parse each line as JSON with fields:
type, pattern, learning, confidence, source.
1.2 Fetch CHANGELOG
webfetch: url: https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md prompt: | Extract the most recent 3 changelog entries (versions). For each entry, return: - Version and date - Added items (new features) - Changed items (behavior changes) - Deprecated items - Fixed items Focus on entries related to: hooks, plugins, skills, commands, frontmatter, agents
1.3 Search Knowledge Store (if available)
mcp: tool: mcp__plugin_bluera-knowledge_bluera-knowledge__search params: query: "Claude Code hooks plugins skills recent changes" stores: ["claude-code-docs"] intent: find-documentation detail: contextual limit: 10
If store not found, skip this step.
1.4 Query GitHub Issues
gh api repos/anthropics/claude-code/issues \ --paginate \ -q '.[] | select(.labels[].name == "bug" or .labels[].name == "enhancement") | {number, title, labels: [.labels[].name], created_at}' \ | head -20
Focus on issues labeled:
hooks, plugins, bug, enhancement.
Phase 2: Analyze & Compare
2.1 Parse CHANGELOG
Extract relevant changes from the last 30 days:
Categories to extract:
- Hook changes (new events, behavior changes, breaking changes)
- Plugin manifest changes (new fields, deprecated fields)
- Skill/command frontmatter changes
- Agent system changes
- MCP integration changes
Parsing patterns:
## [X.Y.Z] - YYYY-MM-DD ### Added - New hooks: `PreFoo`, `PostBar` - New frontmatter field: `argument-hint` ### Changed - Hook exit code 2 now blocks with message ### Deprecated - `old_field` in plugin.json - use `new_field` ### Fixed - Plugin loading order issue
2.2 Compare with Current Implementation
For each relevant change found:
- Search codebase for affected patterns
- Check if already updated (avoid redundant changes)
- Categorize priority: breaking (high) > deprecation (medium) > enhancement (low)
comparison_result: breaking_changes: [] deprecated_patterns: [] new_features: [] improvements: []
Phase 3: Validate Plugin
3.1 Run Audit
Spawn the
claude-code-guide agent to audit the plugin:
task: subagent_type: claude-code-guide prompt: | Run a comprehensive audit of the bluera-base plugin. Focus on: 1. Hook patterns against latest best practices 2. Skill frontmatter against current spec 3. Plugin manifest completeness 4. Deprecated patterns that should be updated Return findings as: - Critical: Must fix - Warning: Should fix - Info: Could improve
3.2 Check Specific Patterns
| Pattern | Check |
|---|---|
| Hook exit codes | Verify exit 2 for blocking, exit 0 for allow |
| Defensive stdin | All hooks should drain stdin |
| ${CLAUDE_PLUGIN_ROOT} | All paths should use this variable |
| Frontmatter | Check for deprecated or missing fields |
| async hooks | Verify appropriate use of async: true |
Phase 4: Propose Improvements
4.1 Compile Findings
Organize findings into actionable groups:
## Auto-Improve Findings ### From CHANGELOG (v1.2.3 - 2025-02-01) - [ ] New `argument-hint` frontmatter available for commands - [ ] Hook async pattern changed ### From Audit - [ ] Hook `foo.sh` missing defensive stdin pattern - [ ] Skill `bar` using deprecated field ### From Learnings - [ ] User frequently runs `bun test` - consider adding to presets
4.2 Get User Approval
question: "How would you like to proceed with improvements?" header: "Action" options: - label: "Apply all (Recommended)" description: "Apply all improvements and commit" - label: "Apply selected" description: "Let me choose which to apply" - label: "Check only" description: "Show findings without changes" multiSelect: false
If "Apply selected", present each finding with:
question: "Apply this improvement?" header: "Change" options: - label: "Yes" description: "<change description>" - label: "Skip" description: "Don't apply this change" multiSelect: false
Phase 5: Apply & Commit
5.1 Apply Changes
For each approved change:
- Backup - Note original content for rollback
- Apply - Make the change using Edit tool
- Verify - Ensure change was applied correctly
5.2 Version Bump (if needed)
If changes warrant a release:
version_bump_criteria: patch: Bug fixes, documentation updates minor: New features, improvements major: Breaking changes (rare for auto-improve)
Use release skill with appropriate bump type.
5.3 Commit Changes
git add -A git commit -m "chore(auto-improve): apply latest best practices - <list of changes applied> Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
Configuration
Configuration is stored in
.bluera/bluera-base/config.json:
{ "autoImprove": { "enabled": false, "autoApply": false, "sources": ["changelog", "github", "knowledge", "learnings"], "changelogUrl": "https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md" } }
| Field | Default | Description |
|---|---|---|
| false | Enable auto-improve checks |
| false | Apply changes without confirmation |
| all | Which sources to check |
| GitHub raw | CHANGELOG location |
Managing Configuration
# View current config /bluera-base:claude-code-auto-improve config # Enable auto-improve /bluera-base:config set autoImprove.enabled true # Set to auto-apply mode /bluera-base:config set autoImprove.autoApply true # Disable specific source /bluera-base:config set autoImprove.sources '["changelog", "github"]'
Error Handling
| Error | Action |
|---|---|
| CHANGELOG fetch fails | Log warning, continue with other sources |
| GitHub API rate limited | Skip GitHub issues, suggest |
| Knowledge store not found | Skip knowledge search |
| No learnings file | Skip learnings, continue |
Always complete with available sources rather than failing entirely.
Output
Final output summarizes actions taken:
## Auto-Improve Complete **Sources checked:** changelog, github, learnings **Issues found:** 5 **Changes applied:** 3 **Skipped:** 2 ### Applied Changes 1. Added argument-hint to 4 commands 2. Updated hook defensive stdin pattern 3. Fixed deprecated frontmatter field ### Skipped 1. Knowledge store search (not available) 2. Enhancement suggestion (user declined)