diff --git a/docs/SCREENSHOT_TRIAGE_2026-03-24.md b/docs/SCREENSHOT_TRIAGE_2026-03-24.md new file mode 100644 index 00000000..abbdccb5 --- /dev/null +++ b/docs/SCREENSHOT_TRIAGE_2026-03-24.md @@ -0,0 +1,89 @@ +# Screenshot Dump Triage — Visual Inspiration & Research Leads + +**Date:** March 24, 2026 +**Source:** Issue #1275 — "Screenshot dump for triage #1" +**Analyst:** Claude (Sonnet 4.6) + +--- + +## Screenshots Ingested + +| File | Subject | Action | +|------|---------|--------| +| IMG_6187.jpeg | AirLLM / Apple Silicon local LLM requirements | → Issue #1284 | +| IMG_6125.jpeg | vLLM backend for agentic workloads | → Issue #1281 | +| IMG_6124.jpeg | DeerFlow autonomous research pipeline | → Issue #1283 | +| IMG_6123.jpeg | "Vibe Coder vs Normal Developer" meme | → Issue #1285 | +| IMG_6410.jpeg | SearXNG + Crawl4AI self-hosted search MCP | → Issue #1282 | + +--- + +## Tickets Created + +### #1281 — feat: add vLLM as alternative inference backend +**Source:** IMG_6125 (vLLM for agentic workloads) + +vLLM's continuous batching makes it 3–10x more throughput-efficient than Ollama for multi-agent +request patterns. Implement `VllmBackend` in `infrastructure/llm_router/` as a selectable +backend (`TIMMY_LLM_BACKEND=vllm`) with graceful fallback to Ollama. + +**Priority:** Medium — impactful for research pipeline performance once #972 is in use + +--- + +### #1282 — feat: integrate SearXNG + Crawl4AI as self-hosted search backend +**Source:** IMG_6410 (luxiaolei/searxng-crawl4ai-mcp) + +Self-hosted search via SearXNG + Crawl4AI removes the hard dependency on paid search APIs +(Brave, Tavily). Add both as Docker Compose services, implement `web_search()` and +`scrape_url()` tools in `timmy/tools/`, and register them with the research agent. + +**Priority:** High — unblocks fully local/private operation of research agents + +--- + +### #1283 — research: evaluate DeerFlow as autonomous research orchestration layer +**Source:** IMG_6124 (deer-flow Docker setup) + +DeerFlow is ByteDance's open-source autonomous research pipeline framework. Before investing +further in Timmy's custom orchestrator (#972), evaluate whether DeerFlow's architecture offers +integration value or design patterns worth borrowing. + +**Priority:** Medium — research first, implementation follows if go/no-go is positive + +--- + +### #1284 — chore: document and validate AirLLM Apple Silicon requirements +**Source:** IMG_6187 (Mac-compatible LLM setup) + +AirLLM graceful degradation is already implemented but undocumented. Add System Requirements +to README (M1/M2/M3/M4, 16 GB RAM min, 15 GB disk) and document `TIMMY_LLM_BACKEND` in +`.env.example`. + +**Priority:** Low — documentation only, no code risk + +--- + +### #1285 — chore: enforce "Normal Developer" discipline — tighten quality gates +**Source:** IMG_6123 (Vibe Coder vs Normal Developer meme) + +Tighten the existing mypy/bandit/coverage gates: fix all mypy errors, raise coverage from 73% +to 80%, add a documented pre-push hook, and run `vulture` for dead code. The infrastructure +exists — it just needs enforcing. + +**Priority:** Medium — technical debt prevention, pairs well with any green-field feature work + +--- + +## Patterns Observed Across Screenshots + +1. **Local-first is the north star.** All five images reinforce the same theme: private, + self-hosted, runs on your hardware. vLLM, SearXNG, AirLLM, DeerFlow — none require cloud. + Timmy is already aligned with this direction; these are tactical additions. + +2. **Agentic performance bottlenecks are real.** Two of five images (vLLM, DeerFlow) focus + specifically on throughput and reliability for multi-agent loops. As the research pipeline + matures, inference speed and search reliability will become the main constraints. + +3. **Discipline compounds.** The meme is a reminder that the quality gates we have (tox, + mypy, bandit, coverage) only pay off if they are enforced without exceptions.