Busabase
Busabase is an open-source (MIT) database and workspace for AI agents — data, docs, skills, and apps in one place. Run it locally, self-host it inside your network, or use Busabase Cloud, and turn age
翻訳待ち
seekdb is an open-source, AI-native search database that unifies relational , vector, text, JSON and GIS in a single database engine, enabling hybrid search and in-database AI workflows.
翻訳待ち
データC++ · RustGitHub @oceanbaseオンライン所有者未確認
Have you tried it? One tap is enough. No sign-in needed.
The AI-Native Search Database. Best for agent storage, it unifies vector, text, structured, and semi-structured data into a single engine. This all-in-one database makes agents smarter, easier to run, and more stable.
翻訳待ち
Loading the full README.
Read the full README ↗MySQL-compatible · Embedded or Server · Hybrid Vector + Full-text Search · COW Sandbox
⚡ 1,523 QPS streaming write+search (10× Milvus, 3× Elasticsearch) 🌿 FORK/MERGE sandboxes for safe agent exploration 🔍 Vector + full-text + scalar in one SQL query 🐬 Full ACID, MySQL protocol, works with LangChain/LlamaIndex/Dify
30-Second Try · Quick Start · Embedded SDKs · Why seekdb · Ecosystem · Contributing
If you find seekdb useful, consider giving it a star — it helps others discover the project.
pip install -U pyseekdb # pyseekdb is the Python SDK for seekdb
No manual server deployment, schema definition, or embedding setup for this Python demo. Run a local database with Python, JavaScript, or Go →
Agent workloads are continuous write + millisecond-later read. seekdb's async index pipeline (Change Stream) decouples DML from index build, and its two-level HNSW (incremental + snapshot) makes newly-written vectors immediately searchable.
The write path commits and returns without waiting on index construction. The Change Stream pipeline consumes the redo log asynchronously and updates the delta HNSW. Queries hit both delta and snapshot indexes with fine-grained read locks — this is why P99 stays flat under concurrency.
The result: 1,523 QPS with 21.7 ms concurrent P99 — 10.7× the QPS of Milvus, and P99 jitter of just 1.1× when concurrency rises (vs ~10× for ES / Milvus on the same workload).
Source: src/observer/change_stream/ · src/observer/vector_index/
FORK DATABASE snapshots an entire database in seconds — no data copy.
Agents experiment freely (write, query, even break tables); then MERGE TABLE
commits the work back, or DROP DATABASE discards it. Kernel-level COW,
not application-layer save/restore.
-- Snapshot in seconds, no data copy
FORK DATABASE agent_state TO agent_sandbox_42;
-- Agent reads/writes freely on the sandbox...
USE agent_sandbox_42;
INSERT INTO memory (session_id, embedding, content) VALUES (...);
-- Accept the work back to mainline (strategies: FAIL / THEIRS / OURS)
MERGE TABLE agent_sandbox_42.memory INTO agent_state.memory STRATEGY THEIRS;
-- ...or throw it away:
DROP DATABASE agent_sandbox_42;
Source: tools/deploy/mysql_test/test_suite/fork_table/
Vector + full-text + scalar filter pushed into one execution plan. No N+1 client-side merging, no glue code to combine results.
SELECT id, title, l2_distance(emb, '[0.12,0.34,...]') AS dist
FROM docs
WHERE MATCH(content) AGAINST('quarterly report')
AND author_id = 42
AND created_at > '2026-01-01'
ORDER BY dist APPROXIMATE LIMIT 10;
Built on the proven OceanBase SQL engine. Works as an embedded library, a single-node server, or in the OceanBase distributed cluster. Full ACID, real-time writes, and the entire MySQL ecosystem out of the box.
Use a local seekdb database from Python, Node.js, or Go without deploying a database service yourself. Data is stored in a local directory and remains available when you reopen it.
Use pylibseekdb to start a local seekdb database, then execute SQL with PyMySQL. Requires Python 3.11 or newer.
python3 -m pip install -U pylibseekdb pymysql
Save the following as example.py. It gets the connection arguments from connection_options() and passes them to PyMySQL. The context managers close the cursor and SQL connection before releasing the runtime handle:
from contextlib import closing
import pylibseekdb
import pymysql
with closing(pylibseekdb.open("./seekdb.db")) as db:
options = db.connection_options()
with pymysql.connect(
database="test",
autocommit=True,
cursorclass=pymysql.cursors.DictCursor,
**options,
) as connection:
with connection.cursor() as cursor:
cursor.execute("SELECT 1 AS value")
print(cursor.fetchall())
Run it; the result is [{'value': 1}]:
python3 example.py
Full usage guide · Supported platforms and requirements
For a higher-level Collection API with text embedding and hybrid search, see pyseekdb.
Use @oceanbase/seekdb-node to start a local seekdb database, then execute SQL with mysql2. Requires Node.js 22 or newer and supports both JavaScript and TypeScript.
npm install @oceanbase/seekdb-node mysql2
Keep npm optional dependencies enabled so npm installs the matching native runtime. The binding manages a separate local seekdb process; close SQL connections before releasing its runtime handle.
Save the following as example.mjs (ES modules; TypeScript declarations are also included):
This is the beginning of the README. Read the rest at the original. Read the full README ↗