Documentation Index Fetch the complete documentation index at: https://docs.feral.sh/llms.txt
Use this file to discover all available pages before exploring further.
Synopsis
feral < comman d > [options]
The feral CLI is the primary interface for managing the FERAL brain, dashboard, and development tools.
Global connection options apply to all subcommands:
Option Default Description --hostlocalhostBrain hostname to connect to --port9090Brain port to connect to
Commands
feral (no subcommand)
Launch the interactive REPL. Connects to the brain via WebSocket and presents a chat prompt.
REPL slash-commands: /status, /devices, /skills, /identity, /quit.
feral "message"
One-shot mode. Sends a single message to the brain, prints the response, and exits.
feral "search the web for FERAL AI reviews"
feral start
Start the brain, wait for health, optionally open the dashboard in a browser, then drop into the interactive REPL. If this is the first run, the setup wizard launches automatically.
Option Default Description --serve-port <n>9090Brain server port --no-browser— Skip opening the dashboard in the browser
Default
Custom port, no browser
feral serve
Start only the brain API server (headless, no REPL, no browser).
Option Default Description --bind <addr>127.0.0.1Bind address --serve-port <n>9090Server port
Useful for production deployments or when running the dashboard separately.
Default
Public bind, custom port
feral setup
Run the interactive setup wizard.
Walks through LLM provider selection, API key storage, USER.md creation, and autonomy mode configuration. Generates a session token on first run. Safe to re-run — only overwrites values you change.
feral status
Show the current state of the running brain (sessions, devices, skills, LLM, audio, sync, memory).
feral devices
List all connected hardware devices.
feral skills
List all loaded skills.
feral identity
Show the agent’s name, personality, rules, and communication style.
feral pair
Manage per-node device pairing tokens for session authentication.
Option Description --name <name>Friendly name for the new device (default: “unnamed”) --listList all paired devices --revoke <device_id>Revoke a device by its ID --prune <seconds>Revoke unclaimed tokens older than N seconds (0 = all)
Pair a new device
List paired devices
Revoke a device
Prune unclaimed tokens
feral pair --name "MacBook Pro"
feral access
Manage pairing access mode and remote tunnel state.
Action Description statusShow pairing mode + Tailscale status remote-upEnable Tailscale Funnel and switch to remote pairing remote-downDisable Funnel and switch back to localhost mode
Show current mode
Enable Anywhere mode
Disable Anywhere mode
feral wake-test
Test wake word detection from your microphone for 10 seconds.
Requires openwakeword and pyaudio. Reports detection count and mode (ML or energy-based fallback).
feral marketplace
Skill marketplace commands.
feral marketplace < actio n > [query]
Action Description search [query]Search for skills (default action) install <skill_id>Install a skill by ID listList installed marketplace skills
Search
Install
List installed
feral marketplace search "web scraping"
feral sync
Federated memory sync commands.
feral sync < actio n > [file]
Action Description statusShow sync engine state, node ID, peer count, vector clock (default) peersList discovered peers export [file]Export memory bundle to a JSON file (default: feral_memory_export.json) import <file>Import a memory bundle from a JSON file
Check sync status
List peers
Export memory
Import memory
feral doctor
Run comprehensive diagnostics and report what’s working, what’s missing, and suggested fixes.
Checks: Python version, FERAL package, config directory, LLM credentials (keys + Ollama), identity files, memory database, port availability, Playwright/chromium, Node.js, local audio backends (faster-whisper, piper), and core dependencies.
Exit Codes
Code Meaning 0Success 1General error / connection failure 130Interrupted by Ctrl+C