@oxygen-agent/cli 1.982.3 → 1.1003.12

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 (127) hide show
  1. package/README.md +1 -1
  2. package/dist/admin-primary-providers-render.d.ts +0 -2
  3. package/dist/admin-primary-providers-render.js +1 -1
  4. package/dist/browser-login.js +1 -4
  5. package/dist/command-manifest.d.ts +3 -2
  6. package/dist/command-manifest.js +10 -0
  7. package/dist/credentials.d.ts +1 -1
  8. package/dist/functions-commands.js +27 -7
  9. package/dist/help.d.ts +29 -0
  10. package/dist/help.js +139 -0
  11. package/dist/index.js +1875 -164
  12. package/dist/knowledge-mirror.d.ts +2 -2
  13. package/dist/runtime.d.ts +0 -15
  14. package/dist/runtime.js +1 -1
  15. package/dist/session.d.ts +4 -3
  16. package/dist/skills.d.ts +8 -7
  17. package/dist/skills.js +24 -10
  18. package/dist/transcript.d.ts +2 -1
  19. package/dist/ugc-commands.d.ts +3 -6
  20. package/dist/ugc-commands.js +2 -1200
  21. package/dist/util.d.ts +1 -1
  22. package/dist/util.js +1 -3
  23. package/node_modules/@oxygen/cli-ugc/dist/commands.d.ts +3 -0
  24. package/node_modules/@oxygen/cli-ugc/dist/commands.js +1178 -0
  25. package/node_modules/@oxygen/cli-ugc/dist/field-parser.d.ts +7 -0
  26. package/node_modules/@oxygen/cli-ugc/dist/field-parser.js +25 -0
  27. package/node_modules/@oxygen/cli-ugc/dist/index.d.ts +14 -0
  28. package/node_modules/@oxygen/cli-ugc/dist/index.js +5 -0
  29. package/node_modules/@oxygen/cli-ugc/package.json +15 -0
  30. package/node_modules/@oxygen/formula/dist/coerce.d.ts +10 -0
  31. package/node_modules/@oxygen/formula/dist/coerce.js +10 -0
  32. package/node_modules/@oxygen/formula/dist/expression.js +14 -1
  33. package/node_modules/@oxygen/formula/dist/formula-functions.js +136 -1
  34. package/node_modules/@oxygen/formula/dist/hash.d.ts +19 -0
  35. package/node_modules/@oxygen/formula/dist/hash.js +199 -0
  36. package/node_modules/@oxygen/formula/dist/index.d.ts +1 -0
  37. package/node_modules/@oxygen/formula/dist/index.js +1 -0
  38. package/node_modules/@oxygen/formula/dist/value-cleaners.d.ts +74 -0
  39. package/node_modules/@oxygen/formula/dist/value-cleaners.js +358 -0
  40. package/node_modules/@oxygen/shared/dist/array-utils.d.ts +5 -0
  41. package/node_modules/@oxygen/shared/dist/array-utils.js +11 -0
  42. package/node_modules/@oxygen/shared/dist/billing.d.ts +103 -47
  43. package/node_modules/@oxygen/shared/dist/billing.js +150 -40
  44. package/node_modules/@oxygen/shared/dist/capability-discovery.d.ts +17 -0
  45. package/node_modules/@oxygen/shared/dist/capability-discovery.js +114 -16
  46. package/node_modules/@oxygen/shared/dist/column-autofill.d.ts +52 -0
  47. package/node_modules/@oxygen/shared/dist/column-autofill.js +80 -0
  48. package/node_modules/@oxygen/shared/dist/column-output-fields.js +14 -10
  49. package/node_modules/@oxygen/shared/dist/company-enrichment-fields.d.ts +108 -0
  50. package/node_modules/@oxygen/shared/dist/company-enrichment-fields.js +545 -0
  51. package/node_modules/@oxygen/shared/dist/copilot-playbooks.d.ts +18 -0
  52. package/node_modules/@oxygen/shared/dist/copilot-playbooks.js +43 -0
  53. package/node_modules/@oxygen/shared/dist/copilot-skills.d.ts +15 -0
  54. package/node_modules/@oxygen/shared/dist/copilot-skills.generated.d.ts +31 -0
  55. package/node_modules/@oxygen/shared/dist/copilot-skills.generated.js +41 -0
  56. package/node_modules/@oxygen/shared/dist/copilot-skills.js +6 -0
  57. package/node_modules/@oxygen/shared/dist/deploy-env.d.ts +74 -0
  58. package/node_modules/@oxygen/shared/dist/deploy-env.js +82 -0
  59. package/node_modules/@oxygen/shared/dist/dnc-rules.d.ts +130 -0
  60. package/node_modules/@oxygen/shared/dist/dnc-rules.js +221 -0
  61. package/node_modules/@oxygen/shared/dist/enrichment-intents.d.ts +103 -0
  62. package/node_modules/@oxygen/shared/dist/enrichment-intents.js +819 -0
  63. package/node_modules/@oxygen/shared/dist/error-message.d.ts +1 -0
  64. package/node_modules/@oxygen/shared/dist/error-message.js +3 -0
  65. package/node_modules/@oxygen/shared/dist/error-redaction.js +1 -3
  66. package/node_modules/@oxygen/shared/dist/external-write-policy.d.ts +33 -0
  67. package/node_modules/@oxygen/shared/dist/external-write-policy.js +68 -0
  68. package/node_modules/@oxygen/shared/dist/format-percent.d.ts +8 -0
  69. package/node_modules/@oxygen/shared/dist/format-percent.js +13 -0
  70. package/node_modules/@oxygen/shared/dist/freemail-domains.d.ts +81 -0
  71. package/node_modules/@oxygen/shared/dist/freemail-domains.js +157 -0
  72. package/node_modules/@oxygen/shared/dist/future-signup-lifecycle-projection.d.ts +1 -0
  73. package/node_modules/@oxygen/shared/dist/future-signup-lifecycle-projection.js +1 -1
  74. package/node_modules/@oxygen/shared/dist/index.d.ts +14 -0
  75. package/node_modules/@oxygen/shared/dist/index.js +14 -0
  76. package/node_modules/@oxygen/shared/dist/json-path.js +1 -3
  77. package/node_modules/@oxygen/shared/dist/knowledge-bases.js +1 -3
  78. package/node_modules/@oxygen/shared/dist/knowledge-bootstrap.d.ts +17 -2
  79. package/node_modules/@oxygen/shared/dist/knowledge-bootstrap.js +28 -6
  80. package/node_modules/@oxygen/shared/dist/langfuse.d.ts +12 -1
  81. package/node_modules/@oxygen/shared/dist/langfuse.js +57 -8
  82. package/node_modules/@oxygen/shared/dist/linkedin-countries.d.ts +32 -0
  83. package/node_modules/@oxygen/shared/dist/linkedin-countries.js +359 -0
  84. package/node_modules/@oxygen/shared/dist/log-sink-selector.d.ts +39 -0
  85. package/node_modules/@oxygen/shared/dist/log-sink-selector.js +56 -0
  86. package/node_modules/@oxygen/shared/dist/log.d.ts +1 -0
  87. package/node_modules/@oxygen/shared/dist/log.js +6 -1
  88. package/node_modules/@oxygen/shared/dist/object-storage.d.ts +17 -0
  89. package/node_modules/@oxygen/shared/dist/object-storage.js +21 -0
  90. package/node_modules/@oxygen/shared/dist/otlp-log-sink.d.ts +54 -0
  91. package/node_modules/@oxygen/shared/dist/otlp-log-sink.js +213 -0
  92. package/node_modules/@oxygen/shared/dist/plan-capabilities.js +1 -0
  93. package/node_modules/@oxygen/shared/dist/plan-limits.d.ts +23 -22
  94. package/node_modules/@oxygen/shared/dist/plan-limits.js +45 -18
  95. package/node_modules/@oxygen/shared/dist/pricing-sheet.d.ts +48 -41
  96. package/node_modules/@oxygen/shared/dist/pricing-sheet.js +36 -25
  97. package/node_modules/@oxygen/shared/dist/pricing-snapshot.generated.d.ts +22 -22
  98. package/node_modules/@oxygen/shared/dist/pricing-snapshot.generated.js +40 -34
  99. package/node_modules/@oxygen/shared/dist/product-analytics-environment.js +9 -0
  100. package/node_modules/@oxygen/shared/dist/product-analytics-events.d.ts +15 -0
  101. package/node_modules/@oxygen/shared/dist/product-analytics-events.js +15 -0
  102. package/node_modules/@oxygen/shared/dist/rate-window.d.ts +5 -0
  103. package/node_modules/@oxygen/shared/dist/rate-window.js +8 -0
  104. package/node_modules/@oxygen/shared/dist/research-output-contract.d.ts +33 -1
  105. package/node_modules/@oxygen/shared/dist/research-output-contract.js +65 -5
  106. package/node_modules/@oxygen/shared/dist/search-vocab.js +4 -5
  107. package/node_modules/@oxygen/shared/dist/select-options.js +6 -1
  108. package/node_modules/@oxygen/shared/dist/sequence-crm-events.d.ts +1 -1
  109. package/node_modules/@oxygen/shared/dist/sequence-failures.js +1 -5
  110. package/node_modules/@oxygen/shared/dist/sequence-hubspot-sync.d.ts +1 -1
  111. package/node_modules/@oxygen/shared/dist/sequences.d.ts +49 -0
  112. package/node_modules/@oxygen/shared/dist/sequences.js +134 -4
  113. package/node_modules/@oxygen/shared/dist/spend-safety.d.ts +22 -10
  114. package/node_modules/@oxygen/shared/dist/spend-safety.js +15 -21
  115. package/node_modules/@oxygen/shared/dist/sql-rows.d.ts +1 -0
  116. package/node_modules/@oxygen/shared/dist/sql-rows.js +3 -0
  117. package/node_modules/@oxygen/shared/dist/telemetry.js +9 -1
  118. package/node_modules/@oxygen/shared/dist/type-guards.d.ts +22 -0
  119. package/node_modules/@oxygen/shared/dist/type-guards.js +35 -0
  120. package/node_modules/@oxygen/shared/dist/value-readers.d.ts +21 -0
  121. package/node_modules/@oxygen/shared/dist/value-readers.js +59 -0
  122. package/node_modules/@oxygen/shared/dist/version.js +1 -1
  123. package/node_modules/@oxygen/shared/package.json +60 -0
  124. package/node_modules/@oxygen/workflows/dist/graph/expression.js +2 -5
  125. package/node_modules/@oxygen/workflows/dist/graph/manifest-schema.d.ts +15 -15
  126. package/node_modules/@oxygen/workflows/dist/graph/params.js +1 -1
  127. package/package.json +6 -3
