@ken-jo/agent-connector 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/README.md +178 -14
  2. package/dist/action-PLZW5BGX.js +54 -0
  3. package/dist/action-PLZW5BGX.js.map +1 -0
  4. package/dist/{amp-YGV66GJT.js → amp-B524U6LO.js} +81 -5
  5. package/dist/amp-B524U6LO.js.map +1 -0
  6. package/dist/{antigravity-7IBYFO6P.js → antigravity-ANDKF3K7.js} +4 -4
  7. package/dist/{antigravity-cli-JEOUP2VN.js → antigravity-cli-LLRPDDOT.js} +4 -4
  8. package/dist/chunk-22Y24V7O.js +21 -0
  9. package/dist/chunk-22Y24V7O.js.map +1 -0
  10. package/dist/chunk-3PFFTFCU.js +190 -0
  11. package/dist/chunk-3PFFTFCU.js.map +1 -0
  12. package/dist/{chunk-SCVBYSF7.js → chunk-6XHB6BE3.js} +1 -1
  13. package/dist/chunk-76FUSVIA.js +43 -0
  14. package/dist/chunk-76FUSVIA.js.map +1 -0
  15. package/dist/{chunk-GSGDG2BV.js → chunk-ADTHT2FN.js} +109 -16
  16. package/dist/chunk-ADTHT2FN.js.map +1 -0
  17. package/dist/{chunk-ZAM4M7LI.js → chunk-BHUCB6LY.js} +135 -296
  18. package/dist/chunk-BHUCB6LY.js.map +1 -0
  19. package/dist/{chunk-MEH7GC7R.js → chunk-BXGFUENQ.js} +20 -3
  20. package/dist/chunk-BXGFUENQ.js.map +1 -0
  21. package/dist/chunk-CIRDOY2V.js +351 -0
  22. package/dist/chunk-CIRDOY2V.js.map +1 -0
  23. package/dist/{chunk-KMAKDD3Z.js → chunk-G3ER4SY5.js} +37 -12
  24. package/dist/chunk-G3ER4SY5.js.map +1 -0
  25. package/dist/{chunk-PD4VFEBY.js → chunk-IW77FFNX.js} +39 -1
  26. package/dist/chunk-IW77FFNX.js.map +1 -0
  27. package/dist/chunk-J3D5W5T2.js +83 -0
  28. package/dist/chunk-J3D5W5T2.js.map +1 -0
  29. package/dist/{openclaw-UZ5BMCGQ.js → chunk-KGGBNKI4.js} +125 -33
  30. package/dist/chunk-KGGBNKI4.js.map +1 -0
  31. package/dist/{chunk-3JCRUROU.js → chunk-KGJWE6A2.js} +13 -4
  32. package/dist/chunk-KGJWE6A2.js.map +1 -0
  33. package/dist/{chunk-3RBLIHPZ.js → chunk-KGXDYGNJ.js} +26 -16
  34. package/dist/chunk-KGXDYGNJ.js.map +1 -0
  35. package/dist/{chunk-KVAAFYRR.js → chunk-KHO5WNTP.js} +2 -18
  36. package/dist/chunk-KHO5WNTP.js.map +1 -0
  37. package/dist/{chunk-KQSNDFBN.js → chunk-LL4OBGRU.js} +3 -3
  38. package/dist/{chunk-WNREHWKL.js → chunk-MAH6QQTO.js} +3 -3
  39. package/dist/{claude-code-4275HQU4.js → claude-code-MLWS7CW6.js} +180 -28
  40. package/dist/claude-code-MLWS7CW6.js.map +1 -0
  41. package/dist/cli/sdk.js +4 -3
  42. package/dist/cli/sdk.js.map +1 -1
  43. package/dist/cli.js +1 -1
  44. package/dist/{codebuff-LE3KBZGM.js → codebuff-SH2S3QAN.js} +102 -5
  45. package/dist/codebuff-SH2S3QAN.js.map +1 -0
  46. package/dist/{codex-4BY2ZJIW.js → codex-BXA4FIF4.js} +3 -3
  47. package/dist/{copilot-cli-IPISKO3V.js → copilot-cli-ROIBTTDT.js} +3 -3
  48. package/dist/{crush-X3E25EQG.js → crush-QLEFLHUC.js} +3 -3
  49. package/dist/{cursor-UH3W622V.js → cursor-ASJPWZ4R.js} +6 -3
  50. package/dist/cursor-ASJPWZ4R.js.map +1 -0
  51. package/dist/{detect-U3E7NVNW.js → detect-ZIIS55LD.js} +4 -3
  52. package/dist/{detect-U3E7NVNW.js.map → detect-ZIIS55LD.js.map} +1 -1
  53. package/dist/{doctor-DZTWED4O.js → doctor-TJUGSQ5C.js} +16 -12
  54. package/dist/doctor-TJUGSQ5C.js.map +1 -0
  55. package/dist/{droid-T5VBRXZF.js → droid-NCSS3B5Y.js} +170 -4
  56. package/dist/droid-NCSS3B5Y.js.map +1 -0
  57. package/dist/{gemini-cli-ZSUK55UA.js → gemini-cli-SLVWLXJW.js} +3 -3
  58. package/dist/{goose-M3RR3CZG.js → goose-PBA7KTE5.js} +100 -5
  59. package/dist/goose-PBA7KTE5.js.map +1 -0
  60. package/dist/{hermes-CUNKIAR5.js → hermes-ONDCECP2.js} +3 -3
  61. package/dist/{hook-EVY7LOUQ.js → hook-OU522ABV.js} +12 -9
  62. package/dist/{hook-EVY7LOUQ.js.map → hook-OU522ABV.js.map} +1 -1
  63. package/dist/index.d.ts +71 -3
  64. package/dist/index.js +22 -3
  65. package/dist/{install-OWAS5UIE.js → install-UDCBL7HP.js} +11 -9
  66. package/dist/{install-OWAS5UIE.js.map → install-UDCBL7HP.js.map} +1 -1
  67. package/dist/introspect-DuZSPSHB.d.ts +53 -0
  68. package/dist/{jetbrains-copilot-C3HDGGML.js → jetbrains-copilot-YABZ3HFA.js} +3 -3
  69. package/dist/{kilo-PKAJCWPX.js → kilo-F3ZDZKCT.js} +3 -3
  70. package/dist/{kilo-cli-QWUVXG2O.js → kilo-cli-3HWPWBY4.js} +3 -3
  71. package/dist/{kimi-EVD7YKXS.js → kimi-NV72FVAO.js} +3 -3
  72. package/dist/{kiro-UQRY6EIO.js → kiro-C5W6AGDR.js} +3 -3
  73. package/dist/{leaderboard-CSWHI4UY.js → leaderboard-TIBVONVT.js} +3 -3
  74. package/dist/mimo-code-IMM5YM3M.js +754 -0
  75. package/dist/mimo-code-IMM5YM3M.js.map +1 -0
  76. package/dist/{mux-5CI5FP2W.js → mux-DSSH4AFS.js} +3 -3
  77. package/dist/nemoclaw-3EVNKD3I.js +58 -0
  78. package/dist/nemoclaw-3EVNKD3I.js.map +1 -0
  79. package/dist/{omp-AXA7XY22.js → omp-Z6FRNDPN.js} +3 -3
  80. package/dist/openclaw-7G437NT7.js +18 -0
  81. package/dist/openclaw-7G437NT7.js.map +1 -0
  82. package/dist/{opencode-NZBRLJN3.js → opencode-Q6KBSAKW.js} +3 -3
  83. package/dist/{package-WFOS4QVU.js → package-RMPN57YZ.js} +7 -6
  84. package/dist/{package-WFOS4QVU.js.map → package-RMPN57YZ.js.map} +1 -1
  85. package/dist/{pi-WMTUX6ES.js → pi-LZT6WWAZ.js} +2 -2
  86. package/dist/{qwen-code-MRRIUQ3P.js → qwen-code-WQBKRPWJ.js} +3 -3
  87. package/dist/{roo-code-NI5UU6JB.js → roo-code-GWSNU3OW.js} +137 -4
  88. package/dist/roo-code-GWSNU3OW.js.map +1 -0
  89. package/dist/runtime/index.d.ts +96 -2
  90. package/dist/runtime/index.js +18 -10
  91. package/dist/sdk/index.d.ts +52 -0
  92. package/dist/sdk/index.js +81 -0
  93. package/dist/sdk/index.js.map +1 -0
  94. package/dist/sdk/test.d.ts +74 -0
  95. package/dist/sdk/test.js +291 -0
  96. package/dist/sdk/test.js.map +1 -0
  97. package/dist/{serve-3C2VFPAY.js → serve-D3GO36UT.js} +12 -9
  98. package/dist/{serve-3C2VFPAY.js.map → serve-D3GO36UT.js.map} +1 -1
  99. package/dist/{status-MKQYX5MW.js → status-KOSKCETC.js} +9 -7
  100. package/dist/{status-MKQYX5MW.js.map → status-KOSKCETC.js.map} +1 -1
  101. package/dist/statusline-ZNTCL5YC.js +59 -0
  102. package/dist/statusline-ZNTCL5YC.js.map +1 -0
  103. package/dist/{telemetry-3DN6XGYB.js → telemetry-XIKUUGTQ.js} +5 -4
  104. package/dist/{telemetry-3DN6XGYB.js.map → telemetry-XIKUUGTQ.js.map} +1 -1
  105. package/dist/{trae-CQC72RHH.js → trae-NWT3TMSZ.js} +99 -5
  106. package/dist/trae-NWT3TMSZ.js.map +1 -0
  107. package/dist/{types-CNigfEuR.d.ts → types-BEKsAium.d.ts} +268 -6
  108. package/dist/{uninstall-WG6PFWF3.js → uninstall-2LBLQVFA.js} +11 -9
  109. package/dist/{uninstall-WG6PFWF3.js.map → uninstall-2LBLQVFA.js.map} +1 -1
  110. package/dist/{upgrade-32NC2RKI.js → upgrade-ZC2S7VRN.js} +11 -9
  111. package/dist/{upgrade-32NC2RKI.js.map → upgrade-ZC2S7VRN.js.map} +1 -1
  112. package/dist/{usage-CJOM2WQM.js → usage-E2A4O2CY.js} +3 -3
  113. package/dist/{usage-event-472X3DOY.js → usage-event-JKMC4QC4.js} +11 -8
  114. package/dist/{usage-event-472X3DOY.js.map → usage-event-JKMC4QC4.js.map} +1 -1
  115. package/dist/{vscode-copilot-4RVRTCKV.js → vscode-copilot-ALV45XF6.js} +3 -3
  116. package/dist/{warp-X6MB67NT.js → warp-H6IX4U3J.js} +3 -3
  117. package/dist/{zed-NTCYW4V2.js → zed-RH34TNSW.js} +3 -3
  118. package/package.json +9 -1
  119. package/dist/amp-YGV66GJT.js.map +0 -1
  120. package/dist/chunk-3JCRUROU.js.map +0 -1
  121. package/dist/chunk-3RBLIHPZ.js.map +0 -1
  122. package/dist/chunk-GSGDG2BV.js.map +0 -1
  123. package/dist/chunk-KMAKDD3Z.js.map +0 -1
  124. package/dist/chunk-KVAAFYRR.js.map +0 -1
  125. package/dist/chunk-MEH7GC7R.js.map +0 -1
  126. package/dist/chunk-NJU275US.js +0 -238
  127. package/dist/chunk-NJU275US.js.map +0 -1
  128. package/dist/chunk-PD4VFEBY.js.map +0 -1
  129. package/dist/chunk-ZAM4M7LI.js.map +0 -1
  130. package/dist/claude-code-4275HQU4.js.map +0 -1
  131. package/dist/codebuff-LE3KBZGM.js.map +0 -1
  132. package/dist/cursor-UH3W622V.js.map +0 -1
  133. package/dist/doctor-DZTWED4O.js.map +0 -1
  134. package/dist/droid-T5VBRXZF.js.map +0 -1
  135. package/dist/goose-M3RR3CZG.js.map +0 -1
  136. package/dist/openclaw-UZ5BMCGQ.js.map +0 -1
  137. package/dist/roo-code-NI5UU6JB.js.map +0 -1
  138. package/dist/trae-CQC72RHH.js.map +0 -1
  139. /package/dist/{antigravity-7IBYFO6P.js.map → antigravity-ANDKF3K7.js.map} +0 -0
  140. /package/dist/{antigravity-cli-JEOUP2VN.js.map → antigravity-cli-LLRPDDOT.js.map} +0 -0
  141. /package/dist/{chunk-SCVBYSF7.js.map → chunk-6XHB6BE3.js.map} +0 -0
  142. /package/dist/{chunk-KQSNDFBN.js.map → chunk-LL4OBGRU.js.map} +0 -0
  143. /package/dist/{chunk-WNREHWKL.js.map → chunk-MAH6QQTO.js.map} +0 -0
  144. /package/dist/{codex-4BY2ZJIW.js.map → codex-BXA4FIF4.js.map} +0 -0
  145. /package/dist/{copilot-cli-IPISKO3V.js.map → copilot-cli-ROIBTTDT.js.map} +0 -0
  146. /package/dist/{crush-X3E25EQG.js.map → crush-QLEFLHUC.js.map} +0 -0
  147. /package/dist/{gemini-cli-ZSUK55UA.js.map → gemini-cli-SLVWLXJW.js.map} +0 -0
  148. /package/dist/{hermes-CUNKIAR5.js.map → hermes-ONDCECP2.js.map} +0 -0
  149. /package/dist/{jetbrains-copilot-C3HDGGML.js.map → jetbrains-copilot-YABZ3HFA.js.map} +0 -0
  150. /package/dist/{kilo-PKAJCWPX.js.map → kilo-F3ZDZKCT.js.map} +0 -0
  151. /package/dist/{kilo-cli-QWUVXG2O.js.map → kilo-cli-3HWPWBY4.js.map} +0 -0
  152. /package/dist/{kimi-EVD7YKXS.js.map → kimi-NV72FVAO.js.map} +0 -0
  153. /package/dist/{kiro-UQRY6EIO.js.map → kiro-C5W6AGDR.js.map} +0 -0
  154. /package/dist/{leaderboard-CSWHI4UY.js.map → leaderboard-TIBVONVT.js.map} +0 -0
  155. /package/dist/{mux-5CI5FP2W.js.map → mux-DSSH4AFS.js.map} +0 -0
  156. /package/dist/{omp-AXA7XY22.js.map → omp-Z6FRNDPN.js.map} +0 -0
  157. /package/dist/{opencode-NZBRLJN3.js.map → opencode-Q6KBSAKW.js.map} +0 -0
  158. /package/dist/{pi-WMTUX6ES.js.map → pi-LZT6WWAZ.js.map} +0 -0
  159. /package/dist/{qwen-code-MRRIUQ3P.js.map → qwen-code-WQBKRPWJ.js.map} +0 -0
  160. /package/dist/{usage-CJOM2WQM.js.map → usage-E2A4O2CY.js.map} +0 -0
  161. /package/dist/{vscode-copilot-4RVRTCKV.js.map → vscode-copilot-ALV45XF6.js.map} +0 -0
  162. /package/dist/{warp-X6MB67NT.js.map → warp-H6IX4U3J.js.map} +0 -0
  163. /package/dist/{zed-NTCYW4V2.js.map → zed-RH34TNSW.js.map} +0 -0
