dist-check

dist-check is a skill for Claude Code, Codex from Langerrr/distributed-architect. It costs 106 tokens per session (849 once invoked), scanned A, original, MIT.

A two-stage review for distributed-system code, where separate services or processes communicate across boundaries.

In plain words
What is it for?
Use it before committing changes that cross service or process boundaries, especially when the project has a topology description or modified files involving shared state and communication.
Why use it?
It helps find problems caused by mismatched data or state between components, including concurrency issues when multiple operations overlap.

Skill for Claude CodeCodex

Installs and runs on its own, but its text points at files inside its plugin — anything it tells you to read at a ${CLAUDE_PLUGIN_ROOT} path is only there once the plugin is installed. Installing the plugin gets both.

Part of the distributed-architect plugin — 3 skills shipped together

Install

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.

agentmods
npx agentmods add skills/langerrr/distributed-architect/dist-check
Any agent
npx skills add Langerrr/distributed-architect --skill dist-check
Clone the repo
git clone --depth 1 https://github.com/Langerrr/distributed-architect

Made for: Claude Code, Codex.

Or install distributed-architect, the plugin that ships this one along with the rest of its 3 skills.

Wrote 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.

agentmods badge for dist-check

README.md
[![agentmods](https://agentmods.dev/badge/skills/langerrr/distributed-architect/dist-check.svg)](https://agentmods.dev/skills/langerrr/distributed-architect/dist-check)
Your own site
<a href="https://agentmods.dev/skills/langerrr/distributed-architect/dist-check"><img src="https://agentmods.dev/badge/skills/langerrr/distributed-architect/dist-check.svg" alt="Measured on agentmods" height="20"></a>
Per session 106 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 849 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00106 $0.00849
Opus 5 $0.00053 $0.00425
Sonnet 5 $0.00021 $0.00170
Haiku 4.5 $0.00011 $0.00085

Measured yesterday against content hash f925e2295931, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

dist-check 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 yesterday.

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.

skills/dist-check/SKILL.md · 90 lines

How it starts

The opening of the file, as written. The whole thing — 90 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/dist-check — Coding-Time Boundary Analysis

Analyze code changes for distributed system correctness issues. Runs a two-pass analysis: boundary correctness, then concurrency correctness (if topology indicates).

Arguments

  • $ARGUMENTS may contain: a file/dir path, --staged, or --diff <range>

Step 1: Gather Changes

Based on $ARGUMENTS:

  • If a file/dir path is given, read those files
  • If --staged, run git diff --cached
  • If --diff <range>, run git diff <range>
  • If no arguments, run git diff for uncommitted changes
  • If no diff at all, ask the user what change to analyze

Identify which components are being modified.

Step 2: Load Project Topology

Look for a topology file in the project (.dist-architect/topology.yaml, or check project CLAUDE.md for location). If none exists, note this and proceed with what you can infer from the code.

Step 3: Classify the Change

For each modified component, determine which boundary signal applies:

Signal Condition
state-mutation Changing state/status that another process reads
data-lifecycle Data crossing a serialization, network, or storage boundary
failure-mode Error handling for cross-component operations
interaction New message type, API call, or event between components

If none apply (purely internal, single-component change), report "No boundary crossing detected" and stop.

Step 4: Pass 1 — Boundary Correctness

Read the relevant reasoning module from ${CLAUDE_PLUGIN_ROOT}/modules/ and walk through its checklist. Answer each question concretely for the specific change. Do not skip questions.

Document:

  • Each checklist question and your answer
  • Any concerns found
  • Any assumptions the change makes about other components

Step 5: Pass 2 — Concurrency Correctness

Check the topology: is the component being modified on the "1" side of a 1:N relationship?

  • If yes: Read ${CLAUDE_PLUGIN_ROOT}/modules/concurrency.md and walk through its checklist.
  • If no: Skip this pass. Note: "No concurrency concern at this boundary (1:1 or N-side)."

Read the full file on GitHub · 90 lines

Changes

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.

  1. yesterday Changed · -4 lines · +82 tokens per session f925e2295931
  2. 5d ago First seen · 94 lines · 24 tokens per session scan A dd4a07c0ae79

Subscribe to this mod's changes

dist-check is a skill published in the GitHub repository Langerrr/distributed-architect (1 stars, last pushed 2d ago), licensed MIT. It adds 106 tokens to every session and 849 once invoked, about $0.0005 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.

Related

Other skills, from other repositories

feature-execution

This skill should be used when the user asks to "orchestrate the feature", "run the phases", "resume implementation", "continue the plan", "the phase agent died", "the agent stopped on its usage limit", "accept this phase", "can these phases run in parallel", "is this phase done", "does this shortfall matter", or…

Langerrr/zforge · 219 tokens

acceptance-agent

Use this agent when a zforge phase has reported DONE and its evidence must be independently verified before the planner accepts it. Typical triggers include $zforge:feature-orchestrate accepting a REPORTED phase during a long chain, and any run where the planner's context is the constrained resource. It reconciles the…

Langerrr/zforge · 134 tokens

phase-agent

Use this agent when a phase of a zforge feature plan is ready to implement and its work should run in its own context. Typical triggers include $zforge:feature-orchestrate spawning a READY phase, resuming a phase whose agent was interrupted mid-run, and re-running a phase after a decision was rejected in review. See…

Langerrr/zforge · 101 tokens

template-conventions

This skill should be used when the user asks to "plan a feature", "what goes in the phase file", "which file owns this", "what evidence class is this", "how do I verify a claim no test can settle", "where should this doc go", or when writing, reading or updating any zforge feature document under docs/{feature}/.…

Langerrr/zforge · 107 tokens

async-reasoning

This skill should be used when implementing or designing code with async data flows — "state management design", "async data flow", "stale data", "cache invalidation", "optimistic update", "init order", "race condition", "write then read", "data not updating", "cache not refreshing", "UI shows old data after save"…

Langerrr/zforge · 121 tokens

retro

This skill should be used when the user asks to "retro", "evaluate zforge", "review plugin performance", "score this session", or wants to assess how well zforge's workflow served a feature. Evaluates zforge's workflow scaffolding, not the project's technical decisions or LLM reasoning quality.

Langerrr/zforge · 64 tokens