From rails-agent-skills
Orchestrates Rails project setup: Bundler dependency install, database config, app scaffolding, dev environment validation, GitHub Actions/GitLab CI pipelines for linting, testing, security scanning. For new projects, rails new, or CI/CD wiring.
npx claudepluginhub igmarin/rails-agent-skills --plugin rails-agent-skillsThis skill uses the workspace's default tool permissions.
Orchestrates the full Rails project setup from context gathering through CI/CD configuration.
Generates a generic Rails project onboarding runbook for local dev setup covering Docker, environment variables, database, tests, linters, and IDE extensions. Useful for new developers or project setup.
Generates complete CI/CD pipelines for Node.js, Python, Go, Rust projects using GitHub Actions, auto-detecting project type and recommending platforms like Vercel or Netlify with lint, test, build, deploy stages.
Automates CI/CD pipeline setup with quality gates for linting, type checking, testing, building, security audits, and deployments using GitHub Actions. Use for new projects, modifying pipelines, or debugging failures.
Share bugs, ideas, or general feedback.
Orchestrates the full Rails project setup from context gathering through CI/CD configuration.
rails new or existing repo clone)Load project context first:
Inline fallback (if sub-skills are unavailable):
# Verify Ruby version matches .ruby-version
ruby -v
# Install dependencies
bundle install
# Check database connectivity
rails db:create db:migrate
# Confirm test runner is operational
bundle exec rspec --dry-run
# Load env vars (copy example if missing)
cp .env.example .env 2>/dev/null || true
HARD GATE — Environment Check:
.ruby-version)config/credentials.yml.enc or .env)If environment check FAILS: Fix the failing item above before proceeding to Phase 2.
Proceed only after environment check passes.
CI/CD Proposal Checkpoint — Decide on pipeline approach:
Configure CI pipeline (linting, testing, security, migrations):
# .github/workflows/ci.yml
name: CI
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true
- run: bundle exec rails db:create db:migrate
- run: bundle exec rspec
- run: bundle exec rubocop
- run: bundle exec brakeman --no-pager
- run: bundle exec bundle-audit check --update
# .github/workflows/cd.yml
name: CD
on:
push:
branches: [main]
jobs:
deploy-staging:
runs-on: ubuntu-latest
environment: staging
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true
- run: bundle exec rails db:migrate
env:
RAILS_ENV: staging
DATABASE_URL: ${{ secrets.STAGING_DATABASE_URL }}
- run: echo "Deploy to staging here (e.g. Heroku, Fly.io, Kamal)"
deploy-production:
runs-on: ubuntu-latest
needs: deploy-staging
environment: production # Requires manual approval gate in GitHub
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: .ruby-version
bundler-cache: true
- run: bundle exec rails db:migrate
env:
RAILS_ENV: production
DATABASE_URL: ${{ secrets.PRODUCTION_DATABASE_URL }}
- run: echo "Deploy to production here"
# Rollback: re-run previous deployment job or use platform CLI
Verify everything works end-to-end:
# Local development
bundle install
rails db:create db:migrate
rails server # Should start without errors
bundle exec rspec # Should run (even if 0 tests)
# CI simulation (if possible locally)
act push # GitHub Actions local runner (optional)
Setup Checklist: Marked file SETUP_CHECKLIST.md with:
| Predecessor | This Skill | Successor |
|---|---|---|
| None (entry point) | rails-setup-flow | rails-tdd-loop (start developing) |
| None (entry point) | rails-setup-flow | create-prd (plan features first) |
From AGENTS.md: This is the setup workflow. For development, chain to rails-tdd-loop.