mirror of
https://github.com/alirezarezvani/claude-skills.git
synced 2026-09-06 08:15:58 +00:00
Same root cause as #587/#591 — Claude Code's runtime loader rejects array-form skills paths like ["./content-production", "./ai-seo", ...] even when each entry is a valid subdirectory containing SKILL.md. `claude plugin validate` accepts them but the loader does not. The proven canonical layout (used by self-improving-agent in #536): <plugin>/ ├── .claude-plugin/plugin.json skills: "./skills" └── skills/ ├── <skill-1>/SKILL.md ├── <skill-2>/SKILL.md └── ... Restructured 9 multi-skill domain plugins: - business-growth (4 skills moved) - c-level-advisor (28) - engineering (36) - engineering-team (32) - finance (2) - marketing-skill (43) - product-team (12) - project-management (8) - ra-qm-team (13) Also fixed standalone plugins that had root SKILL.md + ./skills/ subdir (agenthub, autoresearch-agent, executive-mentor, playwright-pro). The loader rejected them despite skills="./skills" because of the conflicting root SKILL.md (compare self-improving-agent which works because PR #536 moved its root SKILL.md). Moved each root SKILL.md into ./skills/<name>/. Restored standalone plugin folders to their original paths after the multi-skill restructure swept them into parent skills/ directories (marketplace.json source paths require original locations). Removed 7 orphaned marketplace entries that pointed to skill folders without their own plugin.json (content-creator, demand-gen, fullstack-engineer, aws-architect, product-manager, scrum-master, skill-security-auditor) — these were already non-functional. Bumped patch versions on every changed plugin and synced marketplace.json. Marketplace now lists 29 working plugins (down from 36). After merge: users run `/plugin marketplace update claude-code-skills` followed by `/plugin update --all` to pick up the working layout. |
||
|---|---|---|
| .. | ||
| references | ||
| scripts | ||
| README.md | ||
| SKILL.md | ||
TC Tracker
Structured tracking for technical changes (TCs) with a strict state machine, append-only revision history, and a session-handoff block that lets a new AI session resume in-progress work cleanly.
Quick Start
# 1. Initialize tracking in your project
python3 scripts/tc_init.py --project "My Project" --root .
# 2. Create a new TC
python3 scripts/tc_create.py --root . \
--name "user-auth" \
--title "Add JWT authentication" \
--scope feature --priority high \
--summary "Adds JWT login + middleware" \
--motivation "Required for protected endpoints"
# 3. Move it to in_progress and record some work
python3 scripts/tc_update.py --root . --tc-id <TC-ID> \
--set-status in_progress --reason "Starting implementation"
python3 scripts/tc_update.py --root . --tc-id <TC-ID> \
--add-file src/auth.py:created \
--add-file src/middleware.py:modified
# 4. Write a session handoff before stopping
python3 scripts/tc_update.py --root . --tc-id <TC-ID> \
--handoff-progress "JWT middleware wired up" \
--handoff-next "Write integration tests" \
--handoff-blocker "Waiting on test fixtures"
# 5. Check status
python3 scripts/tc_status.py --root . --all
Included Scripts
scripts/tc_init.py— Initializedocs/TC/in a project (idempotent)scripts/tc_create.py— Create a new TC record with sequential IDscripts/tc_update.py— Update fields, status, files, handoff, with atomic writesscripts/tc_status.py— View a single TC or the full registryscripts/tc_validator.py— Validate a record or registry against schema + state machine
All scripts:
- Use Python stdlib only
- Support
--helpand--json - Use exit codes 0 (ok) / 1 (warnings) / 2 (errors)
References
references/tc-schema.md— JSON schema referencereferences/lifecycle.md— State machine and transitionsreferences/handoff-format.md— Session handoff structure
Slash Command
When installed with the rest of this repo, the /tc <subcommand> slash command (defined at commands/tc.md) dispatches to these scripts.
Installation
Claude Code
cp -R engineering/tc-tracker ~/.claude/skills/tc-tracker
OpenAI Codex
cp -R engineering/tc-tracker ~/.codex/skills/tc-tracker