DEVPROOF.AI Own your scalable AI

Self-hosted · Open models · Your cluster

LLM serving +
managed agents
on Kubernetes.

Run frontier-class open models and autonomous agents on infrastructure you control — from a laptop to a thousand-node cluster, with OpenAI- and Anthropic-compatible APIs.

your-cluster — devproof
$ helm install devproof oci://ghcr.io/devproof/devproofai-helm control plane · gateway · operator running $ kubectl port-forward svc/console 7090:7090 & $ kubectl port-forward svc/gateway 14000:4000 & $ open http://localhost:7090 # the console model deployed · routing "main" · key minted $ export ANTHROPIC_BASE_URL=http://localhost:14000 $ export ANTHROPIC_AUTH_TOKEN=dpk_… $ claude --model main -p "triage this week's inbox" agent finished · 3 reply drafts · wiki updated no vendor account · data stays on your cluster $

Use case 01 — Managed agents

Not a chatbot —
an autonomous worker

A managed agent is a model given a goal, a set of tools, and the freedom to take many steps to finish the job — it plans, runs code, checks its own work, and repeats until it's done. Feed it any files — spreadsheets, log files, diagnostics, screenshots, images — and package your procedures as skills that guide how the work gets done.

devproof.ai / sessions — live, in real time
A live agent session recorded in real time: the transcript grows with thinking and tool calls, tokens and cost tick up, the agent delegates to a second agent, and the final result opens as rendered markdown.

A real session, recorded live: the agent loads its triage skill, works an inbox export plus a diagnostics log, consults the team wiki, delegates a knowledge-base update — and the finished result opens as rendered markdown. Click any screenshot to expand.

Isolated, secure session containers

Every session runs in its own container with its own filesystem — no internet unless the environment allows specific hosts, secrets injected from credential vaults, never visible to the model or other tenants.

Delegation

Agents hand work to other agents as full child sessions — a triage agent delegates to a librarian, and the transcript links parent and child.

Full skill support

Anthropic-style skill packages with progressive disclosure: agents see an index and load only the files they need — versioned, shared per workspace.

Full MCP support

Connect any MCP server to an agent. Credentials come from the vault, egress opens automatically for the server's hosts, and a bundled registry covers common servers.

Wikis & memory

Shared LLM wikis — many readers, exactly one writer agent — plus per-agent memory stores that persist across sessions.

Idle-to-zero economics

Turns run as Kubernetes Jobs that cost nothing between messages. Sessions checkpoint and resume — even after failures.

skill + evidence files
Transcript start: the agent loads its triage skill and reads the attached CSV and diagnostics log in parallel.

The same session starts by loading its skill and the attached evidence files.

devproof.ai / agents
The agents list: versioned agents with routing, status and a wiki-writer badge.

Agents are versioned configs: routing, tools, skills, environment, subagents.

devproof.ai / wikis
An LLM wiki: a folder tree of markdown pages maintained by a single writer agent.

An LLM wiki the agents maintain themselves — one writer, many readers.

devproof.ai / environments
Environments: sandbox profiles with egress allowlists and pod resources.

Environments define the sandbox: egress allowlist, resources, persistent disk.

devproof.ai / sessions
The sessions list with token usage and billed cost per session, including a delegated child session.

Every session with tokens and cost — including delegated child sessions.

Or from code

Script everything

Anything the console can do, the REST API and the typed Python client can do too — create agents from CI, kick off sessions from a webhook or a cron job, and wire the results into your own product. A dozen lines end to end.

python — devproof client
$ pip install devproofai-client   from devproof import Devproof   client = Devproof() # DEVPROOF_BASE_URL + DEVPROOF_API_KEY   agent = client.agents.create( name="support-triage", routing="support", environment_id=env["id"], tools=["Bash", "Read", "Write"], system_prompt="You triage the M40 support inbox.", ) session = client.sessions.create(agent=agent["id"], prompt="Triage this week's inbox export.")   for event in client.sessions.events.stream(session["id"]): print(event["type"], event.get("payload"))

Use case 02 — Model hosting

