← ClaudeAtlas

plugin-releaselisted

gleaneryのMCP、CLI(端末の画面を含む)、自動記録のhook、plugin SkillまたはAgentを変更してnpmへ届ける。bundleのエントリポイントとその依存module、versionの一致、Claude/Codex両方への到達確認が対象。DB schemaやroleだけの変更には使わない。
iroha924/gleanery · ★ 0 · AI & Automation · score 70
Install: claude install-skill iroha924/gleanery
# 配布物を届ける ## Triggers - `server/src/mcp.ts`、`server/src/cli.ts`、`server/src/capture.ts`、またはそれらがimportするmoduleを変更する - `plugin/hooks/hooks.json`を変更する - `plugin/skills/`を変更する - 配布するversionを上げる、npmへpublishする - ローカル変更がClaude CodeやCodexに届かない原因を調べる ## Does not trigger - DB schemaやroleを変更する。その場合は`knowledge-schema`を使う ## 配布経路 **正本はnpmのpackage 1つ**で、Claude CodeとCodexのpluginはmarketplaceの`npm` sourceでそれを指す。 Claude Codeはpackageをnpm clientで解決し、tarballをplugin cacheへ展開する。 - **install scriptは走らず、依存もinstallされない。**tarballは自己完結している必要がある (`bun build`でバンドルした1 fileずつを同梱する)。DBは`node:sqlite`(Nodeの組み込み)なので、ネイティブ依存を持たない - CLIはInkを含むので`scripts/bundle-cli.ts`(`Bun.build`)でバンドルする。Inkは`DEV=true`のときだけ`react-devtools-core`を 読みにいくので、`ink/build/devtools.js`を空のmoduleへ差し替える(差し替えないと、上の階層に`react-devtools-core`が ある環境で起動ごと落ちる) - 同梱の`db/schema.sql`(と、あれば`db/migrations`)を`gleanery init` / `gleanery db migrate`が読む。CIは展開した tarballの CLI で一時HOMEに`init`を打って確かめる - cacheはバージョンが変わったときだけ更新される。`bun run bundle`やcommitだけでは届かず、publishまで届かない - CLIは実行した場所の`dist/cli.js`を読むため、CLIで動くことはMCPで動く証拠にならない - 自動記録のhookは`${CLAUDE_PLUGIN_ROOT}/dist/capture.js`を叩くので、これもcacheのバージョンで動く - **`plugin/dist`はgitで追跡しない。**buildはpublishのときに作る ### Skillからの起動経路 Skillが CLI を呼ぶときは、**package内のJSを直接起動する**。 ```text node "${CLAUDE_PLUGIN_ROOT}/dist/cli.js" <サブコマンド> ``` npmの`bin`は、利用者が`npm i -g`したときの`gleanery`コマンド用であって、**plugin内のPATHへ公開される契約は 無い**。`${CLAUDE_PLUGIN_ROOT}/bin/gleanery`のようなshell scriptに依存すると、Windowsで動かないうえ、 npm sourceでは置かれる保証も無い。 #