codesift-mcp 0.17.0 → 0.20.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 (156) hide show
  1. package/dist/cli/commands-daemon.d.ts.map +1 -1
  2. package/dist/cli/commands-daemon.js +32 -0
  3. package/dist/cli/commands-daemon.js.map +1 -1
  4. package/dist/cli/commands-maintenance.d.ts.map +1 -1
  5. package/dist/cli/commands-maintenance.js +173 -3
  6. package/dist/cli/commands-maintenance.js.map +1 -1
  7. package/dist/cli/hooks/pre-compact.d.ts.map +1 -1
  8. package/dist/cli/hooks/pre-compact.js +4 -0
  9. package/dist/cli/hooks/pre-compact.js.map +1 -1
  10. package/dist/cli/hooks/session.d.ts.map +1 -1
  11. package/dist/cli/hooks/session.js +5 -0
  12. package/dist/cli/hooks/session.js.map +1 -1
  13. package/dist/cli/hooks/wiki.d.ts +13 -0
  14. package/dist/cli/hooks/wiki.d.ts.map +1 -1
  15. package/dist/cli/hooks/wiki.js +19 -2
  16. package/dist/cli/hooks/wiki.js.map +1 -1
  17. package/dist/cli/owner-only-file.d.ts +9 -0
  18. package/dist/cli/owner-only-file.d.ts.map +1 -1
  19. package/dist/cli/owner-only-file.js +40 -8
  20. package/dist/cli/owner-only-file.js.map +1 -1
  21. package/dist/cli/service.d.ts.map +1 -1
  22. package/dist/cli/service.js +7 -1
  23. package/dist/cli/service.js.map +1 -1
  24. package/dist/cli/setup/claude.js +3 -3
  25. package/dist/cli/setup/claude.js.map +1 -1
  26. package/dist/cli/setup/codex.js +4 -4
  27. package/dist/cli/setup/codex.js.map +1 -1
  28. package/dist/cli/setup/fs.d.ts +2 -0
  29. package/dist/cli/setup/fs.d.ts.map +1 -1
  30. package/dist/cli/setup/fs.js +4 -1
  31. package/dist/cli/setup/fs.js.map +1 -1
  32. package/dist/cli/setup/gemini.js +4 -4
  33. package/dist/cli/setup/gemini.js.map +1 -1
  34. package/dist/cli/setup/hooks.d.ts +10 -0
  35. package/dist/cli/setup/hooks.d.ts.map +1 -1
  36. package/dist/cli/setup/hooks.js +25 -3
  37. package/dist/cli/setup/hooks.js.map +1 -1
  38. package/dist/instructions.d.ts +22 -1
  39. package/dist/instructions.d.ts.map +1 -1
  40. package/dist/instructions.js +61 -1
  41. package/dist/instructions.js.map +1 -1
  42. package/dist/lsp/lsp-client.d.ts +1 -1
  43. package/dist/lsp/lsp-client.d.ts.map +1 -1
  44. package/dist/lsp/lsp-client.js +2 -1
  45. package/dist/lsp/lsp-client.js.map +1 -1
  46. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  47. package/dist/lsp/lsp-manager.js +10 -2
  48. package/dist/lsp/lsp-manager.js.map +1 -1
  49. package/dist/lsp/lsp-servers.d.ts +7 -0
  50. package/dist/lsp/lsp-servers.d.ts.map +1 -1
  51. package/dist/lsp/lsp-servers.js +78 -0
  52. package/dist/lsp/lsp-servers.js.map +1 -1
  53. package/dist/parser/parser-manager.d.ts.map +1 -1
  54. package/dist/parser/parser-manager.js +8 -2
  55. package/dist/parser/parser-manager.js.map +1 -1
  56. package/dist/register-tool-groups/core/symbols.d.ts.map +1 -1
  57. package/dist/register-tool-groups/core/symbols.js +71 -6
  58. package/dist/register-tool-groups/core/symbols.js.map +1 -1
  59. package/dist/register-tools/discovery.d.ts +7 -0
  60. package/dist/register-tools/discovery.d.ts.map +1 -1
  61. package/dist/register-tools/discovery.js +8 -1
  62. package/dist/register-tools/discovery.js.map +1 -1
  63. package/dist/search/bm25-store.d.ts +10 -0
  64. package/dist/search/bm25-store.d.ts.map +1 -1
  65. package/dist/search/bm25-store.js +140 -10
  66. package/dist/search/bm25-store.js.map +1 -1
  67. package/dist/search/bm25.d.ts +22 -0
  68. package/dist/search/bm25.d.ts.map +1 -1
  69. package/dist/search/bm25.js +43 -0
  70. package/dist/search/bm25.js.map +1 -1
  71. package/dist/server-helpers/cache-report.d.ts +36 -0
  72. package/dist/server-helpers/cache-report.d.ts.map +1 -0
  73. package/dist/server-helpers/cache-report.js +26 -0
  74. package/dist/server-helpers/cache-report.js.map +1 -0
  75. package/dist/server-helpers/health-vitals.d.ts.map +1 -1
  76. package/dist/server-helpers/health-vitals.js +19 -11
  77. package/dist/server-helpers/health-vitals.js.map +1 -1
  78. package/dist/server-helpers/response-budget.d.ts +24 -0
  79. package/dist/server-helpers/response-budget.d.ts.map +1 -0
  80. package/dist/server-helpers/response-budget.js +29 -0
  81. package/dist/server-helpers/response-budget.js.map +1 -0
  82. package/dist/server-helpers/response-hints.d.ts.map +1 -1
  83. package/dist/server-helpers/response-hints.js +43 -0
  84. package/dist/server-helpers/response-hints.js.map +1 -1
  85. package/dist/server-helpers/shown-source.d.ts +59 -0
  86. package/dist/server-helpers/shown-source.d.ts.map +1 -0
  87. package/dist/server-helpers/shown-source.js +175 -0
  88. package/dist/server-helpers/shown-source.js.map +1 -0
  89. package/dist/server-helpers/stdio-envelope.d.ts +31 -0
  90. package/dist/server-helpers/stdio-envelope.d.ts.map +1 -0
  91. package/dist/server-helpers/stdio-envelope.js +67 -0
  92. package/dist/server-helpers/stdio-envelope.js.map +1 -0
  93. package/dist/server-helpers.d.ts +7 -0
  94. package/dist/server-helpers.d.ts.map +1 -1
  95. package/dist/server-helpers.js +51 -10
  96. package/dist/server-helpers.js.map +1 -1
  97. package/dist/server.d.ts.map +1 -1
  98. package/dist/server.js +107 -45
  99. package/dist/server.js.map +1 -1
  100. package/dist/storage/_shared.d.ts +25 -0
  101. package/dist/storage/_shared.d.ts.map +1 -1
  102. package/dist/storage/_shared.js +39 -6
  103. package/dist/storage/_shared.js.map +1 -1
  104. package/dist/storage/session-state.d.ts +7 -0
  105. package/dist/storage/session-state.d.ts.map +1 -1
  106. package/dist/storage/session-state.js +3 -0
  107. package/dist/storage/session-state.js.map +1 -1
  108. package/dist/storage/shared-embedding-cache.d.ts.map +1 -1
  109. package/dist/storage/shared-embedding-cache.js +153 -2
  110. package/dist/storage/shared-embedding-cache.js.map +1 -1
  111. package/dist/storage/telemetry/config.d.ts +18 -0
  112. package/dist/storage/telemetry/config.d.ts.map +1 -1
  113. package/dist/storage/telemetry/config.js +26 -0
  114. package/dist/storage/telemetry/config.js.map +1 -1
  115. package/dist/storage/telemetry/uploader.d.ts.map +1 -1
  116. package/dist/storage/telemetry/uploader.js +4 -2
  117. package/dist/storage/telemetry/uploader.js.map +1 -1
  118. package/dist/storage/usage-tracker.d.ts +11 -0
  119. package/dist/storage/usage-tracker.d.ts.map +1 -1
  120. package/dist/storage/usage-tracker.js +18 -0
  121. package/dist/storage/usage-tracker.js.map +1 -1
  122. package/dist/tools/conversation-cache.d.ts +23 -3
  123. package/dist/tools/conversation-cache.d.ts.map +1 -1
  124. package/dist/tools/conversation-cache.js +141 -4
  125. package/dist/tools/conversation-cache.js.map +1 -1
  126. package/dist/tools/conversation-index-tools.d.ts +12 -0
  127. package/dist/tools/conversation-index-tools.d.ts.map +1 -1
  128. package/dist/tools/conversation-index-tools.js +315 -4
  129. package/dist/tools/conversation-index-tools.js.map +1 -1
  130. package/dist/tools/conversation-search-tools.d.ts +0 -5
  131. package/dist/tools/conversation-search-tools.d.ts.map +1 -1
  132. package/dist/tools/conversation-search-tools.js +77 -6
  133. package/dist/tools/conversation-search-tools.js.map +1 -1
  134. package/dist/tools/explore-tools.d.ts +9 -0
  135. package/dist/tools/explore-tools.d.ts.map +1 -0
  136. package/dist/tools/explore-tools.js +177 -0
  137. package/dist/tools/explore-tools.js.map +1 -0
  138. package/dist/tools/graph-tools.d.ts +7 -0
  139. package/dist/tools/graph-tools.d.ts.map +1 -1
  140. package/dist/tools/graph-tools.js +36 -0
  141. package/dist/tools/graph-tools.js.map +1 -1
  142. package/dist/tools/index-tools/state.d.ts +15 -1
  143. package/dist/tools/index-tools/state.d.ts.map +1 -1
  144. package/dist/tools/index-tools/state.js +25 -39
  145. package/dist/tools/index-tools/state.js.map +1 -1
  146. package/dist/tools/insights-tools.d.ts.map +1 -1
  147. package/dist/tools/insights-tools.js +6 -3
  148. package/dist/tools/insights-tools.js.map +1 -1
  149. package/dist/utils/import-graph/edge-cache.d.ts.map +1 -1
  150. package/dist/utils/import-graph/edge-cache.js +9 -1
  151. package/dist/utils/import-graph/edge-cache.js.map +1 -1
  152. package/package.json +3 -3
  153. package/rules/codesift.md +19 -0
  154. package/rules/codesift.mdc +19 -0
  155. package/rules/codex.md +19 -0
  156. package/rules/gemini.md +19 -0
