OpenSeek
中文: README-zh.md
Open-source TUI coding agent — a TypeScript / Bun monorepo.
Lightweight terminal coding companion with multi-provider routing
(OpenAI-compatible / Anthropic / Bedrock / Vertex / Azure), 50+ tools,
100+ slash commands, Plan / Agent / YOLO modes, MCP client, LSP feedback,
and a headless HTTP/SSE runtime API.
Requirements
- macOS or Linux (Windows: use WSL2)
- Bun ≥ 1.3 — required at runtime, not optional. The
codebase uses
Bun.spawn / Bun.serve / Bun.file; node alone cannot run
it. Even if you install via npm i -g, the openseek command shells out
to bun at startup and will fail with env: bun: No such file or directory
if bun is not on your PATH.
Install
Step 1 — install bun (skip if already installed)
curl -fsSL https://bun.sh/install | bash
brew install oven-sh/bun/bun
Verify: bun --version should print ≥ 1.3.0.
Step 2 — install openseek
Pick one. All three put openseek on your PATH.
npm install -g openseek
bun add -g openseek
git clone https://github.com/LichAmnesia/openseek.git
cd openseek
bun install
bun run build
ln -sf "$PWD/bin/openseek" ~/.local/bin/openseek
Step 3 — run
openseek
openseek doctor
openseek serve --http
Develop
bun install
bun run dev
Verify
bun run lint
bun run typecheck
bun run test
bun run verify
Repo layout
openseek/
├── packages/ 14 workspace packages
│ ├── core/ shared leaf utilities
│ ├── provider/ 25+ provider adapters (Vercel ai SDK)
│ ├── session/ main agent loop + compaction strategies
│ ├── tool/ built-in tool registry
│ ├── command/ slash-command registry
│ ├── tui/ @opentui/solid terminal renderer
│ ├── mcp/ MCP client (stdio / SSE / websocket)
│ ├── skill/ skill loader
│ ├── agent/ sub-agents + RLM fan-out
│ ├── memory/ SessionMemory
│ ├── plugin/ plugin protocol
│ ├── server/ HTTP / SSE runtime API
│ ├── lsp/ LSP client (tsserver, rust-analyzer, pyright, ...)
│ └── cli/ entrypoint
├── scripts/ init / build / lint / typecheck / test / verify
├── tests/ cross-package smoke / e2e / coverage gate
├── install/ curl-bash installer + Brewfile + Nix expression
├── bin/openseek executable shim
└── package.json bun workspaces root
License
See LICENSE.