Claude Code First, specification version 0.1.0. The plain-language guide
Version 0.1.0. Level profile. Best evidence grade R4/S4.
AP-2 Names in agent-facing text are checked against the build
Every command, tool or configuration key that a product's agent-facing text names MUST be checked by a gate against the product's own catalogue of names.
| Field | Value |
|---|---|
| Keyword | MUST |
| Level | profile |
| Checked | by judgement |
| Findings | F7, F306, F403 |
| Harness facts | none |
| Threat | reliability: the S4 control run is winwright's alone |
| Status | active |
Rationale: a count or list typed into prose went stale in all five projects when what it described changed, and stayed true only where it was generated or checked (F7, R4/S4). In winwright the README's configuration example had been missing a key since the verb that reads it shipped, and a gate over the example had not seen it because it checked names somebody typed; the check that replaced it reads the build's own catalogue of keys and was seen to fail when the key was taken out again. winwright's shipped skill is under a names test because a stale name "sends an agent confidently at something that is not there" [winwright@861b82e:tests/Winwright.Tests/SkillTests.cs#L16-L18] (F306). The cost of the opposite was counted: a session working from a stale skill that lacked one command made five refusal round-trips (F403). A refusal or error message that names a remedy is agent-facing text in this sense, so the command it names is checked like any other.