- Move stories/current/ → .story_kit/current/
- Archive story 50
- Add story 55: Live Story Panel Updates
- Add story 57: Live Test Gate Updates
- Add story 58: Live Agent Panel Updates
- Add story 59: Current Work Panel
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove duplicate 52 (was renumbered copy of story 50)
- Renumber agent-created stories: 50→54, 53→55
- Add story 52: Mergemaster Agent Role
- Add story 53: QA Agent Role
- Add story 56: Auto-Increment Work Item IDs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use --resume <session_id> with claude -p so the web UI claude-code-pty
provider maintains full conversation context across messages, identical
to a long-running terminal Claude Code session.
Changes:
- Capture session_id from claude -p stream-json system event
- Pass --resume on subsequent messages in same chat session
- Thread session_id through ProviderConfig, ChatResult, WsResponse
- Frontend stores sessionId per chat, clears on New Session
- Unset CLAUDECODE env to allow nested spawning from server
- Wait for clean process exit to ensure transcript flush to disk
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Use --resume <session-id> with claude -p to maintain conversation
context across messages in the web UI claude-code-pty provider.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace single [agent] config with multi-agent [[agent]] roster system.
Each agent has name, role, model, allowed_tools, max_turns, max_budget_usd,
and system_prompt fields that map to Claude CLI flags at spawn time.
- AgentConfig expanded with structured fields, validated at startup (panics
on duplicate names, empty names, non-positive budgets/turns)
- Backwards-compatible: legacy [agent] format auto-wraps with deprecation warning
- AgentPool uses composite "story_id:agent_name" keys for concurrent agents
- agent_name added to AgentEvent variants, AgentInfo, start/stop/subscribe APIs
- GET /agents/config returns roster, POST /agents/config/reload hot-reloads
- POST /agents/start accepts optional agent_name, /agents/stop requires it
- SSE route updated to /agents/:story_id/:agent_name/stream
- Frontend: roster badges, agent selector dropdown, composite-key state
- Project root initialized to cwd at startup so config endpoints work immediately
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The security/sandboxing story was renumbered from 34 to 35 but the
old 34_agent_security_and_sandboxing.md was never deleted. Story 34
is now Per-Project Agent Configuration and Role Definitions.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add name and test_plan front matter to 31 story files that were
missing it. Upcoming stories get test_plan: pending, current and
archived get test_plan: approved.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add GET /workflow/upcoming endpoint that reads .story_kit/stories/upcoming/
and returns story IDs with names parsed from frontmatter. Add UpcomingPanel
component wired into Chat view with loading, error, empty, and list states.
12 new tests (3 backend, 9 frontend) all passing.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>