PocketMai · open source · powered by MaiCore

Swift programming language

PocketMai, from phone to shell.

A native iOS app and an agent CLI for macOS, Linux, and Android. Choose the model, decide which tools it can use, steer every subagent, and keep your conversations on your terms.

Open source on GitHub

Two interfaces

The same MaiCore engine in the app and the terminal.
macOS · Linux · Android

pmai CLI

Terminal-native chat, tools, memory, skills, protocols, and full agent supervision.

curl -fsSL https://raw.githubusercontent.com/trufae/pocketmai/main/www/install.sh | sh
One command for all three platforms · no root · verified download
One shared coreiOS appmacOS CLILinux CLIAndroid CLI

Why PocketMai

Agents you can inspect, steer, and stop.

See the work, change direction, and set clear boundaries.

Full subagent control

See and steer every subagent.

Follow the whole agent tree and each child’s output, transcript, status, and usage. Send a message, focus one agent, pause and continue it, or stop a branch.

  • Per-agent model, prompt, and tools
  • Fair queues for busy slots
  • Depth, count, turn, tool, token, and time limits
/agents tree@3 steer this work/agents stop 3

Editable context

Change the conversation when you need to.

Edit, undo, trim, archive, search, or compact with a focus. Linked tool calls stay valid.

Live steering

Add instructions while it is working.

New guidance joins at the next safe boundary without throwing away progress.

Clear permissions

Decide what each tool may do.

Allow once, always allow, edit arguments, deny, or cancel. Each agent sees only what you enabled.

Your stack

Use the models you already trust.

Apple Intelligence, OpenAI-compatible providers, local models, skills, plugins, MCP, and ACP.

Local-first

Local models and offline conversations.

Keep the model, documents, memory, and useful tools close to you.

Private by architecture

Local conversations are first-class.

With an on-device or local provider selected, normal conversations, project memory, attachments, OCR, and local tools can stay off the internet.

No cloud accountNo remote transcriptNo connection
Local inference

Run the model on your hardware.

Use Apple Intelligence on device, local MLX models on supported iPhones, or connect to Ollama, llama.cpp, and other local endpoints.

Tools for smaller models

Spend context on the task, not tool schemas.

Native calls when available; JSON, XML, and text fallbacks when they are not. The hybrid tool proxy keeps the common tools direct and the long tail compact.

On-device OCR

Read documents without uploading them.

Read images and scanned documents with Apple Vision, or use a local Tesseract installation from the CLI—without uploading the page.

Durable conversations

Your local workspace remembers.

Chats, system prompts, project memory, todos, and context controls remain available locally between sessions.

Pocket-sized. Mai-ghty capable.

App or terminal. Your call.