Borrowing it
Nothing to install: this file belongs to dalmasonto/umbral. 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/dalmasonto/umbral/main/CLAUDE.mdgit clone --depth 1 https://github.com/dalmasonto/umbralWrote 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/dalmasonto/umbral/claude-md)<a href="https://agentmods.dev/instructions/dalmasonto/umbral/claude-md"><img src="https://agentmods.dev/badge/instructions/dalmasonto/umbral/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/dalmasonto/umbral/claude-md"><img src="https://agentmods.dev/badge/instructions/dalmasonto/umbral/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.08001 | $0.08001 |
| Opus 5.5 | $0.03200 | $0.03200 |
| Sonnet 5.5 | $0.01600 | $0.01600 |
| Haiku 4.5 | $0.00800 | $0.00800 |
Grade A, and why
umbral CLAUDE.md 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 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.
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 — 413 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md
Guidance for Claude Code (claude.ai/code) when working in this repository.
Project status
Greenfield. No Cargo workspace or source yet. Before scaffolding anything, read arch.md; that's the authoritative design spec.
umbral is a declarative web framework in Rust (umbral means 'of the shadow', from Latin umbra). The goal is to recreate that declare-your-data-and-get-everything feeling: declare data and you get migrations, CRUD, an admin, and an optional REST API almost for free, with Rust's compile-time guarantees. The name is a placeholder; the whole tree can be renamed later with sed 's/umbral/yourname/g'.
The one idea that matters most
Thin core, plugin-heavy. The framework dogfoods its own plugin system. Auth, sessions, admin, tasks, and REST are all plugins. Structurally they're identical to a third-party one. A REST-free app has to compile and run with zero serializer code. If a built-in can't be expressed as a plugin, the plugin contract is wrong.
Crate layout = the architecture
The Cargo workspace boundaries encode the core-vs-plugin split:
crates/
umbral-core # ORM, migrations, routing, DB backends, the Plugin TRAIT. No plugin deps.
umbral-macros # #[derive(Model)], #[task], etc.
umbral # FACADE: re-exports core + macros as one stable surface (umbral::prelude::*)
umbral-cli # the umbral command-line tool binary
plugins/ # built-in plugins, each its own crate (from M9 onward)
umbral-auth # built-in: users, permissions, password hashing (argon2)
umbral-sessions # built-in: session store + middleware (tower-sessions)
umbral-admin # built-in: auto CRUD UI
umbral-tasks # built-in: DB-backed background task queue
umbral-rest # OPTIONAL: serializers, viewsets, routers (the REST layer)
umbral-openapi # OPTIONAL: Swagger UI / schema gen; depends on umbral-rest
Dependency inversion is the whole game
- Dependencies point inward toward core. Control flows outward through the trait.
- Every plugin depends on the
umbralfacade, never the reverse.umbral-coredefines thePlugintrait but never names a concrete plugin; it touches plugins only asBox<dyn Plugin>. That trait object is the dynamic seam that holds the registry of installed plugins. - The user's binary crate depends on core plus every chosen plugin and wires them via an explicit builder:
App::builder().plugin(...).build(). umbral-coredepends on neitherumbral-restnorumbral-openapi. That's the structural proof that "serializers are a plugin." Cargo's ban on circular deps enforces it for us.- Plugins import only the facade (
use umbral::prelude::*), neverumbral-coreinternals. The internal crate split can then be refactored without breaking any plugin.
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 Changed 7248500b6892
- 2mo ago First seen · 413 lines · 8,001 tokens per session scan A 41cbd7987ddc
umbral CLAUDE.md is an instructions file published in the GitHub repository dalmasonto/umbral (14 stars, last pushed 9d ago), licensed Apache-2.0. It adds 8,001 tokens to every session, about $0.0320 per session on Opus 5.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-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.
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).
deno copilot-instructions.md
Copilot instructions for denoland/deno, covering deno development guide for github copilot, network access, high level overview, key directories and key files to understand first.