Skip to main content
The goal: file a GitHub Issue, grab coffee, come back to a PR that’s been implemented, tested, and reviewed by multiple AI models — just waiting for a thumbs up. Not fully there yet, but close enough to be dangerous. Humans decide what to build. AI agents handle the how. Automation runs the boring parts. A human gives the final sign-off. Claude, Antigravity, Copilot, and local MLX models each do what they’re best at — the right model for the right job instead of throwing everything at one.

The pipeline

Green nodes are human, coral are AI, ink are automation. The role is the node colour; the chain is the timeline — no zigzag because the diagram never asks the arrows to leave a column.

The model-routing philosophy

The routing is opinionated, not magic: every model has a sweet spot, and clear rules in ~/CLAUDE.md and AGENTS.md say which model to use when — the strongest model for multi-file refactors and deep reasoning, the cheap one for line-level completion, local inference for anything not worth cloud tokens. The reasoning behind that split, and how it is governed once several agents share one endpoint, lives on Model routing. The serving stack that runs the local tiers is under Local LLM.

Local AI gateway (LiteLLM)

The LiteLLM router pool is the single endpoint for the shared local inference fabric on the homelab. Workstation AI tools reach cloud providers (OpenAI, Gemini, OpenRouter) directly, using each tool’s own native credentials — the router pool isn’t in that path. Tools resolve task classes (Research, Coding, Review, Pre-commit) to a current model at call time — never hardcode model identifiers in committed config. When localOnlyMode is enabled, every request routes exclusively to the local MLX inference server on port 11434. See Homelab GPU for routing conventions, local-only mode details, and provider capabilities.

Priority order

  1. Anthropic official — Claude Code plugins, skills, patterns
  2. LiteLLM router — local, on-estate inference routing across the router pool
  3. Personal or custom — only when no alternative exists

Repos that power this pipeline

ai-assistant-instructions

Universal AI configuration layer — rules, permissions, workflows, agents.

claude-code-plugins

Commands, skills, hooks, agents for Claude Code.

nix-ai

Nix package and config layer for every AI coding tool.

claude-code-routines

Scheduled remote-agent routines on Claude.ai.

ai-workflows

Reusable GitHub Copilot agentic workflows.

raycast-smart-issue

Raycast extension for AI-drafted GitHub issues via local MLX.
See AI Development · Overview for what each one does in detail. For the actual triggers, callers, and skill mechanics that drive this pipeline end-to-end, see Automation · Overview.

Observability layer

Every interaction in this pipeline emits OpenTelemetry. The data flows through Cribl Edge, Cribl Stream, and Splunk; purpose-built Splunk apps visualize it. If an AI agent touched code, there’s a trace.