Harness Pattern vs. Framework Pattern

Two fundamentally different philosophies for building AI agent products

Harness Pattern (Claude Code / learn-claude-code)
The Model IS the Agent (Claude, GPT, etc.)
Agent Loop
while tool_use: execute, append, repeat
Tool Dispatch
bash, read, write, edit, glob, grep
Context Management
Compression, skills, subagents
Coordination
Tasks, teams, worktrees
Framework Pattern (LangChain, CrewAI, etc.)
Workflow Graph / DAG
Nodes, edges, conditional branches
Prompt Chain Orchestration
Step 1 -> Step 2 -> Step 3 (hardcoded)
Role / Agent Definitions
Researcher, Analyst, Writer (configured)
LLM (used as text-completion node)
Output Parser / Structured Response
Force output into predefined schema
Harness: Trust the model The model decides what to do, when to call tools, and when to stop. The code provides the environment. Minimal indirection. Maximum model autonomy.
Framework: Override the model The code decides the workflow. The model fills in blanks within a predetermined pipeline. High indirection. Model autonomy constrained by design.
Interactive: Click any layer to see how the two architectures differ in philosophy and implementation.