Borrowing it
Nothing to install: this file belongs to core0-io/nio. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/core0-io/nio/main/CLAUDE.mdgit clone --depth 1 https://github.com/core0-io/nioWrote 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/core0-io/nio/claude-md)<a href="https://agentmods.dev/instructions/core0-io/nio/claude-md"><img src="https://agentmods.dev/badge/instructions/core0-io/nio/claude-md/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/instructions/core0-io/nio/claude-md"><img src="https://agentmods.dev/badge/instructions/core0-io/nio/claude-md.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.03473 | $0.03473 |
| Opus 5.5 | $0.01389 | $0.01389 |
| Sonnet 5.5 | $0.00695 | $0.00695 |
| Haiku 4.5 | $0.00347 | $0.00347 |
Grade B, and why
nio CLAUDE.md scanned grade B with 1 finding 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 1mo 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.
- `plugins/codex/` — Codex CLI plugin. Repo layout is flat (parallels cc/openclaw/hermes): manifest at `.codex-plugin/plugin.json` (with `interface{displayName,category,…}`); hooks at `hooks/hooks.json`; skills under `sk How it starts
The opening of the file, as written. The whole thing — 111 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Nio
Execution assurance and observability for autonomous AI agents. Provides code scanning, runtime guard, and OTEL collector.
Skill
This project provides a unified Claude Code skill: /nio
/nio scan <path> — Scan code for execution risks (15 static + 7 behavioural rules)
/nio action <description> — Evaluate runtime action safety (allow/deny/confirm)
/nio report — Agent execution audit log + diagnostics summary
/nio doctor — Validate config + dry-run OAuth/LLM connectivity
/nio config <level> — Set protection level (strict/balanced/permissive)
/nio external-score — Snapshot current scores from external scoring endpoints
Alongside the unified /nio, each capability is also exposed as a focused single-purpose skill for sharper passive (natural-language) discovery on the LLM-driven platforms (Claude Code, Codex, Pi, and opencode — OpenClaw/Hermes keep the unified /nio): nio-scan, nio-action, nio-report, nio-config, nio-doctor, nio-external-score. Source of truth: plugins/shared/skills/<name>/SKILL.md (synced by scripts/sync-shared.js). These are pure LLM-driven skills (no command-dispatch/command-tool); script-running ones (action/config/doctor/external-score) sibling-reference the kept nio skill's bundled scripts via ../nio/scripts/<cli>.js rather than duplicating the bundle.
Project Structure
plugins/shared/— Shared config + skill source of truth. All skill sources live underskills/<name>/: the unified umbrellaskills/nio/(SKILL.md+README.md) plus the focused per-capability skills (skills/nio-scan/,skills/nio-action/, …). Rule docs are owned by their capability —SCAN-RULES.mdinskills/nio-scan/,ACTION-POLICIES.mdinskills/nio-action/;sync-shared.jsborrows a copy of each into the umbrella's dest dir (whoseSKILL.mdlinks them)plugins/claude-code/— Claude Code plugin (hooks,skills/nio/synced from shared, setup)plugins/codex/— Codex CLI plugin. Repo layout is flat (parallels cc/openclaw/hermes): manifest at.codex-plugin/plugin.json(withinterface{displayName,category,…}); hooks athooks/hooks.json; skills underskills/nio/;setup.shat root. No marketplace.json in the repo — codex 0.128 schema requiressource.pathto be a non-empty./<subdir>and our flat layout has no such subdir, sosetup.shgenerates a valid marketplace.json at install time instead. Subscribes to SessionStart / UserPromptSubmit / PreToolUse / PostToolUse / Stop; PermissionRequest is deferred to phase 2. Skill content synced fromplugins/shared/skills/nio/viascripts/sync-shared.js; scripts mirrored fromplugins/claude-code/skills/nio/scripts/byscripts/build.js. Codex CLI does not support custom slash commands —/niois exposed only via$nioskill trigger or natural-language match. Adapter atsrc/adapters/codex.tswithname='codex'and defaultnative_tool_mapping = { Bash: exec_command }(Codex's only first-party tool; writes/reads/fetches go through shell).setup.shperforms a full nuke + cp install on every invocation (nocodex plugin installCLI exists in 0.128): wipes and rewrites$CODEX_HOME/plugins/cache/nio/nio/<version>/from$SCRIPT_DIR; wipes and rebuilds a Codex-valid marketplace catalog under$NIO_HOME/codex-marketplace/; writes ahooks.jsonwith absolute paths into the cache dir (Codex runs hook commands withcwd=session-cwd, so plugin-relative paths can't resolve); edits~/.codex/config.tomlto register the marketplace, enable the plugin, and set both[features] codex_hooks = true(stable) and[features] plugin_hooks = true(under-development; required for plugin-bundled hooks to fire). Samesetup.shworks whether invoked from the repo or an extracted release zip. Hook scripts (guard-hook.js/collector-hook.js/scanner-hook.js) accept--platform codexto thread the platform tag through Phase 0–6 and the audit log; default platform staysclaude-codefor cc.plugins/pi/— Pi extension. The release zip is itself a valid pi package (package.jsonwith thepimanifest key and thepi-packagekeyword), sosetup.shpreferspi install "$SCRIPT_DIR"and falls back to copying the bundle into~/.pi/agent/extensions/nio/plus an explicit path entry insettings.json. Subscribestool_call(blocking) /tool_result/input/session_start/session_shutdown/agent_end/message_end/user_bash./niois a real slash command viapi.registerCommand, bypassing the LLM. Pi is the only platform with an interactive channel, so aconfirmverdict opens a realctx.ui.confirmdialog with a timeout (pi -pprint mode hasctx.hasUI === falseand folds to the two-state behaviour). Pi has no subagent concept, so no Task spans are emitted. Pi core has no MCP either, but the third-partypi-mcp-adapterpackage adds it and is the de-facto default for Pi users, soparseMcpToolNamecarries apibranch (Task 11b): the proxy toolmcpresolves its target from thetool/serverparameters, anddirectToolsmode is matched as<server>_<tool>/mcp__<server>_<tool>against servers read from$PI_CODING_AGENT_DIR/mcp.json(else~/.pi/agent/mcp.json).toolPrefix: "none"is undetectable by design.setup.shexportsPI_CODING_AGENT_DIR="$PI_HOME"before shelling out so--pi-homeactually binds thepiCLI. Adapter atsrc/adapters/pi.ts; binding atsrc/adapters/pi-plugin.ts.plugins/opencode/— opencode plugin. No plugin-install CLI exists, sosetup.shdoes an idempotent nuke + copy into~/.config/opencode/(plugins/nio.js,commands/nio.md,skills/). Hooks:tool.execute.before(throwsNioBlockedErrorto block) /tool.execute.after/chat.message/permission.ask/event/dispose.tool.execute.afterdoes not fire when a tool throws, so thesession.idlebranch ofeventdoubles as the safety net that reclaims the pending span. No plugin API for slash commands, so/niois acommands/nio.mdtemplate that instructs the model to call the plugin-registerednio_commandtool. MCP tool names are<sanitize(server)>_<sanitize(tool)>, handled by the two-tieropencodebranch inparseMcpToolName.setup.shwrites the{"type":"module"}ESM sentinel into$OC_HOME/plugins/only when that shared directory holds no sibling plugin and no pre-existingpackage.json; it drops a.nio-esm-sentinelownership marker at the same time, and--uninstallremoves the pair only when that marker is present. Adapter atsrc/adapters/opencode.ts; binding atsrc/adapters/opencode-plugin.ts.plugins/openclaw/— OpenClaw plugin (plugin/subdir holds manifest + bundledplugin.js;skills/nio/synced from shared; setup.sh orchestrates both)plugins/hermes/— Hermes integration. Two surfaces:- Shell-hooks (upstream PR #13296):
setup.sh+install-hook.pymerge 7 lifecycle event entries into~/.hermes/config.yaml— all pointing at the same self-containedscripts/hook-cli.js, which internally dispatchespre_tool_callto the guard pipeline (Phase 0–6) andpost_tool_call/pre_llm_call/post_llm_call/on_session_start/on_session_end/subagent_stopto the collector pipeline (OTEL traces + metrics + logs). /nioslash command via a tiny Python plugin (plugins/hermes/python-plugin/):setup.shdropsplugin.yaml+__init__.py+ bundledscripts/nio-cli.jsinto~/.hermes/plugins/nio/and addsnioto the user'splugins.enabledopt-in list. The plugin'sregister(ctx)hooks/niostraight into Hermes's slash dispatch — bypasses the LLM, mirrors OpenClaw'scommand-dispatch: toolroute. No pip install / wheel; Hermes auto-discovers any directory under~/.hermes/plugins/<name>/. Bothscripts/hook-cli.jsandscripts/nio-cli.jsare built bybuild.jsas single-file bundles (splitting: false) so a Hermes-only release zip (nio-hermes-vX.zip) has no dependency on the Claude Code plugin.
- Shell-hooks (upstream PR #13296):
src/— TypeScript source (scanner, analysers, runtime guard, adapters).src/adapters/plugin-runtime.tsholds the sharedInProcessPluginRuntimethat OpenClaw, Pi, and opencode all sit on: it owns config, the three OTEL providers, per-session collector state, guard-decision → span-attribute translation, orphan-span compensation on the block path, and turn flushing. Platform bindings only translate their host's event shapes into its semantic methods. Despite its name,src/adapters/openclaw-dispatch.tsis the shared/niosub-command router and doctor implementation for every in-process platform — the Pi and opencode doctor probes live there.dist/— Compiled JavaScript output (npm library export)scripts/— Build and release scripts
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.
- 1mo ago First seen · 111 lines · 3,473 tokens per session scan B 1b3907c570b5
nio CLAUDE.md is an instructions file published in the GitHub repository core0-io/nio (20 stars, last pushed yesterday), licensed Apache-2.0. It adds 3,473 tokens to every session, about $0.0139 per session on Opus 5.5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other instructions, from other repositories
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
next.js AGENTS.md
AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.
vscode oss-third-party-notices.instructions.md
Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, cache eligibility and rollout and applying the notice (cutover).
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.
deepseek-harness AGENTS.md
AGENTS.md instructions for deepseek-ai/deepseek-harness, covering agents.md, pre-stable apis and released session data, repository layout, commands and host sandbox failures.
vscode copilot-instructions.md
Copilot instructions for microsoft/vscode, covering vs code copilot instructions, project overview, root folders, core architecture (src/ folder) and built-in extensions (extensions/ folder).