@agimon-ai/po-team 0.0.0-alpha.2 → 0.0.0-alpha.21

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 (120) hide show
  1. package/LICENSE +166 -5
  2. package/README.md +11 -12
  3. package/dist/{agentDiscovery-Whwzc4dP.cjs → agentDiscovery-DTTlM_LT.cjs} +246 -350
  4. package/dist/agentDiscovery-DTTlM_LT.cjs.map +1 -0
  5. package/dist/{agentDiscovery-ZQlFkKvB.mjs → agentDiscovery-ZNG8iZXV.mjs} +210 -279
  6. package/dist/agentDiscovery-ZNG8iZXV.mjs.map +1 -0
  7. package/dist/apiContracts.cjs +10 -3
  8. package/dist/apiContracts.cjs.map +1 -1
  9. package/dist/apiContracts.d.mts.map +1 -1
  10. package/dist/apiContracts.mjs +10 -3
  11. package/dist/apiContracts.mjs.map +1 -1
  12. package/dist/{externalProcessIpc-ojE0pvw0.cjs → atomicJson-DRT03Ql5.cjs} +155 -21
  13. package/dist/atomicJson-DRT03Ql5.cjs.map +1 -0
  14. package/dist/{externalProcessIpc-C-15lJrB.mjs → atomicJson-VVM1iAPu.mjs} +140 -12
  15. package/dist/atomicJson-VVM1iAPu.mjs.map +1 -0
  16. package/dist/{capabilityCeiling-CF7kAS18.mjs → capabilityCeiling-BaHT9v9S.mjs} +3 -3
  17. package/dist/capabilityCeiling-BaHT9v9S.mjs.map +1 -0
  18. package/dist/{capabilityCeiling-C-Y7H8oC.cjs → capabilityCeiling-CO3ZjYmY.cjs} +3 -3
  19. package/dist/capabilityCeiling-CO3ZjYmY.cjs.map +1 -0
  20. package/dist/capabilityCeiling.cjs +2 -2
  21. package/dist/capabilityCeiling.d.mts +2 -2
  22. package/dist/capabilityCeiling.mjs +2 -2
  23. package/dist/delegation.cjs +1 -1
  24. package/dist/delegation.cjs.map +1 -1
  25. package/dist/delegation.d.mts +1 -1
  26. package/dist/delegation.mjs +1 -1
  27. package/dist/delegation.mjs.map +1 -1
  28. package/dist/delegationApi.cjs +30 -30
  29. package/dist/delegationApi.d.mts +2 -2
  30. package/dist/delegationApi.mjs +1 -2
  31. package/dist/env.cjs +1 -1
  32. package/dist/env.d.mts +1 -1
  33. package/dist/env.mjs +1 -2
  34. package/dist/{environment-DrqhrxG_.mjs → environment-BtvJI2S-.mjs} +3 -3
  35. package/dist/environment-BtvJI2S-.mjs.map +1 -0
  36. package/dist/{environment-ma5oQ7uM.d.mts → environment-Bz1OlWIT.d.mts} +2 -2
  37. package/dist/{environment-ma5oQ7uM.d.mts.map → environment-Bz1OlWIT.d.mts.map} +1 -1
  38. package/dist/{environment-CaCW3SgT.cjs → environment-Cqs7vHJL.cjs} +3 -3
  39. package/dist/environment-Cqs7vHJL.cjs.map +1 -0
  40. package/dist/extensions/native.mjs +34 -12
  41. package/dist/extensions/native.mjs.map +1 -1
  42. package/dist/extensions/server.cjs +990 -786
  43. package/dist/extensions/server.cjs.map +1 -1
  44. package/dist/extensions/server.d.mts +2 -2
  45. package/dist/extensions/server.d.mts.map +1 -1
  46. package/dist/extensions/server.mjs +975 -772
  47. package/dist/extensions/server.mjs.map +1 -1
  48. package/dist/extensions/web.mjs +994 -807
  49. package/dist/extensions/web.mjs.map +1 -1
  50. package/dist/fablePlan.cjs +3 -3
  51. package/dist/fablePlan.d.mts +2 -2
  52. package/dist/fablePlan.mjs +1 -2
  53. package/dist/{fablePlanApi-CZ3uUcMi.d.mts → fablePlanApi-BTNKjLni.d.mts} +6 -6
  54. package/dist/{fablePlanApi-CZ3uUcMi.d.mts.map → fablePlanApi-BTNKjLni.d.mts.map} +1 -1
  55. package/dist/{fablePlanApi-wBu9bRXU.cjs → fablePlanApi-BhI4jnDP.cjs} +12 -12
  56. package/dist/fablePlanApi-BhI4jnDP.cjs.map +1 -0
  57. package/dist/{fablePlanApi-BsHhgVFV.mjs → fablePlanApi-DuMg43Hu.mjs} +5 -5
  58. package/dist/fablePlanApi-DuMg43Hu.mjs.map +1 -0
  59. package/dist/fablePlanApi.cjs +3 -3
  60. package/dist/fablePlanApi.d.mts +2 -2
  61. package/dist/fablePlanApi.mjs +1 -2
  62. package/dist/index.cjs +17 -8
  63. package/dist/index.cjs.map +1 -1
  64. package/dist/index.d.mts +5 -1
  65. package/dist/index.d.mts.map +1 -1
  66. package/dist/index.mjs +15 -5
  67. package/dist/index.mjs.map +1 -1
  68. package/dist/rolldown-runtime-VH7oDXx4.cjs +28 -0
  69. package/dist/runs/background/cliRunnerEntry.cjs +26 -25
  70. package/dist/runs/background/cliRunnerEntry.cjs.map +1 -1
  71. package/dist/runs/background/cliRunnerEntry.mjs +14 -14
  72. package/dist/runs/background/cliRunnerEntry.mjs.map +1 -1
  73. package/dist/runtimeSubagentPolicy.cjs +3 -3
  74. package/dist/runtimeSubagentPolicy.d.mts +2 -2
  75. package/dist/runtimeSubagentPolicy.mjs +1 -2
  76. package/dist/runtimeSubagentTool.cjs +7 -2
  77. package/dist/runtimeSubagentTool.d.mts +1 -1
  78. package/dist/runtimeSubagentTool.mjs +1 -2
  79. package/dist/{subagentPolicy-ALJam4GN.d.mts → subagentPolicy-BE-OZoa-.d.mts} +6 -6
  80. package/dist/subagentPolicy-BE-OZoa-.d.mts.map +1 -0
  81. package/dist/{subagentPolicy-DQRyKDH-.cjs → subagentPolicy-DIpaKHO8.cjs} +8 -8
  82. package/dist/subagentPolicy-DIpaKHO8.cjs.map +1 -0
  83. package/dist/{subagentPolicy-DxjsKeyj.mjs → subagentPolicy-LfcXuqO5.mjs} +5 -5
  84. package/dist/subagentPolicy-LfcXuqO5.mjs.map +1 -0
  85. package/dist/subagentPolicy.cjs +3 -3
  86. package/dist/subagentPolicy.d.mts +2 -2
  87. package/dist/subagentPolicy.mjs +1 -2
  88. package/dist/{subagentTool-Ca2zQXKw.cjs → subagentTool-BueNPGHo.cjs} +5 -16
  89. package/dist/subagentTool-BueNPGHo.cjs.map +1 -0
  90. package/dist/{subagentTool-BTssGLw8.d.mts → subagentTool-UdB3s6Mn.d.mts} +2 -11
  91. package/dist/subagentTool-UdB3s6Mn.d.mts.map +1 -0
  92. package/dist/{subagentTool-WOYrjxgT.mjs → subagentTool-a2oh2v5B.mjs} +5 -16
  93. package/dist/subagentTool-a2oh2v5B.mjs.map +1 -0
  94. package/dist/subagentTool.cjs +7 -2
  95. package/dist/subagentTool.d.mts +1 -1
  96. package/dist/subagentTool.mjs +1 -2
  97. package/dist/teamSnapshot.d.mts +1 -0
  98. package/dist/teamSnapshot.d.mts.map +1 -1
  99. package/dist/teamSnapshot.mjs +1 -2
  100. package/package.json +25 -24
  101. package/dist/agentDiscovery-Whwzc4dP.cjs.map +0 -1
  102. package/dist/agentDiscovery-ZQlFkKvB.mjs.map +0 -1
  103. package/dist/atomicJson-D0346bt5.cjs +0 -178
  104. package/dist/atomicJson-D0346bt5.cjs.map +0 -1
  105. package/dist/atomicJson-D2t0CDh9.mjs +0 -137
  106. package/dist/atomicJson-D2t0CDh9.mjs.map +0 -1
  107. package/dist/capabilityCeiling-C-Y7H8oC.cjs.map +0 -1
  108. package/dist/capabilityCeiling-CF7kAS18.mjs.map +0 -1
  109. package/dist/environment-CaCW3SgT.cjs.map +0 -1
  110. package/dist/environment-DrqhrxG_.mjs.map +0 -1
  111. package/dist/externalProcessIpc-C-15lJrB.mjs.map +0 -1
  112. package/dist/externalProcessIpc-ojE0pvw0.cjs.map +0 -1
  113. package/dist/fablePlanApi-BsHhgVFV.mjs.map +0 -1
  114. package/dist/fablePlanApi-wBu9bRXU.cjs.map +0 -1
  115. package/dist/subagentPolicy-ALJam4GN.d.mts.map +0 -1
  116. package/dist/subagentPolicy-DQRyKDH-.cjs.map +0 -1
  117. package/dist/subagentPolicy-DxjsKeyj.mjs.map +0 -1
  118. package/dist/subagentTool-BTssGLw8.d.mts.map +0 -1
  119. package/dist/subagentTool-Ca2zQXKw.cjs.map +0 -1
  120. package/dist/subagentTool-WOYrjxgT.mjs.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"subagentTool-Ca2zQXKw.cjs","names":["Type","InlineAgentSchema"],"sources":["../src/schemas/subagentTool.ts"],"sourcesContent":["import { InlineAgentSchema, type InlineAgent } from '@agimon-ai/po-core/delegation';\nimport { type Static, Type } from 'typebox';\n\nexport { InlineAgentSchema };\nexport type { InlineAgent };\n\nexport const SUBAGENT_ACTIONS = {\n agents: 'agents',\n run: 'run',\n status: 'status',\n steer: 'steer',\n stop: 'stop',\n suspended: 'suspended',\n restore: 'restore',\n} as const;\n\nexport type SubagentAction = (typeof SUBAGENT_ACTIONS)[keyof typeof SUBAGENT_ACTIONS];\n\nexport const SUBAGENT_ACTION_FIELDS = {\n agents: ['action', 'name', 'cwd', 'scope'],\n run: ['action', 'requests', 'concurrency', 'artifacts', 'scope'],\n status: ['action', 'id', 'transcriptLines'],\n steer: ['action', 'id', 'message'],\n stop: ['action', 'id', 'reason'],\n suspended: ['action'],\n restore: ['action', 'id'],\n} as const satisfies Record<SubagentAction, readonly string[]>;\n\nconst IMPLEMENTED_ACTIONS: ReadonlySet<string> = new Set(Object.values(SUBAGENT_ACTIONS));\n\nexport function isSubagentAction(value: unknown): value is SubagentAction {\n return typeof value === 'string' && IMPLEMENTED_ACTIONS.has(value);\n}\n\nexport function subagentActionAcceptsField(action: SubagentAction, field: string): boolean {\n return (SUBAGENT_ACTION_FIELDS[action] as readonly string[]).includes(field);\n}\n\n/** Remove the one legacy field emitted by Doom Plan before strict validation. */\nexport function normalizeSubagentToolParams(input: unknown): unknown {\n if (!input || typeof input !== 'object' || Array.isArray(input)) return input;\n const record = input as Record<string, unknown>;\n if (!isSubagentAction(record.action) || record.action === SUBAGENT_ACTIONS.run || typeof record.model !== 'string') {\n return input;\n }\n const { model: _model, ...normalized } = record;\n return normalized;\n}\n\nconst AgentScope = Type.Union([Type.Literal('user'), Type.Literal('project'), Type.Literal('both')]);\n\nconst RunRequest = Type.Object(\n {\n agent: Type.String({ minLength: 1 }),\n inlineAgent: Type.Optional(InlineAgentSchema),\n task: Type.String({ minLength: 1 }),\n cwd: Type.Optional(Type.String({ minLength: 1 })),\n model: Type.Optional(Type.String({ minLength: 1 })),\n runtime: Type.Optional(Type.String({ minLength: 1 })),\n },\n { additionalProperties: false },\n);\n\nconst AgentsParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.agents),\n name: Type.Optional(Type.String({ minLength: 1 })),\n cwd: Type.Optional(Type.String({ minLength: 1 })),\n scope: Type.Optional(AgentScope),\n },\n { additionalProperties: false },\n);\n\nconst RunParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.run),\n requests: Type.Array(RunRequest, { minItems: 1 }),\n concurrency: Type.Optional(Type.Integer({ minimum: 1 })),\n artifacts: Type.Optional(Type.Boolean()),\n scope: Type.Optional(AgentScope),\n },\n { additionalProperties: false },\n);\n\nconst FleetStatusParams = Type.Object(\n { action: Type.Literal(SUBAGENT_ACTIONS.status) },\n { additionalProperties: false },\n);\n\nconst RunStatusParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.status),\n id: Type.String({ minLength: 1 }),\n transcriptLines: Type.Optional(Type.Integer({ minimum: 1, maximum: 500 })),\n },\n { additionalProperties: false },\n);\n\nconst SteerParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.steer),\n id: Type.String({ minLength: 1 }),\n message: Type.String({ minLength: 1 }),\n },\n { additionalProperties: false },\n);\n\nconst StopParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.stop),\n id: Type.String({ minLength: 1 }),\n reason: Type.Optional(Type.String({ minLength: 1 })),\n },\n { additionalProperties: false },\n);\n\nconst SuspendedParams = Type.Object(\n { action: Type.Literal(SUBAGENT_ACTIONS.suspended) },\n { additionalProperties: false },\n);\n\nconst RestoreParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.restore),\n id: Type.String({ minLength: 1 }),\n },\n { additionalProperties: false },\n);\n\nexport const SubagentParams = Type.Union([\n AgentsParams,\n RunParams,\n FleetStatusParams,\n RunStatusParams,\n SteerParams,\n StopParams,\n SuspendedParams,\n RestoreParams,\n]);\n\n/** The actions that accept `field`, so the declared docs cannot drift from the validator. */\nfunction acceptingActions(field: string): string {\n return Object.values(SUBAGENT_ACTIONS)\n .filter((action) => subagentActionAcceptsField(action, field))\n .join(', ');\n}\n\n/**\n * The schema declared to the model.\n *\n * A flat object rather than `SubagentParams` itself. A top-level union is\n * `{anyOf:[...]}` with no `properties`, and Pi's Anthropic Messages adapter\n * rebuilds tool input as `{type:'object', properties: schema.properties ?? {},\n * required: schema.required ?? []}`, so the union arrived at the model as an\n * empty object while the host went on validating calls against it. Nothing here\n * relaxes what is accepted: `validateParams` still rejects an unknown action, a\n * field the action does not take, and a missing required one.\n */\nexport const SubagentToolSchema = Type.Object(\n {\n action: Type.String({\n enum: Object.values(SUBAGENT_ACTIONS),\n description: 'The operation to run. Every other field is accepted only by the actions its description names.',\n }),\n name: Type.Optional(\n Type.String({ minLength: 1, description: `Exact agent name to inspect. Actions: ${acceptingActions('name')}.` }),\n ),\n cwd: Type.Optional(\n Type.String({\n minLength: 1,\n description: `Directory to discover agents in. Actions: ${acceptingActions('cwd')}.`,\n }),\n ),\n scope: Type.Optional(\n Type.String({\n enum: ['user', 'project', 'both'],\n description: `Agent discovery scope. Actions: ${acceptingActions('scope')}.`,\n }),\n ),\n requests: Type.Optional(\n Type.Array(RunRequest, {\n minItems: 1,\n description: `Runs to start, one entry each. Actions: ${acceptingActions('requests')}.`,\n }),\n ),\n concurrency: Type.Optional(\n Type.Integer({\n minimum: 1,\n description: `Maximum runs started at once. Actions: ${acceptingActions('concurrency')}.`,\n }),\n ),\n artifacts: Type.Optional(\n Type.Boolean({ description: `Collect run artifacts. Actions: ${acceptingActions('artifacts')}.` }),\n ),\n id: Type.Optional(Type.String({ minLength: 1, description: `Run id. Actions: ${acceptingActions('id')}.` })),\n transcriptLines: Type.Optional(\n Type.Integer({\n minimum: 1,\n maximum: 500,\n description: `Transcript lines to include; valid only alongside id. Actions: ${acceptingActions('transcriptLines')}.`,\n }),\n ),\n message: Type.Optional(\n Type.String({ minLength: 1, description: `Guidance to deliver. Actions: ${acceptingActions('message')}.` }),\n ),\n reason: Type.Optional(\n Type.String({ minLength: 1, description: `Why the run is stopping. Actions: ${acceptingActions('reason')}.` }),\n ),\n },\n { additionalProperties: false },\n);\n\nexport type SubagentToolParams = Static<typeof SubagentParams>;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"subagentTool-WOYrjxgT.mjs","names":[],"sources":["../src/schemas/subagentTool.ts"],"sourcesContent":["import { InlineAgentSchema, type InlineAgent } from '@agimon-ai/po-core/delegation';\nimport { type Static, Type } from 'typebox';\n\nexport { InlineAgentSchema };\nexport type { InlineAgent };\n\nexport const SUBAGENT_ACTIONS = {\n agents: 'agents',\n run: 'run',\n status: 'status',\n steer: 'steer',\n stop: 'stop',\n suspended: 'suspended',\n restore: 'restore',\n} as const;\n\nexport type SubagentAction = (typeof SUBAGENT_ACTIONS)[keyof typeof SUBAGENT_ACTIONS];\n\nexport const SUBAGENT_ACTION_FIELDS = {\n agents: ['action', 'name', 'cwd', 'scope'],\n run: ['action', 'requests', 'concurrency', 'artifacts', 'scope'],\n status: ['action', 'id', 'transcriptLines'],\n steer: ['action', 'id', 'message'],\n stop: ['action', 'id', 'reason'],\n suspended: ['action'],\n restore: ['action', 'id'],\n} as const satisfies Record<SubagentAction, readonly string[]>;\n\nconst IMPLEMENTED_ACTIONS: ReadonlySet<string> = new Set(Object.values(SUBAGENT_ACTIONS));\n\nexport function isSubagentAction(value: unknown): value is SubagentAction {\n return typeof value === 'string' && IMPLEMENTED_ACTIONS.has(value);\n}\n\nexport function subagentActionAcceptsField(action: SubagentAction, field: string): boolean {\n return (SUBAGENT_ACTION_FIELDS[action] as readonly string[]).includes(field);\n}\n\n/** Remove the one legacy field emitted by Doom Plan before strict validation. */\nexport function normalizeSubagentToolParams(input: unknown): unknown {\n if (!input || typeof input !== 'object' || Array.isArray(input)) return input;\n const record = input as Record<string, unknown>;\n if (!isSubagentAction(record.action) || record.action === SUBAGENT_ACTIONS.run || typeof record.model !== 'string') {\n return input;\n }\n const { model: _model, ...normalized } = record;\n return normalized;\n}\n\nconst AgentScope = Type.Union([Type.Literal('user'), Type.Literal('project'), Type.Literal('both')]);\n\nconst RunRequest = Type.Object(\n {\n agent: Type.String({ minLength: 1 }),\n inlineAgent: Type.Optional(InlineAgentSchema),\n task: Type.String({ minLength: 1 }),\n cwd: Type.Optional(Type.String({ minLength: 1 })),\n model: Type.Optional(Type.String({ minLength: 1 })),\n runtime: Type.Optional(Type.String({ minLength: 1 })),\n },\n { additionalProperties: false },\n);\n\nconst AgentsParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.agents),\n name: Type.Optional(Type.String({ minLength: 1 })),\n cwd: Type.Optional(Type.String({ minLength: 1 })),\n scope: Type.Optional(AgentScope),\n },\n { additionalProperties: false },\n);\n\nconst RunParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.run),\n requests: Type.Array(RunRequest, { minItems: 1 }),\n concurrency: Type.Optional(Type.Integer({ minimum: 1 })),\n artifacts: Type.Optional(Type.Boolean()),\n scope: Type.Optional(AgentScope),\n },\n { additionalProperties: false },\n);\n\nconst FleetStatusParams = Type.Object(\n { action: Type.Literal(SUBAGENT_ACTIONS.status) },\n { additionalProperties: false },\n);\n\nconst RunStatusParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.status),\n id: Type.String({ minLength: 1 }),\n transcriptLines: Type.Optional(Type.Integer({ minimum: 1, maximum: 500 })),\n },\n { additionalProperties: false },\n);\n\nconst SteerParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.steer),\n id: Type.String({ minLength: 1 }),\n message: Type.String({ minLength: 1 }),\n },\n { additionalProperties: false },\n);\n\nconst StopParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.stop),\n id: Type.String({ minLength: 1 }),\n reason: Type.Optional(Type.String({ minLength: 1 })),\n },\n { additionalProperties: false },\n);\n\nconst SuspendedParams = Type.Object(\n { action: Type.Literal(SUBAGENT_ACTIONS.suspended) },\n { additionalProperties: false },\n);\n\nconst RestoreParams = Type.Object(\n {\n action: Type.Literal(SUBAGENT_ACTIONS.restore),\n id: Type.String({ minLength: 1 }),\n },\n { additionalProperties: false },\n);\n\nexport const SubagentParams = Type.Union([\n AgentsParams,\n RunParams,\n FleetStatusParams,\n RunStatusParams,\n SteerParams,\n StopParams,\n SuspendedParams,\n RestoreParams,\n]);\n\n/** The actions that accept `field`, so the declared docs cannot drift from the validator. */\nfunction acceptingActions(field: string): string {\n return Object.values(SUBAGENT_ACTIONS)\n .filter((action) => subagentActionAcceptsField(action, field))\n .join(', ');\n}\n\n/**\n * The schema declared to the model.\n *\n * A flat object rather than `SubagentParams` itself. A top-level union is\n * `{anyOf:[...]}` with no `properties`, and Pi's Anthropic Messages adapter\n * rebuilds tool input as `{type:'object', properties: schema.properties ?? {},\n * required: schema.required ?? []}`, so the union arrived at the model as an\n * empty object while the host went on validating calls against it. Nothing here\n * relaxes what is accepted: `validateParams` still rejects an unknown action, a\n * field the action does not take, and a missing required one.\n */\nexport const SubagentToolSchema = Type.Object(\n {\n action: Type.String({\n enum: Object.values(SUBAGENT_ACTIONS),\n description: 'The operation to run. Every other field is accepted only by the actions its description names.',\n }),\n name: Type.Optional(\n Type.String({ minLength: 1, description: `Exact agent name to inspect. Actions: ${acceptingActions('name')}.` }),\n ),\n cwd: Type.Optional(\n Type.String({\n minLength: 1,\n description: `Directory to discover agents in. Actions: ${acceptingActions('cwd')}.`,\n }),\n ),\n scope: Type.Optional(\n Type.String({\n enum: ['user', 'project', 'both'],\n description: `Agent discovery scope. Actions: ${acceptingActions('scope')}.`,\n }),\n ),\n requests: Type.Optional(\n Type.Array(RunRequest, {\n minItems: 1,\n description: `Runs to start, one entry each. Actions: ${acceptingActions('requests')}.`,\n }),\n ),\n concurrency: Type.Optional(\n Type.Integer({\n minimum: 1,\n description: `Maximum runs started at once. Actions: ${acceptingActions('concurrency')}.`,\n }),\n ),\n artifacts: Type.Optional(\n Type.Boolean({ description: `Collect run artifacts. Actions: ${acceptingActions('artifacts')}.` }),\n ),\n id: Type.Optional(Type.String({ minLength: 1, description: `Run id. Actions: ${acceptingActions('id')}.` })),\n transcriptLines: Type.Optional(\n Type.Integer({\n minimum: 1,\n maximum: 500,\n description: `Transcript lines to include; valid only alongside id. Actions: ${acceptingActions('transcriptLines')}.`,\n }),\n ),\n message: Type.Optional(\n Type.String({ minLength: 1, description: `Guidance to deliver. Actions: ${acceptingActions('message')}.` }),\n ),\n reason: Type.Optional(\n Type.String({ minLength: 1, description: `Why the run is stopping. Actions: ${acceptingActions('reason')}.` }),\n ),\n },\n { additionalProperties: false },\n);\n\nexport type SubagentToolParams = Static<typeof SubagentParams>;\n"],"mappings":"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"}