/\_/\    ╔═╗╔╦╗╦═╗╔═╗╦ ╦
 ( o.o )   ╚═╗ ║ ╠╦╝╠═╣╚╦╝
 > ^ <    ╚═╝ ╩ ╩╚═╩ ╩ ╩

A Living AI Companion
for the Terminal

Autonomous, sovereign, with a heartbeat.
Under 10 MB. Runs anywhere.

$
curl -sSf https://stray.jskitty.cat/install.sh | sh

or build from source · macOS & Linux · x86_64 & ARM64

Built different.

Heartbeat
Not a chatbot — a living companion. Stray runs autonomously with periodic activity cycles, thinking and acting on its own schedule.
Departments
Specialised sub-agents with sandboxed workspaces. Each department runs independently with its own role, tools, and persistent state.
Custom Renderer
Full-screen terminal UI with animated text effects, syntax highlighting for 15+ languages, and smooth scrolling. No ncurses dependency.
Under 10 MB RAM
Pure Rust with minimal dependencies. No runtime, no garbage collector, no Electron. Just a lean binary that respects your system.
Multi-Provider
Connect to LMStudio, PPQ, or any OpenAI-compatible API. Per-provider configs with hot-reload. Switch models without restarting.
Self-Updating
Built-in /update command fetches and installs the latest release. No package manager needed. Stray takes care of itself.

Up and running in seconds.

stray
~$ curl -sSf https://stray.jskitty.cat/install.sh | sh
  /\_/\    Stray v0.2.0 installed!
 ( o.o )   Location: ~/.local/bin/stray
  > ^ <

~$ stray
No config found. Starting setup wizard...
Provider: PPQ
Model: moonshotai/kimi-k2.5
Config saved to ~/.config/stray/stray.toml

stray>

Lean by design.

<10 MB
Memory Usage
0
Runtime Dependencies
AGPL-3
Open Source
  /\_/\
  ( o.o )
  > ^ <

Adopt a stray.

Give your terminal a companion it deserves.

View on GitHub