A database-native Agent Harness, by the OceanBase OSS Team.
agentseek is a database-native Agent Harness for teams that want agent runtime data to become a first-class database workload.
It treats the database as the natural place to keep agent context, execution history, tool calls, tasks, feedback, and observability together. The same runtime data can then serve debugging, replay, trajectory comparison, evaluation, analysis, and training workflows without being copied into separate systems or re-ingested later.
agentseek packages Bub with agentseek defaults, environment aliases, and a project-local runtime layout. Use agentseek when you want the Bub runtime model with a project-local .agentseek home and AGENTSEEK_* configuration.
Most agents already prove their value at runtime, but their runtime data is often scattered across JSONL logs, Markdown notes, SQLite files, tracing systems, object storage, and offline pipelines. After the first interaction, that data becomes expensive to query, replay, compare, evaluate, or turn into training material.
agentseek starts from a different assumption: context, memory, tasks, tool calls, traces, feedback, and evaluation material should share one durable substrate from the beginning. For agent systems, this makes runtime data reusable. For databases, it opens a direct path to carry intelligent-application workloads instead of only storing final business results.
git clone https://github.com/ob-labs/agentseek.git
cd agentseek
uv sync
uv run agentseek --helpConfigure a model, then start a local chat:
export AGENTSEEK_MODEL=openrouter:free
export AGENTSEEK_API_KEY=sk-or-v1-your-key
export AGENTSEEK_API_BASE=https://openrouter.ai/api/v1
uv run agentseek chatagentseek is a Bub-compatible distribution entry point. It defaults to .agentseek under the current workspace for local config and runtime home. You can also use uv run bub ... and Bub plugins directly when you want the upstream CLI or extension namespace.
Project-local skills under .agents/skills work in local runs because Bub discovers project skills from the workspace. For MCP, bub-mcp uses ${BUB_HOME}/mcp.json by default, which becomes .agentseek/mcp.json with agentseek defaults; if you prefer .agents/mcp.json in the project root, set AGENTSEEK_MCP_CONFIG_PATH=.agents/mcp.json.
If you want to run agentseek in a container with the project workspace mounted in, use the bundled compose setup:
cp .env.example .env
make compose-upBy default, compose will:
- mount the current repository into
/workspace - reuse
.agents/skillsand.agents/mcp.json - persist runtime state under
.agentseekin the workspace
To mount a different host directory as the workspace, set AGENTSEEK_DOCKER_WORKSPACE. To override the MCP config source path in containers, set AGENTSEEK_MCP_CONFIG_PATH.
The main documentation describes the built-in agentseek distribution layer:
- Overview: what agentseek is, where it fits, and how the docs are structured.
- Blog intro: release notes, migrations, and longer-form posts.
- Introducing agentseek: lineage from bubseek, database-native harness, and Bub/tape context.
- Getting started: a tutorial for running agentseek locally or with Docker Compose.
- Configuration: reference for agentseek environment aliases, local runtime paths, and Docker defaults.
- Extensions: how to add project instructions, skills, MCP config, and Bub-compatible plugins.
Contrib packages document their complete setup in their own README files:
- agentseek-observability
- agentseek-tapestore-oceanbase
- agentseek-langchain
- agentseek-schedule-sqlalchemy
- Bub as the runtime layer — Bub provides the CLI, hook-first turn pipeline, tape context, skills, plugins, and channel model. agentseek uses Bub as the default governance layer, not as the product boundary.
- Project-local defaults —
.agentseekis the default runtime home, andagentseek-projectis the default plugin sandbox used byagentseek install. - Environment aliases —
AGENTSEEK_*values act as fallbacks for matchingBUB_*values, so agentseek projects can use their own naming namespace while staying Bub-compatible. - Open authoring model —
AGENTS.md, project-local skills, bundled skills, and MCP config are first-class parts of the authoring and extension workflow. - Contrib extension path — database storage, LangChain routing, persistent scheduling, and other larger integrations live under
contrib/and keep their full usage docs there.
For a good default experience from local development to larger deployments, we recommend OceanBase seekdb and OceanBase.
make install
make check
make test
make docs-testContrib package README files document their package-specific checks.