selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Paseo logo

Self-host Paseo

v0.13.2

Desktop and mobile control plane for coding agents

ReleaseOpen SourceOther
docker run -d --name paseo -p 6767:6767 -e PASEO_PASSWORD=change-me -v "$PWD/paseo-home:/home/paseo" -v "$PWD:/workspace" ghcr.io/getpaseo/paseo:latest
Updated10 hours ago
LanguageTypescript
Setup difficultyEasy
MobileNative app
Stars
22 267
Port
6767 (Daemon HTTP/WebSocket API and bundled web UI)
Docker
ghcr.io/getpaseo/paseo

What is Paseo?

Should you self-host Paseo?

Paseo scores 72/100 on selfhost.directory (how scoring works) and ranks #22 of 209 in AI Agents. It has 22 267 GitHub stars.

It shipped 4 stable releases in the past year. The latest, v0.13.2, came out on 26 October 2026. New versions land roughly every 2 days.

Setup is easy: most people get it running in one sitting. An official Docker image is available. It is Other-licensed and written mostly in Typescript.

Its closest alternative on selfhost.directory is Orca (91/100, 108 555 stars). It scores higher overall, so compare the two before you pick. See Paseo vs Orca side by side.

Features

  • Agent orchestration
  • Built-in browser
  • Built-in code editor
  • CLI
  • Diff review
  • Integrated terminal
  • MCP Server
  • Multi-provider coding agent support
  • Parallel agents in git worktrees
  • Plugin System
  • Pull request workflow
  • Self-hosted web UI
  • TypeScript SDK
  • Voice Control

Paseo README

How to install Paseo

Install Paseo with Docker

Environment variables
PASEO_PASSWORD, PASEO_WEB_UI_ENABLED, PASEO_HOSTNAMES
docker run -d --name paseo \
  -p 6767:6767 \
  -e PASEO_PASSWORD=change-me \
  -v "$PWD/paseo-home:/home/paseo" \
  -v "$PWD:/workspace" \
  ghcr.io/getpaseo/paseo:latest

Base image leaves agent CLIs out; extend it with the agent CLIs you use. Multi-arch linux/amd64 and linux/arm64.

