Skip to main content
GenosOS ships a single binary entry point. When running from source, use bun genosos.mjs <command>. When installed globally via npm, use genosos <command>.
# From source
bun genosos.mjs <command> [flags]

# Global install
genosos <command> [flags]

Commands

CommandDescription
gatewayStart the AI gateway server on port 18789
agentSend a message to the agent from the CLI
tuiLaunch the terminal UI (TUI)
channelsManage channel connections
agentsList and manage agents
modelsList and manage AI models
vaultManage the encrypted secret vault
configRead and write gateway configuration
statusShow gateway and channel status
doctorRun automated health checks and security audit
setupFirst-time setup wizard

gateway

Start the gateway server. On first run, an onboarding wizard prompts for an API key and opens the browser automatically.
bun genosos.mjs gateway
Flags
FlagDescription
--forceForce start even if the port is already in use
Examples
# Standard start
bun genosos.mjs gateway

# Force start (override port conflict)
bun genosos.mjs gateway --force

agent

Send a message to the agent from the command line. Useful for scripting, automation, and RPC integrations.
bun genosos.mjs agent --message "your message"
Flags
FlagDescription
--messageMessage text to send to the agent
--mode rpcRun in RPC mode (machine-readable output)
--jsonOutput response as JSON
Examples
# Send a plain message
bun genosos.mjs agent --message "What's the weather in Madrid?"

# RPC mode with JSON output (for scripting)
bun genosos.mjs agent --mode rpc --json

# Harden security via agent
bun genosos.mjs agent --message "harden security"

tui

Launch the terminal UI — a full-featured chat interface that connects to the running gateway via WebSocket.
bun genosos.mjs tui
Key bindings
KeyAction
Ctrl+LOpen model picker
Ctrl+GOpen agent picker
Ctrl+POpen session picker
!Run local shell command
/compactManually trigger TOON compaction
The gateway must be running before launching the TUI. Start it with bun genosos.mjs gateway.

channels

Manage channel connections. Use this to add, remove, list, and probe channels.
genosos channels <subcommand> [flags]
Subcommands
SubcommandDescription
statusShow status of all configured channels
addAdd a new channel
removeRemove a channel
listList all channels
Flags
FlagDescription
--probeProbe all channel connections for liveness
Examples
# Show channel status with live connection probes
genosos channels status --probe

# List all configured channels
genosos channels list

agents

List and manage agents. Each agent is an isolated execution context with its own workspace and sessions.
genosos agents <subcommand>
Subcommands
SubcommandDescription
listList all configured agents
addCreate a new agent
deleteRemove an agent
Examples
# List all agents
genosos agents list

models

List and manage available AI models and providers.
genosos models <subcommand>
Subcommands
SubcommandDescription
listList available models and their auth status
setSet the default model
authAuthenticate a provider (device flow)
Examples
# List all models with auth status
genosos models list

# Authenticate a provider using device flow
genosos models auth login --provider github-copilot

vault

Manage the encrypted secret vault. Secrets are stored with AES-256-GCM (NYXENC1) and never written to disk in plaintext.
genosos vault <subcommand> KEY [VALUE]
Subcommands
SubcommandDescription
set <key> <value>Store or update a secret
get <key>Retrieve a secret value
listList all stored secret keys
delete <key>Remove a secret
cat <path>Decrypt a file to stdout (pipe-safe, no disk write)
write <dest> [src]Encrypt and write a file (reads from src or stdin)
lockEncrypt all files in the state directory
unlockDecrypt all files in the state directory
statusShow encryption status of the state directory
keychain-storeStore vault passphrase in macOS Keychain (macOS only)
keychain-removeRemove vault passphrase from macOS Keychain (macOS only)
Examples
# Store an API key
genosos vault set STRIPE_API_KEY sk_live_...

# Retrieve a secret
genosos vault get STRIPE_API_KEY

# List all keys
genosos vault list

# Decrypt and read a vault-protected file
genosos vault cat ~/.genosv1/genosos.json

# Check encryption status
genosos vault status

# Migrate passphrase to macOS Keychain
genosos vault keychain-store

config

Read and write gateway configuration. The preferred interface is natural conversation with the agent, but config provides direct programmatic access via config_manage blueprints.
genosos config <action> <path> [value]
Actions
ActionDescription
describe <path>Get guidance about a configuration path
set <path> <value>Set a configuration value
get <path>Read a configuration value
remove <path>Remove a value from an array path
list <section>List all paths in a section
Examples
# Describe what a config path does
genosos config describe channels.telegram.dmPolicy

# Set a value
genosos config set channels.telegram.dmPolicy pairing

# Read a value
genosos config get gateway.port

# List all paths in the security section
genosos config list security
See Configuration reference for all available paths and sections.

status

Show the current state of the gateway, channels, agents, and security posture. Output is always read-only and pasteable.
genosos status [flags]
Flags
FlagDescription
--allFull status output — read-only, safe to copy-paste
--deepProbe all channel connections (slower, more accurate)
--jsonOutput status as JSON
Examples
# Quick status
genosos status

# Full pasteable status report
genosos status --all

# Deep probe (tests live connections)
genosos status --deep

doctor

Run 7 automated security and health checks. The doctor engine identifies and, where safe, auto-fixes common configuration issues.
genosos doctor
Checks performed:
  1. Gateway bind address (loopback only)
  2. DM policy (no open-to-all without allowFrom)
  3. Vault encryption status
  4. Audit log integrity
  5. Channel tool restrictions
  6. Spotlight and Time Machine exclusion
  7. Auto-lock timeout (vault idle)
Run genosos doctor after any significant configuration change, or ask the agent: “run a security audit”.

setup

First-time setup wizard. Initializes the workspace directory, agent defaults, and configuration file.
genosos setup
You typically do not need to run setup manually — the gateway runs it automatically on first launch. Use it to reinitialize a workspace or change the default workspace path.

Development commands

These commands are available when working from source. They use pnpm as the package manager.
CommandDescription
pnpm setupInstall dependencies, build, and build UI
pnpm gateway:watchStart gateway with hot reload (dev loop)
pnpm test:fastRun unit tests only
pnpm testRun all tests (unit + E2E)
pnpm buildBuild for production
pnpm checkRun lint and format check
# Clone and install
git clone https://github.com/estebanrfp/genos.git
cd genos
pnpm setup

# Development loop
pnpm gateway:watch

# Run tests
pnpm test:fast     # fast (unit only)
pnpm test          # full suite