diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..cd529c0 --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,22 @@ +# telegram-gateway — agent guide + +Telegram **webhook gateway** for the Arcodange lab (k3s, `tg.arcodange.fr` via Cloudflared). Full architecture, routes, local dev: [README.md](README.md). Phase 1 (sync `echo` handler) is live; phases 2–3 (durable queue, async handlers) are the roadmap. + +## Fleet role — why this repo matters now + +This gateway is the **human channel of the AI back-office fleet** (operator-endorsed, 2026-07): digests and approval cards are served from the cluster so approvals never wait for a laptop, and its planned Postgres queue is the fleet's work queue (decision D1). Context: the [AI back-office PRD](https://gitea.arcodange.lab/arcodange-org/factory/src/branch/main/vibe/PRD/ai-back-office/README.md) — notably [agent-architecture](https://gitea.arcodange.lab/arcodange-org/factory/src/branch/main/vibe/PRD/ai-back-office/agent-architecture.md) (human channel, runtimes). + +## The backlog + +Work items live as **self-contained issues** (context, deliverables, acceptance): + +- [#1 — Postgres durable queue + http handler](https://gitea.arcodange.lab/arcodange/telegram-gateway/issues/1) (phase 2, fleet work queue) +- [#2 — fleet daily digest + approval cards](https://gitea.arcodange.lab/arcodange/telegram-gateway/issues/2) (depends on #1) + +The wider backlog map (erp milestones, factory ADRs): the PRD [STATUS.md](https://gitea.arcodange.lab/arcodange-org/factory/src/branch/main/vibe/PRD/ai-back-office/STATUS.md). ⚠️ This repo's owner is `arcodange` (user org), not `arcodange-org` — Gitea MCP calls need the right owner. + +## Operating rules + +- Work on a branch, PR via the `mcp__gitea__*` tools (this forge is Gitea; `gh` fails). +- Secrets via env (`AUTH_SECRET`, bot tokens from @BotFather) — never committed; `bots.example.yaml` is the template. +- A missing daily digest must be treated as an alarm by fleet consumers — keep the digest path dumb and reliable (an empty day still sends "all green").