@gaunt-sloth/core 2.0.0-alpha.24 → 2.0.0-alpha.26

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 (109) hide show
  1. package/README.md +1 -1
  2. package/dist/config/colour.d.ts +38 -0
  3. package/dist/config/colour.js +36 -0
  4. package/dist/config/colour.js.map +1 -0
  5. package/dist/config/defaults.d.ts +1 -0
  6. package/dist/config/defaults.js +1 -0
  7. package/dist/config/defaults.js.map +1 -1
  8. package/dist/config/loader.d.ts +13 -6
  9. package/dist/config/loader.js +171 -28
  10. package/dist/config/loader.js.map +1 -1
  11. package/dist/config/mouse.d.ts +50 -0
  12. package/dist/config/mouse.js +44 -0
  13. package/dist/config/mouse.js.map +1 -0
  14. package/dist/config/schema.d.ts +2372 -114
  15. package/dist/config/schema.js +845 -16
  16. package/dist/config/schema.js.map +1 -1
  17. package/dist/config/shell-policy.d.ts +466 -116
  18. package/dist/config/shell-policy.js +273 -62
  19. package/dist/config/shell-policy.js.map +1 -1
  20. package/dist/config/tool-descriptions.d.ts +165 -0
  21. package/dist/config/tool-descriptions.js +229 -0
  22. package/dist/config/tool-descriptions.js.map +1 -0
  23. package/dist/config/types.d.ts +36 -1
  24. package/dist/config/types.js.map +1 -1
  25. package/dist/config.d.ts +3 -0
  26. package/dist/config.js +3 -0
  27. package/dist/config.js.map +1 -1
  28. package/dist/core/GthAbstractAgent.d.ts +59 -1
  29. package/dist/core/GthAbstractAgent.js +72 -0
  30. package/dist/core/GthAbstractAgent.js.map +1 -1
  31. package/dist/core/GthAgentRunner.d.ts +341 -58
  32. package/dist/core/GthAgentRunner.js +817 -149
  33. package/dist/core/GthAgentRunner.js.map +1 -1
  34. package/dist/core/GthLangChainAgent.d.ts +16 -0
  35. package/dist/core/GthLangChainAgent.js +72 -2
  36. package/dist/core/GthLangChainAgent.js.map +1 -1
  37. package/dist/core/approvals/annotations.d.ts +122 -0
  38. package/dist/core/approvals/annotations.js +137 -0
  39. package/dist/core/approvals/annotations.js.map +1 -0
  40. package/dist/core/approvals/grants.d.ts +216 -0
  41. package/dist/core/approvals/grants.js +469 -0
  42. package/dist/core/approvals/grants.js.map +1 -0
  43. package/dist/core/approvals/matcher.d.ts +202 -0
  44. package/dist/core/approvals/matcher.js +267 -0
  45. package/dist/core/approvals/matcher.js.map +1 -0
  46. package/dist/core/approvals/mcpSubjects.d.ts +40 -0
  47. package/dist/core/approvals/mcpSubjects.js +99 -0
  48. package/dist/core/approvals/mcpSubjects.js.map +1 -0
  49. package/dist/core/approvals/toolAnnotationSources.d.ts +105 -0
  50. package/dist/core/approvals/toolAnnotationSources.js +277 -0
  51. package/dist/core/approvals/toolAnnotationSources.js.map +1 -0
  52. package/dist/core/approvals/toolHost.d.ts +46 -0
  53. package/dist/core/approvals/toolHost.js +108 -0
  54. package/dist/core/approvals/toolHost.js.map +1 -0
  55. package/dist/core/launchBanner.d.ts +120 -0
  56. package/dist/core/launchBanner.js +399 -0
  57. package/dist/core/launchBanner.js.map +1 -0
  58. package/dist/core/plainToolIndication.js +13 -7
  59. package/dist/core/plainToolIndication.js.map +1 -1
  60. package/dist/core/shell/approvalStop.d.ts +75 -0
  61. package/dist/core/shell/approvalStop.js +108 -0
  62. package/dist/core/shell/approvalStop.js.map +1 -0
  63. package/dist/core/shell/arity.d.ts +6 -0
  64. package/dist/core/shell/arity.js +20 -6
  65. package/dist/core/shell/arity.js.map +1 -1
  66. package/dist/core/shell/denylist.d.ts +11 -0
  67. package/dist/core/shell/denylist.js +37 -0
  68. package/dist/core/shell/denylist.js.map +1 -0
  69. package/dist/core/shell/normalize.d.ts +41 -1
  70. package/dist/core/shell/normalize.js +58 -4
  71. package/dist/core/shell/normalize.js.map +1 -1
  72. package/dist/core/shell/openWorld.d.ts +138 -0
  73. package/dist/core/shell/openWorld.js +523 -0
  74. package/dist/core/shell/openWorld.js.map +1 -0
  75. package/dist/core/shell/rater.d.ts +560 -0
  76. package/dist/core/shell/rater.js +895 -0
  77. package/dist/core/shell/rater.js.map +1 -0
  78. package/dist/core/shell/raterModel.d.ts +41 -0
  79. package/dist/core/shell/raterModel.js +51 -0
  80. package/dist/core/shell/raterModel.js.map +1 -0
  81. package/dist/core/shell/rejection.d.ts +66 -0
  82. package/dist/core/shell/rejection.js +38 -0
  83. package/dist/core/shell/rejection.js.map +1 -0
  84. package/dist/core/types.d.ts +71 -9
  85. package/dist/core/types.js.map +1 -1
  86. package/dist/runtime/askStructured.d.ts +8 -7
  87. package/dist/runtime/askStructured.js +8 -7
  88. package/dist/runtime/askStructured.js.map +1 -1
  89. package/dist/runtime/conversation.js +89 -76
  90. package/dist/runtime/conversation.js.map +1 -1
  91. package/dist/runtime/singleShot.js +71 -60
  92. package/dist/runtime/singleShot.js.map +1 -1
  93. package/dist/utils/ProgressIndicator.d.ts +21 -0
  94. package/dist/utils/ProgressIndicator.js +30 -3
  95. package/dist/utils/ProgressIndicator.js.map +1 -1
  96. package/dist/utils/consoleUtils.d.ts +30 -0
  97. package/dist/utils/consoleUtils.js +27 -2
  98. package/dist/utils/consoleUtils.js.map +1 -1
  99. package/dist/utils/systemUtils.d.ts +17 -0
  100. package/dist/utils/systemUtils.js +17 -0
  101. package/dist/utils/systemUtils.js.map +1 -1
  102. package/package.json +5 -2
  103. package/schema/gsloth-config.schema.json +1216 -417
  104. package/dist/core/shell/allowlist.d.ts +0 -75
  105. package/dist/core/shell/allowlist.js +0 -187
  106. package/dist/core/shell/allowlist.js.map +0 -1
  107. package/dist/core/shell/judge.d.ts +0 -161
  108. package/dist/core/shell/judge.js +0 -261
  109. package/dist/core/shell/judge.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/runtime/conversation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAkB1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,SAAiB,EACjB,YAAsB,EACtB,MAAiB,EACjB,SAA0B,EAC1B,OAAO,GAAe,KAAK,EAC3B,YAA8B;IAE9B,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAE/F,mGAAmG;IACnG,qGAAqG;IACrG,MAAM,QAAQ,GAAG,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1D,IAAI,QAAQ,EAAE,CAAC;QACb,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,yBAAyB,CAAC,CAAC;IACjE,CAAC;IAED,oGAAoG;IACpG,oGAAoG;IACpG,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,qBAAqB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAClF,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,+FAA+F;IAC/F,iGAAiG;IACjG,gGAAgG;IAChG,+FAA+F;IAC/F,MAAM,QAAQ,GAAc,EAAE,CAAC;IAE/B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC;QAEtD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,6FAA6F;YAC7F,8FAA8F;YAC9F,MAAM,CAAC,WAAW,EAAE,CAAC;YACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;YAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,MAAM,GAAG,EAAE,CAAC;YAChB,IAAI,EAAE,GAAG,IAAI,CAAC;YACd,IAAI,KAAyB,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAChD,uFAAuF;gBACvF,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,EAAE,GAAG,KAAK,CAAC;gBACX,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzD,YAAY,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;YACjD,CAAC;YAED,8FAA8F;YAC9F,gGAAgG;YAChG,8DAA8D;YAC9D,IAAI,QAAQ,GAAgB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAC1C,IAAI,CAAC;gBACH,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;gBACjC,IAAI,CAAC;oBAAE,QAAQ,GAAG,CAAC,CAAC;YACtB,CAAC;YAAC,MAAM,CAAC;gBACP,eAAe;YACjB,CAAC;YAED,6FAA6F;YAC7F,iBAAiB,CAAC,MAAM,EAAE;gBACxB,OAAO;gBACP,OAAO,EAAE,aAAa,EAAE;gBACxB,KAAK,EAAE,MAAM,CAAC,gBAAgB;gBAC9B,MAAM,EAAE,WAAW;gBACnB,QAAQ,EAAE,MAAM;gBAChB,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;gBACnC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;gBAC7D,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACnC,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;YAEjD,4FAA4F;YAC5F,IAAI,CAAC,EAAE;gBAAE,MAAM;QACjB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAED,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAE1B,IAAI,MAAM,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,yEAAyE;IAC1F,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,IAAI,CAAC;YACH,eAAe,EAAE,CAAC;YAClB,kBAAkB,EAAE,CAAC;YACrB,cAAc,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;YAC5D,YAAY,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"conversation.js","sourceRoot":"","sources":["../../src/runtime/conversation.ts"],"names":[],"mappings":"AACA,OAAO,EACL,qBAAqB,EACrB,OAAO,EACP,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAEnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAkB1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAc,EACd,SAAiB,EACjB,YAAsB,EACtB,MAAiB,EACjB,SAA0B,EAC1B,OAAO,GAAe,KAAK,EAC3B,YAA8B;IAE9B,MAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAC/F,IAAI,CAAC;QACH,oFAAoF;QACpF,oFAAoF;QACpF,kCAAkC;QAClC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACb,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACjE,CAAC;QAED,4FAA4F;QAC5F,gGAAgG;QAChG,cAAc;QACd,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,qBAAqB,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;QAClF,MAAM,OAAO,GAA6B,EAAE,CAAC;QAC7C,+FAA+F;QAC/F,iGAAiG;QACjG,gGAAgG;QAChG,+FAA+F;QAC/F,MAAM,QAAQ,GAAc,EAAE,CAAC;QAE/B,IAAI,CAAC;YACH,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC,CAAC;YAEtD,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACvC,6FAA6F;gBAC7F,uFAAuF;gBACvF,MAAM,CAAC,WAAW,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;gBAE7C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,MAAM,GAAG,EAAE,CAAC;gBAChB,IAAI,EAAE,GAAG,IAAI,CAAC;gBACd,IAAI,KAAyB,CAAC;gBAC9B,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;oBAChD,uFAAuF;oBACvF,QAAQ,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;gBACvC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,EAAE,GAAG,KAAK,CAAC;oBACX,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACzD,YAAY,CAAC,yBAAyB,KAAK,EAAE,CAAC,CAAC;gBACjD,CAAC;gBAED,4FAA4F;gBAC5F,0FAA0F;gBAC1F,sEAAsE;gBACtE,IAAI,QAAQ,GAAgB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;gBAC1C,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;oBACjC,IAAI,CAAC;wBAAE,QAAQ,GAAG,CAAC,CAAC;gBACtB,CAAC;gBAAC,MAAM,CAAC;oBACP,eAAe;gBACjB,CAAC;gBAED,6FAA6F;gBAC7F,iBAAiB,CAAC,MAAM,EAAE;oBACxB,OAAO;oBACP,OAAO,EAAE,aAAa,EAAE;oBACxB,KAAK,EAAE,MAAM,CAAC,gBAAgB;oBAC9B,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,MAAM;oBAChB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,YAAY,EAAE,QAAQ,CAAC,YAAY;oBACnC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS;oBAC7D,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;iBACnC,CAAC,CAAC;gBAEH,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,EAAE,CAAC,CAAC;gBAEjD,4FAA4F;gBAC5F,IAAI,CAAC,EAAE;oBAAE,MAAM;YACjB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;QACzB,CAAC;QAED,iBAAiB,EAAE,IAAI,EAAE,CAAC;QAE1B,IAAI,MAAM,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;YACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,yEAAyE;QAC1F,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,CAAC;gBACH,eAAe,EAAE,CAAC;gBAClB,kBAAkB,EAAE,CAAC;gBACrB,cAAc,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;YAChE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,YAAY,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;gBAC5D,YAAY,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;YAAS,CAAC;QACT,+FAA+F;QAC/F,2FAA2F;QAC3F,2FAA2F;QAC3F,+FAA+F;QAC/F,+FAA+F;QAC/F,uEAAuE;QACvE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAC5B,CAAC;AACH,CAAC"}
