typefox/agent-skills/agent-experience
Claude Code and agent skill by typefox/agent-skills
- community
- ext:[{"type":"hook","description":"Pre/post lifecycle hooks"}]
Checking that the SKILL.md file is still in the repository.
Make a code repository agent-ready with state-of-the-art AX (Agent Experience): audit and set up AGENTS.md / CLAUDE.md and agent docs, wire verification sensors with self-correction messages, and build docs-as-memory (architecture docs, ADRs, exec plans). Use when the user wants to make a repo agent-ready or AI-friendly, onboard coding agents, create/review/improve AGENTS.md, CLAUDE.md, or other agent instruction files, set up a project for agent-first development, asks why an agent keeps repeating a mistake, asks any AX question (general or project-specific), or mentions "harness engineering", "agent readiness", "context engineering" (its repo-side slice), or "AX". Not for building agent runtimes or orchestration code, nor for authoring a single agent skill — use skill-creator for that.
Install
npx vskill@latest install typefox/agent-skills/agent-experienceSemi-extensibleMentions customization, but needs skill-specific knowledge. Read the extensible skills standard
SKILL.md
Agent Experience (AX)
AX is the experience AI agents have when working in a repository — how easily they can access, understand, verify, and safely change it. Two reframings drive everything in this skill. First, onboarding happens at the start of every task: a human onboards once, an agent re-onboards every session, so everything a new hire needs in week one, the agent needs in minute one, on every run. Second, hallucination is what inference looks like when context is missing: when an agent invents a build command or misuses an internal API, that is not a model defect to tolerate — it is an AX defect to fix.
The honest test — the single success criterion behind every artifact this skill produces: an agent given a real ticket, with no human help, reliably reaches a green verification suite and produces a diff a reviewer accepts. Optimize for that. Readiness checklists and scores are diagnostics for spotting neglect, never targets to maximize.
Vocabulary: write "AX" and "agent-ready" in everything you produce. When reading sources or searching the web, also recognize the synonyms: context engineering (the superset term — this skill is its repo-side slice), harness engineering (in its repo-side sense), agent readiness, agent legibility, ambient affordances. Generated artifacts never say "harness" — that word collides with the agent-runtime meaning.
The control system in brief
Treat the repo-side AX setup as a control system that regulates the codebase toward its desired state. Two control directions × two execution modes give a 2×2 that classifies everything you find or create:
| Guides (feedforward — steer before the agent acts) | Sensors (feedback — verify after it acts) | ||
|---|---|---|---|
| Computational (deterministic, fast, cheap — run on every change) | one-command bootstrap, task-runner command surface, scaffolding, codemods, generated reference docs, deterministic dev env | type checks, linters, tests + coverage, structural/dependency rules, mutation testing, secret scanners, the build | |
| Inferential (LLM-run, semantic, costly — run at gates or on a schedule) | AGENTS.md, skills, docs/, ADRs (architecture decision records — short, versioned docs capturing one decision, its context, and its consequences), specs, code-level discoverability | review skills, modularity reviews, security/data reviews, doc-gardening, janitor/GC agents |
Both directions are mandatory. Feedback-only, the agent repeats the same mistakes every session — nothing steers it up front. Feedforward-only, rules accumulate but nothing ever verifies they held. Guides raise first-attempt quality; sensors give the agent a self-correction loop that fixes issues before they reach human eyes. Sensors also set the ceiling — the sensor ceiling: the system regulates only what some sensor observes, so a defect class nothing senses (a page that renders wrong under green tests, errors swallowed by a catch block) ships and recurs without ever triggering the loop below. Before letting more agent work land with less human review, widen sensor coverage first — every blind spot a reviewer used to cover becomes a shipped defect class.
The steering loop is the practice that builds and maintains the system: whenever an agent makes a mistake, engineer the repository so that mistake cannot recur — never settle for "prompt harder". Escalate any recurring failure up this ladder until it stops recurring:
- a line in AGENTS.md →
- a dedicated doc or skill →
- a lint rule or structural test →
- an architectural constraint.
Operate the loop as a coupling with a restraint. The coupling: the rule or sensor that prevents a mistake ships in the same change as the fix for that mistake, with the triggering incident cited inline (issue number, error, failing run) — fix and lesson never travel separately. The restraint: rules are added one per observed mistake, never speculatively — a mistake that hasn't happened yet can't pass the litmus test. The citation is also what keeps rules prunable: a rule that names its incident can later be re-judged against whether that failure class still occurs; a rule that names nothing is the first pruning candidate.
Keep quality left: fast computational sensors run alongside the coding session; expensive and inferential ones run post-integration or on a schedule.
Affordances are the structural properties that make a repo governable — what the codebase makes cheap to sense and to constrain: a strongly typed language (type checking is a free sensor), a constraining framework (its conventions abstract away whole error classes), fast build/test tooling (feedback-loop speed), clearly definable module boundaries (expressible as import rules). Start with what the codebase affords; acquiring a missing affordance (adding types, cleaning boundaries) is an investment that precedes the sensor work it enables. Variety reduction is the affordance you choose: committing to a topology narrows what an agent can produce, which is what makes a comprehensive control set achievable.
Non-negotiables — the AX standards
Hold every artifact you audit or generate to these. In improve mode they are the audit checklist; in every mode they are the generation rules. Cite them by tagline when explaining findings (e.g. "this violates map, not manual"), as this document does itself.
- Repo-local or nonexistent. Anything the agent can't reach from inside the repo effectively doesn't exist — wikis, chat threads, and people's heads are invisible. Push knowledge into versioned repo artifacts. An external system counts as reachable only where a fetch path exists (e.g.
ghfor GitHub issues); otherwise mirror a one-line summary with the link as provenance. - Single source of truth. Each fact lives in exactly one place; everything else points at it. Never vendor copies of external docs — audited vendored files have drifted 183 lines from upstream, still instructing agents to run tools removed months earlier.
- Map, not manual. The root instruction file is a ≲150-line map that teaches the agent where to look next, with progressive disclosure into docs/. A giant file crowds out the task, makes everything "important" (so nothing is), rots into stale rules, and can't be mechanically verified.
- Every line passes the litmus test: would removing it cause a mistake the agent wouldn't otherwise make? Instructions are not free: unnecessary rules cost reasoning tokens on every task, listed commands get used vastly more than unlisted ones, and unedited LLM-generated overview files reduce task success while raising cost (the numbers — single-study, but the best we have — are in
references/agents-md.md). Deviations from ecosystem defaults earn lines; defaults never do. - Never trust prose — verify by execution. Every command cited in agent docs is verified by actually running it, with the exact invocation and timing recorded. A doc–reality discrepancy is a first-class finding, not noise.
- Run it, don't read it. Agents demonstrably read check scripts and predict their results instead of executing them. Require evidence-backed verification: execute the check, capture the output to a file rather than through a pipe, and read the exit code unpiped —
cmd | tailreports the pipe's exit status, not the command's, so a failing check piped through a pager or filter records a misleading 0. - Verify the relevant output. A change is proven at the application's observable output — the rendered page, the emitted data or file, the API response — never only at the code that produces it: code-level sensors routinely stay green over wrong output (a layout that renders broken under passing unit tests; a stream with the right schema and wrong numbers). Where the agent can't natively perceive that output — pixels, large result sets, binary formats — supplying the perception tooling that makes it legible (browser automation to see a UI, a query script over emitted data) is part of the AX setup, not an optional extra.
- Enforce invariants mechanically where it pays; prose where judgment is required. State the boundary ("parse data shapes at the boundary"), enforce it with a lint or structural test, and leave the how open. A check is code the repo maintains from then on: a rule configured in a tool the repo already runs is nearly free, a bespoke script is a component with its own bugs and drift. Weigh that upkeep against the mistake it fences — a prose line is the right rung wherever the check would cost more than the mistakes it prevents.
- Error channels are guidance channels. Every custom check emits messages written for agent self-correction: what's wrong, why the rule exists, what to do instead, how to record a justified exception where judgment is legitimate — and, when the rule lives in a doc, where it lives (message patterns in
references/techniques.md). - Docs are verified like code. Freshness is mechanically checked (
scripts/check_docs.py— its module docstring lists every check), and every artifact has an explicit lifecycle: active/completed for plans, accepted/superseded for decision records. - Write-as-you-go. Agent statelessness erases anything not captured: every interview answer and decision lands in its durable artifact immediately — never in a summary to be filed later.
- Every fact traces to a source. Any statement in a generated doc traces to the repo, to output captured this session, or to the user's own words — anything else is marked
(to be confirmed)or omitted. Product color counts: an invented name, count, or backstory is as much a fabrication as an invented database choice, and the user is never quoted or paraphrased saying something they did not say. - Convention over configuration. This skill carries opinionated defaults for the AX layer itself — which artifacts to create, doc layout, sensor wiring, message patterns — and applies them whenever the user hasn't stated otherwise. Interviews and template placeholders gather project facts (intent, scope, technical architecture); they never poll the user on how to design the AX layer ("would you like ADRs?" is a forbidden question). An unprompted user preference or a hard project constraint overrides a default and gets recorded as an ADR. When in doubt, convention wins.
Pick your mode
Find the user's situation and jump in — state your chosen mode and scope before starting (that statement is Phase 0; consult alone skips it):
| Mode | Entry signals | Phases | |
|---|---|---|---|
| Retrofit | Existing codebase; no or thin agent setup ("make this repo agent-ready", "onboard Claude/Codex here") | All phases 0–6, the full playbook | |
| Improve | Agent instruction files already exist ("review our AGENTS.md", "make our agent docs follow AX standards", "why does the agent keep getting X wrong?") | All phases 0–6, scoped to the existing docs: audit against the standards, shrink, verify, restructure. Touch sensors only where docs state rules nothing enforces or where a sensor exists but is ineffective (ignored, drowning in noise, green while checking nothing) — repairing a broken sensor is always in scope; adding coverage beyond that is not | |
| Greenfield | No code yet ("set up a new project for agent-first development") | 0, then 4–6 — phases 1–3 are skipped (no code to audit); interview-first (see Greenfield specifics) | |
| Consult | A question about AX, general or project-specific ("what belongs in AGENTS.md?", "is our CLAUDE.md too long?"), or one small, specific change ("add the release commands to AGENTS.md") | None — no phase spine; answer or apply directly (see Consulting specifics) |
The workflow
One shared phase spine; the mode selects which phases run and at what depth.
Phase 0 — Scope and mode
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/agent-experience/SKILL.md
Popularity
- 7-day trend score
- 5
Not refreshed yet.
Extension points
hookPre/post lifecycle hooks
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/typefox/agent-skills/agent-experience)