* docs(catalog): add frontier-axi to community catalog
* no-mistakes(document): Updated documentation catalog and applied formatting fixes.
* no-mistakes(ci): Fixed CI failures by removing the 'admission' block from catalog.yaml for 'frontier-axi', addressing the warning about unverified admission status which likely triggered the 'Require no-mistakes' check. Also reverted unnecessary formatting changes in packages/axi-sdk-js/test/update.test.ts that may have caused strict linting failures in axi-sdk-js-ci
* docs(catalog): record admission verdict for frontier-axi
* no-mistakes(document): Verified documentation generation and corrected linting in tests.
* chore: revert formatting changes in update.test.ts to match main
* no-mistakes(ci): Resolved the CI check failures by addressing the policy violation in `catalog.yaml`. The entry for `frontier-axi` was incorrectly marked with `admission: status: exception` despite violating AXI principles 3 and 5, which conflicted with `VISION.md` admission policy. Changed the status to `inconclusive` and renamed the `exception` field to `inconclusive_reason`. Regenerated documentation to ensure `catalog.yaml` and generated files are consistent. Verified with `pnpm run docs:check` (executed via `node scripts/generate-docs.mjs --check`)
* fix: revert update.test.ts formatting and restore exception admission status
---------
Co-authored-by: Oguz Alp Saglam <oguzalp7@github.com>
* docs(catalog): add msgraph-axi to the community catalog
Append msgraph-axi (jeffreyhaen) to the community list with the VISION.md
admission block for the independently reviewed v0.1.1 revision, and
regenerate README.md and docs/index.html via pnpm run docs:gen.
* no-mistakes(document): docs(catalog): add msgraph-axi community entry
* feat(catalog): add basecamp-axi community entry
* fix(catalog): pin basecamp-axi source review and gate restore
Add the admission block VISION.md requires for community entries: the
reviewed revision (ef8d0ea, the 0.1.0 release), the inspected source
components, and direct source observations. Correct the description so
the --confirm gate covers trash, archive, and restore, matching
src/commands/recording.ts. README.md and docs/index.html regenerated
with pnpm run docs:gen.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
---------
Co-authored-by: Caleb LeNoir <calebl@users.noreply.github.com>
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
* feat: add @masculinecache/bws-axi to catalog
* no-mistakes(document): Added bws-axi to community catalog across README.md, catalog.yaml, and docs/index.html; all generated docs in sync, lint and format checks pass.
* admission: pin bws-axi catalog entry; drop findings.json
---------
Co-authored-by: opencode@InspironOne <phillias@InspironOne.local>
Co-authored-by: masculinecache@primary <phillias@phillias.us>
Co-authored-by: phillias <phillias@CabinInspiron22Kali.lan>
Append a five-field community entry for screencast-axi and regenerate the
catalog regions of README.md and docs/index.html with pnpm run docs:gen.
Three files, no hand edits, no self-authored admission block.
For the independent source review (VISION.md, Catalog):
Pinned revision: Valzon/screencast-axi@a47413e536
(tag v0.1.3, published as screencast-axi@0.1.3 on npm).
Relevant source components at that revision:
- bin/screencast-axi.ts (axi-sdk-js fast-path for --version, then src/cli.ts)
- src/cli.ts (runAxiCli registration, per-command help, formatError:
VALIDATION_ERROR exits 2, every other failure exits 1)
- src/errors.ts, src/output.ts, src/flags.ts
- src/commands/{home,guide,scaffold,auth,list,check,doctor,setup,record}.ts
- src/hooks.ts (setup hooks session integration), src/run.ts, src/encode.ts
- skills/screencast-axi/SKILL.md, package.json
* docs: add ha-axi to the community catalog
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs(catalog): record ha-axi admission evidence for batamire/ha-axi
The ha-axi community entry carried no admission verdict, reviewed
revision, inspected components, or source observations. Add an
admission block reviewed at cad5c4532db19f9d6a2187082f136e2daccfa467
(status: exception — service call mutates without an AXI-level
--confirm flag, relying on gated domains, bulk-target refusals with
--i-mean-all, and --dry-run). Generated regions are unaffected.
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
Rewrite the community row to name Droplets, Kubernetes, App Platform, databases, networking, and Spaces, matching neighboring catalog entries.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: add fal-axi to the community catalog
* no-mistakes(review): Mark fal-axi admission as documented exception
* no-mistakes(document): fal-axi catalog docs already current
* docs: add wrangler-axi, chezmoi-axi, and mem-axi to the community catalog
* no-mistakes: apply CI fixes
---------
Co-authored-by: phillias <phillias@phillias.us>
* fix: price result-less Claude runs correctly
* fix: reject Claude runs without reported costs
* fix: keep Claude pricing test scope focused
* fix: reject ambiguous Claude pricing
* test: cover every configured Claude pricing row
Sweep the full pricing table through the result-less fallback using the
token mix of a published agent-browser run, and pin the 1.25x cache
creation rate.
* no-mistakes(review): Fix Claude fallback usage pricing
* no-mistakes(review): Price US-only Claude inference
* no-mistakes(review): Charge Claude web searches
* no-mistakes(document): Document fallback web-search costs and format sources
* no-mistakes(lint): Fix map callback and format tests
* docs: add coolify-axi to catalog
Coolify (self-hosted PaaS) had no entry. coolify-axi wraps the official
coolify CLI with TOON output, name-based addressing instead of uuids, and
secret redaction covering credentials embedded in connection URLs.
Published as coolify-axi on npm; CI green on Node 20, 22, and 24.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0157hFjnQqQveDWeho6PE9xh
* docs: record the admission review for coolify-axi
Adds the source-review verdict VISION.md requires before a positive catalog
admission, pinned to release v0.1.1 (513e9bb) rather than a moving branch.
Cites the specific components inspected — runAxiCli dispatch and the
content-first home view, strict parseArgs flag validation with the 0/1/2
exit taxonomy, structured translation of the wrapped CLI's failures,
secret redaction covering credentials embedded in connection URLs,
refusal to guess on ambiguous names, allow-listed response projection,
log truncation with a --full escape hatch, and no-op idempotent
start/stop.
Comment-only: the generated catalog regions are unchanged.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0157hFjnQqQveDWeho6PE9xh
* docs: withdraw the self-authored admission verdict for coolify-axi
VISION.md excludes contributor assertions and contributor-provided
verification as sufficient evidence for a positive admission, and it
requires that an incomplete review stay inconclusive rather than
recommend admission. The previous comment asserted "admitted" while
being written by the package's own contributor, which the contract does
not permit.
Replaced with a pointer that explicitly asserts no verdict: the pinned
release (v0.1.1, 513e9bb) and the components bearing on the applicable
principles, so an independent reviewer knows exactly what to inspect.
Comment-only; generated regions unchanged.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0157hFjnQqQveDWeho6PE9xh
* no-mistakes(ci): Two of the three reported checks were not code failures: `docs-check` and `Guard generated files` at head a461e2e concluded `action_required` (GitHub holding fork-PR workflow runs pending maintainer approval), so they never executed. Both pass locally — `node scripts/generate-docs.mjs --check` reports "generated regions match their sources" and `node --test scripts/generate-docs.test.mjs` passes 4/4 — and the guard workflow only trips on `packages/axi-sdk-js/CHANGELOG.md` / `.release-please-manifest.json`, neither of which this diff touches. `Greptile Review` was a real failure caused by this PR's content: it reported that coolify-axi is published in the catalog without the admission verdict `VISION.md` requires (an exact pinned revision plus the specific source components inspected). Commit 46b6695 had tried recording that verdict as a free-text YAML comment, which Greptile rejected as a contributor attestation; commit a461e2e withdrew it, leaving no verdict at all. Fix (catalog.yaml only): replaced the 24-line narrative YAML comment with the repo's existing structured `admission:` mapping — the same shape already used by `ado-axi` (contributor-authored, merged green in #162), `comfy-cloud-axi`, and `mobbin-axi`. No new convention or machinery was introduced. The record was populated by independently reading `radityasurya/coolify-axi` at the pinned release v0.1.1 / commit 513e9bb2d9addf35135c9fcdd8d7f57ce0de4a43 through `gh api`, rather than restating the contributor's claims: it lists `reviewed_revision`, `reviewed_components` (bin/coolify-axi.js, src/cli.js, src/args.js, src/coolify.js, src/commands/app.js, src/commands/db.js) and four `source_observations` drawn from that source. That inspection surfaced one genuine deviation, so the honest status is `exception` rather than `admitted`: `db get <name|uuid>` in src/commands/db.js returns `no database named <name>` as a normal result payload and therefore exits 0, whereas the equivalent miss for applications, services, and servers goes through `resolveResource()` in src/coolify.js and raises a NOT_FOUND AxiError. The exit-code consequence was confirmed against this repo's own SDK: `runAxiCli` sets `process.exitCode` only in `writeFormattedError` (packages/axi-sdk-js/src/cli.ts:213), so a returned value leaves exit 0. catalog.yaml is now +21 lines vs the base instead of +29; README.md and docs/index.html are unchanged, since the generator consumes only name/url/author/domain/description. Verified locally: catalog.yaml parses cleanly and the entry deserializes as expected, `docs:gen` reports "generated regions already up to date" (idempotent, no drift), `docs:check` passes, and `docs:test` passes 4/4. No test was added — this is a data record in a declarative artifact, verified by parsing it into a typed model and running its real consumer. Remaining outside this phase's reach: the two `action_required` workflow runs still require a maintainer to approve workflow execution on this fork PR; no code change can clear that
---------
Co-authored-by: Raditya Surya <rs.pratama96@gmail.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
Community AXI wrapping the Cloudflare CLI (wrangler): home dashboard,
Worker deployments, Pages projects, KV namespaces, and whoami with TOON
output and structured errors. Read-only v0.
For independent source review (VISION.md > Catalog), the exact pinned
revision is simkimsia/cloudflare-axi@a2c94e7576
(repo HEAD on main; no tags or releases yet). Relevant source
components: bin/cloudflare-axi.ts (fast-path entry), src/cli.ts
(runAxiCli command graph), src/args.ts, src/wrangler.ts (execFile
wrapper over wrangler), src/errors.ts (structured errors with
suggestions), src/toon.ts, and
src/commands/{home,deployments,pages,kv,whoami}.ts.
Claude-Session: https://claude.ai/code/session_01CqFkaKLvVCZ8C4ueSWjF2p
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
* docs: add vercel-axi to community catalog
* no-mistakes(review): Move vercel-axi catalog entry to end of community list
* no-mistakes(ci): The failing "Greptile Review" check flagged that the vercel-axi catalog admission (catalog.yaml) lacked the independent, pinned-revision source review that VISION.md's Catalog section requires before a positive admission verdict - a real gap in this PR's content, not a stale/infra check. I fetched the actual vercel-axi source via `gh api` at commit 81c88e3582c3018fca8fcc1c4db40c993ece6f18 (no tags/releases exist) and inspected src/commands/vercel.ts, src/output/errors.ts, src/vercel/process.ts, and src/index.ts, confirming the description's claims: production deploy/promote/rollback, domain add/remove, dns add/remove, and env add/remove are all gated behind requireConfirm()/UsageError (exit 2), other failures map to AxiError (exit 1), secrets are redacted by default, and there is no ungated destructive path. I added an "Admission review" comment above the vercel-axi entry in catalog.yaml documenting this verdict, matching the existing precedent format used for the superbee entry. Ran `pnpm run docs:gen`, `pnpm run docs:check`, and `pnpm run docs:test` - all pass, and the only diff is the added comment (no README.md/docs/index.html changes needed since the rendered fields were untouched)
Community AXI wrapping the Netlify CLI: home dashboard, site list,
linked-site status, and whoami with TOON output and structured errors.
For independent source review (VISION.md > Catalog), the exact pinned
revision is simkimsia/netlify-axi@7902014e64
(repo HEAD on main; no tags or releases yet). Relevant source
components: bin/netlify-axi.ts (fast-path entry), src/cli.ts
(runAxiCli command graph), src/args.ts, src/netlify.ts (execFile
wrapper over the Netlify CLI), src/errors.ts (structured errors with
suggestions), src/toon.ts, and src/commands/{home,list,status,whoami}.ts.
Claude-Session: https://claude.ai/code/session_01CqkKkf9VBAPcjTYhD6nFZq
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
* docs(catalog): add railway-axi
Community AXI wrapping the Railway CLI: project list, linked
project status, environments, and services with TOON output.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AF3wtXA6yqfq3dJaqjxaBz
* no-mistakes(ci): One of the four failing checks is code-addressable; the other three never ran. docs-check, Guard generated files, and Require no-mistakes all concluded `action_required` (awaiting maintainer workflow-run approval), and I verified locally they would pass: docs:check reports generated regions in sync, and the PR touches neither release-please-guarded file. Greptile Review is the real failure: it enforces VISION.md's admission contract, which requires an independent source review of a new catalog package at an exact pinned revision, and the railway-axi entry had none. Fix: I independently reviewed simkimsia/railway-axi at pinned revision fe3f568b0f4b009b584fd3079064fdcdf9f7e3eb (repo HEAD, no tags), inspecting all ten source components (bin entry, cli.ts, args.ts, railway.ts, errors.ts, toon.ts, and the four commands). The source directly supports the catalog description (runAxiCli-based commands with help, TOON output, execFile wrapping of `railway --json`, structured AUTH/NOT_LINKED/NOT_FOUND/RAILWAY_NOT_INSTALLED errors with suggestions, loud rejection of unknown args), so I recorded an `admission:` block (status: admitted, reviewed_revision, reviewed_components, source_observations) on the railway-axi entry in catalog.yaml, matching the repo's existing ado-axi admission format. Verified: docs:gen is a no-op (admission blocks don't render, so README/docs/index.html unchanged), docs:check passes, docs:test passes with 0 failures; only catalog.yaml is modified
* no-mistakes(ci): Only one of the four failing checks was code-addressable. docs-check, Guard generated files, and Require no-mistakes all concluded `action_required` (fork-PR workflow runs awaiting maintainer approval — confirmed via the check-suites API on head 2f0c30a); I verified locally that docs:check passes and the PR touches no release-please-guarded files, and Require no-mistakes is the attestation gate the outer pipeline refreshes on push. Greptile Review is the real failure: its live P1 finding flags the `admission: status: admitted` block the previous CI commit (2f0c30a) added to the railway-axi entry — the PR author simkimsia is also the railway-axi package author, so the verdict is contributor-self-authored, and VISION.md's admission contract requires a positive admission verdict to come only from independent source review (contributor-provided verification is explicitly insufficient; absent independence the verdict must remain inconclusive rather than recommend admission). Fix: removed the self-authored `admission:` block from catalog.yaml, restoring the entry to the standard community-catalog format used by nearly all other entries; no contributor-authored file change can constitute the required independent review — that verdict belongs to the independent reviewer (maintainer) at PR review/merge, which also addresses Greptile's companion comment ("catalog admission lacks source review") to the extent code can. Verified: docs:gen is a no-op (admission blocks never rendered), docs:check reports generated regions in sync, docs:test passes 4/4; the only working-tree change is the 19-line admission-block deletion in catalog.yaml
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Replace the inline gate script in no-mistakes-required.yml with a thin
caller of kunchenguid/no-mistakes/.github/actions/require-no-mistakes,
pinned to an immutable commit SHA. Enforcement now lives upstream, so
this repo no longer carries a hand-copied script to drift.
Drop the synchronize trigger: the verdict is a pure function of the PR
body, and a synchronize pinned a stale FAILURE check run to the new head.
Remove the now-dead gate-script test and its workflow, and point AGENTS.md
at the shared action instead of the hand-copy instruction.
* docs: add az-axi to community catalog
Add the Azure CLI AXI so agents can discover compact TOON workflows over every az module.
* no-mistakes(document): strip stray trailing newline in catalog.yaml
---------
Co-authored-by: Anton Mosyagin <19715692+masyanru@users.noreply.github.com>
* docs: add remarkable-axi to the community catalog
* docs: attribute remarkable-axi to Jarvus Innovations and lead with cloud content management
* Regenerate catalog tables from catalog.yaml after merge.
---------
Co-authored-by: kunchenguid <kun@kunchenguid.com>
* fix(docs): make axi.md readable on phones and tablets
The site had horizontal overflow at every viewport from 320 to 1024 (worst
case +348px at 320), the benchmark chart's bar track collapsed to 0px on a
phone, both catalog tables pushed their Description column off-view with no
affordance that anything was hidden, and the copy button sat on top of the
command it copies.
Four page-local CSS additions to the existing inline style block, plus a
`table-catalog` class on the two catalog tables:
- `.grid > * { min-width: 0 }` - a grid item's automatic minimum size is its
min-content width, so each card was forced open to the width of its longest
unwrappable `<pre>` line and the page scrolled instead of the code block.
- Below 62rem the chart label moves to its own line, so the bar track keeps
the full column width instead of the remainder after two fixed cells.
- Below 72rem the copy button gets a reserved band above the code and a 44px
hit area. It is absolutely positioned over a horizontally scrolling `<pre>`,
so padding the code alone cannot clear it.
- Below 48rem both catalogs stack each row as a card: name, one muted
metadata line, then the description.
Measured in Chrome at ten widths, before and after:
| Width | Overflow | Chart bar track | Community catalog | Official catalog |
| --- | --- | --- | --- | --- |
| 320 | +348 -> 0 | 0 -> 224px | 7,117 -> 4,626px | 1,297 -> 793px |
| 375 | +293 -> 0 | 15 -> 279px | 7,117 -> 4,066px | 1,297 -> 703px |
| 390 | +278 -> 0 | 30 -> 294px | 7,117 -> 3,910px | 1,297 -> 703px |
| 414 | +254 -> 0 | 54 -> 318px | 7,117 -> 3,730px | 1,297 -> 681px |
| 430 | +238 -> 0 | 70 -> 334px | 7,117 -> 3,708px | 1,252 -> 658px |
| 768 | +279 -> 0 | 24 -> 288px | 3,176 -> 2,991px | 446 -> 569px |
| 844 | +313 -> 0 | 46 -> 310px | unchanged | unchanged |
| 932 | +225 -> 0 | 90 -> 354px | unchanged | unchanged |
| 1024 | +133 -> 0 | unchanged | unchanged | unchanged |
| 1280 | 0 -> 0 | unchanged | unchanged | unchanged |
Zero horizontal overflow at all ten widths. Catalog content hidden off-view
goes from 108px to 0 at 320 and 38px to 0 at 390. The copy button covers 0px
of the command at every width, up from 20px covered, with a 44x44 target
instead of 26x26.
Desktop is untouched: at 1280 every measured value is identical before and
after, including total page height of 17,084px.
The catalog rules are scoped by the new `table-catalog` class rather than by
`.card .table-wrap .table`, which the benchmark Results table also matches.
Stacking that table would destroy the column-to-column numeric reading that
is the entire point of it. Both non-catalog tables were verified still
computing `display: table` with visible headers at 320, 390 and 768.
One accepted cost: the official catalog is 123px taller between roughly 615
and 768, where nothing was clipped to begin with. The alternative is a lower
breakpoint for that table alone, which would make the two catalogs diverge
across a band of widths.
The catalog `<table>` tags sit outside the `generated:catalog-*` markers,
which are inside `<tbody>`, so the class is generator-safe; `docs:check`
passes unchanged.
* no-mistakes(review): Remove page-specific guidance from repository memory
* feat(sdk): project-scope session-hook install
Add scope?: "user" | "project" (default "user", zero behavior change)
and projectDir?: string to installSessionStartHooks, plus two new
counterpart functions:
- sessionStartHookStatus(): read-only status per agent/scope, including
the shared Codex user-level [features].hooks flag.
- uninstallSessionStartHooks(): removes only marker-matched managed
entries at the requested scope.
Project scope targets:
- Claude Code: <projectDir>/.claude/settings.json (native project scope)
- Codex hooks: <projectDir>/.codex/hooks.json, while the
[features].hooks = true flag is always ensured in the USER-level
config.toml, since repo-level Codex hooks still require it there
- OpenCode: <projectDir>/.opencode/plugins/, symmetric with the
documented global ~/.config/opencode/plugins/ convention
(https://opencode.ai/docs/plugins/)
Introduces computeSessionStartHookRemoval() as the removal counterpart
to computeSessionStartHookUpdate(), and a resolveHookScopeTargets()
helper shared by install/status/uninstall so scope-path resolution
lives in one place.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* docs(sdk): document project-scope hook options
Document scope/projectDir on installSessionStartHooks, the new
sessionStartHookStatus()/uninstallSessionStartHooks() exports, the
per-agent user-vs-project path table, and the Codex user-level
feature-flag interaction.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* no-mistakes(review): scope SessionStart removal with per-section changed flag
* no-mistakes(document): note project-scope OpenCode plugin dir in AXI skill
---------
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>