Reference

Core principles

These rules stay true no matter which framework, model, or product domain you use. Revisit this page whenever a design choice feels fuzzy.

PrincipleMeaningIf ignored
Cognition ≠ authority Model proposes; orchestrator authorizes side effects Unsupervised publish / delete / spend
Durable state outside the model Posts, runs, tokens live in DB/files No audit; “forgot” mid-run
Structured I/O Tools and skills use schemas Fragile free-text parsing
Small tools, clear contracts One capability per tool Untestable god-tools
Human gates on irreversible acts Publish, pay, delete, OAuth need approval/policy Silent production damage
Budgeted autonomy Max steps, tokens, time, revisions Infinite loops / cost blowups
Observable runs Every step logged and streamable Cannot monitor or debug
Swappable model OpenAI-compatible adapter Vendor lock-in; no LM Studio
Harness-agnostic interface MCP and/or stable HTTP Only works in one IDE
Memory is designed Brand / working / episodic layers Hallucinated “memory”

Agent loop in one line

goal → plan → choose tool → act → observe → update → repeat
         ↑______________________________________________|

Until: done, blocked, needs human, or budget exhausted.

Patterns to name out loud

  • Tool gateway — all side effects behind authz + logging
  • Status machine — explicit legal transitions
  • Approval as state — not a prompt that says “be careful”
  • Idempotency keys — especially for publish/upload
  • Compaction — summarize old steps so context does not explode
  • Escalation — uncertainty → needs_human