operon-agents 0.1.0-alpha.20 → 0.1.0-alpha.22

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.
@@ -898,7 +898,7 @@ function messageOf(error) {
898
898
  function toolFromSpec(spec) {
899
899
  const parameters = spec.parameters ?? { type: "object", properties: {} };
900
900
  return {
901
- schema: { name: spec.name, description: spec.description, parameters },
901
+ schema: { name: spec.name, description: spec.description, parameters, ...(spec.outputSchema !== undefined ? { outputSchema: spec.outputSchema } : {}) },
902
902
  resolve(rawArgs) {
903
903
  return {
904
904
  approvalRule: spec.approvalRule ?? spec.name,
@@ -444,6 +444,8 @@ export interface ExtensionToolSpec {
444
444
  readonly description: string;
445
445
  /** JSON Schema for the arguments. Defaults to an empty object schema. */
446
446
  readonly parameters?: Record<string, unknown>;
447
+ /** JSON Schema of `structured` in the results `execute` returns; programs (Code Mode) get that value instead of text. */
448
+ readonly outputSchema?: Record<string, unknown>;
447
449
  /** Permission subject for approval rules; defaults to the tool name. */
448
450
  readonly approvalRule?: string;
449
451
  execute(args: unknown, ctx: ToolRunContext): string | ToolResultContent | ToolResult | Promise<string | ToolResultContent | ToolResult>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "operon-agents",
3
- "version": "0.1.0-alpha.20",
3
+ "version": "0.1.0-alpha.22",
4
4
  "description": "Public SDK entrypoint for building agents.",
5
5
  "type": "module",
6
6
  "engines": {
@@ -74,7 +74,7 @@
74
74
  "zod": "^4.4.3",
75
75
  "smol-toml": "^1.6.1",
76
76
  "@earendil-works/pi-ai": "1.3.0",
77
- "operon-agents-core": "0.1.0-alpha.20"
77
+ "operon-agents-core": "0.1.0-alpha.22"
78
78
  },
79
79
  "devDependencies": {
80
80
  "@earendil-works/pi-ai": "1.3.0"