Seamless

io.github.arctopv0.6.0更新於 Oct 9, 2026

Local-first shared memory and task coordination for AI coding agents. Go daemon plus headless CLI.

概覽

AI 產生的概覽

Seamless 為 AI 編碼代理提供本機共享記憶與任務佇列,讓多個代理能記住過往決策並分工而不衝突。

功能
它執行本機守護程式與 CLI,把持久記憶和筆記以 markdown 檔案形式存放在磁碟上,由 SQLite 建立索引並透過 MCP 提供。代理可取得對過往限制與決策的混合召回、具相依性的任務佇列與以租約為基礎的認領、已擷取的計畫,以及研究試驗。gardener 流程只提出去重、封存與標記知識缺口的建議,套用變更是明確的人工操作,取代關係會保留來源。
適用情境
當你在同一個程式碼倉庫上執行一個或多個 AI 編碼代理,希望知識能跨上下文視窗保留,或擔心兩個代理選中同一步驟重複實作時,值得加入。它面向單一擁有者在自己機器上執行的代理叢集,而不是託管的團隊知識庫。
執行需求
在使用者機器上執行的本機程序;清單未宣告任何套件、驗證、環境變數或標頭。README 稱安裝指令碼需要 curl 和 tar,會安裝 seamlessd 守護程式與 seam CLI、產生 bearer 金鑰,並在 macOS、Linux 或 Windows 上以每使用者服務方式執行守護程式。不需要 Go、Node、資料庫或雲端帳號。
安裝前請注意
README 指出安裝方式是把 shell 指令碼透過管線交給 shell,建議先閱讀,並提供 Homebrew、go install 或預先建置的封存檔等替代方式。安裝時會產生 bearer 金鑰。記憶與筆記會寫入本機資料目錄,README 建議備份整個目錄,因為 SQLite 也保存運作狀態。專案自稱處於開發早期,發行頻繁。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Seamless,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Seamless

[Go Reference] [Latest release] [License: MIT] [MCP]

An AI coding agent rediscovers the same constraint every session, because nothing it learns survives the context window. Run two agents against the same backlog and they pick the same step and build it twice. And the products that promise to fix this keep your project's memory in someone else's database.

Seamless is a local-first memory and coordination substrate for AI coding agents. Works with Claude Code, Codex CLI, and any MCP client. It also works from chats in the Claude desktop app, for long-running work that isn't code: see Seamless in the Claude app.

It gives a fleet of agents a shared, durable memory and a way to divide work without colliding: memories with a supersession lifecycle, hybrid recall, a dependency-aware task queue with lease-based claiming, captured plans, and research trials. Durable knowledge is stored as markdown files on disk; the seamlessd daemon indexes it, serves it over MCP, and renders a web console, while the companion seam CLI gives headless agents a direct interface.

Full documentation: thereisnospoon.org/docs/  ·  Website: thereisnospoon.org (source in docs/)

Developed and published by Arctop. MIT licensed.

Design principles

  • Built for a fleet, not a lone agent. Real coordination primitives: a dependency-aware ready-queue, atomic lease-based task claiming, and plans composed of notes and steps, so agents divide labor instead of colliding.
  • Files are the source of truth. Every memory and note is a markdown file with YAML frontmatter under ~/.seamless -- git-diffable, greppable, hand-editable. SQLite indexes those files and also stores operational state such as sessions, tasks, trials, and events, so back up the whole data directory.
  • Curation proposes, humans dispose. Every gardener pass -- from deduplicating and archiving to flagging dead weight and knowledge gaps -- only proposes; applying is an explicit action. Supersession preserves provenance, so nothing is silently rewritten.
  • Small, self-contained runtime. A static Go daemon and CLI, no CGO, pure-Go SQLite, no Node, no separate vector engine, no cloud account.

How it compares

The agent-memory space splits into a few recognizable categories. By category, because categories do not go stale:

SeamlessCloud memory APIsBuilt-in agent memoryKnowledge-graph servers
Storage formatMarkdown files on your disk; SQLite indexes them and stores operational stateTheir database, reached by API keyVendor-managed store inside one productA graph database, often a separate server
Runs whereYour machine, localhost onlyTheir cloudThe vendor's productYour machine or theirs
Account requiredNoYesThe vendor'sUsually no
Multi-agent coordinationTask queue, lease-based claiming, shared plansNoneNone -- one agent, one storeShared reads at best
Forgetting policySupersession with provenance; a gardener proposes, a human disposesAutomatic summarization you do not controlVendor-definedManual
RuntimeStatic Go daemon and CLIHTTP SDK against their serviceNone (built in)Node or Python, plus the database

