lalph 0.3.57 → 0.3.58

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.
package/dist/cli.mjs CHANGED
@@ -19546,7 +19546,7 @@ function transformOptional$1(f) {
19546
19546
  * @category Constructors
19547
19547
  * @since 4.0.0
19548
19548
  */
19549
- function omit$2() {
19549
+ function omit$3() {
19550
19550
  return new Getter(() => succeedNone);
19551
19551
  }
19552
19552
  /**
@@ -32839,6 +32839,31 @@ const pick$1 = /* @__PURE__ */ dual(2, (self, keys) => {
32839
32839
  return buildStruct(self, (k, v) => keys.includes(k) ? [k, v] : void 0);
32840
32840
  });
32841
32841
  /**
32842
+ * Creates a new struct with the specified keys removed.
32843
+ *
32844
+ * - Use to exclude sensitive or irrelevant fields from a struct.
32845
+ * - Does not mutate the input; returns a fresh object.
32846
+ * - Keys not present in the struct are silently ignored.
32847
+ *
32848
+ * **Example** (Removing a property)
32849
+ *
32850
+ * ```ts
32851
+ * import { pipe, Struct } from "effect"
32852
+ *
32853
+ * const user = { name: "Alice", age: 30, password: "secret" }
32854
+ * const safe = pipe(user, Struct.omit(["password"]))
32855
+ * console.log(safe) // { name: "Alice", age: 30 }
32856
+ * ```
32857
+ *
32858
+ * @see {@link pick} – the inverse (keep only specified keys)
32859
+ *
32860
+ * @category filtering
32861
+ * @since 2.0.0
32862
+ */
32863
+ const omit$2 = /* @__PURE__ */ dual(2, (self, keys) => {
32864
+ return buildStruct(self, (k, v) => !keys.includes(k) ? [k, v] : void 0);
32865
+ });
32866
+ /**
32842
32867
  * Wraps a plain function as a {@link Lambda} value so it can be used with
32843
32868
  * {@link map}, {@link mapPick}, and {@link mapOmit}.
32844
32869
  *
@@ -34819,7 +34844,7 @@ function withConstructorDefault(defaultValue) {
34819
34844
  * @since 4.0.0
34820
34845
  */
34821
34846
  function withDecodingDefaultKey(defaultValue, options) {
34822
- const encode = options?.encodingStrategy === "omit" ? omit$2() : passthrough$1();
34847
+ const encode = options?.encodingStrategy === "omit" ? omit$3() : passthrough$1();
34823
34848
  return (self) => {
34824
34849
  return optionalKey(toEncoded(self)).pipe(decodeTo(self, {
34825
34850
  decode: withDefault$4(defaultValue),
@@ -34861,7 +34886,7 @@ function withDecodingDefaultKey(defaultValue, options) {
34861
34886
  * @since 4.0.0
34862
34887
  */
34863
34888
  function withDecodingDefault(defaultValue, options) {
34864
- const encode = options?.encodingStrategy === "omit" ? omit$2() : passthrough$1();
34889
+ const encode = options?.encodingStrategy === "omit" ? omit$3() : passthrough$1();
34865
34890
  return (self) => {
34866
34891
  return optional$3(toEncoded(self)).pipe(decodeTo(self, {
34867
34892
  decode: withDefault$4(defaultValue),
@@ -181903,7 +181928,7 @@ var ji = Bt, Ii = Object.assign(Qe, { sync: Bt }), zi = Ut, Bi = Object.assign(e
181903
181928
  });
181904
181929
  Ze.glob = Ze;
181905
181930
  //#endregion
181906
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/ApplyPatch.js
181931
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/ApplyPatch.js
181907
181932
  /**
181908
181933
  * @since 1.0.0
181909
181934
  */
@@ -196776,7 +196801,7 @@ var StreamableHTTPClientTransport = class {
196776
196801
  }
196777
196802
  };
196778
196803
  //#endregion
196779
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/McpClient.js
196804
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/McpClient.js
196780
196805
  /**
196781
196806
  * @since 1.0.0
196782
196807
  */
@@ -196821,7 +196846,7 @@ const layer$7 = effect$1(McpClient, gen(function* () {
196821
196846
  });
196822
196847
  }));
196823
196848
  //#endregion
196824
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/ExaSearch.js
196849
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/ExaSearch.js
196825
196850
  /**
196826
196851
  * @since 1.0.0
196827
196852
  */
@@ -211771,7 +211796,7 @@ var require_lib = /* @__PURE__ */ __commonJSMin$1(((exports) => {
211771
211796
  exports.impl = impl;
211772
211797
  }));
211773
211798
  //#endregion
211774
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/WebToMarkdown.js
211799
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/WebToMarkdown.js
211775
211800
  /**
211776
211801
  * @since 1.0.0
211777
211802
  */
@@ -212535,7 +212560,7 @@ const layer$5 = effect$1(WebToMarkdown, gen(function* () {
212535
212560
  });
212536
212561
  }));
212537
212562
  //#endregion
212538
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/AgentTools.js
212563
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/AgentTools.js
212539
212564
  /**
212540
212565
  * @since 1.0.0
212541
212566
  */
@@ -212567,6 +212592,11 @@ const AgentTools = make$9(make$7("readFile", {
212567
212592
  }),
212568
212593
  success: NullOr(String$1),
212569
212594
  dependencies: [CurrentDirectory]
212595
+ }), make$7("search", {
212596
+ description: "Find information from a description",
212597
+ parameters: String$1.annotate({ identifier: "description" }),
212598
+ success: String$1,
212599
+ dependencies: [SubagentExecutor]
212570
212600
  }), make$7("writeFile", {
212571
212601
  description: "Write content to a file, creating parent directories if needed. PREFER USING applyPatch to update existing files.",
212572
212602
  parameters: Struct({
@@ -212600,7 +212630,7 @@ const AgentTools = make$9(make$7("readFile", {
212600
212630
  success: Array$1(String$1),
212601
212631
  dependencies: [CurrentDirectory]
212602
212632
  }), make$7("rg", {
212603
- description: "Search for a pattern in files using ripgrep.",
212633
+ description: "Search for a pattern in files using ripgrep. Prefer the search function unless finding something specific",
212604
212634
  parameters: Struct({
212605
212635
  pattern: String$1,
212606
212636
  glob: optional$3(String$1).annotate({ documentation: "--glob" }),
@@ -212842,7 +212872,20 @@ const AgentToolHandlersNoDeps = AgentTools.toLayer(gen(function* () {
212842
212872
  }, orDie$2),
212843
212873
  delegate: fn("AgentTools.delegate")(function* (prompt) {
212844
212874
  yield* logInfo(`Calling "delegate"`);
212845
- return yield* (yield* SubagentExecutor)(prompt);
212875
+ return yield* (yield* SubagentExecutor)(`You have been asked using the "delegate" function to complete the following task. Try to avoid using the "delegate" or "search" functions yourself unless strictly necessary:
212876
+
212877
+ ${prompt}`);
212878
+ }, orDie$2),
212879
+ search: fn("AgentTools.search")(function* (description) {
212880
+ yield* logInfo(`Calling "search"`);
212881
+ return yield* (yield* SubagentExecutor)(`You are to find the following information as fast as possible:
212882
+
212883
+ ${description}
212884
+
212885
+ Requirements:
212886
+ - DO NOT call the "search" or "delegate" functions.
212887
+ - Output a concise report with file names, line numbers, and code snippets.
212888
+ - If nothing relevant is found, say so clearly.`);
212846
212889
  }, orDie$2),
212847
212890
  taskComplete: fn("AgentTools.taskComplete")(function* (message) {
212848
212891
  yield* (yield* TaskCompleter)(message);
@@ -212857,7 +212900,7 @@ const AgentToolHandlers = AgentToolHandlersNoDeps.pipe(provide$3([layer$6, layer
212857
212900
  AgentToolHandlersNoDeps.pipe(provide$3([mock(ExaSearch)({}), mock(WebToMarkdown)({})]));
212858
212901
  var ApplyPatchError = class extends TaggedClass$1("ApplyPatchError") {};
212859
212902
  //#endregion
212860
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/TypeBuilder.js
212903
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/TypeBuilder.js
212861
212904
  const resolveDocumentation = resolveAt("documentation");
212862
212905
  const identifierPattern = /^[$A-Z_a-z][$0-9A-Z_a-z]*$/u;
212863
212906
  const Precedence = {
@@ -213130,7 +213173,7 @@ const render = (schema, options) => {
213130
213173
  return printNode({ text: documentation === void 0 ? rendered.text : `${renderJsDoc(documentation, 0, printerOptions)}${printerOptions.newLine}${rendered.text}` }, printerOptions);
213131
213174
  };
213132
213175
  //#endregion
213133
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/ToolkitRenderer.js
213176
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/ToolkitRenderer.js
213134
213177
  /**
213135
213178
  * @since 1.0.0
213136
213179
  */
@@ -213152,7 +213195,7 @@ declare function ${name}(${params}): Promise<${render(tool.successSchema)}>`);
213152
213195
  }) });
213153
213196
  };
213154
213197
  //#endregion
213155
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/AgentExecutor.js
213198
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/AgentExecutor.js
213156
213199
  /**
213157
213200
  * @since 1.0.0
213158
213201
  */
@@ -213306,7 +213349,7 @@ var QueueWriteStream = class extends Writable {
213306
213349
  }
213307
213350
  };
213308
213351
  //#endregion
213309
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/ScriptExtraction.js
213352
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/ScriptExtraction.js
213310
213353
  const stripWrappingCodeFence = (script) => {
213311
213354
  const lines = script.split(/\r?\n/);
213312
213355
  if (lines.length < 2) return script;
@@ -213331,7 +213374,7 @@ const stripWrappingCodeFence = (script) => {
213331
213374
  return lines.slice(firstNonEmpty + 1, lastNonEmpty).join(newLine);
213332
213375
  };
213333
213376
  //#endregion
213334
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/Agent.js
213377
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/Agent.js
213335
213378
  /**
213336
213379
  * @since 1.0.0
213337
213380
  */
@@ -213413,9 +213456,7 @@ ${content}
213413
213456
  let id = agentCounter++;
213414
213457
  const stream = spawn({
213415
213458
  agentId: id,
213416
- prompt: make$10(`You have been asked using the "delegate" function to complete the following task. Try to avoid using the "delegate" function yourself unless strictly necessary:
213417
-
213418
- ${prompt}`),
213459
+ prompt: make$10(prompt),
213419
213460
  system: opts.system,
213420
213461
  disableHistory: true
213421
213462
  });
@@ -213516,6 +213557,14 @@ ${prompt}`),
213516
213557
  for (const part of parts) switch (part.type) {
213517
213558
  case "text-start":
213518
213559
  if (singleToolMode) {
213560
+ if (hadReasoningDelta) {
213561
+ hadReasoningDelta = false;
213562
+ maybeSend({
213563
+ agentId,
213564
+ part: new ReasoningEnd(),
213565
+ release: true
213566
+ });
213567
+ }
213519
213568
  reasoningStarted = true;
213520
213569
  break;
213521
213570
  }
@@ -213681,9 +213730,17 @@ Javascript output:
213681
213730
  const generateSystemMulti = (toolsDts) => {
213682
213731
  return `You complete your tasks by **only writing javascript code** to interact with your environment.
213683
213732
 
213684
- - Use \`console.log\` to print any output you need.
213733
+ ${systemToolsCommon(toolsDts)}`;
213734
+ };
213735
+ const generateSystemSingle = (toolsDts) => {
213736
+ return `**YOU ONLY HAVE ACCESS TO ONE TOOL** "execute", to run javascript code to do your work.
213737
+
213738
+ ${systemToolsCommon(toolsDts)}`;
213739
+ };
213740
+ const systemToolsCommon = (toolsDts) => `- Use \`console.log\` to print any output you need.
213685
213741
  - Top level await is supported.
213686
213742
  - AVOID passing scripts into the "bash" function, and instead write javascript.
213743
+ - PREFER the "search" function over "rg" for finding information or code
213687
213744
 
213688
213745
  **When you have fully completed your task**, call the "taskComplete" function with the final output.
213689
213746
  Make sure every detail of the task is done before calling "taskComplete".
@@ -213696,23 +213753,6 @@ ${toolsDts}
213696
213753
  /** The global Fetch API available for making HTTP requests. */
213697
213754
  declare const fetch: typeof globalThis.fetch
213698
213755
  \`\`\``;
213699
- };
213700
- const generateSystemSingle = (toolsDts) => {
213701
- return `Use the "execute" tool to run javascript code to do your work.
213702
-
213703
- - Use \`console.log\` to print any output you need.
213704
- - Top level await is supported.
213705
- - AVOID passing scripts into the "bash" function, and instead write javascript.
213706
-
213707
- You have the following functions available to you:
213708
-
213709
- \`\`\`ts
213710
- ${toolsDts}
213711
-
213712
- // The global Fetch API available for making HTTP requests.
213713
- declare const fetch: typeof globalThis.fetch
213714
- \`\`\``;
213715
- };
213716
213756
  var ScriptExecutor = class extends Service$1()("clanka/Agent/ScriptExecutor") {};
213717
213757
  const SingleTools = make$9(make$7("execute", {
213718
213758
  description: "Execute javascript code and return the output",
@@ -224169,7 +224209,7 @@ const transformToolCallParams = /* @__PURE__ */ fnUntraced(function* (tools, too
224169
224209
  })));
224170
224210
  });
224171
224211
  //#endregion
224172
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/CodexAuth.js
224212
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/CodexAuth.js
224173
224213
  /**
224174
224214
  * @since 1.0.0
224175
224215
  */
@@ -224389,7 +224429,7 @@ var CodexAuth = class CodexAuth extends Service$1()("clanka/CodexAuth") {
224389
224429
  static layerClient = this.layerClientNoDeps.pipe(provide$3(CodexAuth.layer));
224390
224430
  };
224391
224431
  //#endregion
224392
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/Codex.js
224432
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/Codex.js
224393
224433
  /**
224394
224434
  * @since 1.0.0
224395
224435
  */
@@ -224405,7 +224445,11 @@ const layerClient$1 = layer$3({ apiUrl: "https://chatgpt.com/backend-api/codex"
224405
224445
  const model$1 = (model, options) => make$6("openai", model, merge$6(layer$2({
224406
224446
  model,
224407
224447
  config: {
224408
- ...options,
224448
+ ...omit$2(options ?? {}, [
224449
+ "reasoning",
224450
+ "supportsNoTools",
224451
+ "supportsAssistantPrefill"
224452
+ ]),
224409
224453
  store: false,
224410
224454
  reasoning: {
224411
224455
  effort: options?.reasoning?.effort ?? "medium",
@@ -225704,7 +225748,7 @@ const getUsageDetailNumber = (details, field) => {
225704
225748
  return typeof value === "number" ? value : void 0;
225705
225749
  };
225706
225750
  //#endregion
225707
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/CopilotAuth.js
225751
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/CopilotAuth.js
225708
225752
  /**
225709
225753
  * @since 1.0.0
225710
225754
  */
@@ -225895,7 +225939,7 @@ var GithubCopilotAuth = class GithubCopilotAuth extends Service$1()("clanka/Gith
225895
225939
  static layerClient = this.layerClientNoDeps.pipe(provide$3(GithubCopilotAuth.layer));
225896
225940
  };
225897
225941
  //#endregion
225898
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/Copilot.js
225942
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/Copilot.js
225899
225943
  /**
225900
225944
  * @since 1.0.0
225901
225945
  */
@@ -225910,7 +225954,7 @@ const layerClient = layer$1({ apiUrl: API_URL }).pipe(provide$3(GithubCopilotAut
225910
225954
  */
225911
225955
  const model = (model, options) => make$6("openai", model, merge$6(layer({
225912
225956
  model,
225913
- config: options
225957
+ config: omit$2(options ?? {}, ["supportsNoTools", "supportsAssistantPrefill"])
225914
225958
  }), AgentModelConfig.layer({
225915
225959
  supportsAssistantPrefill: options?.supportsAssistantPrefill ?? false,
225916
225960
  supportsNoTools: options?.supportsNoTools ?? false
@@ -226318,7 +226362,7 @@ Object.defineProperties(createChalk.prototype, styles);
226318
226362
  const chalk = createChalk();
226319
226363
  createChalk({ level: stderrColor ? stderrColor.level : 0 });
226320
226364
  //#endregion
226321
- //#region node_modules/.pnpm/clanka@0.1.3_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_79457680baeee14cbbf94efd52fd490b/node_modules/clanka/dist/OutputFormatter.js
226365
+ //#region node_modules/.pnpm/clanka@0.1.5_@effect+ai-openai-compat@4.0.0-beta.31_effect@4.0.0-beta.31__@effect+ai-op_ad69a76880fccfec60d68b57c67c8596/node_modules/clanka/dist/OutputFormatter.js
226322
226366
  /**
226323
226367
  * @since 1.0.0
226324
226368
  */
@@ -226433,8 +226477,8 @@ var ClankaModels = class extends Service()("lalph/ClankaModels", {
226433
226477
  lookup: fnUntraced(function* (input) {
226434
226478
  const [provider, model, reasoning] = yield* parseInput(input.split("/"));
226435
226479
  const layer = resolve(provider, model, reasoning);
226436
- if (reasoning === "low" || reasoning === "medium") return layer;
226437
- return merge$6(layer, layerSubagentModel(resolve(provider, model, "medium")));
226480
+ if (reasoning === "low") return layer;
226481
+ return merge$6(layer, layerSubagentModel(resolve(provider, model, reasoning === "medium" ? "low" : "medium")));
226438
226482
  }, unwrap$3)
226439
226483
  }) {};
226440
226484
  const resolve = (provider, model$2, reasoning) => {
@@ -235602,7 +235646,7 @@ const commandEdit = make$49("edit").pipe(withDescription("Open the selected proj
235602
235646
  const commandSource = make$49("source").pipe(withDescription("Select the issue source to use (e.g. GitHub Issues or Linear). This applies to all projects."), withHandler(() => selectIssueSource), provide(Settings.layer));
235603
235647
  //#endregion
235604
235648
  //#region package.json
235605
- var version = "0.3.57";
235649
+ var version = "0.3.58";
235606
235650
  //#endregion
235607
235651
  //#region src/commands/projects/ls.ts
235608
235652
  const commandProjectsLs = make$49("ls").pipe(withDescription("List configured projects and how they run (enabled state, concurrency, branch, git flow, review agent)."), withHandler(fnUntraced(function* () {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "lalph",
3
3
  "type": "module",
4
- "version": "0.3.57",
4
+ "version": "0.3.58",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -29,8 +29,8 @@
29
29
  "@linear/sdk": "^77.0.0",
30
30
  "@octokit/plugin-rest-endpoint-methods": "^17.0.0",
31
31
  "@octokit/types": "^16.0.0",
32
- "@typescript/native-preview": "7.0.0-dev.20260312.1",
33
- "clanka": "^0.1.3",
32
+ "@typescript/native-preview": "7.0.0-dev.20260313.1",
33
+ "clanka": "^0.1.5",
34
34
  "concurrently": "^9.2.1",
35
35
  "effect": "4.0.0-beta.31",
36
36
  "husky": "^9.1.7",
@@ -27,12 +27,14 @@ export class ClankaModels extends LayerMap.Service<ClankaModels>()(
27
27
  lookup: Effect.fnUntraced(function* (input: string) {
28
28
  const [provider, model, reasoning] = yield* parseInput(input.split("/"))
29
29
  const layer = resolve(provider, model, reasoning)
30
- if (reasoning === "low" || reasoning === "medium") {
30
+ if (reasoning === "low") {
31
31
  return layer
32
32
  }
33
33
  return Layer.merge(
34
34
  layer,
35
- Agent.layerSubagentModel(resolve(provider, model, "medium")),
35
+ Agent.layerSubagentModel(
36
+ resolve(provider, model, reasoning === "medium" ? "low" : "medium"),
37
+ ),
36
38
  )
37
39
  }, Layer.unwrap),
38
40
  },