@@ -3,8 +3,8 @@ import {
3
3
  installConnector,
4
4
  installViaMarketplace,
5
5
  parseInstallMethod
6
- } from "./chunk-KMAKDD3Z.js";
7
- import "./chunk-WNREHWKL.js";
6
+ } from "./chunk-G3ER4SY5.js";
7
+ import "./chunk-MAH6QQTO.js";
8
8
  import "./chunk-G5CQHVQG.js";
9
9
  import {
10
10
  fail,
@@ -12,17 +12,19 @@ import {
12
12
  parseTargets,
13
13
  print,
14
14
  renderInstallResult
15
- } from "./chunk-3RBLIHPZ.js";
16
- import "./chunk-KVAAFYRR.js";
17
- import "./chunk-NJU275US.js";
15
+ } from "./chunk-KGXDYGNJ.js";
16
+ import "./chunk-22Y24V7O.js";
17
+ import "./chunk-J3D5W5T2.js";
18
+ import "./chunk-KHO5WNTP.js";
18
19
  import {
19
20
  findConnectorConfig,
20
21
  loadConnectorFromPath
21
- } from "./chunk-3JCRUROU.js";
22
- import "./chunk-GSGDG2BV.js";
22
+ } from "./chunk-KGJWE6A2.js";
23
+ import "./chunk-ADTHT2FN.js";
24
+ import "./chunk-3PFFTFCU.js";
23
25
  import "./chunk-OPXAP3AC.js";
