Token导航 LogoToken导航

Agent Skill · 研究检索

rails-audit-thoughtbot(Rails 审核 thoughtbot)

用于辅助安全审计、权限检查、凭据风险、认证流程和常见漏洞排查。它适合让 Agent 梳理敏感配置、检查依赖风险、分析鉴权逻辑或生成安全复核清单。使用时不能把工具输出直接当最终结论,涉及密钥、令牌、用户数据或生产系统时,应先确认最小权限、脱敏方式和操作边界。

rails-audit-thoughtbot 是研究检索类 Agent Skill,可用宿主为 Codex、Claude、Cursor、Gemini CLI,通过GitHub 仓库获取,权限为执行命令;许可证信息还不明确,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 49,494。

总安装 649周安装 26GitHub Stars 134下载 210核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
unknown

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:rails-audit-thoughtbot(Rails 审核 thoughtbot)
来源仓库:https://github.com/thoughtbot/rails-audit-thoughtbot
仓库路径:skills/rails-audit-thoughtbot
安装命令:
npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rails-audit-thoughtbot
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rails-audit-thoughtbot

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于执行 Rails 应用的安全审计,识别常见漏洞与配置风险。适合在上线前或定期安全检查中梳理认证、授权与密钥管理。通过命令行工具运行,需具备读取配置文件与依赖清单的权限。不能将工具输出视为绝对结论,必须人工复核高危项。

rails-audit-thoughtbot 属于研究检索类 Skill,可作为该场景下的辅助能力补充。建议隔离测试环境与生产凭证,防止误操作导致数据泄露。

来源仓库内路径:skills/rails-audit-thoughtbot

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 Codex、Claude、Cursor、Gemini CLI;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rail…;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要执行命令,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

rails-audit-thoughtbot 怎么安装?

在终端执行 npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rails-audit-th…。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

rails-audit-thoughtbot 支持哪些 AI 工具?

公开资料标注支持 Codex、Claude、Cursor、Gemini CLI。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

rails-audit-thoughtbot 需要什么权限?

权限级别是执行命令。安装流程涉及命令执行,可能通过 npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rails-audit-thoughtbot 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

rails-audit-thoughtbot 是免费的吗?

公开资料没有标注明确许可证,收费和商用限制都无法确认。正式使用前请到来源仓库核对授权说明。

rails-audit-thoughtbot 用的人多吗?

公开数据是累计安装 649 次,近一周安装 26 次,下载 210 次,GitHub 134 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

rails-audit-thoughtbot 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 同时适配 4 种工具,换客户端不用重新找替代品。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 需要执行命令,装到常用环境前要先评估影响面。
  • 许可证没有明确标注,能不能商用、能不能再分发都不确定。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 Codex,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。

不太适合

  • 不能接受 Skill 在你机器上执行命令的人。
  • 需要明确授权才能用到公司项目里的场景。
  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
rails-audit-thoughtbot

Rails 审核 thoughtbot · 本页

649134执行命令未明确通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

Rails Audit Skill (thoughtbot Best Practices)

Perform comprehensive Ruby on Rails application audits based on thoughtbot's Ruby Science and Testing Rails best practices, with emphasis on Plain Old Ruby Objects (POROs) over Service Objects.

Audit Scope

The audit can be run in two modes:

  1. Full Application Audit: Analyze entire Rails application
  2. Targeted Audit: Analyze specific files or directories

Execution Flow

Step 1: Determine Audit Scope

Ask user or infer from request:

  • Full audit: Analyze all of app/, spec/ or test/, config/, db/, lib/
  • Targeted audit: Analyze specified paths only

Step 2: Collect Optional Metrics (SimpleCov + RubyCritic)

Ask the user both questions upfront in a single AskUserQuestion so they can decide once:

  • Question: "Before starting the audit, would you like to collect automated metrics?\n\n1. SimpleCov — runs your test suite to capture actual code coverage percentages\n2. RubyCritic — analyzes code complexity, duplication, and smells (does not run tests)\n\nBoth are recommended for the most thorough audit."
  • Options: "Yes to both (Recommended)" / "SimpleCov only" / "RubyCritic only" / "Skip both"

Based on the user's choice, spawn the accepted subagents in parallel using the Task tool. Both can run at the same time because SimpleCov modifies the test helper while RubyCritic only reads source files — they don't conflict.

SimpleCov subagent (if accepted):

Read the file agents/simplecov_agent.md and follow all steps described in it. The audit scope is: {{SCOPE from Step 1}}. Return the coverage data in the output format specified in that file.

RubyCritic subagent (if accepted):

Read the file agents/rubycritic_agent.md and follow all steps described in it. The audit scope is: {{SCOPE from Step 1}}. Return the code quality data in the output format specified in that file.

After both agents finish, clean up:

  • If SimpleCov ran: rm -rf coverage/
  • If RubyCritic ran: rm -rf tmp/rubycritic/

