@lssm/example.agent-console 0.0.0-canary-20251215234340 → 0.0.0-canary-20251216024228

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 (100) hide show
  1. package/.turbo/turbo-build.log +38 -28
  2. package/CHANGELOG.md +6 -6
  3. package/dist/agent/agent.contracts.js +1 -0
  4. package/dist/{entities/agent.js → agent/agent.entity.js} +1 -1
  5. package/dist/agent/agent.enum.js +1 -0
  6. package/dist/agent/agent.event.js +1 -0
  7. package/dist/agent/agent.handler.js +1 -0
  8. package/dist/agent/agent.presentation.js +1 -0
  9. package/dist/agent/agent.schema.js +1 -0
  10. package/dist/agent/index.js +1 -0
  11. package/dist/handlers/index.js +1 -1
  12. package/dist/index.js +1 -1
  13. package/dist/presentations/index.js +1 -1
  14. package/dist/run/index.js +1 -0
  15. package/dist/run/run.contracts.js +1 -0
  16. package/dist/run/run.entity.js +1 -0
  17. package/dist/run/run.enum.js +1 -0
  18. package/dist/run/run.event.js +1 -0
  19. package/dist/run/run.handler.js +1 -0
  20. package/dist/run/run.presentation.js +1 -0
  21. package/dist/run/run.schema.js +1 -0
  22. package/dist/shared/index.js +1 -0
  23. package/dist/shared/mock-agents.js +1 -0
  24. package/dist/shared/mock-runs.js +1 -0
  25. package/dist/shared/mock-tools.js +1 -0
  26. package/dist/tool/index.js +1 -0
  27. package/dist/tool/tool.contracts.js +1 -0
  28. package/dist/tool/tool.entity.js +1 -0
  29. package/dist/tool/tool.enum.js +1 -0
  30. package/dist/tool/tool.event.js +1 -0
  31. package/dist/tool/tool.handler.js +1 -0
  32. package/dist/tool/tool.presentation.js +1 -0
  33. package/dist/tool/tool.schema.js +1 -0
  34. package/package.json +59 -39
  35. package/src/agent/agent.contracts.ts +275 -0
  36. package/src/agent/agent.entity.ts +84 -0
  37. package/src/agent/agent.enum.ts +31 -0
  38. package/src/agent/agent.event.ts +109 -0
  39. package/src/{handlers/agent.handlers.ts → agent/agent.handler.ts} +23 -78
  40. package/src/{presentations/agent-list.ts → agent/agent.presentation.ts} +26 -14
  41. package/src/agent/agent.schema.ts +147 -0
  42. package/src/agent/index.ts +65 -0
  43. package/src/handlers/index.ts +17 -44
  44. package/src/index.ts +6 -15
  45. package/src/presentations/index.ts +13 -34
  46. package/src/run/index.ts +65 -0
  47. package/src/run/run.contracts.ts +266 -0
  48. package/src/run/run.entity.ts +126 -0
  49. package/src/run/run.enum.ts +45 -0
  50. package/src/run/run.event.ts +211 -0
  51. package/src/run/run.handler.ts +103 -0
  52. package/src/run/run.presentation.ts +47 -0
  53. package/src/run/run.schema.ts +139 -0
  54. package/src/shared/index.ts +6 -0
  55. package/src/shared/mock-agents.ts +83 -0
  56. package/src/shared/mock-runs.ts +108 -0
  57. package/src/shared/mock-tools.ts +146 -0
  58. package/src/tool/index.ts +35 -0
  59. package/src/tool/tool.contracts.ts +180 -0
  60. package/src/tool/tool.entity.ts +66 -0
  61. package/src/tool/tool.enum.ts +34 -0
  62. package/src/tool/tool.event.ts +84 -0
  63. package/src/tool/tool.handler.ts +107 -0
  64. package/src/{presentations/tool-registry.ts → tool/tool.presentation.ts} +12 -17
  65. package/src/tool/tool.schema.ts +134 -0
  66. package/tsconfig.tsbuildinfo +1 -1
  67. package/dist/contracts/agent.js +0 -1
  68. package/dist/contracts/index.js +0 -1
  69. package/dist/contracts/run.js +0 -1
  70. package/dist/contracts/tool.js +0 -1
  71. package/dist/entities/index.js +0 -1
  72. package/dist/entities/log.js +0 -1
  73. package/dist/entities/run.js +0 -1
  74. package/dist/entities/tool.js +0 -1
  75. package/dist/events.js +0 -1
  76. package/dist/handlers/agent.handlers.js +0 -1
  77. package/dist/handlers/mock-data.js +0 -1
  78. package/dist/handlers/run.handlers.js +0 -1
  79. package/dist/handlers/tool.handlers.js +0 -1
  80. package/dist/presentations/agent-list.js +0 -1
  81. package/dist/presentations/dashboard.js +0 -1
  82. package/dist/presentations/run-list.js +0 -1
  83. package/dist/presentations/tool-registry.js +0 -1
  84. package/src/contracts/agent.ts +0 -501
  85. package/src/contracts/index.ts +0 -29
  86. package/src/contracts/run.ts +0 -561
  87. package/src/contracts/tool.ts +0 -392
  88. package/src/entities/agent.ts +0 -151
  89. package/src/entities/index.ts +0 -20
  90. package/src/entities/log.ts +0 -76
  91. package/src/entities/run.ts +0 -240
  92. package/src/entities/tool.ts +0 -105
  93. package/src/events.ts +0 -419
  94. package/src/handlers/mock-data.ts +0 -413
  95. package/src/handlers/run.handlers.ts +0 -331
  96. package/src/handlers/tool.handlers.ts +0 -188
  97. package/src/presentations/dashboard.ts +0 -29
  98. package/src/presentations/run-list.ts +0 -76
  99. /package/dist/{feature.js → agent.feature.js} +0 -0
  100. /package/src/{feature.ts → agent.feature.ts} +0 -0
