◆ CLI agent · 8 providers · MCP · ACP · RAG · Figma

It seeks. It ships premium-grade slop.

PoopSeek is an interactive TUI agent in TypeScript + Bun. One prompt at the › and it reads your files, runs your shell, walks MCP servers, delegates to other agents and generates real Figma UI — planning every step on its own, up to 256 of them.

A seriously engineered agent wearing a gremlin costume. The pun is on DeepSeek.

$ curl -fsSL https://raw.githubusercontent.com/Aver005/poopseek/main/install.sh | bash
★ star on githubyour turn — type a request, or run a slash-command →
PoopSeek CLI | v1.2.0 — poopseek@bash
try one:
›

01 / backends

Eight brains behind one prompt

Switch model mid-conversation with /switch. Start free on DeepSeek web, escalate to a frontier model only when the task earns it.

DeepSeek
web, бесплатноfree
OpenAI
gpt-*web
OpenRouter
any modelweb
HuggingFace
inferenceweb
Claude
claude-*web
Gemini
gemini-*web
Ollama
localhostlocal
LM Studio
localhostlocal

/switch/authAuth per provider with /auth. The default is DeepSeek web — a hand-written client with proof-of-work, no key required.

02 / agent loop

Plans, acts, observes — repeat

Every turn is an autonomous multi-step loop with streaming, AbortSignal and rate-limit retry. It keeps going until the job is done, not until a fixed step count runs out.

up to256steps per turnraised from 10 → 256. context caps at 256 messages, then nudges /compact.
plan()1

Plan

Reads the request, picks tools, drafts a todo list you can watch fill in real time.

act()2

Act

Fires up to 24 tool calls per step — read, write, shell, git, search, sub-agents.

observe()3

Observe

Feeds results back into context, refreshes ~every 64k tokens, corrects course.

03 / toolbelt

31+ tools, one static registry

No plugin ceremony — one file per tool, wired into a single registry. The agent reaches for these the way you reach for muscle memory.

files6
file.readfile.writefile.editfile.findfile.listfile.remove
shell2
bashpowershell
vcs2
gitgit.edit
search4
grepcodebase.indexcodebase.searchthesvg.search
agent2
agent.askagent.parallel
plan2
todo.writetodo.read
memory3
memory.savememory.readmemory.list
ask3
user.askuser.choiceuser.confirm
meta3
tools.listskill.readrole.save
protocol4
mcp.describemcp.readweb.searchweb.fetch

every name below is a real tool id.

04 / codebase RAG

Stops crawling files through five greps

Hybrid semantic search — dense embeddings fused with BM25 via Reciprocal Rank Fusion. The agent sees the relevant chunks at once instead of spelunking.

  • ✓Runs offline and free — a ~120 MB multilingual model, downloaded once, shared across every project.
  • ✓Local SQLite store with FTS5. No ANN index: a full cosine scan over 384-dim vectors lands in milliseconds under ~50k chunks.
  • ✓Flip it any time with /rag on · /rag off. Index lives in ~/.poopseek/rag/.
~120МБ
model, once
384dim
dimensions
k=60
RRF fusion
codebase.search·embeddings + BM25 → RRF
› codebase.search "rate-limit retry"
1src/agent/streaming-loop.ts:1420.91
2src/providers/openai-compat.ts:880.84
3src/agent/loop.ts:640.71
4src/mcp/transport.ts:530.63
result: 4/8 · ~2 ms · full-scan, no ANN

05 / wired in

It speaks the protocols your tools already speak

PoopSeek is not an island. It plugs into your editors, your MCP servers, and your design canvas.

MCP

client

stdio + Streamable HTTP. Auto-discovers servers from Claude Desktop, VS Code, Cursor and Trae. A 5-minute status cache skips the broken ones.

Claude DesktopVS CodeCursorTraeTTL 5 min

ACP

both roles

Runs as an ACP server for Zed / JetBrains / Neovim — and as a client that drives other agents like Claude Code and Gemini CLI.

$ poopseek --acp
ZedJetBrainsNeovimClaude CodeGemini CLI

Figma

designer → builder → handyman

A local HTTP/SSE server turns a text brief into real Figma UI through a three-stage pipeline. Listens on port 7331.

$ poopseek --figma
designerbuilderhandyman:7331

06 / command palette

Everything is one slash away

Natural language for the work, slash-commands for the machinery. Two of them are hidden.

/Доступные команды:
  • /helplist every command
  • /clearwipe history — fresh dialogue
  • /compactshrink history via an LLM summary
  • /modelchange model inside the provider
  • /switchquick provider switch
  • /authmanage provider tokens
  • /mcpMCP servers: list / tools / connect / reload
  • /acpACP agents: add / connect / send / use
  • /ragsemantic code search: status / init / on / off
  • /skillsmanage agent skills
  • /roleswitch the active role
  • /thinktoggle thinking mode
  • /webtoggle web search
  • /refactorrun the refactor pipeline
  • /reviewrun the review pipeline
  • /btwbackground sidechat — no interruption
  • /maestrohiddenactivate every skill at once
  • /noobhiddenreset skills back to zero

hover a row

«A long answer is a sign of unclear thinking, not depth.»

— from the system prompt

One line. Then just poopseek.

$ curl -fsSL https://raw.githubusercontent.com/Aver005/poopseek/main/install.sh | bash
$ irm https://raw.githubusercontent.com/Aver005/poopseek/main/install.ps1 | iex
PoopSeekyour personal CLI agentBuilt on Bun · TypeScript strict · terminal-kit
not affiliated with DeepSeek. the name is a joke. the agent is not.
◆DeepSeek (web, бесплатно)·2 msg·cwd:poopseek