
aleksandrgradoboev-svg/bismarck-engine
Developer toolsこのページは AI により自動翻訳されています。技術的な詳細は原文をご確認ください。 原文を見る
Agent engine of Bismarck: a Go port of pi (earendil-works/pi) — unified LLM API, agent loop, coding tools, MCP, codemode and tool_search — embedded as a library, no Node.js runtime.
概要
The agent engine of : a Go implementation of pi (Mario Zechner, MIT) — pi's unified LLM API, agent loop and coding agent, with pi's extensions for MCP and agents — embedded as a library, with no Node.js runtime. - The code started on 2026-10-15 from sky-valley/pi, a Go port of pi (MIT), at commit 1067024e7cce0028602e638bbf6676c6d2883cda (pi 0.99.2, pi source 5806068c2); its copyright stands in LICENSE. The history up to v0.1.0 is squashed into one commit; docs/UPSTREAM.md records the base and the sync ledger. - This is an independent project, not a fork. New pi commits are ported here directly; the sky-valley port is a reference while it is maintained, never a dependency. - Scope tracked from pi: agent (pi-agent-core), ai (core and the OpenAI-compatible provider), coding (sessions, tools, compaction), and pi's extensions for MCP and agents. - pi removed its server, client and protocol packages on 2026-10-12 (7472cda0); the Go versions here no longer have an upstream.
README
以下は原文 README の抜粋です。原文を見る。
bismarck-engine
The agent engine of Bismarck: a Go implementation of pi (Mario Zechner, MIT) — pi’s unified LLM API, agent loop and coding agent, with pi’s extensions for MCP and agents — embedded as a library, with no Node.js runtime.
Why
- An agent inside your Go program. One
go get, no Node.js process beside it, no external workflow server: the agent loop, the providers, the coding tools and MCP are packages you import. - Agents that survive a restart (
durable, experimental). Conversations, tasks and tool calls are committed to memory, JSONL or SQLite storage (no cgo); after a crash the harness resumes where it stopped. A tool interrupted mid-call is retried only if it is marked safe to replay, and otherwise reported as “interrupted and may have partially run” — the engine does not guess. - MCP and code mode. MCP servers from a shared
mcp.json, and a QuickJS sandbox in which the model writes JavaScript that calls the tools. - pi as the reference. Behaviour follows pi commit by commit, differences are written down, and every test of a new mechanism is checked by turning the mechanism off (see CONTRIBUTING.md).
Contributions, test runs on your platform and bug reports are welcome — start with
CONTRIBUTING.md or an issue labelled good first issue.
Origin
- The code started on 2026-10-15 from sky-valley/pi, a Go port
of pi (MIT), at commit
1067024e7cce0028602e638bbf6676c6d2883cda(pi 0.99.2, pi source5806068c2); its copyright stands in LICENSE. The history up to v0.1.0 is squashed into one commit; docs/UPSTREAM.md records the base and the sync ledger. - This is an independent project, not a fork. The source of changes is pi itself. New pi commits are ported here directly; the sky-valley port is a reference while it is maintained, never a dependency.
- Scope tracked from pi:
agent(pi-agent-core),ai(core and the OpenAI-compatible provider),coding(sessions, tools, compaction), and pi’s extensions for MCP and agents. - pi removed its
server,clientandprotocolpackages on 2026-10-12 (7472cda0); the Go versions here no longer have an upstream. - Each sync is planned in
docs/sync-.md; commits that port pi say so:port(area): … (upstream ).
Layout
| Package | Mirrors (pi) | What it is |
|---|---|---|
ai |
@earendil-works/pi-ai |
Unified LLM API: message/content/tool/model types, the channel-based EventStream, JSON-Schema tool validation, model catalog and cost, provider registry. |
ai/providers |
pi-ai providers |
Providers over net/http SSE: faux (deterministic test double), Anthropic Messages, OpenAI Chat Completions, OpenAI Responses, Google Gemini. |
インストール
This server does not publish a one-line install command.
Open the repository installation guide MCP 初心者?mcpskill.org のガイドから始めましょう →