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 toffyui/ccteams --skill rails-playbookgit clone --depth 1 https://github.com/toffyui/ccteamsWrote 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/toffyui/ccteams/rails-playbook)<a href="https://agentmods.dev/skills/toffyui/ccteams/rails-playbook"><img src="https://agentmods.dev/badge/skills/toffyui/ccteams/rails-playbook/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/toffyui/ccteams/rails-playbook"><img src="https://agentmods.dev/badge/skills/toffyui/ccteams/rails-playbook.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00046 | $0.02654 |
| Opus 5 | $0.00023 | $0.01327 |
| Sonnet 5 | $0.00009 | $0.00531 |
| Haiku 4.5 | $0.00005 | $0.00265 |
Grade A, and why
rails-playbook 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 10d 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 — 181 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Rails Playbook
This is the literal procedure a frontier model follows on a Rails codebase. Follow it in order; most Rails defects come from skipping the reconnaissance steps and writing "generic Rails" instead of THIS project's Rails.
Operating loop
- Pin the stack before writing a line. Read
Gemfile.lock:- Rails version: the
rails (x.y.z)line. Stay inside that version's API — no Rails 7.x features in a 6.1 project. - Test framework:
rspec-railsin the lockfile + aspec/directory →bundle exec rspec; otherwisetest/→bin/rails test. - Lint:
rubocopin the lockfile +.rubocop.ymlpresent → rubocop is part of verification.
- Rails version: the
- Check reality before adding to it.
- Routes:
bin/rails routes -g <resource>before adding any route — the route may already exist, or a catch-all may shadow yours. - Columns: read
db/schema.rb(orstructure.sql) for actual columns and indexes. Model files do not list columns; guessing them from attribute usage is how phantom-column bugs happen. - Pending migrations:
bin/rails db:migrate:status | grep down— writing on top of an unmigrated schema wastes the whole session.
- Routes:
- Read one neighboring model + controller in the same area and mirror them: service objects vs model methods, concerns usage, scope style, callback style. Convention in THIS repo beats convention in general.
- Place and name files exactly where generators would even when writing
by hand:
app/models/user_profile.rb→class UserProfile, migrations viabin/rails generate migration AddXToY(the timestamp matters), tests mirroringapp/paths undertest/orspec/. - Build in this order: migration → model (validations, associations with
explicit
dependent:, scopes) → controller → view/serializer. Each layer is testable before the next exists. - Migration discipline:
- One migration = schema change OR data change, never both.
- Every foreign key column gets an index (
add_referencedoes this by default since Rails 5;add_column :user_iddoes NOT — add it). - Every uniqueness validation ships with
add_index ..., unique: truein the same change (see decision tree c). - Data migrations use raw SQL or a model class defined inside the migration
file, never
app/modelsclasses — those will drift.
- Run the verification recipe (below) and paste real output before reporting. A diff without executed commands is a claim, not a result.
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.
- 10d ago First seen · 181 lines · 46 tokens per session scan A 70e949c954c8
rails-playbook is a skill published in the GitHub repository toffyui/ccteams (48 stars, last pushed 9d ago), licensed MIT. It adds 46 tokens to every session and 2,654 once invoked, about $0.0002 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-30.
Other skills, from other repositories
event-store-design
Design and implement event stores for event-sourced systems. Use when building event sourcing infrastructure, choosing event store technologies, or implementing event persistence patterns.
convex-explain-app
Explain an existing Convex app — data model + relationships, public vs internal functions, auth/ownership model, components, a request→data flow — read from the schema and function surface. Read-only.
platform-custom-field-generate
Use this skill when users need to create, generate, or validate Salesforce Custom Field metadata. Trigger when users mention custom fields, field types, Roll-up Summary fields, Master-Detail relationships, Lookup relationships, formula fields, picklists, dependent (controlling) picklists, referencing a value set from…
field-service-sobject-create-configure
Headless 360 REST API deployment step for creating sObject records. Handles describe-based field discovery, required-field derivation, entity-relationship ordering, and composite graph transactions. Use this skill when a designer skill (or a user directly) needs to create sObject records after design confirmation…
openloomi-api
OpenLoomi ships a local-first HTTP API served from the desktop app (port 3414, fallback 3515). All auth, Memory, AI, RAG, Loop, and Audit data live in a local SQLite database — your data stays on your machine and the OpenLoomi app is the source of truth. The only externally-routed auth path is the Composio OAuth…
nornicdb-grpc
Drive NornicDB over gRPC — the Qdrant-compatible surface (Collections, Points, Snapshots) plus the additive NornicSearch service. Use when ingesting via Qdrant SDKs, migrating from Qdrant, or running hybrid text+vector search from a non-Bolt client. Covers connection, RPC catalog, collection→database mapping…