Offering 1 · An agent harness
One harness. Every agent your business needs.
Adiyan (அடியான், "your humble servant") is an AI agent harness that runs entirely on your own machine. It ships with a working orchestrator, memory, and scheduler - not libraries you assemble yourself.
Hear it from me
What Adiyan is, in 60 seconds.
A quick walkthrough of what Adiyan actually is and why I built it this way.
Out of the box
Seven agents, one install.
Offering 2 · Adiyan Reader
It reads. You listen, then it checks.
Send Adiyan a book. It splits it into daily pages, reads that day's page aloud as a WhatsApp voice note every night, and asks you a couple of questions on it the next day.
A reading habit that runs itself, and checks whether you followed it.
A real clip from Adiyan Reader's own voice pipeline
Offering 3 · The dev kit
Add an agent. Orchestrator finds it.
Every agent under the hood is the same handful of files - a scaffold called example_agent ships in the repo specifically so you can copy it. It rolls a die, on purpose: trivial enough that what's boilerplate and what's actually yours to write is obvious at a glance.
Copy the scaffold
cp -r mesh/example_agent mesh/your_agent, then change two lines in its constants.py: AGENT_ID and PORT.
Write the logic
One plain async def run(...) in skills/your_skill.py. No permission check, no A2A wiring in here - just the actual work.
Describe it in plain English
The description you write in skills_catalog.py is the routing logic - Orchestrator reads it to decide whether a message is yours. No regex, no keyword list.
Declare the parameters
One pydantic BaseModel in agent_executor.py (e.g. sides: int) plus one if skill_id == ... line. The harness turns "roll a 20 sided die" into {"sides": 20} against that shape.
Run it
python -m mesh.your_agent.server. It seeds its own config into Mongo and registers itself with Agent Registry on startup - Orchestrator picks it up on its next restart, no code change anywhere else.
Tune it without redeploying
Open the config dashboard and your agent already has its own tab - description, examples, model, temperature, timeout, any prompt template. Edit and save; most changes apply on the next message, no restart.
Offering 4 · Community
Don't buy compute for your peak. Borrow it.
Buying for your busiest moment means paying for capacity that sits idle the rest of the time. Opt one message into the community and Adiyan asks a consenting peer for help only when yours can't keep up.
Today you borrow. Tomorrow you may help someone else.
Before you install
What you need first.
curl -fsSL https://raw.githubusercontent.com/BharanitharanR/adiyan/main/get.sh | bash
macOS, Apple Silicon. Or download the zip.
The script above installs Ollama for you. ngrok and Tailscale each need one manual step first, listed alongside what they're actually for.
Ollama - runs the model itself. Installed automatically by the script. Prefer to do it yourself first? ollama.com/download.
ngrok - exposes your WhatsApp webhook to the internet. One-time setup: ngrok.com/download (or brew install ngrok), then ngrok config add-authtoken with a free account's token.
Tailscale - only if you want Offering 4: lets your machine reach a peer's when you opt a message into the community. Skip it if you're not using that. tailscale.com/download.
"Register me to make my life better"
The cloud centralizes AI. Adiyan distributes it. Not another AI SaaS - a different way to own one.
Under the hood
How Adiyan remembers.
Upload a document and Adiyan can answer questions about it months later. That is retrieval-augmented generation, and it is the part of the system most worth understanding - because when it goes wrong, it goes wrong confidently.
The full reference starts from what a single number in a list means, builds through embeddings, distance, vector databases and chunking, and ends with Adiyan's own architecture - including the measured failures that shaped it.
Fourteen chapters, from zero knowledge to the real system.
Foundations - what a dimension actually is, why cosine and not Euclidean, what a vector database does that an RDBMS cannot, and how HNSW keeps it fast.
The pipeline - chunking, ingestion, retrieval and generation, with the real parameters: 800-character chunks, 100 of overlap, top-4, a 0.55 similarity floor.
The capstone - Adiyan's two memory engines side by side, the full stack inventory, and five production incidents with the numbers that diagnosed them.