inferred from GitHub
capataz opus47hackathon
Capataz — Telegram ambient agent for Guatemalan operations teams. Claude Opus 4.7 hackathon submission.
Core trick
Ingests Telegram voice notes and receipt photos, reconstructing structured project state for a project manager dashboard.
Evidence
README matched "Built with Opus 4.7": **Built with Opus 4.7 — hackathon submission.**
README excerpt
# Capataz
**Built with Opus 4.7 — hackathon submission.**
Capataz is a Claude-powered ambient agent that lives inside a Telegram group used by a
construction project team in Guatemala. It ingests voice notes and receipt photos from
foremen, reconstructs structured project state, and surfaces anomalies to the project
manager through a bilingual (ES/EN) web dashboard.
## Stack
- **Next.js 16** (App Router, TypeScript, Tailwind) on **Vercel** — scaffold picked up
16.2.x; behavior is compatible with the 15-era patterns in the spec.
- **Postgres on Railway** (project: `capataz`, service: `Postgres`).
- **postgres.js** as the DB client — no ORM, raw SQL in tagged templates.
- **Telegram Bot API** for foreman ingress / PM replies.
- **Anthropic SDK** (`claude-opus-4-7`) — wired in MVP, stubbed now.
- **Claude Managed Agents** (beta header `managed-agents-2026-04-01`) — wired in MVP.
- **MCP server** over stdio — 4 tools registered as stubs (`log_event`,
`query_project_state`, `flag_anomaly`, `reply_in_chat`).
## Phases
- **SKELETON** (current) — every layer wired, everything smart is a stub or TODO.
- **MVP** — real transcription, vision, Managed Agents session, MCP-backed tool calls,
anomaly logic.
- **POLISH** — UI polish, realtime, auth, demo script.
## Layout
```
src/
app/
api/webhooks/telegram/route.ts # inbound Telegram updates
dashboard/page.tsx # PM dashboard (server component)
dashboard/refresh.tsx # client-side 5s rout