Open source

Built so your workflow stays on your side.

You shouldn't need permission
to do your own work.

Most AI tools make your workflow dependent on systems you don't control. When they fail, reset, or change — you start over.

Contenox runs on your machine, keeps your context, and executes real work — so you're not renting your ability to ship.

Not another chat. A system that executes.

Why do I need permission to do my own job?

See why this exists

Full origin story · Why this exists

Workflows persistContext stays on your sideYou choose who you rely onShip without their uptime

Why this exists

It didn't start because AI tools were "bad." It started when they became unavoidable.

You might assume the motivation was frustration with tools that only "suggest" things, lack of reliability, cloud dependence, or not enough observability for serious use. That's not wrong — but it wasn't the real wound.

Once AI becomes your day-to-day way to get work done, the walls show up fast: "unable to reply," "try again later," "out of tokens," upgrade banners. Staying effective meant juggling providers. And once they're embedded in your workflow, it gets harder not to depend on them at all — or to stay competitive without them.

But surface-level friction isn't the core issue.

At some point it stops being a tooling problem. It becomes a question:

Why do I need permission to do my own job?

And why hand over all your data, your work, your structure — to a remote system that isn't even operating at a profit?

Contenox is built as an answer to that — not another chat, not another assistant.

So I built Contenox to be different:

  • your workflows are your own
  • your context stays local
  • execution is deterministic where you define it — and yours to trace and own
  • your ability to ship doesn't depend on someone else's uptime or pricing model

If your work depends on a system you don't control, you don't own your workflow. You're renting it.

Longer version of the story →

Get it running

$curl -fsSL https://contenox.com/install.sh | sh

Star on GitHub · Docs

Proof

Terminal or browser — your call.

These aren't suggestions. They're real commands, executed on your machine.

No copy-paste loops. No chat roulette. Just execution. Recipes you can repeat without re-teaching the context every time.

contenox

Automate release notes

$ git log --oneline | contenox run release-notes
## v0.9.1 — Hook policies, SQLite fixes, CLI cleanup
See the full recipe

Generate contextual commits

$ git diff --staged | contenox run commit-msg
feat(hooks): add chain-scoped security policies
See the full recipe

Autonomous project scaffolding

$ contenox plan new "scaffold a Go HTTP server with tests" && contenox plan next --auto
Step 1/5: Create project structure... ✓
See the full recipe

Notion via MCP

$ contenox run --input "Summarize my Tasks DB" --shell
✓ Fetched Notion database…
See the full recipe

Playwright browser MCP

$ contenox run --input "Click 'Sign in' on localhost:3000" --shell
✓ Navigated — clicked selector…
See the full recipe

Stateful agents (MCP memory)

$ contenox run --input "Remember: release is Friday" …
✓ Stored in MCP memory graph
See the full recipe

Codebase → docs

$ contenox run --input "Document pkg/auth" --shell
## Architecture — auth package…
See the full recipe

Linear planning from repo

$ contenox run --input "Create tickets from CI + next.config" …
✓ Created LIN-42 …
See the full recipe

Beam — where the thread is the workspace

Terminal output, file reads, live agent steps, and plan state appear inline in the conversation — not in side panels you forget to check. If it's visible, the agent knows about it. State flows both ways.

Same runtime as the CLI. No cloud required.

Read the Beam guide

Not a claim. A thing that happened.

Contenox wrote this page.
Cursor deleted it. The trace survived.

Contenox ran a 41-step plan and rewrote this site's copy autonomously — reasoning stored step by step in a local SQLite file on this machine. Then Cursor, the cloud-backed AI editor, deleted the enterprise directory instead of making a .gitignore entry.

We recovered everything. Not from a cloud backup. Not from a pushed branch. From the audit trail Contenox left in .contenox/local.db — the full goal, the copywriter brief, the step summaries, the reasoning chain.

That's the difference between a tool that executes on your side and one that executes on someone else's.

$ contenox plan show
Plan: plan-35e3bf43 (active) — 22/41 complete
Full goal, step summaries, reasoning chain. Still there.
$ git log --oneline
04d0888 Try to fix the admin area
One commit. The damage Cursor left behind.

From idea to done — without the tab disappearing.

A plan you can keep, not a chat you have to renegotiate.

1

Say what you need

Plain language or piped input — no ceremony. The goal is the contract.

2

It becomes a plan that sticks

A real sequence you can revisit. It doesn’t evaporate when a session ends.

3

Execute in order, on your side

Steps run where you work — in sequence, under rules you set — not wherever a remote UI happens to be up.

4

You keep the keys

Green-light what’s risky, automate what isn’t, or watch it run — your call.

Connect your workflow to your entire stack

MCP is the standard your tools already speak — wire databases, SaaS, browsers, and internal APIs into real execution, not toy demos.
Notion, Postgres, GitHub, Linear, and whatever you run next.

Universal MCP Client

Connect Notion, GitHub, Postgres, Linear — literally any tool that speaks MCP. One standard. Unlimited power.

Bring your own API

Drop in any OpenAPI spec and the model instantly gets those endpoints as tools. No code. No SDKs. Just works.