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 Eliyce/paqad-ai --skill surface-modelinggit clone --depth 1 https://github.com/Eliyce/paqad-aiWrote 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/eliyce/paqad-ai/surface-modeling)<a href="https://agentmods.dev/skills/eliyce/paqad-ai/surface-modeling"><img src="https://agentmods.dev/badge/skills/eliyce/paqad-ai/surface-modeling/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/eliyce/paqad-ai/surface-modeling"><img src="https://agentmods.dev/badge/skills/eliyce/paqad-ai/surface-modeling.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.00038 | $0.00590 |
| Opus 5 | $0.00019 | $0.00295 |
| Sonnet 5 | $0.00008 | $0.00118 |
| Haiku 4.5 | $0.00004 | $0.00059 |
Grade A, and why
surface-modeling 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 8d 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 — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
What It Does
Adds the layer the code cannot carry on its own: a semantic slug, a human title, the surface kind, entry and exit marks, and the owning module for each extracted surface. This is the one stage where the map gains meaning beyond what a scanner sees, so it is the one stage where judgment is load-bearing and must stay honest.
Use This When
Use this after extraction and before flow tracing. Every surface the map publishes passes through here to get its name and type.
Inputs
- The
extraction.jsonfromsurface-extraction(raw surfaces with evidence). - The module map, to attribute each surface to the module that owns it.
- Read
references/modeling-judgment.mdbefore naming or typing a surface.
Procedure
The mechanical checks (slug rules, evidence resolution, accounting) belong to the engine's lint; your job is the naming and typing judgment.
- For each extracted surface, assign a semantic slug, a title, and a kind
(
page | screen | modal | action | api | cli-command | job | router | terminal | …). - Mark entry points and exits, and attribute the surface to its owning module via the module map.
- Account for every extracted entry: mapped, or excluded with a stated reason. Re-run
paqad-ai sitemap runso the engine lints slugs, evidence, and accounting.
Output Contract
- A JSON object
{ surfaces: [{ id, slug, title, kind, area, module, entry, evidence }], excluded: [{ id, reason }] }. - Every modeled surface carries a resolving
file:lineevidence pointer. - Every extracted entry appears in
surfacesorexcluded— none is dropped silently.
Escalate / Stop Conditions
- Do not name a surface the extractor never produced, and do not drop an extracted surface
without an explicit
excludedreason. - Stop and ask when a surface's kind is genuinely ambiguous rather than guessing a type that changes how the graph reads.
- Keep the slug derived from evidence, not invented; a slug with no basis in the code is a defect.
What ships with it
2 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.
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.
- 8d ago First seen · 65 lines · 38 tokens per session scan A 7ac802e93b3a
surface-modeling is a skill published in the GitHub repository Eliyce/paqad-ai (8 stars, last pushed today), licensed MIT. It adds 38 tokens to every session and 590 once invoked, about $0.0002 per session on Opus 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-09-03.
Other skills, from other repositories
pr-writing-review
Extract and analyze writing improvements from GitHub PR review comments. Use when asked to show review feedback, style changes, or editorial improvements from a GitHub pull request URL. Handles both explicit suggestions and plain text feedback. Produces structured output comparing original phrasing with reviewer…
session-investigator
Investigate fast-agent session and history files to diagnose issues. Use when a session ended unexpectedly, when debugging tool loops, when correlating sub-agent traces with main sessions, or when analyzing conversation flow and timing. Covers session.json metadata, history JSON format, message structure, tool…
auto-go
A command that implements code from a SPEC, a document describing the required behavior and work.
auto-plan
A code-planning skill that examines a codebase and creates a detailed specification, implementation plan, and acceptance criteria. It can organize requirements using EARS, a structured way to describe how software should behave in different situations.
agent-pipeline
Multi-agent pipeline orchestration skill.
adaptive-quality
Per-task execution profile selection based on complexity in Balanced quality mode.