Skip to main content
For the complete documentation index, see llms.txt

EchoMKB

Midnight용 AI 도구는 작업을 나눠 맡습니다. Kapa MCP server는 문서가 무엇을 말하는지 답합니다. Midnight Expert는 Compact를 작성하고 실제 컴파일러로 검증합니다. Midnight agent skills 같은 커뮤니티 스킬은 어시스턴트에게 문법과 함정을 알려줍니다. EchoMKB는 네 번째 단계로, 네트워크가 실제로 무엇을 했는지 보고합니다.

EchoMKB는 그 도구들이 제 몫을 끝낸 다음 단계를 담당합니다. 답은 정확하고, 컨트랙트는 컴파일되지만, 네트워크가 여전히 트랜잭션을 거부하는 순간입니다. 이 단계는 버전, 근거, 그리고 upstream으로 되돌아가는 루프에 관한 것입니다. Preprod이 오늘 지원하는 툴체인은 무엇이고, 이번 주에 npm이 퍼블리시한 것과 어떻게 다른가? 이 주장은 어떤 컴파일러 버전이 찍힌 어느 문서 페이지에서 온 것인가? 누군가 이미 똑같은 실패를 겪었는가, 그렇지 않다면 메인테이너가 실제로 조치할 수 있는 리포트는 어떤 모습인가?

Where it fits​

각 행은 손을 뻗어야 할 도구를 가리킵니다. EchoMKB는 마지막 세 개입니다.

QuestionTool
"DUST 생성에 대해 문서는 뭐라고 하나?"Kapa MCP server
"sealed-bid 투표 컨트랙트를 작성하고 컴파일해줘."Midnight Expert
"disclose() 규칙이 뭐고, 왜 .value()가 실패하지?"Midnight agent skills
"Preprod에는 어느 버전을 고정해야 하나? 최신 릴리스는 아직 어디서든 지원되나?"EchoMKB versions
"이 주장의 URL과 페이지 스탬프를 알려줘."EchoMKB search, page
"문서는 이 circuit 호출이 되어야 한다고 하는데, 네트워크가 거부해."EchoMKB issues, 그다음 리포팅 방법

세션에 Kapa MCP server가 설치되어 있으면, 스킬의 프로토콜은 어시스턴트에게 문서 관련 질문은 먼저 Kapa에 물어보도록 지시합니다. 자체 검색은 Kapa가 없거나 응답하지 않을 때만 실행되며, 어시스턴트는 그 사실을 조용히 넘기지 않고 답변에서 밝힙니다.

Install​

스킬은 skills CLI로 설치되며, Claude Code, Cursor, Codex, Copilot, Gemini CLI를 포함해 CLI가 지원하는 모든 에이전트에서 동작합니다. Node.js 18 이상이 필요하고 의존성은 없습니다.

npx skills add EchoForge-Dev/EchoMKB

나중에 새 버전을 받으려면 npx skills update echomkb를 실행하세요.

번들로 들어오는 것은 없습니다. 모든 답은 물어볼 때 docs.midnight.network에서 가져오며, 버전과 이슈 질문의 경우 npm registry와 GitHub API에서도 가져옵니다. 가져온 페이지는 OS 임시 디렉터리에 몇 분간 캐시되고, 스킬과 함께 배포되지는 않습니다.

Supported versus released​

Midnight의 호환성은 네트워크별로 다릅니다. Preview, Preprod, Mainnet은 각각 자신의 지원 버전을 compatibility matrix에 나열하며, 최신 릴리스는 흔히 그중 어느 것에서도 아직 지원되지 않습니다. 이 간극은 정상적인 상태입니다. 릴리스는 먼저 npm과 GitHub에 도달하고, 테스트를 거친 뒤에 matrix에 들어옵니다. 아직 고정하면 안 되는 버전은 대개 가장 최신 버전입니다.

versions 명령은 네트워크별로 matrix를 읽어 릴리스 노트, npm, GitHub 옆에 놓습니다. 덕분에 어시스턴트는 찾을 수 있는 가장 높은 숫자를 고르는 대신 두 열을 모두 보고합니다.

node skills/echomkb/scripts/echomkb.mjs versions

출력은 하나의 표로, 지원 상태는 네트워크마다 한 열씩, 릴리스 상태는 별도의 열들, 그리고 상태 열로 구성됩니다. "released, not yet supported on any network" 상태는 경고가 아니라 정보입니다. 명령은 또한 Compact 레퍼런스 페이지에서 "Compact language X, compiler Y" 스탬프를 읽어, 각 네트워크가 지원하는 툴체인과 비교합니다. 문서가 어느 네트워크가 돌리는 것보다 새로운 컴파일러에 맞춰 작성되었다면, 어시스턴트는 문법을 인용하기 전에 그 사실을 말하도록 지시받습니다.

What the command reads

versions는 퍼블리시된 그대로의 compatibility matrix와 릴리스 노트를 읽습니다. 네트워크 자체에 질의하지는 않으므로, 지금 이 순간 노드가 무엇을 돌리고 있는지가 아니라 matrix가 네트워크의 지원이라고 말하는 바를 보고합니다.

Every claim with its source​

search 명령은 라이브 문서 인덱스의 순위를 매기고 상위 페이지들을 엽니다. 각 발췌에는 URL과, 페이지에 있다면 컴파일러 스탬프가 함께 실립니다. page 명령은 문서 페이지 하나를 같은 스탬프와 함께 markdown으로 반환합니다. 스킬의 규칙은 어시스턴트가 Midnight 관련 주장마다 URL을 인용하고, 시그니처를 인용하기 전에 페이지 전체를 읽도록 요구합니다.