For the version with product names and receipts, see the full comparison.

Real transcripts

Four pairs of real, unedited Claude Code sessions -- identical prompt, identical repo, with and without Seamless:

  • Cold start -- one session continues yesterday's plan from an injected briefing; the other re-derives the work from a TODO and re-ships a bug the project had already fixed once.
  • Constraint violation -- a security scanner demands SameSite=Strict, which the team already learned breaks external-link logins. One session ships the regression anyway; one refuses and cites the recorded constraint.
  • Token safety -- told to persist refresh tokens, one agent mirrors the in-memory map into a raw-token SQL column; the other reads a recorded rule first and stores only SHA-256 hashes.
  • Task collision -- two live agents race for the same plan step. One claim wins, the other bounces with the holder's name and pivots to the next ready step.

What Seamless is not

Not a hosted team knowledge base, not a RAG framework, not a benchmark winner: it is memory and coordination for one owner's fleet of agents, on that owner's machine.

Quick start

bash
curl -fsSL https://thereisnospoon.org/install | sh

On Windows, the same install in PowerShell:

powershell
irm https://thereisnospoon.org/install.ps1 | iex

That is the whole install. It needs curl and tar and nothing else -- no Go, no CGO toolchain, no database, no Node. It fetches the checksum-verified release archive for your platform (macOS, Linux, and Windows; amd64 and arm64), installs seamlessd and seam into ~/.local/bin, generates the bearer key, installs hooks, MCP, and skills for the detected Claude Code/Codex local hosts, and runs the daemon as a per-user service -- launchd on macOS, systemd --user on Linux, an at-logon Scheduled Task on Windows. Upgrade any time with seamlessd update (re-runs the installer for you; --check reports installed vs latest): your config and ~/.seamless are never touched.

Early days, frequent releases. Seamless is early in its development cycle, and releases with improvements and bug fixes land often. Update at least weekly to run the latest version -- seamlessd update is the one command. See Update & uninstall.

(Why seam? The CLI keeps the short name of Seam v1, the decommissioned private predecessor Seamless was rebuilt from the ground up to replace.)

Then just start the selected client in a git repo. There is no project to create and no repo to register: the session-start hook resolves your cwd to its git root, derives a project from the repo's directory name, and records the mapping on the spot, so agents inherit project scope without passing it on every call. Reach for seamlessd map-repo --path ~/code/myrepo --project myrepo only to override the derived slug.

It is one shell script and piping a stranger's script into a shell deserves a read first. Prefer the pieces one at a time - Homebrew, go install, prebuilt archives - or want the override knobs? Every route is on Install & deploy, and the Quickstart tailors each step to your OS and client.

Then: Quickstart · Claude Code setup · Claude app chat setup · Codex local setup · Install & deploy

Documentation

The full docs are at thereisnospoon.org/docs/ (sources in docs-src/, generated by cmd/docsgen).

ConceptsMemory & notes, sessions & briefings, recall, tasks & plans, projects & scope, the gardener
GuidesIntegrating an agent, writing memories that get recalled, coordinating a fleet, troubleshooting
ReferenceEvery MCP tool, both CLIs, every config key, the hooks, and the file formats
InternalsArchitecture, contributing, domain invariants

This README is deliberately short. Anything that can drift from the code -- tool counts, config keys, CLI flags -- lives in the docs site, where the reference pages are generated from the code itself and make check fails if they go stale.

Development

make build      # ./bin/seamlessd + ./bin/seammake test       # unit testsmake test-race  # unit tests under the race detectormake bench      # hot-path benchmarks (recall, briefing, matcher, event fan-out)make lint       # golangci-lintmake check      # the full gate: build + vet + fmt-check + docs-check +                # installer-check + site-check + lint + vulncheck + test-racemake doctor     # config + database self-checksmake run        # serve on 127.0.0.1:8081
make docs       # regenerate the docs site (docs-src/ -> docs/docs/, committed)make docs-serve # regenerate + serve the site at 127.0.0.1:8899/docs/

Tests are table-driven with testify/require against fresh or in-memory SQLite. Use make fmt rather than gofmt -w .: the Make target scopes formatting to git-tracked files, while a bare gofmt walk also rewrites dot-directories that Go's ./... pattern excludes.

The docs site's output under docs/docs/ is committed, and make check runs docs-check, so a change to docs-src/ -- or to the tool surface or config keys the reference generates from -- must be followed by make docs in the same change. See SITE.md.

Conventions live in AGENTS.md; read it before writing code.

來源:README.md,提交 ddbefdd

工具

0
工具後設資料尚未被收錄。

版本歷史

1
  1. v0.6.0最新Oct 9, 2026