
Three Claude Code v2.1.224 Settings Every Team Should Know: Session Caps, Repo Permissions, and Archive Plugins
Chris Harper
2 min read
Aug 8, 2026 · 04:09 UTC
Claude Code v2.1.224 adds session-wide runaway-loop guards (tunable via env vars), repo-root "Always allow" persistence, and zip-based plugin distribution — three settings that matter most in team and CI contexts.
1. Session-wide safety caps — and how to tune them
v2.1.224 introduces per-session limits to stop runaway agentic loops before they rack up large API bills or spin indefinitely:
| Cap | Default | Env var to override |
|---|---|---|
| WebSearch calls | 200 | CLAUDE_CODE_MAX_WEB_SEARCHES_PER_SESSION |
| Subagent spawns | 200 | CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION |
For most interactive sessions, 200 is far more than enough. For legitimate long-running CI jobs that fan out many subagents — a full-repo migration, a large test-suite analysis — raise the cap before the run:
export CLAUDE_CODE_MAX_SUBAGENTS_PER_SESSION=500
claude -p "Migrate all 380 route handlers to the new API format" \
--output-format json \
--allowedTools "Read,Edit,Bash(node:*)"
When a cap is hit, Claude Code logs a warning and terminates cleanly with exit code 1 — so your pipeline can catch it and retry with a higher limit if needed.
2. "Always allow" rules now save at the repo root
Previously, approving a tool action with "Always allow" stored the rule in your global ~/.claude/settings.json. As of v2.1.224, it writes to .claude/settings.json in the repository root. Concretely:
- Project allowlists travel with the project (commit them, and teammates get them automatically)
- Approvals granted in a git worktree persist across sessions and other worktrees in the same repo
- Per-repo rules no longer bleed into unrelated projects
For teams: commit .claude/settings.json with your standard approved tool set. New developers who clone the repo inherit the team's allowlist without having to approve each action from scratch.
3. Archive plugin source
v2.1.224 adds a new plugin source type: install a plugin directly from a zip file served over HTTPS, no git repo or npm package required.
// .claude/settings.json
{
"pluginSources": [
{
"type": "archive",
"url": "https://internal.example.com/plugins/company-standards.zip",
"sha256": "a1b2c3d4e5f6..."
}
]
}
The sha256 field is optional but strongly recommended for any internal distribution — it pins the exact archive so a compromised URL can't silently swap in a different payload.
Sources: Claude Code changelog — code.claude.com · Claude Code Updates Aug 2026 — Releasebot