Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add aiatelie/ai-atelie --skill cuj-guardiangit clone --depth 1 https://github.com/aiatelie/ai-atelieWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/aiatelie/ai-atelie/cuj-guardian)<a href="https://agentmods.dev/skills/aiatelie/ai-atelie/cuj-guardian"><img src="https://agentmods.dev/badge/skills/aiatelie/ai-atelie/cuj-guardian/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/aiatelie/ai-atelie/cuj-guardian"><img src="https://agentmods.dev/badge/skills/aiatelie/ai-atelie/cuj-guardian.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00137 | $0.03197 |
| Opus 5 | $0.00068 | $0.01598 |
| Sonnet 5 | $0.00027 | $0.00639 |
| Haiku 4.5 | $0.00014 | $0.00320 |
Grade A, and why
cuj-guardian scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 183 lines — stays where its author put it; the contents beside it link to each section on GitHub.
cuj-guardian
A contributor workflow for AI Atelie. The CUJ ("Critical User Journey") is now a suite of focused journeys, not one big spec — the same contract, split into pieces so a slow agent doesn't kill the cleanup phase or block evidence on the PR.
This skill is dev-time only. It does not load into adapter sessions spawned by the editor.
What the suite proves
Four journeys under web/tests/e2e/journeys/. Together they prove the product still does its core job:
home-loads.spec.ts— home renders, the create-project form is visible + interactive.create-project.spec.ts— name + Create lands on/editorwith a validp_*id; project dir exists on disk; iframe canvas mounts.agent-edits-canvas.spec.ts— the load-bearing one. A real Claude Code agent (or whichever adapter is selected) takes a chat prompt, writes to disk, and the iframe paints the requested change.cleanup-snapshot.spec.ts— leak guard: any project namedJourney · *is force-deleted; suite ends with the project list it started with.
If any of these fails, the product is broken in a way users will notice. That's the contract; everything else (smoke.spec.ts, type-check, build) is cheap-pre-flight stuff.
Cleanup safety guarantee
The CUJ creates exactly one test project (under a fresh p_* id assigned by the New Project flow), works against it, and deletes it via DELETE /api/projects/<id> in a finally{} block — even on failure. The test enforces the safety property explicitly:
- Snapshot before: lists
web/projects/at the start, sorted. - Delta assertion at step 4: the captured
projectIdmust NOT appear in the pre-test snapshot. If it does, we somehow latched onto an existing project's id (serious bug); fail loud. - Cleanup at step 10: deletes by EXACT id, single-target API call, no wildcards.
- Snapshot after at step 11: post-test
web/projects/list MUST equal the pre-test list. If anything was leaked OR anything else disappeared, the test fails.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 11d ago First seen · 183 lines · 137 tokens per session scan A bd49420abf9f
cuj-guardian is a skill published in the GitHub repository aiatelie/ai-atelie (8 stars, last pushed 3mo ago), licensed MIT. It adds 137 tokens to every session and 3,197 once invoked, about $0.0007 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
pptx-html-fidelity-audit
Audit a python-pptx export against its source HTML deck, identify layout/content drift (footer overflow, cropped content, missing italic/em, lost styling, off-rhythm spacing), and re-export with strict footer-rail + cursor-flow layout discipline. Use this skill whenever the user has a .pptx that was generated from an…
build-test
Run the project's build / typecheck / lint / test commands and emit the build.passing + tests.passing signals devloop convergence reads.
nexu-e2e-test
Use when verifying OpenClaw gateway fixes end-to-end, testing skill loading after restart, or running integration tests against the local Nexu+OpenClaw stack. Triggers on "e2e test", "verify fix", "test gateway", "test skills loading".
mandu-testing
Testing patterns for Mandu applications. Use when writing unit tests, integration tests, or E2E tests. Triggers on test, spec, Bun test, Playwright, or testing tasks.
smoke-test
Post-restart smoke tests + auto-fix for the memex server environment. Walks a fixed check list over the real CLI and MCP surface (status, doctor, search, page round-trip), auto-fixes known issues, and reports what's left.
fable-run
Launch, manage, and verify live applications across CLI binaries, web servers, TUIs, Electron apps, and background daemons with readiness probes and clean teardown. Use when starting development servers, executing live smoke tests, testing interactive CLI binaries, or driving runtime smoke verification — even if the…