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 instructions/etiennebbeaulac/workrail/agents-mdgit clone --depth 1 https://github.com/EtienneBBeaulac/workrailWrote 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/instructions/etiennebbeaulac/workrail/agents-md)<a href="https://agentmods.dev/instructions/etiennebbeaulac/workrail/agents-md"><img src="https://agentmods.dev/badge/instructions/etiennebbeaulac/workrail/agents-md.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.07331 | $0.07331 |
| Opus 5 | $0.03666 | $0.03666 |
| Sonnet 5 | $0.01466 | $0.01466 |
| Haiku 4.5 | $0.00733 | $0.00733 |
Grade D, and why
workrail AGENTS.md scanned grade D with 2 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 4d 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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
**Config note:** The project `.mcp.json` `workrail` entry should shadow the global `~/.claude/settings.json` entry when Claude Code is started from this repo. Verify via `/mcp` on first use -- if two `workrail` entries a Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf ~/.workrail/dev How it starts
The opening of the file, as written. The whole thing — 498 lines — stays where its author put it; the contents beside it link to each section on GitHub.
WorkRail -- Agent Instructions
CRITICAL: Three separate systems -- do not conflate them
WorkRail/WorkTrain is three distinct systems that share a common engine and session store. Understanding this separation is essential before working on any part of this codebase. Confusing them leads to wrong fixes, wrong architecture decisions, and real production problems.
┌─────────────────────────────────────────────────────────────────┐
│ Shared: WorkRail engine (src/v2/durable-core/) + session store │
│ ~/.workrail/data/sessions/ + workflow registry │
└──────────────┬──────────────────┬───────────────────────────────┘
│ │ │
┌───────────▼───────┐ ┌───────▼────────┐ ┌───────▼──────────┐
│ WorkRail MCP │ │ WorkTrain │ │ WorkTrain │
│ Server │ │ Daemon │ │ Console │
│ workrail start │ │ worktrain daemon │ │ worktrain console│
│ (stdio → Claude) │ │ (autonomous │ │ (read-only HTTP │
│ │ │ agent loop) │ │ session viewer) │
└───────────────────┘ └─────────────────┘ └──────────────────┘
WorkRail MCP Server (workrail start)
- A standalone stdio MCP server that Claude Code (and other MCP clients) connect to
- Provides
start_workflow,complete_step,continue_workflow,list_workflowsetc. as MCP tools - Must be bulletproof -- crashes here kill all in-flight Claude Code sessions that depend on it
- Has NOTHING to do with the daemon's internal machinery
- Source:
src/mcp/
WorkTrain Daemon (worktrain daemon)
- An autonomous agent runner that drives workflow sessions without human involvement
- Listens for triggers (webhooks, polling), spawns LLM agent loops, uses
complete_stepin-process - Completely separate process from the MCP server
- Does NOT depend on the MCP server being alive -- it calls the WorkRail engine directly in-process
- Source:
src/daemon/,src/trigger/
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.
- 4d ago First seen · 498 lines · 7,331 tokens per session scan D 60d715891065
workrail AGENTS.md is an instructions file published in the GitHub repository EtienneBBeaulac/workrail (4 stars, last pushed yesterday), licensed MIT. It adds 7,331 tokens to every session, about $0.0367 per session on Opus 5. A static security scan graded it D with 2 findings (reads agent configuration directories, recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other instructions, from other repositories
openrouter-mcp-multimodal AGENTS.md
AGENTS.md instructions for stabgan/openrouter-mcp-multimodal, covering agent instructions, before you ship, releasing (read this before publishing), short version and version files (must all match package.json).
Plonk AGENTS.md
AGENTS.md instructions for ostapondo/Plonk, covering agent rules, layout, adding a module, build & verify and code style.
mcp-dockhand copilot-review.instructions.md
Copilot instructions for strausmann/mcp-dockhand: When reviewing pull requests in this repository.
cyxj-groksearch CLAUDE.md
Claude Code instructions for chenyuxiaojin/cyxj-groksearch, covering claude.md, 常用命令 and 结构与坑.
minecraft-dev-mcp AGENTS.md
Instructions for MCDxAI/minecraft-dev-mcp, covering agent handbook – minecraft dev mcp, project snapshot, what agents should prioritize, architecture wayfinder (src/) and available mcp tools (for llm surfaces).
bray AGENTS.md
AGENTS.md instructions for forgesworn/bray, covering agents.md — nostr-bray, what this is, build & test, architecture and tool groups.