@@ -15,3 +15,38 @@
15
15
  export function isRecord(value) {
16
16
  return typeof value === "object" && value !== null && !Array.isArray(value);
17
17
  }
18
+ /**
19
+ * `value` as a `Record<string, unknown>` when it is a non-null, non-array
20
+ * object, else null.
21
+ */
22
+ export function asRecordOrNull(value) {
23
+ return isRecord(value) ? value : null;
24
+ }
25
+ /** Alias of {@link asRecordOrNull} for call sites that spell it `asRecord`. */
26
+ export const asRecord = asRecordOrNull;
27
+ /**
28
+ * `value` as a `Record<string, unknown>`, falling back to an empty object.
29
+ * Deliberately masks "absent" and "present but wrong shape" the same way its
30
+ * call sites always have — use {@link asRecordOrNull} when that matters.
31
+ */
32
+ export function asRecordOrEmpty(value) {
33
+ return isRecord(value) ? value : {};
34
+ }
35
+ /** Finite number, else null. Does not parse numeric strings. */
36
+ export function readFiniteNumber(value) {
37
+ return typeof value === "number" && Number.isFinite(value) ? value : null;
38
+ }
39
+ /** Trimmed non-empty string, else null. */
40
+ export function readTrimmedString(value) {
41
+ return typeof value === "string" && value.trim() ? value.trim() : null;
42
+ }
43
+ /**
44
+ * Trimmed non-empty string, else null — additionally coercing a number to its
45
+ * string form. Distinct from {@link readTrimmedString}, which rejects numbers.
46
+ */
47
+ export function readCoercedString(value) {
48
+ if (typeof value !== "string" && typeof value !== "number")
49
+ return null;
50
+ const trimmed = String(value).trim();
51
+ return trimmed ? trimmed : null;
52
+ }
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Canonical readers that coerce an `unknown` value (or a field of an untyped
3
+ * record) into a string/number, used across every OXYGEN package.
4
+ */
5
+ /** Trimmed non-empty string, else null. */
6
+ export declare function readString(value: unknown): string | null;
7
+ /** The first key in `keys` whose value is a non-empty string, trimmed. */
8
+ export declare function readFirstString(source: Record<string, unknown>, keys: string[]): string | null;
9
+ /** The first key in `keys` on `record` holding a non-empty string, trimmed. */
10
+ export declare function readStringField(record: Record<string, unknown>, keys: string[]): string | null;
11
+ /** Walk a dot-separated path through nested records; undefined when it breaks. */
12
+ export declare function readByPath(value: unknown, path: string): unknown;
13
+ /** Trimmed non-empty string, else null. */
14
+ export declare function readStringValue(value: unknown): string | null;
15
+ /**
16
+ * Non-empty string returned VERBATIM: emptiness is tested on the trimmed form
17
+ * but the original value is returned, so stored values keep their whitespace.
18
+ */
19
+ export declare function readStringValueUntrimmed(value: unknown): string | null;
20
+ /** Finite number, else null. Does not parse numeric strings. */
21
+ export declare function readNumberValue(value: unknown): number | null;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Canonical readers that coerce an `unknown` value (or a field of an untyped
3
+ * record) into a string/number, used across every OXYGEN package.
4
+ */
5
+ import { isRecord } from "./type-guards.js";
6
+ /** Trimmed non-empty string, else null. */
7
+ export function readString(value) {
8
+ return typeof value === "string" && value.trim() ? value.trim() : null;
9
+ }
10
+ /** The first key in `keys` whose value is a non-empty string, trimmed. */
11
+ export function readFirstString(source, keys) {
12
+ for (const key of keys) {
13
+ const value = source[key];
14
+ if (typeof value !== "string")
15
+ continue;
16
+ const trimmed = value.trim();
17
+ if (trimmed)
18
+ return trimmed;
19
+ }
20
+ return null;
21
+ }
22
+ /** The first key in `keys` on `record` holding a non-empty string, trimmed. */
23
+ export function readStringField(record, keys) {
24
+ for (const key of keys) {
25
+ const value = record[key];
26
+ if (typeof value === "string" && value.trim())
27
+ return value.trim();
28
+ }
29
+ return null;
30
+ }
31
+ /** Walk a dot-separated path through nested records; undefined when it breaks. */
32
+ export function readByPath(value, path) {
33
+ if (!path)
34
+ return value;
35
+ let current = value;
36
+ for (const segment of path.split(".")) {
37
+ if (!segment)
38
+ continue;
39
+ if (!isRecord(current))
40
+ return undefined;
41
+ current = current[segment];
42
+ }
43
+ return current;
44
+ }
45
+ /** Trimmed non-empty string, else null. */
46
+ export function readStringValue(value) {
47
+ return typeof value === "string" && value.trim() ? value.trim() : null;
48
+ }
49
+ /**
50
+ * Non-empty string returned VERBATIM: emptiness is tested on the trimmed form
51
+ * but the original value is returned, so stored values keep their whitespace.
52
+ */
53
+ export function readStringValueUntrimmed(value) {
54
+ return typeof value === "string" && value.trim() ? value : null;
55
+ }
56
+ /** Finite number, else null. Does not parse numeric strings. */
57
+ export function readNumberValue(value) {
58
+ return typeof value === "number" && Number.isFinite(value) ? value : null;
59
+ }
@@ -1,6 +1,6 @@
1
1
  // Release metadata is a string API: a new version must not change the exported
