@wootsup/yt-builder-mcp 1.1.7 → 1.3.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 (249) hide show
  1. package/README.md +14 -10
  2. package/bin/yt-builder-mcp.js +55 -40
  3. package/dist/auth.d.ts +18 -0
  4. package/dist/auth.d.ts.map +1 -1
  5. package/dist/auth.js +18 -0
  6. package/dist/auth.js.map +1 -1
  7. package/dist/catalog/build-catalog.d.ts +63 -0
  8. package/dist/catalog/build-catalog.d.ts.map +1 -0
  9. package/dist/catalog/build-catalog.js +166 -0
  10. package/dist/catalog/build-catalog.js.map +1 -0
  11. package/dist/cli/invocation-decision.d.ts +57 -0
  12. package/dist/cli/invocation-decision.d.ts.map +1 -0
  13. package/dist/cli/invocation-decision.js +86 -0
  14. package/dist/cli/invocation-decision.js.map +1 -0
  15. package/dist/client.d.ts +28 -0
  16. package/dist/client.d.ts.map +1 -1
  17. package/dist/client.js +40 -1
  18. package/dist/client.js.map +1 -1
  19. package/dist/clients/claude-code.d.ts.map +1 -1
  20. package/dist/clients/claude-code.js +3 -1
  21. package/dist/clients/claude-code.js.map +1 -1
  22. package/dist/clients/claude-desktop.d.ts.map +1 -1
  23. package/dist/clients/claude-desktop.js +3 -1
  24. package/dist/clients/claude-desktop.js.map +1 -1
  25. package/dist/clients/cline.d.ts.map +1 -1
  26. package/dist/clients/cline.js +3 -1
  27. package/dist/clients/cline.js.map +1 -1
  28. package/dist/clients/codex-cli.d.ts +1 -1
  29. package/dist/clients/codex-cli.d.ts.map +1 -1
  30. package/dist/clients/codex-cli.js +98 -0
  31. package/dist/clients/codex-cli.js.map +1 -1
  32. package/dist/clients/continue.d.ts.map +1 -1
  33. package/dist/clients/continue.js +70 -1
  34. package/dist/clients/continue.js.map +1 -1
  35. package/dist/clients/cursor.d.ts.map +1 -1
  36. package/dist/clients/cursor.js +3 -1
  37. package/dist/clients/cursor.js.map +1 -1
  38. package/dist/clients/gemini-cli.d.ts.map +1 -1
  39. package/dist/clients/gemini-cli.js +3 -1
  40. package/dist/clients/gemini-cli.js.map +1 -1
  41. package/dist/clients/index.d.ts +104 -0
  42. package/dist/clients/index.d.ts.map +1 -1
  43. package/dist/clients/index.js +141 -0
  44. package/dist/clients/index.js.map +1 -1
  45. package/dist/clients/roo-code.d.ts.map +1 -1
  46. package/dist/clients/roo-code.js +3 -1
  47. package/dist/clients/roo-code.js.map +1 -1
  48. package/dist/clients/zed.d.ts.map +1 -1
  49. package/dist/clients/zed.js +3 -1
  50. package/dist/clients/zed.js.map +1 -1
  51. package/dist/gateway/advanced-read-tool.d.ts +37 -0
  52. package/dist/gateway/advanced-read-tool.d.ts.map +1 -0
  53. package/dist/gateway/advanced-read-tool.js +156 -0
  54. package/dist/gateway/advanced-read-tool.js.map +1 -0
  55. package/dist/gateway/advanced-tool/domains.d.ts +18 -3
  56. package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
  57. package/dist/gateway/advanced-tool/domains.js +28 -9
  58. package/dist/gateway/advanced-tool/domains.js.map +1 -1
  59. package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
  60. package/dist/gateway/advanced-tool/register.js +43 -11
  61. package/dist/gateway/advanced-tool/register.js.map +1 -1
  62. package/dist/gateway/essentials.d.ts +14 -4
  63. package/dist/gateway/essentials.d.ts.map +1 -1
  64. package/dist/gateway/essentials.js +55 -5
  65. package/dist/gateway/essentials.js.map +1 -1
  66. package/dist/gateway/test-support.d.ts +3 -3
  67. package/dist/gateway/test-support.js +3 -3
  68. package/dist/index.d.ts +2 -1
  69. package/dist/index.d.ts.map +1 -1
  70. package/dist/index.js +19 -1
  71. package/dist/index.js.map +1 -1
  72. package/dist/install-skill.js +1 -1
  73. package/dist/proxy/bridge.d.ts +36 -0
  74. package/dist/proxy/bridge.d.ts.map +1 -0
  75. package/dist/proxy/bridge.js +129 -0
  76. package/dist/proxy/bridge.js.map +1 -0
  77. package/dist/proxy/mode.d.ts +10 -0
  78. package/dist/proxy/mode.d.ts.map +1 -0
  79. package/dist/proxy/mode.js +20 -0
  80. package/dist/proxy/mode.js.map +1 -0
  81. package/dist/server.d.ts +6 -4
  82. package/dist/server.d.ts.map +1 -1
  83. package/dist/server.js +14 -4
  84. package/dist/server.js.map +1 -1
  85. package/dist/setup-cli.d.ts +41 -0
  86. package/dist/setup-cli.d.ts.map +1 -1
  87. package/dist/setup-cli.js +163 -1
  88. package/dist/setup-cli.js.map +1 -1
  89. package/dist/setup-prompts.d.ts +23 -0
  90. package/dist/setup-prompts.d.ts.map +1 -1
  91. package/dist/setup-prompts.js +76 -1
  92. package/dist/setup-prompts.js.map +1 -1
  93. package/dist/setup-wizard.d.ts.map +1 -1
  94. package/dist/setup-wizard.js +7 -0
  95. package/dist/setup-wizard.js.map +1 -1
  96. package/dist/sites/bootstrap.d.ts +41 -0
  97. package/dist/sites/bootstrap.d.ts.map +1 -0
  98. package/dist/sites/bootstrap.js +58 -0
  99. package/dist/sites/bootstrap.js.map +1 -0
  100. package/dist/sites/client-pool.d.ts +33 -0
  101. package/dist/sites/client-pool.d.ts.map +1 -1
  102. package/dist/sites/client-pool.js +69 -1
  103. package/dist/sites/client-pool.js.map +1 -1
  104. package/dist/sites/registry.d.ts +30 -0
  105. package/dist/sites/registry.d.ts.map +1 -1
  106. package/dist/sites/registry.js.map +1 -1
  107. package/dist/sites/store.d.ts +8 -1
  108. package/dist/sites/store.d.ts.map +1 -1
  109. package/dist/sites/store.js +17 -2
  110. package/dist/sites/store.js.map +1 -1
  111. package/dist/sites/tools/index.d.ts.map +1 -1
  112. package/dist/sites/tools/index.js +9 -1
  113. package/dist/sites/tools/index.js.map +1 -1
  114. package/dist/sites/tools/use-site.d.ts +47 -0
  115. package/dist/sites/tools/use-site.d.ts.map +1 -0
  116. package/dist/sites/tools/use-site.js +203 -0
  117. package/dist/sites/tools/use-site.js.map +1 -0
  118. package/dist/tools/bind-guidance.d.ts +80 -0
  119. package/dist/tools/bind-guidance.d.ts.map +1 -0
  120. package/dist/tools/bind-guidance.js +95 -0
  121. package/dist/tools/bind-guidance.js.map +1 -0
  122. package/dist/tools/elements/builders.d.ts.map +1 -1
  123. package/dist/tools/elements/builders.js +75 -18
  124. package/dist/tools/elements/builders.js.map +1 -1
  125. package/dist/tools/elements/handlers-write.d.ts +20 -3
  126. package/dist/tools/elements/handlers-write.d.ts.map +1 -1
  127. package/dist/tools/elements/handlers-write.js +372 -10
  128. package/dist/tools/elements/handlers-write.js.map +1 -1
  129. package/dist/tools/elements/handlers.d.ts +6 -1
  130. package/dist/tools/elements/handlers.d.ts.map +1 -1
  131. package/dist/tools/elements/handlers.js +77 -10
  132. package/dist/tools/elements/handlers.js.map +1 -1
  133. package/dist/tools/elements/layout-hierarchy-rules.d.ts +62 -0
  134. package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +1 -0
  135. package/dist/tools/elements/layout-hierarchy-rules.js +154 -0
  136. package/dist/tools/elements/layout-hierarchy-rules.js.map +1 -0
  137. package/dist/tools/format/elements-format.d.ts +35 -0
  138. package/dist/tools/format/elements-format.d.ts.map +1 -1
  139. package/dist/tools/format/elements-format.js +134 -12
  140. package/dist/tools/format/elements-format.js.map +1 -1
  141. package/dist/tools/format/inspection-format.d.ts +29 -0
  142. package/dist/tools/format/inspection-format.d.ts.map +1 -1
  143. package/dist/tools/format/inspection-format.js +99 -22
  144. package/dist/tools/format/inspection-format.js.map +1 -1
  145. package/dist/tools/format/pages-format.d.ts.map +1 -1
  146. package/dist/tools/format/pages-format.js +7 -0
  147. package/dist/tools/format/pages-format.js.map +1 -1
  148. package/dist/tools/format/sources-format.d.ts +8 -0
  149. package/dist/tools/format/sources-format.d.ts.map +1 -1
  150. package/dist/tools/format/sources-format.js +10 -0
  151. package/dist/tools/format/sources-format.js.map +1 -1
  152. package/dist/tools/health.d.ts.map +1 -1
  153. package/dist/tools/health.js +24 -0
  154. package/dist/tools/health.js.map +1 -1
  155. package/dist/tools/index.d.ts.map +1 -1
  156. package/dist/tools/index.js +4 -0
  157. package/dist/tools/index.js.map +1 -1
  158. package/dist/tools/inspection.d.ts +24 -0
  159. package/dist/tools/inspection.d.ts.map +1 -1
  160. package/dist/tools/inspection.js +297 -5
  161. package/dist/tools/inspection.js.map +1 -1
  162. package/dist/tools/layout-flatten.d.ts +11 -8
  163. package/dist/tools/layout-flatten.d.ts.map +1 -1
  164. package/dist/tools/layout-flatten.js +17 -6
  165. package/dist/tools/layout-flatten.js.map +1 -1
  166. package/dist/tools/multi-items/builders.d.ts.map +1 -1
  167. package/dist/tools/multi-items/builders.js +18 -3
  168. package/dist/tools/multi-items/builders.js.map +1 -1
  169. package/dist/tools/multi-items/clean-implode-handler.d.ts.map +1 -1
  170. package/dist/tools/multi-items/clean-implode-handler.js +2 -2
  171. package/dist/tools/multi-items/clean-implode-handler.js.map +1 -1
  172. package/dist/tools/multi-items/format/inspection-format.d.ts +41 -0
  173. package/dist/tools/multi-items/format/inspection-format.d.ts.map +1 -0
  174. package/dist/tools/multi-items/format/inspection-format.js +64 -0
  175. package/dist/tools/multi-items/format/inspection-format.js.map +1 -0
  176. package/dist/tools/multi-items/inspect-handler.d.ts +50 -2
  177. package/dist/tools/multi-items/inspect-handler.d.ts.map +1 -1
  178. package/dist/tools/multi-items/inspect-handler.js +237 -10
  179. package/dist/tools/multi-items/inspect-handler.js.map +1 -1
  180. package/dist/tools/multi-items/inspection-cache.d.ts +85 -0
  181. package/dist/tools/multi-items/inspection-cache.d.ts.map +1 -0
  182. package/dist/tools/multi-items/inspection-cache.js +126 -0
  183. package/dist/tools/multi-items/inspection-cache.js.map +1 -0
  184. package/dist/tools/pages/builders.d.ts +31 -2
  185. package/dist/tools/pages/builders.d.ts.map +1 -1
  186. package/dist/tools/pages/builders.js +173 -17
  187. package/dist/tools/pages/builders.js.map +1 -1
  188. package/dist/tools/pages/handlers-read.d.ts +6 -2
  189. package/dist/tools/pages/handlers-read.d.ts.map +1 -1
  190. package/dist/tools/pages/handlers-read.js +228 -26
  191. package/dist/tools/pages/handlers-read.js.map +1 -1
  192. package/dist/tools/pages/handlers-write.d.ts +143 -7
  193. package/dist/tools/pages/handlers-write.d.ts.map +1 -1
  194. package/dist/tools/pages/handlers-write.js +215 -11
  195. package/dist/tools/pages/handlers-write.js.map +1 -1
  196. package/dist/tools/pages/index.d.ts +1 -1
  197. package/dist/tools/pages/index.d.ts.map +1 -1
  198. package/dist/tools/pages/index.js +1 -1
  199. package/dist/tools/pages/index.js.map +1 -1
  200. package/dist/tools/pages/schemas.d.ts +166 -0
  201. package/dist/tools/pages/schemas.d.ts.map +1 -1
  202. package/dist/tools/pages/schemas.js +347 -0
  203. package/dist/tools/pages/schemas.js.map +1 -1
  204. package/dist/tools/shared-schemas.d.ts.map +1 -1
  205. package/dist/tools/shared-schemas.js +26 -11
  206. package/dist/tools/shared-schemas.js.map +1 -1
  207. package/dist/tools/sources/builders.d.ts.map +1 -1
  208. package/dist/tools/sources/builders.js +64 -6
  209. package/dist/tools/sources/builders.js.map +1 -1
  210. package/dist/tools/sources/handlers-bind.d.ts +13 -1
  211. package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
  212. package/dist/tools/sources/handlers-bind.js +219 -5
  213. package/dist/tools/sources/handlers-bind.js.map +1 -1
  214. package/dist/tools/sources/handlers.d.ts +3 -0
  215. package/dist/tools/sources/handlers.d.ts.map +1 -1
  216. package/dist/tools/sources/handlers.js +45 -8
  217. package/dist/tools/sources/handlers.js.map +1 -1
  218. package/dist/tools/sparse-fields.d.ts +23 -0
  219. package/dist/tools/sparse-fields.d.ts.map +1 -1
  220. package/dist/tools/sparse-fields.js +29 -0
  221. package/dist/tools/sparse-fields.js.map +1 -1
  222. package/dist/tools/sublayout/builders.d.ts +23 -0
  223. package/dist/tools/sublayout/builders.d.ts.map +1 -0
  224. package/dist/tools/sublayout/builders.js +54 -0
  225. package/dist/tools/sublayout/builders.js.map +1 -0
  226. package/dist/tools/sublayout/index.d.ts +13 -0
  227. package/dist/tools/sublayout/index.d.ts.map +1 -0
  228. package/dist/tools/sublayout/index.js +13 -0
  229. package/dist/tools/sublayout/index.js.map +1 -0
  230. package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +95 -0
  231. package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +1 -0
  232. package/dist/tools/sublayout/inspect-sublayout-handler.js +181 -0
  233. package/dist/tools/sublayout/inspect-sublayout-handler.js.map +1 -0
  234. package/dist/tools/tool-builder/results.d.ts +31 -0
  235. package/dist/tools/tool-builder/results.d.ts.map +1 -1
  236. package/dist/tools/tool-builder/results.js +95 -4
  237. package/dist/tools/tool-builder/results.js.map +1 -1
  238. package/dist/uninstall-skill.d.ts +52 -0
  239. package/dist/uninstall-skill.d.ts.map +1 -0
  240. package/dist/uninstall-skill.js +146 -0
  241. package/dist/uninstall-skill.js.map +1 -0
  242. package/dist/uninstall.d.ts +73 -0
  243. package/dist/uninstall.d.ts.map +1 -0
  244. package/dist/uninstall.js +82 -0
  245. package/dist/uninstall.js.map +1 -0
  246. package/icon.png +0 -0
  247. package/manifest.json +10 -10
  248. package/package.json +7 -3
  249. package/skills/yt-builder-mcp/SKILL.md +157 -88
