The AI Coding Harness Guide

Agent output quality is set less by the model than by the harness around it: project guides, permissions, context strategy, configuration, and feedback loops.

Guides below cover the full path from first setup to multi-agent fleets, each backed by production use. Release-by-release analysis of the tools themselves lives in the version trackers.

Start with the Mindset

The job shifts from writing code to designing the environment agents write it in. Legibility, automated invariants, and review discipline decide output quality more than any prompt.

The Agentic Engineering Playbook

Engineers no longer write code — they design environments where agents do. A practical guide to agent legibility, automated invariants, and treating AI as first-class teammates.

Set Up the Harness

A concise CLAUDE.md, scoped permissions, and slash-command automation cut more friction than a model upgrade. The exact files and settings:

Boost Developer Productivity in 2025 with Claude Code - Settings, Custom Commands, Stack Guides and Tips and Tricks

Claude Code, the terminal-native, agentic coding assistant, gets exponentially more useful when you give it a concise project guide (CLAUDE.md), set sensible permissions & environment via settings.json, and automate routine actions with slash-command files. This guide packs all three into copy-ready snippets: stack-specific CLAUDE.md templates, a JIRA-driven custom workflow, permission hygiene tips, and a reflection command that continuously sharpens your guide.

Improved Claude Code Settings Schema with Environment Variable Autocomplete

I've been using the official schema from Anthropic for Claude Code settings, but one thing was missing: autocomplete for environment variables. So I built an improved schema with 50+ env vars, inline documentation, and full IntelliSense support. Plus, I'm launching a new 'Extras' section for downloadable productivity tools.

Control the Context Window

Sessions degrade before the token limit — quality drops around 70-75% capacity. Compaction has dials; most engineers never touch them.

Why Your Claude Code Sessions Keep Dying (And How to Fix Them)

Context window mismanagement is the number one productivity killer in Claude Code. This guide shows you how to recognize context degradation, why it happens around 70-75% capacity, and the exact strategies top engineers use to maintain peak Claude Code performance throughout long coding sessions.

Configure Everything

Claude Code ships hundreds of environment variables; most never reach the docs. The full reference, plus fixes for the common proxy and Bedrock failures.

The Complete List of Claude Code Environment Variables (500+)

The definitive reference for every Claude Code environment variable — 500+ vars organized by category. API keys, model overrides, Bedrock/Vertex/Foundry setup, feature flags, context compaction, agent teams, MCP, plugins, enterprise proxy, OTEL, and more. Includes the fix for the Bedrock eager_input_streaming 400 error.

Tame Permissions

Re-approving npm test hundreds of times a week is deletable friction. Scan session history once, apply a safe allowlist globally.

Debug the Harness

Debug flags, log directories, and undocumented switches show what the agent actually did — not what it reported.

Scale to Multiple Agents

One well-harnessed agent is table stakes. Parallel fleets compound the leverage and introduce failure modes single sessions never hit.

Close the Feedback Loop

Agents fix what they can observe. Crash reports, test output, and production telemetry belong inside the loop, not in a dashboard the agent never sees.

Frequently Asked Questions

What is a harness for AI coding agents?

The environment built around a coding agent: project guides like CLAUDE.md, permission allowlists, environment variables, a context management strategy, and the feedback loops — tests, linters, crash reports — that let the agent verify its own work. Harness quality, not model choice, separates reliable agent output from unpredictable output.

Why do Claude Code sessions degrade over time?

Context quality drops before the technical token limit — noticeably around 70-75% capacity. System prompts and accumulated conversation consume the budget, and each compaction dilutes earlier context. One task per context, deliberate /clear and /compact usage, and tuned compaction thresholds keep sessions sharp.

What should go in a CLAUDE.md file?

Build and test commands, tech stack constraints, coding conventions, and project rules the agent cannot infer from code. Every line costs context in every session — keep it concise and split details into referenced docs the agent loads on demand.

How do I stop approving the same commands repeatedly?

permissions.allow patterns in settings.json — global in ~/.claude/settings.json, per-project in .claude/settings.json. Tools exist that scan session history and propose a safe allowlist in bulk instead of hand-writing patterns.

Are undocumented Claude Code environment variables safe to use?

They work, but they are internals: any release can change or remove them without notice. Use them for debugging and tuning, track releases if one becomes load-bearing, and prefer documented settings when an equivalent exists.

New lessons every week

We test the tools so you don't have to. Browse the full blog or get in touch to talk about your team's setup.