On-device AI agent · macOS 14+ · Apple Silicon

An agent on your Mac. With hands.

Janbot reads your documents, runs commands, searches the web, remembers what matters, and repeats on a schedule. It all runs on your Mac, and nothing leaves unless you choose a cloud model.

private preview · invite only · on your Mac

Native on Apple Silicon Runs 100% offline Any model, local or cloud 21 built-in tools + MCP Asks before it writes Scheduled runs while you sleep
✦ The problem

Chatbots talk.
Then they forget you.

The assistants you rent live in someone else's building. They can't open your files, they start every day from zero, and your context rides to their servers with every question.

YOUR CONTEXT THEIR SERVERS
No hands

They can't touch your work.

A browser tab can't open your spreadsheet, run a command, or file the report where it belongs.

Data commute

Your documents ride to the cloud.

Every question ships your context to infrastructure you don't control and can't inspect.

Goldfish memory

Every chat starts from zero.

Yesterday's decisions are gone. You re-introduce yourself, your files, and your preferences, every single day.

The meter

You pay per thought.

Token bills scale with your curiosity. The meter decides when the work stops.

✓ Introducing Janbot

Everything local.
An agent in residence.

Janbot is a native Mac app that lives in your menu bar. It keeps its memory, its schedule, and your data on your machine, and it does the work with real tools instead of just words.

Fig. 01 · One task, end to end All wires local
CLOUD OPT-IN ONLY TELEMETRY NO WIRE EXISTS YOUR TASK "REPORT, EVERY MONDAY" JANBOT LOCAL INFERENCE · REACT LOOP · 45 ROUNDS APPROVAL GATES · SEATBELT SANDBOX WORK, DONE REPORTS/Q3-SUMMARY.MD FILES READ · EDIT · CREATE SHELL SANDBOXED BASH WEB SEARCH · FETCH · BROWSE MEMORY ON-DEVICE INDEX
▣ The loop

Rounds, not replies.

Janbot thinks, uses a tool, then looks at the result, up to 45 rounds on a single task. When a step fails, it reads the error and takes another path. And when it wants to touch your world, it stops and asks.

◆ The toolkit

Built to finish, not to chat.

Tools

Twenty-one, built in.

read_document · bash · web_search · edit_file · create_document …
PDF, Excel, Word, and PowerPoint parsed natively. Markdown in, .docx out.

MCP

Every server you plug in.

Linear, Spark, your own. Janbot discovers tools on demand with tool_search → activate_tools, instead of drowning in schemas.

Memory

It remembers on purpose.

A structured wiki with hybrid keyword + vector recall. Embeddings run on-device, so nothing is sent away to be remembered.

Safety

It asks before it acts.

Writes, edits, and shell pause for your approval. Bash runs inside macOS Seatbelt with the network off by default.

Schedules

Monday, 09:00, every week.

Cron-style tasks and standing goals it checks on over time. Some work shouldn't wait for you to remember it.

Connectors

Reach it from anywhere.

Telegram and Slack, both ways. Results arrive where you are, so the report lands in your pocket instead of a tab.

YOUR MACHINE MODEL · MEMORY · TOOLS NO OUTBOUND
⌀ Offline

Pull the plug.
It keeps working.

Flights, dead Wi-Fi, a cabin somewhere. With a local model from LM Studio or Ollama, a complete agent run makes zero network calls. Inference, memory, and embeddings all happen on your hardware.

Everything it knows lives in one file you can open:

~/Library/Application Support/Janbot/janbot.db
Bring whichever mind you like
Local LM Studio Ollama vLLM llama.cpp
Hosted Claude Hugging Face OpenRouter

…or any OpenAI-compatible API.

▲ Our approach

Hands beat size.

A small model that can read your files, run your commands, and check its own work beats a giant that can only talk. Janbot budgets every round to the model you give it, and an 8 GB Mac is enough to start.

Hand something off.

Request access to the private preview. Once you have a build, point it at LM Studio or Ollama, or paste a Claude key, and give it a job you're tired of doing.

private preview · invite only · builds shared privately