24
26
  import "./chunk-7L6ITC4T.js";
25
- import "./chunk-MEH7GC7R.js";
27
+ import "./chunk-BXGFUENQ.js";
26
28
  import "./chunk-N6HH7K6P.js";
27
29
  import "./chunk-TRQKHP7D.js";
28
30
 
@@ -86,4 +88,4 @@ async function run(argv) {
86
88
  export {
87
89
  run
88
90
  };
89
- //# sourceMappingURL=install-OWAS5UIE.js.map
91
+ //# sourceMappingURL=install-UDCBL7HP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/cli/commands/install.ts"],"sourcesContent":["/**\n * cli/commands/install — deploy a connector across its target platforms.\n *\n * Resolves the connector config (--connector <path>, else findConnectorConfig\n * walking up from the project dir), loads it into a live ResolvedConnector, and\n * hands it to the chosen DELIVERY METHOD's orchestration:\n *\n * --method direct (default) — the installer renders each host's native\n * MCP + hook + content config in place (zero behavior\n * change for existing scripts).\n * --method marketplace — stage the connector's plugin bundle under the\n * data-root and DRIVE the host's own plugin/marketplace\n * install flow (v1 driver: claude-code; other hosts get\n * never-silent skip/warn records with manual commands).\n *\n * Both methods emit the same ChangeRecords, rendered as a readable diff;\n * --dry-run renders the plan without writing or spawning. A double-install\n * guard (both directions) enforces exactly one method per (connector, host,\n * scope) — a refusal is a `warn` record, so the exit-1-on-warn convention\n * carries over.\n */\n\nimport { parseArgs } from \"node:util\";\n\nimport { installConnector } from \"../../core/installer.js\";\nimport { installViaMarketplace, parseInstallMethod } from \"../../core/marketplace.js\";\nimport { findConnectorConfig, loadConnectorFromPath } from \"../../core/load-connector.js\";\nimport { fail, parseScope, parseTargets, print, renderInstallResult } from \"../app.js\";\n\nexport async function run(argv: string[]): Promise<number> {\n const { values } = parseArgs({\n args: argv,\n options: {\n method: { type: \"string\", default: \"direct\" },\n scope: { type: \"string\", default: \"user\" },\n targets: { type: \"string\" },\n connector: { type: \"string\" },\n project: { type: \"string\" },\n \"dry-run\": { type: \"boolean\", default: false },\n // Memory surface: overwrite USER-EDITED managed blocks (hash drift).\n // Default behavior is warn-and-leave; --force backs the file up first.\n force: { type: \"boolean\", default: false },\n },\n allowPositionals: false,\n });\n\n const method = parseInstallMethod(values.method);\n if (method == null) {\n return fail(`invalid --method \"${values.method}\" (use direct|marketplace)`);\n }\n\n const projectDir = values.project ?? process.cwd();\n const configPath = values.connector ?? findConnectorConfig(projectDir);\n if (!configPath) {\n return fail(\n \"no connector config found. Pass --connector <path> or add an \" +\n \"agent-connector.config.{mjs,js,json} to your project.\",\n );\n }\n\n const scope = parseScope(values.scope);\n if (scope == null) return fail(`invalid --scope \"${values.scope}\" (use user|project)`);\n if (method === \"marketplace\" && scope !== \"user\") {\n return fail(\n \"--method marketplace supports --scope user only (project-scope plugin installs are deferred)\",\n );\n }\n\n const { connector, modulePath } = await loadConnectorFromPath(configPath);\n const targets = parseTargets(values.targets);\n\n const result =\n method === \"marketplace\"\n ? await installViaMarketplace({\n connector,\n modulePath,\n scope,\n projectDir,\n dryRun: values[\"dry-run\"],\n ...(targets ? { targets } : {}),\n })\n : await installConnector({\n connector,\n modulePath,\n scope,\n projectDir,\n dryRun: values[\"dry-run\"],\n force: values.force,\n ...(targets ? { targets } : {}),\n });\n\n print(renderInstallResult(result, \"install\"));\n return result.changes.some((c) => c.action === \"warn\") ? 1 : 0;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,SAAS,iBAAiB;AAO1B,eAAsB,IAAI,MAAiC;AACzD,QAAM,EAAE,OAAO,IAAI,UAAU;AAAA,IAC3B,MAAM;AAAA,IACN,SAAS;AAAA,MACP,QAAQ,EAAE,MAAM,UAAU,SAAS,SAAS;AAAA,MAC5C,OAAO,EAAE,MAAM,UAAU,SAAS,OAAO;AAAA,MACzC,SAAS,EAAE,MAAM,SAAS;AAAA,MAC1B,WAAW,EAAE,MAAM,SAAS;AAAA,MAC5B,SAAS,EAAE,MAAM,SAAS;AAAA,MAC1B,WAAW,EAAE,MAAM,WAAW,SAAS,MAAM;AAAA;AAAA;AAAA,MAG7C,OAAO,EAAE,MAAM,WAAW,SAAS,MAAM;AAAA,IAC3C;AAAA,IACA,kBAAkB;AAAA,EACpB,CAAC;AAED,QAAM,SAAS,mBAAmB,OAAO,MAAM;AAC/C,MAAI,UAAU,MAAM;AAClB,WAAO,KAAK,qBAAqB,OAAO,MAAM,4BAA4B;AAAA,EAC5E;AAEA,QAAM,aAAa,OAAO,WAAW,QAAQ,IAAI;AACjD,QAAM,aAAa,OAAO,aAAa,oBAAoB,UAAU;AACrE,MAAI,CAAC,YAAY;AACf,WAAO;AAAA,MACL;AAAA,IAEF;AAAA,EACF;AAEA,QAAM,QAAQ,WAAW,OAAO,KAAK;AACrC,MAAI,SAAS,KAAM,QAAO,KAAK,oBAAoB,OAAO,KAAK,sBAAsB;AACrF,MAAI,WAAW,iBAAiB,UAAU,QAAQ;AAChD,WAAO;AAAA,MACL;AAAA,IACF;AAAA,EACF;AAEA,QAAM,EAAE,WAAW,WAAW,IAAI,MAAM,sBAAsB,UAAU;AACxE,QAAM,UAAU,aAAa,OAAO,OAAO;AAE3C,QAAM,SACJ,WAAW,gBACP,MAAM,sBAAsB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,OAAO,SAAS;AAAA,IACxB,GAAI,UAAU,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC/B,CAAC,IACD,MAAM,iBAAiB;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,OAAO,SAAS;AAAA,IACxB,OAAO,OAAO;AAAA,IACd,GAAI,UAAU,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC/B,CAAC;AAEP,QAAM,oBAAoB,QAAQ,SAAS,CAAC;AAC5C,SAAO,OAAO,QAAQ,KAAK,CAAC,MAAM,EAAE,WAAW,MAAM,IAAI,IAAI;AAC/D;","names":[]}
1
+ {"version":3,"sources":["../src/cli/commands/install.ts"],"sourcesContent":["/**\n * cli/commands/install — deploy a connector across its target platforms.\n *\n * Resolves the connector config (--connector <path>, else findConnectorConfig\n * walking up from the project dir), loads it into a live ResolvedConnector, and\n * hands it to the chosen DELIVERY METHOD's orchestration:\n *\n * --method direct (default) — the installer renders each host's native\n * MCP + hook + content config in place (zero behavior\n * change for existing scripts).\n * --method marketplace — stage the connector's plugin bundle under the\n * data-root and DRIVE the host's own plugin/marketplace\n * install flow (v1 driver: claude-code; other hosts get\n * never-silent skip/warn records with manual commands).\n *\n * Both methods emit the same ChangeRecords, rendered as a readable diff;\n * --dry-run renders the plan without writing or spawning. A double-install\n * guard (both directions) enforces exactly one method per (connector, host,\n * scope) — a refusal is a `warn` record, so the exit-1-on-warn convention\n * carries over.\n */\n\nimport { parseArgs } from \"node:util\";\n\nimport { installConnector } from \"../../core/installer.js\";\nimport { installViaMarketplace, parseInstallMethod } from \"../../core/marketplace.js\";\nimport { findConnectorConfig, loadConnectorFromPath } from \"../../core/load-connector.js\";\nimport { fail, parseScope, parseTargets, print, renderInstallResult } from \"../app.js\";\n\nexport async function run(argv: string[]): Promise<number> {\n const { values } = parseArgs({\n args: argv,\n options: {\n method: { type: \"string\", default: \"direct\" },\n scope: { type: \"string\", default: \"user\" },\n targets: { type: \"string\" },\n connector: { type: \"string\" },\n project: { type: \"string\" },\n \"dry-run\": { type: \"boolean\", default: false },\n // Memory surface: overwrite USER-EDITED managed blocks (hash drift).\n // Default behavior is warn-and-leave; --force backs the file up first.\n force: { type: \"boolean\", default: false },\n },\n allowPositionals: false,\n });\n\n const method = parseInstallMethod(values.method);\n if (method == null) {\n return fail(`invalid --method \"${values.method}\" (use direct|marketplace)`);\n }\n\n const projectDir = values.project ?? process.cwd();\n const configPath = values.connector ?? findConnectorConfig(projectDir);\n if (!configPath) {\n return fail(\n \"no connector config found. Pass --connector <path> or add an \" +\n \"agent-connector.config.{mjs,js,json} to your project.\",\n );\n }\n\n const scope = parseScope(values.scope);\n if (scope == null) return fail(`invalid --scope \"${values.scope}\" (use user|project)`);\n if (method === \"marketplace\" && scope !== \"user\") {\n return fail(\n \"--method marketplace supports --scope user only (project-scope plugin installs are deferred)\",\n );\n }\n\n const { connector, modulePath } = await loadConnectorFromPath(configPath);\n const targets = parseTargets(values.targets);\n\n const result =\n method === \"marketplace\"\n ? await installViaMarketplace({\n connector,\n modulePath,\n scope,\n projectDir,\n dryRun: values[\"dry-run\"],\n ...(targets ? { targets } : {}),\n })\n : await installConnector({\n connector,\n modulePath,\n scope,\n projectDir,\n dryRun: values[\"dry-run\"],\n force: values.force,\n ...(targets ? { targets } : {}),\n });\n\n print(renderInstallResult(result, \"install\"));\n return result.changes.some((c) => c.action === \"warn\") ? 1 : 0;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsBA,SAAS,iBAAiB;AAO1B,eAAsB,IAAI,MAAiC;AACzD,QAAM,EAAE,OAAO,IAAI,UAAU;AAAA,IAC3B,MAAM;AAAA,IACN,SAAS;AAAA,MACP,QAAQ,EAAE,MAAM,UAAU,SAAS,SAAS;AAAA,MAC5C,OAAO,EAAE,MAAM,UAAU,SAAS,OAAO;AAAA,MACzC,SAAS,EAAE,MAAM,SAAS;AAAA,MAC1B,WAAW,EAAE,MAAM,SAAS;AAAA,MAC5B,SAAS,EAAE,MAAM,SAAS;AAAA,MAC1B,WAAW,EAAE,MAAM,WAAW,SAAS,MAAM;AAAA;AAAA;AAAA,MAG7C,OAAO,EAAE,MAAM,WAAW,SAAS,MAAM;AAAA,IAC3C;AAAA,IACA,kBAAkB;AAAA,EACpB,CAAC;AAED,QAAM,SAAS,mBAAmB,OAAO,MAAM;AAC/C,MAAI,UAAU,MAAM;AAClB,WAAO,KAAK,qBAAqB,OAAO,MAAM,4BAA4B;AAAA,EAC5E;AAEA,QAAM,aAAa,OAAO,WAAW,QAAQ,IAAI;AACjD,QAAM,aAAa,OAAO,aAAa,oBAAoB,UAAU;AACrE,MAAI,CAAC,YAAY;AACf,WAAO;AAAA,MACL;AAAA,IAEF;AAAA,EACF;AAEA,QAAM,QAAQ,WAAW,OAAO,KAAK;AACrC,MAAI,SAAS,KAAM,QAAO,KAAK,oBAAoB,OAAO,KAAK,sBAAsB;AACrF,MAAI,WAAW,iBAAiB,UAAU,QAAQ;AAChD,WAAO;AAAA,MACL;AAAA,IACF;AAAA,EACF;AAEA,QAAM,EAAE,WAAW,WAAW,IAAI,MAAM,sBAAsB,UAAU;AACxE,QAAM,UAAU,aAAa,OAAO,OAAO;AAE3C,QAAM,SACJ,WAAW,gBACP,MAAM,sBAAsB;AAAA,IAC1B;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,OAAO,SAAS;AAAA,IACxB,GAAI,UAAU,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC/B,CAAC,IACD,MAAM,iBAAiB;AAAA,IACrB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,QAAQ,OAAO,SAAS;AAAA,IACxB,OAAO,OAAO;AAAA,IACd,GAAI,UAAU,EAAE,QAAQ,IAAI,CAAC;AAAA,EAC/B,CAAC;AAEP,QAAM,oBAAoB,QAAQ,SAAS,CAAC;AAC5C,SAAO,OAAO,QAAQ,KAAK,CAAC,MAAM,EAAE,WAAW,MAAM,IAAI,IAAI;AAC/D;","names":[]}
@@ -0,0 +1,53 @@
1
+ import { m as PlatformCapabilities, P as PlatformId } from './types-BEKsAium.js';
2
+
3
+ /**
4
+ * sdk/introspect — host-capability introspection over the adapter registry.
5
+ *
6
+ * A thin, READ-ONLY query layer above {@link loadAdapter} / {@link allAdapters}:
7
+ * "which hosts can honor surface X?" and "what can host Y do?". It exists so a
8
+ * connector author (or a docs/CLI surface) can answer those questions WITHOUT
9
+ * reaching into adapter internals or re-deriving the per-surface capability
10
+ * rules — the predicates below are the single source of truth for mapping the
11
+ * raw {@link PlatformCapabilities} flags onto the developer-facing surface names.
12
+ *
13
+ * Everything is async because adapters load lazily (one entry per platform in
14
+ * the registry, imported only when queried).
15
+ */
16
+
17
+ /**
18
+ * The developer-facing surface names a connector can declare. These mirror the
19
+ * top-level {@link import("../core/types.js").ConnectorConfig} keys (server,
20
+ * hooks, commands, …) plus the platform-scoped `configPatch` / `nativeHooks`
21
+ * escape hatches — the same vocabulary the install diff and `explain` use.
22
+ */
23
+ type SurfaceName = "server" | "hooks" | "commands" | "skills" | "subagents" | "memory" | "statusline" | "actions" | "configPatch" | "nativeHooks";
24
+ /**
25
+ * Pure capability predicate per surface — `true` when the host can NATIVELY
26
+ * honor that surface. The optional capability flags are read as `?? false`
27
+ * (the supportsCommands precedent in core/types), so a host that simply leaves
28
+ * a flag unset reports the surface as unsupported (the installer skip-warns it).
29
+ *
30
+ * `hooks` is satisfied by ANY normalized hook event (i.e. the host has at least
31
+ * one event it can dispatch); the per-event flags map 1:1 onto the
32
+ * {@link import("../core/types.js").HookEventName} union.
33
+ */
34
+ declare const SURFACE_PREDICATES: Record<SurfaceName, (c: PlatformCapabilities) => boolean>;
35
+ /**
36
+ * The {@link PlatformCapabilities} a host advertises, or `undefined` for an id
37
+ * that is not in the registry (`"unknown"`, a usage-only id like `"synthetic"`,
38
+ * or a typo) — callers branch on undefined rather than crash.
39
+ */
40
+ declare function capabilitiesOf(host: PlatformId | string): Promise<PlatformCapabilities | undefined>;
41
+ /**
42
+ * Every registered host that can NATIVELY honor `surface`, as a sorted id list
43
+ * (stable output for snapshots/docs). Loads all adapters in parallel and keeps
44
+ * only those whose capabilities pass {@link SURFACE_PREDICATES}.
45
+ */
46
+ declare function hostsSupporting(surface: SurfaceName): Promise<PlatformId[]>;
47
+ /**
48
+ * Convenience: does `host` natively support `surface`? `false` for an unknown
49
+ * id (no capabilities → cannot support anything).
50
+ */
51
+ declare function surfaceSupport(host: PlatformId | string, surface: SurfaceName): Promise<boolean>;
52
+
53
+ export { SURFACE_PREDICATES as S, type SurfaceName as a, capabilitiesOf as c, hostsSupporting as h, surfaceSupport as s };
@@ -1,12 +1,12 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  BaseAdapter
4
- } from "./chunk-PD4VFEBY.js";
4
+ } from "./chunk-IW77FFNX.js";
5
5
  import "./chunk-7L6ITC4T.js";
