Claude Code
- getHarness
- getHarness("claude")
- binary
- claude
- invoke modes
- 4 of 6 · official
- model listing
- no
- mcp config
- json · standard
- agents file
- ~/.claude/CLAUDE.md
Claude Code is the harness most of the others borrow from: Cursor, Copilot, OpenCode and Mastra Code read .claude/skills/, Grok loads CLAUDE.md. Its own layout is settings in JSON at user, project, local and managed scopes, transcripts under ~/.claude/projects/ in a directory named after the dash-encoded working directory, and MCP servers in ~/.claude.json rather than in the settings file, which surprises everyone once.
--tools "" removes every tool from the model, so the advisor mode is real. There is no native read-only sandbox, so readOnly: true is rejected rather than approximated with a permission prompt you'd never see in headless mode.
Capabilities and invocation
mcp: yesvision: yesaudio: novideo: notools: yesstreaming: yes
Binary claude, evidence official. Headless print mode; add --output-format json for structured output. Model selection appends --model {model}.
advisor
{}
-p {prompt} --tools advisor · json
{ structured: true }
-p --output-format json {prompt} --tools read-only
{ readOnly: true }
read-only · json
{ readOnly: true, structured: true }
agent
{ tools: true }
-p {prompt}agent · json
{ tools: true, structured: true }
-p --output-format json {prompt}Paths
Templates as the registry stores them. ~, ${HOME} and %VAR% expand in resolve(); entries tagged with a platform are dropped on the others. Open in the explorer to see them expanded for a home directory of your choice.
config
~/.claude/settings.jsonuser · official · all~/.claude.jsonuser · official · allGlobal MCP server configurations..claude/settings.jsonproject · official · all.claude/settings.local.jsonproject · official · allLocal overrides, typically gitignored..claude/.mcp.jsonproject · official · allProject-scoped MCP server configurations./etc/claude-code/managed-settings.jsonsystem · official · linuxEnterprise managed settings./Library/Application Support/ClaudeCode/managed-settings.jsonsystem · official · darwinEnterprise managed settings.
sessions
~/.claude/projects/<dash-encoded-cwd>/*.jsonldata · official · allPer-project session transcripts in JSONL format.~/.claude/history.jsonldata · official · allGlobal prompt history across all projects.
instructions
CLAUDE.mdproject · official · all.claude/CLAUDE.mdproject · official · allAlternative project-level location.~/.claude/CLAUDE.mduser · official · allGlobal user-level instructions.
skills
.claude/skills/project · official · all~/.claude/skills/user · official · allGlobal user-level skills.
commands
.claude/commands/project · official · allLegacy slash commands, merged into skills.~/.claude/commands/user · official · allLegacy global slash commands.
hooks
.claude/hooks/project · official · all~/.claude/hooks/user · official · allGlobal user-level hooks.
MCP servers
~/.claude.jsonuser · json · standard · mcpServers.mcp.jsonproject · json · standard · mcpServersDetection
envVars
CLAUDE_CODECLAUDECODECLAUDE_CODE_ENTRYPOINTCLAUDE_CONFIG_DIR
projectMarkers
.claude/settings.json.claude/settings.local.json.claude/skillsCLAUDE.md
Persistence
- JSON - Settings and MCP config files. (official)
- JSONL - Session transcripts and global history. (official)
syncAgentsFiles links ~/.claude/CLAUDE.md to the master bundle.