node skills/echomkb/scripts/echomkb.mjs search "disclose witness ledger write"
node skills/echomkb/scripts/echomkb.mjs page /compact/data-types/ledger-adt

이는 문서 질문의 대체 경로입니다. Kapa MCP server가 있으면 어시스턴트는 그런 질문에 Kapa를 쓰고, 답 뒤에 있는 정확한 URL과 스탬프가 필요한 순간을 위해 이 명령들을 남겨둡니다.

When the docs and the network disagree​

이 단계는 다른 도구들이 멈춰 서는 지점이자, EchoMKB가 중심으로 삼아 만들어진 단계입니다. issues 명령은 upstream 트래커를 라이브로, 즉 midnightntwrk 조직과 input-output-hk/lace, 그리고 Compact 컴파일러 리포지터리에 걸쳐 최신순으로 검색합니다.

node skills/echomkb/scripts/echomkb.mjs issues "read-only circuit zero fee"

스킬의 프로토콜은 어시스턴트가 밑바닥부터 디버깅을 시작하기 전에, 그리고 무언가를 신고하기 전에 이 명령을 실행하도록 합니다. 그 실패가 이미 알려진 것일 수 있고, 기존 이슈에 당신의 환경과 관찰을 담은 코멘트 하나가 중복 이슈보다 가치 있기 때문입니다. 일치하는 것이 없으면, 프로토콜은 메인테이너가 조치할 수 있는 리포트를 작성하도록 어시스턴트를 안내합니다. 환경을 고정하고(네트워크, 노드와 indexer 버전, Wallet SDK와 dust-wallet 버전, 실패하는 circuit이 상태를 읽는지 쓰는지), 두 번째 네트워크에서 재현하고, 정확한 에러 텍스트로 다시 검색한 뒤, 재현 절차와 근거, 배제한 것, 그리고 SDK나 문서가 무엇을 해야 하는지를 써 내려갑니다.

어시스턴트는 이슈나 코멘트의 초안을 쓸 수 있지만, 당신의 이름으로 올라가므로 당신이 최종 텍스트를 읽고 동의한 뒤에만 제출합니다. 이 방법은 MLH Midnight Hackathon 중에 제출된 두 건의 리포트(midnight-wallet#700와 lace#2257)에서 나왔습니다. 트래커에 도달하는 리포트 하나하나가 Kapa와 Midnight Expert가 끌어다 쓰는 원천 자료를 개선합니다. 그것이 바로 루프입니다. Kapa로 답을 찾고, Midnight Expert로 만들고, EchoMKB로 네트워크가 무엇을 했는지 보고하는 것입니다.

Doctor​

MCP 클라이언트 안에서는 다운된 엔드포인트와 만료된 OAuth 세션이 똑같아 보입니다. 도구가 아무것도 반환하지 않는 것입니다. doctor 명령은 Kapa MCP 엔드포인트에 익명 핸드셰이크 하나를 보내 둘 중 무엇인지 알려주고, 아울러 문서 사이트와 스킬 자체 캐시에 대한 연결 확인도 함께 수행합니다.

node skills/echomkb/scripts/echomkb.mjs doctor

Privacy and network access​

search, page, index 명령은 docs.midnight.network에만 접속합니다. versions 명령은 npm registry를 상대로 npm view를 실행하고 api.github.com도 호출합니다. issues 명령은 자격 증명 없이 api.github.com만 호출합니다. doctor 명령은 자격 증명도 콘텐츠도 없이 익명 MCP 핸드셰이크 하나를 midnight.mcp.kapa.ai에 보냅니다. 당신의 리포지터리에서 머신 밖으로 나가는 것은 없습니다.

Rather no answer than a wrong one​

이 스킬이 말하는 모든 것은 질문하는 시점에 가져옵니다. 안에 담겨 배포되는 것은 없습니다. 문서 스냅샷도, 저장된 matrix도, 과거 관찰 기록도 없습니다. 지난달에 뜬 Midnight 지식의 사본은 지난달에 참이던 답을 주는데, 어시스턴트는 그중 어느 것이 더는 참이 아닌지 가릴 수 없습니다.

그래서 소스에 닿지 못하면, 도구는 자체의 수명 짧은 캐시에서 페이지를 나이와 함께 표시해 제공하고 어시스턴트가 답변에서 그 사실을 밝히거나, 아니면 답할 수 없다고 말합니다. 스킬의 규칙은 학습 데이터나 기억으로 되돌아가는 것을 금지합니다. 답이 없으면 1분이 들지만, 버전 고정을 잘못하거나 disclosure 규칙을 잘못 쓰면 배포 하나가 날아갑니다.

Compatibility and status​

  • Compact and runtime versions: 스킬은 컴파일된 아티팩트를 배포하지 않으며 자체적으로 Midnight 버전을 고정하지도 않습니다. 실행 시점에 compatibility matrix를 읽으므로, matrix가 네트워크마다 나열하는 그대로를 따라갑니다.
  • Runtime requirement: Node.js 18 이상.
  • Audit status: 감사받지 않음.
  • License: Apache-2.0.
  • Issues: EchoMKB repository에 제출하세요. 이 스킬은 Midnight Foundation이 아니라 EchoMKB의 메인테이너가 관리합니다.

Source​