6
6
  import {
7
7
  buildHomeBinHookCommand,
8
8
  isHomeBinHookCommand
9
- } from "./chunk-MEH7GC7R.js";
9
+ } from "./chunk-BXGFUENQ.js";
10
10
  import "./chunk-N6HH7K6P.js";
11
11
  import "./chunk-TRQKHP7D.js";
12
12
 
@@ -644,4 +644,4 @@ export {
644
644
  adapter,
645
645
  jetbrains_copilot_default as default
646
646
  };
647
- //# sourceMappingURL=jetbrains-copilot-C3HDGGML.js.map
647
+ //# sourceMappingURL=jetbrains-copilot-YABZ3HFA.js.map
@@ -4,12 +4,12 @@ import {
4
4
  } from "./chunk-DBQMX75U.js";
5
5
  import {
6
6
  BaseAdapter
7
- } from "./chunk-PD4VFEBY.js";
7
+ } from "./chunk-IW77FFNX.js";
8
8
  import "./chunk-7L6ITC4T.js";
9
9
  import {
10
10
  buildServeWrapperCommand,
11
11
  shouldWrapForTelemetry
12
- } from "./chunk-MEH7GC7R.js";
12
+ } from "./chunk-BXGFUENQ.js";
13
13
  import "./chunk-N6HH7K6P.js";
