conductor-setup
Configure a Rails project to work with Conductor (parallel coding agents)
About this skill
This skill automates the initial setup required to integrate a Ruby on Rails project with Conductor, a specialized Mac application designed to orchestrate parallel coding agents. It ensures the project is ready for agent-driven development by creating or updating two essential files: 1. **`conductor.json`**: A configuration file placed in the project root, defining scripts for setup and running the Rails server under Conductor's management. 2. **`bin/conductor-setup`**: An executable bash script that handles specific setup tasks, such as symlinking environment files and managing dependencies, ensuring a smooth operational environment for Conductor's agents.
Best use case
To prepare a Ruby on Rails project for development using Conductor and its parallel coding agents, streamlining the initial configuration process.
Configure a Rails project to work with Conductor (parallel coding agents)
The Ruby on Rails project will be successfully configured for Conductor. This includes the creation or update of `conductor.json` in the project root and an executable `bin/conductor-setup` script, enabling the project to be managed and interacted with by Conductor's parallel coding agents.
Practical example
Example input
Please configure this Rails project to work with Conductor for parallel coding agents.
Example output
Rails project successfully configured for Conductor. Created/updated `conductor.json` and `bin/conductor-setup` to enable parallel agent development.
When to use this skill
- When starting a new Ruby on Rails project that will utilize Conductor for parallel agent-driven development. Or, when integrating an existing Rails project with Conductor for the first time.
When not to use this skill
- If the project is not a Ruby on Rails application. If Conductor is not intended for use with the project. If the project has already been configured for Conductor, unless a re-initialization or update to the Conductor configuration is specifically required.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/conductor-setup/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How conductor-setup Compares
| Feature / Agent | conductor-setup | Standard Approach |
|---|---|---|
| Platform Support | Claude, GitHub Copilot, DeepSeek, Aider, Continue | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | easy | N/A |
Frequently Asked Questions
What does this skill do?
Configure a Rails project to work with Conductor (parallel coding agents)
Which AI agents support this skill?
This skill is designed for Claude, GitHub Copilot, DeepSeek, Aider, Continue.
How difficult is it to install?
The installation complexity is rated as easy. You can find the installation instructions above.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
Related Guides
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
Best AI Skills for Claude
Explore the best AI skills for Claude and Claude Code across coding, research, workflow automation, documentation, and agent operations.
AI Agent for YouTube Script Writing
Find AI agent skills for YouTube script writing, video research, content outlining, and repeatable channel production workflows.
SKILL.md Source
Set up this Rails project for Conductor, the Mac app for parallel coding agents.
## When to Use
- You need to configure a Rails project so it runs correctly inside Conductor workspaces.
- The project should support parallel coding agents with isolated ports, Redis settings, and shared secrets.
- You want the standard `conductor.json`, `bin/conductor-setup`, and `script/server` scaffolding for a Rails repo.
# What to Create
## 1. conductor.json (project root)
Create `conductor.json` in the project root if it doesn't already exist:
```json
{
"scripts": {
"setup": "bin/conductor-setup",
"run": "script/server"
}
}
```
## 2. bin/conductor-setup (executable)
Create `bin/conductor-setup` if it doesn't already exist:
```bash
#!/bin/bash
set -e
# Symlink .env from repo root (where secrets live, outside worktrees)
[ -f "$CONDUCTOR_ROOT_PATH/.env" ] && ln -sf "$CONDUCTOR_ROOT_PATH/.env" .env
# Symlink Rails master key
[ -f "$CONDUCTOR_ROOT_PATH/config/master.key" ] && ln -sf "$CONDUCTOR_ROOT_PATH/config/master.key" config/master.key
# Install dependencies
bundle install
npm install
```
Make it executable with `chmod +x bin/conductor-setup`.
## 3. script/server (executable)
Create the `script` directory if needed, then create `script/server` if it doesn't already exist:
```bash
#!/bin/bash
# === Port Configuration ===
export PORT=${CONDUCTOR_PORT:-3000}
export VITE_RUBY_PORT=$((PORT + 1000))
# === Redis Isolation ===
if [ -n "$CONDUCTOR_WORKSPACE_NAME" ]; then
HASH=$(printf '%s' "$CONDUCTOR_WORKSPACE_NAME" | cksum | cut -d' ' -f1)
REDIS_DB=$((HASH % 16))
export REDIS_URL="redis://localhost:6379/${REDIS_DB}"
fi
exec bin/dev
```
Make it executable with `chmod +x script/server`.
## 4. Update Rails Config Files
For each of the following files, if they exist and contain Redis configuration, update them to use `ENV.fetch('REDIS_URL', ...)` or `ENV['REDIS_URL']` with a fallback:
### config/initializers/sidekiq.rb
If this file exists and configures Redis, update it to use:
```ruby
redis_url = ENV.fetch('REDIS_URL', 'redis://localhost:6379/0')
```
### config/cable.yml
If this file exists, update the development adapter to use:
```yaml
development:
adapter: redis
url: <%= ENV.fetch('REDIS_URL', 'redis://localhost:6379/1') %>
```
### config/environments/development.rb
If this file configures Redis for caching, update to use:
```ruby
config.cache_store = :redis_cache_store, { url: ENV.fetch('REDIS_URL', 'redis://localhost:6379/0') }
```
### config/initializers/rack_attack.rb
If this file exists and configures a Redis cache store, update to use:
```ruby
Rack::Attack.cache.store = ActiveSupport::Cache::RedisCacheStore.new(url: ENV.fetch('REDIS_URL', 'redis://localhost:6379/0'))
```
# Implementation Notes
- **Don't overwrite existing files**: Check if conductor.json, bin/conductor-setup, and script/server exist before creating them. If they exist, skip creation and inform the user.
- **Rails config updates**: Only modify Redis-related configuration. If a file doesn't exist or doesn't use Redis, skip it gracefully.
- **Create directories as needed**: Create `script/` directory if it doesn't exist.
# Verification
After creating the files:
1. Confirm all Conductor files exist and scripts are executable
2. Run `script/server` to verify it starts without errors
3. Check that Rails configs properly reference `ENV['REDIS_URL']` or `ENV.fetch('REDIS_URL', ...)`Related Skills
moodle-external-api-development
This skill guides you through creating custom external web service APIs for Moodle LMS, following Moodle's external API framework and coding standards.
mobile-developer
Develop React Native, Flutter, or native mobile apps with modern architecture patterns. Masters cross-platform development, native integrations, offline sync, and app store optimization.
makepad-platform
CRITICAL: Use for Makepad cross-platform support. Triggers on: makepad platform, makepad os, makepad macos, makepad windows, makepad linux, makepad android, makepad ios, makepad web, makepad wasm, makepad metal, makepad d3d11, makepad opengl, makepad webgl, OsType, CxOs, makepad 跨平台, makepad 平台支持
makepad-layout
CRITICAL: Use for Makepad layout system. Triggers on: makepad layout, makepad width, makepad height, makepad flex, makepad padding, makepad margin, makepad flow, makepad align, Fit, Fill, Size, Walk, "how to center in makepad", makepad 布局, makepad 宽度, makepad 对齐, makepad 居中
makepad-font
CRITICAL: Use for Makepad font and text rendering. Triggers on: makepad font, makepad text, makepad glyph, makepad typography, font atlas, text layout, font family, font size, text shaping, makepad 字体, makepad 文字, makepad 排版, makepad 字形
graphql-architect
Master modern GraphQL with federation, performance optimization, and enterprise security. Build scalable schemas, implement advanced caching, and design real-time systems.
git-pr-workflows-pr-enhance
You are a PR optimization expert specializing in creating high-quality pull requests that facilitate efficient code reviews. Generate comprehensive PR descriptions, automate review processes, and ensu
git-advanced-workflows
Master advanced Git techniques to maintain clean history, collaborate effectively, and recover from any situation with confidence.
debugging-toolkit-smart-debug
Use when working with debugging toolkit smart debug
debugger
Debugging specialist for errors, test failures, and unexpected behavior. Use proactively when encountering any issues.
comprehensive-review-pr-enhance
Generate structured PR descriptions from diffs, add review checklists, risk assessments, and test coverage summaries. Use when the user says "write a PR description", "improve this PR", "summarize my changes", "PR review", "pull request", or asks to document a diff for reviewers.
bun-development
Fast, modern JavaScript/TypeScript development with the Bun runtime, inspired by [oven-sh/bun](https://github.com/oven-sh/bun).