Skip to main content

Capability Levels

Updated 2026-05-19 CLI 0.5.10

ails check reports a Level: L# <Name> line in the scorecard between Agent: and Scope:. The level is a read-out, not a gate — every rule fires when its match conditions apply regardless of which level your project is at. Use the level to self-locate; use the symptom table at the bottom to decide when to climb.

The Ladder

Level Name What's added Channel
L0 System System prompt only attention
L1 Primer One instruction file (CLAUDE.md, AGENTS.md, .cursorrules) attention
L2 Composite Multiple files — user defaults, project overrides attention
L3 Scoped Path-scoped rules (.claude/rules/*.md) attention
L4 Delegated Skills — procedures invoked on demand attention
L5 Abstracted Sub-agents — child contexts called by the parent attention (interface)
L6 Governed Hooks, MCP gates, deny-permissions enforcement
L7 Adaptive Self-improving skills written by the agent self-writing

The ladder sorts by the channel each rung runs on: soft attention (L0–L5), hard enforcement (L6), self-writing memory (L7). Each rung adds a new diagnostic concern — scope leakage at L3, skill-instruction coherence at L4, governance-instruction alignment at L6, drift detection at L7.

Channels

  • Attention — text the model reads and weights against everything else loaded. Fails probabilistically; competes for budget; decays with load. Fixes are content and ordering.
  • Enforcement — hooks, MCP gates, deny-permissions. Acts outside the model's context. Fails deterministically when configured wrong, never silently. Fixes are scripts, schemas, permission rules.
  • Self-writing — agent-authored instructions written between sessions. At read time these land in attention like anything else; at write time the user never saw the prompt that produced them. Fixes are review cadence and explicit auto-memory boundaries.

Detection

The displayed level is the highest architectural capability present, cumulative — every level below must also pass.

Detected Level
Auto-memory, learned rules L7 (Adaptive)
Hooks, MCP servers, managed policies L6 (Governed)
Sub-agent definitions L5 (Abstracted)
Skill definitions L4 (Delegated)
Path-scoped rules (.claude/rules/ with paths:) L3 (Scoped)
Multiple main files, user defaults, overwrites L2 (Composite)
Single main instruction file L1 (Primer)
No instruction files L0 (System)

A project with skills but no path-scoped rules still displays L4 — the gate engine walks L1 → L2 → ... → L7 cumulatively. Hub-only repos that ship hooks but no instructions sit at L0 with an enforcement layer; the level reads the soft channel.

When to climb

Each rung exists because the rung below it fails in a specific way. The trigger is the failure, not a feature wishlist.

From To Symptom that triggers the climb
L0 L1 Re-explaining the same project context every session
L1 L2 One file got long enough that important rules get ignored
L2 L3 Path-irrelevant rules pollute every task
L3 L4 The same procedure gets described inline across multiple rules
L4 L5 A procedure pollutes the parent's context with reasoning chains the parent doesn't need
L5 L6 A constraint must hold 100% of the time, not 95%
L6 L7 You keep correcting the same preference across sessions

Climbing without a symptom adds structure the model has to navigate without solving a problem you had. Under-climbing is more common: "agent didn't run tests before pushing" reads like a prompt-engineering problem but is usually a missing L6 hook; "agent forgot we use Cloudflare Workers" reads like context drift but is usually a missing L7 memory entry.


← Score Guide · Capability Levels · FAQ →