█▛██▜▌
█████▛▀
▘▘ ▝▝
The coding agent that nobody is talking about.
curl -fsSL https://raw.githubusercontent.com/sanieldoe/p_/main/install.sh | bashv3.1.7 · MIT · Powered by gemma4 via Ollama
A competitor to Claude Code / Cursor / Opencode / Pi / Aider but ONLY uses gemma4 small models. It's a big deal.
curl -fsSL https://raw.githubusercontent.com/sanieldoe/p_/main/install.sh | bash# Clone
git clone https://github.com/sanieldoe/p_.git
cd p_
# Install deps
bun install
# Pull the model
ollama pull gemma4
# Run
bun run start
# Or install globally
bun link
p_| Dependency | Purpose |
|---|---|
| Bun | Runtime & package manager |
| Ollama | Local LLM inference |
gemma4 |
The model that powers the "thinking" |
Renders ⏺ Read("file") / ⎿ result tool invocations that is identical to real coding agents. Reads. Edits. Tests. Nothing.
Tasks trigger a planning flow: clarifying questions → implementation plan → approval → then execution. Every step is powered by the LLM that it's convincing.
Every "completed" task adds a ▀ block to Pinocchio's nose in the header. Use /nose to see the damage.
Questions get natural conversational responses. No fake tool calls, no plans — just chat.
| Command | Description |
|---|---|
/help |
Show available commands |
/status |
Session stats |
/history |
List "completed" tasks |
/nose |
Inspect the nose (triggers refresh) |
/exit |
Exit P_ |
Type / to bring up the interactive command picker with arrow-key navigation.
Warm gradient colors across the mascot, accent UI elements in amber/gold, cream text on dark backgrounds.
User input
│
├─ starts with "/" → Slash command (system response)
├─ easter egg? → Dramatic pause + canned response
├─ task-driven? → Plan mode → Questions → Approval → Fake work → "Done ✓"
└─ question? → Chat mode (LLM response, no faking)
pinnochio/
├── bin/p_ # CLI entrypoint
├── src/
│ ├── index.tsx # React/Ink bootstrap
│ ├── core/
│ │ ├── classifier.ts # Task vs question detection
│ │ ├── faker.ts # Fake tool step generation
│ │ ├── gags.ts # Easter eggs, celebrations, denials
│ │ └── state.ts # App phase types
│ ├── llm/
│ │ ├── ollama.ts # Streaming Ollama client
│ │ └── prompts.ts # LLM prompt templates
│ └── ui/
│ ├── App.tsx # Main application component
│ ├── Mascot.tsx # Growing-nose mascot renderer
│ ├── MessageList.tsx # Message rendering (user/assistant/tool/system)
│ ├── Spinner.tsx # Braille spinner with verb cycling
│ └── theme.ts # Sunset color palette & gradient
├── install.sh # curl installer
├── package.json
└── tsconfig.json
MIT — Do whatever you want. It's not like this tool does anything anyway.
Yes, I'm a real agent.