2
2
  // declaration type and invalidate every dependent package's compiler state.
3
- export const OXYGEN_VERSION = "1.982.3";
3
+ export const OXYGEN_VERSION = "1.1003.12";
4
4
  // The GLOBAL CLI compatibility floor: the oldest CLI allowed to call any
5
5
  // operational route. Raising it hard-rejects every older CLI from the entire
6
6
  // product, so it obeys one law, enforced by scripts/ci/cli-min-version-gate.mjs:
@@ -96,6 +96,16 @@
96
96
  "import": "./dist/person-name.js",
97
97
  "default": "./dist/person-name.js"
98
98
  },
99
+ "./linkedin-countries": {
100
+ "types": "./dist/linkedin-countries.d.ts",
101
+ "import": "./dist/linkedin-countries.js",
102
+ "default": "./dist/linkedin-countries.js"
103
+ },
104
+ "./freemail-domains": {
105
+ "types": "./dist/freemail-domains.d.ts",
106
+ "import": "./dist/freemail-domains.js",
107
+ "default": "./dist/freemail-domains.js"
108
+ },
99
109
  "./select-options": {
100
110
  "types": "./dist/select-options.d.ts",
101
111
  "import": "./dist/select-options.js",
@@ -121,6 +131,21 @@
121
131
  "import": "./dist/cli-result.js",
122
132
  "default": "./dist/cli-result.js"
123
133
  },
