- #954: strip non-spec source/attribution keys from all 39 plugin.json
manifests so Claude Code's validator accepts them; metadata preserved in
new .claude-plugin/authoring-notes.json sidecars; check_plugin_json.py now
hard-fails manifests carrying those keys and sanity-checks the sidecar;
CLAUDE.md ClawHub schema section updated to the new rule.
- #949: move the c-level-agents plugin out of c-level-advisor/ to a
top-level directory so the two marketplace sources no longer overlap;
updated marketplace.json source, homepage, descriptions, all
cross-references, docs, harness manifest, mirror-tree symlinks/indexes,
and rebased the moved files' relative links; domain counters trued up
(18 -> 19 domains).
- #933: replace dead links to the gitignored maintainer-local megaprompts/
tree with annotated plain-text references (44 files: SKILL.md, READMEs,
agents, commands).
- #931: DynamoDB on-demand pricing updated to post-Nov-2024 rates
($0.625/M writes, $0.125/M strongly consistent reads).
- #969: skill_security_auditor.py and the three dossier scripts reconfigure
stdout/stderr to UTF-8 (errors=replace) so legacy Windows codepages no
longer crash at print time; PYTHONUTF8=1 documented.
- #968: Windows Notes section in INSTALLATION.md + README pointer for the
core.symlinks mirror-tree checkout caveat.
- #924/#885 residuals: hook commands quote "${CLAUDE_PLUGIN_ROOT}" paths in
all plugin hooks.json/settings.json (space-safe roots); removed the stale
pre-rename status/review mirror symlinks and index entries left over from
the memory-status/memory-review rename.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Qgc6RYXWJPr5oW9DHU7zR4
PR #628 added 13 new cs-* agent nav entries to mkdocs.yml (cs-cfo-advisor,
cs-cmo-advisor, cs-cro-advisor, cs-cpo-advisor, cs-coo-advisor, cs-chro-advisor,
cs-ciso-advisor, cs-chief-of-staff, cs-general-counsel-advisor, cs-cdo-advisor,
cs-caio-advisor, cs-cco-advisor, cs-vpe-advisor) — but the agent pages they
pointed to didn't exist because generate-docs.py only walked /agents/, not
plugin-internal <domain>/<plugin>/agents/ folders.
Without this fix, those 13 nav links would 404 in production.
Extended generate-docs.py:
Pass 1 (existing): walk /agents/<domain>/*.md (28 canonical agents)
Pass 2 (new): walk <domain>/<plugin>/agents/*.md for each known DOMAINS root
Pass 2 dedupes against pass 1 by slug. Uses a SKILL_TO_AGENT_DOMAIN mapping
(c-level-advisor -> c-level, marketing-skill -> marketing, etc.) since skill
DOMAINS keys differ from AGENT_DOMAINS keys.
Result: 29 → 54 agent pages (+25 plugin-internal agents recovered):
c-level-advisor/c-level-agents/agents/ → 13 new cs-* agents (this session)
c-level-advisor/executive-mentor/agents/ → devils-advocate
engineering/llm-wiki/agents/ → wiki-linter, wiki-ingestor, wiki-librarian
engineering/agenthub/agents/ → hub-coordinator
engineering/autoresearch-agent/agents/ → experiment-runner
engineering-team/self-improving-agent/agents/ → memory-analyst, skill-extractor,
migration-planner, test-architect,
test-debugger
Verified:
- mkdocs build succeeds (357 → 380+ HTML pages)
- All 13 cs-* nav entries from PR #628 now resolve to valid HTML pages
- karpathy diff_surgeon: 0 findings
- Existing /agents/ canonical pass unaffected (dedupe by slug)
After dev → main release: GitHub Pages deploy will surface the recovered
25 agent pages. The 13 cs-* nav entries from the v2.5.7 release will no
longer 404.
https://claude.ai/code/session_012WtZMm5NJHqkYoRqA9fHMN