SyncytiumMD

io.github.mrcbrbn5361由 GitHub 帳號 mrcbrbn5361 發布v0.3.1更新於 Nov 6, 2026

One canonical context transpiled into Cursor, Claude, Copilot, Cline and more, with agent handoff.

已驗證STDIO僅桌面知識與記憶開發者工具

概覽

AI 產生的概覽

把 AI 編碼規則與決策集中存放在 .syncytium/ 目錄,並轉譯成 Cursor、Claude、Copilot 等工具的原生檔案,附帶代理交接與工作區鎖。

可以做什麼
  • 讀取專案脈絡:取得規則、架構、架構決策記錄與目前的交接狀態,以及知識圖譜和交接歷史
  • 管理規則與決策:建立、列出、搜尋、更新與移除標準規則及架構決策記錄
  • 同步與檢查產出檔案:重新產生各 AI 工具的橋接檔案、偵測漂移、驗證設定與前置資料、執行工作區健康檢查
  • 協調多個代理:取得、釋放與查詢工作區租約,記錄交接,列出並還原已封存的刪除項目
  • 移轉現有檔案:把 CLAUDE.md、.cursorrules 等未納管規則檔案匯入標準資料庫
適用情境
適合多個 AI 編碼工具或代理在同一個儲存庫協作、又不想再維護多份彼此漂移的指令檔案的情況。也適合代理之間需要交接任務、避免同時修改同一批檔案的工作流程。
執行需求
透過 npx 從 syncytium-md npm 套件以 stdio 在本機執行,需要 Node.js 20 或更新版本。工作區需先用 syncytium init 指令初始化。未宣告驗證機制;README 建議透過 SYNCYTIUM_TOKEN 環境變數傳入選用權杖。
安裝前請注意
多個工具會寫入工作區:規則、架構決策、設定修復、重新產生的橋接檔案與匯入內容。刪除類工具會移除規則與決策,但預設只做預演、需明確確認,並會封存以便還原。同步工具可能清理產生的孤兒檔案。透過 npx 啟動時應固定套件版本並加上 --ignore-scripts,憑證應放在 env 區塊而非命令列參數。

安裝

在 SourceWeft 中

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

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

其他 MCP 客戶端

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

README

🧬 SyncytiumMD

One context. Every AI coding tool. Zero copy-paste.

[npm] [CI] [Node] [License] [PRs Welcome]

English · Türkçe


The problem

You use Cursor at work, Claude Code in the terminal, Copilot in pull requests, and three CLI agents on CI. Each one wants its own instruction file. So you maintain four copies of the same rules, they drift, and no agent knows what the others did yesterday.

The idea

Keep the rules once, in .syncytium/, and transpile them into every tool's native format.