134
+ "./type-guards": {
135
+ "types": "./dist/type-guards.d.ts",
136
+ "import": "./dist/type-guards.js",
137
+ "default": "./dist/type-guards.js"
138
+ },
139
+ "./value-readers": {
140
+ "types": "./dist/value-readers.d.ts",
141
+ "import": "./dist/value-readers.js",
142
+ "default": "./dist/value-readers.js"
143
+ },
144
+ "./timing": {
145
+ "types": "./dist/timing.d.ts",
146
+ "import": "./dist/timing.js",
147
+ "default": "./dist/timing.js"
148
+ },
124
149
  "./custom-http-safety": {
125
150
  "types": "./dist/custom-http-safety.d.ts",
126
151
  "import": "./dist/custom-http-safety.js",
@@ -176,6 +201,16 @@
176
201
  "import": "./dist/copilot-journeys.js",
177
202
  "default": "./dist/copilot-journeys.js"
178
203
  },
204
+ "./copilot-playbooks": {
205
+ "types": "./dist/copilot-playbooks.d.ts",
206
+ "import": "./dist/copilot-playbooks.js",
207
+ "default": "./dist/copilot-playbooks.js"
208
+ },
209
+ "./copilot-skills": {
210
+ "types": "./dist/copilot-skills.d.ts",
211
+ "import": "./dist/copilot-skills.js",
212
+ "default": "./dist/copilot-skills.js"
213
+ },
179
214
  "./hosted-ai": {
180
215
  "types": "./dist/hosted-ai.d.ts",
181
216
  "import": "./dist/hosted-ai.js",
@@ -215,6 +250,31 @@
215
250
  "types": "./dist/workspace-file-storage.d.ts",
216
251
  "import": "./dist/workspace-file-storage.js",
217
252
  "default": "./dist/workspace-file-storage.js"
253
+ },
254
+ "./company-enrichment-fields": {
255
+ "types": "./dist/company-enrichment-fields.d.ts",
256
+ "import": "./dist/company-enrichment-fields.js",
257
+ "default": "./dist/company-enrichment-fields.js"
258
+ },
259
+ "./*": {
260
+ "types": "./dist/*.d.ts",
261
+ "import": "./dist/*.js",
262
+ "default": "./dist/*.js"
263
+ },
264
+ "./enrichment-intents": {
265
+ "types": "./dist/enrichment-intents.d.ts",
266
+ "import": "./dist/enrichment-intents.js",
267
+ "default": "./dist/enrichment-intents.js"
268
+ },
269
+ "./log": {
270
+ "types": "./dist/log.d.ts",
271
+ "import": "./dist/log.js",
272
+ "default": "./dist/log.js"
273
+ },
274
+ "./linkedin-sequences": {
275
+ "types": "./dist/linkedin-sequences.d.ts",
276
+ "import": "./dist/linkedin-sequences.js",
277
+ "default": "./dist/linkedin-sequences.js"
218
278
  }
