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>
47 lines
1.3 KiB
Markdown
47 lines
1.3 KiB
Markdown
# l-ai-agent-kaya
|
|
|
|
Thin Tasks board agent: replies to `@kaya` mentions in task comments.
|
|
|
|
## Behavior
|
|
|
|
Long-lived daemon:
|
|
|
|
1. Connects to `l-ai-tasks` WebSocket (`TASKS_WS_URL`) with reconnect.
|
|
2. On `comment.added` where mentions include agent `kaya` and author ≠ `kaya`:
|
|
- dedupes by comment id
|
|
- GET task + comments via REST
|
|
- calls `l-ai-core` `AIService.RunAgent` with 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 use `add_comment` for 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
|
|
|
|
```bash
|
|
go build -o kaya ./cmd/kaya
|
|
```
|
|
|
|
Image binary: `/app/kaya`. Health `:8087/healthz`, metrics `:9097/metrics`.
|