Build and review Rails webhook systems with safe delivery, retries, observability, and tenant-aware security controls. Use when adding webhook endpoints, outbound deliveries, retry logic, or webhook admin tooling.
Automate repetitive workflows and reduce manual effort
Example: Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example: Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example: Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
Time estimate: 15-45 minutes depending on use case complexity
Prerequisites
Submit your Claude Code skill and start earning
epx add marckohlbrugge/37signals-skills/rails-webhooksCompatible with
Supported agents
| name | rails-webhooks |
| description | Build and review Rails webhook systems with safe delivery, retries, observability, and tenant-aware security controls. Use when adding webhook endpoints, outbound deliveries, retry logic, or webhook admin tooling. |
| disable-model-invocation | true |
Use for outbound/inbound webhook architecture and reliability. Modeled on Fizzy's event-driven webhook pipeline (with Campfire's simpler bot webhooks as contrast).
Delivery row per webhook, each with a state enum (pending in_progress completed errored — string-backed via index_by(&:itself)).after_create_commit :deliver_later — persist first, deliver second, so state survives crashes and retries.ActiveJob::Continuable: cursor over matching webhooks (find_each(start: step.cursor) + step.advance!) so a mid-batch crash resumes, not restarts.webhooks queue so slow destinations can't starve other work.completed with a symbolic error (response: { error: :connection_timeout }). The delivery ran; the destination failed. Do not retry the job.errored!, re-raise so ActiveJob retries.first_failure_at per webhook; auto-deactivate after N failures spanning a minimum window (Fizzy: 10 failures over 1+ hour).resource :activation).normalizes :subscribed_actions, with: ->(v) { Array.wrap(v).map(&:to_s).uniq & PERMITTED_ACTIONS }.for_slack?, for_campfire?), then vary content type, payload format (JSON/form/HTML), and rendering template per destination. Don't fork the delivery code per integration.script_name so links in payloads work.construct_event-style), then re-fetch canonical state from the provider's API instead of trusting payload content or ordering.text/plain/text/html become replies), and prevent loops — never trigger a bot from its own messages.delete_all on a stale scope).AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionrails-webhooksExecute the skills CLI command in your project's root directory to begin installation:
epx add marckohlbrugge/37signals-skills/rails-webhooksFetches rails-webhooks from marckohlbrugge/37signals-skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
.cursor/skills/rails-webhooks
Restart Cursor to activate rails-webhooks. Access via /rails-webhooksin your agent's command palette.
Learn more:View source on GitHubSkills CLI docsAbout CursorWhat are agent skills?
Steps
Common Pitfalls
✓ Do
✗ Don't
💡 Pro Tips
✓ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
✗ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
dhh
marckohlbrugge/37signals-skills · dhh · same repo
rails-best-practices-core
marckohlbrugge/37signals-skills · rails-best-practices-core · same repo
rails-migrations
marckohlbrugge/37signals-skills · rails-migrations · same repo
rails-jobs
marckohlbrugge/37signals-skills · rails-jobs · same repo
rails-security-multitenancy
marckohlbrugge/37signals-skills · rails-security-multitenancy · same repo
rails-testing
marckohlbrugge/37signals-skills · rails-testing · same repo
rails-webhooks has been reliable in day-to-day use. Documentation quality is above average for community skills.
rails-webhooks fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
rails-webhooks fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
I recommend rails-webhooks for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
Registry listing for rails-webhooks matched our evaluation — installs cleanly and behaves as described in the markdown.
rails-webhooks reduced setup friction for our internal harness; good balance of opinion and flexibility.
rails-webhooks fits our agent workflows well — practical, well scoped, and easy to wire into existing repos.
rails-webhooks reduced setup friction for our internal harness; good balance of opinion and flexibility.
Registry listing for rails-webhooks matched our evaluation — installs cleanly and behaves as described in the markdown.
Solid pick for teams standardizing on skills: rails-webhooks is focused, and the summary matches what you get after install.
showing 1-10 of 75