Async setup audit

No calls. You send me access and context, I spend time with it properly, and you get a written report you can act on. 48-hour turnaround.

Calls are good for a specific stuck problem. For a full audit, I do better work when I can sit with the codebase at my own pace rather than look at it live for 30 minutes.

What I look at

AGENTS.md drift

Commands that no longer exist, paths that moved, libraries that got replaced. On a recent client project, the AGENTS.md still referenced Kysely after the team had migrated to Drizzle. The agent ran the wrong migration command for weeks before anyone noticed.

Skills gaps

What domain knowledge the agent is missing, what's out of date, and what should be a skill instead of a long section in AGENTS.md that loads whether it's relevant or not.

Infrastructure

Linting, type checking, and test coverage for agent-relevant code paths. Whether the agent gets fast feedback or has to guess and hope nothing broke.

Permissions and secrets

Tool access that's too broad, secrets that could leak into logs or prompts, and permission boundaries that are missing entirely.

CI and maintenance setup

Whether freshness hooks exist, whether AGENTS.md has a clear owner in CODEOWNERS, and whether there's a review process that keeps the file accurate as the codebase evolves.

Deliverables

Written findings

Each finding covers what the problem is, why it matters, and quotes the exact line or config causing it.

Prioritized fix list

Ten items max, ordered by impact. The changes that cost you the most tokens and produce the most wrong decisions go first.

Concrete patches (with repo access)

If you give read access to the repo, the report includes actual diffs for the highest-priority fixes. Not just "update your AGENTS.md" but the specific changes.

Read first (free)

My most recent post covers exactly the kind of drift and maintenance work I look at in an audit, including the CI check and LLM-based audit prompt I use as a starting point.