219
279
  },
220
280
  "dependencies": {}
@@ -13,7 +13,7 @@
13
13
  // - Reading is prototype-safe. Path segments are matched against own properties
14
14
  // only, and the segments that reach JavaScript object internals
15
15
  // (__proto__ / constructor / prototype) are rejected outright.
16
- import { analyzeFormulaDependencies, evaluateFormulaInScope, formulaExpressionError, } from "@oxygen/formula";
16
+ import { analyzeFormulaDependencies, evaluateFormulaInScope, formulaExpressionError, isRecord, } from "@oxygen/formula";
17
17
  /** A deterministic authoring/data error; retrying the same revision cannot repair it. */
18
18
  export class WorkflowValueCoercionError extends Error {
19
19
  coercion;
@@ -587,7 +587,7 @@ function lookupFormulaIdentifier(scope, identifier) {
587
587
  if (BLOCKED_PATH_SEGMENTS.has(identifier))
588
588
  return { found: false };
589
589
  const input = scope.trigger?.input;
590
- if (isPlainObject(input) && Object.prototype.hasOwnProperty.call(input, identifier)) {
590
+ if (isRecord(input) && Object.prototype.hasOwnProperty.call(input, identifier)) {
591
591
  return { found: true, value: input[identifier] };
592
592
  }
593
593
  const node = readSegment(scope.steps, identifier);
@@ -627,9 +627,6 @@ function isCoalescibleWorkflowFormulaPath(scope, identifier) {
627
627
  }
628
628
  return false;
629
629
  }
630
- function isPlainObject(value) {
631
- return typeof value === "object" && value !== null && !Array.isArray(value);
632
- }
633
630
  // ---------------------------------------------------------------------------
634
631
  // Conditions
635
632
  // ---------------------------------------------------------------------------
@@ -22,11 +22,10 @@ export declare const workflowCodeV1Schema: {
22
22
  readonly type: "object";
23
23
  readonly maxProperties: 100;
24
24
  readonly additionalProperties: {
25
+ readonly type: "object";
26
+ readonly required: readonly ["type"];
25
27
  readonly description: "One explicit oxygen-js-v1 input binding. Knowledge context refs are excluded in Code v1; bind trigger, step, loop, literal, template, or formula data explicitly.";
26
28
  readonly properties: {
27
- readonly type: {
28
- readonly enum: readonly ["literal", "template", "ref", "formula"];
29
- };
30
29
  readonly value: {
31
30
  readonly description: "literal: used verbatim. template: interpolated string, e.g. 'Hi {{ steps.find.output.first_name }}'.";
32
31
  };
@@ -46,9 +45,10 @@ export declare const workflowCodeV1Schema: {
46
45
  readonly type: "string";
47
46
  readonly description: "context_asset: the Knowledge-layer asset id.";
48
47
  };
48
+ readonly type: {
49
+ readonly enum: readonly ["literal", "template", "ref", "formula"];
50
+ };
49
51
  };
50
- readonly type: "object";
51
- readonly required: readonly ["type"];
52
52
  };
53
53
  readonly default: {};
54
54
  };
@@ -680,11 +680,10 @@ export declare const workflowGraphManifestSchema: {
680
680
  readonly type: "object";
681
681
  readonly maxProperties: 100;
682
682
  readonly additionalProperties: {
683
+ readonly type: "object";
684
+ readonly required: readonly ["type"];
683
685
  readonly description: "One explicit oxygen-js-v1 input binding. Knowledge context refs are excluded in Code v1; bind trigger, step, loop, literal, template, or formula data explicitly.";
684
686
  readonly properties: {
685
- readonly type: {
686
- readonly enum: readonly ["literal", "template", "ref", "formula"];
687
- };
688
687
  readonly value: {
689
688
  readonly description: "literal: used verbatim. template: interpolated string, e.g. 'Hi {{ steps.find.output.first_name }}'.";
690
689
  };
@@ -704,9 +703,10 @@ export declare const workflowGraphManifestSchema: {
704
703
  readonly type: "string";
705
704
  readonly description: "context_asset: the Knowledge-layer asset id.";
706
705
  };
706
+ readonly type: {
707
+ readonly enum: readonly ["literal", "template", "ref", "formula"];
708
+ };
707
709
  };
708
- readonly type: "object";
709
- readonly required: readonly ["type"];
710
710
  };
711
711
  readonly default: {};
712
712
  };
@@ -1470,11 +1470,10 @@ export declare const portableWorkflowDefinitionSchema: {
1470
1470
  readonly type: "object";
1471
1471
  readonly maxProperties: 100;
1472
1472
  readonly additionalProperties: {
1473
+ readonly type: "object";
1474
+ readonly required: readonly ["type"];
1473
1475
  readonly description: "One explicit oxygen-js-v1 input binding. Knowledge context refs are excluded in Code v1; bind trigger, step, loop, literal, template, or formula data explicitly.";
1474
1476
  readonly properties: {
1475
- readonly type: {
1476
- readonly enum: readonly ["literal", "template", "ref", "formula"];
1477
- };
1478
1477
  readonly value: {
1479
1478
  readonly description: "literal: used verbatim. template: interpolated string, e.g. 'Hi {{ steps.find.output.first_name }}'.";
1480
1479
  };
@@ -1494,9 +1493,10 @@ export declare const portableWorkflowDefinitionSchema: {
1494
1493
  readonly type: "string";
1495
1494
  readonly description: "context_asset: the Knowledge-layer asset id.";
1496
1495
  };
1496
+ readonly type: {
1497
+ readonly enum: readonly ["literal", "template", "ref", "formula"];
1498
+ };
1497
1499
  };
1498
- readonly type: "object";
1499
- readonly required: readonly ["type"];
1500
1500
  };
1501
1501
  readonly default: {};
1502
1502
  };
@@ -28,7 +28,7 @@ export const ANY_OF_REQUIREMENTS = {
28
28
  * Empty means ready.
29
29
  */
30
30
  export function missingToolParams(input) {
31
- const { toolId, fields, params, closed } = input;
31
+ const { toolId, fields, params } = input;
32
32
  const label = (name) => fields.find((field) => field.name === name)?.title ?? name;
33
33
  // An unknown key suppresses the missing-required report, because a misspelled
34
34
  // name is simultaneously an unknown key AND the reason a required field looks
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oxygen-agent/cli",
3
- "version": "1.982.3",
3
+ "version": "1.1003.12",
4
4
  "private": false,
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
@@ -32,24 +32,27 @@
32
32
  "README.md"
33
33
  ],
34
34
  "dependencies": {
35
- "@aws-sdk/client-s3": "3.1050.0",
35
+ "@aws-sdk/client-s3": "3.1136.0",
36
36
  "@aws-sdk/s3-request-presigner": "3.1050.0",
37
37
  "@langfuse/core": "^5.11.0",
38
38
  "@langfuse/otel": "^5.11.0",
39
39
  "@langfuse/tracing": "^5.11.0",
40
40
  "@opentelemetry/api": "1.9.1",
41
+ "@opentelemetry/resources": "2.10.0",
41
42
  "@opentelemetry/sdk-trace-base": "2.10.0",
42
43
  "commander": "14.0.3",
43
44
  "esbuild": "0.27.7",
44
45
  "read-excel-file": "6.0.3",
45
- "typescript": "6.0.3",
46
+ "typescript": "npm:@typescript/typescript6@6.0.2",
46
47
  "yaml": "2.9.0",
48
+ "@oxygen/cli-ugc": "0.0.0",
47
49
  "@oxygen/formula": "0.0.0",
48
50
  "@oxygen/recipe-sdk": "0.0.0",
49
51
  "@oxygen/shared": "0.0.0",
50
52
  "@oxygen/workflows": "0.0.0"
51
53
  },
52
54
  "bundledDependencies": [
55
+ "@oxygen/cli-ugc",
53
56
  "@oxygen/formula",
54
57
  "@oxygen/recipe-sdk",
55
58
  "@oxygen/shared",