Interpreting responses:

  • COVERAGE_FAILED / RUBYCRITIC_FAILED: no data for that tool — use estimation mode (SimpleCov) or omit the section (RubyCritic). Note the failure reason in the report.
  • COVERAGE_DATA: parse and keep in context for Steps 4 and 5 (overall coverage, per-directory breakdowns, lowest-coverage files, zero-coverage files).
  • RUBYCRITIC_DATA: parse and keep in context for Steps 4 and 5 (overall score, per-directory ratings, worst-rated files, top smells, most complex files).

Step 3: Load Reference Materials

Before analyzing, read the relevant reference files:

  • references/code_smells.md - Code smell patterns to identify
  • references/testing_guidelines.md - Testing best practices
  • references/poro_patterns.md - PORO and ActiveModel patterns
  • references/security_checklist.md - Security vulnerability patterns
  • references/rails_antipatterns.md - Rails-specific antipatterns (external services, migrations, performance)

Step 4: Analyze Code by Category

Analyze in this order:

  1. Testing Coverage & Quality

- If SimpleCov data was collected in Step 2, use actual coverage percentages instead of estimates - Cross-reference per-file SimpleCov data: files with 0% coverage = "missing tests" - Check for missing test files - Identify untested public methods - Review test structure (Four Phase Test) - Check for testing antipatterns

  1. Security Vulnerabilities

- SQL injection risks - Mass assignment vulnerabilities - XSS vulnerabilities - Authentication/authorization issues - Sensitive data exposure

  1. Models & Database

- Fat model detection - Missing validations - N+1 query risks - Callback complexity - Law of Demeter violations (voyeuristic models) - If RubyCritic data was collected, flag models with D/F ratings or high complexity

  1. Controllers

- Fat controller detection - Business logic in controllers - Missing strong parameters - Response handling - Monolithic controllers (non-RESTful actions, > 7 actions) - Bloated sessions (storing objects instead of IDs) - If RubyCritic data was collected, flag controllers with D/F ratings or high complexity

  1. Code Design & Architecture

- Service Objects → recommend PORO refactoring - Large classes - Long methods - Feature envy - Law of Demeter violations - Single Responsibility violations - If RubyCritic data was collected, cross-reference D/F rated files and high-complexity files with manual code review findings

  1. Views & Presenters

- Logic in views (PHPitis) - Missing partials for DRY - Helper complexity - Query logic in views

  1. External Services & Error Handling

- Fire and forget (missing exception handling for HTTP calls) - Sluggish services (missing timeouts, synchronous calls that should be backgrounded) - Bare rescue statements - Silent failures (save without checking return value)

  1. Database & Migrations

- Messy migrations (model references, missing down methods) - Missing indexes on foreign keys, polymorphic associations, uniqueness validations - Performance antipatterns (Ruby iteration vs SQL queries) - Bulk operations without transactions

Step 5: Generate Audit Report

Create RAILS_AUDIT_REPORT.md in project root with structure defined in references/report_template.md.

When SimpleCov coverage data was collected in Step 2, use the SimpleCov variant of the Testing section in the report template. When coverage data is not available, use the estimation variant.

When RubyCritic data was collected in Step 2b, include the Code Quality Metrics section in the report using the RubyCritic variant from the report template. When RubyCritic data is not available, use the not available variant.

Severity Definitions

  • Critical: Security vulnerabilities, data loss risks, production-breaking issues
  • High: Performance issues, missing tests for critical paths, major code smells
  • Medium: Code smells, convention violations, maintainability concerns
  • Low: Style issues, minor improvements, suggestions

Key Detection Patterns

Service Object → PORO Refactoring

When you find classes in app/services/:

  • Classes named *Service, *Manager, *Handler
  • Classes with only .call or .perform methods
  • Recommend: Rename to domain nouns, include ActiveModel::Model

Fat Model Detection

Models with:

  • More than 200 lines
  • More than 15 public methods
  • Multiple unrelated responsibilities
  • Recommend: Extract to POROs using composition

Fat Controller Detection

Controllers with:

  • Actions over 15 lines
  • Business logic (not request/response handling)
  • Multiple instance variable assignments
  • Recommend: Extract to form objects or domain models

Missing Test Detection

For each Ruby file in app/:

  • Check for corresponding _spec.rb or _test.rb
  • Check for tested public methods
  • Report untested files and methods

Analysis Commands

Use Claude Code's built-in tools instead of shell commands — they're faster, handle permissions correctly, and give better output:

  • Find Ruby files by type: Use the Glob tool with patterns like app/models/**/*.rb, app/controllers/**/*.rb, app/services/**/*.rb
  • Find test files: Use Glob with spec/**/*_spec.rb or test/**/*_test.rb
  • Search for patterns in code: Use the Grep tool (e.g., search for rescue\s*$, \.save\b, params\.permit!)
  • Read and count lines in files: Use the Read tool to inspect files; count lines from the output
  • Find long files: Use Glob to list all app/**/*.rb files, then Read each to check line count

Report Output

Always save the audit report to RAILS_AUDIT_REPORT.md in the project root and present it to the user.

平台分布

Codex

39.17%
按下载量换算82

Claude

28.36%
按下载量换算60

Cursor

18.55%
按下载量换算39

Gemini CLI

10.41%
按下载量换算22

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/thoughtbot/rails-audit-thoughtbot --skill rails-audit-thoughtbot 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills