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 slbug/claude-ruby-grape-rails --skill rb-boundariesgit clone --depth 1 https://github.com/slbug/claude-ruby-grape-railsWrote 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/slbug/claude-ruby-grape-rails/rb-boundaries)<a href="https://agentmods.dev/skills/slbug/claude-ruby-grape-rails/rb-boundaries"><img src="https://agentmods.dev/badge/skills/slbug/claude-ruby-grape-rails/rb-boundaries/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/slbug/claude-ruby-grape-rails/rb-boundaries"><img src="https://agentmods.dev/badge/skills/slbug/claude-ruby-grape-rails/rb-boundaries.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.00037 | $0.00737 |
| Opus 5.5 | $0.00015 | $0.00295 |
| Sonnet 5.5 | $0.00007 | $0.00147 |
| Haiku 4.5 | $0.00004 | $0.00074 |
Grade A, and why
rb:boundaries 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 1mo 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 — 112 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Rails Boundary Analysis
Analyze coupling and boundary violations between Rails layers.
Boundary Layers
┌─────────────────────────────────────┐
│ Controllers / Grape Endpoints │ ← HTTP transport only
├─────────────────────────────────────┤
│ Services / Commands / Interactors │ ← Business logic
├─────────────────────────────────────┤
│ Queries / Policies / Forms │ ← Specialized concerns
├─────────────────────────────────────┤
│ Models │ ← Data + simple scopes
├─────────────────────────────────────┤
│ Jobs / Mailers / External APIs │ ← Async / external
└─────────────────────────────────────┘
Iron Laws
- Controllers do not contain business logic - Only HTTP concerns
- Models do not call external services directly - Use callbacks carefully
- Services do not depend on request context - Pass data explicitly
- Jobs receive IDs, not records - JSON-safe args only
- Cross-context calls go through explicit APIs - No deep coupling
Violations to Detect
# ❌ Business logic in controller
def create
if params[:type] == 'premium'
# This belongs in a service
apply_discount
create_invoice
send_welcome_email
end
end
# ❌ External call in model callback
class Order < ApplicationRecord
after_create :notify_warehouse # Dangerous - use job
end
# ❌ Service depending on request
class CheckoutService
def initialize(session) # Too coupled
@session = session
end
end
# ❌ Cross-context dependency
class InvoiceService
def generate
OrderService.new.process # Deep coupling - use events/API
end
end
Packwerk & Modular Monoliths
For larger applications, enforce boundaries with Packwerk:
# packwerk.yml
exclude:
- "vendor/**"
- "spec/**"
- "test/**"
# package.yml in packs/ directory
enforce_dependencies: true
enforce_privacy: true
dependencies:
- packs/orders
- packs/users
Recommendation: For monoliths >50K LOC, use Packwerk. For smaller apps, follow the layer boundaries above.
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.
- 1mo ago First seen · 112 lines · 37 tokens per session scan A 143d49d7fd7d
rb:boundaries is a skill published in the GitHub repository slbug/claude-ruby-grape-rails (7 stars, last pushed 16d ago), licensed MIT. It adds 37 tokens to every session and 737 once invoked, about $0.0001 per session on Opus 5.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-09-03.
Other skills, from other repositories
open-source
Documentation reference for writing Python code using the browser-use open-source library. Use this skill whenever the user needs help with Agent, Browser, or Tools configuration, is writing code that imports from browseruse, asks about @sandbox deployment, supported LLM models, Actor API, custom tools, lifecycle…
omh-backend
This is an OMH backend workflow skill, projected for Agent Skills hosts (Claude Code, Codex, Cursor, opencode, OpenClaw, pi).
pinme-llm
Use this skill when a PinMe project (Worker TypeScript) needs to call OpenRouter-backed LLM APIs, including models, chat/completions, streaming, or OpenRouter web search. Guides AI to generate correct Worker TS code.
design-mcp-server
Design the tool surface, resources, and service layer for a new MCP server. Use when starting a new server, planning a major feature expansion, or when the user describes a domain/API they want to expose via MCP. Produces a design doc at docs/design.md that drives implementation.
api-telemetry
Catalog of OpenTelemetry instrumentation built into framework @cyanheads/mcp-ts-core — spans, metrics, completion logs, env config, runtime caveats, custom instrumentation patterns, and cardinality rules. Use when enabling OTel export, adding custom spans or metrics in services, debugging missing telemetry, looking up…
unicli-explorer
Create new Uni-CLI adapters by exploring websites and APIs. Use when adding support for a new site, desktop app, or service that unicli doesn't cover yet.