Triggers
GitHub webhooks, Linear issues, cron schedules, MCP calls, URLs, or a manual fire.
Declare your harnessEverything wrapped around the model to make an agent run — triggers, a sandboxed workspace, tools, skills, and guardrails. Bento keeps that harness in version control instead of a dashboard. as code.
Bento is an agent factoryA reusable component that turns an agent specification (model, prompt, tools, permissions) into a configured, ready-to-run agent — centralizing setup so you can produce many agents from a uniform definition. that scales off-the-loopWork that runs without a human in the loop on every step — an event triggers the agent and it reports back, instead of you steering it prompt by prompt. workflows for individuals and teams, turning manual steering into repeatable, version-controlled pipelines.
Meet your new loop
All in code, all in your repo, all on your terms.
How it works
trigger:github: pull_request.openedagent: reviewerskill: pr-reviewoutput:github: reviewguardrails:read_only: truetimeout: 900
An event you already produce — a PR opening, an issue landing, a cron firing. Pick what kicks off the pipeline.
Choose who runs and the procedure they follow. Same personas, different playbooks — composed per pipeline.
Post back to the surface that triggered it — a review, a comment, a Slack message. The work lands where you work.
Bound the run: a timeout, read-only mode, or an explicit tool allowlist. Start safe, then grant more.
Prior state, team knowledge, scoped identity and other advanced features that give you maximum control over how you synthesize context for your pipelines.
Iterate on outcomes in prose with enterprise tools to evaluate and build trust with your agentic workflows.
Knowledge
Your wiki, blueprints, and recipes live in the repo. One knob decides how they land in a run — pushed into the prompt, listed for on-demand reading, mounted as files, or left to a tool.
knowledge:mode: qmdtopK: 3maxTokens: 4000
BM25 retrieval — the top matches are pushed into the prompt as <context> excerpts.
Features
GitHub webhooks, Linear issues, cron schedules, MCP calls, URLs, or a manual fire.
Claude and Codex today — route each pipeline, or A/B them, to the runtime and model that fits.
Every run in an ephemeral container — Docker, Podman, Daytona, or just-bash. Repo cloned fresh, credentials scoped, host untouched.
Timeouts, token budgets, read-only mode, and tool allowlists — declared per pipeline.
Per-target workspaces that persist across runs: cloned repo, prior-run notes, and history — injected into the next run.
{
cursor: 4821,
indexed: "1.2k"
}persists across runs · 10 MBPersistent JSON per pipeline for cursors, indices, and metadata that outlive a run — off the prompt budget.
Your wiki, blueprints, and recipes — indexed and injected per run, or queried on demand. Agents work from your team’s knowledge.
Every trigger, run, and turn recorded. Inspect the prompt, replay any event, reconstruct a run turn by turn.
One bento CLI drives it all: daemon lifecycle, firing triggers, tracing runs, workbenches, tokens, doctor.
Own your harness
The harness is just code in your repo. Switch providers whenever you like, run it on your own hardware, keep your data to yourself. Most agent platforms can't say that — your code on their cloud, your team on their models, your data in their logs.
Nothing to get locked into. Just your harness, your way.