feat: restructure into a multi-extension plugin framework for Claude Code and agy
Replace the skills-only SSoT (skills/<name>/SKILL.md) with plugins/<name>/, where a plugin can bundle skills, MCP servers, lifecycle hooks, rules, commands, and agents. scripts/generate_plugins.py now discovers plugins from one or more layered --source roots and emits real per-target trees (dist/claude-code/** + .claude-plugin/marketplace.json, dist/agy/**), translating hooks.json/mcp.json between Claude Code's and agy's actual schemas instead of only fanning out flat skill lists. Adds a private-overlay build path (--source/--private-repo/--out/ --install-local) so a second, non-public repo (PII, tokens, personal-only plugins) can extend or override the public plugin set without either repo touching the other's history — private builds default to a gitignored dist-private/ and never land in tracked output. Drops install.sh and descriptions.json: both only ever covered skills and pre-date the native plugin marketplace; both tools now install the plugin marketplace the documented way (Claude Code's /plugin marketplace add, agy's plugins.json entries). CI path filters move to plugins/**, and the workflow gains workflow_dispatch for a manual re-trigger. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014YVWWAnvR5TDQzmfY3RXG9
This commit is contained in:
@@ -116,3 +116,12 @@ AGENTS/
|
||||
docs/plans
|
||||
docs/devlogs
|
||||
# ────────────────────────────────────────────────────────
|
||||
|
||||
# ─────────────────── Private Overlay Builds ─────────────────
|
||||
# Output of `generate_plugins.py` when layering a private/PII-bearing
|
||||
# source on top of the public plugins/ tree. Never commit this.
|
||||
dist-private/
|
||||
|
||||
# ─────────────────────────── Python ──────────────────────────
|
||||
__pycache__/
|
||||
*.pyc
|
||||
|
||||
Reference in New Issue
Block a user