@@ -40,70 +40,81 @@ export async function runSingleShot(source,
40
40
  // The agent's composed prompt is a superset of this preamble, so dropping it is content-preserving.
41
41
  _preamble, content, config, resolvers, command = 'ask', agentFactory) {
42
42
  const progressIndicator = config.streamOutput ? undefined : new ProgressIndicator('Thinking.');
43
- // Only the human turn: the agent supplies the system prompt via `createAgent({ systemPrompt })`.
44
- const messages = [new HumanMessage(content)];
45
- // Resolve output path and initialize session logging if enabled
46
- const filePath = getCommandOutputFilePath(config, source);
47
- if (filePath) {
48
- initSessionLogging(filePath, config.streamSessionInferenceLog);
49
- }
50
- // Run via Agent Runner (consistent with interactive session)
51
- const runner = new GthAgentRunner(defaultStatusCallback, resolvers, agentFactory);
52
- let succeeded = true;
53
- let responseText = '';
54
- const startedAt = Date.now();
55
43
  try {
56
- await runner.init(command, config, new MemorySaver());
57
- responseText = await runner.processMessages(messages);
58
- }
59
- catch (err) {
60
- succeeded = false;
61
- displayError(`Failed to get answer: ${err instanceof Error ? err.message : String(err)}`);
62
- }
63
- finally {
64
- await runner.cleanup();
65
- }
66
- // GS2-16: live token usage + invoked tool names for this run (fail-soft; empty when the
67
- // provider reported no usage / the runner has no stats). Read post-cleanup — the runner
68
- // snapshots stats at cleanup() so this still reflects the finished run.
69
- let runStats = { tools: [] };
70
- try {
71
- const s = runner.getRunStats?.();
72
- if (s)
73
- runStats = s;
74
- }
75
- catch {
76
- /* fail-soft: analytics must never affect this run */
77
- }
78
- // GS2-7 (B20): opt-in, fail-soft session history. A no-op unless `history.enabled`; never throws
79
- // (recordSessionSafe is fully guarded) so a DB problem can't abort or alter this run.
80
- // GS2-16 threads token/tool analytics; costUsd is intentionally left unset (no reliable price).
81
- recordSessionSafe(config, {
82
- command,
83
- project: getProjectDir(),
84
- model: config.modelDisplayName,
85
- prompt: content,
86
- response: responseText,
87
- tokensInput: runStats.tokensInput,
88
- tokensOutput: runStats.tokensOutput,
89
- tools: runStats.tools.length > 0 ? runStats.tools : undefined,
90
- durationMs: Date.now() - startedAt,
91
- });
92
- progressIndicator?.stop();
93
- if (config.writeOutputToFile === false) {
94
- display('\n'); // something going on in some terminals, they swallow last line of output
95
- }
96
- if (filePath) {
44
+ // Only the human turn: the agent supplies the system prompt via `createAgent({ systemPrompt })`.
45
+ const messages = [new HumanMessage(content)];
46
+ // Resolve output path and initialize session logging if enabled
47
+ const filePath = getCommandOutputFilePath(config, source);
48
+ if (filePath) {
49
+ initSessionLogging(filePath, config.streamSessionInferenceLog);
50
+ }
51
+ // Run via Agent Runner (consistent with interactive session)
52
+ const runner = new GthAgentRunner(defaultStatusCallback, resolvers, agentFactory);
53
+ let succeeded = true;
54
+ let responseText = '';
55
+ const startedAt = Date.now();
56
+ try {
57
+ await runner.init(command, config, new MemorySaver());
58
+ responseText = await runner.processMessages(messages);
59
+ }
60
+ catch (err) {
61
+ succeeded = false;
62
+ displayError(`Failed to get answer: ${err instanceof Error ? err.message : String(err)}`);
63
+ }
64
+ finally {
65
+ await runner.cleanup();
66
+ }
67
+ // GS2-16: live token usage + invoked tool names for this run (fail-soft; empty when the
68
+ // provider reported no usage / the runner has no stats). Read post-cleanup the runner
69
+ // snapshots stats at cleanup() so this still reflects the finished run.
70
+ let runStats = { tools: [] };
97
71
  try {
98
- flushSessionLog();
99
- stopSessionLogging();
100
- displaySuccess(`\n\nThis report can be found in ${filePath}`);
72
+ const s = runner.getRunStats?.();
73
+ if (s)
74
+ runStats = s;
101
75
  }
102
- catch (error) {
103
- displayError(`Failed to write answer to file: ${filePath}`);
104
- displayError(error instanceof Error ? error.message : String(error));
76
+ catch {
77
+ /* fail-soft: analytics must never affect this run */
105
78
  }
79
+ // GS2-7 (B20): opt-in, fail-soft session history. A no-op unless `history.enabled`; never throws
80
+ // (recordSessionSafe is fully guarded) so a DB problem can't abort or alter this run.
81
+ // GS2-16 threads token/tool analytics; costUsd is intentionally left unset (no reliable price).
82
+ recordSessionSafe(config, {
83
+ command,
84
+ project: getProjectDir(),
85
+ model: config.modelDisplayName,
86
+ prompt: content,
87
+ response: responseText,
88
+ tokensInput: runStats.tokensInput,
89
+ tokensOutput: runStats.tokensOutput,
90
+ tools: runStats.tools.length > 0 ? runStats.tools : undefined,
91
+ durationMs: Date.now() - startedAt,
92
+ });
93
+ progressIndicator?.stop();
94
+ if (config.writeOutputToFile === false) {
95
+ display('\n'); // something going on in some terminals, they swallow last line of output
96
+ }
97
+ if (filePath) {
98
+ try {
99
+ flushSessionLog();
100
+ stopSessionLogging();
101
+ displaySuccess(`\n\nThis report can be found in ${filePath}`);
102
+ }
103
+ catch (error) {
104
+ displayError(`Failed to write answer to file: ${filePath}`);
105
+ displayError(error instanceof Error ? error.message : String(error));
106
+ }
107
+ }
108
+ return { ok: succeeded, answer: responseText, ...runStats };
109
+ }
110
+ finally {
111
+ // EXT-53: the indicator owns a 1s setInterval — an active libuv handle that keeps Node's event
112
+ // loop from ever draining, so leaking it hangs the CLI forever after the work is done. The
113
+ // `stop()` above sits where it does for output ordering (before the trailing newline / the
114
+ // "report can be found in …" line); this `finally` guarantees the handle is also released when
115
+ // anything above throws — notably `runner.cleanup()`, which is outside the inner catch.
116
+ // `stop()` is idempotent, so the normal path's second call is a no-op.
117
+ progressIndicator?.stop();
106
118
  }
107
- return { ok: succeeded, answer: responseText, ...runStats };
108
119
  }
109
120
  //# sourceMappingURL=singleShot.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"singleShot.js","sourceRoot":"","sources":["../../src/runtime/singleShot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"singleShot.js","sourceRoot":"","sources":["../../src/runtime/singleShot.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,28 @@
1
+ /**
2
+ * A dot-per-second terminal progress indicator.
3
+ *
4
+ * **EXT-53 — always stop it, on every exit path.** In its automatic (non-`manual`) mode the
5
+ * indicator owns a 1s `setInterval`, which is an *active libuv handle*: while it is alive Node's
6
+ * event loop can never drain and the process cannot exit, no matter that every await has resolved.
7
+ * A `stop()` that is only reachable on the success path therefore turns any error into a hang
8
+ * rather than an exit. Construct the indicator OUTSIDE the `try` and clear it in a `finally`.
9
+ *
10
+ * `stop()` is idempotent (see below), so a `finally { indicator.stop() }` is always safe to add
11
+ * even where a success-path `stop()` already ran.
12
+ */
1
13
  export declare class ProgressIndicator {
2
14
  private interval;
15
+ private readonly manual;
16
+ private stopped;
3
17
  constructor(initialMessage: string, manual?: boolean);
4
18
  private indicateInner;
5
19
  indicate(): void;
20
+ /**
21
+ * Clear the interval (releasing the libuv handle) and terminate the dot line with a newline.
22
+ *
23
+ * Idempotent: the handle is nulled and a second call is a complete no-op, so it emits no stray
24
+ * blank line. That is what makes it safe to call from a `finally` on top of an existing
25
+ * success-path `stop()`.
26
+ */
6
27
  stop(): void;
7
28
  }
@@ -1,9 +1,24 @@
1
1
  import { stdout } from '#src/utils/systemUtils.js';
2
+ /**
3
+ * A dot-per-second terminal progress indicator.
4
+ *
5
+ * **EXT-53 — always stop it, on every exit path.** In its automatic (non-`manual`) mode the
6
+ * indicator owns a 1s `setInterval`, which is an *active libuv handle*: while it is alive Node's
7
+ * event loop can never drain and the process cannot exit, no matter that every await has resolved.
8
+ * A `stop()` that is only reachable on the success path therefore turns any error into a hang
9
+ * rather than an exit. Construct the indicator OUTSIDE the `try` and clear it in a `finally`.
10
+ *
11
+ * `stop()` is idempotent (see below), so a `finally { indicator.stop() }` is always safe to add
12
+ * even where a success-path `stop()` already ran.
13
+ */
2
14
  export class ProgressIndicator {
3
15
  interval = undefined;
16
+ manual;
17
+ stopped = false;
4
18
  constructor(initialMessage, manual) {
19
+ this.manual = !!manual;
5
20
  stdout.write(initialMessage);
6
- if (!manual) {
21
+ if (!this.manual) {
7
22
  this.interval = setInterval(this.indicateInner, 1000);
8
23
  }
9
24
  }
@@ -11,14 +26,26 @@ export class ProgressIndicator {
11
26
  stdout.write('.');
12
27
  }
13
28
  indicate() {
14
- if (this.interval) {
29
+ if (!this.manual) {
15
30
  throw new Error('ProgressIndicator.indicate only to be called in manual mode');
16
31
  }
17
32
  this.indicateInner();
18
33
  }
34
+ /**
35
+ * Clear the interval (releasing the libuv handle) and terminate the dot line with a newline.
36
+ *
37
+ * Idempotent: the handle is nulled and a second call is a complete no-op, so it emits no stray
38
+ * blank line. That is what makes it safe to call from a `finally` on top of an existing
39
+ * success-path `stop()`.
40
+ */
19
41
  stop() {
20
- if (this.interval) {
42
+ if (this.stopped) {
43
+ return;
44
+ }
45
+ this.stopped = true;
46
+ if (this.interval !== undefined) {
21
47
  clearInterval(this.interval);
48
+ this.interval = undefined;
22
49
  }
23
50
  stdout.write('\n');
24
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ProgressIndicator.js","sourceRoot":"","sources":["../../src/utils/ProgressIndicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAEnD,MAAM,OAAO,iBAAiB;IACpB,QAAQ,GAAuB,SAAS,CAAC;IAEjD,YAAY,cAAsB,EAAE,MAAgB;QAClD,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC7B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAsB,CAAC;QAC7E,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"ProgressIndicator.js","sourceRoot":"","sources":["../../src/utils/ProgressIndicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAEnD;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,iBAAiB;IACpB,QAAQ,GAAuB,SAAS,CAAC;IAChC,MAAM,CAAU;IACzB,OAAO,GAAG,KAAK,CAAC;IAExB,YAAY,cAAsB,EAAE,MAAgB;QAClD,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACvB,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAsB,CAAC;QAC7E,CAAC;IACH,CAAC;IAEO,aAAa;QACnB,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;OAMG;IACH,IAAI;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAChC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC5B,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;CACF"}
@@ -1,4 +1,25 @@
1
1
  import { StatusLevel, StatusUpdateCallback } from '#src/core/types.js';
2
+ /**
3
+ * ANSI color codes — the 16-colour slots only, deliberately. A 16-colour slot is rendered with the
4
+ * user's OWN terminal theme colour, so output looks native in light and dark schemes alike; a
5
+ * 256-colour or 24-bit escape would pin us to one palette and clash with half of them.
6
+ *
7
+ * Exported so the surfaces that build their own pre-styled blocks (rather than passing a whole
8
+ * message through {@link colorText}) still draw from this one table — see
9
+ * `core/launchBanner.ts`, which paints only the face half of each banner row.
10
+ *
11
+ * `as const` because `packages/core` publishes `"./*.js": "./dist/*.js"`, so this is PUBLIC API of a
12
+ * published package: without it any consumer could assign `ANSI_COLORS.magenta` and repaint the
13
+ * whole CLI from the outside. Read-only, one table, no remote control.
14
+ */
15
+ export declare const ANSI_COLORS: {
16
+ readonly red: '\u001B[31m';
17
+ readonly yellow: '\u001B[33m';
18
+ readonly green: '\u001B[32m';
19
+ readonly magenta: '\u001B[35m';
20
+ readonly dim: '\u001B[2m';
21
+ readonly reset: '\u001B[0m';
22
+ };
2
23
  export declare const initSessionLogging: (logFileName: string, enableLogging: boolean) => void;
3
24
  /**
4
25
  * Set the console logging level.
@@ -44,6 +65,15 @@ export declare function display(message: string): void;
44
65
  * inner resets. The session log gets the ANSI-stripped text via {@link writeToSessionLog}.
45
66
  */
46
67
  export declare function displayToolIndication(message: string): void;
68
+ /**
69
+ * TUI-C33 — print the interactive-launch banner (the pre-styled block built by
70
+ * `core/launchBanner.ts`) on the plain surface. Same DISPLAY-level gate and stdout channel as
71
+ * {@link display}, so a quieted console silences it too, but deliberately NOT routed through
72
+ * {@link writeToSessionLog}: the session log is a transcript of the conversation, not a screenshot
73
+ * of the screen, and a five-row sloth at the top of it is noise. The block also styles itself (the
74
+ * face half of each row carries the colour), so no outer wrap is applied.
75
+ */
76
+ export declare function displayLaunchBanner(message: string): void;
47
77
  export declare function formatInputPrompt(message: string): string;
48
78
  /**
49
79
  * Display a debug message to the console and log it.
@@ -9,8 +9,20 @@ const loggingState = {
9
9
  const consoleLevelState = {
10
10
  currentLevel: StatusLevel.INFO, // Default to INFO level, not debug
11
11
  };
12
- // ANSI color codes
13
- const ANSI_COLORS = {
12
+ /**
13
+ * ANSI color codes — the 16-colour slots only, deliberately. A 16-colour slot is rendered with the
14
+ * user's OWN terminal theme colour, so output looks native in light and dark schemes alike; a
15
+ * 256-colour or 24-bit escape would pin us to one palette and clash with half of them.
16
+ *
17
+ * Exported so the surfaces that build their own pre-styled blocks (rather than passing a whole
18
+ * message through {@link colorText}) still draw from this one table — see
19
+ * `core/launchBanner.ts`, which paints only the face half of each banner row.
20
+ *
21
+ * `as const` because `packages/core` publishes `"./*.js": "./dist/*.js"`, so this is PUBLIC API of a
22
+ * published package: without it any consumer could assign `ANSI_COLORS.magenta` and repaint the
23
+ * whole CLI from the outside. Read-only, one table, no remote control.
24
+ */
25
+ export const ANSI_COLORS = {
14
26
  red: '\x1b[31m',
15
27
  yellow: '\x1b[33m',
16
28
  green: '\x1b[32m',
@@ -159,6 +171,19 @@ export function displayToolIndication(message) {
159
171
  writeToSessionLog(message + '\n');
160
172
  su.info(message);
161
173
  }
174
+ /**
175
+ * TUI-C33 — print the interactive-launch banner (the pre-styled block built by
176
+ * `core/launchBanner.ts`) on the plain surface. Same DISPLAY-level gate and stdout channel as
177
+ * {@link display}, so a quieted console silences it too, but deliberately NOT routed through
178
+ * {@link writeToSessionLog}: the session log is a transcript of the conversation, not a screenshot
179
+ * of the screen, and a five-row sloth at the top of it is noise. The block also styles itself (the
180
+ * face half of each row carries the colour), so no outer wrap is applied.
181
+ */
182
+ export function displayLaunchBanner(message) {
183
+ if (!shouldDisplayLevel(StatusLevel.DISPLAY))
184
+ return;
185
+ su.log(message);
186
+ }
162
187
  export function formatInputPrompt(message) {
163
188
  return colorText(message, 'magenta');
164
189
  }
@@ -1 +1 @@
1
- {"version":3,"file":"consoleUtils.js","sourceRoot":"","sources":["../../src/utils/consoleUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consoleUtils.js","sourceRoot":"","sources":["../../src/utils/consoleUtils.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,14 @@ export declare const setProjectDir: (dir: string | undefined) => void;
61
61
  * Config DISCOVERY and DETECTION must NOT use this; they stay cwd-bound.
62
62
  */
63
63
  export declare const getProjectDir: () => string;
64
+ /**
65
+ * CFG-26 — the RAW project dir, WITHOUT {@link getProjectDir}'s cwd fallback, so a caller that
66
+ * must temporarily run a subsidiary `initConfig` (which re-runs discovery and calls
67
+ * `setProjectDir` as a side effect) can snapshot and restore the exact prior state — including the
68
+ * "unset, fall back to cwd dynamically" state, which `getProjectDir()` would otherwise collapse
69
+ * into an explicit cwd. See `resolveRaterModel`.
70
+ */
71
+ export declare const peekProjectDir: () => string | undefined;
64
72
  export declare const getInstallDir: () => string;
65
73
  /**
66
74
  * Cached string from stdin. Should only be called after readStdin completes execution.
@@ -75,6 +83,15 @@ export declare const getUseColour: () => boolean;
75
83
  */
76
84
  export declare const setUseColour: (useColour: boolean) => void;
77
85
  export declare const isTTY: () => boolean;
86
+ /**
87
+ * Whether STDOUT is a terminal — distinct from {@link isTTY}, which reports on STDIN.
88
+ *
89
+ * Colour is a property of where output GOES, so the colour auto-detection (CFG-30 rung 4, see
90
+ * `config/colour.ts`) asks this one: `gth ask … > out.txt` keeps an interactive stdin while stdout
91
+ * is a file, and that run must not emit escapes. Read at call time so a test can declare the
92
+ * terminal it wants in setup.
93
+ */
94
+ export declare const isStdoutTTY: () => boolean;
78
95
  export declare const exit: (code?: number) => never;
79
96
  export declare const stdin: NodeJS.ReadStream & {
80
97
  fd: 0;
@@ -192,6 +192,14 @@ export const setProjectDir = (dir) => {
192
192
  * Config DISCOVERY and DETECTION must NOT use this; they stay cwd-bound.
193
193
  */
194
194
  export const getProjectDir = () => innerState.projectDir ?? getCurrentWorkDir();
195
+ /**
196
+ * CFG-26 — the RAW project dir, WITHOUT {@link getProjectDir}'s cwd fallback, so a caller that
197
+ * must temporarily run a subsidiary `initConfig` (which re-runs discovery and calls
198
+ * `setProjectDir` as a side effect) can snapshot and restore the exact prior state — including the
199
+ * "unset, fall back to cwd dynamically" state, which `getProjectDir()` would otherwise collapse
200
+ * into an explicit cwd. See `resolveRaterModel`.
201
+ */
202
+ export const peekProjectDir = () => innerState.projectDir;
195
203
  export const getInstallDir = () => {
196
204
  if (innerState.installDir) {
197
205
  return innerState.installDir;
@@ -217,6 +225,15 @@ export const setUseColour = (useColour) => {
217
225
  innerState.useColour = useColour;
218
226
  };
219
227
  export const isTTY = () => !!stdin.isTTY;
228
+ /**
229
+ * Whether STDOUT is a terminal — distinct from {@link isTTY}, which reports on STDIN.
230
+ *
231
+ * Colour is a property of where output GOES, so the colour auto-detection (CFG-30 rung 4, see
232
+ * `config/colour.ts`) asks this one: `gth ask … > out.txt` keeps an interactive stdin while stdout
233
+ * is a file, and that run must not emit escapes. Read at call time so a test can declare the
234
+ * terminal it wants in setup.
235
+ */
236
+ export const isStdoutTTY = () => !!stdout.isTTY;
220
237
  export const exit = (code) => process.exit(code || 0);
221
238
  export const stdin = process.stdin;
222
239
  export const stdout = process.stdout;
@@ -1 +1 @@
1
- {"version":3,"file":"systemUtils.js","sourceRoot":"","sources":["../../src/utils/systemUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"systemUtils.js","sourceRoot":"","sources":["../../src/utils/systemUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,eAAe,EAAuC,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAoB,MAAM,SAAS,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AA+BpE,MAAM,UAAU,GAAe;IAC7B,UAAU,EAAE,SAAS;IACrB,UAAU,EAAE,SAAS;IACrB,eAAe,EAAE,EAAE;IACnB,SAAS,EAAE,KAAK;IAChB,qBAAqB,EAAE,SAAS;IAChC,kBAAkB,EAAE,KAAK;IACzB,cAAc,EAAE,SAAS;CAC1B,CAAC;AAEF,8DAA8D;AAC9D,MAAM,eAAe,GAAG,CAAC,QAAoB,EAAE,EAAE,CAAC,CAAC,KAAU,EAAE,GAAQ,EAAE,EAAE;IACzE,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,IAAI,IAAI,GAAG,EAAE,IAAI,KAAK,GAAG,CAAC,IAAI,KAAK,KAAK,QAAQ,CAAC;IACvE,kFAAkF;IAClF,sFAAsF;IACtF,yFAAyF;IACzF,IAAI,OAAO,IAAI,UAAU,CAAC,kBAAkB,EAAE,CAAC;QAC7C,cAAc,CAAC,oBAAoB,CAAC,CAAC;QACrC,sFAAsF;QACtF,wFAAwF;QACxF,iFAAiF;QACjF,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,GAAG,EAAE,IAAI,KAAK,QAAQ,IAAI,GAAG,EAAE,IAAI,KAAK,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3D,cAAc,CAAC,mBAAmB,CAAC,CAAC;QACpC,UAAU,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACrC,QAAQ,EAAE,CAAC;QACX,OAAO;IACT,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,QAAoB,EAAE,OAAgB,EAAE,QAAQ,GAAG,IAAI,EAAE,EAAE;IACvF,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IACD,UAAU,CAAC,kBAAkB,GAAG,KAAK,CAAC;IACtC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAClC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,6FAA6F;IAC7F,+FAA+F;IAC/F,gGAAgG;IAChG,8FAA8F;IAC9F,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;IACzB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;IACtB,UAAU,CAAC,qBAAqB,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC7D,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC/D,4FAA4F;IAC5F,2FAA2F;IAC3F,0BAA0B;IAC1B,IAAI,QAAQ,EAAE,CAAC;QACb,WAAW,CAAC;;;;GAIb,CAAC,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,IAAI,UAAU,CAAC,qBAAqB,EAAE,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,qBAAqB,CAAC,CAAC;QAChE,UAAU,CAAC,qBAAqB,GAAG,SAAS,CAAC;QAC7C,gFAAgF;QAChF,iFAAiF;QACjF,2EAA2E;QAC3E,wFAAwF;QACxF,qFAAqF;QACrF,mFAAmF;QACnF,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAC1B,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAgB,EAAE,EAAE;IAC7C,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,OAAO,EAAE,CAAC;YACZ,iEAAiE;YACjE,iFAAiF;YACjF,kFAAkF;YAClF,2EAA2E;YAC3E,gCAAgC;YAChC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,GAAS,EAAE;IACjC,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;IACxB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,WAAmB,EAAQ,EAAE;IACzD,IAAI,CAAC;QACH,mCAAmC;QACnC,IAAI,UAAU,CAAC,cAAc,EAAE,CAAC;YAC9B,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QAClC,CAAC;QAED,2CAA2C;QAC3C,UAAU,CAAC,cAAc,GAAG,iBAAiB,CAAC,WAAW,EAAE;YACzD,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,IAAI;SAChB,CAAC,CAAC;QAEH,uBAAuB;QACvB,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC5C,cAAc,CAAC,qBAAqB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YACnD,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,sBAAsB;QACtB,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACzC,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;QACxC,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,cAAc,CACZ,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACnF,CAAC;QACF,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;IACxC,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAAe,EAAQ,EAAE;IACxD,IAAI,UAAU,CAAC,cAAc,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;QACtE,UAAU,CAAC,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAS,EAAE;IACvC,IAAI,UAAU,CAAC,cAAc,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC;QACtE,UAAU,CAAC,cAAc,CAAC,GAAG,EAAE,CAAC;QAChC,UAAU,CAAC,cAAc,GAAG,SAAS,CAAC;IACxC,CAAC;AACH,CAAC,CAAC;AAEF,8CAA8C;AAC9C,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;IACtB,cAAc,EAAE,CAAC;AACnB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACxB,cAAc,EAAE,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;IACzB,cAAc,EAAE,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,wCAAwC;AAExC;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;AACtF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;AACzD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,GAAuB,EAAQ,EAAE;IAC7D,UAAU,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC,CAAC;AACF;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAW,EAAE,CAAC,UAAU,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC;AACxF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,GAAuB,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;AAC9E,MAAM,CAAC,MAAM,aAAa,GAAG,GAAW,EAAE;IACxC,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;QAC1B,OAAO,UAAU,CAAC,UAAU,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC/C,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAW,EAAE;IAC7C,OAAO,UAAU,CAAC,eAAe,CAAC;AACpC,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,GAAY,EAAE;IACxC,OAAO,UAAU,CAAC,SAAS,CAAC;AAC9B,CAAC,CAAC;AACF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,SAAkB,EAAQ,EAAE;IACvD,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;AACnC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,GAAY,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;AAElD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,GAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;AAEzD,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,IAAa,EAAS,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AACnC,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AACrC,MAAM,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AACrC,MAAM,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;AACjC,MAAM,CAAC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;AAC/B,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,IAAY,EAAQ,EAAE;IAChD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;AAC1B,CAAC,CAAC;AACF,OAAO,EAAE,eAAe,EAAE,CAAC;AAG3B,qCAAqC;AACrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAQ,EAAE;IACrD,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,UAAU,CAAC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,SAAS,CAAC,OAAoB;IAC5C,OAAO,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,EAAE;QACpC,wFAAwF;QACxF,4FAA4F;QAC5F,oCAAoC;QACpC,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC;QAC5F,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,EAAE,CAAC;YAC1B,OAAO,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;QACpD,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;YAEvE,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE;gBACnB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC1B,iBAAiB,CAAC,QAAQ,EAAE,CAAC;gBAC7B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBACnB,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oBACxC,UAAU,CAAC,eAAe,GAAG,UAAU,CAAC,eAAe,GAAG,QAAQ,CAAC;gBACrE,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE;gBACd,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,CAAC,CAAC;YACxD,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4BAA4B;AAC5B,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,OAAe,EAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;AACvE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC9E,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAe;IAC7C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACtC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YACD,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC;AACzC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gaunt-sloth/core",
3
- "version": "2.0.0-alpha.24",
3
+ "version": "2.0.0-alpha.26",
4
4
  "description": "Core utilities and types for Gaunt Sloth",
5
5
  "license": "MIT",
6
6
  "author": "Andrew Kondratev",
@@ -34,7 +34,7 @@
34
34
  "@langchain/langgraph": "^1.4.8",
35
35
  "jiti": "^2.7.0",
36
36
  "jsonc-parser": "^3.3.1",
37
- "langchain": "^1.5.3",
37
+ "langchain": "^1.5.4",
38
38
  "zod": "^4.4.3"
39
39
  },
40
40
  "peerDependencies": {
@@ -77,6 +77,9 @@
77
77
  "publishConfig": {
78
78
  "tag": "alpha"
79
79
  },
80
+ "devDependencies": {
81
+ "ajv": "8.20.0"
82
+ },
80
83
  "scripts": {
81
84
  "build": "tsc",
82
85
  "schema:generate": "node scripts/generate-config-schema.mjs"