Files
clinera-site/pi-worker

🤖 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

  1. 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
  2. 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

  1. Copy .env.sample to .env and fill in credentials
  2. bun install
  3. bun run dev (local) or bash 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.