Deploy any open model
in one click

A curated catalog shows hardware requirements and estimated cost for every model before you run it. One click provisions a pool and routes an endpoint — or bring your own weights from Hugging Face, an internal registry, or a plain URL.

devproof.ai / catalog
The model catalog: 162 open models with parameters, context window, GPU RAM and estimated throughput, each with a deploy button.

162 curated open models — parameters, context, GPU RAM, throughput — plus your own.

Elastic by default

Deployments autoscale on live queue depth and sleep to zero replicas when idle — requests during wake-up are held, not dropped.

One gateway, two dialects

Every deployment speaks the OpenAI and Anthropic APIs. Your existing tools switch by changing one line — the base URL.

Routings

Rule tables that resolve each request to a model — by context length, spend, token budgets, time of day, or a classifier — and can reject over-budget traffic with a clean error.

Local and remote together

External endpoints (OpenAI, Anthropic, OpenRouter, custom) sit behind the same gateway, keys stored server-side — mix self-hosted and cloud per rule.

Metered like a product

Per-key, per-agent, per-workspace usage and cost tracking, with real (infra) and billed (customer) ledgers kept separate.

No lock-in

Open weights, standard Kubernetes, and APIs your tools already speak — moving in (or out) is a base-URL change, not a rewrite.

devproof.ai / deployments
Deployments list: a local model and an external endpoint served side by side through the gateway.

Local pods and external endpoints, served side by side.

devproof.ai / routings
Routings: named rule tables that resolve client requests to deployments.

Clients call a routing like a model; rules decide where it lands.

Drop-in compatible

Point your stack at your own models

No rewrite, no new SDK, no vendor account — change the base URL.

Coding agents

Claude Code & Codex

Run your dev agents against models on your own cluster — same CLI, your endpoint.

Existing apps

OpenAI API

Anything built on the OpenAI SDK just works — flip the base URL and go.

Frameworks

LangChain & co.

LangChain, LlamaIndex, the Vercel AI SDK — unchanged, now pointed inward.

Why own it

AI stopped being a feature and became foundation — and open-weight models (GLM, Llama, Qwen, DeepSeek) now rival the closed frontier under permissive licenses. Owning the serving layer means your access · cost · uptime · scale are decided by you, not by someone else's pricing page. That's the whole argument; the rest of this page is the how.

How it works

A Kubernetes-native control plane

Six components, one chart. Runs anywhere Kubernetes does — the same manifests from a docker-desktop laptop to a thousand-node cluster.

Catalog

Pick a model

Curated + custom, with hardware and cost up front.

Operator

Provision

CRDs become serving pods, autoscaled on live load.

Gateway

Serve

OpenAI + Anthropic APIs, auth, metering — one endpoint.

Agents

Run

Sessions as Jobs: idle to zero, checkpoint, resume.

devproof.ai / dashboard
The console dashboard: models serving, agent sessions, token throughput and cost for a workspace, with live usage charts.

The console — your whole AI platform in one pane of glass, scoped per workspace.

console/

Console

The web UI above: dashboards, live session transcripts, catalog, deployments, usage and billing — everything scoped per workspace.

control-plane/

Control plane

The platform API and session orchestrator. Workspaces, agents, sessions, files, wikis, keys — Postgres-backed, event-driven.

operator/

Operator

A Go operator that turns ModelPool and ModelDeployment resources into serving pods, and scales them on live queue depth.

gateway

Gateway

One endpoint for every model, local or external: API-key auth, usage metering, routing rules, and wake-on-request for sleeping models.

session-runner/

Session runner

The per-session pod: an in-house agent loop with built-in tools (bash, files, web, MCP), checkpoints, and delegation — no vendor CLI inside.

catalog/

Model catalog

A curated YAML catalog of open models with hardware profiles and context windows; add custom entries from any source.

Source

Get the code

Everything is in one repository — operator, control plane, console, session runner, charts. Install it from there, audit what runs next to your data, patch it yourself. Source-available under the Elastic License 2.0 (self-host freely, including commercially); the Python client is Apache-2.0.