# Template Safety Card: what it can touch, what needs your yes, what it was tested on

> One honest page for every agent template you sell or share: what it can touch, what waits for the buyer's yes, what it never does, which secrets it needs and what it was really tested on. A checker fails the template when the card is missing or does not match the files: a network call the card never mentions, texts sent with no yes, a key name left off, 25 prompts claimed for 3, a test row with no saved log, a card from an older version. It checks your listing against the card too. You approve each card at your own terminal.

- URL: https://paperchasewebb.ai/bots/marketplace/items/template-safety-card-what-it-touches-what-needs-your-yes-tested-on/
- Type: Prompt pack
- Category: Vibe coding
- By: PaperChaseWebb
- Works with: Claude Code, Codex, Grok Bot, Hermes (named in the listing); Plain Markdown files, a small Python checker, and rules for AGENTS.md and CLAUDE.md, Claude Code and Codex notes, Hermes notes and a Grok Bot standing order. The agent files were checked by the checker on Linux; they were not loaded inside each agent for this release
- Price: $24 USD
- Difficulty: Intermediate
- Setup time: 30 min
- Time to result: The worked example in 5 minutes; a first card for your own template in about 30 minutes
- Format: Markdown (.md) file, template-safety-card-what-it-touches-what-needs-your-yes-tested-on.md
- Version: 1.0, updated 2026-11-01
- License: Use inside your own team or company, including for clients and for templates you sell. Do not resell or republish the kit itself.

## What you end up with

Every template you release carries a card that matches its files, its counts and its test logs, your listing says nothing the card cannot back up, and a change to any file shows up as a stale card before a buyer sees it.

## What you get

- 21 sections and an appendix in one .md file, with a one-line unpack for all 103 files
- The seven-part card: What it can touch, What needs your yes, What it never does, Secrets it needs, Tested on, Not tested and What is inside, tied to the template's file hash
- card_check.py scan and draft: what the files can touch, every host and secret name with file and line, and a first card to finish
- card_check.py check: 15 card checks, 10 hazard checks (keys in files, curl into a shell, flags that turn off asking, hidden instructions) and 13 checks of the card against the files, from a touch left off to a padded count and a test row with no log
- card_check.py listing: 10 checks on your sales copy, such as agents nobody tested, "works offline" over a network call, "no API key needed", "fully autonomous", safety promises and demand claims
- card_check.py fix: 10 checks so an agent can only add and correct, never take out a yes row, add a test row without a log or raise a count
- Report and rules checks, and approve.py: it needs a real terminal and part of the card's hash, refuses agent sessions and piped input, and checks the card has not changed before it goes into the template
- An eval set with 10 made-up templates, 3 listings and 2 reports, rules and two skills for Grok Bot, Claude Code, Codex and Hermes, six prompts and templates
- The test harness: 109 unit tests and 280 planted faults you can repeat

## Who it is for

Template sellers and agencies who want one checked page that tells buyers what a template can touch, what needs a yes and what it was tested on, with a person approving every card.

## Tools needed

- Python 3.8 or newer: runs the scan, the card check, the listing, fix, report and rules checks, the eval set and the owner approval script; standard library only
- Grok Bot, Claude Code, Codex or Hermes: writes the card and listing fixes under the AGENTS.md rules or the Grok Bot standing order; never lists, uploads or approves anything and never changes the template's own files
- Your template folder and listing: the prompts, skills, scripts and agent files you sell, plus the listing saved as a file; the kit never logs in to a marketplace and never runs the template's code
- You need: Python 3.8 or newer
- You need: Your template as a folder of text files
- You need: Your listing saved as a file
- You need: A saved log for each test run you want on the card
- You need: Someone who approves each card and uploads the template

Cost to run: The kit is the only purchase. Everything runs locally with Python; the checker reads files only, runs none of them, makes no network calls and logs in to nothing.

## How it works

1. **Unpack and test.** Save the kit as pack.md in an empty folder, run the unpack line from Appendix A, then sh test_all.sh. Expected: 103 files written; 109 tests OK; 280 of 280 planted faults caught; the eval set and rules check pass.
2. **Watch the flow.** Run sh example/run_example.sh and read it next to section 17. Expected: A made-up template's card with 12 findings, the agent's first fix caught with 3, the second fix clean, a listing with 9 findings, a first-try report with 3 and a piped approval refused.
3. **Card your template.** Copy your template into ./template, edit settings.json, then run python3 desk/card_check.py scan template and python3 desk/card_check.py draft template. Expected: A list of what your files touch and a first card to finish.
4. **Check, fix and approve.** Have your agent follow skills/safety-card-write and skills/listing-check, run card_check.py fix until 0 high, then approve the card at your terminal and upload the template yourself. Expected: A card with 0 high findings in your template and a listing that matches it.

## Sample prompt: What does it touch (Grok Bot, Claude Code, Codex, Hermes)

```
Read AGENTS.md. Run card_check.py scan template and check template, and tell me in plain words what this template can touch and what the card gets wrong. Change nothing.
```

Prompt 1 of 6.

## Sample prompt: First card (Grok Bot, Claude Code, Codex, Hermes)

```
There is no card yet. Run card_check.py draft template, then follow skills/safety-card-write/SKILL.md and write queue/fixes/SAFETY-CARD.md. Leave every test row I have not given you a log for under Not tested.
```

