Local Setup
Setting up OpenCode Portal on your local machine
Local Setup
Get Portal running on your local machine in under a minute.
Prerequisites
You need OpenCode installed on your system. Install it using one of these methods:
# Using curl (macOS/Linux)
curl -fsSL https://opencode.ai/install | bash
# Using bun
bun install -g opencode
# Using Homebrew (macOS)
brew install sst/tap/opencodeNote: OpenPortal works best when paired with Bun. Node.js may have some rough edges.
Quick Start
The fastest way to get started:
# Navigate to your project directory
cd /path/to/your/project
# Run Portal with bunx
bunx openportalPortal will automatically:
- Find available ports (defaults: 3000 for Web UI, 4000 for OpenCode)
- Start the OpenCode server
- Start the Web UI
- Display the access URLs
Global Installation
For frequent use, install Portal globally:
bun install -g openportalThen run it from any project directory:
cd /path/to/your/project
openportalCommands
Default Command
Start both OpenCode server and Web UI:
openportal # Start in current directory
openportal . # Same as above
openportal /path/to/project # Start in specific directoryRun Command
Start only the OpenCode server (no Web UI):
openportal run # Current directory
openportal run -d ./my-project # Specific directoryStop Command
Stop running instances:
openportal stop # Stop instance for current directory
openportal stop --name myapp # Stop instance by nameList Command
List all running instances:
openportal list
openportal ls # ShorthandClean Command
Remove stale entries from the config:
openportal cleanCLI Options
openportal [command] [options]
Options:
-h, --help Show help message
-d, --directory <path> Working directory (default: current directory)
-p, --port <port> Web UI port (default: 3000, auto-finds if busy)
--opencode-port <port> OpenCode server port (default: 4000, auto-finds if busy)
--hostname <host> Hostname to bind (default: 0.0.0.0)
--name <name> Instance name (default: directory name)Examples
# Use custom ports
openportal --port 8080 --opencode-port 5000
# Bind to specific hostname
openportal --hostname 127.0.0.1
# Give the instance a custom name
openportal --name my-project
# Start OpenCode only with custom port
openportal run --opencode-port 5000
# Specify a different project directory
openportal -d /path/to/other/projectTroubleshooting
OpenCode not found
If you see an error about OpenCode, install it first:
curl -fsSL https://opencode.ai/install | bashPort already in use
Portal automatically finds available ports. If you want specific ports and they're in use, specify different ones:
openportal --port 3001 --opencode-port 4001Instance already running
If Portal detects an existing instance for the directory, it will show the existing instance info instead of starting a new one. Use openportal stop first if you want to restart.