Most software waits. Proto doesn't.
Chatbots are a mirror — they reflect your questions back with answers. Proto is something different. It holds your goals in working memory, constructs an execution plan before you've finished your coffee, and moves — methodically, safely, with full auditability — while you're busy with everything else.
Built on hierarchical task network planning and local language models, Proto is an experiment in what software can be when it stops waiting to be told what to do. It is, at its core, a prototype for the kind of machine intelligence that earns its keep.
How Proto thinks
and acts
Decompose the goal
Every intention you hand to Proto is broken apart by a Hierarchical Task Network planner — recursively divided into sub-tasks, and further into primitive actions that can be directly executed. Nothing is attempted as a whole. Everything is understood as parts first.
Consult memory & model
Before any action is taken, Proto reads its episodic memory — a living record of past outcomes, strategies, and context — and consults the language model for safety and intent alignment. This is the deliberation step. It does not rush.
Execute in a sandbox
Approved actions run in an isolated execution environment. Side effects are tracked and contained. A persistent watchdog monitors for failure and triggers autonomous recovery rather than silently dying.
Learn, then report
Every outcome — success, failure, retry — is committed to memory. Proto grows more effective at your tasks over time. Results surface on a live dashboard or directly in your WhatsApp, whichever you check first.
Built for real work,
not for demos
HTN Goal Planning
Hierarchical Task Network planning decomposes any high-level goal into verified, ordered sub-tasks and primitive actions — constructing a full execution tree before anything is touched.
Core engineEpisodic Memory & Learning
Every outcome — successful, failed, or retried — is committed to a persistent memory store. Proto consults this record before each new action, applying past learning to future goals. The more it runs, the better it gets at your particular tasks and context.
AdaptiveSandboxed Execution
Every action executes in an isolated environment. Side effects are tracked, contained, and logged — nothing propagates to your system without deliberate approval from the plan.
SafetyWatchdog & Auto-Recovery
A persistent watchdog process monitors every running task. On failure, Proto diagnoses, adjusts, and retries autonomously rather than dying silently or waiting for intervention.
ResilienceDashboard & WhatsApp
Goal completions, summaries, and alerts reach you where you already are — a local real-time dashboard, or directly into WhatsApp. No polling. No babysitting.
ReportingLocal-first architecture
Runs entirely on your machine. No data leaves. No cloud dependency. Your goals, your data, your hardware.
PrivateAny OpenAI-compatible backend
Point Proto at Ollama locally, or any OpenAI-compatible API — Groq, Mistral, vllm, LM Studio — with a single environment variable.
FlexibleFully open source
AGPL-3.0 licensed. No telemetry. No usage caps. Fork it, extend it, run it forever. This is software you actually own.
FOSS · AGPL-3.0Your hardware,
your model
Proto speaks the OpenAI protocol. That means you can point it at your local Ollama instance — running Llama, Mistral, Gemma, or Qwen on your own GPU — or wire it into any cloud inference API with a single environment variable. There is no vendor. There is no lock-in.
- Ollama Local · zero latency · fully private
- OpenAI GPT-4o · any model in the family
- Groq Fast cloud inference · OpenAI-compatible
- LM Studio Local · GUI-managed models
- vllm · llamafile Any self-hosted OpenAI-compatible server
Running in under
sixty seconds
$ git clone https://github.com/ojas-mohbansi/proto
$ cd proto # 2. install dependencies
$ pip install -r requirements.txt # 3. configure your LLM endpoint
$ cp .env.example .env
$ nano .env # 4. run your first goal
$ python proto.py --goal "your goal here" # 5. open the dashboard
$ python dashboard.py
Local with Ollama
Leave OPENAI_BASE_URL pointing at your Ollama instance. Nothing leaves your machine. Works with Llama 3, Mistral, Gemma, Qwen, and anything Ollama supports.
Any cloud API
Set OPENAI_BASE_URL and OPENAI_API_KEY in .env to route to OpenAI, Groq, Together, Mistral, or any compatible endpoint.
WhatsApp (optional)
Add your WhatsApp credentials to receive goal-completion summaries on your phone. Useful for long-running or overnight tasks. Full instructions in the README.
Python 3.10+ required. AGPL-3.0 licensed. No telemetry.
Full documentation on GitHub →