@@ -13,7 +13,7 @@
13
13
  *
14
14
  * @license MIT
15
15
  */
16
- import { cancel, confirm as clackConfirm, intro, isCancel, multiselect, password, text, } from '@clack/prompts';
16
+ import { cancel, confirm as clackConfirm, intro, isCancel, multiselect, note, outro, password, text, } from '@clack/prompts';
17
17
  import { ALL_CLIENTS, } from './clients/index.js';
18
18
  import { SERVER_NAME, SERVER_VERSION } from './server.js';
19
19
  import { decodeToken, normaliseUrl } from './setup-token.js';
@@ -143,4 +143,79 @@ export async function defaultConfirmContinue(message) {
143
143
  return false;
144
144
  return ans === true;
145
145
  }
146
+ /**
147
+ * Interactive uninstall checklist — the mirror of {@link defaultPrompt}'s
148
+ * client multiselect, run in reverse.
149
+ *
150
+ * 1. multiselect of the DETECTED clients (those carrying our server
151
+ * entry), ALL pre-checked → a complete uninstall is the one-Enter
152
+ * default; each labelled with its config path.
153
+ * 2. when a skill is installed, a confirm to also remove it (+ the
154
+ * AGENTS.md marker block).
155
+ * 3. a final destructive-action confirm summarising what will be
156
+ * removed (skipped when the caller passes `skipFinalConfirm`, e.g.
157
+ * after a `--yes`).
158
+ *
159
+ * Returns the {@link UninstallSelection}, or `null` when the user
160
+ * cancels any step (the dispatcher maps that to exit 130).
161
+ */
162
+ export async function defaultUninstallPrompt(input) {
163
+ intro(`${SERVER_NAME} v${SERVER_VERSION} — uninstall`);
164
+ let clientIds = [];
165
+ if (input.detected.length > 0) {
166
+ const options = input.detected.map((c) => ({
167
+ value: c.id,
168
+ label: c.label,
169
+ hint: c.configPath,
170
+ }));
171
+ const selectedRaw = await multiselect({
172
+ message: 'Remove the MCP server entry from which AI clients?',
173
+ options,
174
+ // Complete uninstall by default: pre-check ALL detected clients.
175
+ initialValues: input.detected.map((c) => c.id),
176
+ required: false,
177
+ });
178
+ if (isCancel(selectedRaw)) {
179
+ cancel('Uninstall cancelled.');
180
+ return null;
181
+ }
182
+ clientIds = selectedRaw;
183
+ }
184
+ else {
185
+ note('No AI client currently has the yt-builder-mcp server entry.', 'Clients');
186
+ }
187
+ let removeSkill = false;
188
+ if (input.skillInstalled) {
189
+ const ans = await clackConfirm({
190
+ message: 'Also remove the installed skill (and the ~/AGENTS.md marker)?',
191
+ initialValue: true,
192
+ });
193
+ if (isCancel(ans)) {
194
+ cancel('Uninstall cancelled.');
195
+ return null;
196
+ }
197
+ removeSkill = ans === true;
198
+ }
199
+ if (clientIds.length === 0 && !removeSkill) {
200
+ outro('Nothing selected — nothing to uninstall.');
201
+ return { clientIds: [], removeSkill: false };
202
+ }
203
+ if (input.skipFinalConfirm !== true) {
204
+ const bits = [];
205
+ if (clientIds.length > 0) {
206
+ bits.push(`${String(clientIds.length)} client config(s)`);
207
+ }
208
+ if (removeSkill)
209
+ bits.push('the installed skill');
210
+ const proceed = await clackConfirm({
211
+ message: `Remove ${bits.join(' and ')}? This cannot be undone.`,
212
+ initialValue: true,
213
+ });
214
+ if (isCancel(proceed) || proceed !== true) {
215
+ cancel('Uninstall cancelled.');
216
+ return null;
217
+ }
218
+ }
219
+ return { clientIds, removeSkill };
220
+ }
146
221
  //# sourceMappingURL=setup-prompts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup-prompts.js","sourceRoot":"","sources":["../src/setup-prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-prompts.js","sourceRoot":"","sources":["../src/setup-prompts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-wizard.d.ts","sourceRoot":"","sources":["../src/setup-wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,WAAW,EACd,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7E,YAAY,EACR,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,WAAW,GACd,CAAC;AAYF;;;;;;;;;;;;GAYG;AACH,wBAAsB,SAAS,CAC3B,IAAI,GAAE,UAAgC,GACvC,OAAO,CAAC,MAAM,CAAC,CAkLjB"}
