15 Commits

Author SHA1 Message Date
root
146d4e5181 ci: add Gitea Actions workflow — ruff lint, docker build check (tests scaffolded) 2026-05-23 02:06:30 +00:00
a4290d0bb1 docs: README — deployment CLI overview, damascus.yaml reference, customization 2026-05-22 05:19:35 +00:00
root
60e870e817 fix: ThreadManager, Sales _needs_clarification, ceo queue command
Final integration fixes for Tier 1-4 merge:
- Added ThreadManager class to conversation.py
- Added _needs_clarification + _ask_clarification to Sales agent
- Added ./ceo.py queue command showing agent availability
2026-05-21 16:04:05 +00:00
root
4b76cd1725 feat: LLM-driven VP orchestration + parallel project execution (Tier 4)
- Replace keyword routing with LLM intent analysis
- VP asks LLM to understand CEO directives → returns JSON workflow plan
- If directive is ambiguous → VP asks clarification question
- VPActiveProject dataclass tracks project lifecycle
- _tick() background loop advances projects through phases
- agent_busy tracking with task queue for parallel projects
- Priority system (URGENT → priority=10)
- Fallback keyword routing if LLM plan parsing fails
- All 7 agent files compile clean
2026-05-21 16:00:55 +00:00
root
628edc6105 feat: CEO project dashboard with live updates (Issue #7)
- ./ceo.py dashboard — project table with phase, progress bar, last update
- ./ceo.py project <id> — full detail: description, CEO directive, decisions, deliverables, Gitea repo, report files
- ./ceo.py approve <id> — CEO approval with auto-route to VP
- ./ceo.py kill <id> — kill project, archive deliverables
- ./ceo.py watch — live-refreshing dashboard (5s intervals, ANSI redraw)
- Redis query protocol for VP-connected data with filesystem fallback
- Progress bars: ████░ (7-segment by phase)
- All existing commands preserved (status, reports, read, listen, build, unblock)
2026-05-21 15:05:32 +00:00
990751236b Merge pull request 'feat: PostgreSQL shared state for multi-agent coordination (Issue #6)' (#15) from t3-postgres-state into master 2026-05-21 15:04:58 +00:00
root
a22d67d1b7 feat: add PostgreSQL shared state (Issue #6)
- Add postgres:16-alpine service to docker-compose.yml with healthcheck
- Create db/schema.sql with projects, deliverables, decisions, threads tables
- Create db/connection.py (singleton connection manager with auto-schema)
- Create db/project_manager.py (CRUD for all project state)
- Update BaseAgent to use ProjectManager instead of JSON for state
- Keep context.json for transient message history, move project state to DB
- Add psycopg2-binary to requirements.txt
- Add POSTGRES_HOST/POSTGRES_DB/POSTGRES_USER/POSTGRES_PASSWORD env vars to all agent services
- Mount db/ directory into containers at /app/db
- Add conversation.py to Dockerfile (was missing)
- All agents share state via PostgreSQL now — VP can query PM/Sales/Engineer state
2026-05-21 14:59:55 +00:00
root
ac83dee59b Merge PR #11: Retry & error recovery 2026-05-21 14:47:18 +00:00
5a55ae37db Merge pull request 't2: Timeout Detection & Escalation System (Issue #5)' (#13) from t2-timeout-escalation into master 2026-05-21 14:46:35 +00:00
6bf537b701 Merge pull request 'Issue #2: Web search integration for PM and Sales agents' (#10) from t1-web-search into master 2026-05-21 14:43:33 +00:00
root
84f4cdfe16 feat: timeout detection & escalation system (Issue #5)
- Add ConversationThread dataclass with per-agent timeout configs
  (PM=300s, Sales=300s, Engineer=600s)
- Add _timeout_monitor() background thread in VP: checks every 30s
  for stale threads, escalates via ping → block → notify flow
- Escalation: log warning → ping agent ('Are you still working?')
  → if no response in 60s → mark blocked → notify CEO channel
- Blocked cleanup: after 10min blocked with no recovery, close thread
  and write FAILURE report
- ./ceo.py unblock <thread_id> [--reassign agent] for manual recovery
- Agent heartbeat: BaseAgent._start_heartbeat() publishes every 60s
  to damascus:heartbeat; VP monitors and marks all threads blocked
  if 3 consecutive heartbeats missed
- All agents respond to 'ping' messages automatically
- VP threads get tracked on every delegation for timeout monitoring
2026-05-21 13:24:23 +00:00
root
b5b9fd15f4 feat(engineer): implement build-test-fix loop (Issue #1)
- Add _verify_build(project_path) method: detect project type, install deps,
  start app in background, hit health endpoints (/health then /), collect errors
- Add _fix_and_retry(error_output, project_path, attempt): feed build failures
  to LLM for correction, regenerate files, retry up to 3 times
- Add helper methods: _detect_project_type, _detect_port, _install_dependencies,
  _start_app, _stop_app, _health_check, _write_files_from_llm_output
- After 3 failures: report detailed error to VP, write BUILD_FAILED.md, push anyway
- Add python3-pip, nodejs, npm, golang to Dockerfile for in-container builds
2026-05-21 13:14:06 +00:00
root
7f9ac1be5e Implement Issue #3: Retry & error recovery for all agents
- Add think_with_retry() to BaseAgent with exponential backoff and circuit breaker
- Circuit breaker trips after 5 consecutive failures, 60s cooldown
- Add fallback_response() for graceful degradation templates per agent role
- LLM health check on startup (pings LLM, CRITICAL log + immediate cooldown on failure)
- Update VP, PM, Sales, and Engineer agents to use think_with_retry
- Engineer agent handles error dicts from think_with_retry properly
2026-05-21 13:11:35 +00:00
root
f0ab031266 Implement Issue #2: Web search for PM and Sales agents
- Add web_search() method to BaseAgent using DuckDuckGo Lite with HTML parsing
- Integrate search into PM._generate_ideas() for SaaS niches/micro SaaS ideas
- Integrate search into PM._write_prd() for competitor pricing data
- Integrate search into Sales._validate_and_gtm() for pricing models and CAC
- Add self.search_context = [] to both PMAgent and SalesAgent for caching
2026-05-21 13:08:56 +00:00
root
2c98a23ee4 Initial commit: Damascus Frontier multi-agent startup swarm
- 4 agents: VP (orchestrator), PM, Sales, Engineer
- Redis pub/sub inter-agent communication
- LLM-powered via LiteLLM proxy
- CEO CLI for human direction
- Gitea integration for code storage
- All agents Docker-ready
2026-05-21 04:41:02 +00:00