Skip to content

feat: webster-weekly-council library skill (route operators to /webster-weekly-council)#10

Merged
richsak merged 2 commits intodevfrom
feat/weekly-council-skill
Apr 27, 2026
Merged

feat: webster-weekly-council library skill (route operators to /webster-weekly-council)#10
richsak merged 2 commits intodevfrom
feat/weekly-council-skill

Conversation

@richsak
Copy link
Copy Markdown
Owner

@richsak richsak commented Apr 26, 2026

Summary

  • Convert the 662-line prompts/second-wbs-session.md runbook into a Claude Code library skill at skills/webster-weekly-council/SKILL.md so operators can run the full Webster weekly council via /webster-weekly-council instead of pasting the prompt
  • Library shape: slim SKILL.md index + 9 on-demand phase references in references/ + 2 reusable helper scripts in scripts/ (the per-session polling loop, used 7×, and the planner-JSON extractor)
  • The production runbook is unchangedprompts/second-wbs-session.md stays as the locked single-page fallback. Locked by scripts/__tests__/sim-council.test.ts. Both surfaces produce identical artifacts.
  • Doc surfaces converted: README, AGENTS, context/ARCHITECTURE.md, context/FEATURES.md, history/AGENTS.md now route operators to the new slash-command path with the prompt listed as fallback

Skill structure

skills/webster-weekly-council/
├── SKILL.md                       66-line index: phase table + 8 invariants + override-default-loop directive
├── references/
│   ├── preflight.md               keychain + GH auth + registration artifacts
│   ├── seed-history.md            phase 1 — 10-week mock analytics seeder
│   ├── branch.md                  phase 2 — shared council/<date> branch
│   ├── planner.md                 phase 3 — context marshal + planner invoke (fail-closed)
│   ├── fan-out.md                 phase 4 — 6 parallel managed-agent sessions
│   ├── verify.md                  phase 5 — findings count gate + bun validate-findings
│   ├── genealogy.md               phase 5.5 — fail-open gap-detection
│   ├── redesign.md                phase 6 — synthesis session
│   ├── publish.md                 phases 7+8 — draft PR + checkpoint
│   └── failure-modes.md           recovery guide
└── scripts/
    ├── run-agent-session.sh       create session → send user.message → poll until idle/timeout (used 7×)
    └── extract-planner-json.py    pull JSON block out of plan.md for new_critic_request handling

Test plan

  • bun run validate passes locally (type + lint + format + agent schema + findings + markdownlint + 181/181 tests)
  • scripts/__tests__/sim-council.test.ts passes — confirms prompts/second-wbs-session.md git diff is empty (production immutability)
  • bash -n on run-agent-session.sh parses cleanly
  • extract-planner-json.py smoke-tested — extracts JSON from a fenced ```json block; jq sees new_critic_request
  • Live API end-to-end run not yet executed. Skill is structurally equivalent to the prompt by review; full council run against the real Anthropic endpoint is the remaining validation step (~$0.20 + 30–50 min). Operator's call whether to gate merge on that.

Out of scope

  • Did not touch the production prompt (locked) or any other prompt
  • Did not modify any of the 7 production agent JSONs
  • Did not exercise the live API — this PR ships the operator surface, not a re-validation of the council run itself

🤖 Generated with Claude Code

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 26, 2026

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

🗂️ Base branches to auto review (2)
  • main
  • review/empty-base

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: ac2cb3c5-4157-4ea8-af78-82b1c85931e9

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/weekly-council-skill

Comment @coderabbitai help to get the list of available commands and usage tips.

Library-shape conversion of prompts/second-wbs-session.md so operators run
the weekly council pass via /webster-weekly-council. SKILL.md is a slim
phase index; nine references/ files hold per-phase bash blocks loaded on
demand; two skill-local scripts/ extract the reusable polling helper and
the planner-JSON parser. The 662-line single-page prompt remains intact
as the locked source-of-truth runbook.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@richsak richsak force-pushed the feat/weekly-council-skill branch from 3a71698 to e293892 Compare April 27, 2026 00:04
Update README, AGENTS, context/ARCHITECTURE, context/FEATURES, and
history/AGENTS so the weekly-run operator surface is the new library
skill (slash-command form) with prompts/second-wbs-session.md framed as
the locked single-page runbook fallback. The prompt itself is unchanged
and still locked by scripts/__tests__/sim-council.test.ts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@richsak richsak force-pushed the feat/weekly-council-skill branch from e293892 to 5f45054 Compare April 27, 2026 00:04
@richsak richsak merged commit b7e4c67 into dev Apr 27, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant