Configure a Rails project to work with Conductor (parallel coding agents)
56
48%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/conductor-setup/SKILL.mdSet up this Rails project for Conductor, the Mac app for parallel coding agents.
conductor.json, bin/conductor-setup, and script/server scaffolding for a Rails repo.Create conductor.json in the project root if it doesn't already exist:
{
"scripts": {
"setup": "bin/conductor-setup",
"run": "script/server"
}
}Create bin/conductor-setup if it doesn't already exist:
#!/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 installMake it executable with chmod +x bin/conductor-setup.
Create the script directory if needed, then create script/server if it doesn't already exist:
#!/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/devMake it executable with chmod +x script/server.
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:
If this file exists and configures Redis, update it to use:
redis_url = ENV.fetch('REDIS_URL', 'redis://localhost:6379/0')If this file exists, update the development adapter to use:
development:
adapter: redis
url: <%= ENV.fetch('REDIS_URL', 'redis://localhost:6379/1') %>If this file configures Redis for caching, update to use:
config.cache_store = :redis_cache_store, { url: ENV.fetch('REDIS_URL', 'redis://localhost:6379/0') }If this file exists and configures a Redis cache store, update to use:
Rack::Attack.cache.store = ActiveSupport::Cache::RedisCacheStore.new(url: ENV.fetch('REDIS_URL', 'redis://localhost:6379/0'))script/ directory if it doesn't exist.After creating the files:
script/server to verify it starts without errorsENV['REDIS_URL'] or ENV.fetch('REDIS_URL', ...)93c57b2
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.