{"version":3,"sources":["../../../../../src/agents/react/runners/granite/runner.ts"],"names":["GraniteRunner","DefaultRunner","useNativeToolCalling","defaultTemplates","system","GraniteReActAgentSystemPrompt","assistant","GraniteReActAgentAssistantPrompt","user","GraniteReActAgentUserPrompt","schemaError","GraniteReActAgentSchemaErrorPrompt","toolNotFoundError","GraniteReActAgentToolNotFoundPrompt","toolError","GraniteReActAgentToolErrorPrompt","toolInputError","GraniteReActAgentToolInputErrorPrompt","userEmpty","ReActAgentUserEmptyPrompt","toolNoResultError","ReActAgentToolNoResultsPrompt","register","input","options","run","emitter","on","update","meta","memory","data","key","add","ToolMessage","type","output","success","value","toolName","tool_name","toolCallId","isBlocking","createParser","tools","parser","fork","nodes","thought","prefix","tool_input","isEnd","next","final_answer","enumerable"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA0BO,MAAMA,sBAAsBC,wBAAAA,CAAAA;AAAAA,EAAAA;;;EACvBC,oBAAAA,GAAuB,IAAA;AAEjC,EAAA,IACWC,gBAAAA,GAAmB;AAC5B,IAAA,OAAO;MACLC,MAAAA,EAAQC,2CAAAA;MACRC,SAAAA,EAAWC,8CAAAA;MACXC,IAAAA,EAAMC,yCAAAA;MACNC,WAAAA,EAAaC,gDAAAA;MACbC,iBAAAA,EAAmBC,iDAAAA;MACnBC,SAAAA,EAAWC,8CAAAA;MACXC,cAAAA,EAAgBC,mDAAAA;;MAEhBC,SAAAA,EAAWC,qCAAAA;MACXC,iBAAAA,EAAmBC;AACrB,KAAA;AACF,EAAA;EAEA;AACE,IAAA,IAAA,CAAKC,QAAAA,EAAQ;AACf;EAEA,WAAA,CACEC,KAAAA,EACAC,SACAC,GAAAA,EACA;AACA,IAAA,KAAA,CAAMF,KAAAA,EAAOC,SAASC,GAAAA,CAAAA;AAEtBA,IAAAA,GAAAA,CAAIC,OAAAA,CAAQC,GACV,QAAA,EACA,OAAO,EAAEC,MAAAA,EAAQC,IAAAA,EAAMC,MAAAA,EAAQC,IAAAA,EAAI,KAAE;AACnC,MAAA,IAAIH,MAAAA,CAAOI,QAAQ,aAAA,EAAe;AAChC,QAAA,MAAMF,MAAAA,CAAOG,GAAAA,CACX,IAAIC,uBAAAA,CACF;UACEC,IAAAA,EAAM,aAAA;UACNC,MAAAA,EAAQ;YAAED,IAAAA,EAAMN,IAAAA,CAAKQ,UAAU,MAAA,GAAS,YAAA;AAAcC,YAAAA,KAAAA,EAAOV,MAAAA,CAAOU;AAAM,WAAA;AAC1EC,UAAAA,QAAAA,EAAUR,IAAAA,CAAKS,SAAAA;UACfC,UAAAA,EAAY;SACd,EACA;AAAEJ,UAAAA,OAAAA,EAASR,IAAAA,CAAKQ;AAAQ,SAAA,CAAA,CAAA;AAG9B,MAAA;IACF,CAAA,EACA;MACEK,UAAAA,EAAY;KACd,CAAA;AAEJ,EAAA;AAEUC,EAAAA,YAAAA,CAAaC,KAAAA,EAAkB;AACvC,IAAA,MAAM,EAAEC,MAAAA,EAAM,GAAK,KAAA,CAAMF,aAAaC,KAAAA,CAAAA;AAEtC,IAAA,OAAO;AACLC,MAAAA,MAAAA,EAAQA,MAAAA,CAAOC,IAAAA,CAA4B,CAACC,KAAAA,EAAOvB,OAAAA,MAAa;AAC9DA,QAAAA,OAAAA;QACAuB,KAAAA,EAAO;UACL,GAAGA,KAAAA;UACHC,OAAAA,EAAS;AAAE,YAAA,GAAGD,KAAAA,CAAMC,OAAAA;YAASC,MAAAA,EAAQ;AAAW,WAAA;UAChDT,SAAAA,EAAW;AAAE,YAAA,GAAGO,KAAAA,CAAMP,SAAAA;YAAWS,MAAAA,EAAQ;AAAa,WAAA;UACtDC,UAAAA,EAAY;AAAE,YAAA,GAAGH,KAAAA,CAAMG,UAAAA;YAAYD,MAAAA,EAAQ,aAAA;YAAeE,KAAAA,EAAO,IAAA;AAAMC,YAAAA,IAAAA,EAAM;AAAG,WAAA;UAChFC,YAAAA,EAAc;AAAE,YAAA,GAAGN,KAAAA,CAAMM,YAAAA;YAAcJ,MAAAA,EAAQ;AAAgB;AACjE;OACF,CAAA;AACF,KAAA;AACF,EAAA;AACF;;;IAlEWK,UAAAA,EAAY","file":"runner.cjs","sourcesContent":["/**\n * Copyright 2025 © BeeAI a Series of LF Projects, LLC\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { ToolMessage } from \"@/backend/message.js\";\nimport type { AnyTool } from \"@/tools/base.js\";\nimport { DefaultRunner } from \"@/agents/react/runners/default/runner.js\";\nimport type { ReActAgentParserInput, ReActAgentRunOptions } from \"@/agents/react/types.js\";\nimport { ReActAgent, ReActAgentInput } from \"@/agents/react/agent.js\";\nimport type { GetRunContext } from \"@/context.js\";\nimport {\n  GraniteReActAgentAssistantPrompt,\n  GraniteReActAgentSchemaErrorPrompt,\n  GraniteReActAgentSystemPrompt,\n  GraniteReActAgentToolErrorPrompt,\n  GraniteReActAgentToolInputErrorPrompt,\n  GraniteReActAgentToolNotFoundPrompt,\n  GraniteReActAgentUserPrompt,\n} from \"@/agents/react/runners/granite/prompts.js\";\nimport {\n  ReActAgentToolNoResultsPrompt,\n  ReActAgentUserEmptyPrompt,\n} from \"@/agents/react/prompts.js\";\nimport { Cache } from \"@/cache/decoratorCache.js\";\n\nexport class GraniteRunner extends DefaultRunner {\n  protected useNativeToolCalling = true;\n\n  @Cache({ enumerable: false })\n  public get defaultTemplates() {\n    return {\n      system: GraniteReActAgentSystemPrompt,\n      assistant: GraniteReActAgentAssistantPrompt,\n      user: GraniteReActAgentUserPrompt,\n      schemaError: GraniteReActAgentSchemaErrorPrompt,\n      toolNotFoundError: GraniteReActAgentToolNotFoundPrompt,\n      toolError: GraniteReActAgentToolErrorPrompt,\n      toolInputError: GraniteReActAgentToolInputErrorPrompt,\n      // Note: These are from ReAct\n      userEmpty: ReActAgentUserEmptyPrompt,\n      toolNoResultError: ReActAgentToolNoResultsPrompt,\n    };\n  }\n\n  static {\n    this.register();\n  }\n\n  constructor(\n    input: ReActAgentInput,\n    options: ReActAgentRunOptions,\n    run: GetRunContext<ReActAgent>,\n  ) {\n    super(input, options, run);\n\n    run.emitter.on(\n      \"update\",\n      async ({ update, meta, memory, data }) => {\n        if (update.key === \"tool_output\") {\n          await memory.add(\n            new ToolMessage(\n              {\n                type: \"tool-result\",\n                output: { type: meta.success ? \"text\" : \"error-text\", value: update.value },\n                toolName: data.tool_name!,\n                toolCallId: \"DUMMY_ID\",\n              },\n              { success: meta.success },\n            ),\n          );\n        }\n      },\n      {\n        isBlocking: true,\n      },\n    );\n  }\n\n  protected createParser(tools: AnyTool[]) {\n    const { parser } = super.createParser(tools);\n\n    return {\n      parser: parser.fork<ReActAgentParserInput>((nodes, options) => ({\n        options,\n        nodes: {\n          ...nodes,\n          thought: { ...nodes.thought, prefix: \"Thought:\" },\n          tool_name: { ...nodes.tool_name, prefix: \"Tool Name:\" },\n          tool_input: { ...nodes.tool_input, prefix: \"Tool Input:\", isEnd: true, next: [] },\n          final_answer: { ...nodes.final_answer, prefix: \"Final Answer:\" },\n        },\n      })),\n    };\n  }\n}\n"]}