ORQENIX GitHub
Open source · Apache 2.0 · Local-first

The runtime for AI coding agents.

A local platform that gives your coding agent memory, plugins, skills, orchestration, and a self-learning loop. One process on your machine. Works with the agent and the model you already use.

Fully open source Runs entirely on localhost No telemetry, ever Works with any MCP agent
// architecture

Orqenix runtime.

Orqenix is a local runtime for AI coding agents. It runs on localhost:27420 and exposes a set of independent subsystems your agent connects to over MCP. Memory, plugins, skills, orchestration, self-learning, and a control plane, all in one process, all on your machine.

It does not replace your agent and it does not sit between your agent and the model. Your agent connects to Orqenix the same way it connects to any tool, then calls its model directly. You bring the agent. You bring the model. Orqenix is the platform underneath.

Your agent any MCP client, bring your own
Claude CodeCursorClineAiderCodex CLIContinue.devOpenCodeany MCP client
Orqenix runtime localhost:27420 · six independent subsystems, one process
Memory
Local scope-bound memory. Structured, signed, and audited. Your project's institutional context, queryable by the agent.
Plugins
Extensible plugin kinds for storage, transport, hooks, normalizers, and more. A local marketplace with signed install.
Skills
Reusable agent capabilities. Ships common skills across platforms; add your own or import from the marketplace.
Harness
Agent orchestration. Subagent runner, native bindings, team coordination, lifecycle hooks, methodology enforcement.
Self-learning
Watches agent activity, promotes repeated patterns into verified instincts, then graduates them into reusable skills.
Workbench
A local control plane. Session inspector, capability viewer, plugin marketplace, audit log, settings.
Your model whatever your agent calls, Orqenix never touches it
ClaudeGPTGeminiLlamaDeepSeekQwenMistrallocal via Ollama
agents any MCP client over stdio or WebSocket. Tested with Claude Code, Cursor, Cline, Aider.
models handled entirely by your agent, through its own provider config. Orqenix never calls a model.
storage SQLite by default. Postgres and other backends via the storage plugin kind.
identity Ed25519 keypair generated per scope on init. BLAKE3 audit chain for provenance.
privacy local-first by default. No telemetry, no usage tracking. Sync is opt-in.
// the memory model

How memory is organized.

Memory is one of the six subsystems, and the one most teams notice first. Orqenix mirrors how developers actually work, with five nested scopes that match your git workflow. Each scope owns its own memory, and memory flows downward through copy-on-write.

org/acme                          # your organization
└── user/milo                    # a developer (you)
    └── project/auth-service     # a git repo
        ├── branch/main          # production branch
        │   ├── session/s-4f2a   # this morning's IDE session
        │   ├── session/s-9c1b   # yesterday's debug session
        │   └── session/s-2e3d   # last week's refactor
        └── branch/jwt-rotation  # feature branch
            ├── session/s-c41d   # design decisions
            └── session/s-b6f8   # implementation

# Each scope holds its own 4x4 memory matrix.
# Branches copy-on-write from project. Sessions
# live on top of branches. Capability tokens
# control who can read what, and how far.
ORG
Your organization Shared institutional knowledge: conventions, patterns, architectural decisions that apply across every team.
USER
An individual developer Personal context that follows you across every project. Your preferred patterns, your debugging style, your taste.
PROJECT
A git repository Project-wide knowledge: the codebase graph, architecture decisions, every commit message that mattered.
BRANCH
A git branch Branch-isolated memory. Copy-on-write from project. Diverges as you experiment. Merges cleanly when you ship.
SESSION
A live IDE session What your agent did today: every edit, every chat turn, every decision. Hash-chained, signed, queryable forever.
// memory subsystem · routing

Why memory routes, not replicates.

Cloud memory tools default to replication: shove everything into one shared store and let access control sort it out. That breaks on privacy, latency, and trust. Orqenix routes instead: memory stays in its scope of origin, and capability tokens authorize cross-scope reads on demand, narrowing at every hop.

Routing

Lazy, narrowing, signed

Reads are lazy, narrowing (tokens only tighten as they hop, never widen), and signed (every cross-scope read carries an Ed25519 proof).

