Charles Wiltgen 21990414b2 refactor(scripts): generate audit-area surfaces from one registry
scripts/audit-areas.json is now the single source for /axiom:audit
areas. Three surfaces are generated from it into marker-delimited
regions, leaving the surrounding hand-authored prose untouched:

  commands/audit.md   argument: list   (hash markers, inside frontmatter)
  commands/audit.md   body table       (model-facing "Detects" text)
  docs/commands/utility/audit.md       (human-facing prose)

The registry keeps `detects` and `docsDetects` as separate fields
rather than reconciling them. They differ for 22 of 32 areas because
one is routing text the model reads and the other is prose a person
reads — the docs-are-human / source-is-for-LLM split, not drift.

The sidebar is deliberately NOT generated: each of its groups
interleaves audit entries with unrelated commands (Build holds
audit-build beside fix-build, optimize-build, resolve-deps), so the
audit rows are not a spliceable region and generating the groups would
delete the others. It stays hand-maintained and is now checked directly
against the registry, which is what the old docs-vs-sidebar grouped
parity was approximating.

Retires validateParity and validateGroupedParity: with three surfaces
generated from one source they cannot disagree by construction, so the
set-parity and grouped-parity comparisons are replaced by one staleness
check — the same generate-and-diff pattern already used for the inlined
auditors (12d-bis) and the Codex variant (12f). validateRegistry gates
the source itself (duplicate areas, unknown groups, empty fields, a `|`
that would break a table cell, a docPath the sidebar parser could not
read the area back out of).

Also collapses the three arbitrary orderings that had accumulated
across the surfaces into one: group order, then alphabetical within
group. Row order in a for-LLM table carries no meaning, and docs and
sidebar already used exactly this order.

Verified no data was lost: every body-table row and every docs
description is byte-identical to the previous committed content
compared order-independently; only ordering changed. Mutation-tested by
adding an area to the registry alone — all three generated regions plus
the sidebar check reported it. 126 unit tests pass.
2026-07-25 11:09:25 -07:00
2025-11-30 10:02:02 -08:00

Axiom

Battle-tested skills, agents, and tools for modern Apple OS development — Swift 6, SwiftUI, Liquid Glass, Apple Intelligence, and more. Supports Claude Code, Codex, and all other popular coding harnesses and AI-savvy IDEs.

What is Axiom?

Axiom gives AI coding assistants deep Apple OS development expertise — the kind that prevents data loss from bad migrations, catches memory leaks before users complain, and stops you from spending 30 minutes debugging a zombie xcodebuild process.

  • 269 skills covering UI, data, concurrency, performance, networking, accessibility, and more
  • 42 agents that autonomously scan for issues (memory leaks, concurrency violations, build problems)
  • 17 commands for quick audits and diagnostics
  • xclog — a built-in console capture tool that gives AI assistants access to simulator and device logs
  • xcsym — a built-in crash symbolication tool for .ips, MetricKit, and Apple's legacy .crash text crashes, with automatic dSYM discovery and pattern categorization
  • xcui — a built-in tool to drive and validate the simulator UI and accessibility (tap by accessibility ID, dump the accessibility tree, check VoiceOver and Dynamic Type)
  • xcprof — a built-in tool to record and analyze CPU/performance traces (xctrace) without opening Instruments

Every discipline skill is TDD-tested against real developer pressure scenarios. Learn more about quality.

OS 27 in progress. Axiom is on a 27.x beta that tracks Apple's OS 27 developer betas — OS-27 coverage lands continuously through the beta season. Guidance for OS 26 and earlier stays stable.

Installation

Claude Code (native plugin)

/plugin marketplace add CharlesWiltgen/Axiom

Then search for "axiom" in the /plugin menu and install.

MCP (VS Code, Cursor, Gemini CLI, and more)

See the MCP setup guide.

Pi (terminal coding agent)

pi install git:github.com/CharlesWiltgen/Axiom

One command installs the skills plus the /axiom-* commands and hooks. See the Pi setup guide.

Xcode (Claude Agent / Codex)

See the Xcode integration guide.

Getting Started

Skills activate automatically based on your questions. Just ask:

"I'm getting BUILD FAILED in Xcode"
"How do I fix Swift 6 concurrency errors?"
"My app has memory leaks"
"I need to add a database column safely"
"Show me what my app is logging"
"Symbolicate this crash file"

You can also use commands directly:

/axiom:console          # Capture simulator console output
/axiom:analyze-crash    # Parse and triage .ips, MetricKit, or .crash reports
/axiom:fix-build        # Diagnose build failures
/axiom:audit memory     # Scan for memory leaks
/axiom:audit concurrency # Check for data races
/axiom:health-check     # Run all relevant auditors

Documentation

Full documentation, skill catalog, and guides at charleswiltgen.github.io/Axiom.

Community

S
Description
Use when implementing ANY computer vision feature — image analysis, pose detection, person segmentation, subject lifting, text recognition, barcode scanning.
Readme 312 MiB
Languages
Go 35%
TypeScript 33.9%
Python 17.5%
JavaScript 12.4%
Shell 0.9%
Other 0.3%