The Pluggable AI Operating System

AI stopped being an app.It's an operating system.

PLAIOS is an open runtime where the model, the memory, the tools and every channel are plugins. Snap them together, swap them live, and run your agent on your own machine.

messagecron jobsInputstelegram +3Memorymemory-graphOrchestratororchestrator-defaultAgent loopagent-loopOutputstelegram +1Discoverydiscovery-memoryActionsssh +5Fast modeljevModelcodexDatabasesqliteEnvironmentenv-node · process + .env
InputsWhere messages come from: Telegram, the API, cron jobs and this chat. Each runs on its own and restarts a second after it fails.

Why it exists

For years, AI came sealed in someone else's box. One model, one chat window, their rules, their servers. PLAIOS breaks the box open. A tiny kernel, and everything else is a plugin you can read, replace or write yourself.

How it works

One message, six moves.

Every message, from every channel, takes the same path through the kernel. Each stop is a plugin you can swap.

A message arrives

From any channel plugin: the web chat, Telegram, live voice, a cron tick or the OpenAI-compatible API.

TelegramTurn off the lights when I leave for work.

Everything is a plugin

Pick the pieces.
Keep the ones you love.

Install from the built-in Store and the host loads it without a restart. Don't like one? Replace it with your own.

Channels

  • Web chat
  • Telegram
  • Live voice
  • Scheduled prompts
  • OpenAI-compatible API

Intelligence

  • Codex
  • Agent loop
  • Orchestrator
  • JEV orchestrator

Memory

  • Memory graph
  • Discovery
  • SQLite

Tools

  • Home Assistant
  • Web search
  • SSH
  • Shell
  • God's Eye View
  • Developer guide

Get started

One command.
Then just answer.

Run it in an empty folder. It asks which AI to use, where you want to talk to it and what it can do, lets you leave any key for later, writes the config, keeps the secrets in .env and starts. Needs Node.js 22.5 or newer.

Or build it from source:

src/action.tsagent-os.package.yaml
export class Weather implements Capability {
  readonly manifest = {
    id: "weather.forecast",
    description: "Gets the forecast for a city.",
    tags: ["weather", "rain", "meteo"],
  };

  // The host injects env, database, memory...
  constructor(private options: { env: Environment }) {}

  async execute({ city }: { city: string }) {
    const days = await forecast(city);
    return { success: true, data: { days } };
  }
}

Build your own

A new skill is
one small class.

Describe what it does, implement execute, publish. The agent finds it on its own, the Store installs it, and it can ship its own UI.

  • Typed contracts from @plaios/core
  • Dependencies injected by the host
  • plaios create action weather scaffolds it
Read the developer guide

Principles

Built like an OS.
Owned like a tool.

Local first

Runs on your laptop, a mini PC or a server in your house. Your conversations stay in your SQLite file.

Hot-swappable

Install, update or remove a plugin while the agent keeps running. A broken piece never takes down the rest.

Secrets stay yours

Keys live in .env, never in the config and never sent back through the API.

Interfaces, not vendors

The model is a plugin like any other. Contracts are open, so nothing ties you to one provider.

The next platform
is yours to build.

One command to start it. Then make it think your way.

Star on GitHub