New commands:
- /skill-create: Local git history analysis to generate SKILL.md files
- /instinct-status: Show learned instincts with confidence levels
- /instinct-import: Import instincts from files or repos
- /instinct-export: Export instincts for sharing
- /evolve: Cluster instincts into skills/commands/agents
These integrate the continuous-learning-v2 system and provide a local
alternative to the Skill Creator GitHub App for pattern extraction.
Fixes plugin installation validation error: "agents: Invalid input"
The plugin manifest validator requires explicit file paths for agents,
not directory paths. Changed format:
- "agents": "./agents" → explicit file path array
- Added version field (required by validator)
- Changed commands/skills to array format for consistency
This matches the format used by other working plugins (e.g.,
Parslee-ai/neo uses explicit file paths for agents).
Validated with: claude plugin validate .claude-plugin/plugin.json
Fixes#90
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The Claude Code plugin system does not support distributing rules
via plugins. Added a note to Option 1 (Plugin Installation) section
explaining this limitation and providing manual installation steps.
Closes#88
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Excellent contribution adding comprehensive Go language support. Includes go-reviewer and go-build-resolver agents, TDD commands, and detailed Go patterns/testing skills.
- Added agents field pointing to ./agents directory (10 agents)
- Added hooks field pointing to ./hooks/hooks.json
- These were supported but not declared, potentially causing
agents not to load when installed as a plugin
Addresses part of #88 (rules still need manual install per
upstream limitation - filed anthropics/claude-code#21163)
Add Go-specific agents, skills, and commands for idiomatic Go development:
Agents:
- go-reviewer: Go code review for concurrency, error handling, security
- go-build-resolver: Fix Go build errors with minimal changes
Skills:
- golang-patterns: Idiomatic Go patterns, best practices, conventions
- golang-testing: TDD, table-driven tests, benchmarks, fuzzing
Commands:
- /go-review: Invoke Go code reviewer
- /go-test: Go TDD workflow with coverage
- /go-build: Fix Go build/vet/lint errors
Also updates README.md to document the new Go support.
Fixes#78
## Problem
The Stop hook used inline JavaScript code with `node -e`, which caused
shell syntax errors on macOS/zsh due to special characters (parentheses,
braces, arrow functions) being misinterpreted by the shell.
Error message:
/bin/sh: -c: line 0: syntax error near unexpected token \`('
## Solution
- Created scripts/hooks/check-console-log.js with the hook logic
- Updated hooks/hooks.json to reference the external script
- This follows the same pattern as other hooks in the plugin
## Benefits
- Fixes shell compatibility issues across different environments
- Improves code maintainability (separate, well-documented script)
- Follows plugin's own best practices
- Makes the code easier to test and debug
## Testing
Tested on macOS with zsh - no more syntax errors.
The hook still functions correctly to detect console.log statements.
* fix: use correct unscoped agent-browser package name
The @anthropic-ai/agent-browser package does not exist on npm.
The correct package is the unscoped 'agent-browser' from Vercel Labs (v0.7.6).
Fixes the issue noted in PR #75 review comment.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix: correct agent-browser API to match actual package exports
- Change AgentBrowser to BrowserManager (correct export name)
- Update documentation to show actual CLI-based usage pattern
- Add snapshot + refs system examples (the real agent-browser API)
- Add programmatic BrowserManager API for advanced use cases
- Show CLI wrapper approach for script integration
The agent-browser package from Vercel is primarily a CLI tool,
not a JavaScript library with semantic methods. This corrects
the documentation to match the actual package API.
Fixes CodeRabbit review comment about incorrect import/export.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
- fix(utils.js): prevent command injection in commandExists() by using
spawnSync instead of execSync with string interpolation, and validate
input to only allow alphanumeric chars, dash, underscore, dot (#42)
- fix(utils.js): add security documentation to runCommand() warning
against passing user-controlled input
- fix(setup-package-manager.js): replace <script> and <binary> with
[script-name] and [binary-name] to avoid XSS scanner false positives (#43)
- fix(doc-updater.md): replace invalid 'npx ts-morph' with correct
'npx tsx scripts/codemaps/generate.ts' since ts-morph is a library,
not a CLI tool (#51)
Fixes#42, #43, #51
Previously hooks were not loaded when the plugin was installed because
plugin.json didn't declare the hooks path. This caused errors like:
"Stop hook error: .../skills/continuous-learning/evaluate-session.sh: No such file"
The hooks are defined in hooks/hooks.json and use JS implementations in
scripts/hooks/ directory.
Remove the static `version: "1.0.0"` field from plugin.json to enable
Claude Code's git SHA-based version detection and automatic updates.
Previously, the presence of a version field caused Claude Code to use
static version string comparison instead of git commit SHA comparison,
preventing `/plugin update` from detecting new commits.
This change aligns with the pattern used by all official Anthropic
plugins in claude-plugins-official marketplace.
Fixes#33
Stop hook fires after every response, SessionEnd fires only when
session actually terminates. This was causing session-end.sh and
evaluate-session.sh to run on every response instead of at session end.
Fixes issue reported by user about hooks triggering every response.
Claude Code automatically loads hooks/hooks.json from the plugin directory.
Explicitly specifying it in plugin.json causes a duplicate hooks error:
Duplicate hooks file detected: ./hooks/hooks.json resolves to already-loaded
file .../hooks/hooks.json. The standard hooks/hooks.json is loaded
automatically, so manifest.hooks should only reference additional hook files.
Fixes#29
Relative paths like ./hooks/... fail when the plugin is installed
because hooks run in the project directory, not the plugin directory.
Using ${CLAUDE_PLUGIN_ROOT} ensures scripts are found regardless of
where the plugin is installed.
Fixed paths:
- hooks/strategic-compact/suggest-compact.sh
- hooks/memory-persistence/pre-compact.sh
- hooks/memory-persistence/session-start.sh
- hooks/memory-persistence/session-end.sh
- skills/continuous-learning/evaluate-session.sh
Using './' lets Claude Code use the already-cloned marketplace repo
directly instead of fetching from GitHub again. This avoids potential
double-fetch issues and simplifies the installation.
Fixes 'Invalid schema: plugins.0.source: Invalid input' error when
installing via /plugin marketplace add. The source field needs to be
a GitHub source object, not a relative path, when the plugin is at
the repo root.