Skip to main content

The Agentic Operating System (AI & Assistants)

This setup treats assistant behavior as strict, version-controlled configuration installed alongside the rest of the dotfiles. The goal is deterministic, verifiable behavior instead of relying on unpredictable LLM defaults.

Start with Choose your flow when you are asking "how do I do X?" It routes build, check, understand, and communicate scenarios to the right flow, then shows how to pivot between flows mid-work.

Abstract layered AI operating system: dotfiles base, terminal tools, and coordinated agent workers

At a high level, the AI layer is a set of governed routes, not a pile of prompts:

Agentic operating system governance route: request, SOP, skill, gates, optional subagent, evidence, and gated action

Mental model

LayerWhat it ownsWhere to read next
GovernanceAlways-on SOP entrypoints installed into $HOMESystem Prompt (SOP)
RoutingSkills under ~/.agents/skills/ that load by intentSkills
MemoryHook memory plus durable AI KBAgent memory
ToolingMCP servers, model routing, per-tool config rendering, and local inferenceMCP servers, Model registry & routing, Tool configs, llama.cpp local inference

Using this section

Use the scenario router first when you know the job but not the subsystem:

  • Choose your flow — scenario rows for build, check, understand, and communicate work.
  • Reviewing agent diffs — staged-diff reading discipline when an agent produced the change and you are the reviewer.

Use the subsystem pages when you already know the layer you are changing or debugging:

SubsystemPage
Scenario router (start here)Choose your flow
System prompt / SOPSystem Prompt (SOP)
Skills list and routing contractSkills
Subagent runtime profilesCross-harness subagents
Review skill and agent-review topologyReview workflow
Spec packets and hands-free buildsCreation workflow
Hook memory + durable AI KBAgent memory
Canonical MCP registryMCP servers
Model registry and routingModel registry & routing
Per-tool config renderingTool configs
Local llama.cpp inferencellama.cpp local inference
Reviewing agent diffsReviewing agent diffs

Governance layer

Entrypoints installed into $HOME:

SourceTargetNotes
home/readonly_AGENTS.md~/AGENTS.mdSingle SOP source
home/symlink_CLAUDE.md~/CLAUDE.mdSymlink to ~/AGENTS.md
home/dot_gemini/symlink_GEMINI.md~/.gemini/GEMINI.mdSymlink to ~/AGENTS.md
home/dot_cursor/symlink_AGENTS.md~/.cursor/AGENTS.mdSymlink to ~/AGENTS.md
home/dot_codex/symlink_AGENTS.md~/.codex/AGENTS.mdSymlink to ~/AGENTS.md
home/dot_config/opencode/symlink_AGENTS.md~/.config/opencode/AGENTS.mdSymlink to ~/AGENTS.md
home/private_dot_copilot/symlink_copilot-instructions.md~/.copilot/copilot-instructions.mdSymlink to ~/AGENTS.md

There is one real SOP file. The harness entrypoints above are symlinked to it, so the always-on instruction layer stays identical across harnesses.

Skills live under ~/.agents/skills/; the chezmoi source is home/exact_dot_agents/exact_skills/.

Core workflow: change a skill

  1. Edit files under:

    home/exact_dot_agents/exact_skills/
  2. Apply and verify:

    chezmoi diff
    chezmoi apply
    ls -la ~/.agents/skills

Safety boundaries

  • Keep assistant instructions declarative and repo-local.
  • Keep generic AI workflows, setup, skills, hooks, and subagent profiles domain-neutral.
  • Repo/org/product specifics live in verified domain overlays or dedicated domain skills.
  • Keep secrets in pass or local private config, not tracked markdown.
  • Validate generated automation commands before state-changing actions.

Verification and troubleshooting

High-signal checks:

chezmoi diff
chezmoi apply
ls -la ~/.agents/skills

If behavior is not picking up expected instructions:

  • verify the correct entrypoint exists in $HOME;
  • verify skill files exist under ~/.agents/skills/;
  • verify runtime secrets expected from pass are present.