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 agentmods add commands/ohswedd/praxis/configgit clone --depth 1 https://github.com/Ohswedd/praxisWhat 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 | $0.00026 | $0.00698 |
| Opus 5 | $0.00013 | $0.00349 |
| Sonnet 5 | $0.00005 | $0.00140 |
| Haiku 4.5 | $0.00003 | $0.00070 |
Grade A, and why
config 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 2d 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.
What it actually says
Run the settings command and report the result:
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/config.py" ${ARGUMENTS:-status}
Each setting resolves environment variable, then repo toggle file, then
.praxis.toml, then (for mode) detection, and the output names the source, so a
value that surprises the user can always be traced. Read the output rather than
assuming: what it prints is what is in force for the rest of the session.
- mode is the one setting that is not on/off.
ownermeans praxis maintains this project'sCLAUDE.md,.claude/settings.json,/docs,CHANGELOG.mdand ADRs as committed files.contributormeans the repository is not ours: the brief isCLAUDE.local.md, settings are.claude/settings.local.json, praxis config is.claude/.praxis/praxis.toml, and/docs,CHANGELOG.md,docs/adr/anddocs/design/are updated only if the repo already has them, otherwise kept under.claude/.praxis/knowledge/. All of it is git-excluded, and nothing praxis authors goes near a commit.auto(the default) infers it from the repo's git history. Switching also adds or removes the praxis block in$GIT_COMMON_DIR/info/exclude. - auto-pilot ON: ask no design or approach questions. Do your own QA, resolve
each decision with the
best-practicesskill, and record every non-trivial one under "Decisions taken autonomously" in the report. Stop only for a hard external blocker such as a missing credential. - auto-merge ON: after a green audit and passing checks, self-review the diff
and merge the PR. OFF means open the PR and leave the merge to a human. It never
applies in
contributormode: merging is the maintainers' call. - bootstrap ON (the default): a repo praxis has not set up is bootstrapped
first, in the same turn, before the work starts. OFF leaves the repo without a
brief or guardrails until the user runs
/praxis:bootstrapthemselves. - gate OFF: the Stop hook no longer holds the turn open. Say so plainly when you hand work back, because nothing else will.
A toggle file is a local, uncommitted choice. For a decision the whole team should
share, put it in .praxis.toml and commit it; in contributor mode put it in
.claude/.praxis/praxis.toml, which layers on top and stays local. Safety guards
and the secret and destructive-command blocks stay active whatever these are set
to, as does the refusal to stage a praxis local artifact.
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.
- 2d ago First seen · 45 lines · 26 tokens per session scan A 8aec6263c9c2
config is a command published in the GitHub repository Ohswedd/praxis (1 stars, last pushed 1mo ago), licensed MIT. It adds 26 tokens to every session and 698 once invoked, about $0.0001 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 commands, from other repositories
database-setup
Use when a project needs to store data and has no database yet. Setting up Supabase, creating tables, writing queries, and connecting them to the frontend. Written for designers.
wp-tailwindify
Convert an HTML/CSS demo to Tailwind-native HTML — preserves section delimiters, maps colors to @theme variables.
wp-polylang
Translate an existing WordPress site into a second language using Polylang.
wp-cinematic-init
Scaffold a cinematic-scroll WordPress theme from an existing demo or from scratch. Installs cinematic-scroll-kit as a recommended skill, picks the cinematic starter, then defers to /wp-init with --mode=cinematic for the rest of the bootstrap (project info, ACF flavor, server, vhost).
apply-design-md
Consume the project's design contract — a .design file or DESIGN.md — and thread its tokens through UI code (CSS, Tailwind, or design-system components).
motion-audit
Audit animation timing, easing, springs, and transitions — decide first whether motion should exist, then apply the motion cluster.