clanka 0.5.2 → 0.6.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 (76) hide show
  1. package/dist/Acp.d.ts.map +1 -1
  2. package/dist/Acp.js +195 -16
  3. package/dist/Acp.js.map +1 -1
  4. package/dist/AcpImage.test.d.ts +2 -0
  5. package/dist/AcpImage.test.d.ts.map +1 -0
  6. package/dist/AcpImage.test.js +470 -0
  7. package/dist/AcpImage.test.js.map +1 -0
  8. package/dist/Agent.d.ts +9 -2
  9. package/dist/Agent.d.ts.map +1 -1
  10. package/dist/Agent.js +43 -6
  11. package/dist/Agent.js.map +1 -1
  12. package/dist/AgentExecutor.d.ts +27 -5
  13. package/dist/AgentExecutor.d.ts.map +1 -1
  14. package/dist/AgentExecutor.js +29 -4
  15. package/dist/AgentExecutor.js.map +1 -1
  16. package/dist/AgentExecutorImage.test.d.ts +2 -0
  17. package/dist/AgentExecutorImage.test.d.ts.map +1 -0
  18. package/dist/AgentExecutorImage.test.js +63 -0
  19. package/dist/AgentExecutorImage.test.js.map +1 -0
  20. package/dist/AgentImage.test.d.ts +2 -0
  21. package/dist/AgentImage.test.d.ts.map +1 -0
  22. package/dist/AgentImage.test.js +176 -0
  23. package/dist/AgentImage.test.js.map +1 -0
  24. package/dist/AgentTools.d.ts +25 -5
  25. package/dist/AgentTools.d.ts.map +1 -1
  26. package/dist/AgentTools.js +40 -4
  27. package/dist/AgentTools.js.map +1 -1
  28. package/dist/AgentToolsImage.test.d.ts +2 -0
  29. package/dist/AgentToolsImage.test.d.ts.map +1 -0
  30. package/dist/AgentToolsImage.test.js +158 -0
  31. package/dist/AgentToolsImage.test.js.map +1 -0
  32. package/dist/Codex.js +6 -1
  33. package/dist/Codex.js.map +1 -1
  34. package/dist/Compaction.d.ts.map +1 -1
  35. package/dist/Compaction.js +16 -1
  36. package/dist/Compaction.js.map +1 -1
  37. package/dist/CompactionImage.test.d.ts +2 -0
  38. package/dist/CompactionImage.test.d.ts.map +1 -0
  39. package/dist/CompactionImage.test.js +105 -0
  40. package/dist/CompactionImage.test.js.map +1 -0
  41. package/dist/Copilot.d.ts.map +1 -1
  42. package/dist/Copilot.js +5 -1
  43. package/dist/Copilot.js.map +1 -1
  44. package/dist/Image.d.ts +192 -0
  45. package/dist/Image.d.ts.map +1 -0
  46. package/dist/Image.js +586 -0
  47. package/dist/Image.js.map +1 -0
  48. package/dist/Image.test.d.ts +2 -0
  49. package/dist/Image.test.d.ts.map +1 -0
  50. package/dist/Image.test.js +142 -0
  51. package/dist/Image.test.js.map +1 -0
  52. package/dist/fixtures/TestImages.d.ts +73 -0
  53. package/dist/fixtures/TestImages.d.ts.map +1 -0
  54. package/dist/fixtures/TestImages.js +263 -0
  55. package/dist/fixtures/TestImages.js.map +1 -0
  56. package/dist/index.d.ts +4 -0
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +4 -0
  59. package/dist/index.js.map +1 -1
  60. package/package.json +2 -1
  61. package/src/Acp.ts +274 -21
  62. package/src/AcpImage.test.ts +676 -0
  63. package/src/Agent.ts +69 -7
  64. package/src/AgentExecutor.ts +51 -3
  65. package/src/AgentExecutorImage.test.ts +103 -0
  66. package/src/AgentImage.test.ts +295 -0
  67. package/src/AgentTools.ts +78 -7
  68. package/src/AgentToolsImage.test.ts +302 -0
  69. package/src/Codex.ts +6 -1
  70. package/src/Compaction.ts +16 -1
  71. package/src/CompactionImage.test.ts +142 -0
  72. package/src/Copilot.ts +5 -1
  73. package/src/Image.test.ts +220 -0
  74. package/src/Image.ts +704 -0
  75. package/src/fixtures/TestImages.ts +287 -0
  76. package/src/index.ts +5 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AgentToolsImage.test.js","sourceRoot":"","sources":["../src/AgentToolsImage.test.ts"],"names":[],"mappings":"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"}
