Kaya Tasks board mention agent (WS + core RunAgent)
|
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Match Telegram chat tool surface (journal, tasks, steam/discord/node) so diary requests hit write_journal instead of a board-only comment. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| cmd/kaya | ||
| internal | ||
| profiles | ||
| proto/l-ai-core-proto | ||
| .env.example | ||
| .gitignore | ||
| .gitmodules | ||
| .woodpecker.yml | ||
| Dockerfile | ||
| go.mod | ||
| go.sum | ||
| README.md | ||
l-ai-agent-kaya
Thin Tasks board agent: replies to @kaya mentions in task comments.
Behavior
Long-lived daemon:
- Connects to
l-ai-tasksWebSocket (TASKS_WS_URL) with reconnect. - On
comment.addedwhere mentions include agentkayaand author ≠kaya:- dedupes by comment id
- GET task + comments via REST
- calls
l-ai-coreAIService.RunAgentwith tools enabled (tool_profile=kaya-board: journal, tasks, steam/faceit, discord, node — same surface as Telegram chat; no gitea/evolver) - POST comment with
Idempotency-Key: mention-reply:<comment_id>(do not useadd_commentfor the reply itself)
No Telegram / Live Chat integration.
Identity
agent_id:kaya- Display: Kaya / Кая
- Profile:
profiles/kaya.yaml
Env
| Variable | Required | Default |
|---|---|---|
TASKS_WS_URL |
yes | — |
TASKS_API_URL |
yes | — |
TASKS_AGENT_TOKEN |
yes | — |
CORE_ENDPOINT |
no | core:50051 |
CORE_TOKEN |
yes | — |
CORE_INSECURE |
no | false |
MODEL |
no | deepseek-v4-flash |
AGENT_PROFILE_PATH |
no | profiles/kaya.yaml |
HEALTH_LISTEN_ADDR |
no | :8087 |
METRICS_LISTEN_ADDR |
no | :9097 |
RESPONSE_TIMEOUT |
no | 180s |
Build
go build -o kaya ./cmd/kaya
Image binary: /app/kaya. Health :8087/healthz, metrics :9097/metrics.