14
14
  import "./chunk-TRQKHP7D.js";
15
15
 
@@ -849,4 +849,4 @@ export {
849
849
  adapter,
850
850
  kilo_default as default
851
851
  };
852
- //# sourceMappingURL=kilo-PKAJCWPX.js.map
852
+ //# sourceMappingURL=kilo-F3ZDZKCT.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-DBQMX75U.js";
5
5
  import {
6
6
  BaseAdapter
7
- } from "./chunk-PD4VFEBY.js";
7
+ } from "./chunk-IW77FFNX.js";
8
8
  import {
9
9
  renderCommandMd,
10
10
  renderSkillMd
@@ -12,7 +12,7 @@ import {
12
12
  import {
13
13
  buildServeWrapperCommand,
14
14
  shouldWrapForTelemetry
15
- } from "./chunk-MEH7GC7R.js";
15
+ } from "./chunk-BXGFUENQ.js";
16
16
  import "./chunk-N6HH7K6P.js";
17
17
  import "./chunk-TRQKHP7D.js";
18
18
 
@@ -763,4 +763,4 @@ export {
763
763
  adapter,
764
764
  kilo_cli_default as default
765
765
  };
766
- //# sourceMappingURL=kilo-cli-QWUVXG2O.js.map
766
+ //# sourceMappingURL=kilo-cli-3HWPWBY4.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-DBQMX75U.js";
5
5
  import {
6
6
  BaseAdapter
7
- } from "./chunk-PD4VFEBY.js";
7
+ } from "./chunk-IW77FFNX.js";
8
8
  import {
9
9
  renderSkillMd
10
10
  } from "./chunk-7L6ITC4T.js";
