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 skills/gitrasheed/metis-skill/p9-structuralnpx skills add gitRasheed/metis-skill --skill p9-structuralgit clone --depth 1 https://github.com/gitRasheed/metis-skillWhat 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.00000 | $0.02994 |
| Opus 5 | $0.00000 | $0.01497 |
| Sonnet 5 | $0.00000 | $0.00599 |
| Haiku 4.5 | $0.00000 | $0.00299 |
Grade A, and why
P9-structural 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 2d 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.
This is a copy
77% identical to metis — 48 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 171 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Metis
Write code that favors plain data, pure logic, clear call sites, and early architectural thinking. These are strong defaults, not rigid laws: follow the surrounding codebase, framework constraints, and language norms when they clearly matter more.
Apply sections by phase instead of holding everything at once:
- Designing or starting a task: Design principles, LLM agent process
- Implementing: Working rules, plus the SOLID checklist for non-trivial modules
- Writing tests: Testing checklist
- Reviewing a diff or PR: Code review mode
- Before claiming done, committing, or pushing: Final verification checklist
Design principles
- Start from the call site, by wishful thinking: pretend the perfect helpers already exist, name them the way you would want to call them, and get the top-level usage reading cleanly. If the calling code reads awkwardly, the abstractions are wrong — and you find out before building anything.
- Prefer plain data plus focused functions, modules, or systems over behavior-heavy objects. Draw boundaries around what systems do, not what entities are.
- Choose the simplest state model that matches reality: discriminated unions for mutually exclusive states, composable data for orthogonal features, and a plain flat record when neither pressure exists — do not over-architect the simple case.
- Isolate mutation and I/O near the edges. Orchestration decides what happens; inner helpers do narrow, understandable work.
- Push ifs up, fors down. Keep high-level control flow in parents and leaf functions low-branch and easy to test.
- Assert at boundaries, both where data enters and where it leaves: parsing, persistence, external APIs, state transitions, and function contracts. Check what must be true and, when useful, what must not be.
- Prefer explicit, behavior-focused tests without indirection that hides intent.
- Sanity-check the likely bottleneck first — network, disk, memory, then CPU. Prefer architecture changes over late micro-optimizations.
- Design for the hardest real requirement first, then simplify downward. Do not architect for the easy case and try to scale it up later.
- When elements of a batch can invalidate each other — duplicates, conflicts, cross-record constraints — classify the whole batch before applying any element, even when applying incrementally looks cleaner.
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.
- 2d ago First seen · 171 lines · 0 tokens per session scan A b5fa50d3cf2d
P9-structural is a skill published in the GitHub repository gitRasheed/metis-skill (2 stars, last pushed 11d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 2,994 tokens. A static security scan graded it A with 0 findings. It is 77% identical to metis, differing in 48 lines, and is treated as a copy.
Other skills, from other repositories
terminal-capture
Automates terminal UI screenshot testing for CLI commands. Applies when reviewing PRs that affect CLI output, testing slash commands (/about, /context, /auth, /export), generating visual documentation, or when 'terminal screenshot', 'CLI test', 'visual test', or 'terminal-capture' is mentioned.
batch
Execute batch operations on multiple files in parallel. Automatically discovers files, splits into chunks, and processes with parallel worker agents. Use /batch followed by operation and file pattern.
fleet-manager
Use when managing, triaging, restarting, escalating, or summarizing Codewhale Pod runs and workers.
gh-assign-issues
Use to assign GitHub issues to a milestone and/or owners in bulk, verifying each.
mcp-builder
Design, build, configure, or debug Model Context Protocol servers for codewhale, including stdio and HTTP/SSE transports.
extension-creator
Create, scaffold, customize, validate, and locally test Qwen Code extensions. Use when the user wants a new Qwen Code extension, needs help choosing an extension template, wants to add QWEN.md context, commands, skills, agents, MCP servers, settings, hooks, channels, or LSP servers, or asks how to link and test an…