bf69c43e2f
- SECTIONS now uses arrays of candidate names searched in priority order - Maps Bug Intake sections: New Bugs→TODO, Under Review→IN_PROGRESS, Resolved→DONE - Added findFirstSection helper for array-based section lookup
🤖 Pi Worker
Autonomous agent that runs inside cr-server-new, picks up Asana tasks, and performs automated project improvements using the Pi improved agent.
What It Does
- Asana Task Execution: Polls Asana for tasks in "To Do" or "Pi Worker" sections, executes them using the Pi CLI agent, and reports results back as comments
- Autonomous Improvements: Periodically analyzes the project codebase and makes improvements (code quality, security, docs, testing, performance, type safety)
Architecture
Asana Board ←→ Pi Worker (cr-server-new) ←→ Pi CLI Agent ←→ Codebase
↕
Health Server (:8787)
Setup
- Copy
.env.sampleto.envand fill in credentials bun installbun run dev(local) orbash deploy.sh(production)
Configuration
| Variable | Description | Default |
|---|---|---|
ASANA_ACCESS_TOKEN |
Asana personal access token | Required |
ASANA_PROJECT_GID |
Project to poll (auto-discovered if empty) | Auto |
PI_MODEL |
AI model to use | claude-sonnet-4-6 |
POLL_INTERVAL_SEC |
Asana polling interval | 120 |
IMPROVEMENT_INTERVAL_SEC |
Auto-improvement interval | 3600 |
Asana Board Setup
Create these sections in your Asana project:
- To Do — Tasks for Pi Worker to pick up
- In Progress — Currently being executed
- Done — Completed tasks
- Pi Worker (optional) — Dedicated section for Pi Worker tasks
Health Check
curl http://localhost:8787/health
Logs
Logs are written to ./logs/pi-worker-YYYY-MM-DD.log and stdout.