Capability

Permissions as data, not config

A capability is a signed token, not a row in an access list. Grant by minting. Revoke by burning the parent. Narrow by deriving a child. The token is the permission.

Provenance

Every memory ships with a receipt

BLAKE3 hash chain at each scope. Every write extends it. Modify history and the chain visibly breaks. Prove which session produced what memory, end to end.

org/acme 23,800 memories user/milo 8,420 memories user/alex 7,180 memories project/auth-service 1,248 project/web-app 980 project/billing 1,510 project/internal 720 main · 312 jwt · 240 main · 280 v2 · 196 main · 408 refund · 322 main · 196 admin · 158 cloud sync · cross-machine · 42ms main↔jwt · 6ms main↔v2 · 9ms main↔refund · 7ms main↔admin · 5ms auth↔web · read:code · 18ms billing↔internal · read:patterns · 14ms delegation · milo→alex · read:billing-graph · 28ms s-4f2a 47 s-9c1b 38 s-2e3d 22 s-c41d 31 s-b6f8 29 s-1a92 18 s-8b14 25 s-3f7c 41 s-a2e1 19 s-d3b5 28 s-7c12 33 s-0e44 24 s-2c87 35 s-9f3d 52 s-4a01 28 s-1d4a 21 s-c5f7 30 s-3b69 26 s-f12e 16 s-6c8a 22 s-aa23 18 s-d28b 14 s-3194 19 s-cf60 11
Ownership zones
org organization root
user developer space
project git repository
branch git branch
Session nodes
small 11-24 memories
medium 25-40 memories
large 41+ memories
active currently focused
Capability routes
internal within same branch
cross-branch within project
cross-project within user
delegation cross-user, narrowed
// memory subsystem · structure

Why a matrix, and not a vector blob.

Most memory tools embed everything as opaque vectors and let the LLM "figure it out." That breaks the moment you need to know which memory came from where, why it was retrieved, and what its trust level is. Orqenix takes the opposite bet: structured first, embedded second. A 4×4 matrix of memory tiers crossed with knowledge bases gives every memory a precise coordinate.

Tiers

Memory ages have different physics

Working is hot and mutable. Episodic is ordered and replayable. Semantic is vector similarity. Global is cross-scope query.

Knowledge bases

Code is not chat is not docs

DocsKB is RAG-shaped. CodeKB needs a tree-sitter graph. DecisionKB records explicit decision types. ChatKB is hash-chained for audit.

Copy-on-write

Branches isolate without copying

Branching creates an overlay, not a duplicate. Reads fall through to parent. Writes happen locally. Zero-cost branching, clean merges.

PROJECT 1,248 memories
Docs RAG Code graph Decision 13t Chat chain
Working active
Episodic per session
Semantic embeddings
Global cross-scope
28
112
476
168
31
98
512
142
22
86
390
120
18
74
300
96
BRANCH 312 memories
Docs Code Decision Chat
Working
Episodic
Semantic
Global
20
80
340
120
22
70
366
101
16
61
278
86
13
53
214
69
SESSION 47 memories
Docs Code Decision Chat
Working
Episodic
Semantic
Global
11
44
187
66
12
38
201
55
9
33
153
47
7
29
118
38
project
branch
session
diverged from parent
pulled live
// the workbench · context is where quality is won or lost

Same agent. Same model. Better answers.

Memory, plugins, and skills exist to do one thing: build a better prompt before it reaches the model. Alignment is the goal, not memory itself.

When your agent asks the model a question, the answer is only as good as the context inside that prompt. Generic context produces generic answers. Wrong context causes goal drift, where the model confidently goes off in a direction your codebase never agreed to. Missing context forces the model to guess, and guesses become bugs.

The Workbench is where you watch the runtime assemble that context. A deterministic pipeline (recall, distill, sign, rerank, inject, send) builds the prompt from the specific past decisions, code patterns, and session history that relate to the request. You can audit every step. If the model gives a bad answer, you can see exactly which memory caused it.

