“Who approved that?”
An agent changed something that matters. The approval lived in a chat, if it happened at all.
ConvOps is the governance layer for your enterprise AI operations. Teach your process once. Every AI and every person runs it the same way, on your infrastructure.
self-hosted · your Kubernetes · your models
Cloud We run the governance. Your AI tools, models and repositories stay yours and connect over MCP.
The governance layer for enterprise AI operations: one process for every AI tool and team, approvals that hold, an audit trail, and the option to self-host on your Kubernetes.
ConvOps is the operations layer for AI agents: an MCP server that holds your team's process as workflows, with approval gates, a shared memory and an audit trail. It runs no AI models.
updated
Security asks that first. The business asks the next three, usually after something went wrong.
“Who approved that?”
An agent changed something that matters. The approval lived in a chat, if it happened at all.
“Where did that decision go?”
It was made in one AI tool, in one session, by one person. Nobody else can find it now.
“What happens when someone leaves?”
The process lived in their prompts. It leaves with them, and the AI never learned it.
Your AI tools on top. ConvOps in the middle, holding the process. Your executors and your cluster underneath, doing the work.
The cluster, the models, the keys, the network, the record and the boundaries between teams. ConvOps governs the work; it does not take any of these.
Every run is a pod in your Kubernetes. Self-hosted, the engine, the brain and the audit live there too.
one Helm chart
Bring your own model provider and credentials. Claude Code and OpenCode today; other agents plug in the same way.
bring your own
Stored through a one-time link, never pasted in chat. Each run gets its own Secret, masked in every log and transcript.
never in the chat
Run pods take no inbound traffic and limited outbound. No service-account token, non-root, every capability dropped.
pod security: restricted
Every task and every workflow instance keeps its history, step by step. Every run keeps tokens, cost, duration and result.
tasks + workflow instances
One per team, business unit or customer, each walled off. Three roles in each: owner, admin, member.
walled off by default
Start with approvals on every step. As trust grows, let the work run on its own.
One team, one workspace, one real process. Every step waits for a person to approve it. Nothing runs that nobody saw.
Refund review · approvals on every step
Describe how the work goes, in the AI tool you already use. ConvOps turns it into a workflow that every AI runs the same way.
the same workflow runs in Cursor, ChatGPT and Codex
As runs prove themselves, drop the approvals that only slow you down. Keep the ones that guard production, money and customers.
week one
now
Nightly and weekly work runs on its own, each run in its own pod, at the times you set. Each run leaves a record.
Your platform team installs one Helm chart in your Kubernetes. Your models, your keys, your network. Nothing has to leave.
Engineering, support, finance, each customer. One workspace each, walled off, with the same governance in every one.
example workspaces · each walled off · same governance
Refund review · approvals on every step
Gates the AI cannot skip. A history for every task. Three roles. A workspace per team, business unit or customer.
Approvals the AI cannot skip. The engine checks them, so the step does not move until a person says yes.
GovernanceEvery task and every workflow instance keeps its history. What ran, which step, and where it stopped.
GovernanceOwner, admin, member. Plain to grant, plain to review. No maze of permissions to audit.
WorkspacesOne per team, business unit or customer. Each one walled off in the database itself.
Workspacespolicies guide · gates hold Policies are guidance the AI reads. Gates are what the engine checks. The step does not move until a person approves.
Self-hosted installs set the run namespace, pod posture, network policy, time limit and model credentials in one Helm values file.
# install (example)
helm install convops convops/convops \
--namespace convops --create-namespace \
-f values.yaml
# values.yaml (example keys)
runs:
namespace: convops-runs
podSecurity: restricted
networkPolicy:
ingress: none
egress: limited
timeLimit: 4h
models:
existingSecret: model-credentialsOne call names the engine, a pinned version, the model, the time limit and a credential reference. A raw value is refused; you get a one-time link instead.
executors_manage({
"action": "create",
"workspace": "engineering",
"slug": "isolated-sonnet",
"runner": "convops",
"config": {
"backend": "isolated",
"isolated": {
"agent": "claude-code",
"agent_version": "2.1.4",
"model": "sonnet",
"time_limit_s": 14400,
"credential": {
"kind": "api-key",
"secret": { "source": "intake" }
}
}
}
})
// response (abridged)
{
"slug": "isolated-sonnet",
"credential": {
"status": "awaiting value",
"one_time_link": "<sent to you, used once>"
}
}A schedule fires on a calendar rule, creates the task and runs it on the executor you name. Times are UTC.
{
"tool": "schedule_create",
"arguments": {
"title": "Dependency check {date}",
"vertical": "development",
"project": "payments",
"rrule": "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR;BYHOUR=1;BYMINUTE=0",
"executor": "isolated-sonnet"
}
}Members join a workspace with one of three roles. Invites wait to be accepted and expire after seven days.
{
"workspaces_members_manage": {
"action": "create",
"workspace": "northwind",
"email": "lead@northwind.example",
"role": "member"
}
}The controls, the boundaries and where each one stops. Written down before the first call.
No big-bang migration. We start on one real process of yours and grow from there.
We walk through one process you want governed, and where your code and models need to run.
One workspace, approvals on every step, your team in the loop. Weeks, not quarters.
Your platform team installs the Helm chart. Teams move over one workspace at a time.
Bring one process and your security questions. We show ConvOps running it, and where it would live in your cluster.
Self-hosted, in your own Kubernetes cluster, in the region and under the controls you already run. The engine, the brain, the audit and every run live there, and nothing has to leave your cluster.
Your own. You bring the model provider and the credentials. Runs use Claude Code or OpenCode today, and the design is agent-neutral: Codex, Kimi and others plug in the same way.
Yes. Self-hosted, the whole system runs in your cluster from one Helm chart. Runs reach only the model endpoints, repositories and MCP servers you configure.
Self-hosting runs under a commercial licence. We scope it with you on a call, around your teams and your rollout. There is nothing to sign before the pilot shows you it works.
Neomanex, the team that builds ConvOps. You talk to the engineers who wrote the engine, from the first call through the rollout. Support terms are part of the commercial licence.
Weeks, not quarters. One workspace, one real process of yours, approvals on every step. You see it run on your own work before you decide anything else.
No. Claude, Cursor, ChatGPT and Codex connect over MCP. Your teams keep the tools they use; the process, the approvals and the record move into ConvOps.