What is AI Dev Station?
24/7 AI software development station. Converts Linear tickets into GitHub PRs via tag-based two-phase workflow.
Architecture
Node topology
| Machine | Role | Hardware | Services |
|---|---|---|---|
| Mac Mini 2015 | Orchestrator | Intel i7, 16 GB | Docker: postgres, redis, n8n, telegram-bridge, light-router, grafana, prometheus, iphone-pwa |
| Mac Studio M1 Max | Worker | 64 GB | Ollama (brew), Docker: pipeline, opencode |
| MacBook Air M1 | Client | 8 GB | OpenCode CLI, VS Code, git |
| iPhone | Remote | — | Telegram app + PWA dashboard |
LLM fallback chain
Studio Ollama (local, free) → DeepSeek ($0.14/M) → Claude Sonnet 4.5 ($3/M)6-Agent Pipeline Chain
PM → Architect → Coder → Reviewer → Healer (auto-fix ×3 max) → ReleaseUsage
Tag-based triggering
- Create a Linear issue
- Add tag "plan" → pipeline creates plan PR (draft)
- Add tag "implement" → pipeline reads plan, generates code, commits to same PR
Run pipeline manually
bash
docker exec devstation-studio-pipeline-1 python pipeline.py \
--issue "AI-123" --repo "user/repo" \
--title "Fix login timeout bug" --phase fullUse OpenCode on Air
bash
opencode "fix the race condition in process.py"
opencode "add error handling" --model deepseekDashboards
| URL | Service |
|---|---|
http://{TAILSCALE_IP}:3000 | Grafana (admin/{GRAFANA_PASSWORD}) |
http://{STUDIO_TAILSCALE_IP}:8001/healthz | Pipeline status |
http://{TAILSCALE_IP}:8080 | iPhone PWA dashboard |
Telegram Commands
| Command | Action |
|---|---|
/start | Show welcome message + main menu |
/menu | Show main interactive menu |
/status | Check pipeline status, active tasks, pending reviews |
/pause | Pause pipeline |
/resume | Resume pipeline |
/approve | Approve current pending review |
/reject | Reject current pending review |
/llm studio|cloud|auto | Set LLM mode |
/help | List all commands |
The bot also has inline keyboards for quick actions — tap the buttons in the chat instead of typing commands.