@@ -13,7 +13,7 @@ import {
13
13
  buildServeWrapperCommand,
14
14
  isHomeBinHookCommand,
15
15
  shouldWrapForTelemetry
16
- } from "./chunk-MEH7GC7R.js";
16
+ } from "./chunk-BXGFUENQ.js";
17
17
  import "./chunk-N6HH7K6P.js";
18
18
  import {
19
19
  ensureDir
@@ -578,4 +578,4 @@ export {
578
578
  adapter,
579
579
  kimi_default as default
580
580
  };
581
- //# sourceMappingURL=kimi-EVD7YKXS.js.map
581
+ //# sourceMappingURL=kimi-NV72FVAO.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-DBQMX75U.js";
5
5
  import {
6
6
  BaseAdapter
7
- } from "./chunk-PD4VFEBY.js";
7
+ } from "./chunk-IW77FFNX.js";
8
8
  import {
9
9
  renderSkillMd
10
10
  } from "./chunk-7L6ITC4T.js";
@@ -13,7 +13,7 @@ import {
13
13
  buildServeWrapperCommand,
14
14
  isHomeBinHookCommand,
15
15
  shouldWrapForTelemetry
16
- } from "./chunk-MEH7GC7R.js";
16
+ } from "./chunk-BXGFUENQ.js";
17
17
  import "./chunk-N6HH7K6P.js";
