Archon is a workflow engine for AI coding agents that turns development processes into YAML-defined sequences with phases, validation gates, and artifacts. Developers use it to run repeatable processes such as planning, implementation, testing, code review, and pull-request creation across projects. The catalogue entries provide commands, agents, skills, hooks, instructions, and settings for working with Archon.
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/coleam00/archon/assessgit clone --depth 1 https://github.com/coleam00/ArchonWrote 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/commands/coleam00/archon/assess)<a href="https://agentmods.dev/commands/coleam00/archon/assess"><img src="https://agentmods.dev/badge/commands/coleam00/archon/assess.svg" alt="Measured on agentmods" 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 | $0.00000 | $0.01306 |
| Opus 5 | $0.00000 | $0.00653 |
| Sonnet 5 | $0.00000 | $0.00261 |
| Haiku 4.5 | $0.00000 | $0.00131 |
Grade A, and why
assess 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.
How it starts
The opening of the file, as written. The whole thing — 52 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Assess a dependency update
Ground one dependency-update request against this repository as it exists right now, and decide whether an update is actually owed. You produce an assessment and a verdict; you change nothing. No one watches the run; the assessment file and your declared fields are the only things that persist.
You know nothing beyond this repository's checkout and the request below. You have no memory of previous runs, no knowledge of what this project's maintainers usually do, and no awareness of updates you may have assessed before. Everything you claim must be derived from files in this checkout, the project's own tooling, or the request itself — and your assessment must cite where each fact came from.
The request
$INPUTS.target
If the block above is empty, the request is the message that started this run:
$ARGUMENTS
It may name a dependency, a version, a security advisory, or a general ask ("update sharp", "address the undici advisory", "get X off the vulnerable range"). A bare issue or PR reference in the request resolves against THIS repository's tracker unless the request says otherwise — read it there first; upstream projects' trackers are secondary sources for upstream facts only.
How to assess
- Find the dependency in this repository. Discover the package manager and manifest layout from the repository itself — lockfiles, manifest files, workspace configuration. Never assume a manager the repo does not show. Record: every manifest that declares the target, the declared constraint, and the exact locked version currently installed.
- Establish what "current" would mean. Use the project's own tooling to learn the latest applicable version (registry info commands, the lockfile's metadata, a vendored changelog). If the environment cannot tell you, say so — name the exact command that failed or the information that is unavailable. Never guess a version number.
- Map the blast radius. Find where the dependency is imported or configured in this repo. Read the upstream changelog or release notes between the locked and target versions if they are reachable (in the installed package, via the manager's tooling). List the breaking changes that touch code paths this repo actually uses — not every change upstream shipped.
- Check the constraint reality. Does the declared range already admit the target version, or does the manifest need editing? Do peer/engine requirements or sibling dependencies pin it? A constraint that forbids the target is a finding, not a dead end — the assessment says what must change and what that risks.
- Check for duplicate copies. A transitive, optional, or peer occurrence of the target elsewhere in the tree can keep the old version installed even after the direct bump — package managers do not always dedupe them. When the request's goal (an advisory, a version floor) requires those copies to move too, the update order prescribes the exact mechanism this manager supports. Prefer the manager's declared resolution mechanism — an override or resolution entry — over emergent tricks like adding a root dependency nothing imports: a declared constraint survives resolver changes and fails loudly, while an emergent dedupe can silently regress. Verify the mechanism against the project's pinned manager version —
engines, CI pins, the lockfile format — because a form the pinned version ignores with a warning is not a mechanism; when its support cannot be proven from this checkout alone, also name one authorized fallback with its blast radius, so the implementer is never stranded between a falsified primary and an unauthorized improvisation. Name every consumer the mechanism moves and whether each stays inside its declared range. A consumer forced past a major boundary is a risk the assessment states loudly and the implementer validates by running that consumer's own tests — the reviewer judges it in the pull request; it is never a reason to stop. - Decide.
updatewhen the request's goal is real and any executable path to it exists — including a path that requires code migration or forcing a transitive pin. When several paths exist, choose the best one on the evidence and record the alternative you rejected and why: the operator judges your choice where it is concrete — in the pull request, with the diff and CI in front of them — so doing the work and presenting it always beats stopping to ask.no_actiononly when there is genuinely nothing to do: the repo is already current, the request does not apply here (the dependency is absent, the advisory concerns a version this repo never ships), or a stop rule fires. State the reason plainly.
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 Changed · -3 lines e085aaceef78
- 5d ago First seen · 55 lines · 0 tokens per session scan A 7da6a2e27b91
assess is a command published in the GitHub repository coleam00/Archon (23,366 stars, last pushed 2d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,306 tokens. 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-30.
Other commands, from other repositories
fix-issues
Diagnose, reproduce, then fix reproducible open GitHub issues in parallel: one clean worktree/issue; symlink build artifacts to avoid rebuilds.
review-prs
Parallel PR triage: decide merge-worthiness, prepare rebased worktrees, fix blockers, return them for human merge.
triage
Classify/label newly opened GitHub issues missing labels.
release
Release all packages at specified version.
cleanup
Autonomous cleanup-loop iteration: discover ONE target → complete execution → verify → report. Runs stateless: derive from current tree; assume prior runs left it consistent.
hello
Say hello.