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/nodealchemy/powernode-platform/gen-testsnpx skills add nodealchemy/powernode-platform --skill gen-testsgit clone --depth 1 https://github.com/nodealchemy/powernode-platformWhat 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.00000 | $0.01181 |
| Opus 5 | $0.00000 | $0.00590 |
| Sonnet 5 | $0.00000 | $0.00236 |
| Haiku 4.5 | $0.00000 | $0.00118 |
Grade A, and why
gen-tests 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 yesterday.
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 — 148 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/gen-tests — Generate Missing Test Specs
Generate RSpec request specs for untested controllers and service specs for untested services.
Usage
/gen-tests # List untested files, prompt for selection
/gen-tests controller # Generate specs for untested controllers
/gen-tests service # Generate specs for untested services
/gen-tests path/to/file.rb # Generate spec for a specific file
Workflow
Step 1: Identify Untested Files
Find controllers/services without corresponding specs:
# Untested controllers
cd server && for f in $(find app/controllers/api/v1 -name '*_controller.rb'); do
spec="spec/requests/api/v1/$(basename "$f" .rb)_spec.rb"
[[ ! -f "$spec" ]] && echo "UNTESTED: $f"
done
# Untested services
cd server && for f in $(find app/services -name '*.rb' | grep -v concerns); do
spec="spec/services/$(echo "$f" | sed 's|app/services/||; s|\.rb$|_spec.rb|')"
[[ ! -f "$spec" ]] && echo "UNTESTED: $f"
done
Step 2: Read Source & Context
For each file to test, read:
- The source file itself (understand methods, params, permissions)
- The routes file (
config/routes.rb) for endpoint paths - Existing factories in
spec/factories/relevant to the models used - Similar existing specs for pattern reference
Step 2b: Query MCP for Test Patterns (if available)
Before generating specs, query MCP for relevant learnings that may improve spec quality:
platform.query_learnings— query:"<model/service name> test"(e.g.,"ai agent test","subscription service test")platform.query_learnings— query:"factory <model name>"(e.g.,"factory ai_agent","factory account")
Apply any relevant findings (required factory traits, tricky setup, known assertion patterns) to the spec generation approach.
Graceful degradation: If MCP tools are unavailable or return errors, skip this step and proceed with standard spec generation. MCP is additive, not required.
Step 3: Generate Spec
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.
- yesterday First seen · 148 lines · 0 tokens per session scan A b4b070b1af57
gen-tests is a skill published in the GitHub repository nodealchemy/powernode-platform (2 stars, last pushed 3d ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,181 tokens. 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
good-first-issue-batch
File a batch of contributor-ready GitHub issues from the seeds backlog, re-verifying every candidate against HEAD first so no dead issue reaches a contributor. Activate for prompts like "file some good first issues", "open a batch of GFIs", "publish backlog issues to GitHub", "find contributor-ready work", or after an…
seeds-issue-audit
Audit and triage open Seeds (sd) issues — find which can be closed, auto-close high-confidence completed ones, and report borderline cases. Activate for prompts like "audit open issues", "which seeds issues can be closed", "clean up the issue tracker", "triage the seeds backlog".
os-eco-dep-sync
Bump warren onto the latest published @os-eco/ versions across package.json + bun.lock and the Dockerfile CLI pins, then run the gates and open a PR. Use when checking if warren is on the newest burrow/plot/canopy/seeds/mulch/sapling.
release
Prepare, cut, and verify a warren release — tracker audits, version bump, CHANGELOG curation, ROADMAP update, push, then watch the pipeline through to published artifacts.
warren-dogfood-pipeline
Full prioritize → dispatch → shepherd → track pipeline against the live warren instance. Audits the seeds backlog around a focus theme, dispatches the surviving issues to warren agents one at a time, babysits the resulting PRs to merge (update-branch, conflict-repair runs, auto-merge), and closes the loop in the…
canvas
Display HTML content on connected Mayros nodes (Mac app, iOS, Android).