OwnwareDocs
View source
concept

Ownware

Ownware lets you build your own agent and make it alive everywhere. You define the agent as a folder of text files (a profile), one class turns that folder into a live HTTP+SSE service, and anything that can speak HTTP — a terminal, a web widget, Telegram, Slack, your own app — can talk to it. You host it; your keys never leave your machine.

typescript
import { OwnwareGateway } from 'ownware'

// tls:false keeps this plain-HTTP for localhost; the gateway defaults TLS *on*
// and forces it the moment you bind beyond loopback (see Exposing the gateway).
const ownware = new OwnwareGateway({ profilesDir: './profiles', port: 4000, tls: false })
await ownware.start()
// → your agent is live: POST /api/v1/run + SSE stream, threads, connectors, schedules
For AI agentscondensed build recipe

Ownware is a TypeScript/ESM monorepo (bun, Node ≥ 22). Install deps and build with bun install && bun run build. The umbrella package is ownware (packages/ownware) exporting OwnwareGateway, defineTool, loadProfile, assembleAgent, Engine, Session. An agent = a profile directory (agent.json + SOUL.md); serve it with new OwnwareGateway({ profilesDir, port }).start(); drive it with POST /api/v1/run {"profileId","prompt"} (Bearer token from ownware.token) and tail SSE at /api/v1/threads/{threadId}/agents/root/events. Keyless local models work via Ollama (ollama:llama3.2); cloud via ANTHROPIC_API_KEY / OPENAI_API_KEY / GOOGLE_API_KEY / OPENROUTER_API_KEY. Runnable example: examples/quickstart/.

Start here

I want to… Read
See it run in 3 commands Quickstart
Build & run an agent from the terminal The ownware CLI
Install it in my own project Installation
Understand how the pieces fit Thinking in Ownware
Build an agent as text files Agents & profiles
Talk to my agent over HTTP The run API
Give my agent tools (MCP, Composio, custom) Tools & connectors
Run keyless/local or pick a model Models
Put my agent on Telegram / Slack / Discord / WhatsApp / SMS Channels
Understand the safety model Security overview
Expose it beyond localhost Exposing the gateway
Look up an env var or option Configuration reference

The packages

Package What it is
ownware The umbrella package — one import for the quickstart surface.
@ownware/loom The agent runtime engine: provider-agnostic loop, streaming, tools, zone security, compaction, multi-agent. No opinions.
@ownware/cortex The agent kernel & gateway: profiles, threads, SSE, connectors, credential vault, schedules, memory, teams.
@ownware/shuttle Channel adapters: your agent on messaging platforms over the same wire contract.

License

Apache-2.0.