- run_task_brief_research() runner with brief-specific tool set and max_steps=12 - New agents: client_agent (list_clients, get_client) and relations_agent (query_relations) - search_associative tool wrapping MemoryMiddleware semantic search - BRIEF_RESEARCH_TOOLS constant: read-only task/project/note/timeline + memory + client/relations - canvas block extraction in output_formatter (splits visible text from <canvas> draft) - device_ws.py: task_brief_research request type; emits canvas_draft mutation on stream_end - Stage 2 briefMode: briefing_context injected into floating system prompt when present - briefingContext kwarg wired through compile_prompt call chain Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
96 lines
4.7 KiB
Plaintext
96 lines
4.7 KiB
Plaintext
# ── Application ──────────────────────────────────────────────────────────────
|
|
ENV=dev
|
|
|
|
# ── Database ──────────────────────────────────────────────────────────────────
|
|
DATABASE_URL=postgresql+asyncpg://postgres:postgres@localhost:5432/adiuvai
|
|
|
|
# ── Auth ──────────────────────────────────────────────────────────────────────
|
|
JWT_SECRET=replace-with-a-long-random-secret
|
|
JWT_ALGORITHM=HS256
|
|
JWT_ACCESS_TOKEN_EXPIRE_MINUTES=30
|
|
JWT_REFRESH_TOKEN_EXPIRE_DAYS=30
|
|
|
|
# ── LLM ───────────────────────────────────────────────────────────────────────
|
|
# LiteLLM model identifiers — change to swap providers without code changes.
|
|
# Examples: gpt-4o, anthropic/claude-sonnet-4-20250514, gemini/gemini-pro, ollama/llama3
|
|
#
|
|
# API keys — only the key(s) matching your chosen provider(s) are required.
|
|
# The correct key is picked automatically from the model prefix (e.g.
|
|
# "anthropic/..." → ANTHROPIC_API_KEY, "gemini/..." → GOOGLE_API_KEY).
|
|
OPENAI_API_KEY=
|
|
ANTHROPIC_API_KEY=
|
|
GOOGLE_API_KEY=
|
|
CEREBRAS_API_KEY=
|
|
GROQ_API_KEY=
|
|
DEEPSEEK_API_KEY=
|
|
|
|
# Default model used by any agent that does not have a specific override below.
|
|
LLM_MODEL=gpt-5-mini
|
|
LLM_EMBED_MODEL=text-embedding-3-small
|
|
|
|
# GitHub Copilot — leave empty to use the LiteLLM default token directory.
|
|
# In Docker, point this to a named-volume path so tokens survive restarts.
|
|
# GITHUB_COPILOT_TOKEN_DIR=
|
|
|
|
# ── Per-agent model overrides ─────────────────────────────────────────────────
|
|
# Leave a value empty to fall back to LLM_MODEL.
|
|
# Each agent resolves its API key from the model prefix automatically.
|
|
#
|
|
# Intent classifier — routes user messages to the right domain agent.
|
|
# A small/fast model (e.g. gpt-4o-mini) is usually sufficient here.
|
|
LLM_MODEL_CLASSIFIER=
|
|
|
|
# Home-agent — handles chat from the home screen (all tools available).
|
|
LLM_MODEL_HOME_AGENT=
|
|
|
|
# Floating-agent — handles contextual chat triggered from a task/project/note.
|
|
LLM_MODEL_FLOATING_AGENT=
|
|
|
|
# Unified-processor — processes local directory files (local agent runner).
|
|
LLM_MODEL_UNIFIED_PROCESSOR=
|
|
|
|
# Cloud-processor — fetches and processes data from cloud connectors.
|
|
LLM_MODEL_CLOUD_PROCESSOR=
|
|
|
|
# Brief-agent — produces home and project text briefs.
|
|
# A small model (e.g. gpt-4o-mini) is sufficient.
|
|
# LLM_MODEL_BRIEF_AGENT=
|
|
|
|
# Task-brief-agent — per-task deep research (Stage 1 executive assistant).
|
|
# Needs tool-use + reasoning; a capable model recommended (e.g. gpt-4o, gemini-2.5-flash).
|
|
# LLM_MODEL_TASK_BRIEF_AGENT=
|
|
|
|
# Setup-agent — guided journey to build an AgentConfig via WebSocket chat.
|
|
LLM_MODEL_SETUP_AGENT=
|
|
|
|
# Memory-extractor — Mem0-style extract/decide pipeline (Phase 2).
|
|
# Defaults to gpt-4o-mini when empty (fast + cheap, temperature=0).
|
|
LLM_MODEL_MEMORY_EXTRACTOR=
|
|
|
|
# Memory-miner — proactive pattern mining from episodic history (Phase 5, Power+ only).
|
|
# Defaults to gpt-4o-mini when empty.
|
|
LLM_MODEL_MEMORY_MINER=
|
|
|
|
# Memory-auditor — weekly contradiction scan + relation label canonicalization (Phase 7).
|
|
# Defaults to LLM_MODEL when empty (a reasoning-capable model is recommended).
|
|
LLM_MODEL_MEMORY_AUDITOR=
|
|
|
|
# Scheduler — set to false to disable memory cron jobs (automatically false in tests).
|
|
SCHEDULER_ENABLED=true
|
|
|
|
# ── Stripe (leave empty to stub billing) ──────────────────────────────────────
|
|
STRIPE_SECRET_KEY=
|
|
STRIPE_WEBHOOK_SECRET=
|
|
|
|
|
|
# ── Langfuse (leave empty to disable observability) ───────────────────────────
|
|
LANGFUSE_SECRET_KEY=
|
|
LANGFUSE_PUBLIC_KEY=
|
|
# LANGFUSE_BASE_URL=https://cloud.langfuse.com # EU (default)
|
|
# LANGFUSE_BASE_URL=https://us.cloud.langfuse.com # US
|
|
# LANGFUSE_BASE_URL=http://localhost:3000 # Self-hosted
|
|
|
|
# ── CORS ──────────────────────────────────────────────────────────────────────
|
|
# Comma-separated list parsed by Settings (override default if needed)
|
|
# CORS_ORIGINS=["app://.","http://localhost:3000"]
|