Commit Graph

11 Commits

Author SHA1 Message Date
Leon van Zyl
2757ca3156 Merge pull request #57 from simfor99/feature/gsd-integration
feat: add GSD integration skill for existing projects
2026-01-15 14:56:13 +02:00
Auto
5068790df1 fix(cli): use MCP tool for feature persistence in expand-project
Replace JSON output approach with direct MCP tool call in the
/expand-project CLI command to fix feature persistence issue.

Changes:
- Update expand-project.md to call feature_create_bulk MCP tool
- Remove <features_to_create> JSON tag output (not parsed in CLI)
- Simplify confirmation message before feature creation

Why:
- CLI users running /expand-project had features displayed but never
  saved to database because nothing parsed the JSON output
- Web UI is unaffected (uses expand_chat_session.py with its own parser)
- This mirrors how initializer_prompt.template.md already works

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 14:43:16 +02:00
simfor99
29715f2136 feat: add GSD integration skill for existing projects
Add skill to convert GSD codebase mapping (.planning/codebase/*.md)
to Autocoder app_spec.txt format.

This enables onboarding existing projects to Autocoder without
manually writing the XML spec.

Workflow:
1. Run /gsd:map-codebase on existing project
2. Run /gsd-to-autocoder-spec to generate app_spec.txt
3. Start Autocoder normally

Closes #55

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 21:00:57 +01:00
Leon van Zyl
56202fa10d Merge branch 'master' into feature/expand-project-with-ai 2026-01-10 10:22:12 +02:00
Auto
cbe3ecd25d fix: resolve CI linting errors for Python and ESLint
Python (ruff F401 - unused imports):
- Remove unused DEFAULT_YOLO_MODE import from server/routers/settings.py
- Remove unused AVAILABLE_MODELS import from server/schemas.py

ESLint (missing config for v9):
- Add ui/eslint.config.js with flat config format for ESLint v9
- Configure TypeScript, React Hooks, and React Refresh plugins
- Fix unnecessary regex escapes in AgentThought.tsx
- Remove unused onComplete from useSpecChat.ts dependency array

Additional:
- Add .claude/commands/check-code.md for local CI verification

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-10 10:07:33 +02:00
Dan Gentry
75f2bf2a10 fix: address code review feedback from coderabbitai
- Add language specifier to fenced code block in expand-project.md
- Remove detailed exception strings from WebSocket responses (security)
- Make WebSocket "start" message idempotent to avoid session reset
- Fix race condition in bulk feature creation with row-level lock
- Add validation for starting_priority (must be >= 1)
- Fix _query_claude to handle multiple feature blocks and deduplicate
- Add FileReader error handling in ExpandProjectChat
- Fix disconnect() to clear pending reconnect timeout
- Enable sandbox mode and validate CLI path in expand_chat_session
- Clean up temporary settings file on session close

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-09 17:16:06 -05:00
Dan Gentry
5f06dcf464 feat: Add "Expand Project" for bulk AI-powered feature creation
Adds the ability to add multiple features to an existing project through
a natural language conversation with Claude, similar to how initial spec
creation works.

Features:
- New "Expand" button in header (keyboard shortcut: E)
- Full-screen chat interface for describing new features
- Claude reads existing app_spec.txt for context
- Features created directly in database after user approval
- Bulk feature creation endpoint for batch operations

New files:
- .claude/commands/expand-project.md - Claude skill for expansion
- server/services/expand_chat_session.py - Chat session service
- server/routers/expand_project.py - WebSocket endpoint
- ui/src/components/ExpandProjectChat.tsx - Chat UI
- ui/src/components/ExpandProjectModal.tsx - Modal wrapper
- ui/src/hooks/useExpandChat.ts - WebSocket hook

Modified:
- Added POST /bulk endpoint to features router
- Added FeatureBulkCreate schemas
- Integrated Expand button and modal in App.tsx

Co-Authored-By: Claude <noreply@anthropic.com>
2026-01-09 15:56:01 -05:00
Auto
e8f3b99a42 feat: Add robust fallback mechanisms for spec creation chat
Add multiple escape hatches to prevent users from getting stuck during
spec creation when the WebSocket completion signal fails.

Changes:
- Add "Exit to Project" button always visible in chat header
- Add /exit command detection to immediately exit to project
- Add backend GET /api/spec/status/{project} endpoint to poll status file
- Add getSpecStatus() API function in frontend
- Add status file polling (every 3s) in useSpecChat hook
- Update create-spec.md with status file write instructions

How it works:
1. Happy path: Claude writes .spec_status.json as final step, UI polls
   and detects completion, shows "Continue to Project" button
2. Escape hatch: User can always click "Exit to Project" or type /exit
   to instantly select the project and close modal, then manually start
   the agent from the main UI

This ensures users always have a way forward even if the WebSocket
completion detection fails due to tool call tracking issues.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 10:54:42 +02:00
Auto
05607b310a feat: Add YOLO mode for rapid prototyping without browser testing
Add a new YOLO (You Only Live Once) mode that skips all browser testing
and regression tests for faster feature iteration during prototyping.

Changes made:

**Core YOLO Mode Implementation:**
- Add --yolo CLI flag to autonomous_agent_demo.py
- Update agent.py to accept yolo_mode parameter and select appropriate prompt
- Modify client.py to conditionally include Playwright MCP server (excluded in YOLO mode)
- Add coding_prompt_yolo.template.md with static analysis only verification
- Add get_coding_prompt_yolo() to prompts.py

**Server/API Updates:**
- Add AgentStartRequest schema with yolo_mode field
- Update AgentStatus to include yolo_mode
- Modify process_manager.py to pass --yolo flag to subprocess
- Update agent router to accept yolo_mode in start request

**UI Updates:**
- Add YOLO toggle button (lightning bolt icon) in AgentControl
- Show YOLO mode indicator when agent is running in YOLO mode
- Add useAgentStatus hook to track current mode
- Update startAgent API to accept yoloMode parameter
- Add YOLO toggle in SpecCreationChat completion flow

**Spec Creation Improvements:**
- Fix create-spec.md to properly replace [FEATURE_COUNT] placeholder
- Add REQUIRED FEATURE COUNT section to initializer_prompt.template.md
- Fix spec_chat_session.py to create security settings file for Claude SDK
- Delete app_spec.txt before spec creation to allow fresh creation

**Documentation:**
- Add YOLO mode section to CLAUDE.md with usage examples
- Add checkpoint.md slash command for creating detailed commits

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-02 08:36:58 +02:00
Auto
cb65cfe151 Adding features work 2025-12-30 16:11:08 +02:00
Auto
dd7c1ddd82 init 2025-12-30 11:13:18 +02:00