1
+ {"version":3,"file":"setup-wizard.d.ts","sourceRoot":"","sources":["../src/setup-wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAUH,OAAO,KAAK,EACR,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,WAAW,EACd,MAAM,yBAAyB,CAAC;AAIjC,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7E,YAAY,EACR,eAAe,EACf,eAAe,EACf,iBAAiB,EACjB,aAAa,EACb,UAAU,EACV,WAAW,GACd,CAAC;AAYF;;;;;;;;;;;;GAYG;AACH,wBAAsB,SAAS,CAC3B,IAAI,GAAE,UAAgC,GACvC,OAAO,CAAC,MAAM,CAAC,CAyLjB"}
@@ -117,6 +117,12 @@ export async function runWizard(deps = DEFAULT_WIZARD_DEPS) {
117
117
  // YTB_MCP_WP_URL; Wave-7+ servers prefer YTB_MCP_SITE_URL but still
118
118
  // honour the legacy alias. The wizard intentionally writes both so a
119
119
  // wizard-rendered config never needs editing after an npm upgrade.
120
+ //
121
+ // Slice 3 (proxy flip): YTB_MCP_MODE=proxy makes the Node package a thin
122
+ // stdio<->HTTP proxy to the plugin's own PHP MCP endpoint
123
+ // (${site}/wp-json/yt-builder-mcp/mcp). resolveMode() reads YTB_MCP_SITE_URL
124
+ // + YTB_MCP_BEARER_TOKEN verbatim; the legacy WP_URL key is harmless (read
125
+ // only by the fat loader). Flip YTB_MCP_MODE off to fall back to fat.
120
126
  const serverConfig = {
121
127
  command: 'npx',
122
128
  args: ['-y', SERVER_NAME],
@@ -124,6 +130,7 @@ export async function runWizard(deps = DEFAULT_WIZARD_DEPS) {
124
130
  YTB_MCP_SITE_URL: answers.wpUrl,
125
131
  YTB_MCP_WP_URL: answers.wpUrl,
126
132
  YTB_MCP_BEARER_TOKEN: answers.bearer,
133
+ YTB_MCP_MODE: 'proxy',
127
134
  },
128
135
  };
129
136
  const writes = [];
@@ -1 +1 @@
1
- {"version":3,"file":"setup-wizard.js","sourceRoot":"","sources":["../src/setup-wizard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-wizard.js","sourceRoot":"","sources":["../src/setup-wizard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EACH,mBAAmB,EACnB,cAAc,GACjB,MAAM,4BAA4B,CAAC;AAUpC,yEAAyE;AACzE,2EAA2E;AAC3E,OAAO,EAAE,mBAAmB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAU7E,qEAAqE;AACrE,mEAAmE;AACnE,wEAAwE;AACxE,mEAAmE;AACnE,mEAAmE;AACnE,qEAAqE;AACrE,sEAAsE;AACtE,4BAA4B;AAC5B,MAAM,UAAU,GAAG,gBAAgB,CAAC;AAEpC;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC3B,OAAmB,mBAAmB;IAEtC,MAAM,KAAK,GACP,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC;IAEtE,uCAAuC;IACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;IAChD,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,GAAG,CAAC;IAEjC,IAAI,OAAO,CAAC,KAAK,KAAK,EAAE,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QAChD,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,OAAO,CAAC,CAAC;IACb,CAAC;IAED,mEAAmE;IACnE,kEAAkE;IAClE,kEAAkE;IAClE,+CAA+C;IAC/C,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC;QAC5B,SAAS,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;QAC9C,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACzD,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YACd,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,KAAK,SAAS;gBAC1C,CAAC,CAAC,wBAAwB,QAAQ,CAAC,OAAO,GAAG;gBAC7C,CAAC,CAAC,oBAAoB,CAAC;YAC3B,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACxB,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC;gBACvE,GAAG,CAAC,IAAI,CACJ,6BAA6B,OAAO,CAAC,KAAK,gDAAgD,QAAQ,CAAC,OAAO,IAAI;oBAC1G,sEAAsE,CAC7E,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,SAAS,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC,mBAAmB,QAAQ,CAAC,KAAK,IAAI,SAAS,mDAAmD,CAAC,CAAC;QAChH,CAAC;IACL,CAAC;IAED,8BAA8B;IAC9B,MAAM,aAAa,GAAG,OAAO,EAAE,CAAC;IAChC,aAAa,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAsB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACxE,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACZ,aAAa,CAAC,IAAI,CACd,MAAM,CAAC,aAAa,KAAK,SAAS;YAC9B,CAAC,CAAC,sBAAsB,MAAM,CAAC,aAAa,IAAI;YAChD,CAAC,CAAC,mBAAmB,CAC5B,CAAC;IACN,CAAC;SAAM,CAAC;QACJ,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC3C,GAAG,CAAC,KAAK,CAAC,+BAA+B,MAAM,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CACnC,iEAAiE,CACpE,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC3B,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,MAAM,WAAW,GAAG,OAAO,EAAE,CAAC;IAC9B,WAAW,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAoB,MAAM,IAAI,CAAC,SAAS,CAC9C,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,MAAM,CACjB,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;IACvB,IAAI,MAAM,EAAE,CAAC;QACT,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACJ,WAAW,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,KAAK,IAAI,SAAS,EAAE,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CACnC,uCAAuC,CAC1C,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC3B,OAAO,CAAC,CAAC;QACb,CAAC;IACL,CAAC;IAED,yDAAyD;IACzD,EAAE;IACF,oEAAoE;IACpE,yDAAyD;IACzD,oEAAoE;IACpE,qEAAqE;IACrE,mEAAmE;IACnE,EAAE;IACF,yEAAyE;IACzE,0DAA0D;IAC1D,6EAA6E;IAC7E,2EAA2E;IAC3E,sEAAsE;IACtE,MAAM,YAAY,GAAoB;QAClC,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;QACzB,GAAG,EAAE;YACD,gBAAgB,EAAE,OAAO,CAAC,KAAK;YAC/B,cAAc,EAAE,OAAO,CAAC,KAAK;YAC7B,oBAAoB,EAAE,OAAO,CAAC,MAAM;YACpC,YAAY,EAAE,OAAO;SACxB;KACJ,CAAC;IAEF,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpB,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACb,WAAW,GAAG,IAAI,CAAC;YACnB,MAAM;QACV,CAAC;IACL,CAAC;IAED,MAAM,OAAO,GAAG,MAAM;SACjB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACP,CAAC,CAAC,EAAE;QACA,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,cAAc;QAC9B,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,aAAa,CAAC,CAAC,KAAK,IAAI,SAAS,GAAG,CAC3D;SACA,IAAI,CAAC,IAAI,CAAC,CAAC;IAChB,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAEzB,IAAI,WAAW,EAAE,CAAC;QACd,GAAG,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QAC7D,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,CAAC,CAAC;IACb,CAAC;IAED,kEAAkE;IAClE,gDAAgD;IAChD,IAAI,MAAM,EAAE,CAAC;QACT,MAAM,SAAS,GAAG,OAAO,EAAE,CAAC;QAC5B,SAAS,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACjD,MAAM,EAAE,GAAoB,MAAM,IAAI,CAAC,SAAS,CAC5C,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,MAAM,EACd,cAAc,CACjB,CAAC;QACF,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACT,SAAS,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACpC,GAAG,CAAC,KAAK,CACL,2CAA2C,EAAE,CAAC,KAAK,IAAI,SAAS,iBAAiB,CACpF,CAAC;YACF,MAAM,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC;QACb,CAAC;QACD,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,SAAS,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;aAAM,CAAC;YACJ,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpC,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACpE,CAAC;IAED,iEAAiE;IACjE,iEAAiE;IACjE,gEAAgE;IAChE,8DAA8D;IAC9D,gEAAgE;IAChE,uBAAuB;IACvB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,GAAG,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvD,GAAG,CAAC,KAAK,CAAC,yCAAyC,GAAG,EAAE,CAAC,CAAC;YAC1D,uDAAuD;YACvD,2DAA2D;YAC3D,8DAA8D;QAClE,CAAC;IACL,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;QACtC,KAAK,CAAC,2DAA2D,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACJ,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,CAAC,CAAC;AACb,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Phase 3 — boot-time active-site selection from `YTB_MCP_PROFILE`.
3
+ *
4
+ * The YT Builder analogue of api-mapper's `bootstrapActiveProfile`
5
+ * (`APIMAPPER_PROFILE` → ProfileStore.setActive). Here the "profile" is
6
+ * a registry `site_id` and the active pointer is the {@link ClientPool}'s
7
+ * in-memory override — the registry itself is immutable, nothing is
8
+ * written to disk.
9
+ *
10
+ * Why this exists: a customer who manages several client sites typically
11
+ * adds one MCP-client entry per site, each binding a different
12
+ * `YTB_MCP_PROFILE`. Without this bridge every entry would boot on the
13
+ * registry's lone `default_site_id` and the first tool call would target
14
+ * the wrong site until the user manually ran `yootheme_builder_use_site`.
15
+ *
16
+ * Behaviour (pinned by tests/sites/bootstrap-active-site.test.ts —
17
+ * deliberately identical to api-mapper's bootstrapActiveProfile):
18
+ * - unset / whitespace-only → no override (registry default applies)
19
+ * - "default" → no-op (the manifest default value is the
20
+ * implicit registry-default state)
21
+ * - "<known site_id>" → pool.setActiveSite(id)
22
+ * - "<unknown site_id>" → no-op, no throw (a fresh host that
23
+ * inherited the var from a different
24
+ * config must not crash or phantom-switch)
25
+ *
26
+ * Best-effort + synchronous: `setActiveSite` is a pure in-memory pointer
27
+ * move (no I/O), so unlike the api-mapper async store version this needs
28
+ * no try/catch around disk reads. An unknown id is pre-checked against
29
+ * the registry so the `UnknownSiteError` path is never reached.
30
+ *
31
+ * @license MIT
32
+ */
33
+ import type { ClientPool } from './client-pool.js';
34
+ /**
35
+ * Seed the pool's active-site override from `env[YTB_MCP_PROFILE]`.
36
+ *
37
+ * @param pool The process-wide {@link ClientPool}.
38
+ * @param env Env source (defaults to `process.env`). Injectable for tests.
39
+ */
40
+ export declare function bootstrapActiveSite(pool: ClientPool, env?: NodeJS.ProcessEnv): void;
41
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/sites/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAGH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,UAAU,EAChB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,IAAI,CAoBN"}
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Phase 3 — boot-time active-site selection from `YTB_MCP_PROFILE`.
3
+ *
4
+ * The YT Builder analogue of api-mapper's `bootstrapActiveProfile`
5
+ * (`APIMAPPER_PROFILE` → ProfileStore.setActive). Here the "profile" is
6
+ * a registry `site_id` and the active pointer is the {@link ClientPool}'s
7
+ * in-memory override — the registry itself is immutable, nothing is
8
+ * written to disk.
9
+ *
10
+ * Why this exists: a customer who manages several client sites typically
11
+ * adds one MCP-client entry per site, each binding a different
12
+ * `YTB_MCP_PROFILE`. Without this bridge every entry would boot on the
13
+ * registry's lone `default_site_id` and the first tool call would target
14
+ * the wrong site until the user manually ran `yootheme_builder_use_site`.
15
+ *
16
+ * Behaviour (pinned by tests/sites/bootstrap-active-site.test.ts —
17
+ * deliberately identical to api-mapper's bootstrapActiveProfile):
18
+ * - unset / whitespace-only → no override (registry default applies)
19
+ * - "default" → no-op (the manifest default value is the
20
+ * implicit registry-default state)
21
+ * - "<known site_id>" → pool.setActiveSite(id)
22
+ * - "<unknown site_id>" → no-op, no throw (a fresh host that
23
+ * inherited the var from a different
24
+ * config must not crash or phantom-switch)
25
+ *
26
+ * Best-effort + synchronous: `setActiveSite` is a pure in-memory pointer
27
+ * move (no I/O), so unlike the api-mapper async store version this needs
28
+ * no try/catch around disk reads. An unknown id is pre-checked against
29
+ * the registry so the `UnknownSiteError` path is never reached.
30
+ *
31
+ * @license MIT
32
+ */
33
+ import { ENV_PROFILE } from '../auth.js';
34
+ /**
35
+ * Seed the pool's active-site override from `env[YTB_MCP_PROFILE]`.
36
+ *
37
+ * @param pool The process-wide {@link ClientPool}.
38
+ * @param env Env source (defaults to `process.env`). Injectable for tests.
39
+ */
40
+ export function bootstrapActiveSite(pool, env = process.env) {
41
+ const desired = (env[ENV_PROFILE] ?? '').trim();
42
+ // Unset / whitespace / the manifest default → leave the registry
43
+ // default in effect (no override).
44
+ if (desired === '' || desired === 'default')
45
+ return;
46
+ // Only switch when the named site actually exists in the registry.
47
+ // An inherited / stale var pointing at a site that is not configured
48
+ // on THIS host must be a silent no-op — never a crash, never a
49
+ // phantom override.
50
+ if (pool.registry.get(desired) === null) {
51
+ process.stderr.write(`[yt-builder-mcp] notice: ${ENV_PROFILE}="${desired}" does not match any `
52
+ + 'configured site_id — keeping the registry default. '
53
+ + 'Use yootheme_builder_sites_list to see available IDs.\n');
54
+ return;
55
+ }
56
+ pool.setActiveSite(desired);
57
+ }
58
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../src/sites/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAGzC;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAC/B,IAAgB,EAChB,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAChD,iEAAiE;IACjE,mCAAmC;IACnC,IAAI,OAAO,KAAK,EAAE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO;IAEpD,mEAAmE;IACnE,qEAAqE;IACrE,+DAA+D;IAC/D,oBAAoB;IACpB,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,4BAA4B,WAAW,KAAK,OAAO,uBAAuB;cACxE,qDAAqD;cACrD,yDAAyD,CAC9D,CAAC;QACF,OAAO;IACX,CAAC;IAED,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
@@ -85,7 +85,40 @@ export declare class ClientPool {
85
85
  private readonly secretResolver;
86
86
  private readonly timeoutMs;
87
87
  private readonly cache;
88
+ /**
89
+ * Runtime active-site override (Phase 3 — `yootheme_builder_use_site`).
90
+ *
91
+ * The {@link SiteRegistry} is immutable: its `defaultSiteId()` is
92
+ * fixed for the process lifetime. api-mapper's parallel feature
93
+ * (`apimapper_use_profile`) moves a mutable active-pointer in its
94
+ * on-disk ProfileStore. YT Builder instead keeps the registry
95
+ * read-only and layers a process-local override HERE: when set,
96
+ * `resolve(undefined)` targets this id BEFORE consulting
97
+ * `registry.defaultSiteId()`. An explicit `site_id` argument to
98
+ * `resolve()` always wins over the override.
99
+ *
100
+ * `null` = no override (registry default in effect).
101
+ */
102
+ private activeOverride;
88
103
  constructor(_registry: SiteRegistry, secretResolver: SecretResolver, timeoutMs?: number);
104
+ /**
105
+ * The current runtime active-site override, or `null` when none is
106
+ * set (the registry default is in effect). Read-only peek — does not
107
+ * resolve a client or hit the network.
108
+ */
109
+ activeSiteId(): string | null;
110
+ /**
111
+ * Set (or clear) the runtime active-site override.
112
+ *
113
+ * Passing a `site_id` makes every subsequent `resolve(undefined)`
114
+ * target that site. Passing `null` clears the override so the
115
+ * registry default applies again.
116
+ *
117
+ * @throws {UnknownSiteError} when `siteId` is not in the registry —
118
+ * the pointer is left UNCHANGED on a bad switch so a typo never
119
+ * silently strands the session on a non-existent site.
120
+ */
121
+ setActiveSite(siteId: string | null): void;
89
122
  /**
90
123
  * Read-only accessor for the underlying {@link SiteRegistry}. Used
91
124
  * internally by the W7 `buildSitesTools(pool)` aggregator so the
@@ -1 +1 @@
1
- {"version":3,"file":"client-pool.d.ts","sourceRoot":"","sources":["../../src/sites/client-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;GAMG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,SAAgB,IAAI,EAAG,iBAAiB,CAAU;gBAG9C,OAAO,SAG6E;CAK3F;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAInB,MAAM,EAAE,MAAM;aACd,SAAS,EAAE,SAAS,MAAM,EAAE;IAJhD,SAAgB,IAAI,EAAG,cAAc,CAAU;gBAG3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,MAAM,EAAE;CAQnD;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAU;IAIf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IAL9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;gBAGlC,SAAS,EAAE,YAAY,EACvB,cAAc,EAAE,cAAc,EAC9B,SAAS,GAAE,MAAe;IAG/C;;;;;;;;;;;;OAYG;IACH,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED;;;;;;;;;;OAUG;IACG,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA8CvD;;;;;;OAMG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGnC"}
1
+ {"version":3,"file":"client-pool.d.ts","sourceRoot":"","sources":["../../src/sites/client-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAE3D;;;;;;GAMG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IACzC,SAAgB,IAAI,EAAG,iBAAiB,CAAU;gBAG9C,OAAO,SAG6E;CAK3F;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;aAInB,MAAM,EAAE,MAAM;aACd,SAAS,EAAE,SAAS,MAAM,EAAE;IAJhD,SAAgB,IAAI,EAAG,cAAc,CAAU;gBAG3B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,MAAM,EAAE;CAQnD;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,qBAAa,UAAU;IAoBf,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS;IArB9B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IAEvD;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,cAAc,CAAuB;gBAGxB,SAAS,EAAE,YAAY,EACvB,cAAc,EAAE,cAAc,EAC9B,SAAS,GAAE,MAAe;IAG/C;;;;OAIG;IACH,YAAY,IAAI,MAAM,GAAG,IAAI;IAI7B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAW1C;;;;;;;;;;;;OAYG;IACH,IAAI,QAAQ,IAAI,YAAY,CAE3B;IAED;;;;;;;;;;OAUG;IACG,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAoEvD;;;;;;OAMG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGnC"}
@@ -85,11 +85,55 @@ export class ClientPool {
85
85
  secretResolver;
86
86
  timeoutMs;
87
87
  cache = new Map();
88
+ /**
89
+ * Runtime active-site override (Phase 3 — `yootheme_builder_use_site`).
90
+ *
91
+ * The {@link SiteRegistry} is immutable: its `defaultSiteId()` is
92
+ * fixed for the process lifetime. api-mapper's parallel feature
93
+ * (`apimapper_use_profile`) moves a mutable active-pointer in its
94
+ * on-disk ProfileStore. YT Builder instead keeps the registry
95
+ * read-only and layers a process-local override HERE: when set,
96
+ * `resolve(undefined)` targets this id BEFORE consulting
97
+ * `registry.defaultSiteId()`. An explicit `site_id` argument to
98
+ * `resolve()` always wins over the override.
99
+ *
100
+ * `null` = no override (registry default in effect).
101
+ */
102
+ activeOverride = null;
88
103
  constructor(_registry, secretResolver, timeoutMs = 15_000) {
89
104
  this._registry = _registry;
90
105
  this.secretResolver = secretResolver;
91
106
  this.timeoutMs = timeoutMs;
92
107
  }
108
+ /**
109
+ * The current runtime active-site override, or `null` when none is
110
+ * set (the registry default is in effect). Read-only peek — does not
111
+ * resolve a client or hit the network.
112
+ */
113
+ activeSiteId() {
114
+ return this.activeOverride;
115
+ }
116
+ /**
117
+ * Set (or clear) the runtime active-site override.
118
+ *
119
+ * Passing a `site_id` makes every subsequent `resolve(undefined)`
120
+ * target that site. Passing `null` clears the override so the
121
+ * registry default applies again.
122
+ *
123
+ * @throws {UnknownSiteError} when `siteId` is not in the registry —
124
+ * the pointer is left UNCHANGED on a bad switch so a typo never
125
+ * silently strands the session on a non-existent site.
126
+ */
127
+ setActiveSite(siteId) {
128
+ if (siteId === null) {
129
+ this.activeOverride = null;
130
+ return;
131
+ }
132
+ if (this.registry.get(siteId) === null) {
133
+ throw new UnknownSiteError(siteId, this.registry.listIds());
134
+ }
135
+ this.activeOverride = siteId;
136
+ }
93
137
  /**
94
138
  * Read-only accessor for the underlying {@link SiteRegistry}. Used
95
139
  * internally by the W7 `buildSitesTools(pool)` aggregator so the
@@ -118,7 +162,30 @@ export class ClientPool {
118
162
  * `default_site_id` points at a stale entry).
119
163
  */
120
164
  async resolve(siteId) {
121
- const id = siteId ?? this.registry.defaultSiteId();
165
+ // Resolution order (Phase 3):
166
+ // 1. explicit `siteId` arg (always wins)
167
+ // 2. runtime active-site override (`setActiveSite`)
168
+ // 3. registry default (`defaultSiteId()`)
169
+ //
170
+ // F178: record WHICH of the three branches won so the envelope
171
+ // wrapper can mark a call as isolated (`explicit`) vs inherited
172
+ // from the shared process-wide default (`active_override` /
173
+ // `registry_default`). `resolvedVia` is derived from the SAME
174
+ // precedence chain — a single source of truth.
175
+ let resolvedVia;
176
+ let id;
177
+ if (siteId !== undefined) {
178
+ id = siteId;
179
+ resolvedVia = 'explicit';
180
+ }
181
+ else if (this.activeOverride !== null) {
182
+ id = this.activeOverride;
183
+ resolvedVia = 'active_override';
184
+ }
185
+ else {
186
+ id = this.registry.defaultSiteId();
187
+ resolvedVia = 'registry_default';
188
+ }
122
189
  if (id === null) {
123
190
  throw new NoDefaultSiteError();
124
191
  }
@@ -154,6 +221,7 @@ export class ClientPool {
154
221
  platform,
155
222
  isDefault: entry.is_default,
156
223
  bearerSource: entry.bearer_ref !== undefined ? 'op' : 'plain',
224
+ resolvedVia,
157
225
  ...(entry.label !== undefined ? { label: entry.label } : {}),
158
226
  };
159
227
  return { client, site: resolved };
@@ -1 +1 @@
1
- {"version":3,"file":"client-pool.js","sourceRoot":"","sources":["../../src/sites/client-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client-pool.js","sourceRoot":"","sources":["../../src/sites/client-pool.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,28 @@ export interface SiteRowT {
49
49
  label?: string;
50
50
  bearer_source: 'plain' | 'op';
51
51
  }
52
+ /**
53
+ * How a {@link ResolvedSite} was selected by {@link ClientPool.resolve}.
54
+ *
55
+ * F178 (2026-06-12): a stdio MCP server's active-site default is
56
+ * PROCESS-WIDE — two concurrent clients of the SAME server share it, so
57
+ * one client's `yootheme_builder_use_site` switch silently changes which
58
+ * site the OTHER client targets when it omits `site_id`. Recording the
59
+ * resolution source per-call lets the response envelope mark a call as
60
+ * either ISOLATED (`explicit` — the caller passed `site_id`) or
61
+ * INHERITED (`active_override` / `registry_default` — the caller relied
62
+ * on the shared default). The envelope wrapper turns this into a visible
63
+ * `· default` marker + `_meta.resolved_via` so the hazard is surfaced
64
+ * rather than hidden.
65
+ *
66
+ * - `explicit` — an explicit `site_id` argument was supplied.
67
+ * The call is isolated from concurrent switches.
68
+ * - `active_override` — `site_id` was omitted and a runtime
69
+ * `use_site` override was in effect.
70
+ * - `registry_default` — `site_id` was omitted and the registry's
71
+ * configured default was used.
72
+ */
73
+ export type SiteResolutionSource = 'explicit' | 'active_override' | 'registry_default';
52
74
  /**
53
75
  * Caller-side projection of a registry entry, with the `Platform`
54
76
  * already resolved and the bearer-source flagged for downstream logs.
@@ -62,6 +84,14 @@ export interface ResolvedSite {
62
84
  readonly isDefault: boolean;
63
85
  readonly label?: string;
64
86
  readonly bearerSource: 'plain' | 'op';
87
+ /**
88
+ * F178 — how this site was selected (explicit `site_id` vs the
89
+ * shared process-wide default/override). Optional so legacy test
90
+ * fixtures that synthesise a `ResolvedSite` literal stay valid; when
91
+ * absent the envelope wrapper treats the call as isolated (no
92
+ * default marker, no `resolved_via` noise).
93
+ */
94
+ readonly resolvedVia?: SiteResolutionSource;
65
95
  }
66
96
  /**
67
97
  * Optional injection point for tests. Production callers should never
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/sites/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EACH,KAAK,QAAQ,EAEb,KAAK,YAAY,EACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC3C,aAAa,EAAE,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAC3B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,YAAY,KAClB,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC1B;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IAwBjB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAvBzB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IAEtE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IAEjE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAGC;gBAGF,IAAI,EAAE,UAAU,EACjC,IAAI,GAAE,mBAAwB;IAKlC;;;;;;;;OAQG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAY9B;;;;OAIG;IACH,OAAO,IAAI,SAAS,MAAM,EAAE;IAI5B;;;;OAIG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAItC;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAyCpD;;;;;;;;OAQG;IACH,cAAc,IAAI,SAAS,QAAQ,EAAE;CAkBxC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/sites/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EACH,KAAK,QAAQ,EAEb,KAAK,YAAY,EACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,MAAM,WAAW,QAAQ;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,iBAAiB,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC3C,aAAa,EAAE,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,OAAO,GAAG,IAAI,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,oBAAoB,GAC1B,UAAU,GACV,iBAAiB,GACjB,kBAAkB,CAAC;AAEzB;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,YAAY,EAAE,OAAO,GAAG,IAAI,CAAC;IACtC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,oBAAoB,CAAC;CAC/C;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAC3B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,YAAY,KAClB,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC1B;AAED;;;;;GAKG;AACH,qBAAa,YAAY;IAwBjB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAvBzB;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAwC;IAEtE;;;;;;OAMG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmC;IAEjE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAGC;gBAGF,IAAI,EAAE,UAAU,EACjC,IAAI,GAAE,mBAAwB;IAKlC;;;;;;;;OAQG;IACH,aAAa,IAAI,MAAM,GAAG,IAAI;IAY9B;;;;OAIG;IACH,OAAO,IAAI,SAAS,MAAM,EAAE;IAI5B;;;;OAIG;IACH,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IAItC;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAyCpD;;;;;;;;OAQG;IACH,cAAc,IAAI,SAAS,QAAQ,EAAE;CAkBxC"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sites/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sites/registry.ts"],"names":[],"mappings":"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"}
@@ -63,7 +63,14 @@ export declare function emptySitesFile(): SitesFileT;
63
63
  * Throws {@link SchemaVersionError} for a known-unknown version and
64
64
  * {@link SitesFileError} for JSON-parse or Zod-validation failures.
65
65
  */
66
- export declare function loadSitesFile(path: string): Promise<SitesFileT>;
66
+ /**
67
+ * F190 (2026-06-12): expand a leading `~` to the user's home directory.
68
+ * Node's fs does NOT do this — a `~/...` path typed into the Claude Desktop
69
+ * DXT settings silently yielded "0 sites" (existsSync false → emptySitesFile).
70
+ * Only `~` and `~/...` are expanded; `~user/...` is left untouched.
71
+ */
72
+ export declare function expandTilde(p: string): string;
73
+ export declare function loadSitesFile(rawPath: string): Promise<SitesFileT>;
67
74
  /**
68
75
  * Persist + validate a sites file atomically with chmod 0600.
69
76
  *
@@ -1 +1 @@
1
- {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/sites/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAkBH,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,uDAAuD;AACvD,qBAAa,cAAe,SAAQ,KAAK;aACQ,KAAK,CAAC,EAAE,OAAO;gBAAhD,OAAO,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,OAAO,YAAA;CAI/D;AAED,8EAA8E;AAC9E,qBAAa,kBAAmB,SAAQ,cAAc;aACtB,KAAK,EAAE,OAAO;gBAAd,KAAK,EAAE,OAAO;CAQ7C;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,aAAa,GAAG,iBAAiB,CAAC;AAEnF,qBAAa,kBAAmB,SAAQ,cAAc;aAE9B,QAAQ,EAAE,iBAAiB;aAC3B,YAAY,EAAE,MAAM;gBADpB,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAE,MAAM,EACpC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAKtB;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,UAAU,CAE3C;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAiCrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFjF"}
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/sites/store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAmBH,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzD,uDAAuD;AACvD,qBAAa,cAAe,SAAQ,KAAK;aACQ,KAAK,CAAC,EAAE,OAAO;gBAAhD,OAAO,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,OAAO,YAAA;CAI/D;AAED,8EAA8E;AAC9E,qBAAa,kBAAmB,SAAQ,cAAc;aACtB,KAAK,EAAE,OAAO;gBAAd,KAAK,EAAE,OAAO;CAQ7C;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,aAAa,GAAG,iBAAiB,CAAC;AAEnF,qBAAa,kBAAmB,SAAQ,cAAc;aAE9B,QAAQ,EAAE,iBAAiB;aAC3B,YAAY,EAAE,MAAM;gBADpB,QAAQ,EAAE,iBAAiB,EAC3B,YAAY,EAAE,MAAM,EACpC,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,OAAO;CAKtB;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,UAAU,CAE3C;AAED;;;;;;GAMG;AACH;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAI7C;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAkCxE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFjF"}
@@ -19,7 +19,8 @@
19
19
  * @license MIT
20
20
  */
21
21
  import { chmodSync, closeSync, existsSync, fsyncSync, mkdirSync, openSync, readFileSync, renameSync, unlinkSync, writeSync, } from 'node:fs';
22
- import { dirname } from 'node:path';
22
+ import { homedir } from 'node:os';
23
+ import { dirname, join } from 'node:path';
23
24
  import lockfile from 'proper-lockfile';
24
25
  import { SitesFile } from './schema.js';
25
26
  /** Base class for any sites-file IO/format failure. */
@@ -66,7 +67,21 @@ export function emptySitesFile() {
66
67
  * Throws {@link SchemaVersionError} for a known-unknown version and
67
68
  * {@link SitesFileError} for JSON-parse or Zod-validation failures.
68
69
  */
69
- export async function loadSitesFile(path) {
70
+ /**
71
+ * F190 (2026-06-12): expand a leading `~` to the user's home directory.
72
+ * Node's fs does NOT do this — a `~/...` path typed into the Claude Desktop
73
+ * DXT settings silently yielded "0 sites" (existsSync false → emptySitesFile).
74
+ * Only `~` and `~/...` are expanded; `~user/...` is left untouched.
75
+ */
76
+ export function expandTilde(p) {
77
+ if (p === '~')
78
+ return homedir();
79
+ if (p.startsWith('~/'))
80
+ return join(homedir(), p.slice(2));
81
+ return p;
82
+ }
83
+ export async function loadSitesFile(rawPath) {
84
+ const path = expandTilde(rawPath);
70
85
  if (!existsSync(path)) {
71
86
  return emptySitesFile();
72
87
  }
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/sites/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/sites/store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAKrE;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC3B,IAAI,EAAE,UAAU,GACjB,SAAS,iBAAiB,EAAE,CAE9B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAMrE;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAC3B,IAAI,EAAE,UAAU,GACjB,SAAS,iBAAiB,EAAE,CAS9B"}
@@ -13,6 +13,7 @@
13
13
  */
14
14
  import { buildSitesListTool } from './sites-list.js';
15
15
  import { buildSitesTestTool } from './sites-test.js';
16
+ import { buildUseSiteTool } from './use-site.js';
16
17
  /**
17
18
  * Build the W7 sites-management tool pair. The pool's read-only
18
19
  * `registry` accessor feeds `buildSitesListTool` (which never resolves
@@ -25,6 +26,13 @@ import { buildSitesTestTool } from './sites-test.js';
25
26
  * `@internal`.
26
27
  */
27
28
  export function buildSitesTools(pool) {
28
- return [buildSitesListTool(pool.registry), buildSitesTestTool(pool)];
29
+ return [
30
+ buildSitesListTool(pool.registry),
31
+ buildSitesTestTool(pool),
32
+ // Phase 3 — runtime active-site switch (mirrors api-mapper's
33
+ // `apimapper_use_profile`). Reuses the pool's in-memory active-
34
+ // site override; never rebuilds the multi-site engine.
35
+ buildUseSiteTool(pool),
36
+ ];
29
37
  }
30
38
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAC3B,IAAgB;IAEhB,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;AACzE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sites/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAKH,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,MAAM,UAAU,eAAe,CAC3B,IAAgB;IAEhB,OAAO;QACH,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACjC,kBAAkB,CAAC,IAAI,CAAC;QACxB,6DAA6D;QAC7D,gEAAgE;QAChE,uDAAuD;QACvD,gBAAgB,CAAC,IAAI,CAAC;KACzB,CAAC;AACN,CAAC"}