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 dylanroscover/Embody --skill publish-specimengit clone --depth 1 https://github.com/dylanroscover/EmbodyWrote 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/dylanroscover/embody/publish-specimen)<a href="https://agentmods.dev/skills/dylanroscover/embody/publish-specimen"><img src="https://agentmods.dev/badge/skills/dylanroscover/embody/publish-specimen/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/dylanroscover/embody/publish-specimen"><img src="https://agentmods.dev/badge/skills/dylanroscover/embody/publish-specimen.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.00088 | $0.03121 |
| Opus 5.5 | $0.00035 | $0.01248 |
| Sonnet 5.5 | $0.00018 | $0.00624 |
| Haiku 4.5 | $0.00009 | $0.00312 |
Grade A, and why
publish-specimen scanned grade A with 1 finding 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 today.
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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s https://embody.tools/api/specimens/<slug>/tdn | sha256sum How it starts
The opening of the file, as written. The whole thing — 217 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Publish a Specimen to the Collection
Embody dev only (no shipped template counterpart). /specimen-authoring gets a
network to the bar; this skill takes an approved one live on
https://embody.tools/collection with nothing done by hand on a laptop against
production. Every step below has been run end to end (tile-zoom-type,
2026-10-17); do them in order and do not skip the gates.
The pipeline in one screen
/specimen_lab/<name> --export--> specimens/<category>/<slug>.tdxn (+ .prompt.md, .jpg)
specimens/manifest.json (curation source of truth)
build-specimen-data.py -> seed.sql, first-party-sync.sql, first-party-plan.sql,
fixtures/specimens.json, fixtures/specimen-graphs.ts,
scripts/.seed-blobs.manifest.json (all GENERATED)
commit on dev -> PR -> merge to main -> Platform CI:
build-and-test (astro check, build, scanner tests) -> e2e (local D1/R2 seeded from specimens/)
-> deploy (D1 migrations, wrangler deploy = Worker with the bundled fixtures)
-> sync-specimens (R2 blobs by sha256, first-party-sync.sql into production D1,
live verification of /api/specimens/<slug>/tdn and /thumbnail)
The Worker carries the cards; D1 holds the rows; R2 holds the .tdxn and the
cover under their sha256. All three must land, and only sync-specimens lands
the last two. Blobs are content-addressed, the sync is gated on a difference,
so every stage is idempotent: re-running never harms production.
0. Gates before anything is exported
- The COMP lives at
/specimen_lab/<name>withname == slug.replace('-', '_')(the save-time publisherdev/specimen_publish.pyresolves it that way) and terminates in an Out TOP namedout1. - It clears the
/specimen-authoringbar and the user has looked at it and said it is good. Publishing is the user's call, every time. get_op_errors(recurse=True)is clean;get_op_performanceis acceptable.- Every expression is a pure value expression. The community-paste sandbox
(
Collection/safe_import.py) neutralizes anything else to a constant, and a first-party Specimen is pasted through that same path by anyone who clicks "embody it". Allowed: parameter reads,absTime,math.*,Par.eval(), arithmetic, comparisons, ternaries,min/max/int/len/.... Not allowed: lambdas, comprehensions,op()chains with method calls, f-strings. Check before exporting:
Rewrite with helper read-only parameters untilsc = op.Embody.op('Collection/scanner').module bad = [(o.name, p.name) for o in [comp] + comp.findChildren() for p in o.pars() if p.mode == ParMode.EXPRESSION and p.expr and not sc.is_pure_value_expression(p.expr)]badis empty.
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.
- today First seen · 217 lines · 0 tokens per session scan A 10aaf2d2440a
publish-specimen is a skill published in the GitHub repository dylanroscover/Embody (203 stars, last pushed yesterday), licensed MIT. It adds 88 tokens to every session and 3,121 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-18.
Other skills, from other repositories
ganju-cli
Write, test, deploy and debug Ganju custom tools (Functions) with the ganju CLI and the @ganju/sdk handler API. Use this whenever the user works in a folder with a ganju.json, imports @ganju/sdk or defineTool, mentions @ganju/cli or any ganju command (init, link, build, test, deploy, logs, versions, rollback, secret…
amazon aurora dsql
Deprecated compatibility redirect for Aurora DSQL guidance. Use when a request concerns DSQL, Aurora DSQL, distributed SQL, DSQL schemas, migrations, queries, authentication, performance, or application development.
debug
This skill should be used when the user runs /touchdesigner:debug or asks to debug, investigate, or find TouchDesigner node errors — trigger phrases include "debug my TouchDesigner project", "why is this node broken", "find errors in TD", "investigate node errors", "what's wrong with /project1/geo1", or "fix this…
servicenow-cicd-devops
ServiceNow release-engineering surface — CI/CD app install/scan/rollback, DevOps change-control and artifact registration, update-set create/preview/commit/back-out, source-control apply/import, plugin activate/rollback, and ATF test-suite runs via the servicenow-api MCP server. Use when the agent must deploy or roll…
morning-scan
The pre-open and first-hour routine for IDX — session state, movers, a scan over a universe, and a catalyst check on the leaders. Use when the user asks what is moving today, for a morning briefing, or what to watch.
distributed postgres
Deprecated compatibility redirect for Aurora DSQL guidance. Use when a request concerns DSQL, Aurora DSQL, distributed SQL, DSQL schemas, migrations, queries, authentication, performance, or application development.