.syncytium/          canonical, human-authored, git-tracked  rules/*.md         code style, security, testing, architecture, …  memory/decisions.md  ADRs — why the project is the way it is  HANDOFF.md         live agent baton: who has it, what's next        │        │  syncytium sync        ▼CLAUDE.md   AGENTS.md   GEMINI.md   AGENT.md   CONVENTIONS.md.cursorrules   .clinerules   .roomodes   .windsurfrules   .traerules.cursor/rules/*.mdc          .gemini/antigravity/rules/*.md.github/copilot-instructions.md + .github/instructions/*.instructions.md

Every generated file carries a banner saying where it came from, and syncytium diff --check fails your CI if any of them drift. syncytium clean removes only banner-tagged files — your hand-written rules are never touched.

Quick start

bash
npx syncytium init          # scaffold .syncytium/ (stack auto-detected)npx syncytium sync          # generate every bridge filenpx syncytium graph         # open the 3D knowledge graph in your browser

Requires Node.js 20+. No global install needed; npx works.

What you get

10 built-in adaptersCursor, Claude Code, GitHub Copilot, Cline/Roo, Antigravity, Windsurf, Trae, OpenCode, AGENTS.md, GEMINI.md
Stack-aware startersTypeScript, JavaScript, Python, Go, Rust, Java, Kotlin, PHP, Ruby, .NET, Swift, Elixir, generic
Multi-agent safetyA lease-based workspace lock with heartbeat, a handoff baton, and a 100-entry audit trail
Drift detectionReal unified diffs, orphan detection, and a --check flag that actually exits non-zero
Live 3D graphWebGL knowledge cosmos, vault explorer, Markdown document reader — bound to 127.0.0.1
MCP server23 tools with zod-validated inputs, honest safety annotations, built-in rate limits, and recoverable deletions
CI + git hookssyncytium ci and syncytium hook install both gate on zero drift
--json everywhereEvery command emits machine-readable output for agents and CI

Commands

Run syncytium --help for the full list.

Context

CommandWhat it does
init [name]Scaffold .syncytium/. --template <stack>, --force
syncRegenerate all bridge files. -t/--target, --no-prune, -f/--force
watchAuto-sync on every change. -a/--agent also holds and renews the lock
diffShow drift with real patches. --check exits 1 in CI, --full for complete hunks
doctor11 health checks, each with an actionable fix: hint. --strict
lintValidate rules, frontmatter and ADR schema. --fix heals kebab-case and missing titles
validateValidate syncytium.config.json and every rule against the schema. --fix
cleanDelete only banner-tagged files. --dry-run
exportOne portable Markdown bundle you can paste anywhere. --html, --max-rule-chars
importReverse-migrate existing CLAUDE.md, .cursorrules, … into .syncytium/. --dry-run
adaptersList every registered adapter and its targets
statusOne-screen project + handoff + lock summary

Rules & decisions

bash
syncytium rules [query]                       # search the catalogsyncytium rule add --title "..." --body "..." # add a canonical rulesyncytium rule show <id>                      # inspect onesyncytium rule update <id> --body-file x.md   # edit in placesyncytium rule remove <id>                    # delete + prune generated files
syncytium adr list                            # architectural decisionssyncytium adr add --title "..." --context "..." \                  --decision "..." --consequences "..."syncytium adr show ADR-006syncytium adr remove ADR-006

Multi-agent coordination

bash
syncytium lock acquire --agent "Cursor" --goal "Refactor auth"syncytium lock heartbeat --agent "Cursor"    # extend the leasesyncytium lock statussyncytium lock release --agent "Cursor"
syncytium handoff -i                          # interactive wizardsyncytium handoff --from "Cursor" --to "Claude" \  -s ready_for_review -g "Ship v1" -d "…" -t "…"syncytium log -n 20                           # baton audit trail

Guards

bash
syncytium hook install      # block commits on driftsyncytium hook install --auto-sync   # or just re-sync on every commitsyncytium ci                # .github/workflows/syncytium.yml drift gatesyncytium ci --force        # regenerate an existing workflow

Knowledge graph

bash
syncytium graph                        # 3D WebGL cosmos + vault explorersyncytium graph --category ide         # isolate IDE adapterssyncytium graph --compact              # hide file and tag nodessyncytium graph --no-open --port 4000

The server binds to 127.0.0.1 and rejects non-loopback Host headers (DNS-rebinding guard). It refuses to serve .env*, *.pem, *.key, .git/** and other in-root secrets.

Clicking a tool in the 3D galaxy opens the actual Markdown files it generates: directory targets such as .cursor/rules/ become directory nodes that list their .mdc rules, each file opens in the document panel and is highlighted in 3D, and adapters are marked USED or EMPTY depending on whether their targets exist on disk.

MCP

jsonc
{  "mcpServers": {    "syncytium": {      "command": "npx",      "args": ["--ignore-scripts", "-y", "-p", "[email protected]", "syncytium-mcp"],      "cwd": "${workspaceFolder}",      "env": {        "SYNCYTIUM_TOKEN": "${SYNCYTIUM_TOKEN}"      }    }  }}

Hardening notes: pin the exact package version instead of @latest, pass --ignore-scripts when launching through npx, keep only the 3-5 MCP connectors a workspace actually needs, and pass any short-lived, read-only credential through the env block rather than command arguments.

Or syncytium mcp if you already have the CLI installed. The server exposes 23 tools, including syncytium_get_context, syncytium_handoff, syncytium_create_rule, syncytium_update_rule, syncytium_remove_rule, syncytium_record_decision, syncytium_sync, syncytium_diff, syncytium_doctor, syncytium_validate, syncytium_validate_fix, syncytium_lock_acquire/release/status, syncytium_get_graph, syncytium_list_trash, syncytium_restore and more. Every input is zod-validated and closed with additionalProperties: false; every property is documented; every stable read tool declares an outputSchema and returns matching structuredContent.

Built-in MCP safety. Every tool advertises MCP readOnlyHint, destructiveHint, idempotentHint and openWorldHint annotations, and the server enforces a per-tool sliding-window rate limit (for example 5 destructive calls per minute). Destructive tools default to dryRun: true; deleting needs dryRun: false and confirm: true. Rules and ADRs are archived under .syncytium/memory/trash/ before removal, so syncytium_restore can undo the operation. syncytium_doctor is strictly read-only. These limits are enforced server-side, so they hold even when a client ignores the annotations.

MCP Registry. The repository root carries a server.json manifest (official registry.modelcontextprotocol.io format) describing the npm package, the stdio transport and the mcp launch argument. The discoverability workflow regenerates llms.txt and llms-full.txt, verifies the manifest against the package (including mcpName), and publishes it with GitHub OIDC - no stored secret and no manual step. A unit test pins the manifest version to package.json so the registry never advertises stale metadata.

.syncytiumignore

Excludes generated targets from both sync and diff. Full gitignore syntax, including **, ?, directory-only patterns and ! negation:

# Don't manage these tools.cursorrules.github/instructions/
# Except this one!.github/instructions/keep.md

Custom adapters

Declare any tool in syncytium.config.json — no code required:

jsonc
{  "customAdapters": [    {      "id": "zed",      "name": "Zed",      "targetFile": ".rules/zed.md",      "includeHandoff": true,      "includeArchitecture": true    }  ],  "enabledAdapters": ["cursor", "claude", "zed"]}

Library usage

ts
import { SyncytiumEngine } from 'syncytium-md';
const engine = new SyncytiumEngine(process.cwd());await engine.sync();const { hasDrift, summary } = await engine.diff();const graph = await engine.getKnowledgeGraph({ category: 'ide' });

Development

bash
npm installnpm run verify      # typecheck -> build -> 114 tests

See CONTRIBUTING.md and .syncytium/architecture.md.

License

MIT © Miraç Birben

來源:README.md,提交 9b7287e

工具

23

syncytium_get_context

Get canonical context

Read-only. Get project rules, architecture, architectural decisions (ADR), and the active handoff state. Use this first in any session.

輸入參數topicincludeContent

syncytium_handoff

Record agent handoff

Write. Pass the baton to the next AI agent or record progress on the shared blackboard. Run this before you finish your turn.

輸入參數goalforcenotesstatusnextAgentactiveAgent必填pendingTaskstouchedFilescompletedWork

syncytium_record_decision

Record an ADR

Write. Record an Architectural Decision (ADR) shared across all AI agents.

輸入參數idtitle必填statuscontext必填decision必填consequences必填

syncytium_remove_decision

Archive and remove an ADR

Destructive, but safe by default: previews the impact unless dryRun is false, requires confirm: true to delete, and archives the ADR so syncytium_restore can undo it.

輸入參數id必填dryRunconfirm

syncytium_list_decisions

List ADRs

Read-only. List recorded ADRs (optionally filtered by status or free-text query).

輸入參數limitquerystatus

syncytium_create_rule

Create a canonical rule

Write. Add a new canonical rule to .syncytium/rules/ and regenerate every bridge file. Reversible with syncytium_remove_rule.

輸入參數idbody必填synctagsglobstitle必填alwaysApplydescription

syncytium_list_rules

List canonical rules

Read-only. Search the canonical rule catalog by id, title, tag or body text.

輸入參數query

syncytium_update_rule

Update a canonical rule

Write. Edit an existing canonical rule in place (title, description, body, globs, tags).

輸入參數id必填bodysynctagsglobstitlealwaysApplydescription

syncytium_remove_rule

Archive and remove a canonical rule

Destructive, but safe by default: previews the impact unless dryRun is false, requires confirm: true to delete, archives the rule, and prunes only banner-tagged generated files. Undo with syncytium_restore.

輸入參數id必填dryRunconfirm

syncytium_sync

Regenerate bridge files and prune orphans

Regenerate all AI tool bridge files (CLAUDE.md, .cursor/rules/, AGENTS.md, GEMINI.md, …). Can prune orphaned banner-tagged generated files; pass noPrune:true to keep them.

輸入參數forcenoPrunetargets

syncytium_get_history

Get handoff history

Read-only. Get the multi-agent handoff audit trail: past goals, completed tasks and baton passes.

輸入參數limit

syncytium_lint

Lint canonical content

Read-only. Validate canonical rules, frontmatter and ADR schema. Returns a compact summary, not the full report.

無需輸入參數。

syncytium_validate

Validate config and rule frontmatter

Read-only. Validate syncytium.config.json and every rule frontmatter against the zod schema and report issues without changing anything.

無需輸入參數。

syncytium_validate_fix

Repair invalid config or frontmatter

Write. Repair invalid config or rule frontmatter in place, then report what changed. Separate from syncytium_validate so a read-only scan can never mutate the workspace.

輸入參數dryRun

syncytium_diff

Check context drift

Read-only. Check context drift between .syncytium/ and the generated bridge files. Returns a summary plus the drifted paths.

輸入參數targets

syncytium_doctor

Read-only workspace health check

Read-only. Run the full workspace health check: config, adapters, rules, drift, lock, git hook and CI gate. Never fixes or executes anything; remediation strings are suggestions only.

無需輸入參數。

syncytium_lock_acquire

Acquire the workspace lease

Write. Take the exclusive workspace lease so other agents do not edit the same files concurrently.

輸入參數goalagent必填forceleaseMinutes

syncytium_lock_release

Release the workspace lease

Write. Release the workspace lease held by this agent (idempotent).

輸入參數agentforce

syncytium_lock_status

Read lease status

Read-only. Report who currently holds the workspace lease and when it expires.

無需輸入參數。

syncytium_get_graph

Get the knowledge graph

Read-only. Get the project knowledge graph (rules, tags, ADRs, agents, adapters, bridge files) for visualisation.

輸入參數compactcategory

syncytium_import

Import unmanaged rule files

Write. Reverse-migrate existing unmanaged AI rule files (CLAUDE.md, .cursorrules, …) into .syncytium/. Dry-run by default; it only creates rules and never deletes the originals.

輸入參數dryRun

syncytium_list_trash

List recoverable deletions

Read-only. List recoverable deletions (archived rules and ADRs) with their archive timestamps, newest first.

輸入參數kindlimit

syncytium_restore

Restore an archived rule or ADR

Write. Restore an archived rule or ADR from the recoverable trash and regenerate bridge files. Fails if the same id already exists.

輸入參數id必填kind必填

版本歷史

1
  1. v0.3.1最新Nov 5, 2026

評分

已滿足適用檢查項的 90%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分