zidane 4.1.9 → 5.0.0
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.
- package/README.md +11 -2
- package/dist/{agent-CMIhYhDz.d.ts → agent-JhicgLOV.d.ts} +78 -4
- package/dist/agent-JhicgLOV.d.ts.map +1 -0
- package/dist/chat.d.ts +336 -6
- package/dist/chat.d.ts.map +1 -1
- package/dist/chat.js +2 -2
- package/dist/{index-DAaKyadO.d.ts → index-2yLUyTbc.d.ts} +34 -4
- package/dist/{index-DAaKyadO.d.ts.map → index-2yLUyTbc.d.ts.map} +1 -1
- package/dist/{index-D6Dd6Kc0.d.ts → index-t_W9i7Ql.d.ts} +8 -3
- package/dist/index-t_W9i7Ql.d.ts.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.js +4 -4
- package/dist/{interpolate-BydkV1eT.js → interpolate-Ck970-61.js} +9 -2
- package/dist/{interpolate-BydkV1eT.js.map → interpolate-Ck970-61.js.map} +1 -1
- package/dist/mcp.d.ts +1 -1
- package/dist/presets-BRFH2qsQ.js +90 -0
- package/dist/presets-BRFH2qsQ.js.map +1 -0
- package/dist/presets.d.ts +3 -2
- package/dist/presets.js +2 -2
- package/dist/providers.d.ts +1 -1
- package/dist/session/sqlite.d.ts +1 -1
- package/dist/session/sqlite.d.ts.map +1 -1
- package/dist/session/sqlite.js +28 -13
- package/dist/session/sqlite.js.map +1 -1
- package/dist/{session-B1RN0uoi.js → session-791hhrFa.js} +24 -1
- package/dist/session-791hhrFa.js.map +1 -0
- package/dist/session.d.ts +1 -1
- package/dist/session.js +1 -1
- package/dist/skills.d.ts +2 -2
- package/dist/skills.js +1 -1
- package/dist/theme-pJv47erq.d.ts +1202 -0
- package/dist/theme-pJv47erq.d.ts.map +1 -0
- package/dist/{tools-BdQENveS.js → tools-CLazLRb4.js} +81 -21
- package/dist/tools-CLazLRb4.js.map +1 -0
- package/dist/tools.d.ts +2 -2
- package/dist/tools.js +1 -1
- package/dist/tui.d.ts +258 -30
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +2957 -499
- package/dist/tui.js.map +1 -1
- package/dist/turn-operations-5aQu4dJg.js +3587 -0
- package/dist/turn-operations-5aQu4dJg.js.map +1 -0
- package/dist/types.d.ts +2 -2
- package/package.json +1 -1
- package/dist/agent-CMIhYhDz.d.ts.map +0 -1
- package/dist/index-D6Dd6Kc0.d.ts.map +0 -1
- package/dist/presets-4zCJzCYw.js +0 -39
- package/dist/presets-4zCJzCYw.js.map +0 -1
- package/dist/session-B1RN0uoi.js.map +0 -1
- package/dist/theme-Caf4AvTO.d.ts +0 -637
- package/dist/theme-Caf4AvTO.d.ts.map +0 -1
- package/dist/theme-context-DQM2lx4U.js +0 -1853
- package/dist/theme-context-DQM2lx4U.js.map +0 -1
- package/dist/tools-BdQENveS.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theme-pJv47erq.d.ts","names":[],"sources":["../src/chat/agents.ts","../src/chat/providers.ts","../src/chat/auth.ts","../src/chat/completion.ts","../src/chat/types.ts","../src/chat/store.ts","../src/chat/config.ts","../src/chat/enabled-toggle-set.ts","../src/chat/mcps-discovery.ts","../src/chat/prompt-segments.ts","../src/chat/safe-mode-context.tsx","../src/chat/theme.ts"],"mappings":";;;;;;;;;;;;KAwBY,WAAA;AAAA,UAEK,YAAA;EAeN;EAbT,EAAA;EAaoB;EAXpB,KAAA;EAcuB;EAZvB,WAAA;EAYkD;;;;;;EALlD,MAAA,EAAQ,MAAA;EAK0C;EAHlD,MAAA,GAAS,WAAA;AAAA;AAAA,KAGC,aAAA,GAAgB,QAAA,CAAS,MAAA,SAAe,YAAA;;;;;AAiCpD;cApBa,WAAA,EAAa,YAAA;;;;AAqC1B;;;cAjBa,UAAA,EAAY,YAAA;;AAuBzB;;;;cANa,cAAA,EAAgB,aAAA;AAc7B;AAAA,cARa,gBAAA;;;;;;;iBAQG,cAAA,CACd,QAAA,EAAU,aAAA,EACV,WAAA,sBACA,SAAA;;AAgBF;;;;;iBAAgB,mBAAA,CAAoB,MAAA,EAAQ,MAAA,GAAS,aAAA;;;;AArGrD;;;;;;;;;;;UCEiB,SAAA;EACf,EAAA;EACA,IAAA;EACA,aAAA;EACA,SAAA;EACA,SAAA;EACA,KAAA;EACA,IAAA;IAAS,KAAA;IAAe,MAAA;IAAgB,SAAA;IAAoB,UAAA;EAAA;EAC5D,QAAA;AAAA;AAAA,UAGe,kBAAA;ED8BhB;;;;ECzBC,GAAA;ED2CD;ECzCC,KAAA;ED+BuB;;AAiBzB;;;;;ECxCE,OAAA,QAAe,QAAA;ED8CY;;;;AAQ7B;;;;EC7CE,YAAA;ED8CA;;;;;ECxCA,MAAA;ED0DiC;;;;;;ECnDjC,iBAAA;EDmDgE;ECjDhE,iBAAA;;;AAlDF;;EAuDE,aAAA,GAAgB,sBAAA;EAvDQ;;;;;;EA8DxB,SAAA;EAvDA;;;;EA4DA,YAAA;EA3DA;;;AAGF;;EA8DE,MAAA,YAAkB,SAAA;AAAA;;iBAIJ,SAAA,CAAU,IAAA,EAAM,kBAAA;;iBAKhB,MAAA,CAAO,IAAA,EAAM,kBAAA;AAAA,cAQhB,mBAAA,EAAqB,kBAAA;AAAA,cAWrB,gBAAA,EAAkB,kBAAA;AAAA,cAYlB,oBAAA,EAAsB,kBAAA;AAAA,cAStB,kBAAA,EAAoB,kBAAA;;;;;;;;;;cAkBpB,iBAAA,EAAmB,QAAA,CAAS,MAAA,SAAe,kBAAA;;;AA/DxD;;;;iBAgFgB,mBAAA,CAAoB,UAAA,EAAY,kBAAA,YAA8B,SAAA;AA3E9E;;;;;AAAA,iBA2FgB,gBAAA,CAAiB,UAAA,EAAY,kBAAA,EAAoB,OAAA;;;;;;;;KC/LrD,WAAA;AAAA,UAEK,UAAA;EACf,MAAA;;EAEA,MAAA;AAAA;AAAA,UAGe,YAAA;EACf,GAAA,EAAK,WAAA;EACL,KAAA;EFqBoB;EEnBpB,SAAA;EACA,OAAA,EAAS,UAAA;AAAA;;;;;;;AFqBX;;;;;;;iBELgB,UAAA,CACd,OAAA,UACA,QAAA,EAAU,QAAA,CAAS,MAAA,SAAe,kBAAA,IAClC,GAAA,GAAK,MAAA,+BACJ,YAAA;;;;;;;;;;AFnBH;;;;;AAEA;;;;;;;;;;;UGIiB,cAAA;EHWK;EGTpB,EAAA;EHYuB;EGVvB,KAAA;EHUkD;EGRlD,WAAA;EHQ0B;;;;;EGF1B,UAAA;EHE8D;EGA9D,IAAA,EAAM,KAAA;AAAA;;;;;AHiCR;;;;;UGrBiB,mBAAA;EACf,UAAA;EACA,KAAA;EACA,GAAA;EACA,MAAA;EACA,IAAA,EAAM,KAAA;AAAA;;;;AH+CR;UGxCiB,kBAAA;;EAEf,EAAA;EHuCU;;;;;;EGhCV,OAAA;EHkDiC;EGhDjC,KAAA;EHgDgE;;;;;;;;EGvChE,OAAA,GACE,KAAA,UACA,GAAA,EAAK,iBAAA,EACL,MAAA,EAAQ,WAAA,KACL,cAAA,CAAe,KAAA,MAAW,OAAA,CAAQ,cAAA,CAAe,KAAA;EFhEvC;;;;;EEsEf,eAAA,GACE,IAAA,UACA,GAAA,EAAK,iBAAA,KACF,mBAAA,CAAoB,KAAA;AAAA;;;;;UAOV,iBAAA;EFzES;EE2ExB,IAAA;EF3E4D;EE6E5D,MAAA;AAAA;;AFzEF;;;;UEiFiB,aAAA;EACf,QAAA,EAAU,kBAAA,CAAmB,KAAA;EFpBF;EEsB3B,KAAA;EF/EA;EEiFA,IAAA;IAAQ,KAAA;IAAe,GAAA;EAAA;AAAA;;;;;;;;;;;AFpBzB;;;iBEwCgB,iBAAA,OAAA,CACd,IAAA,UACA,MAAA,UACA,SAAA,WAAoB,kBAAA,CAAmB,KAAA,KACvC,OAAA;EAAW,cAAA;AAAA,IACV,aAAA,CAAc,KAAA;;;;;iBAqCD,WAAA,CACd,IAAA,UACA,IAAA;EAAQ,KAAA;EAAe,GAAA;AAAA,GACvB,UAAA;EACG,IAAA;EAAc,MAAA;AAAA;;;;AFlDnB;;;iBE6DgB,eAAA,OAAA,CACd,IAAA,WAAe,mBAAA,CAAoB,KAAA,MAClC,mBAAA,CAAoB,KAAA;;AFtDvB;;;;iBEwEgB,iBAAA,OAAA,CACd,IAAA,UACA,SAAA,WAAoB,kBAAA,CAAmB,KAAA,KACvC,MAAA,YACC,mBAAA,CAAoB,KAAA;AF1DvB;AAAA,UEyEiB,eAAA;;EAEf,MAAA,EAAQ,aAAA,CAAc,KAAA;EF3EiB;EE6EvC,KAAA,WAAgB,cAAA,CAAe,KAAA;EF7EO;EE+EtC,OAAA;EF/E8B;EEiF9B,aAAA;EFjFsD;EEmFtD,UAAA;EACA,UAAA;EFnEc;;;;EEwEd,MAAA;IAAgB,IAAA;IAAc,MAAA;EAAA;EFxEuD;EE0ErF,OAAA;EF1D8B;EE4D9B,UAAA,WAAqB,mBAAA,CAAoB,KAAA;AAAA;;;;;;;;;AD3P3C;;;;iBC0QgB,aAAA,iBAAA,CACd,KAAA;EAAS,IAAA;EAAc,MAAA;AAAA,GACvB,SAAA,WAAoB,kBAAA,CAAmB,KAAA,KACvC,OAAA;EAAW,cAAA;AAAA,IACV,eAAA,CAAgB,KAAA;;;KCtRP,MAAA;;KAGA,KAAA;AAAA,UAEK,WAAA;EACf,IAAA;;AJgBF;;;;;AAEA;;;;EAEE;;;;EAAA;EIIA,IAAA;EJSS;;;AAGX;;;;EIJE,SAAA;EJI0B;EIF1B,OAAA;EJEkC;EIAlC,KAAA;EJAmC;;;;AAarC;;EINE,IAAA;EJMwB;;AAoB1B;;;;;AAiBA;;EIjCE,IAAA;IAAkB,KAAA;IAAe,GAAA;IAAa,UAAA;EAAA;;;;AJ+ChD;;;;;;;;EInCE,MAAA;AAAA;AAAA,UAGe,MAAA;EACf,QAAA,EAAU,YAAA;EACV,KAAA;AAAA;AAAA,UAGe,WAAA;EACf,EAAA;EACA,KAAA;EJ4CgE;EI1ChE,SAAA;;EAEA,gBAAA;;EAEA,QAAA;EH7DwB;;;;;;EGoExB,WAAA;EACA,SAAA;AAAA;;UAIe,QAAA;EACf,YAAA;EACA,aAAA;EACA,eAAA;EHpEA;;;AAGF;;EGuEE,QAAA;EHxDe;;;;;;;;;;EGmEf,kBAAA;EH7CA;;;;;EGmDA,KAAA;EH1BA;;;;AAIF;;;EG8BE,eAAA;EH9BgD;AAKlD;;;;EG+BE,aAAA;EHvBW;;;;;EG6BX,WAAA;AAAA;;;UC3Ge,QAAA;EACf,YAAA,GAAe,WAAA;EACf,aAAA;ELlBU;EKoBV,mBAAA,GAAsB,OAAA,CAAQ,MAAA,CAAO,WAAA;;;;ALlBvC;;;EKyBE,SAAA;ELvBA;EKyBA,QAAA,GAAW,OAAA,CAAQ,QAAA;AAAA;AAAA,UAGJ,aAAA;EACf,IAAA,QAAY,QAAA;EACZ,IAAA,GAAO,KAAA,EAAO,QAAA;AAAA;AAAA,iBAGA,gBAAA,CAAiB,IAAA,WAAe,aAAA;AAAA,iBAOhC,SAAA,CAAU,IAAA,WAAe,QAAA;AAAA,iBAczB,SAAA,CAAU,IAAA,UAAc,KAAA,EAAO,QAAA;;;;;;;;;;;iBA0BzB,eAAA,CACpB,KAAA,EAAO,YAAA,EACP,MAAA;ELrDW;;;;;AAoBb;EKwCI,WAAA;AAAA,IAED,OAAA,CAAQ,WAAA;;iBA+BK,cAAA,CAAe,KAAA,EAAO,WAAA;ALxDtC;;;;;AAMA;;;;;AANA,iBK+EgB,kBAAA,CACd,KAAA,EAAO,WAAA,IACP,QAAA,GAAW,MAAA;;;;;;;;;;ALhDb;;;;;;;;;iBK0EgB,eAAA,CACd,KAAA,EAAO,WAAA,IACP,IAAA,YAAe,UAAA,KACd,WAAA;;iBA0Ma,eAAA,CAAgB,IAAA,UAAc,KAAA,EAAO,MAAA;AJ1XrD;AAAA,iBIgYgB,cAAA,CAAe,MAAA,WAAiB,iBAAA;;;;;;;;;;;;;;iBAiBhC,oBAAA,CAAqB,IAAA;;;AJtYrC;;;;;;;;;;;;;;;iBI0agB,iBAAA,CAAkB,MAAA,WAAiB,WAAA;;;;;;;;;AJxWnD;;;;;iBIqYgB,wBAAA,CACd,KAAA,EAAO,WAAA,IACP,IAAA,YAAe,UAAA;;;;;;ALtdjB;;;KMKY,gBAAA,GAAmB,QAAA,CAAS,MAAA,SAAe,kBAAA;;;;;;UAOtC,WAAA;ENGN;;;AAGX;;EMAE,MAAA;ENAkD;;;;EMKlD,UAAA;ENL0B;;;;;AAa5B;;;;;AAoBA;EMhBE,SAAA,GAAY,gBAAA;;;;ANiCd;;;;;EMxBE,MAAA,GAAS,MAAA;EN8BkB;;;;AAQ7B;;;;;;;;EMzBE,MAAA,GAAS,aAAA;EN4BoB;AAgB/B;;;;EMtCE,YAAA;ENsCkC;;;;;;;ACnGpC;;;;;;;;;;;;EKiFE,KAAA,EAAO,YAAA,KAAiB,KAAA,EAAO,aAAA,KAAkB,YAAA;EL1ET;;;;;AAI1C;;;;;;;;;EKqFE,SAAA;ELtEA;;;;;;EK6EA,GAAA;AAAA;;UAIe,aAAA;ELlCf;;;;AAIF;;EKqCE,GAAA;ELrC8B;;AAKhC;;;;EKuCE,OAAA;EL/BW;;;;EKoCX,UAAA;ELzBW;EK2BX,EAAA;;EAEA,KAAA;AAAA;AAAA,UAOe,cAAA;EACf,MAAA;EACA,UAAA;EACA,KAAA,EAAO,aAAA;EACP,SAAA,EAAW,gBAAA;ELnBA;;;;EKwBX,MAAA,EAAQ,aAAA;ELNG;EKQX,cAAA;EACA,KAAA,EAAO,YAAA;EACP,UAAA,EAAY,aAAA;ELV2B;EKYvC,SAAA,GAAY,GAAA,EAAK,WAAA,cAAyB,SAAA;EAC1C,YAAA,EAAc,QAAA;EACd,eAAA,EAAiB,OAAA,CAAQ,QAAA;EACzB,cAAA,EAAgB,YAAA;EAChB,aAAA,EAAe,MAAA;AAAA;;iBAID,aAAA,CAAc,OAAA,EAAS,WAAA,GAAc,cAAA;;;;;;;;;;ANpKrD;;;;;AAEA;;;;;;;;;;KOAY,mBAAA;AAAA,UAEK,gBAAA;EPaK;EOXpB,UAAA,EAAY,WAAA;EPcW;EOZvB,MAAA,GAAS,IAAA;AAAA;;;;;;;;iBAUK,mBAAA,GAAA,CAAuB,IAAA;EACrC,OAAA,WAAkB,CAAA;EAClB,KAAA,GAAQ,KAAA,EAAO,CAAA;EACf,UAAA,EAAY,mBAAA;AAAA,IACV,gBAAA;;;APpBJ;;;;AAAA,UQLiB,aAAA;EACf,MAAA,EAAQ,eAAA;EACR,MAAA;EACA,IAAA;AAAA;;;;;ARoBF;iBQZgB,sBAAA,CAAuB,IAAA;EACrC,GAAA;EACA,IAAA;EACA,MAAA;AAAA;EACS,IAAA;EAAc,MAAA;AAAA;;;;;ARqBzB;;;;;AAoBA;;;;;iBQvBgB,aAAA,CAAc,IAAA,WAAe,eAAA;;;;;AR8C7C;;;;;iBQzBgB,mBAAA,CAAoB,IAAA;EAClC,GAAA;EACA,IAAA;EACA,MAAA;AAAA,IACO,aAAA;;;;;;ARgDT;;;;;;;iBQVgB,eAAA,CAAgB,IAAA;EAC9B,UAAA,WAAqB,aAAA;EACrB,OAAA;AAAA,IACE,eAAA;;;;;;;;;;ARhGJ;;;;;AAEA;;;;USTiB,gBAAA;EACf,KAAA;EACA,GAAA;EToBA;ESlBA,UAAA;AAAA;;;;ATuBF;;;KSdY,aAAA;EACJ,IAAA;EAAe,IAAA;AAAA;EACf,IAAA;EAAc,IAAA;EAAc,UAAA;AAAA;;;ATyBpC;;;;;AAoBA;;;;;AAiBA;;;;;AAMA;;;;;iBS5CgB,mBAAA,CACd,IAAA,UACA,IAAA,WAAe,gBAAA,KACd,aAAA;;;KCnCS,gBAAA;AAAA,UAEK,eAAA;EACf,EAAA;EACA,IAAA;EACA,KAAA,EAAO,MAAA;EACP,OAAA,GAAU,QAAA,EAAU,gBAAA;AAAA;;KAIV,eAAA,IAAmB,IAAA,UAAc,KAAA,EAAO,MAAA,sBAA4B,OAAA,CAAQ,gBAAA;AAAA,UAEvE,eAAA;EVQmB;EUNlC,eAAA,EAAiB,eAAA;EVMS;EUJ1B,WAAA,GAAc,QAAA,EAAU,gBAAA;EVI0B;EUFlD,OAAA;AAAA;AVeF;;;;AAAA,iBUIgB,gBAAA,CAAA;EAAmB;AAAA;EAAc,QAAA,EAAU,SAAA;AAAA,IAAW,oBAAA,CAAA,GAAA,CAAA,OAAA;AAAA,iBA8CtD,gBAAA,CAAA,YAA6B,eAAA;AAAA,iBAI7B,kBAAA,CAAA,GAAsB,eAAA;;;;;;;;;;AVvFtC;;;;;AAEA;;;;;;;;UWGiB,WAAA;EXYf;EWVA,KAAA;EXUoB;EWRpB,MAAA;EXWU;EWTV,KAAA;;EAEA,IAAA;EXOmC;EWLnC,KAAA;EXKkC;EWHlC,GAAA;EXG0B;EWD1B,IAAA;EXCkD;EWClD,MAAA;EXD8D;EWG9D,YAAA;AAAA;;UAIe,WAAA;EACf,eAAA;EACA,sBAAA;EACA,uBAAA;EACA,iBAAA;EACA,SAAA;EACA,gBAAA;EACA,wBAAA;AAAA;;UAIe,SAAA;EXmChB;EWjCC,EAAA;EXoC2B;EWlC3B,EAAA;AAAA;;AX0CF;;;;;;;;;;AAmBA;;KW7CY,YAAA;EAAiB,OAAA,EAAS,SAAA;AAAA,IAAc,OAAA,CAAQ,MAAA,SAAe,SAAA;;;;;;;iBAQ3D,gBAAA,CAAiB,KAAA,EAAO,YAAA,EAAc,UAAA,WAAqB,SAAA;AV9D3E;AAAA,UUmEiB,aAAA;;EAEf,KAAA;EVpEA;;;;;EU0EA,KAAA,EAAO,YAAA;EVpEP;;;;;;;EU4EA,SAAA;AAAA;;;;;UAOe,gBAAA;EACf,EAAA;EACA,EAAA;EACA,IAAA;EACA,MAAA;EACA,SAAA;EACA,GAAA;AAAA;;;;;;;;;;;;AVnBF;KUkCY,YAAA,GAAe,MAAA,SAAe,gBAAA;;UAGzB,KAAA;EVrCiC;EUuChD,EAAA;EVlCoB;EUoCpB,KAAA;EACA,MAAA,EAAQ,WAAA;EACR,MAAA,EAAQ,WAAA;EACR,QAAA,EAAU,aAAA;EACV,MAAA,EAAQ,YAAA;AAAA;AAAA,cAmDG,aAAA,EAAe,KAAA;;AVxE5B;;;;;AAYA;;;;cUiLa,cAAA,EAAgB,QAAA,CAAS,MAAA,SAAe,KAAA;AVxKrD;AAAA,iBUkLgB,YAAA,CAAa,EAAA,uBAAyB,KAAA"}
|
|
@@ -2,7 +2,7 @@ import { n as createProcessContext } from "./contexts-3Arvn7yR.js";
|
|
|
2
2
|
import { r as AgentProviderError, s as toTypedError, t as AgentAbortedError } from "./errors-D1lhd6mX.js";
|
|
3
3
|
import { t as toolOutputByteLength } from "./types-Bx_F8jet.js";
|
|
4
4
|
import { t as connectMcpServers } from "./mcp-Dw-fRPVk.js";
|
|
5
|
-
import { _ as validateResourcePath, b as createSkillActivationState, d as escapeXml, n as resolveSkills, p as installAllowedToolsGate, t as interpolateShellCommands, u as buildCatalog } from "./interpolate-
|
|
5
|
+
import { _ as validateResourcePath, b as createSkillActivationState, d as escapeXml, n as resolveSkills, p as installAllowedToolsGate, t as interpolateShellCommands, u as buildCatalog } from "./interpolate-Ck970-61.js";
|
|
6
6
|
import { n as formatTokenUsage, t as flattenTurns } from "./stats-DZIsGqzu.js";
|
|
7
7
|
import { createHooks } from "hookable";
|
|
8
8
|
import { stat } from "node:fs/promises";
|
|
@@ -1996,10 +1996,43 @@ function installLazyDisclosureGate(hooks, lazyCanonicalNames, unlocked, discover
|
|
|
1996
1996
|
ctx.reason = discoveryToolName ? `Tool "${ctx.name}" is listed in <searchable_tools> but its schema has not been loaded. Call the \`${discoveryToolName}\` tool with names: ["${ctx.name}"] first, then re-issue the call.` : `Tool "${ctx.name}" is listed in <searchable_tools> but its schema has not been loaded.`;
|
|
1997
1997
|
});
|
|
1998
1998
|
}
|
|
1999
|
-
|
|
1999
|
+
/**
|
|
2000
|
+
* Pick the next safe value for `runCounter` so `run_${++counter}` mints
|
|
2001
|
+
* an id that doesn't collide with any runId already referenced by the
|
|
2002
|
+
* session — whether the runId lives in `session.runs` or only in
|
|
2003
|
+
* `session.turns[].runId`. The regex matches the canonical `run_<int>`
|
|
2004
|
+
* shape minted by this module; any caller-supplied custom id schemes
|
|
2005
|
+
* are ignored (they don't conflict with `run_N`).
|
|
2006
|
+
*
|
|
2007
|
+
* Returning 0 for a sessionless / clean session preserves the original
|
|
2008
|
+
* "first run is run_1" semantics.
|
|
2009
|
+
*/
|
|
2010
|
+
function initialRunCounter(session) {
|
|
2011
|
+
if (!session) return 0;
|
|
2012
|
+
let max = 0;
|
|
2013
|
+
const consider = (id) => {
|
|
2014
|
+
if (!id) return;
|
|
2015
|
+
const m = /^run_(\d+)$/.exec(id);
|
|
2016
|
+
if (!m) return;
|
|
2017
|
+
const n = Number.parseInt(m[1], 10);
|
|
2018
|
+
if (Number.isFinite(n) && n > max) max = n;
|
|
2019
|
+
};
|
|
2020
|
+
for (const r of session.runs) consider(r.id);
|
|
2021
|
+
for (const t of session.turns) consider(t.runId);
|
|
2022
|
+
return max;
|
|
2023
|
+
}
|
|
2024
|
+
function createAgent({ provider, name: agentName, system: agentSystem, tools: agentTools, toolAliases, behavior: agentBehavior, execution, mcpServers, session, skills: agentSkills, mcpConnector, eager, hooks: initialHooks }) {
|
|
2000
2025
|
const hooks = createHooks();
|
|
2001
2026
|
const executionContext = execution ?? createProcessContext();
|
|
2002
2027
|
const sourceTools = agentTools ?? {};
|
|
2028
|
+
if (initialHooks) for (const [event, handler] of Object.entries(initialHooks)) {
|
|
2029
|
+
if (!isKnownHookEvent(event)) throw new Error(`Unknown hook event "${event}" passed to createAgent(). See AgentHooks for valid events.`);
|
|
2030
|
+
const handlerList = Array.isArray(handler) ? handler : [handler];
|
|
2031
|
+
for (const fn of handlerList) {
|
|
2032
|
+
if (typeof fn !== "function") continue;
|
|
2033
|
+
hooks.hook(event, fn);
|
|
2034
|
+
}
|
|
2035
|
+
}
|
|
2003
2036
|
let abortController;
|
|
2004
2037
|
let running = false;
|
|
2005
2038
|
let idleResolve;
|
|
@@ -2011,13 +2044,47 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2011
2044
|
const steeringQueue = [];
|
|
2012
2045
|
const followUpQueue = [];
|
|
2013
2046
|
let conversationTurns = session?.turns.slice() ?? [];
|
|
2014
|
-
let runCounter = session
|
|
2047
|
+
let runCounter = initialRunCounter(session);
|
|
2015
2048
|
const skillsConfig = agentSkills;
|
|
2016
2049
|
const skillsEnabledValue = skillsConfig?.enabled;
|
|
2017
2050
|
const skillsDisabled = skillsEnabledValue === false || Array.isArray(skillsEnabledValue) && skillsEnabledValue.length === 0;
|
|
2018
2051
|
let resolvedSkills = null;
|
|
2019
2052
|
let skillsCatalog = null;
|
|
2053
|
+
let skillsResolvePromise = null;
|
|
2020
2054
|
let skillsCleanup = () => {};
|
|
2055
|
+
/**
|
|
2056
|
+
* Resolve skills once for the lifetime of the agent. Idempotent and
|
|
2057
|
+
* concurrency-safe; no-op when `skills` is disabled or omitted.
|
|
2058
|
+
*
|
|
2059
|
+
* Used by `run()` (lazy bootstrap), `warmup()` (eager bootstrap), and
|
|
2060
|
+
* `activateSkill()` (so the public API doesn't leak the timing of `run()`).
|
|
2061
|
+
* Fires `skills:resolve` (mutable `skills` array) and `skills:catalog`
|
|
2062
|
+
* (mutable `catalog`) in that order — exactly once per agent.
|
|
2063
|
+
*/
|
|
2064
|
+
async function ensureSkillsResolved() {
|
|
2065
|
+
if (skillsDisabled || !skillsConfig) return;
|
|
2066
|
+
if (resolvedSkills) return;
|
|
2067
|
+
if (skillsResolvePromise) return skillsResolvePromise;
|
|
2068
|
+
skillsResolvePromise = (async () => {
|
|
2069
|
+
const bundle = await resolveSkills(skillsConfig);
|
|
2070
|
+
resolvedSkills = bundle.skills;
|
|
2071
|
+
skillsCleanup = bundle.cleanup;
|
|
2072
|
+
await hooks.callHook("skills:resolve", { skills: resolvedSkills });
|
|
2073
|
+
const skillsToolRegistered = skillsConfig.tool !== false && resolvedSkills.length > 0;
|
|
2074
|
+
const catalogCtx = {
|
|
2075
|
+
catalog: buildCatalog(resolvedSkills, { skillsToolRegistered }),
|
|
2076
|
+
skills: resolvedSkills
|
|
2077
|
+
};
|
|
2078
|
+
await hooks.callHook("skills:catalog", catalogCtx);
|
|
2079
|
+
skillsCatalog = catalogCtx.catalog;
|
|
2080
|
+
})();
|
|
2081
|
+
try {
|
|
2082
|
+
await skillsResolvePromise;
|
|
2083
|
+
} catch (err) {
|
|
2084
|
+
skillsResolvePromise = null;
|
|
2085
|
+
throw err;
|
|
2086
|
+
}
|
|
2087
|
+
}
|
|
2021
2088
|
const skillActivationState = createSkillActivationState({ maxActive: skillsConfig?.maxActive });
|
|
2022
2089
|
async function run(options) {
|
|
2023
2090
|
if (running) throw new Error("Agent is already running. Use steer() or followUp() to queue messages, or waitForIdle().");
|
|
@@ -2069,19 +2136,7 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2069
2136
|
}
|
|
2070
2137
|
if (!executionHandle) executionHandle = await executionContext.spawn();
|
|
2071
2138
|
if (allMcpServers.length > 0 && !mcpConnection) await warmup();
|
|
2072
|
-
|
|
2073
|
-
const bundle = await resolveSkills(skillsConfig);
|
|
2074
|
-
resolvedSkills = bundle.skills;
|
|
2075
|
-
skillsCleanup = bundle.cleanup;
|
|
2076
|
-
await hooks.callHook("skills:resolve", { skills: resolvedSkills });
|
|
2077
|
-
const skillsToolRegistered = skillsConfig?.tool !== false && resolvedSkills.length > 0;
|
|
2078
|
-
const catalogCtx = {
|
|
2079
|
-
catalog: buildCatalog(resolvedSkills, { skillsToolRegistered }),
|
|
2080
|
-
skills: resolvedSkills
|
|
2081
|
-
};
|
|
2082
|
-
await hooks.callHook("skills:catalog", catalogCtx);
|
|
2083
|
-
skillsCatalog = catalogCtx.catalog;
|
|
2084
|
-
}
|
|
2139
|
+
await ensureSkillsResolved();
|
|
2085
2140
|
if (resolvedSkills && session && session.turns.length > 0 && skillActivationState.active().length === 0) {
|
|
2086
2141
|
const skillsByName = new Map(resolvedSkills.map((s) => [s.name, s]));
|
|
2087
2142
|
for (const turn of session.turns) {
|
|
@@ -2406,7 +2461,8 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2406
2461
|
});
|
|
2407
2462
|
}
|
|
2408
2463
|
async function activateSkill(name) {
|
|
2409
|
-
|
|
2464
|
+
await ensureSkillsResolved();
|
|
2465
|
+
if (!resolvedSkills) throw new Error(`Cannot activate skill "${name}" — skills are disabled for this agent.`);
|
|
2410
2466
|
const skill = resolvedSkills.find((s) => s.name === name);
|
|
2411
2467
|
if (!skill) {
|
|
2412
2468
|
const available = resolvedSkills.map((s) => s.name).join(", ") || "<none>";
|
|
@@ -2452,8 +2508,7 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2452
2508
|
* retry — leaving a rejected promise cached would permanently poison future
|
|
2453
2509
|
* runs on the same agent.
|
|
2454
2510
|
*/
|
|
2455
|
-
async function
|
|
2456
|
-
if (destroyed) return;
|
|
2511
|
+
async function ensureMcpConnected() {
|
|
2457
2512
|
if (mcpConnection || allMcpServers.length === 0) return;
|
|
2458
2513
|
if (mcpWarmupPromise) return mcpWarmupPromise;
|
|
2459
2514
|
mcpWarmupPromise = (async () => {
|
|
@@ -2471,6 +2526,10 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2471
2526
|
throw err;
|
|
2472
2527
|
}
|
|
2473
2528
|
}
|
|
2529
|
+
async function warmup() {
|
|
2530
|
+
if (destroyed) return;
|
|
2531
|
+
await Promise.all([ensureMcpConnected(), ensureSkillsResolved()]);
|
|
2532
|
+
}
|
|
2474
2533
|
async function destroy() {
|
|
2475
2534
|
if (destroyed) return;
|
|
2476
2535
|
destroyed = true;
|
|
@@ -2488,7 +2547,8 @@ function createAgent({ provider, name: agentName, system: agentSystem, tools: ag
|
|
|
2488
2547
|
skillsCleanup();
|
|
2489
2548
|
skillsCleanup = () => {};
|
|
2490
2549
|
}
|
|
2491
|
-
|
|
2550
|
+
const eagerHasWork = allMcpServers.length > 0 || !skillsDisabled && !!skillsConfig;
|
|
2551
|
+
if (eager && eagerHasWork) warmup().catch(() => {});
|
|
2492
2552
|
return {
|
|
2493
2553
|
hooks,
|
|
2494
2554
|
run,
|
|
@@ -4085,4 +4145,4 @@ const writeFile$1 = {
|
|
|
4085
4145
|
//#endregion
|
|
4086
4146
|
export { multiEdit as a, grep as c, createAgent as d, createToolSearchTool as f, validateToolArgs as g, createSkillsReadTool as h, readFile$1 as i, glob as l, createSkillsRunScriptTool as m, createSpawnTool as n, listFiles as o, createSkillsUseTool as p, shell as r, createInteractionTool as s, writeFile$1 as t, edit as u };
|
|
4087
4147
|
|
|
4088
|
-
//# sourceMappingURL=tools-
|
|
4148
|
+
//# sourceMappingURL=tools-CLazLRb4.js.map
|