@@ -1 +0,0 @@
1
- import{ScalarTypeEnum as e,defineEnum as t,defineSchemaModel as n}from"@lssm/lib.schema";import{defineCommand as r,defineQuery as i}from"@lssm/lib.contracts/spec";const a=[`agent-console-team`],o=t(`AgentStatus`,[`DRAFT`,`ACTIVE`,`PAUSED`,`ARCHIVED`]),s=t(`ModelProvider`,[`OPENAI`,`ANTHROPIC`,`GOOGLE`,`MISTRAL`,`CUSTOM`]),c=t(`ToolChoice`,[`auto`,`required`,`none`]),l=n({name:`Agent`,description:`AI agent configuration`,fields:{id:{type:e.String_unsecure(),isOptional:!1},organizationId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!0},status:{type:o,isOptional:!1},modelProvider:{type:s,isOptional:!1},modelName:{type:e.NonEmptyString(),isOptional:!1},modelConfig:{type:e.JSONObject(),isOptional:!0},systemPrompt:{type:e.String_unsecure(),isOptional:!1},userPromptTemplate:{type:e.String_unsecure(),isOptional:!0},toolIds:{type:e.String_unsecure(),isArray:!0,isOptional:!0},toolChoice:{type:c,isOptional:!1,defaultValue:`auto`},maxIterations:{type:e.Int_unsecure(),isOptional:!1,defaultValue:10},maxTokensPerRun:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!1,defaultValue:12e4},version:{type:e.NonEmptyString(),isOptional:!1},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0},createdAt:{type:e.DateTime(),isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),u=n({name:`AgentSummary`,description:`Summary of an agent for list views`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!0},status:{type:o,isOptional:!1},modelProvider:{type:s,isOptional:!1},modelName:{type:e.NonEmptyString(),isOptional:!1},version:{type:e.NonEmptyString(),isOptional:!1},createdAt:{type:e.DateTime(),isOptional:!1}}}),d=n({name:`AgentToolRef`,description:`Tool reference in agent context`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!1},category:{type:e.String_unsecure(),isOptional:!1}}}),f=n({name:`AgentWithTools`,description:`Agent with associated tools`,fields:{id:{type:e.String_unsecure(),isOptional:!1},organizationId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!0},status:{type:o,isOptional:!1},modelProvider:{type:s,isOptional:!1},modelName:{type:e.NonEmptyString(),isOptional:!1},modelConfig:{type:e.JSONObject(),isOptional:!0},systemPrompt:{type:e.String_unsecure(),isOptional:!1},userPromptTemplate:{type:e.String_unsecure(),isOptional:!0},toolIds:{type:e.String_unsecure(),isArray:!0,isOptional:!0},toolChoice:{type:c,isOptional:!1},maxIterations:{type:e.Int_unsecure(),isOptional:!1},maxTokensPerRun:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!1},version:{type:e.NonEmptyString(),isOptional:!1},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0},createdAt:{type:e.DateTime(),isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1},tools:{type:d,isArray:!0,isOptional:!0}}}),p=n({name:`CreateAgentInput`,description:`Input for creating an agent`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!0},modelProvider:{type:s,isOptional:!1},modelName:{type:e.NonEmptyString(),isOptional:!1},modelConfig:{type:e.JSONObject(),isOptional:!0},systemPrompt:{type:e.String_unsecure(),isOptional:!1},userPromptTemplate:{type:e.String_unsecure(),isOptional:!0},toolIds:{type:e.String_unsecure(),isArray:!0,isOptional:!0},toolChoice:{type:c,isOptional:!0},maxIterations:{type:e.Int_unsecure(),isOptional:!0},maxTokensPerRun:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!0},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0}}}),m=n({name:`UpdateAgentInput`,description:`Input for updating an agent`,fields:{agentId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!0},description:{type:e.String_unsecure(),isOptional:!0},status:{type:o,isOptional:!0},modelConfig:{type:e.JSONObject(),isOptional:!0},systemPrompt:{type:e.String_unsecure(),isOptional:!0},userPromptTemplate:{type:e.String_unsecure(),isOptional:!0},toolIds:{type:e.String_unsecure(),isArray:!0,isOptional:!0},toolChoice:{type:c,isOptional:!0},maxIterations:{type:e.Int_unsecure(),isOptional:!0},maxTokensPerRun:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!0},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0}}}),h=r({meta:{name:`agent.agent.create`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`create`],description:`Creates a new AI agent configuration.`,goal:`Allow users to define new AI agents with specific models and tools.`,context:`Called from the agent builder UI when creating a new agent.`},io:{input:p,output:n({name:`CreateAgentOutput`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},status:{type:o,isOptional:!1}}}),errors:{SLUG_EXISTS:{description:`An agent with this slug already exists in the organization`,http:409,gqlCode:`SLUG_EXISTS`,when:`Slug is already taken`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`agent.created`,version:1,when:`Agent is successfully created`,payload:u}],audit:[`agent.created`]}}),g=r({meta:{name:`agent.agent.update`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`update`],description:`Updates an existing AI agent configuration.`,goal:`Allow users to modify agent settings and configuration.`,context:`Called from the agent settings UI.`},io:{input:m,output:n({name:`UpdateAgentOutput`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},status:{type:o,isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),errors:{AGENT_NOT_FOUND:{description:`The specified agent does not exist`,http:404,gqlCode:`AGENT_NOT_FOUND`,when:`Agent ID is invalid`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`agent.updated`,version:1,when:`Agent is updated`,payload:u}],audit:[`agent.updated`]}}),_=i({meta:{name:`agent.agent.get`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`get`],description:`Retrieves an agent by its ID.`,goal:`View detailed agent configuration.`,context:`Called when viewing agent details or editing.`},io:{input:n({name:`GetAgentInput`,fields:{agentId:{type:e.String_unsecure(),isOptional:!1},includeTools:{type:e.Boolean(),isOptional:!0}}}),output:f,errors:{AGENT_NOT_FOUND:{description:`The specified agent does not exist`,http:404,gqlCode:`AGENT_NOT_FOUND`,when:`Agent ID is invalid`}}},policy:{auth:`user`}}),v=i({meta:{name:`agent.agent.list`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`list`],description:`Lists agents for an organization with optional filtering.`,goal:`Browse and search available agents.`,context:`Agent list/dashboard view.`},io:{input:n({name:`ListAgentsInput`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!1},status:{type:o,isOptional:!0},modelProvider:{type:s,isOptional:!0},search:{type:e.String_unsecure(),isOptional:!0},limit:{type:e.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:e.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:n({name:`ListAgentsOutput`,fields:{items:{type:u,isArray:!0,isOptional:!1},total:{type:e.Int_unsecure(),isOptional:!1},hasMore:{type:e.Boolean(),isOptional:!1}}})},policy:{auth:`user`}}),y=r({meta:{name:`agent.agent.assignTool`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`tool`,`assign`],description:`Assigns a tool to an agent with optional configuration.`,goal:`Enable agents to use specific tools.`,context:`Agent configuration UI - tool selection.`},io:{input:n({name:`AssignToolToAgentInput`,fields:{agentId:{type:e.String_unsecure(),isOptional:!1},toolId:{type:e.String_unsecure(),isOptional:!1},config:{type:e.JSONObject(),isOptional:!0},order:{type:e.Int_unsecure(),isOptional:!0}}}),output:n({name:`AssignToolToAgentOutput`,fields:{agentToolId:{type:e.String_unsecure(),isOptional:!1},agentId:{type:e.String_unsecure(),isOptional:!1},toolId:{type:e.String_unsecure(),isOptional:!1}}}),errors:{TOOL_ALREADY_ASSIGNED:{description:`This tool is already assigned to the agent`,http:409,gqlCode:`TOOL_ALREADY_ASSIGNED`,when:`Tool assignment already exists`}}},policy:{auth:`user`},sideEffects:{audit:[`agent.tool.assigned`]}}),b=r({meta:{name:`agent.agent.removeTool`,version:1,stability:`stable`,owners:[...a],tags:[`agent`,`tool`,`remove`],description:`Removes a tool assignment from an agent.`,goal:`Disable specific tools for an agent.`,context:`Agent configuration UI - tool management.`},io:{input:n({name:`RemoveToolFromAgentInput`,fields:{agentId:{type:e.String_unsecure(),isOptional:!1},toolId:{type:e.String_unsecure(),isOptional:!1}}}),output:n({name:`RemoveToolFromAgentOutput`,fields:{success:{type:e.Boolean(),isOptional:!1}}})},policy:{auth:`user`},sideEffects:{audit:[`agent.tool.removed`]}});export{l as AgentModel,o as AgentStatusEnum,u as AgentSummaryModel,d as AgentToolRefModel,f as AgentWithToolsModel,y as AssignToolToAgentCommand,h as CreateAgentCommand,p as CreateAgentInputModel,_ as GetAgentQuery,v as ListAgentsQuery,s as ModelProviderEnum,b as RemoveToolFromAgentCommand,c as ToolChoiceEnum,g as UpdateAgentCommand,m as UpdateAgentInputModel};
@@ -1 +0,0 @@
1
- import{CreateToolCommand as e,GetToolQuery as t,ListToolsQuery as n,TestToolCommand as r,UpdateToolCommand as i}from"./tool.js";import{AssignToolToAgentCommand as a,CreateAgentCommand as o,GetAgentQuery as s,ListAgentsQuery as c,RemoveToolFromAgentCommand as l,UpdateAgentCommand as u}from"./agent.js";import{CancelRunCommand as d,ExecuteAgentCommand as f,GetRunLogsQuery as p,GetRunMetricsQuery as m,GetRunQuery as h,GetRunStepsQuery as g,ListRunsQuery as _}from"./run.js";export{a as AssignToolToAgentCommand,d as CancelRunCommand,o as CreateAgentCommand,e as CreateToolCommand,f as ExecuteAgentCommand,s as GetAgentQuery,p as GetRunLogsQuery,m as GetRunMetricsQuery,h as GetRunQuery,g as GetRunStepsQuery,t as GetToolQuery,c as ListAgentsQuery,_ as ListRunsQuery,n as ListToolsQuery,l as RemoveToolFromAgentCommand,r as TestToolCommand,u as UpdateAgentCommand,i as UpdateToolCommand};
@@ -1 +0,0 @@
1
- import{ScalarTypeEnum as e,defineEnum as t,defineSchemaModel as n}from"@lssm/lib.schema";import{defineCommand as r,defineQuery as i}from"@lssm/lib.contracts/spec";const a=[`agent-console-team`],o=t(`RunStatus`,[`QUEUED`,`IN_PROGRESS`,`COMPLETED`,`FAILED`,`CANCELLED`,`EXPIRED`]),s=t(`RunStepType`,[`MESSAGE_CREATION`,`TOOL_CALL`,`TOOL_RESULT`,`ERROR`]),c=t(`LogLevel`,[`DEBUG`,`INFO`,`WARN`,`ERROR`]),l=t(`Granularity`,[`hour`,`day`,`week`,`month`]),u=n({name:`RunInput`,description:`Input data for agent execution`,fields:{message:{type:e.NonEmptyString(),isOptional:!1},context:{type:e.JSONObject(),isOptional:!0}}}),d=n({name:`RunStep`,description:`Individual step within a run`,fields:{id:{type:e.String_unsecure(),isOptional:!1},stepNumber:{type:e.Int_unsecure(),isOptional:!1},type:{type:s,isOptional:!1},toolId:{type:e.String_unsecure(),isOptional:!0},toolName:{type:e.String_unsecure(),isOptional:!0},input:{type:e.JSONObject(),isOptional:!0},output:{type:e.JSONObject(),isOptional:!0},status:{type:o,isOptional:!1},errorMessage:{type:e.String_unsecure(),isOptional:!0},tokensUsed:{type:e.Int_unsecure(),isOptional:!1,defaultValue:0},durationMs:{type:e.Int_unsecure(),isOptional:!0},startedAt:{type:e.DateTime(),isOptional:!1},completedAt:{type:e.DateTime(),isOptional:!0}}}),f=n({name:`RunLog`,description:`Execution log entry`,fields:{id:{type:e.String_unsecure(),isOptional:!1},stepId:{type:e.String_unsecure(),isOptional:!0},level:{type:c,isOptional:!1},message:{type:e.String_unsecure(),isOptional:!1},data:{type:e.JSONObject(),isOptional:!0},source:{type:e.String_unsecure(),isOptional:!0},traceId:{type:e.String_unsecure(),isOptional:!0},spanId:{type:e.String_unsecure(),isOptional:!0},timestamp:{type:e.DateTime(),isOptional:!1}}}),p=n({name:`RunAgentRef`,description:`Agent reference in a run`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},modelProvider:{type:e.String_unsecure(),isOptional:!1},modelName:{type:e.String_unsecure(),isOptional:!1}}}),m=n({name:`Run`,description:`Agent execution instance`,fields:{id:{type:e.String_unsecure(),isOptional:!1},organizationId:{type:e.String_unsecure(),isOptional:!1},agentId:{type:e.String_unsecure(),isOptional:!1},userId:{type:e.String_unsecure(),isOptional:!0},sessionId:{type:e.String_unsecure(),isOptional:!0},input:{type:e.JSONObject(),isOptional:!1},output:{type:e.JSONObject(),isOptional:!0},status:{type:o,isOptional:!1},errorMessage:{type:e.String_unsecure(),isOptional:!0},errorCode:{type:e.String_unsecure(),isOptional:!0},totalTokens:{type:e.Int_unsecure(),isOptional:!1,defaultValue:0},promptTokens:{type:e.Int_unsecure(),isOptional:!1,defaultValue:0},completionTokens:{type:e.Int_unsecure(),isOptional:!1,defaultValue:0},totalIterations:{type:e.Int_unsecure(),isOptional:!1,defaultValue:0},durationMs:{type:e.Int_unsecure(),isOptional:!0},estimatedCostUsd:{type:e.Float_unsecure(),isOptional:!0},queuedAt:{type:e.DateTime(),isOptional:!1},startedAt:{type:e.DateTime(),isOptional:!0},completedAt:{type:e.DateTime(),isOptional:!0},metadata:{type:e.JSONObject(),isOptional:!0},steps:{type:d,isArray:!0,isOptional:!0},logs:{type:f,isArray:!0,isOptional:!0},agent:{type:p,isOptional:!0}}}),h=n({name:`RunSummary`,description:`Summary of a run for list views`,fields:{id:{type:e.String_unsecure(),isOptional:!1},agentId:{type:e.String_unsecure(),isOptional:!1},agentName:{type:e.NonEmptyString(),isOptional:!1},status:{type:o,isOptional:!1},totalTokens:{type:e.Int_unsecure(),isOptional:!1},durationMs:{type:e.Int_unsecure(),isOptional:!0},estimatedCostUsd:{type:e.Float_unsecure(),isOptional:!0},queuedAt:{type:e.DateTime(),isOptional:!1},completedAt:{type:e.DateTime(),isOptional:!0}}}),g=n({name:`TimelineDataPoint`,description:`Timeline data point for metrics`,fields:{period:{type:e.String_unsecure(),isOptional:!1},runs:{type:e.Int_unsecure(),isOptional:!1},tokens:{type:e.Int_unsecure(),isOptional:!1},costUsd:{type:e.Float_unsecure(),isOptional:!1},avgDurationMs:{type:e.Float_unsecure(),isOptional:!1}}}),_=r({meta:{name:`agent.run.execute`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`execute`],description:`Starts a new agent run with the given input.`,goal:`Execute an AI agent with user input.`,context:`Called from chat interface or API.`},io:{input:n({name:`ExecuteAgentInput`,fields:{agentId:{type:e.String_unsecure(),isOptional:!1},input:{type:u,isOptional:!1},sessionId:{type:e.String_unsecure(),isOptional:!0},metadata:{type:e.JSONObject(),isOptional:!0},stream:{type:e.Boolean(),isOptional:!0},maxIterations:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!0}}}),output:n({name:`ExecuteAgentOutput`,fields:{runId:{type:e.String_unsecure(),isOptional:!1},status:{type:o,isOptional:!1},estimatedWaitMs:{type:e.Int_unsecure(),isOptional:!0}}}),errors:{AGENT_NOT_FOUND:{description:`The specified agent does not exist`,http:404,gqlCode:`AGENT_NOT_FOUND`,when:`Agent ID is invalid`},AGENT_NOT_ACTIVE:{description:`The specified agent is not active`,http:400,gqlCode:`AGENT_NOT_ACTIVE`,when:`Agent is in draft/paused/archived state`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`run.started`,version:1,when:`Run is queued`,payload:h}],audit:[`run.started`]}}),v=r({meta:{name:`agent.run.cancel`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`cancel`],description:`Cancels an in-progress agent run.`,goal:`Stop a running agent execution.`,context:`Called when user wants to abort a long-running task.`},io:{input:n({name:`CancelRunInput`,fields:{runId:{type:e.String_unsecure(),isOptional:!1},reason:{type:e.String_unsecure(),isOptional:!0}}}),output:n({name:`CancelRunOutput`,fields:{success:{type:e.Boolean(),isOptional:!1},status:{type:o,isOptional:!1}}}),errors:{RUN_NOT_FOUND:{description:`The specified run does not exist`,http:404,gqlCode:`RUN_NOT_FOUND`,when:`Run ID is invalid`},RUN_NOT_CANCELLABLE:{description:`The run cannot be cancelled`,http:400,gqlCode:`RUN_NOT_CANCELLABLE`,when:`Run is already completed/failed/cancelled`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`run.cancelled`,version:1,when:`Run is cancelled`,payload:h}],audit:[`run.cancelled`]}}),y=i({meta:{name:`agent.run.get`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`get`],description:`Retrieves a run by its ID with optional details.`,goal:`View detailed run information.`,context:`Run details page or monitoring.`},io:{input:n({name:`GetRunInput`,fields:{runId:{type:e.String_unsecure(),isOptional:!1},includeSteps:{type:e.Boolean(),isOptional:!0},includeLogs:{type:e.Boolean(),isOptional:!0}}}),output:m,errors:{RUN_NOT_FOUND:{description:`The specified run does not exist`,http:404,gqlCode:`RUN_NOT_FOUND`,when:`Run ID is invalid`}}},policy:{auth:`user`}}),b=i({meta:{name:`agent.run.list`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`list`],description:`Lists runs with optional filtering.`,goal:`Browse and search run history.`,context:`Run history/dashboard view.`},io:{input:n({name:`ListRunsInput`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!0},agentId:{type:e.String_unsecure(),isOptional:!0},userId:{type:e.String_unsecure(),isOptional:!0},sessionId:{type:e.String_unsecure(),isOptional:!0},status:{type:o,isOptional:!0},startDate:{type:e.DateTime(),isOptional:!0},endDate:{type:e.DateTime(),isOptional:!0},limit:{type:e.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:e.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:n({name:`ListRunsOutput`,fields:{items:{type:h,isArray:!0,isOptional:!1},total:{type:e.Int_unsecure(),isOptional:!1},hasMore:{type:e.Boolean(),isOptional:!1}}})},policy:{auth:`user`}}),x=i({meta:{name:`agent.run.getSteps`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`steps`],description:`Retrieves all steps for a specific run.`,goal:`View step-by-step execution details.`,context:`Run details page - steps tab.`},io:{input:n({name:`GetRunStepsInput`,fields:{runId:{type:e.String_unsecure(),isOptional:!1}}}),output:n({name:`GetRunStepsOutput`,fields:{steps:{type:d,isArray:!0,isOptional:!1}}})},policy:{auth:`user`}}),S=i({meta:{name:`agent.run.getLogs`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`logs`],description:`Retrieves all logs for a specific run.`,goal:`Debug and audit run execution.`,context:`Run details page - logs tab.`},io:{input:n({name:`GetRunLogsInput`,fields:{runId:{type:e.String_unsecure(),isOptional:!1},level:{type:c,isOptional:!0},stepId:{type:e.String_unsecure(),isOptional:!0},limit:{type:e.Int_unsecure(),isOptional:!0,defaultValue:100},offset:{type:e.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:n({name:`GetRunLogsOutput`,fields:{items:{type:f,isArray:!0,isOptional:!1},total:{type:e.Int_unsecure(),isOptional:!1},hasMore:{type:e.Boolean(),isOptional:!1}}})},policy:{auth:`user`}}),C=i({meta:{name:`agent.run.getMetrics`,version:1,stability:`stable`,owners:[...a],tags:[`run`,`metrics`],description:`Retrieves aggregated metrics for runs within a time period.`,goal:`Monitor and analyze agent usage.`,context:`Analytics dashboard.`},io:{input:n({name:`GetRunMetricsInput`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!1},agentId:{type:e.String_unsecure(),isOptional:!0},startDate:{type:e.DateTime(),isOptional:!1},endDate:{type:e.DateTime(),isOptional:!1},granularity:{type:l,isOptional:!0,defaultValue:`day`}}}),output:n({name:`GetRunMetricsOutput`,fields:{totalRuns:{type:e.Int_unsecure(),isOptional:!1},completedRuns:{type:e.Int_unsecure(),isOptional:!1},failedRuns:{type:e.Int_unsecure(),isOptional:!1},totalTokens:{type:e.Int_unsecure(),isOptional:!1},totalCostUsd:{type:e.Float_unsecure(),isOptional:!1},averageDurationMs:{type:e.Float_unsecure(),isOptional:!1},successRate:{type:e.Float_unsecure(),isOptional:!1},timeline:{type:g,isArray:!0,isOptional:!1}}})},policy:{auth:`user`}});export{v as CancelRunCommand,_ as ExecuteAgentCommand,S as GetRunLogsQuery,C as GetRunMetricsQuery,y as GetRunQuery,x as GetRunStepsQuery,l as GranularityEnum,b as ListRunsQuery,c as LogLevelEnum,p as RunAgentRefModel,u as RunInputModel,f as RunLogModel,m as RunModel,o as RunStatusEnum,d as RunStepModel,s as RunStepTypeEnum,h as RunSummaryModel,g as TimelineDataPointModel};
@@ -1 +0,0 @@
1
- import{ScalarTypeEnum as e,defineEnum as t,defineSchemaModel as n}from"@lssm/lib.schema";import{defineCommand as r,defineQuery as i}from"@lssm/lib.contracts/spec";const a=[`agent-console-team`],o=t(`ToolCategory`,[`RETRIEVAL`,`COMPUTATION`,`COMMUNICATION`,`INTEGRATION`,`UTILITY`,`CUSTOM`]),s=t(`ToolStatus`,[`DRAFT`,`ACTIVE`,`DEPRECATED`,`DISABLED`]),c=t(`ImplementationType`,[`http`,`function`,`workflow`]),l=n({name:`Tool`,description:`AI tool definition`,fields:{id:{type:e.String_unsecure(),isOptional:!1},organizationId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!1},category:{type:o,isOptional:!1},status:{type:s,isOptional:!1},parametersSchema:{type:e.JSONObject(),isOptional:!1},outputSchema:{type:e.JSONObject(),isOptional:!0},implementationType:{type:c,isOptional:!1},implementationConfig:{type:e.JSONObject(),isOptional:!1},maxInvocationsPerMinute:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!1,defaultValue:3e4},version:{type:e.NonEmptyString(),isOptional:!1},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0},createdAt:{type:e.DateTime(),isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),u=n({name:`ToolSummary`,description:`Summary of a tool for list views`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!1},category:{type:o,isOptional:!1},status:{type:s,isOptional:!1},version:{type:e.NonEmptyString(),isOptional:!1},createdAt:{type:e.DateTime(),isOptional:!1}}}),d=n({name:`CreateToolInput`,description:`Input for creating a tool`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},description:{type:e.String_unsecure(),isOptional:!1},category:{type:o,isOptional:!0},parametersSchema:{type:e.JSONObject(),isOptional:!1},outputSchema:{type:e.JSONObject(),isOptional:!0},implementationType:{type:c,isOptional:!1},implementationConfig:{type:e.JSONObject(),isOptional:!1},maxInvocationsPerMinute:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!0},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0}}}),f=n({name:`UpdateToolInput`,description:`Input for updating a tool`,fields:{toolId:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!0},description:{type:e.String_unsecure(),isOptional:!0},status:{type:s,isOptional:!0},parametersSchema:{type:e.JSONObject(),isOptional:!0},outputSchema:{type:e.JSONObject(),isOptional:!0},implementationConfig:{type:e.JSONObject(),isOptional:!0},maxInvocationsPerMinute:{type:e.Int_unsecure(),isOptional:!0},timeoutMs:{type:e.Int_unsecure(),isOptional:!0},tags:{type:e.String_unsecure(),isArray:!0,isOptional:!0}}}),p=r({meta:{name:`agent.tool.create`,version:1,stability:`stable`,owners:[...a],tags:[`tool`,`create`],description:`Creates a new AI tool definition.`,goal:`Allow users to define new tools that agents can use.`,context:`Called from the tool builder UI when creating a new tool.`},io:{input:d,output:n({name:`CreateToolOutput`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},slug:{type:e.String_unsecure(),isOptional:!1},status:{type:s,isOptional:!1}}}),errors:{SLUG_EXISTS:{description:`A tool with this slug already exists in the organization`,http:409,gqlCode:`SLUG_EXISTS`,when:`Slug is already taken`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`tool.created`,version:1,when:`Tool is successfully created`,payload:u}],audit:[`tool.created`]}}),m=r({meta:{name:`agent.tool.update`,version:1,stability:`stable`,owners:[...a],tags:[`tool`,`update`],description:`Updates an existing AI tool definition.`,goal:`Allow users to modify tool settings and configuration.`,context:`Called from the tool settings UI.`},io:{input:f,output:n({name:`UpdateToolOutput`,fields:{id:{type:e.String_unsecure(),isOptional:!1},name:{type:e.NonEmptyString(),isOptional:!1},status:{type:s,isOptional:!1},updatedAt:{type:e.DateTime(),isOptional:!1}}}),errors:{TOOL_NOT_FOUND:{description:`The specified tool does not exist`,http:404,gqlCode:`TOOL_NOT_FOUND`,when:`Tool ID is invalid`}}},policy:{auth:`user`},sideEffects:{emits:[{name:`tool.updated`,version:1,when:`Tool is updated`,payload:u}],audit:[`tool.updated`]}}),h=i({meta:{name:`agent.tool.get`,version:1,stability:`stable`,owners:[...a],tags:[`tool`,`get`],description:`Retrieves a tool by its ID.`,goal:`View detailed tool configuration.`,context:`Called when viewing tool details or editing.`},io:{input:n({name:`GetToolInput`,fields:{toolId:{type:e.String_unsecure(),isOptional:!1}}}),output:l,errors:{TOOL_NOT_FOUND:{description:`The specified tool does not exist`,http:404,gqlCode:`TOOL_NOT_FOUND`,when:`Tool ID is invalid`}}},policy:{auth:`user`}}),g=i({meta:{name:`agent.tool.list`,version:1,stability:`stable`,owners:[...a],tags:[`tool`,`list`],description:`Lists tools for an organization with optional filtering.`,goal:`Browse and search available tools.`,context:`Tool list/dashboard view.`},io:{input:n({name:`ListToolsInput`,fields:{organizationId:{type:e.String_unsecure(),isOptional:!1},category:{type:o,isOptional:!0},status:{type:s,isOptional:!0},search:{type:e.String_unsecure(),isOptional:!0},limit:{type:e.Int_unsecure(),isOptional:!0,defaultValue:20},offset:{type:e.Int_unsecure(),isOptional:!0,defaultValue:0}}}),output:n({name:`ListToolsOutput`,fields:{items:{type:u,isArray:!0,isOptional:!1},total:{type:e.Int_unsecure(),isOptional:!1},hasMore:{type:e.Boolean(),isOptional:!1}}})},policy:{auth:`user`}}),_=r({meta:{name:`agent.tool.test`,version:1,stability:`stable`,owners:[...a],tags:[`tool`,`test`],description:`Tests a tool with sample input to verify it works correctly.`,goal:`Validate tool configuration before deployment.`,context:`Tool builder UI - test panel.`},io:{input:n({name:`TestToolInput`,fields:{toolId:{type:e.String_unsecure(),isOptional:!1},testInput:{type:e.JSONObject(),isOptional:!1}}}),output:n({name:`TestToolOutput`,fields:{success:{type:e.Boolean(),isOptional:!1},output:{type:e.JSONObject(),isOptional:!0},error:{type:e.String_unsecure(),isOptional:!0},durationMs:{type:e.Int_unsecure(),isOptional:!1}}}),errors:{TOOL_NOT_FOUND:{description:`The specified tool does not exist`,http:404,gqlCode:`TOOL_NOT_FOUND`,when:`Tool ID is invalid`},TOOL_EXECUTION_ERROR:{description:`Tool execution failed`,http:500,gqlCode:`TOOL_EXECUTION_ERROR`,when:`Tool returns an error`}}},policy:{auth:`user`},sideEffects:{audit:[`tool.tested`]}});export{p as CreateToolCommand,d as CreateToolInputModel,h as GetToolQuery,c as ImplementationTypeEnum,g as ListToolsQuery,_ as TestToolCommand,o as ToolCategoryEnum,l as ToolModel,s as ToolStatusEnum,u as ToolSummaryModel,m as UpdateToolCommand,f as UpdateToolInputModel};
@@ -1 +0,0 @@
1
- import{ToolCategoryEnum as e,ToolEntity as t,ToolStatusEnum as n}from"./tool.js";import{AgentEntity as r,AgentStatusEnum as i,AgentToolEntity as a,ModelProviderEnum as o}from"./agent.js";import{LogLevelEnum as s,RunEntity as c,RunLogEntity as l,RunStatusEnum as u,RunStepEntity as d,RunStepTypeEnum as f}from"./run.js";export{r as AgentEntity,i as AgentStatusEnum,a as AgentToolEntity,s as LogLevelEnum,o as ModelProviderEnum,c as RunEntity,l as RunLogEntity,u as RunStatusEnum,d as RunStepEntity,f as RunStepTypeEnum,e as ToolCategoryEnum,t as ToolEntity,n as ToolStatusEnum};
@@ -1 +0,0 @@
1
- import{defineEntity as e,defineEntityEnum as t,field as n,index as r}from"@lssm/lib.schema";const i=t({name:`LogLevel`,values:[`DEBUG`,`INFO`,`WARN`,`ERROR`],schema:`agent`,description:`Log severity level.`}),a=t({name:`LogType`,values:[`MESSAGE`,`TOOL_CALL`,`TOOL_RESULT`,`THINKING`,`ERROR`,`SYSTEM`],schema:`agent`,description:`Type of log entry.`}),o=e({name:`RunLog`,description:`A log entry within an agent run.`,schema:`agent`,map:`run_log`,fields:{id:n.id(),runId:n.foreignKey(),type:n.enum(`LogType`),level:n.enum(`LogLevel`,{default:`INFO`}),role:n.string({isOptional:!0,description:`Message role (user, assistant, system, tool)`}),content:n.string({description:`Log content/message`}),metadata:n.json({isOptional:!0}),sequence:n.int({description:`Order within run`}),iteration:n.int({isOptional:!0}),tokens:n.int({isOptional:!0}),timestamp:n.dateTime(),durationMs:n.int({isOptional:!0}),run:n.belongsTo(`AgentRun`,[`runId`],[`id`],{onDelete:`Cascade`})},indexes:[r.on([`runId`,`sequence`]),r.on([`runId`,`type`])],enums:[i,a]});export{i as LogLevelEnum,a as LogTypeEnum,o as RunLogEntity};
@@ -1 +0,0 @@
1
- import{defineEntity as e,defineEntityEnum as t,field as n,index as r}from"@lssm/lib.schema/entity";const i=t({name:`RunStatus`,values:[`QUEUED`,`IN_PROGRESS`,`COMPLETED`,`FAILED`,`CANCELLED`,`EXPIRED`],description:`Execution lifecycle status`}),a=e({name:`Run`,schema:`agent_console`,description:`Represents an agent execution instance.`,fields:{id:n.id(),organizationId:n.string({description:`Organization that owns this run`}),agentId:n.foreignKey({description:`Agent being executed`}),userId:n.string({isOptional:!0,description:`User who initiated the run`}),sessionId:n.string({isOptional:!0,description:`Session ID for conversational context`}),parentRunId:n.string({isOptional:!0,description:`Parent run ID for nested agent calls`}),input:n.json({description:`Input data for the run`}),output:n.json({isOptional:!0,description:`Output data from the run`}),status:n.enum(`RunStatus`,{default:`QUEUED`}),errorMessage:n.string({isOptional:!0,description:`Error message if run failed`}),errorCode:n.string({isOptional:!0,description:`Error code if run failed`}),totalTokens:n.int({default:0,description:`Total tokens used`}),promptTokens:n.int({default:0,description:`Prompt tokens used`}),completionTokens:n.int({default:0,description:`Completion tokens used`}),totalIterations:n.int({default:0,description:`Total iterations executed`}),durationMs:n.int({isOptional:!0,description:`Total duration in milliseconds`}),estimatedCostUsd:n.float({isOptional:!0,description:`Estimated cost in USD`}),queuedAt:n.createdAt(),startedAt:n.dateTime({isOptional:!0,description:`When execution started`}),completedAt:n.dateTime({isOptional:!0,description:`When execution completed`}),metadata:n.json({isOptional:!0,description:`Additional run metadata`}),agent:n.belongsTo(`Agent`,[`agentId`],[`id`]),parentRun:n.belongsTo(`Run`,[`parentRunId`],[`id`]),steps:n.hasMany(`RunStep`),logs:n.hasMany(`RunLog`)},indexes:[r.on([`organizationId`,`status`]),r.on([`organizationId`,`agentId`]),r.on([`organizationId`,`userId`]),r.on([`sessionId`]),r.on([`queuedAt`])],enums:[i]}),o=t({name:`RunStepType`,values:[`MESSAGE_CREATION`,`TOOL_CALL`,`TOOL_RESULT`,`ERROR`],description:`Type of step in an agent run`}),s=e({name:`RunStep`,schema:`agent_console`,description:`Represents an individual step within an agent run.`,fields:{id:n.id(),runId:n.foreignKey({description:`Run ID`}),stepNumber:n.int({description:`Step number in sequence`}),type:n.enum(`RunStepType`),toolId:n.string({isOptional:!0,description:`Tool ID if tool call`}),toolName:n.string({isOptional:!0,description:`Tool name for display`}),input:n.json({isOptional:!0,description:`Step input data`}),output:n.json({isOptional:!0,description:`Step output data`}),status:n.enum(`RunStatus`,{default:`IN_PROGRESS`}),errorMessage:n.string({isOptional:!0,description:`Error message if step failed`}),tokensUsed:n.int({default:0,description:`Tokens used in this step`}),durationMs:n.int({isOptional:!0,description:`Step duration in milliseconds`}),startedAt:n.createdAt(),completedAt:n.dateTime({isOptional:!0,description:`When step completed`}),run:n.belongsTo(`Run`,[`runId`],[`id`]),tool:n.belongsTo(`Tool`,[`toolId`],[`id`])},indexes:[r.on([`runId`,`stepNumber`]),r.on([`runId`,`type`]),r.on([`toolId`])],enums:[o]}),c=t({name:`LogLevel`,values:[`DEBUG`,`INFO`,`WARN`,`ERROR`],description:`Log severity level`}),l=e({name:`RunLog`,schema:`agent_console`,description:`Detailed execution logs for debugging and auditing.`,fields:{id:n.id(),runId:n.foreignKey({description:`Run ID`}),stepId:n.string({isOptional:!0,description:`Step ID if related to a specific step`}),level:n.enum(`LogLevel`,{default:`INFO`}),message:n.string({description:`Log message`}),data:n.json({isOptional:!0,description:`Structured log data`}),source:n.string({isOptional:!0,description:`Log source: 'agent', 'tool', 'system'`}),traceId:n.string({isOptional:!0,description:`Trace ID for distributed tracing`}),spanId:n.string({isOptional:!0,description:`Span ID for distributed tracing`}),timestamp:n.createdAt(),run:n.belongsTo(`Run`,[`runId`],[`id`]),step:n.belongsTo(`RunStep`,[`stepId`],[`id`])},indexes:[r.on([`runId`,`timestamp`]),r.on([`runId`,`level`]),r.on([`stepId`]),r.on([`traceId`])],enums:[c]});export{c as LogLevelEnum,a as RunEntity,l as RunLogEntity,i as RunStatusEnum,s as RunStepEntity,o as RunStepTypeEnum};
@@ -1 +0,0 @@
1
- import{defineEntity as e,defineEntityEnum as t,field as n,index as r}from"@lssm/lib.schema/entity";const i=t({name:`ToolCategory`,values:[`RETRIEVAL`,`COMPUTATION`,`COMMUNICATION`,`INTEGRATION`,`UTILITY`,`CUSTOM`],description:`Category of the tool for organization and filtering`}),a=t({name:`ToolStatus`,values:[`DRAFT`,`ACTIVE`,`DEPRECATED`,`DISABLED`],description:`Lifecycle status of the tool`}),o=e({name:`Tool`,schema:`agent_console`,description:`Represents an AI tool/function that agents can invoke during execution.`,fields:{id:n.id(),organizationId:n.string({description:`Organization that owns this tool`}),name:n.string({description:`Tool name (1-100 chars)`}),slug:n.string({description:`URL-safe identifier (lowercase, numbers, hyphens)`}),description:n.string({description:`Tool description (max 1000 chars)`}),category:n.enum(`ToolCategory`,{default:`UTILITY`}),status:n.enum(`ToolStatus`,{default:`DRAFT`}),parametersSchema:n.json({description:`JSON Schema for tool input parameters`}),outputSchema:n.json({isOptional:!0,description:`JSON Schema for tool output`}),implementationType:n.string({description:`Implementation type: 'http', 'function', 'workflow'`}),implementationConfig:n.json({description:`Implementation configuration (URL, function name, etc.)`}),maxInvocationsPerMinute:n.int({isOptional:!0,description:`Rate limit per minute`}),timeoutMs:n.int({default:3e4,description:`Execution timeout in milliseconds`}),version:n.string({default:`1.0.0`,description:`Tool version`}),tags:n.string({isArray:!0,isOptional:!0,description:`Tags for categorization`}),createdAt:n.createdAt(),updatedAt:n.updatedAt(),createdById:n.string({isOptional:!0,description:`User who created this tool`})},indexes:[r.unique([`organizationId`,`slug`]),r.on([`organizationId`,`category`]),r.on([`organizationId`,`status`])],enums:[i,a]});export{i as ToolCategoryEnum,o as ToolEntity,a as ToolStatusEnum};
package/dist/events.js DELETED
@@ -1 +0,0 @@
1
- import{defineEvent as e,defineSchemaModel as t}from"@lssm/lib.contracts";import{ScalarTypeEnum as n,defineEnum as r}from"@lssm/lib.schema";const i=t({name:`ToolCreatedPayload`,description:`Payload for tool created event`,fields:{id:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},name:{type:n.String_unsecure(),isOptional:!1},slug:{type:n.String_unsecure(),isOptional:!1},category:{type:n.String_unsecure(),isOptional:!1},implementationType:{type:n.String_unsecure(),isOptional:!1},createdById:{type:n.String_unsecure(),isOptional:!0},createdAt:{type:n.DateTime(),isOptional:!1}}}),a=e({name:`agent.tool.created`,version:1,description:`A new AI tool was created.`,payload:i}),o=t({name:`ToolUpdatedPayload`,description:`Payload for tool updated event`,fields:{id:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},name:{type:n.String_unsecure(),isOptional:!1},status:{type:n.String_unsecure(),isOptional:!1},updatedFields:{type:n.String_unsecure(),isArray:!0,isOptional:!1},updatedAt:{type:n.DateTime(),isOptional:!1}}}),s=e({name:`agent.tool.updated`,version:1,description:`An AI tool configuration was updated.`,payload:o}),c=t({name:`ToolStatusChangedPayload`,description:`Payload for tool status changed event`,fields:{id:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},name:{type:n.String_unsecure(),isOptional:!1},previousStatus:{type:n.String_unsecure(),isOptional:!1},newStatus:{type:n.String_unsecure(),isOptional:!1},changedAt:{type:n.DateTime(),isOptional:!1}}}),l=e({name:`agent.tool.statusChanged`,version:1,description:`An AI tool status was changed (activated, deprecated, disabled).`,payload:c}),u=t({name:`AgentCreatedPayload`,description:`Payload for agent created event`,fields:{id:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},name:{type:n.String_unsecure(),isOptional:!1},slug:{type:n.String_unsecure(),isOptional:!1},modelProvider:{type:n.String_unsecure(),isOptional:!1},modelName:{type:n.String_unsecure(),isOptional:!1},toolCount:{type:n.Int_unsecure(),isOptional:!1},createdById:{type:n.String_unsecure(),isOptional:!0},createdAt:{type:n.DateTime(),isOptional:!1}}}),d=e({name:`agent.agent.created`,version:1,description:`A new AI agent was configured.`,payload:u}),f=t({name:`AgentUpdatedPayload`,description:`Payload for agent updated event`,fields:{id:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},name:{type:n.String_unsecure(),isOptional:!1},status:{type:n.String_unsecure(),isOptional:!1},updatedFields:{type:n.String_unsecure(),isArray:!0,isOptional:!1},updatedAt:{type:n.DateTime(),isOptional:!1}}}),p=e({name:`agent.agent.updated`,version:1,description:`An AI agent configuration was updated.`,payload:f}),m=t({name:`AgentToolAssignedPayload`,description:`Payload for agent tool assigned event`,fields:{agentId:{type:n.String_unsecure(),isOptional:!1},toolId:{type:n.String_unsecure(),isOptional:!1},agentName:{type:n.String_unsecure(),isOptional:!1},toolName:{type:n.String_unsecure(),isOptional:!1},assignedAt:{type:n.DateTime(),isOptional:!1}}}),h=e({name:`agent.agent.toolAssigned`,version:1,description:`A tool was assigned to an agent.`,payload:m}),g=t({name:`AgentToolRemovedPayload`,description:`Payload for agent tool removed event`,fields:{agentId:{type:n.String_unsecure(),isOptional:!1},toolId:{type:n.String_unsecure(),isOptional:!1},agentName:{type:n.String_unsecure(),isOptional:!1},toolName:{type:n.String_unsecure(),isOptional:!1},removedAt:{type:n.DateTime(),isOptional:!1}}}),_=e({name:`agent.agent.toolRemoved`,version:1,description:`A tool was removed from an agent.`,payload:g}),v=t({name:`RunStartedPayload`,description:`Payload for run started event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},agentId:{type:n.String_unsecure(),isOptional:!1},agentName:{type:n.String_unsecure(),isOptional:!1},userId:{type:n.String_unsecure(),isOptional:!0},sessionId:{type:n.String_unsecure(),isOptional:!0},input:{type:n.JSONObject(),isOptional:!1},startedAt:{type:n.DateTime(),isOptional:!1}}}),y=e({name:`agent.run.started`,version:1,description:`An agent run was started.`,payload:v}),b=t({name:`RunCompletedPayload`,description:`Payload for run completed event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},agentId:{type:n.String_unsecure(),isOptional:!1},agentName:{type:n.String_unsecure(),isOptional:!1},userId:{type:n.String_unsecure(),isOptional:!0},output:{type:n.JSONObject(),isOptional:!1},totalTokens:{type:n.Int_unsecure(),isOptional:!1},promptTokens:{type:n.Int_unsecure(),isOptional:!1},completionTokens:{type:n.Int_unsecure(),isOptional:!1},totalIterations:{type:n.Int_unsecure(),isOptional:!1},durationMs:{type:n.Int_unsecure(),isOptional:!1},estimatedCostUsd:{type:n.Float_unsecure(),isOptional:!0},completedAt:{type:n.DateTime(),isOptional:!1}}}),x=e({name:`agent.run.completed`,version:1,description:`An agent run completed successfully.`,payload:b}),S=t({name:`RunFailedPayload`,description:`Payload for run failed event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},agentId:{type:n.String_unsecure(),isOptional:!1},agentName:{type:n.String_unsecure(),isOptional:!1},userId:{type:n.String_unsecure(),isOptional:!0},errorMessage:{type:n.String_unsecure(),isOptional:!1},errorCode:{type:n.String_unsecure(),isOptional:!0},totalTokens:{type:n.Int_unsecure(),isOptional:!1},totalIterations:{type:n.Int_unsecure(),isOptional:!1},durationMs:{type:n.Int_unsecure(),isOptional:!0},failedAt:{type:n.DateTime(),isOptional:!1}}}),C=e({name:`agent.run.failed`,version:1,description:`An agent run encountered an error.`,payload:S}),w=t({name:`RunCancelledPayload`,description:`Payload for run cancelled event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},organizationId:{type:n.String_unsecure(),isOptional:!1},agentId:{type:n.String_unsecure(),isOptional:!1},userId:{type:n.String_unsecure(),isOptional:!0},cancelledBy:{type:n.String_unsecure(),isOptional:!0},reason:{type:n.String_unsecure(),isOptional:!0},totalTokens:{type:n.Int_unsecure(),isOptional:!1},totalIterations:{type:n.Int_unsecure(),isOptional:!1},cancelledAt:{type:n.DateTime(),isOptional:!1}}}),T=e({name:`agent.run.cancelled`,version:1,description:`An agent run was cancelled by the user.`,payload:w}),E=t({name:`ToolInvokedPayload`,description:`Payload for tool invoked event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},stepId:{type:n.String_unsecure(),isOptional:!1},toolId:{type:n.String_unsecure(),isOptional:!1},toolName:{type:n.String_unsecure(),isOptional:!1},input:{type:n.JSONObject(),isOptional:!1},invokedAt:{type:n.DateTime(),isOptional:!1}}}),D=e({name:`agent.run.toolInvoked`,version:1,description:`A tool was invoked during an agent run.`,payload:E}),O=t({name:`ToolCompletedPayload`,description:`Payload for tool completed event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},stepId:{type:n.String_unsecure(),isOptional:!1},toolId:{type:n.String_unsecure(),isOptional:!1},toolName:{type:n.String_unsecure(),isOptional:!1},success:{type:n.Boolean(),isOptional:!1},output:{type:n.JSONObject(),isOptional:!0},errorMessage:{type:n.String_unsecure(),isOptional:!0},durationMs:{type:n.Int_unsecure(),isOptional:!1},completedAt:{type:n.DateTime(),isOptional:!1}}}),k=e({name:`agent.run.toolCompleted`,version:1,description:`A tool invocation completed during an agent run.`,payload:O}),A=r(`MessageType`,[`assistant`,`system`]),j=t({name:`MessageGeneratedPayload`,description:`Payload for message generated event`,fields:{runId:{type:n.String_unsecure(),isOptional:!1},stepId:{type:n.String_unsecure(),isOptional:!1},messageType:{type:A,isOptional:!1},content:{type:n.String_unsecure(),isOptional:!1},tokensUsed:{type:n.Int_unsecure(),isOptional:!1},generatedAt:{type:n.DateTime(),isOptional:!1}}}),M=e({name:`agent.run.messageGenerated`,version:1,description:`An agent generated a message during a run.`,payload:j});export{d as AgentCreatedEvent,u as AgentCreatedPayload,h as AgentToolAssignedEvent,m as AgentToolAssignedPayload,_ as AgentToolRemovedEvent,g as AgentToolRemovedPayload,p as AgentUpdatedEvent,f as AgentUpdatedPayload,M as MessageGeneratedEvent,j as MessageGeneratedPayload,A as MessageTypeEnum,T as RunCancelledEvent,w as RunCancelledPayload,x as RunCompletedEvent,b as RunCompletedPayload,C as RunFailedEvent,S as RunFailedPayload,y as RunStartedEvent,v as RunStartedPayload,k as ToolCompletedEvent,O as ToolCompletedPayload,a as ToolCreatedEvent,i as ToolCreatedPayload,D as ToolInvokedEvent,E as ToolInvokedPayload,l as ToolStatusChangedEvent,c as ToolStatusChangedPayload,s as ToolUpdatedEvent,o as ToolUpdatedPayload};
@@ -1 +0,0 @@
1
- import{MOCK_AGENTS as e,MOCK_TOOLS as t}from"./mock-data.js";async function n(t){let{organizationId:n,status:r,modelProvider:i,search:a,limit:o=20,offset:s=0}=t,c=e.filter(e=>e.organizationId===n);if(r&&(c=c.filter(e=>e.status===r)),i&&(c=c.filter(e=>e.modelProvider===i)),a){let e=a.toLowerCase();c=c.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e)||t.tags?.some(t=>t.toLowerCase().includes(e)))}let l=c.length;return{items:c.slice(s,s+o).map(e=>({id:e.id,name:e.name,slug:e.slug,description:e.description,status:e.status,modelProvider:e.modelProvider,modelName:e.modelName,version:e.version,createdAt:e.createdAt})),total:l,hasMore:s+o<l}}async function r(n){let r=e.find(e=>e.id===n.agentId);if(!r)throw Error(`AGENT_NOT_FOUND`);let i={...r,toolIds:[`tool-1`,`tool-2`]};return n.includeTools&&(i.tools=t.slice(0,2).map(e=>({id:e.id,name:e.name,slug:e.slug,description:e.description,category:e.category}))),i}async function i(t){if(e.some(e=>e.organizationId===t.organizationId&&e.slug===t.slug))throw Error(`SLUG_EXISTS`);return{id:`agent-${Date.now()}`,name:t.name,slug:t.slug,status:`DRAFT`}}async function a(t){let n=e.find(e=>e.id===t.agentId);if(!n)throw Error(`AGENT_NOT_FOUND`);return{id:n.id,name:t.name??n.name,status:t.status??n.status,updatedAt:new Date}}export{i as mockCreateAgentHandler,r as mockGetAgentHandler,n as mockListAgentsHandler,a as mockUpdateAgentHandler};
@@ -1 +0,0 @@
1
- const e=[{id:`agent-1`,organizationId:`demo-org`,name:`Customer Support Bot`,slug:`customer-support-bot`,description:`Handles tier-1 customer inquiries and routes complex issues.`,status:`ACTIVE`,modelProvider:`OPENAI`,modelName:`gpt-4o-mini`,modelConfig:{temperature:.7},systemPrompt:`You are a helpful customer support assistant.`,toolChoice:`auto`,maxIterations:10,timeoutMs:12e4,version:`1.0.0`,tags:[`support`,`tier-1`],createdAt:new Date(`2024-01-15T10:00:00Z`),updatedAt:new Date(`2024-03-20T14:30:00Z`)},{id:`agent-2`,organizationId:`demo-org`,name:`Code Review Assistant`,slug:`code-review-assistant`,description:`Reviews pull requests and provides actionable feedback.`,status:`ACTIVE`,modelProvider:`ANTHROPIC`,modelName:`claude-sonnet-4-20250514`,modelConfig:{temperature:.3},systemPrompt:`You are a code review expert.`,toolChoice:`auto`,maxIterations:15,timeoutMs:18e4,version:`2.1.0`,tags:[`code`,`review`,`dev`],createdAt:new Date(`2024-02-10T09:00:00Z`),updatedAt:new Date(`2024-04-05T11:15:00Z`)},{id:`agent-3`,organizationId:`demo-org`,name:`Data Analyst`,slug:`data-analyst`,description:`Queries databases and generates insights from data.`,status:`PAUSED`,modelProvider:`OPENAI`,modelName:`gpt-4o`,modelConfig:{temperature:.5},systemPrompt:`You are a data analyst expert in SQL and analytics.`,toolChoice:`required`,maxIterations:20,timeoutMs:3e5,version:`1.2.0`,tags:[`data`,`analytics`,`sql`],createdAt:new Date(`2024-03-01T08:00:00Z`),updatedAt:new Date(`2024-04-10T16:45:00Z`)},{id:`agent-4`,organizationId:`demo-org`,name:`Meeting Scheduler`,slug:`meeting-scheduler`,description:`Schedules meetings and manages calendar conflicts.`,status:`DRAFT`,modelProvider:`GOOGLE`,modelName:`gemini-2.0-flash`,modelConfig:{temperature:.2},systemPrompt:`You help schedule and organize meetings efficiently.`,toolChoice:`auto`,maxIterations:5,timeoutMs:6e4,version:`0.1.0`,tags:[`calendar`,`scheduling`],createdAt:new Date(`2024-04-01T12:00:00Z`),updatedAt:new Date(`2024-04-01T12:00:00Z`)}],t=[{id:`tool-1`,organizationId:`demo-org`,name:`Web Search`,slug:`web-search`,description:`Search the web for real-time information using Brave API.`,category:`RETRIEVAL`,status:`ACTIVE`,parametersSchema:{type:`object`,properties:{query:{type:`string`,description:`Search query`},numResults:{type:`number`,default:10}},required:[`query`]},outputSchema:{type:`array`,items:{type:`object`}},implementationType:`http`,implementationConfig:{url:`https://api.brave.com/search`,method:`GET`},maxInvocationsPerMinute:60,timeoutMs:3e4,version:`1.0.0`,tags:[`search`,`web`],createdAt:new Date(`2024-01-01T00:00:00Z`),updatedAt:new Date(`2024-02-15T10:00:00Z`)},{id:`tool-2`,organizationId:`demo-org`,name:`SQL Query`,slug:`sql-query`,description:`Execute read-only SQL queries against the data warehouse.`,category:`RETRIEVAL`,status:`ACTIVE`,parametersSchema:{type:`object`,properties:{query:{type:`string`,description:`SQL query`},maxRows:{type:`number`,default:100}},required:[`query`]},outputSchema:{type:`object`},implementationType:`function`,implementationConfig:{handler:`executeSqlQuery`},maxInvocationsPerMinute:30,timeoutMs:6e4,version:`1.1.0`,tags:[`sql`,`database`],createdAt:new Date(`2024-01-05T00:00:00Z`),updatedAt:new Date(`2024-03-10T14:00:00Z`)},{id:`tool-3`,organizationId:`demo-org`,name:`Email Sender`,slug:`email-sender`,description:`Send emails via SMTP or API.`,category:`COMMUNICATION`,status:`ACTIVE`,parametersSchema:{type:`object`,properties:{to:{type:`string`},subject:{type:`string`},body:{type:`string`}},required:[`to`,`subject`,`body`]},implementationType:`http`,implementationConfig:{url:`/api/send-email`,method:`POST`},maxInvocationsPerMinute:10,timeoutMs:3e4,version:`1.0.0`,tags:[`email`,`communication`],createdAt:new Date(`2024-02-01T00:00:00Z`),updatedAt:new Date(`2024-02-01T00:00:00Z`)},{id:`tool-4`,organizationId:`demo-org`,name:`GitHub Integration`,slug:`github-integration`,description:`Interact with GitHub repositories, PRs, and issues.`,category:`INTEGRATION`,status:`ACTIVE`,parametersSchema:{type:`object`,properties:{action:{type:`string`,enum:[`list_prs`,`get_pr`,`create_comment`]},repo:{type:`string`},params:{type:`object`}},required:[`action`,`repo`]},implementationType:`http`,implementationConfig:{url:`https://api.github.com`,auth:`token`},maxInvocationsPerMinute:100,timeoutMs:15e3,version:`2.0.0`,tags:[`github`,`integration`,`code`],createdAt:new Date(`2024-02-20T00:00:00Z`),updatedAt:new Date(`2024-04-01T09:00:00Z`)},{id:`tool-5`,organizationId:`demo-org`,name:`Calculator`,slug:`calculator`,description:`Perform mathematical calculations.`,category:`COMPUTATION`,status:`ACTIVE`,parametersSchema:{type:`object`,properties:{expression:{type:`string`,description:`Math expression to evaluate`}},required:[`expression`]},outputSchema:{type:`object`,properties:{result:{type:`number`}}},implementationType:`function`,implementationConfig:{handler:`evaluateMath`},timeoutMs:5e3,version:`1.0.0`,tags:[`math`,`utility`],createdAt:new Date(`2024-01-10T00:00:00Z`),updatedAt:new Date(`2024-01-10T00:00:00Z`)}],n=[{id:`run-1`,organizationId:`demo-org`,agentId:`agent-1`,agentName:`Customer Support Bot`,userId:`user-1`,sessionId:`session-1`,input:{message:`How do I reset my password?`,context:{}},output:{response:`You can reset your password by clicking...`},status:`COMPLETED`,totalTokens:1250,promptTokens:800,completionTokens:450,totalIterations:3,durationMs:4500,estimatedCostUsd:.0025,queuedAt:new Date(`2024-04-15T10:00:00Z`),startedAt:new Date(`2024-04-15T10:00:01Z`),completedAt:new Date(`2024-04-15T10:00:05Z`)},{id:`run-2`,organizationId:`demo-org`,agentId:`agent-2`,agentName:`Code Review Assistant`,userId:`user-2`,input:{message:`Review PR #123`,context:{prNumber:123}},status:`IN_PROGRESS`,totalTokens:3500,promptTokens:3e3,completionTokens:500,totalIterations:5,queuedAt:new Date(`2024-04-15T10:30:00Z`),startedAt:new Date(`2024-04-15T10:30:02Z`)},{id:`run-3`,organizationId:`demo-org`,agentId:`agent-1`,agentName:`Customer Support Bot`,userId:`user-1`,input:{message:`What are your business hours?`},output:{response:`Our business hours are 9 AM to 5 PM EST...`},status:`COMPLETED`,totalTokens:800,promptTokens:500,completionTokens:300,totalIterations:2,durationMs:2100,estimatedCostUsd:.0012,queuedAt:new Date(`2024-04-15T09:00:00Z`),startedAt:new Date(`2024-04-15T09:00:01Z`),completedAt:new Date(`2024-04-15T09:00:03Z`)},{id:`run-4`,organizationId:`demo-org`,agentId:`agent-3`,agentName:`Data Analyst`,userId:`user-3`,input:{message:`Generate sales report for Q1`},status:`FAILED`,errorMessage:`Database connection timeout`,errorCode:`DB_TIMEOUT`,totalTokens:2e3,promptTokens:1500,completionTokens:500,totalIterations:8,durationMs:45e3,queuedAt:new Date(`2024-04-14T15:00:00Z`),startedAt:new Date(`2024-04-14T15:00:05Z`),completedAt:new Date(`2024-04-14T15:00:50Z`)},{id:`run-5`,organizationId:`demo-org`,agentId:`agent-2`,agentName:`Code Review Assistant`,userId:`user-2`,input:{message:`Review PR #120`},output:{response:`Code review complete. 3 suggestions...`},status:`COMPLETED`,totalTokens:5200,promptTokens:4e3,completionTokens:1200,totalIterations:7,durationMs:15e3,estimatedCostUsd:.0156,queuedAt:new Date(`2024-04-14T11:00:00Z`),startedAt:new Date(`2024-04-14T11:00:03Z`),completedAt:new Date(`2024-04-14T11:00:18Z`)}],r=[{id:`step-1`,runId:`run-1`,stepNumber:1,type:`MESSAGE_CREATION`,input:{message:`How do I reset my password?`},output:{parsed:!0},status:`COMPLETED`,tokensUsed:200,durationMs:500,startedAt:new Date(`2024-04-15T10:00:01Z`),completedAt:new Date(`2024-04-15T10:00:01Z`)},{id:`step-2`,runId:`run-1`,stepNumber:2,type:`TOOL_CALL`,toolId:`tool-1`,toolName:`Web Search`,input:{query:`password reset documentation`},output:{results:[]},status:`COMPLETED`,tokensUsed:500,durationMs:2e3,startedAt:new Date(`2024-04-15T10:00:02Z`),completedAt:new Date(`2024-04-15T10:00:04Z`)},{id:`step-3`,runId:`run-1`,stepNumber:3,type:`MESSAGE_CREATION`,output:{response:`You can reset your password by clicking...`},status:`COMPLETED`,tokensUsed:550,durationMs:2e3,startedAt:new Date(`2024-04-15T10:00:04Z`),completedAt:new Date(`2024-04-15T10:00:05Z`)}],i=[{id:`log-1`,runId:`run-1`,stepId:`step-1`,level:`INFO`,message:`Run started`,timestamp:new Date(`2024-04-15T10:00:01Z`),source:`orchestrator`},{id:`log-2`,runId:`run-1`,stepId:`step-2`,level:`DEBUG`,message:`Calling tool: Web Search`,data:{toolId:`tool-1`},timestamp:new Date(`2024-04-15T10:00:02Z`),source:`tool-executor`},{id:`log-3`,runId:`run-1`,stepId:`step-2`,level:`INFO`,message:`Tool execution completed`,data:{duration:2e3},timestamp:new Date(`2024-04-15T10:00:04Z`),source:`tool-executor`},{id:`log-4`,runId:`run-1`,level:`INFO`,message:`Run completed successfully`,timestamp:new Date(`2024-04-15T10:00:05Z`),source:`orchestrator`}];export{e as MOCK_AGENTS,n as MOCK_RUNS,i as MOCK_RUN_LOGS,r as MOCK_RUN_STEPS,t as MOCK_TOOLS};
@@ -1 +0,0 @@
1
- import{MOCK_RUNS as e,MOCK_RUN_LOGS as t,MOCK_RUN_STEPS as n}from"./mock-data.js";async function r(t){let{agentId:n,status:r,limit:i=20,offset:a=0}=t,o=[...e];n&&(o=o.filter(e=>e.agentId===n)),r&&(o=o.filter(e=>e.status===r)),o.sort((e,t)=>t.queuedAt.getTime()-e.queuedAt.getTime());let s=o.length;return{items:o.slice(a,a+i).map(e=>({id:e.id,agentId:e.agentId,agentName:e.agentName,status:e.status,totalTokens:e.totalTokens,durationMs:e.durationMs,estimatedCostUsd:e.estimatedCostUsd,queuedAt:e.queuedAt,completedAt:e.completedAt})),total:s,hasMore:a+i<s}}async function i(r){let i=e.find(e=>e.id===r.runId);if(!i)throw Error(`RUN_NOT_FOUND`);let a={...i,promptTokens:i.promptTokens??0,completionTokens:i.completionTokens??0,totalIterations:i.totalIterations??0};return r.includeSteps&&(a.steps=n.filter(e=>e.runId===r.runId).map(e=>({id:e.id,stepNumber:e.stepNumber,type:e.type,toolId:e.toolId,toolName:e.toolName,input:e.input,output:e.output,status:e.status,errorMessage:void 0,tokensUsed:e.tokensUsed,durationMs:e.durationMs,startedAt:e.startedAt,completedAt:e.completedAt}))),r.includeLogs&&(a.logs=t.filter(e=>e.runId===r.runId).map(e=>({id:e.id,stepId:e.stepId,level:e.level,message:e.message,data:e.data,source:e.source,timestamp:e.timestamp}))),a}async function a(t){let{agentId:n}=t,r=[...e];n&&(r=r.filter(e=>e.agentId===n));let i=r.filter(e=>e.status===`COMPLETED`),a=r.filter(e=>e.status===`FAILED`),o=r.reduce((e,t)=>e+t.totalTokens,0),s=r.reduce((e,t)=>e+(t.estimatedCostUsd??0),0),c=i.length>0?i.reduce((e,t)=>e+(t.durationMs??0),0)/i.length:0;return{totalRuns:r.length,completedRuns:i.length,failedRuns:a.length,totalTokens:o,totalCostUsd:s,averageDurationMs:c,successRate:r.length>0?i.length/r.length:0,timeline:[{period:`2024-04-14`,runs:2,tokens:7200,costUsd:.0168,avgDurationMs:3e4},{period:`2024-04-15`,runs:3,tokens:5550,costUsd:.0137,avgDurationMs:3600}]}}async function o(e){return{runId:`run-${Date.now()}`,status:`QUEUED`,estimatedWaitMs:2e3}}async function s(t){let n=e.find(e=>e.id===t.runId);if(!n)throw Error(`RUN_NOT_FOUND`);if(![`QUEUED`,`IN_PROGRESS`].includes(n.status))throw Error(`RUN_NOT_CANCELLABLE`);return{success:!0,status:`CANCELLED`}}export{s as mockCancelRunHandler,o as mockExecuteAgentHandler,i as mockGetRunHandler,a as mockGetRunMetricsHandler,r as mockListRunsHandler};
@@ -1 +0,0 @@
1
- import{MOCK_TOOLS as e}from"./mock-data.js";async function t(t){let{organizationId:n,category:r,status:i,search:a,limit:o=20,offset:s=0}=t,c=e.filter(e=>e.organizationId===n);if(r&&(c=c.filter(e=>e.category===r)),i&&(c=c.filter(e=>e.status===i)),a){let e=a.toLowerCase();c=c.filter(t=>t.name.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)||t.tags?.some(t=>t.toLowerCase().includes(e)))}let l=c.length;return{items:c.slice(s,s+o).map(e=>({id:e.id,name:e.name,slug:e.slug,description:e.description,category:e.category,status:e.status,version:e.version,createdAt:e.createdAt})),total:l,hasMore:s+o<l}}async function n(t){let n=e.find(e=>e.id===t.toolId);if(!n)throw Error(`TOOL_NOT_FOUND`);return n}async function r(t){if(e.some(e=>e.organizationId===t.organizationId&&e.slug===t.slug))throw Error(`SLUG_EXISTS`);return{id:`tool-${Date.now()}`,name:t.name,slug:t.slug,status:`DRAFT`}}async function i(t){if(!e.find(e=>e.id===t.toolId))throw Error(`TOOL_NOT_FOUND`);return{success:!0,output:{result:`Mock tool execution result`},durationMs:Math.floor(Math.random()*1e3)+100}}export{r as mockCreateToolHandler,n as mockGetToolHandler,t as mockListToolsHandler,i as mockTestToolHandler};
@@ -1 +0,0 @@
1
- import{AgentSummaryModel as e}from"../contracts/agent.js";const t={meta:{name:`agent-console.agent.list`,version:1,description:`List view of AI agents with status, model provider, and version info`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`agent`,`list`,`dashboard`]},source:{type:`component`,framework:`react`,componentKey:`AgentListView`,props:e},targets:[`react`,`markdown`,`application/json`],policy:{flags:[`agent-console.enabled`]}},n={meta:{name:`agent-console.agent.detail`,version:1,description:`Detailed view of an AI agent with configuration, tools, and recent runs`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`agent`,`detail`]},source:{type:`component`,framework:`react`,componentKey:`AgentDetailView`},targets:[`react`,`markdown`],policy:{flags:[`agent-console.enabled`]}};export{n as AgentDetailPresentation,t as AgentListPresentation};
@@ -1 +0,0 @@
1
- const e={meta:{name:`agent-console.dashboard`,version:1,description:`Main dashboard for AI agent operations with stats, recent activity, and quick actions`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`dashboard`,`overview`]},source:{type:`component`,framework:`react`,componentKey:`AgentConsoleDashboard`},targets:[`react`,`markdown`],policy:{flags:[`agent-console.enabled`]}};export{e as AgentConsoleDashboardPresentation};
@@ -1 +0,0 @@
1
- import{RunSummaryModel as e}from"../contracts/run.js";const t={meta:{name:`agent-console.run.list`,version:1,description:`List view of agent execution runs with status, tokens, duration, and cost`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`run`,`list`,`history`]},source:{type:`component`,framework:`react`,componentKey:`RunListView`,props:e},targets:[`react`,`markdown`,`application/json`],policy:{flags:[`agent-console.enabled`]}},n={meta:{name:`agent-console.run.detail`,version:1,description:`Detailed view of a run with step-by-step execution and logs`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`run`,`detail`,`debug`]},source:{type:`component`,framework:`react`,componentKey:`RunDetailView`},targets:[`react`,`markdown`],policy:{flags:[`agent-console.enabled`]}},r={meta:{name:`agent-console.run.metrics`,version:1,description:`Metrics and analytics dashboard for agent runs`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`run`,`metrics`,`analytics`]},source:{type:`component`,framework:`react`,componentKey:`RunMetricsView`},targets:[`react`,`markdown`],policy:{flags:[`agent-console.enabled`]}};export{n as RunDetailPresentation,t as RunListPresentation,r as RunMetricsPresentation};
@@ -1 +0,0 @@
1
- import{ToolSummaryModel as e}from"../contracts/tool.js";const t={meta:{name:`agent-console.tool.registry`,version:1,description:`Registry of available tools organized by category`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`tool`,`registry`,`list`]},source:{type:`component`,framework:`react`,componentKey:`ToolRegistryView`,props:e},targets:[`react`,`markdown`,`application/json`],policy:{flags:[`agent-console.enabled`]}},n={meta:{name:`agent-console.tool.detail`,version:1,description:`Detailed view of a tool with schema and configuration`,domain:`agent-console`,owners:[`agent-console-team`],tags:[`tool`,`detail`]},source:{type:`component`,framework:`react`,componentKey:`ToolDetailView`},targets:[`react`,`markdown`],policy:{flags:[`agent-console.enabled`]}};export{n as ToolDetailPresentation,t as ToolRegistryPresentation};