How to configure Paseo

  • daemon.hostnamesAllowed hostnames for host-header validation (old daemon.allowedHosts is a deprecated alias)

    Allowed hostnames for host-header validation (old daemon.allowedHosts is a deprecated alias)

  • daemon.listen127.0.0.1:6767Config-file setting for the daemon listen address

    Config-file setting for the daemon listen address

  • daemon.relay.enabledPersisted relay enablement; new homes write false

    Persisted relay enablement; new homes write false

    values: true|false

  • features.webUi.enabledServe the browser web client from the daemon's HTTP server

    Serve the browser web client from the daemon's HTTP server

    values: true|false

  • OPENAI_API_KEYOverride OpenAI provider key

    Override OpenAI provider key

  • OPENAI_STT_API_KEYOpenAI speech-to-text endpoint key (dictation and voice mode STT)

    OpenAI speech-to-text endpoint key (dictation and voice mode STT)

  • OPENAI_TTS_API_KEYOpenAI text-to-speech endpoint key (voice mode TTS)

    OpenAI text-to-speech endpoint key (voice mode TTS)

  • PASEO_ALLOWED_HOSTSDeprecated alias for PASEO_HOSTNAMES

    Deprecated alias for PASEO_HOSTNAMES

  • PASEO_DICTATION_LANGUAGEOverride dictation STT language

    Override dictation STT language

  • PASEO_DICTATION_LOCAL_STT_MODELOverride local dictation STT model

    Override local dictation STT model

  • PASEO_DICTATION_STT_PROVIDEROverride dictation STT provider selection (local or openai)

    Override dictation STT provider selection (local or openai)

  • PASEO_HOME~/.paseoSet the Paseo home directory (config and state)

    Set the Paseo home directory (config and state)

  • PASEO_HOSTSet the daemon target for CLI commands

    Set the daemon target for CLI commands

  • PASEO_HOSTNAMESOverride or extend daemon.hostnames for host-header validation

    Override or extend daemon.hostnames for host-header validation

  • PASEO_LISTENOverride daemon.listen

    Override daemon.listen

  • PASEO_LOCAL_MODELS_DIRControl local model directory

    Control local model directory

  • PASEO_LOG_CONSOLE_LEVELOverride log.console.level

    Override log.console.level

  • PASEO_LOG_FILE_LEVELOverride log.file.level

    Override log.file.level

  • PASEO_LOG_FILE_PATHOverride log.file.path

    Override log.file.path

  • PASEO_LOG_FILE_ROTATE_COUNTOverride log.file.rotate.maxFiles

    Override log.file.rotate.maxFiles

  • PASEO_LOG_FILE_ROTATE_SIZEOverride log.file.rotate.maxSize

    Override log.file.rotate.maxSize

  • PASEO_PASSWORDOn the daemon, the password to require (plaintext, hashed at startup); on the CLI, the password used to connect when the host URI has none

    On the daemon, the password to require (plaintext, hashed at startup); on the CLI, the password used to connect when the host URI has none

  • PASEO_RELAY_ENABLEDEnable or disable the outbound relay for a daemon launch

    Enable or disable the outbound relay for a daemon launch

    values: true|false

  • PASEO_TRUSTED_PROXIESConfigure trusted reverse proxy ranges for X-Forwarded-* headers

    Configure trusted reverse proxy ranges for X-Forwarded-* headers

  • PASEO_VOICE_LANGUAGEOverride voice STT language

    Override voice STT language

  • PASEO_VOICE_LLM_PROVIDEROverride voice LLM provider (claude, codex, opencode)

    Override voice LLM provider (claude, codex, opencode)

  • PASEO_VOICE_LOCAL_STT_MODELOverride local voice STT model

    Override local voice STT model

  • PASEO_VOICE_LOCAL_TTS_MODELOverride local voice TTS model

    Override local voice TTS model

  • PASEO_VOICE_LOCAL_TTS_SPEAKER_IDOptional local voice TTS tuning

    Optional local voice TTS tuning

  • PASEO_VOICE_LOCAL_TTS_SPEEDOptional local voice TTS tuning

    Optional local voice TTS tuning

  • PASEO_VOICE_STT_PROVIDEROverride voice STT provider selection (local or openai)

    Override voice STT provider selection (local or openai)

  • PASEO_VOICE_TTS_PROVIDEROverride voice TTS provider selection (local or openai)

    Override voice TTS provider selection (local or openai)

  • PASEO_WEB_UI_DIST_DIROverride the daemon web UI build directory

    Override the daemon web UI build directory

  • PASEO_WEB_UI_ENABLEDfalseEnable or disable the daemon-served web UI

    Enable or disable the daemon-served web UI

    values: true|false

  • passwordDaemon auth setting in config.json under daemon.auth: bcrypt hash that all HTTP and WebSocket clients must present (set via `paseo daemon set-password` or PASEO_PASSWORD)

    Daemon auth setting in config.json under daemon.auth: bcrypt hash that all HTTP and WebSocket clients must present (set via `paseo daemon set-password` or PASEO_PASSWORD)

  • worktrees.root$PASEO_HOME/worktreesWhere new git worktrees are created

    Where new git worktrees are created

Paseo releases & version history

FAQ

How do worktrees work?

When you launch an agent with the worktree option, Paseo creates a git worktree and runs the agent inside it on an isolated branch, leaving your main working directory untouched.

Can I get banned for using Paseo?

The project says it uses each provider's officially supported integration, does not bypass terms of service, and never extracts tokens or calls inference APIs directly.

Do I need git or GitHub?

No. Paseo works in any directory, and worktrees are optional and only relevant if you use git.

Can I connect from outside my network?

Yes, via the hosted end-to-end encrypted relay, your own tunnel such as Tailscale or Cloudflare Tunnel, or by exposing the daemon port directly.

How does voice work?

Voice runs locally on your device by default, transcribing speech and sending text to your agent; OpenAI speech providers can be configured optionally.

Do I need the desktop app?

No. You can run the daemon headless and connect from any client; the desktop app just bundles the daemon with a UI.

How does Paseo run providers?

It runs the provider CLIs installed on your machine exactly as you would normally, without modifying their behavior.

What agents does it support?

It has custom implementations for Claude, Codex, OpenCode, Pi, OMP, Antigravity, and Muse Code, and supports many more via ACP.

Does my code leave my machine?

No. Agents run locally and talk to their own APIs as usual; remote access can use the optional end-to-end encrypted relay, your local network, or your own tunnel.

Is this free?

Yes, Paseo is free and open source; you supply your own agent provider installs and credentials, and voice runs local-first by default.

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…