[research@ai4se] : ~ $
cd ../
[methodology] | | 16 min

# Core Concepts of Agentic Coding Agents: Beyond the Model Lies the Harness

A Coding Agent isn't a chatbot that's better at writing code — reliability comes from the Harness: Instructions, Tools, Memory, Permissions, and the Verification Loop working together.

[agentic-engineering][methodology]

An Agentic Coding Agent is not “a chatbot that’s better at writing code.” It is a software engineering participant that reads context, calls tools, modifies files, runs verification, receives feedback, and keeps iterating inside a controlled engineering environment.

The direction of mature usage is clear: moving from vibe coding into agentic engineering — designing stable instructions, tools, permissions, context, and verification loops for the agent.

Definition

Agentic Coding Agent = Model + Instructions + Tools + Memory/Context + Permissions + Workflow Loop

The model is just the source of capability; reliability comes mainly from the surrounding Harness. In one line: the model gives you possibility, the Harness gives you reliability. See Harness Engineering for more.

A Shared Abstraction Across Three CLIs

Claude Code, Codex CLI, and Gemini CLI are different products, but their abstraction layers align closely:

Concept layerClaude CodeCodex CLIGemini CLI
Persistent instructionsCLAUDE.md, .claude/rules/AGENTS.mdGEMINI.md
Session commands.claude/commands/*.mdBuilt-in /plan, /review, etc..gemini/commands/*.toml
Skills.claude/skills/.agents/skills/.gemini/skills/
Subagents.claude/agents/.codex/agents/.gemini/agents/
External tools.mcp.jsonconfig.toml MCPmcpServers
Safety boundarypermissions, sandbox, hookssandbox, rules, hooksallowlists, checkpointing

Orchestration pattern: Claude/Gemini emphasize Command → Agent → Skill; Codex currently leans more toward Agent → Skill + slash/session controls.

Ten Core Concepts

1. Agent vs. Chatbot

A chatbot generates answers; an agent calls tools and keeps acting based on its observations. The human’s role shifts from “writing code line by line” to “setting goals, designing boundaries, reviewing evidence, and taking accountability.”

2. Persistent Instructions

CLAUDE.md / AGENTS.md / GEMINI.md load project conventions into every session.

Good fit: repo structure, build/test commands, architectural conventions, the definition of done. Poor fit: long prose, one-off tasks, complex procedural detail (which should be broken out into skills/docs instead).

3. Commands — Stable Workflow Entry Points

Commands are not magic incantations — they turn high-frequency workflows into entry points, parameters, and constraints. Codex’s /plan, /review, and /permissions are session controls; Claude/Gemini’s custom commands behave more like prompt templates.

4. Skills — Reusable Packages of Procedural Knowledge

Progressive disclosure: at the start of a session, only the name and description are exposed; the full SKILL.md is read only when a task matches. Commands trigger workflows; Skills carry the reusable know-how. See Nine Types of Claude Code Skills.

5. Subagents — Context Partitioning

Subagents move noisy intermediate output out of the main session, reducing context pollution. Good fit for read-heavy, parallelizable, and summarizable tasks; parallel write operations require caution.

Subagents aren’t “more AI” — they’re context partitioning and separation of responsibility.

6. MCP — The External Tool Bus

Give the agent the right tool for the task: documentation lookup, web UI debugging, GitHub/Linear workflows. It’s not “the more MCPs you connect, the better.” See The MCP Protocol.

7. Config — A Deterministic Control Plane

Put stable behavior into config rather than repeating reminders in the prompt: model, sandbox, approval, MCP, hooks. The prompt is a request; config is the boundary.

8. Safety Boundary

Sandbox, approval policy, tool allowlist, hooks, checkpointing. Permissions don’t get in the way of efficiency — they’re what makes efficiency trustworthy.

9. Memory vs. Instructions vs. Context

LayerPurposeRisk
Current contextCurrent task, files, errorsCan bloat and become polluted
Persistent instructionsProject/team rulesToo long dilutes attention
MemoryUser preferences, habitsShouldn’t replace checked-in rules
External knowledgeDocumentation, codebase factsMay go stale, needs dynamic verification

10. Verification Loop

Research → Plan → Execute → Review → Ship

An agent’s deliverable isn’t code — it’s a change accompanied by evidence: test output, diff review, screenshots, reproduction records.

Four Layers of Extension Capability

LayerQuestion it answersRepresentative examples
GovernanceWhat can be done, and when to checkSettings, Rules, Hooks, Permissions
ExtensionHow to package and distributePlugins, Extensions, Marketplace
OrchestrationHow multi-step work is organizedWorkflows, Commands, Agent Teams
ObservabilityHow to recover and auditSessions, Checkpointing, Telemetry

Accountability Architecture

                 Human intent and accountability
                              |
                              v
  +----------------------------------------------------------+
  | Agentic Coding Agent Harness                            |
  |  Instructions + Tools/MCP + Memory + Permissions        |
  |              Research -> Plan -> Execute -> Review       |
  +----------------------------------------------------------+
                              |
                              v
                 Evidence: tests, diff, logs, screenshots

Typical Anti-Patterns

  • A mega instruction file that dilutes the rules
  • A subagent holding full shell/MCP/write permissions
  • Prompt-only governance with no sandbox/hooks
  • Changing code without a baseline test suite
  • Context hoarding — never cleaning up long sessions
  • The agent declares “done” with no evidence
  • Handing an unreviewed PR straight to a colleague

References