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 分