Skip to main content

bentotruck

BentoTruck is an agent engineering framework — every compartment of the bento box is a building block for agentic systems.

Just like a bento box: each compartment holds a distinct, purposeful piece — together they make a complete meal.

Philosophy

BentoTruck is not "yet another AI framework." It is Agent Engineering — focused on the fundamental pieces that every agentic system needs, regardless of which model or provider sits underneath.

Not focused on prompts. Not focused on OpenAI. Not focused on LangChain. Focused on architecture.

Compartments

Module Emoji Role
rice rice Core Agent — Agent, Session, Context, State, Events
teriyaki meat_on_bone Planning — ReAct, Tree, Graph, Step, Goal planners
edamame broccoli Memory — Conversation, Vector, Graph, Working, LongTerm
gyoza dumpling Tools — Python, REST, SQL, Filesystem, Browser, MCP, Docker
tempura fried_shrimp Skills — Reusable behaviors: Search, Summarize, Code, Research
nigiri sushi Models — Vendor-neutral providers: OpenAI, Anthropic, Gemini, Ollama, Azure, vLLM
miso bowl_with_spoon Reflection — Reflect, Retry, Improve, Critique, Verify
yuzu tangerine Evaluation — Confidence, Grounding, Latency, Hallucination, Cost, Quality
onigiri rice_ball Workflows — Workflow, Step, Condition, Loop
bento bento_box Multi-Agent — Team orchestration
sake sake Communication — Message, Broadcast, Channel, Event, Topic
udon steaming_bowl Pipelines — Pipeline, Step, Condition, Loop, Parallel
dango dango Prompts — Template, SystemPrompt, FewShot, Variables, PromptRepository
naruto fish_cake Routing — Capability, Semantic, Rule, Intent, Hybrid routers
katsu curry Safety — PII, Injection, Moderation, OutputValidator, PolicyEngine
wasabi herb Observability — Trace, Span, Logger, Metrics, Profiler

Quick Example

from bentotruck import rice, gyoza, edamame, nigiri

agent = (
    rice.Agent("Restaurant Assistant")
    .using(nigiri.Mock(reply="Order confirmed."))  # swap in nigiri.OpenAI(), nigiri.Anthropic(model=...), nigiri.Gemini(), or nigiri.Ollama()
    .with_memory(edamame.VectorMemory())
    .with_tools(
        gyoza.SQLTool(connection=my_db_connection),
        gyoza.RESTTool("orders_api", "Look up an order.", url="https://example.com/orders"),
        gyoza.PythonTool(),
    )
)

agent.run("What's 2 + 2?")

naruto.SemanticRouter() and friends are on the roadmap — see the module table above for what's implemented (rice, nigiri, gyoza, edamame) versus planned.

Fleet

  • ThaiTruck — batch DataFrame cleaning & processing (Data Engineering)
  • SushiTruck — streaming ingestion & API connectors (Data Acquisition)
  • RamenTruck — ML/AI toolkit (Machine Learning)
  • BentoTruck — agent engineering framework (Agent Engineering) (this package, in development)

Core compartments (rice, nigiri, gyoza, edamame) implemented. Remaining compartments are design-stage — see PROJECT.md.

Metadata

Release files for bentotruck 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bentotruck 0.2.1
File Size Uploaded
bentotruck-0.2.1.tar.gz 21.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bentotruck 0.2.1
File Interpreter ABI Platform
bentotruck-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 40.9 kB

Release files / bentotruck-0.2.1.tar.gz

Download URL bentotruck-0.2.1.tar.gz
Size 21.2 kB
Tags Source
SHA-256 checksum
How to use checksums
4c87ddfe5e55d1b08f068c0bf03ce2c39d36df6778149353fc4b6662dc89955e
BLAKE2b-256 checksum
How to use checksums
3dd3886333d482af56a2e8a469c0e3d2ec3b89af5cf6ffc0529275b9f94e8476
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.9

Release files / bentotruck-0.2.1-py3-none-any.whl

Download URL bentotruck-0.2.1-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
daf865db04577efda4ae4d010088c14c4450d11ed67120f3c7a19f1af1579a4b
BLAKE2b-256 checksum
How to use checksums
5b3bd4cbdc78f685e5b61fd55a42322677662413c07b76bcba6d2b2dee8d70f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.9

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page