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/tedivm/robs_awesome_python_template/template-testingnpx skills add tedivm/robs_awesome_python_template --skill template-testinggit clone --depth 1 https://github.com/tedivm/robs_awesome_python_templateWhat 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.00016 | $0.01520 |
| Opus 5 | $0.00008 | $0.00760 |
| Sonnet 5 | $0.00003 | $0.00304 |
| Haiku 4.5 | $0.00002 | $0.00152 |
Grade C, and why
template-testing scanned grade C 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 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
rm -rf workspaces/<config_name> How it starts
The opening of the file, as written. The whole thing — 197 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Template Testing Prompt
Please perform comprehensive testing of the cookiecutter template to ensure all configurations generate working projects with passing tests, type checking, and linting.
Task Requirements:
1. Standard Test Configurations
Test ALL three standard configurations located in the tests/ directory:
- Full configuration (
tests/full.yaml): All features enabled (FastAPI, Celery, QuasiQueue, Database, Caching, Docker) - Library configuration (
tests/library.yaml): Minimal setup for Python library development - Bare configuration (
tests/bare.yaml): Basic project with no optional features
2. Testing Workflow
For EACH configuration, perform these steps:
Step 1: Generate Project
cd /Users/tedivm/Repositories/tedivm/robs_awesome_python_template
rm -rf workspaces/<config_name>
cookiecutter --config-file tests/<config_name>.yaml --no-input --output-dir workspaces .
cd workspaces/<config_name>
Step 2: Run Test Suite
Run the key validation checks:
make pytest # Run all tests with coverage
make mypy_check # Type checking
make ruff_check # Linting
Note: Formatting issues (prettier, tomlsort, paracelsus) can be auto-fixed with make chores and are not critical for validation.
Step 3: Verify Results
Check that:
- ✅ All tests pass (exit code 0)
- ✅ Test coverage meets expectations (typically 90%+ for full/library, 100% for bare)
- ✅ No mypy type errors
- ✅ No ruff linting errors
- ✅ Code formatting is correct
3. Context-Specific Testing
IMPORTANT: In addition to the three standard configurations, create and test additional custom configurations relevant to your current work session.
For example:
- If you modified caching functionality, test a config with caching enabled and one with it disabled
- If you updated Docker configurations, test with and without Docker components
- If you modified CLI functionality, test with and without optional CLI features
- If you modify a component with hooks into a lot of other systems, create multiple configurations to validate those changes
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 · 197 lines · 16 tokens per session scan C a72e515e27ea
template-testing is a skill published in the GitHub repository tedivm/robs_awesome_python_template (309 stars, last pushed 3mo ago), licensed MIT. It adds 16 tokens to every session and 1,520 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
background-task
Add or modify work that runs outside the request/response cycle — emails, document ingestion, webhooks, cleanups, scheduled jobs. Use when something is slow or fire-and-forget, or when adding a periodic/cron task. This project's queue is {{ cookiecutter.backgroundtasks }}.
agent-tool
Add a new tool/function the AI agent can call (e.g. look something up, hit an external API, perform an action). Use when extending the assistant's capabilities, wiring a new function into the agent, or when the model needs a new action. This project uses {{ cookiecutter.aiframework }}.
frontend-feature
Build a new page, view, or data-driven feature in the Next.js frontend. Use when adding a route under the dashboard/marketing area, wiring UI to a backend endpoint, adding client state, or creating a localized page. Covers App Router, data fetching, Zustand stores, and i18n.
pytest-suite
Write or extend the backend test suite following this project's conventions. Use when adding tests for a new service/route/repository, when coverage is missing, or when asked to test a feature. Knows the mocked-session + httpx AsyncClient setup so tests run with no database.
rag-knowledge
Work with the RAG knowledge base — ingest documents, run semantic search, manage collections, or add a sync source/connector (Google Drive, S3). Use when populating or debugging the knowledge base, tuning retrieval, or adding a new document source. This project uses {{ cookiecutter.vectorstore }} + {{…
alembic-migration
Create, review, and apply database schema changes with Alembic. Use whenever a SQLAlchemy model is added or changed, a column/index/constraint needs to change, or a data backfill is required — anything that alters the PostgreSQL schema.