Installation Spec: The Remote AI Development Stack

Everything you need to reproduce the AI development setup from the blog post. Agent-executable on a fresh macOS machine.

Companion to My AI Dev Setup. Only covers what’s needed for the stack described there.

Prerequisites

  • macOS 14+ (Apple Silicon)
  • Homebrew installed
  • GitHub CLI authenticated (gh auth login)
  • Claude Code installed (npm install -g @anthropic-ai/claude-code)

1. Core tools

brew install fish git gh lazygit rtk worktrunk yadm fzf zoxide bat eza ripgrep schpet/tap/linear
  • fish — shell
  • lazygit — git TUI (runs in the right pane)
  • rtk — token optimizer for Claude Code
  • worktrunk — git worktree manager with cmux integration
  • linear — Linear CLI for ticket fetching (used by wtn)
  • yadm — dotfile manager

Set fish as default shell:

echo /opt/homebrew/bin/fish | sudo tee -a /etc/shells
chsh -s /opt/homebrew/bin/fish

2. cmux

Install from cmux.dev. Native macOS app, built on libghostty.

Verify: cmux --version


3. OpenClaw

Install from openclaw.ai — both the macOS app and the CLI.

openclaw onboard --install-daemon

The app runs as a LaunchAgent (boots on login, stays alive). The CLI handles onboarding, skill management, and gateway configuration. Skills directory: ~/.agents/skills/.


4. Fish shell setup

Clone the dotfiles repo or grab the relevant files:

Install fish plugins:

fish -c "curl -sL https://raw.githubusercontent.com/jorgebucaran/fisher/main/functions/fisher.fish | source && fisher install jorgebucaran/fisher"

Save to ~/.config/fish/fish_plugins:

jorgebucaran/fisher
ilancosman/tide@v6
jorgebucaran/autopair.fish
meaningful-ooo/sponge
nickeb96/puffer-fish

Then: fish -c "fisher update"


5. Claude Code plugins

claude plugin install context-mode@context-mode      # Context window virtualization
claude plugin install claude-hud@claude-hud          # Status line
claude plugin install plannotator@plannotator        # Plan annotation & code review UI
claude plugin install impeccable@impeccable          # Design fluency skills
claude plugin install worktrunk@worktrunk            # Worktree integration
claude plugin install telegram@claude-plugins-official  # Telegram notifications

RTK is installed via homebrew (step 1) and works transparently through Claude Code hooks.


6. Workflow skills

npx skills add roderik/roderik.github.io

This installs the full workflow skill set:

SkillWhat it does
brainstormIdea → PRD → Linear project + tickets
executeLinear ticket → plan → build → verify → PR
shepherdPR babysitting until merge-ready
plannerResearch-first planning with 7 parallel reviewers
verifierCompletion checklists + full CI verification
agent-reviewsPR review resolution (bot + human) — installed separately
prd-builderPRD drafting through iterative brainstorm
task-builderPRD decomposition into tickets
tddTest-driven development enforcement
testingCI tier management (fast/checkpoint/full)
sweepCode quality review
adversarial-review7-lens review framework

7. Verify

fish --version
cmux --version
claude --version
rtk --version
rtk gain
wt --version
launchctl list | grep openclaw

Quick start

The fish wrapper functions (in the dotfiles) handle worktree creation, cmux layout, and agent launch in one command:

# Start work on a Linear ticket — creates worktree, sets up cmux, launches Claude via ACP
wtn PRD-1234

# Create a plain worktree with a branch name
wtc my-feature

# Pick an open PR (fzf picker) and check it out as a worktree
wtg

# Done — remove worktree, clean up branch, close cmux workspace
wtr

Each command calls __wt_cmux_setup automatically: Claude/Codex in the main pane, lazygit on the right, terminal at the bottom. wtn goes further — it fetches the ticket from Linear, names the workspace after it, and launches Claude Code with /execute via ACP so you can follow along from Telegram.


Companion to My AI Dev Setup. Last updated: 2026-03-22.