By brimtown
Launch and manage Dwarf Fortress-inspired ASCII simulations in tmux sessions overseen by Claude: strike the earth to generate dramatic fortress names and embark on new worlds, or return to the depths to resume saves via interactive picker—all via CLI commands powered by a local Bun/TypeScript MCP server.
npx claudepluginhub joshuarweaver/cascade-content-creation-misc-1 --plugin brimtown-claude-fortressStrike the earth! Command dwarves through natural language. Claude Code acts as your fortress overseer in this Dwarf Fortress-inspired ASCII simulation. Glory or death awaits. ⛏️
![]() |
Easiest: Paste this URL into Claude Code and ask it to install the dependencies:
https://github.com/brimtown/claude-fortress
Claude will handle dependencies and setup for your platform. Proceed to Add the Plugin below.
Manual install (if you prefer):
# macOS
brew install oven-sh/bun/bun tmux
# Linux
curl -fsSL https://bun.sh/install | bash && sudo apt install tmux
Option 1: Windows Terminal (Recommended)
Most Windows 11 users already have Windows Terminal. For Windows 10, install it from the Microsoft Store.
# Install Bun
irm bun.sh/install.ps1 | iex
Run Claude Code from PowerShell inside Windows Terminal. The fortress will open in a split pane.
Note: Each
/embarkcreates a new pane. Close old fortress panes manually.
Option 2: WSL
If you already have WSL set up, this gives the best experience with full tmux support:
# Inside WSL
curl -fsSL https://bun.sh/install | bash && sudo apt install tmux
Run Claude Code from inside WSL (wsl → claude).
Not supported: Git Bash does not support split-pane display.
In Claude Code:
/plugin marketplace add brimtown/claude-fortress
/plugin install claude-fortress@claude-fortress
/plugin marketplace update claude-fortress
/plugin to open the plugin managerStart tmux (macOS/Linux/WSL) or use Windows Terminal, launch Claude Code, then:
/claude-fortress:embark
Or just say "Strike the earth!"
Claude spawns a fortress and you command it naturally:
| Command | Description |
|---|---|
/claude-fortress:embark | Embark on a new fortress |
/claude-fortress:embark Irondeep | Embark with a custom name |
/claude-fortress:resume | Resume a saved fortress |
Or trigger naturally with: "strike the earth", "fortress", "embark", "resume my fortress"
Use /claude-fortress:resume to open the save picker and return to a previous fortress. The picker shows all your saved fortresses sorted by most recent:
┌─────────────────────────────────────────┐
│ FORTRESS ARCHIVES - 5 saves found │
├─────────────────────────────────────────┤
│ > Irondeep Y252 7/7 Active │
│ Doomgate Y251 0/8 FALLEN │
│ Copperhold Y250 12/12 Active │
└─────────────────────────────────────────┘
[↑/↓] Navigate [Enter] Resume [D] Delete
~/.claude/fortress-saves/| Problem | Solution |
|---|---|
| "Raw mode not supported" | Run inside tmux (macOS/Linux/WSL) |
| "Windows Terminal required" | Install from https://aka.ms/terminal |
| Socket not created | Run cd canvas && bun install |
| Bun not found | Restart terminal after install |
| Git Bash: no split pane | Use Windows Terminal or WSL instead |
git clone https://github.com/brimtown/claude-fortress.git
cd claude-fortress && ./install.sh
See DEVELOPER_NOTES.md for architecture details and specs/ for game system documentation.
MIT — Inspired by Dwarf Fortress, built on claude-canvas
Team-oriented workflow plugin with role agents, 27 specialist agents, ECC-inspired commands, layered rules, and hooks skeleton.
Admin access level
Server config contains admin-level keywords
Upstash Context7 MCP server for up-to-date documentation lookup. Pull version-specific documentation and code examples directly from source repositories into your LLM context.
Semantic search for Claude Code conversations. Remember past discussions, decisions, and patterns.