orqenix workbench · localhost:27420 live
live
Context assembly
Sessions
subsystems
Memory matrix
Capability mesh
Plugins
Skills
Harness
extend
Marketplace
Self-learning
system
Audit log
Settings
prompt › how does our JWT refresh flow handle rotation? req #1042
01
recall
02
distill
03
sign
04
rerank
05
inject
06
send
aligned context for this request · click any row to trace its origin ↑
system 8%past decisions 30%codebase patterns 24%live state 8% headroom 30% · precision over volume
alignment trace
This live demo is best explored on a wider screen.
// self-learning subsystem

Your runtime gets smarter with use.

Most tools stay frozen at install time. Orqenix watches what your agent actually does, finds patterns that repeat, verifies them against history, and promotes them into reusable skills. The runtime you use next week is not the one you installed yesterday.

It is not magic. It is a four-stage loop, fully inspectable, fully auditable. Nothing graduates to a skill without passing verification, and the human stays in control of every promotion.

01 OBSERVE 02 INSTINCT 03 VERIFY 04 SKILL
01

Observe

An observer hook watches every edit, every chat turn, every decision your agent makes. Nothing is sent anywhere. It all stays in the local memory mesh.

02

Instinct

The instinct-promoter detects repeated patterns and promotes them into candidate instincts. "Always run tests before commit." "Refactor pattern X this way." A pattern, not yet trusted.

03

Verify

The verification loop checks each instinct against historical memory. Did this pattern hold up across past sessions? Are there counterexamples? Survivors graduate. Failures get logged and dropped.

04

Skill

Verified instincts become reusable skills in the registry, signed and reviewable. Your agent uses them on the next session. The loop restarts. The runtime keeps improving.

// the platform layer

Extend it. Orchestrate it. Enforce it.

Memory is one subsystem. The platform is everything else that makes the agent run well. Plugins, skills, harness, and methodology enforcement — composable building blocks, not fixed features.

Plugins Extensibility hooks
Plugin kinds for storage, transport, normalizers, hooks, exporters, and more. Compose the runtime around how your team works, not how the default config assumes you do.
storagetransportnormalizerhookexporter+ more
Skills Reusable capabilities
Pre-built skills shipped with Orqenix and grown via the marketplace. Git workflows, test runners, code reviewers — anything that should not be written by your agent from scratch every session.
git workflowstest runnerscode reviewcustom skills
Harness Agent orchestration
More than one agent at a time. Subagents for specialized tasks. Team coordination patterns. Lifecycle hooks and methodology enforcement — the agent does not skip steps, does not invent shortcuts, does not lose the plot.
subagentsteamslifecycle hooksenforced workflow
// the marketplace

A marketplace, not a feature list.

Skills, plugins, MCP servers, hooks — published by the community, signed at publish, installed locally. The runtime stays small. The ecosystem grows. What you can do with Orqenix tomorrow is more than what shipped today.

orqenix marketplace · localhost:27420/marketplace signed · local install
Featured
Recently added
Conventional Commits
Skill that enforces commit message conventions across your team.
Pre-commit Linter Hook
Block agent commits unless the diff passes your linter and formatter.
Markdown Normalizer
Plugin that normalizes mixed markdown sources before they enter the memory mesh.
Linear MCP
Read and update Linear tickets from inside your agent's MCP context.
Code Review Companion
Skill that walks your agent through a structured review of a PR diff.
S3 Exporter
Export distilled memory snapshots to your own S3 bucket on a schedule.
Methodology Guard
Lifecycle hook that prevents the agent from skipping verify-before-done.
Slack MCP
Lets your agent post status updates and pull conversation history from Slack channels.
Anyone can publish. Everything is signed at publish time. Install locally with one command. Apache 2.0 compatible · capability-scoped · no central registry
// the strengths · what Orqenix uniquely delivers

Built for capabilities no other tool ships.

Most memory tools solve a slice of the problem. Orqenix is a full runtime: nested git-aware scopes, cryptographic provenance, capability-controlled routing, a self-learning loop, a plugin marketplace, and Apache 2.0, all in one process.

★ Orqenix strengths

The teal column lists capabilities that ship in Orqenix today and are unique or significantly stronger than alternatives.