18
18
  import "./chunk-TRQKHP7D.js";
19
19
 
@@ -542,4 +542,4 @@ export {
542
542
  adapter,
543
543
  kiro_default as default
544
544
  };
545
- //# sourceMappingURL=kiro-UQRY6EIO.js.map
545
+ //# sourceMappingURL=kiro-C5W6AGDR.js.map
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  formatHostLeaderboard,
4
4
  hostLeaderboard
5
- } from "./chunk-SCVBYSF7.js";
5
+ } from "./chunk-6XHB6BE3.js";
6
6
  import {
7
7
  SCOPE_FILTER_VALUES,
8
8
  formatHostNativeTurns,
@@ -15,7 +15,7 @@ import "./chunk-XD7MY6HB.js";
15
15
  import {
16
16
  fail,
17
17
  print
18
- } from "./chunk-3RBLIHPZ.js";
18
+ } from "./chunk-KGXDYGNJ.js";
19
19
  import "./chunk-BCHWFTV4.js";
20
20
  import "./chunk-TRQKHP7D.js";
21
21
 
@@ -134,4 +134,4 @@ export {
134
134
  parseSince,
135
135
  run
136
136
  };
137
- //# sourceMappingURL=leaderboard-CSWHI4UY.js.map
137
+ //# sourceMappingURL=leaderboard-TIBVONVT.js.map