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 thettwe/nyann --skill inspect-profilegit clone --depth 1 https://github.com/thettwe/nyannWrote 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/thettwe/nyann/inspect-profile)<a href="https://agentmods.dev/skills/thettwe/nyann/inspect-profile"><img src="https://agentmods.dev/badge/skills/thettwe/nyann/inspect-profile/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/thettwe/nyann/inspect-profile"><img src="https://agentmods.dev/badge/skills/thettwe/nyann/inspect-profile.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.00153 | $0.00740 |
| Opus 5.5 | $0.00061 | $0.00296 |
| Sonnet 5.5 | $0.00031 | $0.00148 |
| Haiku 4.5 | $0.00015 | $0.00074 |
Grade A, and why
inspect-profile 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 — 78 lines — stays where its author put it; the contents beside it link to each section on GitHub.
inspect-profile
Read-only. Wraps bin/inspect-profile.sh. Loads a profile via
load-profile.sh (user profiles shadow starters with the same name)
and renders a human-readable summary.
1. Resolve the profile name
- The user names it explicitly most of the time ("what does
nextjs-prototypedo"). Use that. - If the user is ambiguous ("what does my profile do"), ask — the
skill doesn't infer from the repo. For "show this repo's setup",
route to
explain-stateinstead. - Names match the regex
^[a-z0-9][a-z0-9-]*$. Reject anything else with a clear message rather than handing a bad name to the backend.
2. Invoke
bin/inspect-profile.sh <name> [--user-root <dir>]
--user-root defaults to ~/.claude/nyann. Only override when the
user says something like "check my team-installed profile at
<path>".
3. Read the output back
The backend already formats sections (Profile, Stack, Branching, Hooks, Extras, Conventions, Documentation, GitHub integration). Your job is to relay those faithfully and add context when the user asks a follow-up. Don't re-summarize — the backend's blurbs for each hook (e.g. "ESLint runs on staged JS/TS") are authoritative.
When the user asks "is this the right profile for my repo", do NOT
guess — suggest running explain-state (reads the repo) and
comparing, or running doctor (reports drift against a chosen
profile).
4. Handle "not found"
Exit code 2 means the profile isn't in user root or starters. The backend prints the available list; relay it and ask the user to pick one. Never invent profile names.
5. Handle shadow warnings
load-profile.sh warns on stderr when a user profile shadows a
starter with the same name. Don't hide this — explicitly tell the
user which version was loaded (user wins by design).
When to hand off
- "Apply this profile to a new repo" →
bootstrap-projectwith--profile <name>. - "Change something in this profile" → edit the JSON at
~/.claude/nyann/profiles/<name>.json; the skill doesn't mutate. - "Save my repo's current state as a profile named X" →
learn-profile. - "Why doesn't my repo match this profile" →
doctoragainst the named profile.
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 · 78 lines · 153 tokens per session scan A 26d9b8eb35c0
inspect-profile is a skill published in the GitHub repository thettwe/nyann (7 stars, last pushed 3d ago), licensed MIT. It adds 153 tokens to every session and 740 once invoked, about $0.0006 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-09-03.
Other skills, from other repositories
daily-working
End-to-end pipeline: pull a task from the project's task tracker by ID (Redmine or GitHub Issues today, more addable via a new adapter), sanity-check and impact-assess it against the codebase before touching anything, implement it with the Claude CLI, verify the result in a real browser via the Claude Chrome extension…
chief-information-officer
The CIO's remit — running the technology the company works on, service quality, IT spend, and the boundary with product engineering. Use this to set IT priorities, decide what IT owns versus engineering, structure IT spend or an IT roadmap, judge whether to build, buy or outsource, or work out why IT is seen as a cost…
service-desk
Runs the IT service desk — intake, triage, prioritization, escalation, knowledge, and the metrics that improve service rather than distort it. Use this to set up or fix a service desk, design ticket priority and escalation, reduce repeat contacts, structure a knowledge base, or work out why a desk hitting its targets…
chief-operating-officer
Owns execution: how work actually gets done across the organization, including process, program management, capacity, vendors, supply chain, and service delivery. Use this when execution is the problem rather than strategy, to design or fix a process, to resolve cross-functional handoff failures, to plan capacity, to…
head-of-pmo
The EPMO lead's remit — what the PMO governs, what it must never become, and how it earns standing rather than compliance. Use this to stand up or reform a PMO, decide what it should and should not control, judge whether it is adding value or overhead, or work out why teams route around it.
chief-product-officer
Owns what gets built and why: product strategy, roadmap, discovery, user experience, and the definition of success for each release. Use this to decide what to build next, to cut scope, to turn a business goal into a product bet, to judge whether a feature is worth its cost, or when engineering and go-to-market…