Capability OrqenixMem0Letta (MemGPT)Cursor / IDE memoryVector DB
Full runtime, not just a memory store ✓ memory + plugins + skills + harness + learning memory only memory + agent memory only storage only
Self-learning loop that promotes patterns to skills ✓ observe → instinct → verify → skill
Local marketplace with signed publish and install ✓ skills, plugins, MCP servers, hooks extensions only
Fully open source, no "open core" tricks ✓ Apache 2.0, the whole stack Apache 2.0 (limited) ✓ Apache 2.0 proprietary varies
Local-first, runs entirely offline ✓ default mode cloud SaaS ✓ self-host cloud only mostly cloud
Five nested scopes (org/user/project/branch/session) ✓ first-class primitive user only agent only project only flat namespace
Git-aware with copy-on-write branching ✓ zero-cost branching via .cursorrules
Ed25519 signed capability tokens that narrow ✓ every read verified API key only API key only
MCP-native, works with Claude Code, Cursor, Cline ✓ stdio + WebSocket REST API Python SDK Cursor only SDK
Zero telemetry, zero usage tracking ✓ guaranteed by design collects usage configurable collects usage collects queries
// security · provenance · privacy

Memories you can cryptographically trust.

Every memory is signed at the moment it is written. Every cross-scope read is verified against the signature chain. Every audit trail is hash-linked. You can prove, end to end, exactly where any piece of context in your LLM prompt came from.

Ed25519 signatures
Every scope owns a keypair. Every memory is signed at write time. Cross-scope reads verify the full signature chain before any data is returned.
BLAKE3 audit chain
Every write extends a tamper-evident hash chain. Modify history and the chain visibly breaks. Full provenance from session capture through to the LLM context window.
Capability tokens
Scopes grant read permission with capability tokens that narrow at every hop. read:* narrows to read:code narrows to read:code.func. Tokens never widen.
Local-first, no exceptions
Everything runs on your machine by default. Zero telemetry. Zero anonymous metrics. Zero usage tracking. Sync is opt-in and peer-to-peer when you want it.
// open source · for the long haul

Built in the open. Forever.

Apache 2.0. The whole thing.

No "open core" sleight of hand. No premium-tier-only features. No SaaS-only mode. The entire runtime, including the workbench, plugin marketplace, storage adapters, transport layers, and self-learning loop, lives in one repository under Apache 2.0. You can self-host it, modify it, fork it, ship it as part of your own product. It is genuinely yours.

APACHE 2.0 Self-host, modify, redistribute, fork freely
→ Build a plugin or skill
Marketplace plugins for storage backends, hooks, normalizers. Skills for git workflows, test runners, code review. Apache 2.0 compatible, ship it your way.
→ Self-host the runtime
Run the entire platform on your own infrastructure. Single binary, zero cloud dependencies, zero phone-home. Free forever, yours forever.
→ Fork freely
Want to take Orqenix in a different direction? Fork it. Apache 2.0 means it is yours to modify, redistribute, even build a commercial product on top of.
// roadmap · what is built, what is next

Shipped today. Shipping tomorrow.

Orqenix is built incrementally. Each phase is a complete, usable system on its own, never a half-finished feature waiting for the next release.

Phase 1
Memory matrix
4 memory tiers × 4 knowledge bases. SQLite storage. Full local CRUD with capability checks on every operation.
✓ shipped
Phase 2
Scope identity
Ed25519 keypair per scope. BLAKE3 hash-chained audit trail. Capability token narrowing on every cross-scope read.
✓ shipped
Phase 3
MCP server
Native Model Context Protocol integration. Works out of the box with Claude Code, Cursor, Cline, and any MCP-compatible agent.
✓ shipped
Phase 4
Plugins + skills + harness
Plugin system, skill registry, and agent harness. Native bindings, subagents, team coordination, lifecycle hooks.
✓ shipped
Phase 5
Workbench + self-learning + marketplace
Local control plane at port 27420. Plugin marketplace with signed install. Self-learning loop. Distillation pipeline.
→ shipping now
Phase 6
P2P sync (optional)
libp2p transport for peer-to-peer multi-machine sync. Stays opt-in. Stays local-first. Stays Apache 2.0.
planned