@@ -1 +1 @@
1
- {"version":3,"file":"owner-only-file.d.ts","sourceRoot":"","sources":["../../src/cli/owner-only-file.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,6BAA6B;AAC7B,eAAO,MAAM,eAAe,MAAQ,CAAC;AASrC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAGlF;AAkDD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIrF;AAED,oEAAoE;AACpE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAI1E"}
1
+ {"version":3,"file":"owner-only-file.d.ts","sourceRoot":"","sources":["../../src/cli/owner-only-file.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,6BAA6B;AAC7B,eAAO,MAAM,eAAe,MAAQ,CAAC;AASrC;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAGlF;AAkDD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAYrF;AAED,oEAAoE;AACpE,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAY1E"}
@@ -1,5 +1,6 @@
1
- import { existsSync, chmodSync, statSync, writeFileSync } from "node:fs";
2
- import { chmod, stat, writeFile } from "node:fs/promises";
1
+ import { randomBytes } from "node:crypto";
2
+ import { existsSync, chmodSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
3
+ import { chmod, realpath, rename, rm, stat, writeFile } from "node:fs/promises";
3
4
  /**
4
5
  * Writing a file that may embed a CodeSift daemon bearer token, restricted to
5
6
  * its owner — and failing loudly when that cannot be done.
@@ -106,16 +107,47 @@ function restrictSync(path) {
106
107
  * pre-write restrict is what keeps that promise for a file that already exists:
107
108
  * by the time the new content lands, the mode is already correct or we never
108
109
  * got here.
110
+ *
111
+ * The content goes to a sibling temp file that is renamed over the target, so no
112
+ * reader ever sees a truncated or half-written file. Writing in place (open with
113
+ * O_TRUNC, then write) corrupted ~/.claude/settings.json daily on a machine running
114
+ * ~20 Claude Code sessions: every MCP server start rewrites it, one process read the
115
+ * file inside another's truncate-then-write window, took the empty file for `{}`, and
116
+ * its shorter hooks-only JSON landed over the start of the longer one — a valid
117
+ * object followed by the old tail. A symlinked target is resolved first so the
118
+ * rename replaces the file it points at rather than the link.
109
119
  */
110
120
  export async function writeOwnerOnlyFile(path, content) {
111
- await restrict(path);
112
- await writeFile(path, content, { encoding: "utf-8", mode: OWNER_ONLY_MODE });
113
- await restrict(path);
121
+ const target = existsSync(path) ? await realpath(path) : path;
122
+ await restrict(target);
123
+ const tmp = tempSibling(target);
124
+ try {
125
+ await writeFile(tmp, content, { encoding: "utf-8", mode: OWNER_ONLY_MODE, flag: "wx" });
126
+ await rename(tmp, target);
127
+ }
128
+ catch (err) {
129
+ await rm(tmp, { force: true });
130
+ throw err;
131
+ }
132
+ await restrict(target);
114
133
  }
115
134
  /** Synchronous twin, for install paths that are sync end to end. */
116
135
  export function writeOwnerOnlyFileSync(path, content) {
117
- restrictSync(path);
118
- writeFileSync(path, content, { encoding: "utf-8", mode: OWNER_ONLY_MODE });
119
- restrictSync(path);
136
+ const target = existsSync(path) ? realpathSync(path) : path;
137
+ restrictSync(target);
138
+ const tmp = tempSibling(target);
139
+ try {
140
+ writeFileSync(tmp, content, { encoding: "utf-8", mode: OWNER_ONLY_MODE, flag: "wx" });
141
+ renameSync(tmp, target);
142
+ }
143
+ catch (err) {
144
+ rmSync(tmp, { force: true });
145
+ throw err;
146
+ }
147
+ restrictSync(target);
148
+ }
149
+ /** Same directory as the target, so the rename stays on one filesystem and is atomic. */
150
+ function tempSibling(target) {
151
+ return `${target}.codesift-tmp-${process.pid}-${randomBytes(4).toString("hex")}`;
120
152
  }
121
153
  //# sourceMappingURL=owner-only-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"owner-only-file.js","sourceRoot":"","sources":["../../src/cli/owner-only-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"owner-only-file.js","sourceRoot":"","sources":["../../src/cli/owner-only-file.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
@@ -157,6 +157,12 @@ export function buildLaunchAgentPlist(plan) {
157
157
  "--max-semi-space-size=64",
158
158
  plan.cliPath, "serve", "--port", String(plan.port), "--host", plan.host,
159
159
  ];
160
+ // ProcessType is Standard, not Background. Background puts the process in the macOS background
161
+ // band (scheduler priority 4 against 31 for an ordinary process), which is invisible on an idle
162
+ // machine and fatal on a busy one: every agent session blocks on this daemon, and under load
163
+ // 100-160 a priority-4 process barely runs. Sampled 2026-09-24: a freshly restarted daemon sat
164
+ // 6+ minutes at 0% CPU still inside Node's own bootstrap (compiling builtins) — it had not
165
+ // executed a line of CodeSift yet — while every client reported "codesift unavailable".
160
166
  const argLines = [plan.execPath, ...args]
161
167
  .map((a) => ` <string>${escapeXml(a)}</string>`)
162
168
  .join("\n");
@@ -177,7 +183,7 @@ ${argLines}
177
183
  <key>ThrottleInterval</key>
178
184
  <integer>10</integer>
179
185
  <key>ProcessType</key>
180
- <string>Background</string>
186
+ <string>Standard</string>
181
187
  <key>EnvironmentVariables</key>
182
188
  <dict>
183
189
  <key>PATH</key>
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/cli/service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1E,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,qBAAqB,CAAC;AACnD,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAEzC;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,mBAAmB;IACnB,gBAAgB;IAChB,UAAU;IACV,MAAM;IACN,WAAW;IACX,OAAO;CACR,CAAC;AA6BF,yDAAyD;AACzD,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,OAAO,KAAK;SACT,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAED;;;;;;;GAOG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,8EAA8E;AAC9E,MAAM,UAAU,cAAc;IAC5B,qCAAqC;IACrC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC1E,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAUhC;IACC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;IACpC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,oBAAoB,CAAC;IAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC;IACtC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC1C,MAAM,QAAQ,GACZ,EAAE,KAAK,QAAQ;QACb,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,EAAE,GAAG,aAAa,QAAQ,CAAC;QACjE,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,yBAAyB,CAAC,CAAC;IAC1E,OAAO;QACL,KAAK,EAAE,aAAa;QACpB,IAAI;QACJ,IAAI;QACJ,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtC,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ;QAC3C,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,cAAc,EAAE;QACzC,QAAQ;QACR,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC;QACzC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,gBAAgB,CAAC;QACzC,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAAqB,EAAE,GAAG,GAAsB,OAAO,CAAC,GAAG;IAC7F,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACxD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,QAAQ,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG,aAAa,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAiB;IACrD,gFAAgF;IAChF,gFAAgF;IAChF,8BAA8B;IAC9B,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/C,MAAM,IAAI,GAAG;QACX,wBAAwB,MAAM,EAAE;QAChC,8FAA8F;QAC9F,2FAA2F;QAC3F,iGAAiG;QACjG,wFAAwF;QACxF,4FAA4F;QAC5F,wFAAwF;QACxF,EAAE;QACF,4FAA4F;QAC5F,8FAA8F;QAC9F,oFAAoF;QACpF,0BAA0B;QAC1B,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI;KACxE,CAAC;IACF,+FAA+F;IAC/F,gGAAgG;IAChG,6FAA6F;IAC7F,+FAA+F;IAC/F,2FAA2F;IAC3F,wFAAwF;IACxF,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC;SACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;SAClD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO;;;;;YAKG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;;;EAG/B,QAAQ;;;;;;;;;;;;;cAaI,SAAS,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;cAEzC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;SACxE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,cAAc,SAAS,CAAC,CAAC,CAAC,uBAAuB,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC;SACzF,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;;cAEjB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;;;YAGvC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;;YAEzB,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC;;;CAGpC,CAAC;AACF,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,KAAa;IACnD,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CACb,qBAAqB,GAAG,iGAAiG,CAC1H,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC;AAChE,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,gBAAgB,CAAC,IAAiB;IAChD,sEAAsE;IACtE,+EAA+E;IAC/E,6EAA6E;IAC7E,MAAM,IAAI,GAAG;QACX,IAAI,CAAC,QAAQ;QACb,wBAAwB,mBAAmB,CAAC,QAAQ,EAAE,CAAC,EAAE;QACzD,0BAA0B;QAC1B,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI;KACxE;SACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACtD,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO;;;;;;;YAOG,IAAI;;;mBAGG,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC;gCACjB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,CAAC;SACxE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;SAC1C,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,UAAU,CAAC,qBAAqB,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE;wBAC1E,IAAI,CAAC,SAAS;uBACf,IAAI,CAAC,SAAS;;;;CAIpC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAiB,EAAE,EAAmB;IAC/D,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAChF,CAAC;AAaD,MAAM,aAAa,GAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;IACjD,IAAI,CAAC;QACH,YAAY,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC3C,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;IACnC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,GAAG,GAAG,CAA0C,CAAC;QACvD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC;IAC1F,CAAC;AACH,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,SAAS,SAAS;IAChB,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;IAC/B,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAU9B;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC;IACzC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC;IACjC,IAAI,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,OAAO,EAAE,CAAC;QACtC,OAAO;YACL,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,EAAE;YACZ,GAAG,EAAE,EAAE;YACP,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,8BAA8B,EAAE,kCAAkC;SACzE,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAEhF,yEAAyE;IACzE,8EAA8E;IAC9E,8EAA8E;IAC9E,sEAAsE;IACtE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,0CAA0C,IAAI,CAAC,IAAI,sCAAsC;cACrF,mFAAmF;cACnF,gFAAgF,CACrF,CAAC;IACJ,CAAC;IAED,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QACrD,OAAO;YACL,MAAM,EAAE,mBAAmB;YAC3B,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,EAAE,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,MAAM;YAC3C,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,2BAA2B;SAClC,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,4EAA4E;IAC5E,+EAA+E;IAC/E,8EAA8E;IAC9E,+EAA+E;IAC/E,4CAA4C;IAC5C,sBAAsB,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IAE5D,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,IAAwB,CAAC;IAC7B,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,GAAG,4DAA4D;kBAC/D,oCAAoC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1D,CAAC;aAAM,CAAC;YACN,oEAAoE;YACpE,0EAA0E;YAC1E,GAAG,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACzD,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjE,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;YACjB,IAAI,CAAC,CAAC,CAAC,EAAE;gBAAE,IAAI,GAAG,iDAAiD,CAAC,CAAC,OAAO,EAAE,CAAC;QACjF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC;QACrF,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;QACjB,IAAI,CAAC,CAAC,CAAC,EAAE;YAAE,IAAI,GAAG,8CAA8C,CAAC,CAAC,OAAO,EAAE,CAAC;IAC9E,CAAC;IAED,OAAO;QACL,MAAM,EAAE,WAAW;QACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,GAAG,EAAE,UAAU,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,MAAM;QAC3C,SAAS;QACT,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,IAKhC;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,aAAa,CAAC;IACzC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,QAAQ,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAChF,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,IAAI,EAAE,KAAK,QAAQ,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAI,MAAM;YAAE,GAAG,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,GAAG,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC;AACpF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAA8D;IAQ1F,MAAM,IAAI,GAAG,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAChF,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC5C,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,IAAI,GAAkB,IAAI,CAAC;IAC/B,IAAI,CAAC;QACH,GAAG,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACnF,IAAI,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACvF,CAAC;IAAC,MAAM,CAAC,CAAC,2BAA2B,CAAC,CAAC;IACvC,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,GAAG,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACrD,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACrB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAI,CAA2B,CAAC,IAAI,KAAK,OAAO,CAAC;QAC1D,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC;IACpE,MAAM,KAAK,GAAG,CAAC,SAAS,IAAI,CAAC,OAAO;QAClC,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,OAAO;YACP,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YACpC,CAAC,CAAC,SAAS,CAAC;IAChB,OAAO;QACL,SAAS;QACT,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK;QACL,OAAO,EAAE,KAAK,KAAK,SAAS;QAC5B,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI;QACzB,IAAI,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;KACxC,CAAC;AACJ,CAAC"}
@@ -2,7 +2,7 @@ import { existsSync } from "node:fs";
2
2
  import { homedir } from "node:os";
3
3
  import { join } from "node:path";
4
4
  import { ensureDir, readJsonFile, writeJsonFile } from "./fs.js";
5
- import { ensureHookEntry, hasCodesiftHook, loadHooksSection } from "./hooks.js";
5
+ import { ensureHookEntry, hasCodesiftHook, loadHooksSection, saveHooksSection } from "./hooks.js";
6
6
  import { setupJsonPlatform } from "./mcp.js";
7
7
  const CLAUDE_CONFIG = { configDirName: ".claude", configFileName: "settings.json" };
8
8
  const STDIN_HOOK_SUBCOMMANDS = [
@@ -109,7 +109,7 @@ export async function setupClaudeHooks() {
109
109
  const configDir = join(homedir(), ".claude");
110
110
  const settingsPath = join(configDir, "settings.json");
111
111
  await ensureDir(configDir);
112
- const { root, hooks } = await loadHooksSection(settingsPath);
112
+ const { root, hooks, original } = await loadHooksSection(settingsPath);
113
113
  for (const [event, entries] of Object.entries(CLAUDE_HOOKS)) {
114
114
  for (const entry of entries) {
115
115
  ensureHookEntry(hooks, event, entry);
@@ -117,7 +117,7 @@ export async function setupClaudeHooks() {
117
117
  }
118
118
  upgradeStdinHookCommands(hooks);
119
119
  removeRetiredClaudeHooks(hooks);
120
- await writeJsonFile(settingsPath, root);
120
+ await saveHooksSection(settingsPath, root, original);
121
121
  await migrateLegacyClaudeHooks(configDir);
122
122
  }
123
123
  //# sourceMappingURL=claude.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/cli/setup/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../../src/cli/setup/claude.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@ import { existsSync } from "node:fs";
2
2
  import { readFile, writeFile } from "node:fs/promises";
3
3
  import { homedir } from "node:os";
4
4
  import { join } from "node:path";
5
- import { ensureDir, writeJsonFile, writeSecretFile } from "./fs.js";
5
+ import { ensureDir, writeSecretFile } from "./fs.js";
6
6
  import { daemonHttpUrl, resolveMcpServerEntry, assertTokenTransportIsSafe } from "./mcp.js";
7
- import { hasCodesiftHook, loadHooksSection } from "./hooks.js";
7
+ import { hasCodesiftHook, loadHooksSection, saveHooksSection } from "./hooks.js";
8
8
  export function stripCodesiftToolApprovalOverrides(content) {
9
9
  const expression = /\[mcp_servers\.codesift\.tools\.[^\]]+\][\t ]*\r?\napproval_mode[\t ]*=[\t ]*"[^"]*"[\t ]*\r?\n?/g;
10
10
  const matches = content.match(expression);
@@ -268,7 +268,7 @@ export async function setupCodexHooks() {
268
268
  const configDir = process.env["CODEX_HOME"] ?? join(homedir(), ".codex");
269
269
  const hooksPath = join(configDir, "hooks.json");
270
270
  await ensureDir(configDir);
271
- const { root, hooks } = await loadHooksSection(hooksPath);
271
+ const { root, hooks, original } = await loadHooksSection(hooksPath);
272
272
  for (const event of Object.keys(hooks)) {
273
273
  const entries = hooks[event];
274
274
  if (!Array.isArray(entries))
@@ -279,6 +279,6 @@ export async function setupCodexHooks() {
279
279
  else
280
280
  hooks[event] = kept;
281
281
  }
282
- await writeJsonFile(hooksPath, root);
282
+ await saveHooksSection(hooksPath, root, original);
283
283
  }
284
284
  //# sourceMappingURL=codex.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/cli/setup/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,UAAU,kCAAkC,CAChD,OAAe;IAEf,MAAM,UAAU,GAAG,mGAAmG,CAAC;IACvH,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;QACnE,OAAO,EAAE,OAAO,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yCAAyC,CACvD,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAErD,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,0DAA0D,CAAC;IACtF,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,kBAAkB,EAClB,yCAAyC,CAC1C,CAAC;QACF,OAAO,YAAY,KAAK,KAAK;YAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EACL,MAAM;YACN,yCAAyC;YACzC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACtD,MAAM;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAErD,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,8CAA8C,CAAC;IAC1E,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QAC1E,OAAO,YAAY,KAAK,KAAK;YAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EACL,MAAM;YACN,iBAAiB;YACjB,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACtD,MAAM;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAsB;IACtD,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,mFAAmF;QACnF,0BAA0B,CAAC,OAAO,CAAC,CAAC;QACpC,8FAA8F;QAC9F,gGAAgG;QAChG,iDAAiD;QACjD,MAAM,KAAK,GAAG,CAAC,QAAQ,GAAG,UAAU,CAClC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,CAClG,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,UAAU,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;IACtC,OAAO,CACL,YAAY;QACZ,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;QACzB,YAAY;QACZ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACnD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAsB;IAC/C,OAAO,CACL,4BAA4B;QAC5B,wBAAwB,CAAC,OAAO,CAAC;QACjC,sFAAsF,CACvF,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,gCAAgC,CACvC,OAAe,EACf,OAAsB;IAEtB,MAAM,KAAK,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAE/C,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAErD,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,4EAA4E;IAC5E,kBAAkB;IAClB,MAAM,aAAa,GAAG,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,aAAa,IAAI,CAAC,gBAAgB,CAAC;IAExD,kGAAkG;IAClG,gGAAgG;IAChG,iGAAiG;IACjG,kGAAkG;IAClG,mDAAmD;IACnD,MAAM,iBAAiB,GAAG,OAAO,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExF,MAAM,aAAa,GACjB,WAAW,KAAK,OAAO;QACvB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,IAAI,iBAAiB,CAAC,CAAC,CAAC,OAAO,IAAI,YAAY,IAAI,aAAa,CAAC,CAAC;IAC3F,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAEvD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,0CAA0C,EAAE,EAAE,CAAC,CAAC;IACnF,MAAM,IAAI,GAAG,YAAY;SACtB,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;SACrC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,EAAE,CAAC;IACb,MAAM,YAAY,GAChB,0BAA0B;QAC1B,wBAAwB,CAAC,OAAO,CAAC;QACjC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;IACP,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QAChF,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAGD;;;;;;;;;;;GAWG;AACH,SAAS,qBAAqB,CAAC,OAAe;IAC5C,MAAM,MAAM,GAAG,4BAA4B,CAAC;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACvF,CAAC;AAGD;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,2BAA2B,CAAC,WAAmB;IAC5D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACzD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,MAAM,SAAS,CAAC,WAAW,EAAE,GAAG,OAAO,GAAG,GAAG,qEAAqE,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAsB;IACrD,gGAAgG;IAChG,+FAA+F;IAC/F,4DAA4D;IAC5D,EAAE;IACF,0FAA0F;IAC1F,EAAE;IACF,iGAAiG;IACjG,gGAAgG;IAChG,6DAA6D;IAC7D,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpD,MAAM,WAAW,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAClD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC5D,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,KAAK,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,KAAK,IAAI,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CACb,8EAA8E;sBAC5E,sFAAsF;sBACtF,kFAAkF;sBAClF,sFAAsF;sBACtF,qEAAqE,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAE3B,gGAAgG;IAChG,yDAAyD;IACzD,IAAI,YAAY;QAAE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAEjE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,eAAe,CAAC,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1E,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kCAAkC,CAAC,QAAQ,CAAC,CAAC;IACnF,iGAAiG;IACjG,kEAAkE;IAClE,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI;QACxC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC;QAChC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzC,MAAM,eAAe,GAAG,gCAAgC,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,yCAAyC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,sBAAsB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,UAAU,GACd,OAAO,GAAG,CAAC;QACT,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,6BAA6B,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,0BAA0B,EAAE;QAC1H,CAAC,CAAC,EAAE,CAAC;IAET,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAC/C,IAAI,OAAO,GAAG,CAAC,IAAI,WAAW,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5G,MAAM,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;QAC1F,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACtF,CAAC;IAED,MAAM,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAChD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE1D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;;YACtC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,MAAM,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../../src/cli/setup/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEjF,MAAM,UAAU,kCAAkC,CAChD,OAAe;IAEf,MAAM,UAAU,GAAG,mGAAmG,CAAC;IACvH,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjC,CAAC;IACD,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC;QACnE,OAAO,EAAE,OAAO,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yCAAyC,CACvD,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAErD,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,0DAA0D,CAAC;IACtF,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,kBAAkB,EAClB,yCAAyC,CAC1C,CAAC;QACF,OAAO,YAAY,KAAK,KAAK;YAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EACL,MAAM;YACN,yCAAyC;YACzC,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACtD,MAAM;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAErD,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,kBAAkB,GAAG,8CAA8C,CAAC;IAC1E,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;QAC1E,OAAO,YAAY,KAAK,KAAK;YAC3B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE;YAC7B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC9F,CAAC;IAED,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,OAAO;QACL,OAAO,EACL,MAAM;YACN,iBAAiB;YACjB,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACtD,MAAM;QACR,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAsB;IACtD,IAAI,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,mFAAmF;QACnF,0BAA0B,CAAC,OAAO,CAAC,CAAC;QACpC,8FAA8F;QAC9F,gGAAgG;QAChG,iDAAiD;QACjD,MAAM,KAAK,GAAG,CAAC,QAAQ,GAAG,UAAU,CAClC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,CAClG,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,KAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,UAAU,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,MAAM,KAAK,GAAG,qBAAqB,EAAE,CAAC;IACtC,OAAO,CACL,YAAY;QACZ,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC;QACzB,YAAY;QACZ,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACnD,GAAG,CACJ,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAsB;IAC/C,OAAO,CACL,4BAA4B;QAC5B,wBAAwB,CAAC,OAAO,CAAC;QACjC,sFAAsF,CACvF,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAC/B,OAAe;IAEf,MAAM,MAAM,GAAG,wBAAwB,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9B,MAAM,WAAW,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1C,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,GAAG,eAAe,CAAC;IACpF,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,gCAAgC,CACvC,OAAe,EACf,OAAsB;IAEtB,MAAM,KAAK,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAE/C,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI,CAAC;IAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAErD,4EAA4E;IAC5E,wEAAwE;IACxE,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,qEAAqE;IACrE,4EAA4E;IAC5E,kBAAkB;IAClB,MAAM,aAAa,GAAG,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACrE,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,YAAY,GAAG,aAAa,IAAI,CAAC,gBAAgB,CAAC;IAExD,kGAAkG;IAClG,gGAAgG;IAChG,iGAAiG;IACjG,kGAAkG;IAClG,mDAAmD;IACnD,MAAM,iBAAiB,GAAG,OAAO,IAAI,CAAC,qCAAqC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAExF,MAAM,aAAa,GACjB,WAAW,KAAK,OAAO;QACvB,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,IAAI,iBAAiB,CAAC,CAAC,CAAC,OAAO,IAAI,YAAY,IAAI,aAAa,CAAC,CAAC;IAC3F,IAAI,CAAC,aAAa;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAEvD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,0CAA0C,EAAE,EAAE,CAAC,CAAC;IACnF,MAAM,IAAI,GAAG,YAAY;SACtB,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;SACrC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;SACrB,OAAO,EAAE,CAAC;IACb,MAAM,YAAY,GAChB,0BAA0B;QAC1B,wBAAwB,CAAC,OAAO,CAAC;QACjC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;IACP,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC;QAChF,OAAO,EAAE,IAAI;KACd,CAAC;AACJ,CAAC;AAGD;;;;;;;;;;;GAWG;AACH,SAAS,qBAAqB,CAAC,OAAe;IAC5C,MAAM,MAAM,GAAG,4BAA4B,CAAC;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC;IAClE,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACvF,CAAC;AAGD;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,2BAA2B,CAAC,WAAmB;IAC5D,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;QACzD,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,IAAI,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACvE,MAAM,SAAS,CAAC,WAAW,EAAE,GAAG,OAAO,GAAG,GAAG,qEAAqE,CAAC,CAAC;QACpH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAsB;IACrD,gGAAgG;IAChG,+FAA+F;IAC/F,4DAA4D;IAC5D,EAAE;IACF,0FAA0F;IAC1F,EAAE;IACF,iGAAiG;IACjG,gGAAgG;IAChG,6DAA6D;IAC7D,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpD,MAAM,WAAW,GAAG,OAAO,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IAClD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;QAC5D,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3B,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC9C,MAAM,KAAK,GAAG,wBAAwB,CAAC,CAAC,CAAC,CAAC;YAC1C,IAAI,KAAK,IAAI,yBAAyB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzD,MAAM,IAAI,KAAK,CACb,8EAA8E;sBAC5E,sFAAsF;sBACtF,kFAAkF;sBAClF,sFAAsF;sBACtF,qEAAqE,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAE3B,gGAAgG;IAChG,yDAAyD;IACzD,IAAI,YAAY;QAAE,MAAM,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAEjE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,MAAM,eAAe,CAAC,UAAU,EAAE,iBAAiB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1E,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IAC3E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,kCAAkC,CAAC,QAAQ,CAAC,CAAC;IACnF,iGAAiG;IACjG,kEAAkE;IAClE,MAAM,WAAW,GAAG,OAAO,EAAE,IAAI,KAAK,IAAI;QACxC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC;QAChC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACzC,MAAM,eAAe,GAAG,gCAAgC,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACvF,MAAM,UAAU,GAAG,yCAAyC,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,sBAAsB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,UAAU,GACd,OAAO,GAAG,CAAC;QACT,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,GAAG,OAAO,GAAG,6BAA6B,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,0BAA0B,EAAE;QAC1H,CAAC,CAAC,EAAE,CAAC;IAET,IAAI,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;QAC/C,IAAI,OAAO,GAAG,CAAC,IAAI,WAAW,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC5G,MAAM,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;QAC1F,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;IACtF,CAAC;IAED,MAAM,eAAe,CAAC,UAAU,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;IACzF,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,CAAC;AAC1F,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAChD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAEpE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,SAAS;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC;;YACtC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,MAAM,gBAAgB,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACpD,CAAC"}
@@ -1,5 +1,7 @@
1
1
  export declare function ensureDir(dir: string): Promise<void>;
2
2
  export declare function readJsonFile(path: string): Promise<Record<string, unknown>>;
3
+ /** Parse config text already read from `path`; empty text counts as `{}`. */
4
+ export declare function parseJsonObject(raw: string, path: string): Record<string, unknown>;
3
5
  /**
4
6
  * Owner-only. These files can carry a daemon bearer token, and the whole point of the
5
7
  * shared-daemon feature is that the host is shared — so the default umask (commonly 0644,
@@ -1 +1 @@
1
- {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAOA,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1D;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAgBjF;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,MAAkB,CAAC;AAEhD,8EAA8E;AAC9E,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9F;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAS/D;AAED,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9C"}
1
+ {"version":3,"file":"fs.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAOA,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAI1D;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAEjF;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAelF;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,gBAAgB,MAAkB,CAAC;AAEhD,8EAA8E;AAC9E,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElF;AAED,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9F;AAED,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAS/D;AAED,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9C"}
@@ -10,7 +10,10 @@ export async function ensureDir(dir) {
10
10
  }
11
11
  }
12
12
  export async function readJsonFile(path) {
13
- const raw = await readFile(path, "utf-8");
13
+ return parseJsonObject(await readFile(path, "utf-8"), path);
14
+ }
15
+ /** Parse config text already read from `path`; empty text counts as `{}`. */
16
+ export function parseJsonObject(raw, path) {
14
17
  if (raw.trim() === "") {
15
18
  return {};
16
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,mCAAmC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,MAAM,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,OAAe;IACjE,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,IAA6B;IAC7E,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,YAAY,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,OAAe;IACpC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC"}
1
+ {"version":3,"file":"fs.js","sourceRoot":"","sources":["../../../src/cli/setup/fs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,OAAO,eAAe,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,eAAe,CAAC,GAAW,EAAE,IAAY;IACvD,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,IAAI,GAAG,mCAAmC,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,MAAM,GAAG,GAAG,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAiC,CAAC;AAC3C,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAY,EAAE,OAAe;IACjE,MAAM,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,IAA6B;IAC7E,MAAM,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,YAAoB;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACxD,KAAK,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QAChF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1B,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,kCAAkC,GAAG,YAAY,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,OAAe;IACpC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { homedir } from "node:os";
2
2
  import { join } from "node:path";
3
- import { ensureDir, writeJsonFile } from "./fs.js";
4
- import { hasCodesiftHook, loadHooksSection } from "./hooks.js";
3
+ import { ensureDir } from "./fs.js";
4
+ import { hasCodesiftHook, loadHooksSection, saveHooksSection } from "./hooks.js";
5
5
  import { setupJsonPlatform } from "./mcp.js";
6
6
  const GEMINI_CONFIG = { configDirName: ".gemini", configFileName: "settings.json" };
7
7
  /**
@@ -53,7 +53,7 @@ export async function setupGeminiHooks() {
53
53
  const configDir = join(homedir(), ".gemini");
54
54
  const settingsPath = join(configDir, "settings.json");
55
55
  await ensureDir(configDir);
56
- const { root, hooks } = await loadHooksSection(settingsPath);
56
+ const { root, hooks, original } = await loadHooksSection(settingsPath);
57
57
  for (const [eventName, hookEntry] of Object.entries(GEMINI_HOOKS)) {
58
58
  if (!Array.isArray(hooks[eventName])) {
59
59
  hooks[eventName] = [];
@@ -62,6 +62,6 @@ export async function setupGeminiHooks() {
62
62
  hooks[eventName].push(hookEntry);
63
63
  }
64
64
  }
65
- await writeJsonFile(settingsPath, root);
65
+ await saveHooksSection(settingsPath, root, original);
66
66
  }
67
67
  //# sourceMappingURL=gemini.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/cli/setup/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAkB,MAAM,YAAY,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,aAAa,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,kBAAkB,GAAG;IACzB,aAAa,EAAE,qBAAqB;IACpC,cAAc,EAAE,iBAAiB;CAClC,CAAC;AAEF,MAAM,YAAY,GAA8B;IAC9C,UAAU,EAAE;QACV,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC;KACxE;IACD,SAAS,EAAE;QACT,OAAO,EAAE,oBAAoB;QAC7B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;KACzE;IACD,WAAW,EAAE;QACX,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;KAC9E;CACF,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,OAAsB;IAChD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAsB;IACrD,OAAO,iBAAiB,CAAC,aAAa,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAE7D,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACrC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,MAAM,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/cli/setup/gemini.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,gBAAgB,EAAkB,MAAM,YAAY,CAAC;AACjG,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,aAAa,GAAG,EAAE,aAAa,EAAE,SAAS,EAAE,cAAc,EAAE,eAAe,EAAE,CAAC;AAEpF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,kBAAkB,GAAG;IACzB,aAAa,EAAE,qBAAqB;IACpC,cAAc,EAAE,iBAAiB;CAClC,CAAC;AAEF,MAAM,YAAY,GAA8B;IAC9C,UAAU,EAAE;QACV,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,gCAAgC,EAAE,CAAC;KACxE;IACD,SAAS,EAAE;QACT,OAAO,EAAE,oBAAoB;QAC7B,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,iCAAiC,EAAE,CAAC;KACzE;IACD,WAAW,EAAE;QACX,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,sCAAsC,EAAE,CAAC;KAC9E;CACF,CAAC;AAEF,MAAM,UAAU,WAAW,CAAC,OAAsB;IAChD,OAAO,iBAAiB,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAsB;IACrD,OAAO,iBAAiB,CAAC,aAAa,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IAC7C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,gBAAgB,CAAC,YAAY,CAAC,CAAC;IAEvE,KAAK,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACrC,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;YACvC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,MAAM,gBAAgB,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;AACvD,CAAC"}
@@ -3,10 +3,20 @@ export type HookEntry = {
3
3
  hooks: unknown[];
4
4
  };
5
5
  export type HooksSection = Record<string, HookEntry[]>;
6
+ /**
7
+ * Hooks are auto-installed on every MCP server start — many processes at once, while
8
+ * the host (Claude Code itself) rewrites the same file too. An existing file that
9
+ * reads as empty is almost certainly one caught mid-write by someone else, so it is
10
+ * refused instead of treated as `{}`: rebuilding from nothing drops every setting that
11
+ * is not a CodeSift hook. `original` is the file as read, for `saveHooksSection`.
12
+ */
6
13
  export declare function loadHooksSection(configPath: string): Promise<{
7
14
  root: Record<string, unknown>;
8
15
  hooks: HooksSection;
16
+ original: string | null;
9
17
  }>;
18
+ /** Write only when installing changed something — a no-op server start leaves the file alone. */
19
+ export declare function saveHooksSection(configPath: string, root: Record<string, unknown>, original: string | null): Promise<boolean>;
10
20
  export declare function ensureHookEntry(hooks: HooksSection, event: string, entry: HookEntry): void;
11
21
  export declare function hasCodesiftHook(entries: HookEntry[]): boolean;
12
22
  //# sourceMappingURL=hooks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/hooks.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAEvD,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,CAAC,CAajE;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAO1F;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAS7D"}
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/cli/setup/hooks.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,SAAS,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,OAAO,EAAE,CAAA;CAAE,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;AAEvD;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAAC,KAAK,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAsB1F;AAED,iGAAiG;AACjG,wBAAsB,gBAAgB,CACpC,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,OAAO,CAAC,CAIlB;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAO1F;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,OAAO,CAS7D"}
@@ -1,16 +1,38 @@
1
1
  import { existsSync } from "node:fs";
2
- import { readJsonFile } from "./fs.js";
2
+ import { readFile } from "node:fs/promises";
3
+ import { parseJsonObject, writeJsonFile } from "./fs.js";
4
+ /**
5
+ * Hooks are auto-installed on every MCP server start — many processes at once, while
6
+ * the host (Claude Code itself) rewrites the same file too. An existing file that
7
+ * reads as empty is almost certainly one caught mid-write by someone else, so it is
8
+ * refused instead of treated as `{}`: rebuilding from nothing drops every setting that
9
+ * is not a CodeSift hook. `original` is the file as read, for `saveHooksSection`.
10
+ */
3
11
  export async function loadHooksSection(configPath) {
4
12
  let root = {};
13
+ let original = null;
5
14
  if (existsSync(configPath)) {
6
- root = await readJsonFile(configPath);
15
+ const raw = await readFile(configPath, "utf-8");
16
+ if (raw.trim() === "") {
17
+ throw new Error(configPath + " exists but is empty (possibly mid-write by another process); "
18
+ + "refusing to rebuild it from scratch. Retry, or delete the file if it should be empty.");
19
+ }
20
+ root = parseJsonObject(raw, configPath);
21
+ original = JSON.stringify(root);
7
22
  }
8
23
  if (typeof root["hooks"] !== "object" ||
9
24
  root["hooks"] === null ||
10
25
  Array.isArray(root["hooks"])) {
11
26
  root["hooks"] = {};
12
27
  }
13
- return { root, hooks: root["hooks"] };
28
+ return { root, hooks: root["hooks"], original };
29
+ }
30
+ /** Write only when installing changed something — a no-op server start leaves the file alone. */
31
+ export async function saveHooksSection(configPath, root, original) {
32
+ if (original !== null && JSON.stringify(root) === original)
33
+ return false;
34
+ await writeJsonFile(configPath, root);
35
+ return true;
14
36
  }
15
37
  export function ensureHookEntry(hooks, event, entry) {
16
38
  if (!Array.isArray(hooks[event])) {
@@ -1 +1 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/cli/setup/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAKvC,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB;IAElB,IAAI,IAAI,GAA4B,EAAE,CAAC;IACvC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,IAAI,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;IACD,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ;QACjC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI;QACtB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAC5B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAiB,EAAE,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAmB,EAAE,KAAa,EAAE,KAAgB;IAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACjE,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAoB;IAClD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3B,KAAK,CAAC,KAAwC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/D,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ;QAClC,IAAI,CAAC,SAAS,CAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CACjD,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../../src/cli/setup/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAKzD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB;IAElB,IAAI,IAAI,GAA4B,EAAE,CAAC;IACvC,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QAChD,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,UAAU,GAAG,gEAAgE;kBAC3E,uFAAuF,CAC1F,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,eAAe,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IACD,IACE,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ;QACjC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI;QACtB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAC5B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IACrB,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAiB,EAAE,QAAQ,EAAE,CAAC;AAClE,CAAC;AAED,iGAAiG;AACjG,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,UAAkB,EAClB,IAA6B,EAC7B,QAAuB;IAEvB,IAAI,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACzE,MAAM,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,KAAmB,EAAE,KAAa,EAAE,KAAgB;IAClF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACjE,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAoB;IAClD,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAC3B,KAAK,CAAC,KAAwC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,CAC/D,OAAO,IAAI,KAAK,QAAQ;QACxB,IAAI,KAAK,IAAI;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,QAAQ;QAClC,IAAI,CAAC,SAAS,CAAY,CAAC,QAAQ,CAAC,UAAU,CAAC,CACjD,CACF,CAAC;AACJ,CAAC"}
@@ -2,7 +2,7 @@
2
2
  * CODESIFT_INSTRUCTIONS — single source of truth for agent guidance.
3
3
  * Target: ~800 tokens (~3200 chars). Compact abbreviated format.
4
4
  */
5
- export declare const CODESIFT_INSTRUCTIONS = "CodeSift \u2014 150 MCP tools. Usage-critical tools are always visible; niche tools are discoverable.\n\nSTART HERE: For any non-trivial code task call mcp__codesift__plan_turn(query=\"<your task>\") FIRST. plan_turn is always visible \u2014 no schema-loading required. It returns ranked tools+symbols+files and auto-reveals hidden tools in one call. Do NOT iterate ToolSearch to discover CodeSift tools \u2014 plan_turn replaces that path.\n\nPREFER core CodeSift tools over Grep/Glob/Read for code search. Always-visible usage core: plan_turn, search_text, search_symbols, get_file_outline, get_file_tree, index_file, codebase_retrieval, search_all_conversations. Additional visible core covers get_symbol, get_symbols, find_references, find_and_show, get_context_bundle, analyze_complexity, detect_communities, audit_scan, search_conversations, index_status, plus framework-core (framework_audit, nextjs_route_map, nextjs_metadata_audit for Next.js; analyze_hono_app, trace_middleware_chain for Hono; astro_audit + 6 astro_* for Astro; nest_audit for NestJS).\n\nAUTO-LOAD: Framework-specific tools auto-enable when project type is detected at CWD or indexed path:\n composer.json \u2192 PHP/Yii2 (6 tools) build.gradle.kts \u2192 Kotlin (10 tools incl. Compose/Room)\n pyproject.toml | requirements.txt \u2192 Python (14 tools incl. Django/FastAPI/pytest)\n package.json + react/@xyflow/react/next + .tsx files \u2192 React (6 tools)\n package.json + hono \u2192 Hono (9 tools)\n\nDISCOVERY (when plan_turn doesn't surface what you need)\n describe_tools(names=[\"find_dead_code\"], reveal=true) \u2192 enables hidden tool in ListTools\n discover_tools(query=\"dead code\") \u2192 keyword search across all 150 tools\n ToolSearch(query=\"select:mcp__codesift__<name>\") \u2192 Claude Code primitive (last resort)\n\nHINT CODES (act on immediately when they appear in responses)\n H1(n) \u2192 add group_by_file=true H2(n,tool) \u2192 batch into one call\n H3(n) \u2192 repo auto-resolves, skip H4 \u2192 add file_pattern\n H5 \u2192 use cached tree result H6(n) \u2192 add detail_level=compact\n H7 \u2192 use get_context_bundle H8(n) \u2192 use assemble_context(level=L1)\n H9 \u2192 codebase_retrieval(type:semantic) H10 \u2192 call get_session_snapshot\n H19 \u2192 answer is from a DIFFERENT git working tree than your CWD \u2014 index it\n H11 \u2192 use search_text instead H12 \u2192 batch search_text into codebase_retrieval\n H13 \u2192 route query \u2192 use trace_route H14 \u2192 secret pattern \u2192 use scan_secrets\n H15 \u2192 journal fetch: search_text(glob='.codesift/wiki/journal/**')\n\nALWAYS: repo auto-resolves, skip list_repos. file_pattern when scoped. get_symbols (batch)\n for 2+. Batch 3+ into codebase_retrieval. token_budget to cap. index_file after edits.\n trace_route for endpoints. codebase_retrieval(type:semantic) for conceptual queries.\n\nNEVER: index_folder if already indexed \u2014 EXCEPT in a linked git worktree, where the\n repo reported as indexed is the PARENT checkout, not your tree: index_folder(path=<cwd>)\n once, and treat H19 or a file count that does not match your tree as the signal.\n list_repos in single-repo. get_knowledge_map without detect_communities (129K+).\n Read file for return type \u2192 get_type_info.\n\nKEY PARAMS\n search_symbols: detail_level=compact | token_budget=N | kind=function/class/component/hook\n search_text decision tree:\n - identifier-only query (e.g. \"OrganizationService\", \"useAuth\") \u2192 ranked=true\n auto-applied server-side when no grouping passed; symbol-grouped+centrality-ranked\n - error string / unknown phrase \u2192 omit grouping; server auto-groups above 30 matches\n - already passing top_k\u226530 \u2192 group_by_file=true\n - ALWAYS pass file_pattern when scope is known\n assemble_context: L0 full | L1 sigs (3-5x denser) | L2 summaries | L3 dirs\n codebase_retrieval: always token_budget | get_knowledge_map: ALWAYS focus=\n\nCASCADE (auto): >52.5K\u2192compact, >87.5K\u2192counts, >105K\u2192truncate. Skipped if detail_level/token_budget set.\n\nTOOL MAPPING (quick ref)\n text \u2192 search_text(file_pattern=) | symbols \u2192 search_symbols(include_source=true)\n file outline \u2192 get_file_outline | files \u2192 get_file_tree(compact=true)\n 1 sym \u2192 get_symbol | 2+ \u2192 get_symbols (batch) | sym+refs \u2192 find_and_show(include_refs=true)\n usages \u2192 find_references | call chain \u2192 trace_call_chain | blast \u2192 impact_analysis(since=)\n concept \u2192 codebase_retrieval(type:semantic) | multi-search 3+ \u2192 codebase_retrieval(queries=[])\n dead code \u2192 find_dead_code | complexity \u2192 analyze_complexity | dup \u2192 find_clones(min_similarity=0.7)\n anti-pat \u2192 search_patterns | arch \u2192 detect_communities(focus=) | churn \u2192 analyze_hotspots(since_days=)\n diagram \u2192 trace_call_chain(output_format=mermaid) | endpoint \u2192 trace_route (FIRST)\n secrets \u2192 scan_secrets | taint \u2192 taint_trace(framework=) | past \u2192 search_conversations\n changed \u2192 changed_symbols(since=) | plan \u2192 plan_turn(query=) | session \u2192 get_session_snapshot\n React: kind=component/hook | trace_component_tree | analyze_hooks/renders/context_graph\n React anti-pat: search_patterns(\"hook-in-condition\") | clean graph: filter_react_hooks=true\n Astro: astro_analyze_islands / astro_hydration_audit / astro_route_map / astro_config_analyze\n Next.js: framework_audit | nextjs_route_map | nextjs_metadata_audit\n sub-checks via framework_audit(checks=server-actions/api-contract/boundary/link-integrity/data-flow/middleware/components)\n Hono: analyze_hono_app (FIRST) | trace_middleware_chain (only_conditional=true for applied_when)\n trace_context_flow | analyze_inline_handler | extract_api_contract | extract_response_types\n trace_rpc_types | audit_hono_security (env-regression #3587) | detect_hono_modules\n find_dead_hono_routes | visualize_hono_routes\n Monorepo: list_workspaces (FIRST for Turbo/pnpm/Nx) | workspace_graph(format=mermaid)\n affected_workspaces(since=\"HEAD~1\") | workspace_boundaries(rules=[{from_workspace, cannot_import_workspaces}])\n Workspace scoping: framework_audit / nextjs_route_map / analyze_hono_app / nest_audit / astro_audit accept workspace=<name|path>\n";
5
+ export declare const CODESIFT_INSTRUCTIONS = "CodeSift \u2014 150 MCP tools. Usage-critical tools are always visible; niche tools are discoverable.\n\nSTART HERE: For any non-trivial code task call mcp__codesift__plan_turn(query=\"<your task>\") FIRST. plan_turn is always visible \u2014 no schema-loading required. It returns ranked tools+symbols+files and auto-reveals hidden tools in one call. Do NOT iterate ToolSearch to discover CodeSift tools \u2014 plan_turn replaces that path.\n\nPREFER core CodeSift tools over Grep/Glob/Read for code search. Always-visible usage core: plan_turn, search_text, search_symbols, get_file_outline, get_file_tree, index_file, codebase_retrieval, search_all_conversations. Additional visible core covers get_symbol, get_symbols, find_references, find_and_show, get_context_bundle, analyze_complexity, detect_communities, audit_scan, search_conversations, index_status, plus framework-core (framework_audit, nextjs_route_map, nextjs_metadata_audit for Next.js; analyze_hono_app, trace_middleware_chain for Hono; astro_audit + 6 astro_* for Astro; nest_audit for NestJS).\n\nAUTO-LOAD: Framework-specific tools auto-enable when project type is detected at CWD or indexed path:\n composer.json \u2192 PHP/Yii2 (6 tools) build.gradle.kts \u2192 Kotlin (10 tools incl. Compose/Room)\n pyproject.toml | requirements.txt \u2192 Python (14 tools incl. Django/FastAPI/pytest)\n package.json + react/@xyflow/react/next + .tsx files \u2192 React (6 tools)\n package.json + hono \u2192 Hono (9 tools)\n\nDISCOVERY (when plan_turn doesn't surface what you need)\n describe_tools(names=[\"find_dead_code\"], reveal=true) \u2192 enables hidden tool in ListTools\n discover_tools(query=\"dead code\") \u2192 keyword search across all 150 tools\n ToolSearch(query=\"select:mcp__codesift__<name>\") \u2192 Claude Code primitive (last resort)\n\nHINT CODES (act on immediately when they appear in responses)\n H1(n) \u2192 add group_by_file=true H2(n,tool) \u2192 batch into one call\n H3(n) \u2192 repo auto-resolves, skip H4 \u2192 add file_pattern\n H5 \u2192 use cached tree result H6(n) \u2192 add detail_level=compact\n H7 \u2192 use get_context_bundle H8(n) \u2192 use assemble_context(level=L1)\n H9 \u2192 codebase_retrieval(type:semantic) H10 \u2192 call get_session_snapshot\n H19 \u2192 answer is from a DIFFERENT git working tree than your CWD \u2014 index it\n H11 \u2192 use search_text instead H12 \u2192 batch search_text into codebase_retrieval\n H13 \u2192 route query \u2192 use trace_route H14 \u2192 secret pattern \u2192 use scan_secrets\n H15 \u2192 journal fetch: search_text(glob='.codesift/wiki/journal/**')\n\nALWAYS: repo auto-resolves, skip list_repos. file_pattern when scoped. get_symbols (batch)\n for 2+. Batch 3+ into codebase_retrieval. token_budget to cap. index_file after edits.\n trace_route for endpoints. codebase_retrieval(type:semantic) for conceptual queries.\n\nLANGUAGES: full symbols incl. KOTLIN (.kt/.kts/.gradle.kts) + TS/TSX/JS/Python/Go/Rust/PHP;\n generic for Java/Ruby/CSS. text_stub = NO symbols, but search_text/get_file_tree/scan_secrets\n still work: swift, dart, scala, clojure, elixir, lua, zig, nim, .gradle, sbt, html, config.\n Verify with index_status, never assume. analyze_complexity is regex in EVERY language.\n\nSTALE INDEX \u2192 index_folder(path=<root>) ONCE. commit.matches=false or files_changed=N is an\n instruction to reindex, NEVER a reason to skip CodeSift and fall back to grep/find.\n\nNEVER: index_folder if already indexed \u2014 EXCEPT in a linked git worktree, where the\n repo reported as indexed is the PARENT checkout, not your tree: index_folder(path=<cwd>)\n once, and treat H19 or a file count that does not match your tree as the signal.\n list_repos in single-repo. get_knowledge_map without detect_communities (129K+).\n Read file for return type \u2192 get_type_info.\n\nKEY PARAMS\n search_symbols: detail_level=compact | token_budget=N | kind=function/class/component/hook\n search_text decision tree:\n - identifier-only query (e.g. \"OrganizationService\", \"useAuth\") \u2192 ranked=true\n auto-applied server-side when no grouping passed; symbol-grouped+centrality-ranked\n - error string / unknown phrase \u2192 omit grouping; server auto-groups above 30 matches\n - already passing top_k\u226530 \u2192 group_by_file=true\n - ALWAYS pass file_pattern when scope is known\n assemble_context: L0 full | L1 sigs (3-5x denser) | L2 summaries | L3 dirs\n codebase_retrieval: always token_budget | get_knowledge_map: ALWAYS focus=\n\nCASCADE (auto): >52.5K\u2192compact, >87.5K\u2192counts, >105K\u2192truncate. Skipped if detail_level/token_budget set.\n\nTOOL MAPPING (quick ref)\n text \u2192 search_text(file_pattern=) | symbols \u2192 search_symbols(include_source=true)\n file outline \u2192 get_file_outline | files \u2192 get_file_tree(compact=true)\n 1 sym \u2192 get_symbol | 2+ \u2192 get_symbols (batch) | sym+refs \u2192 find_and_show(include_refs=true)\n usages \u2192 find_references | call chain \u2192 trace_call_chain | blast \u2192 impact_analysis(since=)\n concept \u2192 codebase_retrieval(type:semantic) | multi-search 3+ \u2192 codebase_retrieval(queries=[])\n dead code \u2192 find_dead_code | complexity \u2192 analyze_complexity | dup \u2192 find_clones(min_similarity=0.7)\n anti-pat \u2192 search_patterns | arch \u2192 detect_communities(focus=) | churn \u2192 analyze_hotspots(since_days=)\n diagram \u2192 trace_call_chain(output_format=mermaid) | endpoint \u2192 trace_route (FIRST)\n secrets \u2192 scan_secrets | taint \u2192 taint_trace(framework=) | past \u2192 search_conversations\n changed \u2192 changed_symbols(since=) | plan \u2192 plan_turn(query=) | session \u2192 get_session_snapshot\n React: kind=component/hook | trace_component_tree | analyze_hooks/renders/context_graph\n React anti-pat: search_patterns(\"hook-in-condition\") | clean graph: filter_react_hooks=true\n Astro: astro_analyze_islands / astro_hydration_audit / astro_route_map / astro_config_analyze\n Next.js: framework_audit | nextjs_route_map | nextjs_metadata_audit\n sub-checks via framework_audit(checks=server-actions/api-contract/boundary/link-integrity/data-flow/middleware/components)\n Hono: analyze_hono_app (FIRST) | trace_middleware_chain (only_conditional=true for applied_when)\n trace_context_flow | analyze_inline_handler | extract_api_contract | extract_response_types\n trace_rpc_types | audit_hono_security (env-regression #3587) | detect_hono_modules\n find_dead_hono_routes | visualize_hono_routes\n Monorepo: list_workspaces (FIRST for Turbo/pnpm/Nx) | workspace_graph(format=mermaid)\n affected_workspaces(since=\"HEAD~1\") | workspace_boundaries(rules=[{from_workspace, cannot_import_workspaces}])\n Workspace scoping: framework_audit / nextjs_route_map / analyze_hono_app / nest_audit / astro_audit accept workspace=<name|path>\n";
6
6
  /**
7
7
  * A short instructions field, for measuring what the long one buys.
8
8
  *
@@ -19,5 +19,26 @@ export declare const CODESIFT_INSTRUCTIONS = "CodeSift \u2014 150 MCP tools. Usa
19
19
  * Opt in with CODESIFT_BRIEF_INSTRUCTIONS=1. Default is unchanged.
20
20
  */
21
21
  export declare const CODESIFT_INSTRUCTIONS_BRIEF = "CodeSift \u2014 code intelligence over an indexed repo.\n\nPREFER these over Grep/Glob/Bash(grep|find|rg) and over reading a whole file:\n search_text(query, file_pattern=) \u2014 text/regex search, returns file:line with context\n search_symbols(query, kind=) \u2014 find a function/class/type by name\n get_file_outline(path) \u2014 structure of one file without reading it\n get_file_tree(name_pattern=) \u2014 find files\n\nThe repo argument resolves from the working directory \u2014 do not call list_repos.\n\nONE call beats a sequence. To understand a symbol \u2014 where it is defined AND everywhere it is used \u2014\ncall find_and_show(query=\"<name>\", include_refs=true) once, instead of grep-for-definition, then\ngrep-for-uses, then read the file. Measured on this pattern: 67% fewer tool calls and 43% fewer\nbytes returned, for the same information.\n\nplan_turn(query=\"<your task>\") ranks tools, symbols and files for a task and reveals whatever else\nis needed; it is the entry point for anything not listed above.";
22
+ /**
23
+ * The DEFAULT `instructions` field — must fit the host's cap.
24
+ *
25
+ * Claude Code 2.1.280 truncates MCP server instructions at 2,048 characters
26
+ * (`CLAUDE_CODE_MAX_MCP_DESCRIPTION_LENGTH`). CODESIFT_INSTRUCTIONS is ~6.5K, so every session got
27
+ * its first third — the catalog preamble — and lost ALWAYS/NEVER, the stale-index rule and the hint
28
+ * legend: exactly the lines that stop an agent from abandoning the server for grep. Shipping a field
29
+ * the host cuts is worse than shipping a short one, because nobody chose what survives the cut.
30
+ *
31
+ * This one keeps the rules that change a decision and points at `initial_instructions` for the full
32
+ * manual, which is a tool result and therefore not subject to the cap.
33
+ * CODESIFT_FULL_INSTRUCTIONS=1 restores the long field for a host known not to truncate it.
34
+ */
35
+ export declare const CODESIFT_INSTRUCTIONS_SERVER = "CodeSift \u2014 code intelligence over an indexed repo (symbols, call graph, BM25+semantic search, framework analyzers).\n\nPREFER these over Grep/Glob/Bash(grep|find|rg) and over reading whole files:\n search_text(query, file_pattern=) \u00B7 search_symbols(query, kind=, include_source=true)\n get_file_outline(path) \u00B7 get_file_tree(name_pattern=) \u00B7 find_references \u00B7 trace_call_chain\n impact_analysis(since=) for blast radius \u00B7 codebase_retrieval(queries=[\u2026], token_budget=) to batch 3+\n\nONE call beats a sequence: find_and_show(query=\"<name>\", include_refs=true) returns definition + usages.\nplan_turn(query=\"<task>\") ranks tools/symbols/files and reveals hidden tools \u2014 the entry point for anything not listed.\ninitial_instructions() returns the full manual (tool mapping, hint codes H1\u2013H19, framework tools).\n\nALWAYS: repo resolves from CWD \u2014 never call list_repos. Pass file_pattern when scope is known. index_file after edits.\nSTALE INDEX (commit.matches=false, files_changed=N) \u2192 index_folder(path=<root>) once. Never a reason to fall back to grep.\nWORKTREE: in a linked git worktree the \"indexed\" repo is the PARENT checkout \u2014 index_folder(path=<cwd>) once. H19 in a response means the same.\nHint codes (H1\u2026) in responses are instructions: act on them.";
36
+ /** Hard cap the default field must stay under (Claude Code's default MCP instructions cap). */
37
+ export declare const HOST_INSTRUCTIONS_CHAR_CAP = 2048;
38
+ /**
39
+ * Instructions for CODESIFT_TOOL_SURFACE=single. The default field names a dozen tools that this
40
+ * surface does not register, so an agent on it would be told to call tools it cannot reach.
41
+ */
42
+ export declare const CODESIFT_INSTRUCTIONS_SINGLE = "CodeSift \u2014 code intelligence over an indexed repo.\n\nexplore(query) is the one call for \"where is X and how does it connect\": it returns the best-matching\nsymbols with full source, their direct callers and callees, and the other matches as locations.\nPrefer it over Grep/Glob/Read for finding and understanding code. A repeat of unchanged source comes\nback as a one-line pointer; repeat the call with full_source=true only if you no longer have it.\n\nsearch_text(query, file_pattern=) is for literal strings, error messages and config values.\nindex_file(path) after editing a file keeps answers current. The repo resolves from the working\ndirectory. A stale index is a reason to reindex, never to fall back to grep.";
22
43
  export declare function resolveInstructions(): string;
23
44
  //# sourceMappingURL=instructions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,qBAAqB,uwMA0EjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,2BAA2B,mhCAgBwB,CAAC;AAEjE,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C"}
1
+ {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../src/instructions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,eAAO,MAAM,qBAAqB,2zNAkFjC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,2BAA2B,mhCAgBwB,CAAC;AAEjE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,4BAA4B,6zCAcoB,CAAC;AAE9D,+FAA+F;AAC/F,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAE/C;;;GAGG;AACH,eAAO,MAAM,4BAA4B,8tBASoC,CAAC;AAE9E,wBAAgB,mBAAmB,IAAI,MAAM,CAQ5C"}