jlceda-mcp: Instructions file for Claude Code

CLAUDE.md

jlceda-mcp CLAUDE.md is an instructions file for Claude Code from ErikaAlk/jlceda-mcp. It costs 2,480 tokens per session, scanned A, original, MIT.

A set of instructions for Claude Code, an AI coding assistant, working on the jlceda-mcp project. It records the project structure, important rules, and limitations of the JLC EDA extension environment.

In plain words
What is it for?
Guiding changes to the jlceda-mcp project, especially its MCP server, broker, and JLC EDA extension; preserving cross-call state; and avoiding unsupported APIs.
Why use it?
It warns the coding agent about behaviors that can cause subtle bugs, such as the extension re-evaluating its code on every call and the sandbox lacking common browser networking APIs.

Instructions file for Claude Code

Written for Claude Code: the file is CLAUDE.md. Also seen: mentions CLAUDE.md; mentions Claude Code.

This is ErikaAlk/jlceda-mcp's own configuration. It tells Claude Code how to work on jlceda-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything jlceda-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to ErikaAlk/jlceda-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/ErikaAlk/jlceda-mcp/main/CLAUDE.md
Clone the repo
git clone --depth 1 https://github.com/ErikaAlk/jlceda-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for jlceda-mcp CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/erikaalk/jlceda-mcp/claude-md/github.svg)](https://agentmods.dev/instructions/erikaalk/jlceda-mcp/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/erikaalk/jlceda-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/erikaalk/jlceda-mcp/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for jlceda-mcp CLAUDE.md

Your own site · 80×15
<a href="https://agentmods.dev/instructions/erikaalk/jlceda-mcp/claude-md"><img src="https://agentmods.dev/badge/instructions/erikaalk/jlceda-mcp/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 2,480 This file is loaded in full into every session.
When invoked 2,480 The same file — it is already loaded in full.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.02480 $0.02480
Opus 5 $0.01240 $0.01240
Sonnet 5 $0.00496 $0.00496
Haiku 4.5 $0.00248 $0.00248

Measured 9d ago against content hash 51ab99bc6f70, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

jlceda-mcp CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 166 lines

How it starts

The opening of the file, as written. The whole thing — 166 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md — jlceda-mcp

新会话进来先读这份,再读 README.md(那份是给人看的用法)。 这份是给 agent 看的:架构、不许破坏的不变量、会浪费你半小时的坑

两个组件

目录 是什么 跑在哪
src/ MCP server + 内嵌 broker Claude Code 起的 node 进程
jlc-bridge/ 嘉立创EDA 扩展 EDA 渲染进程的沙箱里
Claude Code ⇄(stdio) mcp-server ⇄(ws://127.0.0.1:18800/ws/bridge) JLC MCP 扩展 ⇄ EDA
                       └─ broker 就长在这里

⚠ 不变量 1:EDA 每次调用扩展都会把整个 bundle 重新求值一遍

这是这个项目最反直觉的一条,旧版三个 bug 里有两个是它造成的

从 EDA 安装目录 assets/pro-api/*/api.jsTa() 逆出来的事实: 菜单点击走 extensionApi.callFunctionInExtensionTa(uuid, fnName),而 Ta

  1. 重新从 IndexedDB 读出 entry 文件的源码
  2. 在末尾拼一段 if (typeof fnName === 'function') { fnName(...) } else if (edaEsbuildExportName...)
  3. 包进 with (sandbox) { ... },用 AsyncFunction 整个重新 eval

也就是说:

模块级的 let / 闭包变量,在两次菜单点击之间不保留。 启动激活、点「状态」、点「暂停」,每一次都是一个全新的模块实例。

能跨越重新求值活下来的只有三样:

  • EDA 按 ID 托管的资源:sys_Timer 的定时器、sys_WebSocket 的连接、sys_Storage 的配置
  • globalThis 上挂的东西(沙箱没拦 globalThis,实测可读可写)
  • 已经跑起来的闭包(第一次求值时注册的 onMessage 回调会一直用那一版代码)

所以:所有跨调用的状态一律挂在 hub.tsglobalThis.__JLC_BRIDGE_HUB_V2__, 每个导出函数第一件事都是 boot()(幂等)。别写 let connected = false 这种。

装了新版扩展之后,还活着的 onMessage 闭包是上一版代码的。 link.tshub.codeBuild !== CODE_BUILD 发现这件事并推倒重连,让新代码接管。别删。

⚠ 不变量 2:sys_WebSocket 没有 close / error 回调

register(id, url, onMessage, onConnected) 就这四个参数。对端死了扩展毫无感知。

推论:

  • 判活只能靠「最近一次收到数据的时间」hub.lastRxAt)。broker 每 3 秒 ping 一次 就是为了喂这个判据;扩展收到 ping 回 pong。超过 RX_TIMEOUT_MS 没动静就判死重连。
  • 连不上时同样一个回调都不给:对端不在时 new WebSocket(...) 照样构造成功, 失败是异步的,onConnected 永远不来。所以 connecting 必须有超时CONNECT_TIMEOUT_MS),超了就 hardReset 重来。 少了这条,phase 会永远停在 connecting、心跳再也不会重新 register, 表现就是用户报的「先开 EDA、后开 Claude Code,必须手动点一次重连」。 所有重连判断集中在 advance() 一处,别再散出去。
  • 连上之后扩展要主动 pingKEEPALIVE_MS)。往一个已关闭的 socket 上 send 会抛, 这是对端消失时唯一能快速察觉的信号;没有它就得干等 11 秒的接收超时。
  • register() 遇到同 ID 且 readyState 是 CONNECTING 或 OPEN 的连接时,会 立刻同步调用 onConnected 然后返回:注意 CONNECTING 也算。 所以「onConnected 被调了」≠「连上了」。phase 从 connecting 翻到 online 必须发生在收到第一帧的时候,不能在 onConnected 里。
  • 反过来,这个复用语义让 ensureLink() 天然幂等:已经连着时再调就是个空操作。 这正是「每次点菜单都调一遍」能成立的原因。

Read the full file on GitHub · 166 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 166 lines · 2,480 tokens per session scan A 51ab99bc6f70

Subscribe to this mod's changes

jlceda-mcp CLAUDE.md is an instructions file published in the GitHub repository ErikaAlk/jlceda-mcp (1 stars, last pushed 15d ago), licensed MIT. It adds 2,480 tokens to every session, about $0.0124 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other instructions, from other repositories

next.js AGENTS.md

AGENTS.md instructions for vercel/next.js, covering next.js development guide, codebase structure, monorepo overview, core package: packages/next and other important packages.

vercel/next.js · 7,296 tokens

codex AGENTS.md

AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.

openai/codex · 5,153 tokens

vscode buildNext.instructions.md

Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).

microsoft/vscode · 6,785 tokens

vscode oss-third-party-notices.instructions.md

Instructions for microsoft/vscode, covering vs code oss third-party-notices pipeline, architecture, pipeline flow in ci, applying the notice (cutover) and fallback chain (never fail the build).

microsoft/vscode · 5,001 tokens

langchain AGENTS.md

AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.

langchain-ai/langchain · 4,469 tokens

deepseek-harness AGENTS.md

AGENTS.md instructions for deepseek-ai/deepseek-harness, covering agents.md, pre-stable apis and released session data, repository layout, commands and host sandbox failures.

deepseek-ai/deepseek-harness · 3,735 tokens