GitDiagram
Architecture diagrams, explanations and Mermaid source for public GitHub repositories.
Shared, scoped, reviewable team memory for AI coding agents.
选择你使用的 AI 应用,然后复制设置。
通过 4/4 项检查 · 你的提问会经过开发者的服务器(erkle.ai) · ✓ 命令已检查 2026年11月13日
第一步:你用哪个 AI?
选择你用的应用,步骤会显示在下方。
可连接 Claude · 约 2 分钟
不需要密钥,不用安装程序 · 在 claude.ai 或桌面应用设置一次,即可在聊天中使用 · 免费账户可添加 1 个 · Team/Enterprise 方案由所有者(Owner)添加
CustomizeConnectors
把这里的内容复制到 Claude 中同名的输入框,然后点击 Continue
Erkle team memoryhttps://erkle.ai/mcp在 Claude 检测到的登录设置页点击 Continue · Authentication 按作者说明选择(Sign in now、Sign in when needed 或 No sign in),然后点击 Add
+ConnectorsErkle team memory
用 Erkle team memory 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude 说正在使用 Erkle team memory,或回答中出现 Erkle team memory 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
能否连接 ChatGPT 取决于方案
完整 MCP:网页版 ChatGPT Business、Enterprise 或 Edu · Pro:以读取/获取权限连接,修改数据的工具可能用不了 · Plus:官方文档尚未确认,如果在插件页看到添加自定义 MCP 的选项可以试试 · 仅限网页
Plugins+Add custom MCP server
输入名称,在 Connection 下粘贴地址,勾选风险提示,然后点击 Create as a plugin
Erkle team memoryhttps://erkle.ai/mcp开启新聊天,输入前先从插件列表中选择 Erkle team memory
用 Erkle team memory 告诉我你能帮我做什么,然后做一件给我看✓ 如果 ChatGPT 说正在使用 Erkle team memory,或回答中出现 Erkle team memory 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 OpenAI 帮助页面核实 · 你的界面可能因版本略有不同
可连接 Claude Code · 约 2 分钟
不需要密钥,不用安装程序
Mac:按 Command+空格,输入 Terminal · Windows:打开 PowerShell
claude mcp add --transport http --scope user erkle https://erkle.ai/mcp应能看到 Erkle team memory 在列表中并显示已连接
用 Erkle team memory 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Claude Code 说正在使用 Erkle team memory,或回答中出现 Erkle team memory 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Anthropic 帮助页面核实 · 你的界面可能因版本略有不同
可连接 Cursor · 约 2 分钟
不需要密钥,不用安装程序
用 Erkle team memory 告诉我你能帮我做什么,然后做一件给我看✓ 如果 Cursor 说正在使用 Erkle team memory,或回答中出现 Erkle team memory 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 Cursor 帮助页面核实 · 你的界面可能因版本略有不同
可连接 VS Code · 约 2 分钟
不需要密钥,不用安装程序
用 Erkle team memory 告诉我你能帮我做什么,然后做一件给我看✓ 如果 VS Code 说正在使用 Erkle team memory,或回答中出现 Erkle team memory 的工具名称,就表示连接成功
菜单名称已于 2026年11月11日 对照 VS Code 帮助页面核实 · 你的界面可能因版本略有不同
其他支持 MCP 的应用(如 Windsurf、Zed、Gemini CLI)添加方式各不相同,请在应用列表中查看
通过网页连接的应用使用的地址
https://erkle.ai/mcpJSON 设置在下方“开发者专用”中
Claude Code
claude mcp add --transport http --scope user erkle https://erkle.ai/mcpCursor (~/.cursor/mcp.json)
{
"mcpServers": {
"erkle": {
"url": "https://erkle.ai/mcp"
}
}
}VS Code (mcp.json)
{
"servers": {
"erkle": {
"type": "http",
"url": "https://erkle.ai/mcp"
}
}
}这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
依据这个服务器的连接方式和各应用自己的文档,检查于 2026年11月10日。
通过互联网连接,适用于
ClaudeChatGPTGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatOpen WebUIRaycast
服务器要求先登录,才会列出它的工具。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月15日
注册名称已通过域名 erkle.ai 验证(注册中心会核实域名所有权)
代码最后更新于昨天
不适用:由 erkle.ai 的所有者自己运行的云端服务器,你不会运行仓库里的代码
在 683 毫秒内响应(HTTP 401)
声明支持 OAuth 登录,你的 AI 应用可以带你去登录
尚未检查;我们会在检查端点时读取工具列表
提问、分享技巧或报告无法使用。按“有帮助”数量排序。
还没有评价
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 4 项适用的基础检查中通过了 4 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在作者的云端运行。通过互联网连接,无需安装,但你发送的内容会经过作者的服务器。
GitHub 仓库最后更新于昨天,最新版本(0.1.1)于前天进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。它通过 URL 连接,因此也能用于接受远程 MCP 的应用,例如网页版 ChatGPT(Business 及以上为完整 MCP;Pro 为只读)。
同一分类中有:GitDiagram, Appllama, Cloudflare MCP, Omnara, Repowise
同一分类、其他作者、命令已通过检查。官方的排在前面,再按星标排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Architecture diagrams, explanations and Mermaid source for public GitHub repositories.
Study screens, flows and paywalls from top-earning iOS apps, then build from what wins.
Deploy durable AI agents with Omnara, an open-source managed-agent platform.
Codebase intelligence for AI coding agents: graph, git history, docs, decisions, code health.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
@erkle/cli
Connect Claude Code, Cursor and Codex to Erkle , shared team memory for AI coding agents, in one command.
npx @erkle/cli init
Your agents forget what your team decided. One teammate's Claude Code learns that the billing service must never retry a charge; tomorrow another teammate's Cursor retries it. CLAUDE.md helps inside one repo, but it doesn't travel across repos, tools, or people, and nobody reviews what goes in it. Erkle gives every agent on the team the same reviewed memory.
After init, a session goes like this (illustrative):
You: Add retries to the charge endpoint.
Agent: [memory_search "charge endpoint retries" repo=acme/billing] Found 1 constraint (team scope, approved by Dana): "Never retry POST /charges. Stripe idempotency keys expire after 24h, and a retry after that double-charges. Retry only the webhook." I'll add retries to the webhook handler instead and leave /charges alone.
...
Agent: I learned the webhook handler must be idempotent on event.id. Propose it as a convention for acme/billing? [y/n] You: y Agent: [memory_create] Proposed. A maintainer reviews it before it goes live.
Erkle is shared, reviewed team memory for AI coding agents. It's a hosted MCP server (https://erkle.ai/mcp) where your team's decisions, conventions, constraints and lessons live, scoped to the team, a project, or a repository. Agents search it before a task and propose what they learned after; maintainers review proposals before they go live. One memory works across Claude Code, Cursor, Codex and claude.ai, so every teammate's agent knows what the team knows.
@erkle/cli is the setup step: erkle init wires your agents to that server and tells them how to use it. On a machine where an agent can't open a browser, the CLI can also sign you in from the terminal and make an API key for the agents to use instead (see Remote and headless machines).
Run it in a git repository (installed globally, the command is erkle init). It:
erkle MCP server to each agent you pick (Claude Code, Cursor, Codex).AGENTS.md / CLAUDE.md, so agents search Erkle before a task and propose what they learned after.init never signs in and never talks to Erkle. Each agent runs its own browser sign-in the first time it connects.
| Agent | Project (default) | --global |
|---|---|---|
| Claude Code | .mcp.json | claude mcp add --scope user (~/.claude.json) |
| Cursor | .cursor/mcp.json | ~/.cursor/mcp.json |
| Codex | .codex/config.toml (loaded once you trust the project) | ~/.codex/config.toml |
Project files live in the repo root, so commit them and every teammate gets the same setup.
Instructions go between and in AGENTS.md and CLAUDE.md, whichever exist. A CLAUDE.md that is a symlink to AGENTS.md, or that imports it with an @AGENTS.md line, is left alone so the block appears once. If neither file exists, init creates AGENTS.md, which Claude Code, Cursor and Codex all read. Re-running replaces only the text between the markers.
Existing files keep everything else: other MCP servers, other keys, JSON indentation, and TOML comments. If a file can't be parsed (JSON with comments, for example) init stops and writes nothing. If an erkle entry already points somewhere else, init reports it as a conflict and leaves it alone unless you pass --force; everything else in the plan is still applied.
init treats the repo as untrusted, since it may be a fresh clone. If a project file is a symlink that resolves outside the repo, init stops and writes nothing. An existing erkle entry with keys that can run code (command, env, headersHelper, ...) is a conflict too. If a file changes between the plan and the write, init stops instead of overwriting it.
Running init again when everything is set up changes nothing.
--agents <list> claude,cursor,codex (default: ask, or the detected ones)
--auth oauth (default) or key; key writes user-level config only --global write user-level config instead of the repo's --url MCP server URL (default https://erkle.ai/mcp, or $ERKLE_URL) -y, --yes apply without asking --dry-run print the plan and write nothing --force replace an existing erkle entry with a different URL or, with --auth key, its own Authorization header --no-instructions don't touch AGENTS.md / CLAUDE.md --json print one JSON document on stdout -h, --help show help -v, --version show the version
Exit codes: 0 success, nothing to do, or cancelled at the prompt; 1 error (nothing written); 2 bad usage. When stdin or stdout isn't a terminal, init won't ask, so pass --yes to apply (or --dry-run to preview); without either it exits 2.
For local development against a dev server:
ERKLE_URL=http://localhost:8080/mcp npx @erkle/cli init
An agent's own sign-in opens a browser on the machine it runs on. On a server, over SSH, or in a container there is no browser to open, so give the agents an API key instead. These commands need an Erkle server that supports CLI sign-in.
Sign in once. erkle login prints a link and a code; open the link on any device (your laptop, your phone), enter the code, and pick the team to start on:
npx @erkle/cli login
Make a key and write it to a private env file instead of the screen:
erkle keys create --env-file ~/.erkle.env
Keys are read-only by default. --write lets agents write memories, --projects a,b limits the key to those projects (erkle projects lists them), and --expires sets its life (30 days by default, at most 365). If your team requires browser approval for keys made from the CLI, keys create prints a link to approve first.
Load the file in your shell profile (~/.zshrc, ~/.bashrc) so every agent you start has the key:
set -a; . ~/.erkle.env; set +a
Point the agents at it. --auth key writes user-level config that reads the key from ERKLE_API_KEY; the key itself is never written to a config file:
erkle init --auth key
Then check what the agents will reach:
erkle status
status shows how each agent connects, checks your sign-in, and, when ERKLE_API_KEY is set, which team and projects the key reaches and whether it can write.
The other commands: erkle whoami shows the account, teams, and session; erkle team list and erkle team use pick the team keys are made in; erkle keys list and erkle keys revoke manage keys. Run erkle --help for each command's options.
Every command is safe to run from an agent.
--json prints exactly one JSON document on stdout, and progress text goes to stderr. A success is {"ok": true, "schemaVersion": 1, "command": "keys create", ...}; a failure is {"ok": false, "schemaVersion": 1, "error": {"code", "message", "hint"}}, where the hint names the next command to run. Each command's --help lists its fields.usage, not_signed_in, session_expired, session_revoked, no_team, forbidden, not_found, approval_required, denied, expired, key_rejected, rate_limited, network, server, conflict, file_unsafe.0 success, including a pending approval; 1 error; 2 bad usage.init, keys revoke) or print a secret (token) need --yes instead.login, and keys create when the team requires approval, wait for a person to approve in a browser. Without a terminal they wait at most 90 seconds (--timeout changes that; --no-wait returns at once), then return "status": "pending" with the link, the code, and a resume command such as erkle login --resume. Show the person the link and code, then run the resume command once they have approved.The CLI keeps its sign-ins in credentials.json in its config directory, the first of $ERKLE_CONFIG_DIR, $XDG_CONFIG_HOME/erkle, %APPDATA%\erkle on Windows, and ~/.config/erkle. The file is mode 0600 and holds one session per server, and the CLI only sends the session for the server it is talking to. It refuses a config directory inside a git repository. Pending approvals live next to it under pending/ until they are collected.
A session lasts 30 days and can only manage keys: it can't read or write memories. login never prints it.
ERKLE_TOKEN takes the place of the stored session, for CI. It is only sent to https://erkle.ai and to the one server named in ERKLE_TOKEN_ORIGIN, so a repo's .env that sets ERKLE_URL can't send your token somewhere else. ERKLE_API_KEY follows the same rule in status.
erkle token creates a separate session for a CI secret and prints its token; it is the only command that prints one. Signing in or out on your machine doesn't affect it.
erkle logout ends the session on the server and removes it from this machine. erkle logout --revoke-keys also revokes every key that session created. Resetting your Erkle password ends all of your CLI sessions, and the keys they created stop working.
Does `init` need an Erkle account or API key? No. It only writes config files. Each agent opens a browser OAuth sign-in the first time it connects. Where that can't work, use an API key instead; see Remote and headless machines.
Which agents are supported? Claude Code, Cursor and Codex. claude.ai connects to the same server as a custom connector; see erkle.ai.
How is this different from `CLAUDE.md` or `AGENTS.md`? Instruction files live in one repo and change by commit. Erkle is shared across repos and tools, scoped by team, project and repo, permissioned, and reviewed. init keeps a short block in your instruction files that points agents at Erkle; see Erkle vs. AGENTS.md.
What does it cost? $5 per user per month, or $50 per user per year, after a 7-day trial with no card needed. See pricing.
Erkle is built and operated by Justin Albrecht. Development happens in a private repository. This public repository is the release mirror: each release lands here as one commit made by the release automation, which is why commits show github-actions[bot], and its tag is what gets published to npm. How Erkle itself handles your data is on the security page.
Open an issue at github.com/erkle-ai/cli. This repository receives one commit per release and doesn't take pull requests; see CONTRIBUTING. Report vulnerabilities privately, as described in [S