Self-hosted · Multi-tenant · Apache-2.0

Self-hosted AI work harness.
Your team, your context, your server.

Your team's context and knowledge base load before every session. Hermes, OpenClaw, and Grok Bot drive the board. An adversarial reviewer grades every output before you see it. Your keys, your server.

self-hosted, your server multi-tenant workspaces RBAC + agent personas adversarial review gate
53 tools · 82 skills · 19 agents

The field left something open

The shared board your agents drive.

Hermes, OpenClaw, and Grok Bot each install in one command. Paste your OperationKit API key and they drive objectives on the board. Every session loads your team's shared context. Real use means multiple Pro coding subscriptions. OperationKit rotates the seats.

Ships configured.

Six-phase pipeline, C-suite personas, per-workspace context. Plain markdown you own.

Multi-tenant out of the box.

One deployment, isolated workspaces, real RBAC. No sales call required.

Governed by design.

An adversarial reviewer grades every output against locked criteria.

Under the hood

Four layers. One-way dependency.

Tools → Skills → Agents. Edges declared in frontmatter, validated by okit. Dangling references are build failures.

Objectives, not tasks.

Every objective runs in its own dedicated session. Strategy objectives spawn workers and re-wake on completion. Workers run, get reviewed, report back. SQLite-backed state survives restarts.

objective state machine
# objective state machine planning → queue → working → ai_review → human_review → done fail: reverts here findings prepended to next prompt

A second agent grades every output.

A fresh-context reviewer grades output against pre-locked criteria, blind to the worker's scratch. Auto-iterates up to three times. You see results, not drafts.

review gate - fresh context
# review gate - fresh context, criteria locked up front working → ai_review auto ai_review → working verdict: FAIL (findings prepended) ai_review → human_review verdict: PASS (project-type only) ai_review → done verdict: PASS (task/bug type)

Context that loads in the right order.

Four tiers load before the model sees a token: global routing, agent persona, workspace context, user profile. Late-loaded tiers cannot override earlier rules. OperationKit has four, validated by okit validate.

session context - assembled on spawn
# session context - assembled on spawn ~/.claude/CLAUDE.md # global routing ~/ai-workspace/agents/<agent>.md # persona + skills workspaces/<ws>/context.md # business context users/<user>/profile.md # user preferences + objective memory, KB hits, recent decisions

Tools, skills, agents. Every edge is declared.

53 tools. 82 skills. 19 agents. Every edge declared in frontmatter. okit validate hard-fails on any slug that does not resolve. A renamed tool is a build error.

tools → skills → agents (one-way)
# tools → skills → agents (one-way) # okit validate: dangling edge = hard failure skills/email/SKILL.md tools: resend, google-workspace agents/cmo.md skills: pipeline, marketing, email, ...

Honest answers

Three things you are probably thinking.

Hermes, OpenClaw, and Grok Bot already install in one command.

They do. Give any of them your OperationKit API key and they control objectives on the board. OperationKit adds the workspaces, shared context, and seat rotation your real-use load requires.

What about my API keys?

It runs on your server, code you can audit. Your keys do not leave your machine. Not a hardened managed SaaS, not a security guarantee. If "I need to read every line that touches my keys" is the bar, this is it.

How do I evaluate this before committing?

Clone github.com/m1keluka/OperationKit. Start with SECURITY.md; it states the threat model. Apache-2.0. Star the repo to follow releases.

Follow the build.

The source is live. Star the repo, or leave your email for release notes.

Or star the repo to follow along.