Kaya Tasks board mention agent (WS + core RunAgent)
|
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Reset read deadline on server Ping (not only Pong), run OnEvent async so long replies do not stall the socket, and always answer clear Mira delivery asks instead of LLM decide-gate skips. |
||
|---|---|---|
| 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.RunAgent(tools disabled) with Kaya persona - POST comment with
Idempotency-Key: mention-reply:<comment_id>
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 |
Build
go build -o kaya ./cmd/kaya
Image binary: /app/kaya. Health :8087/healthz, metrics :9097/metrics.