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.
topicincludeContentio.github.mrcbrbn5361由 GitHub 账号 mrcbrbn5361 发布v0.3.1更新于 Nov 6, 2026
One canonical context transpiled into Cursor, Claude, Copilot, Cline and more, with agent handoff.
把 AI 编码规则与决策集中存放在 .syncytium/ 目录,并转译成 Cursor、Claude、Copilot 等工具的原生文件,附带智能体交接与工作区锁。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
参照 仓库 中的启动说明。
One context. Every AI coding tool. Zero copy-paste.
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.
Keep the rules once, in .syncytium/, and transpile them into every
tool's native format.
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.
Requires Node.js 20+. No global install needed; npx works.
Run syncytium --help for the full list.
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.
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.
.syncytiumignoreExcludes generated targets from both sync and diff. Full gitignore syntax,
including **, ?, directory-only patterns and ! negation:
Declare any tool in syncytium.config.json — no code required:
See CONTRIBUTING.md and
.syncytium/architecture.md.
MIT © Miraç Birben
来源:README.md,提交 9b7287e
Get canonical context
Read-only. Get project rules, architecture, architectural decisions (ADR), and the active handoff state. Use this first in any session.
topicincludeContentRecord 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必填pendingTaskstouchedFilescompletedWorkRecord an ADR
Write. Record an Architectural Decision (ADR) shared across all AI agents.
idtitle必填statuscontext必填decision必填consequences必填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必填dryRunconfirmList ADRs
Read-only. List recorded ADRs (optionally filtered by status or free-text query).
limitquerystatusCreate a canonical rule
Write. Add a new canonical rule to .syncytium/rules/ and regenerate every bridge file. Reversible with syncytium_remove_rule.
idbody必填synctagsglobstitle必填alwaysApplydescriptionList canonical rules
Read-only. Search the canonical rule catalog by id, title, tag or body text.
queryUpdate a canonical rule
Write. Edit an existing canonical rule in place (title, description, body, globs, tags).
id必填bodysynctagsglobstitlealwaysApplydescriptionArchive 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必填dryRunconfirmRegenerate 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.
forcenoPrunetargetsGet handoff history
Read-only. Get the multi-agent handoff audit trail: past goals, completed tasks and baton passes.
limitLint canonical content
Read-only. Validate canonical rules, frontmatter and ADR schema. Returns a compact summary, not the full report.
无需输入参数。
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.
无需输入参数。
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.
dryRunCheck context drift
Read-only. Check context drift between .syncytium/ and the generated bridge files. Returns a summary plus the drifted paths.
targetsRead-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.
无需输入参数。
Acquire the workspace lease
Write. Take the exclusive workspace lease so other agents do not edit the same files concurrently.
goalagent必填forceleaseMinutesRelease the workspace lease
Write. Release the workspace lease held by this agent (idempotent).
agentforceRead lease status
Read-only. Report who currently holds the workspace lease and when it expires.
无需输入参数。
Get the knowledge graph
Read-only. Get the project knowledge graph (rules, tags, ADRs, agents, adapters, bridge files) for visualisation.
compactcategoryImport 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.
dryRunList recoverable deletions
Read-only. List recoverable deletions (archived rules and ADRs) with their archive timestamps, newest first.
kindlimitRestore 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必填已满足适用检查项的 90%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
.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.mdnpx syncytium init # scaffold .syncytium/ (stack auto-detected)npx syncytium sync # generate every bridge filenpx syncytium graph # open the 3D knowledge graph in your browsersyncytium 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-006syncytium 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 trailsyncytium 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 workflowsyncytium graph # 3D WebGL cosmos + vault explorersyncytium graph --category ide # isolate IDE adapterssyncytium graph --compact # hide file and tag nodessyncytium graph --no-open --port 4000{ "mcpServers": { "syncytium": { "command": "npx", "args": ["--ignore-scripts", "-y", "-p", "[email protected]", "syncytium-mcp"], "cwd": "${workspaceFolder}", "env": { "SYNCYTIUM_TOKEN": "${SYNCYTIUM_TOKEN}" } } }}# Don't manage these tools.cursorrules.github/instructions/
# Except this one!.github/instructions/keep.md{ "customAdapters": [ { "id": "zed", "name": "Zed", "targetFile": ".rules/zed.md", "includeHandoff": true, "includeArchitecture": true } ], "enabledAdapters": ["cursor", "claude", "zed"]}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' });npm installnpm run verify # typecheck -> build -> 114 tests