| Age | Commit message (Collapse) | Author |
|
- Rewrote system prompt with TOKEN EFFICIENCY section
- Reduced defaults: timeout 600s, maxCost 50ยข, maxTokens 100k
- Added output truncation (8000 char cap) to all tools
- Tightened search limits (30 results, 5 context lines)
|
|
- Add SQLite storage for tool traces (Omni/Ava/Trace.hs)
- Add web server to serve trace viewer (Omni/Ava/Web.hs)
- Add HTML/CSS/JS trace viewer UI (Omni/Ava/Web/trace.html)
- Integrate trace storage into Engine.hs tool execution callback
- Add trace links to Telegram responses when AVA_WEB_URL is set
- Configure Tailscale Funnel for public access
- Fix pre-push hook variable scope bug
- Add direnv, bash, nix to Ava service PATH
- Add mustache dep to Ava.hs for template rendering
Epic: t-272
|
|
- Telegram.hs: add loadTelegramSystemPrompt with fallback
- Subagent.hs: add loadSystemPromptForRole with fallback
- Coder.hs: add loadCoderSystemPrompt with fallback
- Ava.nix: add tmpfiles rules for /home/ava/prompts/
- Prompts.hs: fix test to expect .mustache extension
Templates loaded at runtime from $AVA_DATA_ROOT/prompts/.
Falls back to hardcoded prompts if templates not found.
Amp-Thread-ID: https://ampcode.com/threads/T-019b3878-73be-77ec-97cc-d092a28d211e
Co-authored-by: Amp <amp@ampcode.com>
|
|
|
|
Remove task_id requirement and all jr task CLI calls. The Coder subagent
now only requires namespace and task description - no external task
tracking needed.
Changes:
- Remove coderTaskId from CoderConfig
- Remove jr task show/update/comment calls
- Commit message uses namespace prefix instead of task ID
- Recovery phase just reverts git, no task comment
- Subagent.hs only validates namespace for Coder role
|
|
Based on Anthropic's effective harnesses research.
New modules:
- Omni/Agent/AuditLog.hs: JSONL audit logging with SubagentId linking
- Omni/Agent/Tools/AvaLogs.hs: Tool for Ava to query her own logs
- Omni/Agent/Subagent/HARDENING.md: Design documentation
Key features:
- SubagentHandle with TVar status for async execution and polling
- spawnSubagentAsync, querySubagentStatus, waitSubagent, cancelSubagent
- User confirmation: spawn_subagent requires confirmed=true after approval
- Audit logs stored in $AVA_DATA_ROOT/logs/{ava,subagents}/
- CLI: ava logs [--last=N] [<subagent_id>]
- read_ava_logs tool for Ava self-diagnosis
Tasks: t-267, t-268, t-269, t-270, t-271
|
|
Enables orchestrator to spawn specialized subagents for focused tasks:
- WebCrawler: web search + page reading (haiku, fast)
- CodeReviewer: code analysis tools (sonnet, thorough)
- DataExtractor: structured data extraction (haiku)
- Researcher: combined web + codebase research (sonnet)
Key features:
- spawn_subagent tool with role-based tool selection
- Per-subagent resource limits (timeout, cost, tokens)
- Structured output with citations (claim, source_url, quote)
- Separate API keys for OpenRouter vs Kagi
- Efficiency-focused system prompts
Defaults: 200k tokens, $1.00 cost cap, 600s timeout, 20 iterations
|