Prompt 2 of 6.

## Sample prompt: Listing check (Grok Bot, Claude Code, Codex, Hermes)

```
Follow skills/listing-check/SKILL.md for listing/[name].md and write the fixed copy to queue/fixes. List each change and the code behind it.
```

Prompt 4 of 6.

## Free preview of template-safety-card-what-it-touches-what-needs-your-yes-tested-on.md

````markdown
# Template Safety Card: what it can touch, what needs your yes, what it was tested on

Version 1.0, 2026-11-01. By PaperChaseWebb. For people and agencies who sell or share agent templates (prompt packs, skills, scripts, agent files and standing orders for Grok Bot, Claude Code, Codex, Hermes and the like), who want one honest page in every template that says what it can touch, what waits for the buyer's yes, what it never does, which secrets it needs and what it was really tested on, and a checker that fails the template when that page is missing or does not match the files. Works with Grok Bot, Claude Code, Codex and Hermes. Python 3.8 or newer, standard library only, no API keys, no logins. The checker reads files; it never runs them, opens no network connection and changes nothing. Tested with 109 unit tests and 280 planted faults on Linux with Python 3.13, 3.12, 3.11, 3.9 and 3.8. All sellers, templates, contacts and test logs in this kit are made up.

Buyers have started to ask before they install. A template that sends texts, reads a mailbox or holds a payment key can do real harm in the wrong setup, and builders on X now warn people not to install templates on sight. Third parties rescore templates from the outside. The seller, who knows the template best, usually writes nothing.

When sellers do write something, it drifts. The listing says 25 prompts and the folder has 3. It says "works with Grok Bot, Claude Code, Codex and Hermes" and it was run once, in one of them
````

## Test record

- Date: Nov 1, 2026
- What was run: tests/test_lib.py (7), test_card.py (17), test_match.py (24), test_listing.py (11), test_fix.py (11), test_claims.py (8), test_modes.py (9), test_set.py (4), test_mini.py (6) and test_approve.py (12, on a real pseudo terminal); tests/mutate.py with 263 planted faults across cards, template hazards, card against template, listings, bad fixes, reports and agent rules, plus 17 against card_mini.py; card_check.py set on the eval set; example/run_example.sh end to end; and the unpack line with test_all.sh. Linux, Python 3.13, 3.12, 3.11, 3.9 and 3.8.
- Result: 109 passed, 0 failed on all five versions; 280 of 280 planted faults caught and all clean baselines clean; the eval set matched 15 of 15; the example caught the bad card with 12 findings, the first-try fix with 3 and the first-try report with 3, and refused piped approval; the unpack line wrote every file and test_all.sh passed there.
- Not run: A live Grok Bot, Claude Code, Codex or Hermes session. Live marketplaces. Binary files, minified bundles and code fetched at run time. macOS or Windows. A security audit.

Copied from this item's dated test notes. What was not run stays in.

## Worth knowing

- The agent rules were checked by the checker but not loaded inside a live Grok Bot, Claude Code, Codex or Hermes session for this release. The eval fixes were written by hand to the rules. Run card_check.py set evals with your own agent's fixes before you rely on it.
- Not a security audit. A card that passes says the card matches the files; it does not say the template is safe. The scan reads text files and known patterns in Python, JavaScript, TypeScript, shell, JSON, YAML, TOML and Markdown; binary files, minified bundles and code fetched at run time are not read.
- The kit reads the listing you save as a file. It never logs in to a marketplace and cannot list, upload or update anything.
- The owner step assumes the agent cannot run approve.py at a terminal. Run it as a separate user; agent rules alone are not a hard boundary.
- All sellers, templates, contacts and test logs in the kit are made up. Tested on Linux only; macOS and Windows were not tested.
- On 2026-11-01 on Linux: 109 unit tests and 280 of 280 planted faults passed on Python 3.13, 3.12, 3.11, 3.9 and 3.8; the eval set matched 15 of 15; the unpack line wrote every file and test_all.sh passed in that folder.

## Questions

**How is this different from Vet Before You Install?** Vet Before You Install is for the buyer checking someone else's tool. This kit is for the seller: you write one card for your own template, and the checker makes sure it matches your files, your counts, your test logs and your listing.

**Which agents does it work with?** Any agent that can read files and run a script. The kit has rules for AGENTS.md and CLAUDE.md, Claude Code and Codex notes, Hermes notes and a Grok Bot standing order. Those were checked by the checker, not loaded in each agent for this release.

**Does it run my template's code?** No. It reads the files as text. It runs none of them, opens no network connection and changes nothing outside the queue folder.

**Can my agent mark the template as tested?** Only with a saved log in the template. A Tested on row without a log fails, and the fix check refuses a changed test result without a new run.

**Can you set it up for us?** Yes. Our Install sprint writes and checks a card for each of your templates, saves your test runs as logs and rewrites your listings from the cards, or Managed Ops checks every release for you. Book a call or write to mgmt@paperchasewebb.com.

## How to buy

$24 one time at https://paperchasewebb.ai/bots/marketplace/items/template-safety-card-what-it-touches-what-needs-your-yes-tested-on/. Stripe checkout, then an instant download page; the download link is also in your emailed receipt.

Seller: PaperChaseWebb Inc., mgmt@paperchasewebb.com
