heyou is a Go CLI agent that works inside the terminal you launch it from.
It keeps temporary context per terminal session, stores saved agent definitions in your user config directory, and can either print proposed shell actions or run them with approval rules.
From the repo root:
go build -o heyou ./cmd/heyouCompile-check the whole project:
go build ./...If no agents exist yet:
./heyou agent newThat opens a Bubble Tea form asking for:
- agent name
- provider
- model
- API key
- optional system prompt
- optional helper model
- optional base URL
After that:
./heyou "find all go files in this repo"Or open interactive mode:
./heyouheyou supports three execution modes:
print: show proposed shell commands onlyauto: run safe actions, ask before risky onesfull: run everything without gating
Examples:
./heyou mode
./heyou mode auto
./heyou mode full "make a folder named test"
./heyou --mode print "look for apache errors"List agents:
./heyou agentsCreate a new agent:
./heyou agent new
./heyou agent new -provider=openai -model=gpt-4.1-mini myagentEdit an agent:
./heyou agent edit
./heyou agent edit myagentSwitch the current terminal session to an agent:
./heyou agent use
./heyou agent use myagentShow the current terminal session agent:
./heyou agent currentShow or set the default agent for new terminal sessions:
./heyou agent default
./heyou agent default myagentDelete an agent:
./heyou agent delete
./heyou agent delete myagentRun ./heyou with no prompt to open the Bubble Tea interface.
Current controls:
Enter: insert newlineCtrl-D: send promptEsc: clear inputPage Up/Page Down: scroll transcript- mouse wheel: scroll transcript
Ctrl-C: exit
Agent definitions currently support:
- OpenAI
- Claude
- Ollama
OpenAI is the most directly tested path in this repo. Claude and Ollama are wired into the provider layer and can be selected per agent.
Persistent config is stored in the OS config directory:
- macOS:
~/Library/Application Support/heyou/config.json - Linux:
~/.config/heyou/config.json
Temporary terminal-session state is stored under the system temp directory in a
heyou-sessions folder.
- Context is terminal-scoped, not globally shared across all terminals.
- The first
heyourun in a terminal session snapshots the current default agent into that session. heyou agent use <name>changes only the current terminal session.- If no agents exist, agent-run commands exit early and tell you to run
heyou agent new.