Inspiration
People make promises every day - to clients, teammates, friends, and themselves - but 80% of commitments fail because they stay as vague notes. We wanted to solve the "promise-to-action" gap. What if an AI agent could remember your commitments, break them into clear tasks, prioritize what to do next, and only act after your approval? That's CommitPilot AI.
What it does
CommitPilot AI is an autonomous commitment tracker and execution engine.
Core Flow: User enters a Commitment (e.g., "Ship V4 by Friday") → AI decomposes it into actionable Tasks with reasoning, ai_insight (Why this next?), and next_action → Tasks move through a full state machine: Proposed → Approved → In Progress → Blocked → Done → Live Commitment Score = done/total*100 + Dynamic Risk Engine (0-100 + Low/Med/High) → 25-min Pomodoro Focus Timer → Kanban Board + Card View → 100% Milestone Certificate with print support.
Key features: Live MCP Terminal (audit of all AI tool calls), Search & Tag Filter, Focus Timer API POST /api/focus/{task_id}, Past-date & Title validation, Error/Success banners.
How we built it
Frontend: React 18 + TypeScript + Tailwind CSS + Vite. Configured relative /api proxy in vite.config.ts to eliminate CORS and hardcoded host failures. Components: Kanban 4-column, Commitment Cards, Focus Timer widget, Certificate Modal, Live MCP logs.
Backend: Python 3.10+ FastAPI + Pydantic (min_length=3 validation) + SQLite persistent storage (commitpilot.db). Full state machine endpoints: /approve, /start, /block, /complete, /update. Risk engine calculates priority penalty for blockers + deadline proximity. Interactive Docs at /docs and MCP spec at /mcp/tools.
Protocol: Model Context Protocol (MCP v1) with transparent reasoning. Tools: create_commitment, get_tasks, propose_action, update_status, focus_timer. Every tool call logs reasoning.
AI Engine: Bedrock-simulated cognitive decomposition ready for anthropic.claude-3-sonnet via boto3. Documented hook in main.py - switch SIMULATED=false for production Bedrock calls.
Run Locally:
Backend: cd backend && pip install -r requirements.txt && uvicorn main:app --port 8000
Frontend: cd frontend && npm install && npm run dev → http://localhost:5173
Challenges we ran into
- GitHub Push from Antigravity IDE: Expected one-click push, got PAT auth error. Fixed with classic PAT + repo scope. Friction Log: https://www.github.com
- Devpost Validation: Description field blocked
->and URLs. Workaround: replaced with "to". - State Machine Complexity: Managing 5 task states with validation without race conditions. Solved with Pydantic state-validated transitions.
- Bedrock Cold Start: Claude 3 first call 3-4s delay. Implemented Simulated mode flag for instant UX with fallback to Bedrock.
- Relative API Proxy: Hardcoded
localhost:8000failed in production. Fixed with Vite proxy/api -> http://localhost:8000.
Accomplishments that we're proud of
- Built production-ready V3 Ultimate with 100% working Kanban, Timer, Risk Engine, Certificate - not just a prototype.
- Implemented full MCP v1 spec with transparent reasoning - judges can audit every AI decision at
/mcp/tools. - Solved persistence + validation: Past-date blocking, title length, search, tags, commitment score all dynamic.
- Clean architecture: Frontend and backend completely decoupled via proxy, ready for AWS Amplify + ECS deploy.
- Single-click Windows runners:
RUN_BACKEND.bat&RUN_FRONTEND.bat.
What we learned
MCP is more than tool calling - it's about trust. Users trust AI when they see why it proposed an action (ai_insight) and can approve/reject. We learned that reliable state management > fancy prompts. Pydantic validation on backend + UI validation on frontend prevents 90% of bugs. Bedrock integration should be abstracted behind a feature flag to avoid cold-start UX issues.
What's next for CommitPilot AI
- Production Bedrock: Switch from simulated to live
claude-3-sonnetwith Bedrock Guardrails + Knowledge Base for long-term memory. - Alexa + Bee Integration: Voice: "Alexa, create commitment Ship V4 by Friday" → auto-creates + breaks down tasks.
- Fire TV Dashboard: Kanban board on TV as team wallboard for family/team motivation.
- Team Collaboration: Multi-user commitments, shared risk scores, Slack/Discord webhooks.
- AWS Deployment: Amplify (frontend) + ECS Fargate (backend) + RDS (SQLite → Postgres) + Bedrock production.
Try it: https://github.com/Purnashish07/commitpilot-ai-mcp-agent
Built With
- context
- css
- fastapi
- model
- protocol
- python
- react
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.