Commit graph

4 commits

Author SHA1 Message Date
Eric Garcia
2fdf29d56e feat(core): Implement RFC 0003 per-repo .blue/ folders
Simplify Blue's directory structure to use per-repo .blue/ folders
instead of centralized ~/.blue/repos/<project>/ structure.

Changes:
- Refactor BlueHome struct with simplified per-repo paths
- Update detect_blue() to find git root and create .blue/ there
- Add migration logic from old .blue/repos/<project>/docs/ structure
- Auto-create .blue/ on first command (no 'blue init' required)
- Update all handlers to use new flat path structure
- Handle edge case: no git repo uses current directory

Structure: repo/.blue/{docs/, worktrees/, blue.db, config.yaml}

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 11:41:17 -05:00
Eric Garcia
1c2ceb71d1 feat: Phase 4 - session and reminder tools
Add multi-agent session coordination and reminder management:

- store.rs: Added sessions and reminders tables (schema v2)
- handlers/session.rs: Session ping (start/heartbeat/end) + list
- handlers/reminder.rs: Reminder CRUD with gates, snoozing, clearing
- voice.rs: Added info() function for informational messages
- state.rs: Added for_test() helper with test-helpers feature

New MCP tools (6):
- blue_session_ping, blue_session_list
- blue_reminder_create, blue_reminder_list
- blue_reminder_snooze, blue_reminder_clear

Total: 28 MCP tools, 21 tests passing

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 03:29:51 -05:00
Eric Garcia
bfcc9453fb feat(mcp): Complete Phase 2 - Workflow handlers
Add document lifecycle handlers for spike, ADR, decision, and worktree
operations. This brings the tool count from 9 to 16.

New tools:
- blue_spike_create: Start time-boxed investigation
- blue_spike_complete: Complete investigation with outcome
- blue_adr_create: Create Architecture Decision Record
- blue_decision_create: Create lightweight Decision Note
- blue_worktree_create: Create isolated git worktree for RFC
- blue_worktree_list: List active worktrees
- blue_worktree_remove: Remove worktree after merge

All handlers use Blue's voice for consistent messaging.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 00:49:57 -05:00
Eric Garcia
3e157d76a6 feat(core): Complete Phase 1 - Foundation porting from coherence-mcp
Port core functionality from coherence-mcp to blue-core:

- store.rs: SQLite persistence with schema v1, WAL mode, FTS5 search
  - documents, document_links, tasks, worktrees, metadata tables
  - Blue's voice in all error messages

- documents.rs: Enhanced with markdown generation
  - Rfc, Spike, Adr, Decision types with to_markdown() methods
  - Blue's signature at the end of generated docs

- state.rs: ProjectState aggregation
  - active_items(), ready_items(), stalled_items(), draft_items()
  - generate_hint() for contextual recommendations
  - status_summary() for complete overview

- repo.rs: Git detection and worktree operations
  - detect_blue() finds .blue/ directory structure
  - WorktreeInfo with rfc_title() extraction
  - create_worktree(), remove_worktree(), is_branch_merged()

- workflow.rs: Status transitions
  - RfcStatus, SpikeOutcome, SpikeStatus, PrdStatus enums
  - Transition validation with helpful error messages

MCP server updated with 9 tools:
- blue_status, blue_next, blue_rfc_create, blue_rfc_get
- blue_rfc_update_status, blue_rfc_plan, blue_rfc_validate
- blue_rfc_task_complete, blue_search

14 unit tests passing.

RFC 0002 tracks remaining phases.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-24 00:43:25 -05:00