package/dist/Codex.js CHANGED
@@ -27,7 +27,11 @@ export const modelWebSocket = (model, options) => Model.make("openai", model, la
27
27
  const layerModel = (model, options) => OpenAiLanguageModel.layer({
28
28
  model,
29
29
  config: {
30
- ...Struct.omit(options ?? {}, ["reasoning", "systemPromptTransform"]),
30
+ ...Struct.omit(options ?? {}, [
31
+ "reasoning",
32
+ "systemPromptTransform",
33
+ "supportsImages",
34
+ ]),
31
35
  store: false,
32
36
  reasoning: {
33
37
  effort: "medium",
@@ -39,5 +43,6 @@ const layerModel = (model, options) => OpenAiLanguageModel.layer({
39
43
  systemPromptTransform: (system, effect) => OpenAiLanguageModel.withConfigOverride(effect, {
40
44
  instructions: system,
41
45
  }),
46
+ supportsImages: options?.supportsImages,
42
47
  })));
43
48
  //# sourceMappingURL=Codex.js.map
package/dist/Codex.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Codex.js","sourceRoot":"","sources":["../src/Codex.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AAKjD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC;IAC5C,MAAM,EAAE,uCAAuC;CAChD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAA;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,KAAgD,EAChD,OAEa,EAKb,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,KAAgD,EAChD,OAEa,EAOb,EAAE,CACF,KAAK,CAAC,IAAI,CACR,QAAQ,EACR,KAAK,EACL,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAC1D,CACF,CAAA;AAEH,MAAM,UAAU,GAAG,CACjB,KAAgD,EAChD,OAEa,EACb,EAAE,CACF,mBAAmB,CAAC,KAAK,CAAC;IACxB,KAAK;IACL,MAAM,EAAE;QACN,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;QACrE,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,MAAM;YACf,GAAI,OAAO,EAAE,SAAiB;SAC/B;KACF;CACF,CAAC,CAAC,IAAI,CACL,KAAK,CAAC,KAAK,CACT,gBAAgB,CAAC,KAAK,CAAC;IACrB,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CACxC,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,EAAE;QAC7C,YAAY,EAAE,MAAM;KACrB,CAAC;CACL,CAAC,CAGH,CACF,CAAA"}
1
+ {"version":3,"file":"Codex.js","sourceRoot":"","sources":["../src/Codex.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACrE,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AAKjD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC;IAC5C,MAAM,EAAE,uCAAuC;CAChD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAA;AAE7C;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,KAAgD,EAChD,OAEa,EAKb,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAA;AAE5D;;;GAGG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,KAAgD,EAChD,OAEa,EAOb,EAAE,CACF,KAAK,CAAC,IAAI,CACR,QAAQ,EACR,KAAK,EACL,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,IAAI,CAC7B,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC,CAC1D,CACF,CAAA;AAEH,MAAM,UAAU,GAAG,CACjB,KAAgD,EAChD,OAEa,EACb,EAAE,CACF,mBAAmB,CAAC,KAAK,CAAC;IACxB,KAAK;IACL,MAAM,EAAE;QACN,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;YAC5B,WAAW;YACX,uBAAuB;YACvB,gBAAgB;SACjB,CAAC;QACF,KAAK,EAAE,KAAK;QACZ,SAAS,EAAE;YACT,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,MAAM;YACf,GAAI,OAAO,EAAE,SAAiB;SAC/B;KACF;CACF,CAAC,CAAC,IAAI,CACL,KAAK,CAAC,KAAK,CACT,gBAAgB,CAAC,KAAK,CAAC;IACrB,qBAAqB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,CACxC,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,EAAE;QAC7C,YAAY,EAAE,MAAM;KACrB,CAAC;IACJ,cAAc,EAAE,OAAO,EAAE,cAAc;CACxC,CAAC,CAGH,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Compaction.d.ts","sourceRoot":"","sources":["../src/Compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Compaction.d.ts","sourceRoot":"","sources":["../src/Compaction.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ import * as Stream from "effect/Stream";
22
22
  import * as AiError from "effect/unstable/ai/AiError";
23
23
  import * as LanguageModel from "effect/unstable/ai/LanguageModel";
24
24
  import * as Prompt from "effect/unstable/ai/Prompt";
25
+ import * as Image from "./Image.js";
25
26
  /**
26
27
  * @since 1.0.0
27
28
  * @category Configuration
@@ -392,8 +393,22 @@ const renderMessage = (message) => {
392
393
  case "system":
393
394
  return "";
394
395
  case "user": {
396
+ // Image bytes never reach the summarizer: stub them in place.
395
397
  const text = message.content
396
- .flatMap((part) => (part.type === "text" ? [part.text] : []))
398
+ .flatMap((part) => {
399
+ switch (part.type) {
400
+ case "text":
401
+ return [part.text];
402
+ case "file":
403
+ return [
404
+ part.mediaType.startsWith("image/")
405
+ ? Image.omittedText(part.fileName)
406
+ : `[file: ${part.fileName ?? part.mediaType} omitted]`,
407
+ ];
408
+ default:
409
+ return [];
410
+ }
411
+ })
397
412
  .join("\n");
398
413
  return `[user]\n${text}`;
399
414
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Compaction.js","sourceRoot":"","sources":["../src/Compaction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Compaction.js","sourceRoot":"","sources":["../src/Compaction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=CompactionImage.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactionImage.test.d.ts","sourceRoot":"","sources":["../src/CompactionImage.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,105 @@
1
+ import { assert, describe, it } from "@effect/vitest";
2
+ import * as Effect from "effect/Effect";
3
+ import * as Encoding from "effect/Encoding";
4
+ import * as Layer from "effect/Layer";
5
+ import * as Option from "effect/Option";
6
+ import * as Stream from "effect/Stream";
7
+ import * as LanguageModel from "effect/unstable/ai/LanguageModel";
8
+ import * as Prompt from "effect/unstable/ai/Prompt";
9
+ import * as Compaction from "./Compaction.js";
10
+ import { tinyPng } from "./fixtures/TestImages.js";
11
+ const base64 = Encoding.encodeBase64(tinyPng);
12
+ const user = (text) => Prompt.makeMessage("user", {
13
+ content: [Prompt.makePart("text", { text })],
14
+ });
15
+ const userWithImage = (text, fileName, data) => Prompt.makeMessage("user", {
16
+ content: [
17
+ Prompt.makePart("text", { text }),
18
+ Prompt.makePart("file", { mediaType: "image/png", fileName, data }),
19
+ ],
20
+ });
21
+ const assistantText = (text) => Prompt.makeMessage("assistant", {
22
+ content: [Prompt.makePart("text", { text })],
23
+ });
24
+ const system = Prompt.makeMessage("system", { content: "You are a test." });
25
+ const promptJson = (prompt) => JSON.stringify(prompt.content);
26
+ const hasFileParts = (prompt) => prompt.content.some((message) => message.role === "user" &&
27
+ message.content.some((part) => part.type === "file"));
28
+ describe("Compaction.compact with images", () => {
29
+ it.effect("never sends image parts to the summarizer", () => Effect.gen(function* () {
30
+ const summarizerPrompts = [];
31
+ const languageModel = yield* LanguageModel.make({
32
+ generateText: () => Effect.succeed([]),
33
+ streamText: (options) => {
34
+ summarizerPrompts.push(options.prompt);
35
+ return Stream.fromIterable([
36
+ { type: "text-start", id: "s" },
37
+ { type: "text-delta", id: "s", delta: "SUMMARY" },
38
+ { type: "text-end", id: "s" },
39
+ ]);
40
+ },
41
+ });
42
+ // Old image turn to summarize, then a fat text tail so the cut lands
43
+ // after the image.
44
+ const filler = "tail ".repeat(3_000);
45
+ const history = Prompt.fromMessages([
46
+ system,
47
+ userWithImage("look at this", "shot.png", tinyPng),
48
+ Prompt.makeMessage("user", {
49
+ content: [
50
+ Prompt.makePart("file", { mediaType: "image/png", data: base64 }),
51
+ ],
52
+ }),
53
+ assistantText("It is a red rectangle."),
54
+ user("now the next thing"),
55
+ assistantText(filler),
56
+ user("and again"),
57
+ assistantText(filler),
58
+ ]);
59
+ const result = yield* Compaction.compact({
60
+ prompt: history,
61
+ reason: "threshold",
62
+ }).pipe(Effect.provide(Layer.mergeAll(Layer.succeed(LanguageModel.LanguageModel, languageModel), Compaction.CompactionConfig.layer({ keepRecentTokens: 2_000 }))));
63
+ const compacted = Option.getOrThrow(result);
64
+ assert.strictEqual(summarizerPrompts.length, 1);
65
+ const sent = promptJson(summarizerPrompts[0]);
66
+ assert.notInclude(sent, base64);
67
+ assert.isFalse(hasFileParts(summarizerPrompts[0]));
68
+ assert.include(sent, "[image: shot.png omitted]");
69
+ assert.include(sent, "[image: unnamed omitted]");
70
+ assert.include(sent, "look at this");
71
+ // The rewritten prompt carries the summary and no stale image bytes
72
+ // from the summarized side.
73
+ const rewritten = promptJson(compacted.prompt);
74
+ assert.include(rewritten, "SUMMARY");
75
+ assert.notInclude(rewritten, base64);
76
+ }));
77
+ it.effect("keeps image parts in the kept tail", () => Effect.gen(function* () {
78
+ const languageModel = yield* LanguageModel.make({
79
+ generateText: () => Effect.succeed([]),
80
+ streamText: () => Stream.fromIterable([
81
+ { type: "text-start", id: "s" },
82
+ { type: "text-delta", id: "s", delta: "SUMMARY" },
83
+ { type: "text-end", id: "s" },
84
+ ]),
85
+ });
86
+ const filler = "old ".repeat(3_000);
87
+ const history = Prompt.fromMessages([
88
+ system,
89
+ user("start"),
90
+ assistantText(filler),
91
+ user("more"),
92
+ assistantText(filler),
93
+ // Recent image turn that must survive compaction verbatim.
94
+ userWithImage("latest screenshot", "latest.png", tinyPng),
95
+ ]);
96
+ const result = yield* Compaction.compact({
97
+ prompt: history,
98
+ reason: "threshold",
99
+ }).pipe(Effect.provide(Layer.mergeAll(Layer.succeed(LanguageModel.LanguageModel, languageModel), Compaction.CompactionConfig.layer({ keepRecentTokens: 500 }))));
100
+ const compacted = Option.getOrThrow(result);
101
+ assert.isTrue(hasFileParts(compacted.prompt));
102
+ assert.include(promptJson(compacted.prompt), "latest screenshot");
103
+ }));
104
+ });
105
+ //# sourceMappingURL=CompactionImage.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompactionImage.test.js","sourceRoot":"","sources":["../src/CompactionImage.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,aAAa,MAAM,kCAAkC,CAAA;AACjE,OAAO,KAAK,MAAM,MAAM,2BAA2B,CAAA;AACnD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAA;AAElD,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;AAE7C,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAC5B,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;IACzB,OAAO,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;CAC7C,CAAC,CAAA;AAEJ,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,QAAgB,EAAE,IAAgB,EAAE,EAAE,CACzE,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;IACzB,OAAO,EAAE;QACP,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC;QACjC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;KACpE;CACF,CAAC,CAAA;AAEJ,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE,CACrC,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE;IAC9B,OAAO,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;CAC7C,CAAC,CAAA;AAEJ,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAA;AAE3E,MAAM,UAAU,GAAG,CAAC,MAAqB,EAAU,EAAE,CACnD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;AAEhC,MAAM,YAAY,GAAG,CAAC,MAAqB,EAAW,EAAE,CACtD,MAAM,CAAC,OAAO,CAAC,IAAI,CACjB,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,IAAI,KAAK,MAAM;IACvB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,CACvD,CAAA;AAEH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;IAC9C,EAAE,CAAC,MAAM,CAAC,2CAA2C,EAAE,GAAG,EAAE,CAC1D,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,iBAAiB,GAAyB,EAAE,CAAA;QAClD,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9C,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,UAAU,EAAE,CAAC,OAAO,EAAE,EAAE;gBACtB,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBACtC,OAAO,MAAM,CAAC,YAAY,CAAC;oBACzB,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE;oBAC/B,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE;oBACjD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE;iBAC9B,CAAC,CAAA;YACJ,CAAC;SACF,CAAC,CAAA;QACF,qEAAqE;QACrE,mBAAmB;QACnB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC;YAClC,MAAM;YACN,aAAa,CAAC,cAAc,EAAE,UAAU,EAAE,OAAO,CAAC;YAClD,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;gBACzB,OAAO,EAAE;oBACP,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;iBAClE;aACF,CAAC;YACF,aAAa,CAAC,wBAAwB,CAAC;YACvC,IAAI,CAAC,oBAAoB,CAAC;YAC1B,aAAa,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,WAAW,CAAC;YACjB,aAAa,CAAC,MAAM,CAAC;SACtB,CAAC,CAAA;QAEF,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;YACvC,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CACZ,KAAK,CAAC,QAAQ,CACZ,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,CAAC,EACzD,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAC/D,CACF,CACF,CAAA;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC3C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;QAC/C,MAAM,IAAI,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAE,CAAC,CAAA;QAC9C,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QAC/B,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC,CAAE,CAAC,CAAC,CAAA;QACnD,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,2BAA2B,CAAC,CAAA;QACjD,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,0BAA0B,CAAC,CAAA;QAChD,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,CAAC,CAAA;QAEpC,oEAAoE;QACpE,4BAA4B;QAC5B,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;QAC9C,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;QACpC,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC,CAAC,CACH,CAAA;IAED,EAAE,CAAC,MAAM,CAAC,oCAAoC,EAAE,GAAG,EAAE,CACnD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC;QAClB,MAAM,aAAa,GAAG,KAAK,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC;YAC9C,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,UAAU,EAAE,GAAG,EAAE,CACf,MAAM,CAAC,YAAY,CAAC;gBAClB,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE;gBAC/B,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE;gBACjD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE;aAC9B,CAAC;SACL,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACnC,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC;YAClC,MAAM;YACN,IAAI,CAAC,OAAO,CAAC;YACb,aAAa,CAAC,MAAM,CAAC;YACrB,IAAI,CAAC,MAAM,CAAC;YACZ,aAAa,CAAC,MAAM,CAAC;YACrB,2DAA2D;YAC3D,aAAa,CAAC,mBAAmB,EAAE,YAAY,EAAE,OAAO,CAAC;SAC1D,CAAC,CAAA;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC;YACvC,MAAM,EAAE,OAAO;YACf,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC,IAAI,CACL,MAAM,CAAC,OAAO,CACZ,KAAK,CAAC,QAAQ,CACZ,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,EAAE,aAAa,CAAC,EACzD,UAAU,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAC7D,CACF,CACF,CAAA;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAC3C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;QAC7C,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAC,CAAA;IACnE,CAAC,CAAC,CACH,CAAA;AACH,CAAC,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"Copilot.d.ts","sourceRoot":"","sources":["../src/Copilot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AACjD,OAAO,KAAK,KAAK,aAAa,MAAM,kCAAkC,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,WAAW,8NAE6B,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,KAAK,UACT,MAAM,YAET,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,OAAO,gBAAgB,CAAC,OAAO,CAAC,GACzE,SAAS,KACZ,KAAK,CAAC,KAAK,CACZ,QAAQ,EACR,aAAa,CAAC,aAAa,EAC3B,YAAY,CAAC,YAAY,CAoBxB,CAAA"}
1
+ {"version":3,"file":"Copilot.d.ts","sourceRoot":"","sources":["../src/Copilot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAE7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AACjD,OAAO,KAAK,KAAK,aAAa,MAAM,kCAAkC,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,WAAW,8NAE6B,CAAA;AAErD;;;GAGG;AACH,eAAO,MAAM,KAAK,UACT,MAAM,YAET,CAAC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,OAAO,gBAAgB,CAAC,OAAO,CAAC,GACzE,SAAS,KACZ,KAAK,CAAC,KAAK,CACZ,QAAQ,EACR,aAAa,CAAC,aAAa,EAC3B,YAAY,CAAC,YAAY,CAwBxB,CAAA"}
package/dist/Copilot.js CHANGED
@@ -21,9 +21,13 @@ export const layerClient = OpenAiClient.layer({
21
21
  */
22
22
  export const model = (model, options) => Model.make("openai", model, Layer.mergeAll(OpenAiLanguageModel.layer({
23
23
  model,
24
- config: Struct.omit(options ?? {}, ["systemPromptTransform"]),
24
+ config: Struct.omit(options ?? {}, [
25
+ "systemPromptTransform",
26
+ "supportsImages",
27
+ ]),
25
28
  }), AgentModelConfig.layer({
26
29
  systemPromptTransform: options?.systemPromptTransform,
30
+ supportsImages: options?.supportsImages,
27
31
  }),
28
32
  // Cap compaction summaries; Copilot honours max_output_tokens.
29
33
  Layer.succeed(Compaction.SummarizerTransform, (effect) => OpenAiLanguageModel.withConfigOverride(effect, {
@@ -1 +1 @@
1
- {"version":3,"file":"Copilot.js","sourceRoot":"","sources":["../src/Copilot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AAGjD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC;IAC5C,MAAM,EAAE,OAAO;CAChB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAA;AAErD;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,KAAa,EACb,OAEa,EAKb,EAAE,CACF,KAAK,CAAC,IAAI,CACR,QAAQ,EACR,KAAK,EACL,KAAK,CAAC,QAAQ,CACZ,mBAAmB,CAAC,KAAK,CAAC;IACxB,KAAK;IACL,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC;CAC9D,CAAC,EACF,gBAAgB,CAAC,KAAK,CAAC;IACrB,qBAAqB,EAAE,OAAO,EAAE,qBAAqB;CACtD,CAAC;AACF,+DAA+D;AAC/D,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CACvD,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7C,iBAAiB,EAAE,UAAU,CAAC,yBAAyB;CACxD,CAAC,CACH,CACF,CACF,CAAA"}
1
+ {"version":3,"file":"Copilot.js","sourceRoot":"","sources":["../src/Copilot.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAA;AAC5E,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAC7C,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAC7C,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAA;AAGjD;;;GAGG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC;IAC5C,MAAM,EAAE,OAAO;CAChB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC,CAAA;AAErD;;;GAGG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,KAAa,EACb,OAEa,EAKb,EAAE,CACF,KAAK,CAAC,IAAI,CACR,QAAQ,EACR,KAAK,EACL,KAAK,CAAC,QAAQ,CACZ,mBAAmB,CAAC,KAAK,CAAC;IACxB,KAAK;IACL,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;QACjC,uBAAuB;QACvB,gBAAgB;KACjB,CAAC;CACH,CAAC,EACF,gBAAgB,CAAC,KAAK,CAAC;IACrB,qBAAqB,EAAE,OAAO,EAAE,qBAAqB;IACrD,cAAc,EAAE,OAAO,EAAE,cAAc;CACxC,CAAC;AACF,+DAA+D;AAC/D,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,MAAM,EAAE,EAAE,CACvD,mBAAmB,CAAC,kBAAkB,CAAC,MAAM,EAAE;IAC7C,iBAAiB,EAAE,UAAU,CAAC,yBAAyB;CACxD,CAAC,CACH,CACF,CACF,CAAA"}
@@ -0,0 +1,192 @@
1
+ import * as Effect from "effect/Effect";
2
+ import type * as FileSystem from "effect/FileSystem";
3
+ import * as Option from "effect/Option";
4
+ import * as Schema from "effect/Schema";
5
+ import * as Stream from "effect/Stream";
6
+ import type * as AiError from "effect/unstable/ai/AiError";
7
+ import * as Prompt from "effect/unstable/ai/Prompt";
8
+ /**
9
+ * @since 1.0.0
10
+ * @category Models
11
+ */
12
+ export declare const ImageMediaType: Schema.Literals<readonly ["image/png", "image/jpeg", "image/gif", "image/webp"]>;
13
+ /**
14
+ * @since 1.0.0
15
+ * @category Models
16
+ */
17
+ export type ImageMediaType = typeof ImageMediaType.Type;
18
+ /**
19
+ * @since 1.0.0
20
+ * @category Models
21
+ */
22
+ export interface ImageData {
23
+ readonly data: Uint8Array;
24
+ readonly mediaType: ImageMediaType;
25
+ }
26
+ /**
27
+ * @since 1.0.0
28
+ * @category Models
29
+ */
30
+ export interface Limits {
31
+ readonly maxDimension: number;
32
+ readonly maxBytes: number;
33
+ }
34
+ declare const ImageError_base: Schema.Class<ImageError, Schema.TaggedStruct<"ImageError", {
35
+ readonly reason: Schema.Literals<readonly ["TooLarge", "Decode"]>;
36
+ readonly message: Schema.String;
37
+ }>, import("effect/Cause").YieldableError>;
38
+ /**
39
+ * @since 1.0.0
40
+ * @category Errors
41
+ */
42
+ export declare class ImageError extends ImageError_base {
43
+ }
44
+ /**
45
+ * Maximum width and height, in pixels.
46
+ *
47
+ * @since 1.0.0
48
+ * @category Limits
49
+ */
50
+ export declare const maxDimension = 2000;
51
+ /**
52
+ * Maximum size of the base64-encoded image, in bytes.
53
+ *
54
+ * @since 1.0.0
55
+ * @category Limits
56
+ */
57
+ export declare const maxBytes: number;
58
+ /**
59
+ * Maximum encoded input size before decoding.
60
+ * @since 1.0.0
61
+ * @category Limits
62
+ */
63
+ export declare const maxInputBytes: number;
64
+ /**
65
+ * Maximum declared canvas or frame area before allocating decoder buffers.
66
+ * @since 1.0.0
67
+ * @category Limits
68
+ */
69
+ export declare const maxInputPixels = 50000000;
70
+ /**
71
+ * Stat first, then bound the actual read independently of file growth.
72
+ * @since 1.0.0
73
+ * @category Input
74
+ */
75
+ export declare const readBoundedFile: (fs: FileSystem.FileSystem, path: string) => Effect.Effect<Uint8Array<ArrayBuffer>, ImageError | import("effect/PlatformError").PlatformError, never>;
76
+ /**
77
+ * Collect image input, rejecting overflow before retaining the next chunk.
78
+ * @since 1.0.0
79
+ * @category Input
80
+ */
81
+ export declare const collectInput: <E, R, E2>(stream: Stream.Stream<Uint8Array<ArrayBufferLike>, E, R>, tooLarge: () => E2) => Effect.Effect<Uint8Array<ArrayBuffer>, E | E2, R>;
82
+ /**
83
+ * Media type from a file extension. SVG and every non-raster extension is
84
+ * `None`, so those files keep being read as text.
85
+ *
86
+ * @since 1.0.0
87
+ * @category Detection
88
+ */
89
+ export declare const mediaTypeFromPath: (path: string) => Option.Option<ImageMediaType>;
90
+ /**
91
+ * Media type from the magic bytes at the start of the data.
92
+ *
93
+ * @since 1.0.0
94
+ * @category Detection
95
+ */
96
+ export declare const mediaTypeFromBytes: (bytes: Uint8Array) => Option.Option<ImageMediaType>;
97
+ /**
98
+ * Read conservative dimension bounds without decoding pixels, including inner
99
+ * frames in container formats. Truncated or malformed headers are rejected
100
+ * before they can reach Photon; over-budget dimensions stop parsing early.
101
+ * @since 1.0.0
102
+ * @category Detection
103
+ */
104
+ export declare const dimensions: (bytes: Uint8Array) => Option.Option<{
105
+ width: number;
106
+ height: number;
107
+ }>;
108
+ /**
109
+ * Whether a declared mime type is one of the supported image types.
110
+ *
111
+ * @since 1.0.0
112
+ * @category Detection
113
+ */
114
+ export declare const isImageMediaType: <I>(input: I) => input is I & ("image/gif" | "image/jpeg" | "image/png" | "image/webp");
115
+ /**
116
+ * Bring an image inside the limits.
117
+ *
118
+ * Images already within `limits` are returned unchanged, byte for byte.
119
+ * Otherwise the image is decoded, scaled down to fit the dimension cap with
120
+ * Lanczos3, and re-encoded as PNG, then as JPEG at decreasing quality. If it
121
+ * is still over the byte cap it is shrunk by 25% and the encoding is retried,
122
+ * up to a fixed number of rounds, after which it is rejected.
123
+ *
124
+ * `limits` exists so tests can exercise the reject path with a small fixture.
125
+ * It is not a user-facing setting.
126
+ *
127
+ * @since 1.0.0
128
+ * @category Resize
129
+ */
130
+ export declare const prepare: (options: {
131
+ readonly data: Uint8Array;
132
+ readonly mediaType: ImageMediaType;
133
+ readonly limits?: Limits | undefined;
134
+ }) => Effect.Effect<ImageData, ImageError, never>;
135
+ /**
136
+ * The text left in place of a stripped image part.
137
+ *
138
+ * @since 1.0.0
139
+ * @category Prompt
140
+ */
141
+ export declare const omittedText: (fileName: string | undefined) => string;
142
+ /**
143
+ * Whether a prompt part is an image `file` part.
144
+ *
145
+ * @since 1.0.0
146
+ * @category Prompt
147
+ */
148
+ export declare const isImagePart: (part: Prompt.Part) => part is Prompt.FilePart;
149
+ /**
150
+ * Whether any user message in the prompt carries an image part.
151
+ *
152
+ * @since 1.0.0
153
+ * @category Prompt
154
+ */
155
+ export declare const hasImages: (prompt: Prompt.Prompt) => boolean;
156
+ /**
157
+ * Replace every image part with an `omittedText` text part, so a model that
158
+ * cannot take images still sees that one was there.
159
+ *
160
+ * @since 1.0.0
161
+ * @category Prompt
162
+ */
163
+ export declare const stripImages: (prompt: Prompt.Prompt) => Prompt.Prompt;
164
+ /**
165
+ * Build a user message carrying image parts.
166
+ *
167
+ * @since 1.0.0
168
+ * @category Prompt
169
+ */
170
+ export declare const userMessage: (images: ReadonlyArray<{
171
+ readonly fileName: string;
172
+ readonly mediaType: ImageMediaType;
173
+ readonly data: Uint8Array;
174
+ }>) => Prompt.UserMessage;
175
+ /**
176
+ * Bytes of a `file` part, whichever representation it carries. Byte arrays
177
+ * come back from persistence as base64 strings.
178
+ *
179
+ * @since 1.0.0
180
+ * @category Prompt
181
+ */
182
+ export declare const partBytes: (part: Prompt.FilePart) => Option.Option<Uint8Array>;
183
+ /**
184
+ * Whether a provider error looks like a rejection of image input, so the
185
+ * turn can be retried once without the images.
186
+ *
187
+ * @since 1.0.0
188
+ * @category Provider errors
189
+ */
190
+ export declare const isUnsupportedImageError: (error: AiError.AiError) => boolean;
191
+ export {};
192
+ //# sourceMappingURL=Image.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Image.d.ts","sourceRoot":"","sources":["../src/Image.ts"],"names":[],"mappings":"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"}