Files
famapp/docs/tasks/88-llm-agent-chat.md
ginnoir 4a924a4107 feat(agent): add llm assistant chat with api tools (task 88)
OpenAI-compatible client with mock fallback, tool-calling loop, and /assistant UI.

Tools map to /api/v1/ endpoints per ADR 0006 direct-tools decision.
2026-07-04 19:46:09 -05:00

1.3 KiB

88 — LLM agent chat

Goal

Natural-language chat that acts on the app via tool-calling against the API, using a provider-agnostic OpenAI-compatible endpoint (self-hosted on the homelab).

Why

Users should say "add milk to the shopping list" or "what's on the calendar Friday?" and have the agent use the API.

Depends on

  • 87 (API surface)
  • ADR 0006-api-llm-agent.md agent half (MCP yes/no, tool mapping)

Scope

  • Agent chat UI in the app.
  • OpenAI-compatible client (provider-agnostic).
  • Tool-calling mapped to API endpoints from 87 (and journal if present).
  • Decide MCP vs direct tools in ADR 0006.
  • Smoke tests with mock/stub provider in CI — no live LLM in CI.

Out of scope

  • Training or fine-tuning models.
  • Forward-auth for other homelab apps.

Acceptance criteria

  • Chat UI sends prompts and shows responses.
  • Tools call the API successfully in dev against the homelab endpoint.
  • CI uses mock provider only.
  • ADR 0006 records provider and MCP decisions.

Notes