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/squidbay/factory/factory-securitynpx skills add squidbay/factory --skill factory-securitygit clone --depth 1 https://github.com/squidbay/factoryWhat 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.00139 | $0.01644 |
| Opus 5 | $0.00069 | $0.00822 |
| Sonnet 5 | $0.00028 | $0.00329 |
| Haiku 4.5 | $0.00014 | $0.00164 |
Grade A, and why
factory-security 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.
How it starts
The opening of the file, as written. The whole thing — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Factory Security — read the change, find the real problem, give one verdict
You are running a security check on the changes in a pull request, before the human merges it. This is not a full audit of the whole project and it is not a lint pass — it is a focused look at this diff for the handful of ways a change can actually hurt: a leaked secret, an exposed service, an access scope that's too wide, a webhook that trusts anyone. Your output is plain-words findings and one verdict — never vibes, never a wall of maybes.
The bar is high on purpose. A security check that cries wolf gets ignored, and an ignored check is worse than none. Report only what you are confident is real (RULE 3 — observed, not imagined). Everything you're unsure about goes in the "what I did NOT check" list, honestly, rather than into a finding that pads the count and dulls the signal.
The factory's standing security posture — the design premise this diff-level check sits on top of — lives in .github/SECURITY.md: no exposed services, no credential in any chat or committed file, broad access read-only and write access human-gated. Read it once so a finding here lands against the whole model, not just the lines in front of you.
When to run it
Team Leader runs this read on any sensitive PR before it reaches the human's merge button. A PR is sensitive if it touches:
- Credentials — any token, key, password, or
.env; anything read from or written to a secret store; a change to the guardrails denylist. (This is also where an accidentally-committed secret value gets caught.) - Workflows — a CI workflow, a GitHub Action, or the boot/rules files every seat trusts; anything that runs automatically or changes what the automation is allowed to do.
- Auth — login, sessions, permission scopes, who-can-do-what; a widening of what a token or an app install may reach; a route that should be behind a check and isn't.
- Payments — a checkout or billing path, a payment webhook, anything that moves money or trusts a message claiming money moved.
- Personal data — anything that stores, exposes, or ships a real person's information (a customer list, an email, an address), or opens a service to the public internet where that data lives.
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 · 57 lines · 139 tokens per session scan A a783daf9eb92
factory-security is a skill published in the GitHub repository squidbay/factory (5 stars, last pushed 11d ago), licensed MIT. It adds 139 tokens to every session and 1,644 once invoked, about $0.0007 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-08-31.
Other skills, from other repositories
stage-plan
How to turn "here is my material + here's the video I want" into a single, inspectable plan that spans reference images, reference videos, deterministic editing, semantic editing, generation, and composition. The output is project/plan.json — a cross-modal Edit Decision List (EDL) — which the assembler walks.…
frontend-design
Use this as the design-lead layer for VideoStudio COMPOSE work. It shapes project/composition/composition-manifest.json::artdirection and the model-authored HTML/SVG motion graphics in index.html.
stage-assemble
How to execute a validated, currently authorized project/plan.json into one finished file. Start/resume with production.status; if planapprovalcurrent is false, pass the state to gate-control and stop instead of producing or opening child gates. Walk the signed EDL; do not re-plan. Host-neutral: VideoStudio-specific…
ppt-planner
Read only after ppt-router chooses CREATE or OUTLINE. Planning is the source of truth for construction, not optional prose around the deck.
ppt-review
Read this skill only after current officereview structural output and relevant rendered images exist. Do not use source code, a tool success flag, or the first-slide preview as a substitute for deck evidence.
image-compose
Read this skill after route lock for COMPOSE, or later in HYBRID, GENERATE, or EDIT only when deterministic copy, layout, diagram, framing, crop, mask, or overlay work is required. Do not preload it during routing. Keep the artifact in one stable directory containing image-manifest.json, index.html, and local assets.