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 skills add darkroomengineering/cc-settings --skill case-studygit clone --depth 1 https://github.com/darkroomengineering/cc-settingsWrote 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/skills/darkroomengineering/cc-settings/case-study)<a href="https://agentmods.dev/skills/darkroomengineering/cc-settings/case-study"><img src="https://agentmods.dev/badge/skills/darkroomengineering/cc-settings/case-study/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/skills/darkroomengineering/cc-settings/case-study"><img src="https://agentmods.dev/badge/skills/darkroomengineering/cc-settings/case-study.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.00224 | $0.05750 |
| Opus 5.5 | $0.00090 | $0.02300 |
| Sonnet 5.5 | $0.00045 | $0.01150 |
| Haiku 4.5 | $0.00022 | $0.00575 |
Grade A, and why
case-study 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 6d 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 — 207 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Case study from a project
The goal is raw material a designer can build a case study from: many separate, clean, 16:9 videos and images that show how the work is made, not one showreel. Everything comes from the project itself: the live site rendered by its own code, its own GLB models and bakes, its own stems and SVGs. Nothing is invented, and each item says how it was made.
Fit the pipeline to the project
Every project is different; run the phases that apply and say which you skipped and why.
| Project | Works as is | Adapt |
|---|---|---|
| three.js based (vanilla, React Three Fiber, Threlte, TresJS) | everything | nothing |
| Other WebGL engines (Babylon, PixiJS, OGL, Spline, Unity WebGL) | film, clips, holds, clicks, DOM-mode layers, sound, image assets, board | no scene hooks: reach the engine's own globals in page.evaluate for 3D layers; Blender only if model files exist |
| DOM / GSAP / Lottie / video sites | film (the clock also steps CSS animations and video), DOM-mode layers via css(), clicks, sound, assets, board |
skip Blender, solo and instances |
| Multi-page sites | everything, per page | boot.js each URL; "chapters" become pages or sections |
| No sound / no Theatre keyframes | — | skip phase 6, or place stems by section from the code's triggers |
| Games and app-like flows (keyboard play, timers, forms) | layers, sound, assets, tokens, board | boot with TIMERS=1 and a network guard; the film is a scripted playthrough (examples/play-template.js), cut by its logged events; 2D sprite games skip Blender and rebuild the level from their atlases instead |
What the user expects (learned the hard way)
- 16:9, 1920×1080 masters for everything, including stills, grids and Blender renders. Re-render instead of cropping.
- A list of separate videos and images, never just one film. Cut long captures into per-chapter and per-transition clips, plus stills.
- Every chapter gets the same depth. Each one is decomposed layer by layer and gets a 3D turntable. Don't stop at the most obvious scene.
- Every sound and every image asset as its own file, including small UI glyphs such as a navigation rail's icons.
- Colours and typography are part of every case study: palette, themes, each typeface, the type scale, and what the live site really uses.
- Masters go to the studio Drive, one folder per project, and the board links to that folder (phase 10).
- The repo stays clean. No commits. Revert lockfile or config churn caused by installs and dev servers.
- Captures never write to the client's production. No score rows, no leads, no analytics hits, no anonymous sign-ins: block or fake those
requests in the capture browser (
BLOCK/FAKE_OK, phase 2) before the first take, and never submit a real form. - The board is something to play with, not only to watch. The user asked for more interactivity and immersion: give each chapter a
playable piece rebuilt from the project's own assets and logic (state buttons for a character, the level itself, its mini-games, a music
machine, layer toggles, a camera pull-back slider). See "Playable pieces" in
references/board.md. - Show progress with contact sheets, and look at every capture (Read the image) before using it.
What ships with it
46 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- examples/clips-template.txt 312 B
- examples/design-template.json 1018 B
- examples/play-template.js 5.6 KB runs code
- examples/recipe-template.js 6.3 KB runs code
- examples/soundtrack-spec.json 466 B
- examples/transition-anatomy.js 2.6 KB runs code
- examples/type-on-black.js 3.1 KB runs code
- references/blender.md 5.1 KB
- references/board.md 6.2 KB
- references/gotchas.md 12 KB
- scripts/blender/chapters_lib.py 18 KB runs code
- scripts/blender/common.py 7.2 KB runs code
- scripts/blender/encode.sh 1.3 KB runs code
- scripts/blender/turntable.py 13 KB runs code
- scripts/browser/boot.js 3.0 KB runs code
- scripts/browser/cdp.js 1.1 KB runs code
- scripts/browser/chrome.sh 1.0 KB runs code
- scripts/browser/click.js 781 B runs code
- scripts/browser/cold.js 1.4 KB runs code
- scripts/browser/film.js 996 B runs code
- scripts/browser/goto.js 1.2 KB runs code
- scripts/browser/hold.js 1.6 KB runs code
- scripts/browser/hook.js 3.6 KB runs code
- scripts/browser/instances.js 1.3 KB runs code
- scripts/browser/interact.js 3.3 KB runs code
- scripts/browser/layers.js 3.5 KB runs code
- scripts/browser/map.js 2.4 KB runs code
- scripts/browser/netguard.js 2.0 KB runs code
- scripts/browser/origin-swap.js 2.6 KB runs code
- scripts/browser/prelude.js 2.5 KB runs code
- scripts/browser/rec.js 1.3 KB runs code
- scripts/browser/solo.js 1.7 KB runs code
- scripts/browser/specimens.js 10 KB runs code
- scripts/browser/spin.js 1.7 KB runs code
- scripts/browser/timers.js 1.8 KB runs code
- scripts/browser/tokens.js 5.1 KB runs code
- scripts/media/cut_film.sh 1.0 KB runs code
- scripts/media/drive_upload.sh 2.4 KB runs code
- scripts/media/enc_web.sh 406 B runs code
- scripts/media/export_sounds.sh 1.9 KB runs code
- scripts/media/export_svgs.js 2.3 KB runs code
- scripts/media/frames2mp4.sh 480 B runs code
- scripts/media/join_takes.py 1.0 KB runs code
- scripts/media/sheet.sh 722 B runs code
- scripts/media/soundtrack.py 2.6 KB runs code
- scripts/media/theatre_history.py 819 B runs code
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.
- 6d ago Changed · +64 lines · +30 tokens per session 53672044adc5
- 7d ago First seen · 143 lines · 194 tokens per session scan A fd540dbe94ea
case-study is a skill published in the GitHub repository darkroomengineering/cc-settings (52 stars, last pushed today), licensed MIT. It adds 224 tokens to every session and 5,750 once invoked, about $0.0009 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-10-23.
Other skills, from other repositories
logo-design
Professional logo and brand-mark design, from brief to production files. Guides discovery and the design brief, concept generation, choosing a mark type (wordmark, monogram, letterform, pictorial, abstract, emblem, mascot, combination), building clean geometric SVG logos, optical refinement, colour and typography…
mermaid-diagrams
Comprehensive guide for creating software diagrams using Mermaid syntax. Use when users need to create, visualize, or document software through diagrams including class diagrams (domain modeling, object-oriented design), sequence diagrams (application flows, API interactions, code execution), flowcharts (processes…
interfaces-raunofreiberg
Review UI code against Rauno Freiberg's interface guidelines. Use when checking interactivity, typography, motion, touch, optimizations, accessibility, and design details.
web-interface-guidelines
Review UI code against Vercel's Web Interface Guidelines. Use when checking interactions, animation, layout, content, accessibility, performance, and design standards with MUST/SHOULD/NEVER rules.
design-spec-rules
Enforce design-to-code fidelity rules. Use when implementing UI from Figma, mockups, or design specs to ensure pixel-perfect accuracy.
rams
Run accessibility and visual design review on components. Use when reviewing UI code for WCAG compliance and design issues.