@cogitator-ai/core 0.1.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.
Files changed (191) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +76 -0
  3. package/dist/__tests__/agent.test.d.ts +2 -0
  4. package/dist/__tests__/agent.test.d.ts.map +1 -0
  5. package/dist/__tests__/agent.test.js +91 -0
  6. package/dist/__tests__/agent.test.js.map +1 -0
  7. package/dist/__tests__/base64.test.d.ts +2 -0
  8. package/dist/__tests__/base64.test.d.ts.map +1 -0
  9. package/dist/__tests__/base64.test.js +62 -0
  10. package/dist/__tests__/base64.test.js.map +1 -0
  11. package/dist/__tests__/calculator.test.d.ts +2 -0
  12. package/dist/__tests__/calculator.test.d.ts.map +1 -0
  13. package/dist/__tests__/calculator.test.js +146 -0
  14. package/dist/__tests__/calculator.test.js.map +1 -0
  15. package/dist/__tests__/cogitator-memory.test.d.ts +2 -0
  16. package/dist/__tests__/cogitator-memory.test.d.ts.map +1 -0
  17. package/dist/__tests__/cogitator-memory.test.js +176 -0
  18. package/dist/__tests__/cogitator-memory.test.js.map +1 -0
  19. package/dist/__tests__/datetime.test.d.ts +2 -0
  20. package/dist/__tests__/datetime.test.d.ts.map +1 -0
  21. package/dist/__tests__/datetime.test.js +87 -0
  22. package/dist/__tests__/datetime.test.js.map +1 -0
  23. package/dist/__tests__/exec.test.d.ts +2 -0
  24. package/dist/__tests__/exec.test.d.ts.map +1 -0
  25. package/dist/__tests__/exec.test.js +59 -0
  26. package/dist/__tests__/exec.test.js.map +1 -0
  27. package/dist/__tests__/filesystem.test.d.ts +2 -0
  28. package/dist/__tests__/filesystem.test.d.ts.map +1 -0
  29. package/dist/__tests__/filesystem.test.js +148 -0
  30. package/dist/__tests__/filesystem.test.js.map +1 -0
  31. package/dist/__tests__/google-backend.test.d.ts +5 -0
  32. package/dist/__tests__/google-backend.test.d.ts.map +1 -0
  33. package/dist/__tests__/google-backend.test.js +429 -0
  34. package/dist/__tests__/google-backend.test.js.map +1 -0
  35. package/dist/__tests__/hash.test.d.ts +2 -0
  36. package/dist/__tests__/hash.test.d.ts.map +1 -0
  37. package/dist/__tests__/hash.test.js +50 -0
  38. package/dist/__tests__/hash.test.js.map +1 -0
  39. package/dist/__tests__/http.test.d.ts +2 -0
  40. package/dist/__tests__/http.test.d.ts.map +1 -0
  41. package/dist/__tests__/http.test.js +64 -0
  42. package/dist/__tests__/http.test.js.map +1 -0
  43. package/dist/__tests__/json.test.d.ts +2 -0
  44. package/dist/__tests__/json.test.d.ts.map +1 -0
  45. package/dist/__tests__/json.test.js +65 -0
  46. package/dist/__tests__/json.test.js.map +1 -0
  47. package/dist/__tests__/logger.test.d.ts +2 -0
  48. package/dist/__tests__/logger.test.d.ts.map +1 -0
  49. package/dist/__tests__/logger.test.js +186 -0
  50. package/dist/__tests__/logger.test.js.map +1 -0
  51. package/dist/__tests__/random.test.d.ts +2 -0
  52. package/dist/__tests__/random.test.d.ts.map +1 -0
  53. package/dist/__tests__/random.test.js +81 -0
  54. package/dist/__tests__/random.test.js.map +1 -0
  55. package/dist/__tests__/regex.test.d.ts +2 -0
  56. package/dist/__tests__/regex.test.d.ts.map +1 -0
  57. package/dist/__tests__/regex.test.js +75 -0
  58. package/dist/__tests__/regex.test.js.map +1 -0
  59. package/dist/__tests__/registry.test.d.ts +2 -0
  60. package/dist/__tests__/registry.test.d.ts.map +1 -0
  61. package/dist/__tests__/registry.test.js +102 -0
  62. package/dist/__tests__/registry.test.js.map +1 -0
  63. package/dist/__tests__/sleep.test.d.ts +2 -0
  64. package/dist/__tests__/sleep.test.d.ts.map +1 -0
  65. package/dist/__tests__/sleep.test.js +29 -0
  66. package/dist/__tests__/sleep.test.js.map +1 -0
  67. package/dist/__tests__/tool.test.d.ts +2 -0
  68. package/dist/__tests__/tool.test.d.ts.map +1 -0
  69. package/dist/__tests__/tool.test.js +103 -0
  70. package/dist/__tests__/tool.test.js.map +1 -0
  71. package/dist/__tests__/uuid.test.d.ts +2 -0
  72. package/dist/__tests__/uuid.test.d.ts.map +1 -0
  73. package/dist/__tests__/uuid.test.js +37 -0
  74. package/dist/__tests__/uuid.test.js.map +1 -0
  75. package/dist/agent.d.ts +15 -0
  76. package/dist/agent.d.ts.map +1 -0
  77. package/dist/agent.js +35 -0
  78. package/dist/agent.js.map +1 -0
  79. package/dist/cogitator.d.ts +66 -0
  80. package/dist/cogitator.d.ts.map +1 -0
  81. package/dist/cogitator.js +538 -0
  82. package/dist/cogitator.js.map +1 -0
  83. package/dist/index.d.ts +19 -0
  84. package/dist/index.d.ts.map +1 -0
  85. package/dist/index.js +15 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/llm/anthropic.d.ts +19 -0
  88. package/dist/llm/anthropic.d.ts.map +1 -0
  89. package/dist/llm/anthropic.js +188 -0
  90. package/dist/llm/anthropic.js.map +1 -0
  91. package/dist/llm/base.d.ts +11 -0
  92. package/dist/llm/base.d.ts.map +1 -0
  93. package/dist/llm/base.js +9 -0
  94. package/dist/llm/base.js.map +1 -0
  95. package/dist/llm/google.d.ts +32 -0
  96. package/dist/llm/google.d.ts.map +1 -0
  97. package/dist/llm/google.js +282 -0
  98. package/dist/llm/google.js.map +1 -0
  99. package/dist/llm/index.d.ts +22 -0
  100. package/dist/llm/index.d.ts.map +1 -0
  101. package/dist/llm/index.js +67 -0
  102. package/dist/llm/index.js.map +1 -0
  103. package/dist/llm/ollama.d.ts +20 -0
  104. package/dist/llm/ollama.d.ts.map +1 -0
  105. package/dist/llm/ollama.js +134 -0
  106. package/dist/llm/ollama.js.map +1 -0
  107. package/dist/llm/openai.d.ts +21 -0
  108. package/dist/llm/openai.d.ts.map +1 -0
  109. package/dist/llm/openai.js +154 -0
  110. package/dist/llm/openai.js.map +1 -0
  111. package/dist/logger.d.ts +48 -0
  112. package/dist/logger.d.ts.map +1 -0
  113. package/dist/logger.js +118 -0
  114. package/dist/logger.js.map +1 -0
  115. package/dist/registry.d.ts +15 -0
  116. package/dist/registry.d.ts.map +1 -0
  117. package/dist/registry.js +31 -0
  118. package/dist/registry.js.map +1 -0
  119. package/dist/tool.d.ts +13 -0
  120. package/dist/tool.d.ts.map +1 -0
  121. package/dist/tool.js +44 -0
  122. package/dist/tool.js.map +1 -0
  123. package/dist/tools/base64.d.ts +23 -0
  124. package/dist/tools/base64.d.ts.map +1 -0
  125. package/dist/tools/base64.js +53 -0
  126. package/dist/tools/base64.js.map +1 -0
  127. package/dist/tools/calculator.d.ts +15 -0
  128. package/dist/tools/calculator.d.ts.map +1 -0
  129. package/dist/tools/calculator.js +193 -0
  130. package/dist/tools/calculator.js.map +1 -0
  131. package/dist/tools/datetime.d.ts +23 -0
  132. package/dist/tools/datetime.d.ts.map +1 -0
  133. package/dist/tools/datetime.js +95 -0
  134. package/dist/tools/datetime.js.map +1 -0
  135. package/dist/tools/exec.d.ts +46 -0
  136. package/dist/tools/exec.d.ts.map +1 -0
  137. package/dist/tools/exec.js +87 -0
  138. package/dist/tools/exec.js.map +1 -0
  139. package/dist/tools/filesystem.d.ts +100 -0
  140. package/dist/tools/filesystem.d.ts.map +1 -0
  141. package/dist/tools/filesystem.js +186 -0
  142. package/dist/tools/filesystem.js.map +1 -0
  143. package/dist/tools/hash.d.ts +19 -0
  144. package/dist/tools/hash.d.ts.map +1 -0
  145. package/dist/tools/hash.js +32 -0
  146. package/dist/tools/hash.js.map +1 -0
  147. package/dist/tools/http.d.ts +29 -0
  148. package/dist/tools/http.d.ts.map +1 -0
  149. package/dist/tools/http.js +82 -0
  150. package/dist/tools/http.js.map +1 -0
  151. package/dist/tools/index.d.ts +323 -0
  152. package/dist/tools/index.d.ts.map +1 -0
  153. package/dist/tools/index.js +50 -0
  154. package/dist/tools/index.js.map +1 -0
  155. package/dist/tools/json.d.ts +28 -0
  156. package/dist/tools/json.d.ts.map +1 -0
  157. package/dist/tools/json.js +42 -0
  158. package/dist/tools/json.js.map +1 -0
  159. package/dist/tools/random.d.ts +29 -0
  160. package/dist/tools/random.d.ts.map +1 -0
  161. package/dist/tools/random.js +56 -0
  162. package/dist/tools/random.js.map +1 -0
  163. package/dist/tools/regex.d.ts +43 -0
  164. package/dist/tools/regex.d.ts.map +1 -0
  165. package/dist/tools/regex.js +68 -0
  166. package/dist/tools/regex.js.map +1 -0
  167. package/dist/tools/sleep.d.ts +10 -0
  168. package/dist/tools/sleep.d.ts.map +1 -0
  169. package/dist/tools/sleep.js +25 -0
  170. package/dist/tools/sleep.js.map +1 -0
  171. package/dist/tools/uuid.d.ts +15 -0
  172. package/dist/tools/uuid.d.ts.map +1 -0
  173. package/dist/tools/uuid.js +25 -0
  174. package/dist/tools/uuid.js.map +1 -0
  175. package/dist/utils/circuit-breaker.d.ts +127 -0
  176. package/dist/utils/circuit-breaker.d.ts.map +1 -0
  177. package/dist/utils/circuit-breaker.js +235 -0
  178. package/dist/utils/circuit-breaker.js.map +1 -0
  179. package/dist/utils/fallback.d.ts +66 -0
  180. package/dist/utils/fallback.d.ts.map +1 -0
  181. package/dist/utils/fallback.js +99 -0
  182. package/dist/utils/fallback.js.map +1 -0
  183. package/dist/utils/index.d.ts +4 -0
  184. package/dist/utils/index.d.ts.map +1 -0
  185. package/dist/utils/index.js +4 -0
  186. package/dist/utils/index.js.map +1 -0
  187. package/dist/utils/retry.d.ts +51 -0
  188. package/dist/utils/retry.d.ts.map +1 -0
  189. package/dist/utils/retry.js +115 -0
  190. package/dist/utils/retry.js.map +1 -0
  191. package/package.json +56 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cogitator-memory.test.js","sourceRoot":"","sources":["../../src/__tests__/cogitator-memory.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAGjC,MAAM,aAAa,GAAc,EAAE,CAAC;AACpC,IAAI,aAAa,GAAG,CAAC,CAAC;AAEtB,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;IAChC,gBAAgB,EAAE,GAAG,EAAE,CAAC,CAAC;QACvB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE;YACpC,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,EAAE,OAAO,IAAI,eAAe,CAAC;YACzE,aAAa,EAAE,CAAC;YAChB,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,EAAE,EAAE,SAAS;gBACb,OAAO;gBACP,YAAY,EAAE,MAAM;gBACpB,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE;aAC9D,CAAC,CAAC;QACL,CAAC,CAAC;QACF,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;KACpB,CAAC;IACF,UAAU,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC;QAC9B,QAAQ,EAAE,QAAQ;QAClB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;KACpC,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,IAAI,GAAc,CAAC;IACnB,IAAI,KAAY,CAAC;IAEjB,UAAU,CAAC,GAAG,EAAE;QACd,aAAa,GAAG,CAAC,CAAC;QAClB,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;YACpC,GAAG,GAAG,IAAI,SAAS,EAAE,CAAC;YACtB,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAErD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,wBAAwB,EAAE,GAAG,EAAE;QACtC,MAAM,YAAY,GAAoB;YACpC,MAAM,EAAE;gBACN,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;aAC/B;SACF,CAAC;QAEF,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE7D,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;YAE/E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,gBAAgB,CAAC;YAElC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;YAC9E,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE7D,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC,CAAC;YACzE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE7E,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACtE,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YAE1E,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,kBAAkB,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;YAE1F,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,cAAc,CAAC;YAEhC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC;YACrE,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAC;YAE3D,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE;gBACnC,KAAK,EAAE,gBAAgB;gBACvB,QAAQ;gBACR,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACjD,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,eAAe,CAAC;YAEjC,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC,CAAC;YAChE,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YAE9E,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;YAClE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEzE,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;YAC9C,GAAG,GAAG,IAAI,SAAS,CAAC,YAAY,CAAC,CAAC;YAClC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3D,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;YAElE,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YAEjD,MAAM,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,MAAM,iBAAiB,GAAoB;YACzC,MAAM,EAAE;gBACN,OAAO,EAAE,QAAQ;gBACjB,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE;gBAC9B,cAAc,EAAE;oBACd,SAAS,EAAE,IAAI;oBACf,QAAQ,EAAE,QAAQ;oBAClB,mBAAmB,EAAE,IAAI;iBAC1B;aACF;SACF,CAAC;QAEF,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,GAAG,GAAG,IAAI,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACvC,KAAK,GAAG,IAAI,KAAK,CAAC;gBAChB,EAAE,EAAE,YAAY;gBAChB,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,oBAAoB;gBAC3B,YAAY,EAAE,kBAAkB;aACjC,CAAC,CAAC;YAEH,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC,CAAC;YAC1E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;YAE7E,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=datetime.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/datetime.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,87 @@
1
+ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
2
+ import { datetime } from '../tools/datetime';
3
+ const mockContext = {
4
+ agentId: 'agent_test',
5
+ runId: 'run_test',
6
+ signal: new AbortController().signal,
7
+ };
8
+ describe('datetime tool', () => {
9
+ beforeEach(() => {
10
+ vi.useFakeTimers();
11
+ vi.setSystemTime(new Date('2024-12-30T15:30:45.000Z'));
12
+ });
13
+ afterEach(() => {
14
+ vi.useRealTimers();
15
+ });
16
+ describe('default format (iso)', () => {
17
+ it('returns ISO format by default', async () => {
18
+ const result = (await datetime.execute({}, mockContext));
19
+ expect(result.datetime).toBe('2024-12-30T15:30:45.000Z');
20
+ expect(result.format).toBe('iso');
21
+ });
22
+ it('includes timezone in response', async () => {
23
+ const result = (await datetime.execute({}, mockContext));
24
+ expect(result.timezone).toBeDefined();
25
+ expect(typeof result.timezone).toBe('string');
26
+ });
27
+ });
28
+ describe('unix format', () => {
29
+ it('returns unix timestamp', async () => {
30
+ const result = (await datetime.execute({ format: 'unix' }, mockContext));
31
+ expect(result.datetime).toBe('1735572645');
32
+ expect(result.format).toBe('unix');
33
+ });
34
+ });
35
+ describe('readable format', () => {
36
+ it('returns human-readable format', async () => {
37
+ const result = (await datetime.execute({ format: 'readable' }, mockContext));
38
+ expect(result.datetime).toContain('2024');
39
+ expect(result.datetime).toContain('December');
40
+ expect(result.format).toBe('readable');
41
+ });
42
+ });
43
+ describe('date format', () => {
44
+ it('returns date only', async () => {
45
+ const result = (await datetime.execute({ format: 'date' }, mockContext));
46
+ expect(result.datetime).toMatch(/\d{2}\/\d{2}\/\d{4}/);
47
+ expect(result.format).toBe('date');
48
+ });
49
+ });
50
+ describe('time format', () => {
51
+ it('returns time only', async () => {
52
+ const result = (await datetime.execute({ format: 'time' }, mockContext));
53
+ expect(result.datetime).toMatch(/\d{2}:\d{2}:\d{2}/);
54
+ expect(result.format).toBe('time');
55
+ });
56
+ });
57
+ describe('timezone support', () => {
58
+ it('accepts valid timezone', async () => {
59
+ const result = (await datetime.execute({ timezone: 'America/New_York' }, mockContext));
60
+ expect(result.timezone).toBe('America/New_York');
61
+ });
62
+ it('returns error for invalid timezone', async () => {
63
+ const result = (await datetime.execute({ timezone: 'Invalid/Timezone' }, mockContext));
64
+ expect(result.error).toContain('Invalid timezone');
65
+ });
66
+ it('formats time in specified timezone', async () => {
67
+ const utcResult = (await datetime.execute({ timezone: 'UTC', format: 'iso' }, mockContext));
68
+ expect(utcResult.datetime).toContain('15:30:45');
69
+ });
70
+ });
71
+ describe('tool metadata', () => {
72
+ it('has correct name', () => {
73
+ expect(datetime.name).toBe('datetime');
74
+ });
75
+ it('has description', () => {
76
+ expect(datetime.description).toContain('current date and time');
77
+ });
78
+ it('returns valid JSON schema', () => {
79
+ const schema = datetime.toJSON();
80
+ expect(schema.name).toBe('datetime');
81
+ expect(schema.parameters.type).toBe('object');
82
+ expect(schema.parameters.properties).toHaveProperty('timezone');
83
+ expect(schema.parameters.properties).toHaveProperty('format');
84
+ });
85
+ });
86
+ });
87
+ //# sourceMappingURL=datetime.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datetime.test.js","sourceRoot":"","sources":["../../src/__tests__/datetime.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,YAAY;IACrB,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,IAAI,eAAe,EAAE,CAAC,MAAM;CACrC,CAAC;AAEF,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAC7B,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAItD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACzD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,CAItD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YACtC,MAAM,CAAC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,CAItE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,CAI1E,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,CAItE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,WAAW,CAAC,CAItE,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,CAIpF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,kBAAkB,EAAE,EAAE,WAAW,CAAC,CAGpF,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,SAAS,GAAG,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,WAAW,CAAC,CAIzF,CAAC;YACF,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC1B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;YACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACrC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=exec.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/exec.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,59 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { exec } from '../tools/exec';
3
+ const mockContext = {
4
+ agentId: 'agent_test',
5
+ runId: 'run_test',
6
+ signal: new AbortController().signal,
7
+ };
8
+ describe('exec tool', () => {
9
+ it('executes simple command', async () => {
10
+ const result = await exec.execute({ command: 'echo "hello"' }, mockContext);
11
+ expect(result).toHaveProperty('exitCode', 0);
12
+ expect(result.stdout.trim()).toBe('hello');
13
+ });
14
+ it('captures stderr', async () => {
15
+ const result = await exec.execute({ command: 'echo "error" >&2' }, mockContext);
16
+ expect(result).toHaveProperty('exitCode', 0);
17
+ expect(result.stderr.trim()).toBe('error');
18
+ });
19
+ it('returns non-zero exit code', async () => {
20
+ const result = await exec.execute({ command: 'exit 42' }, mockContext);
21
+ expect(result.exitCode).toBe(42);
22
+ });
23
+ it('respects working directory', async () => {
24
+ const result = await exec.execute({ command: 'pwd', cwd: '/tmp' }, mockContext);
25
+ expect(result.stdout.trim()).toMatch(/\/?tmp$/);
26
+ });
27
+ it('uses custom environment variables', async () => {
28
+ const result = await exec.execute({ command: 'echo $MY_VAR', env: { MY_VAR: 'test-value' } }, mockContext);
29
+ expect(result.stdout.trim()).toBe('test-value');
30
+ });
31
+ it('handles command timeout', async () => {
32
+ const result = await exec.execute({ command: 'sleep 10', timeout: 100 }, mockContext);
33
+ expect(result).toHaveProperty('error');
34
+ expect(result.error).toContain('timed out');
35
+ });
36
+ it('handles command not found', async () => {
37
+ const result = await exec.execute({ command: 'nonexistent-command-12345' }, mockContext);
38
+ expect(result.exitCode).toBe(127);
39
+ });
40
+ it('runs multi-line commands', async () => {
41
+ const result = await exec.execute({ command: 'echo "line1" && echo "line2"' }, mockContext);
42
+ const stdout = result.stdout;
43
+ expect(stdout).toContain('line1');
44
+ expect(stdout).toContain('line2');
45
+ });
46
+ it('has sideEffects declared', () => {
47
+ expect(exec.sideEffects).toContain('process');
48
+ });
49
+ it('requires approval', () => {
50
+ expect(exec.requiresApproval).toBe(true);
51
+ });
52
+ it('has correct metadata', () => {
53
+ expect(exec.name).toBe('exec');
54
+ const schema = exec.toJSON();
55
+ expect(schema.parameters.properties).toHaveProperty('command');
56
+ expect(schema.parameters.properties).toHaveProperty('timeout');
57
+ });
58
+ });
59
+ //# sourceMappingURL=exec.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.test.js","sourceRoot":"","sources":["../../src/__tests__/exec.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=filesystem.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/filesystem.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,148 @@
1
+ import { describe, it, expect, beforeAll, afterAll } from 'vitest';
2
+ import { mkdir, rm, writeFile } from 'node:fs/promises';
3
+ import { join } from 'node:path';
4
+ import { fileRead, fileWrite, fileList, fileExists, fileDelete } from '../tools/filesystem';
5
+ const mockContext = {
6
+ agentId: 'agent_test',
7
+ runId: 'run_test',
8
+ signal: new AbortController().signal,
9
+ };
10
+ const TEST_DIR = join(process.cwd(), '.test-temp-fs');
11
+ beforeAll(async () => {
12
+ await mkdir(TEST_DIR, { recursive: true });
13
+ await writeFile(join(TEST_DIR, 'test.txt'), 'Hello, World!');
14
+ await mkdir(join(TEST_DIR, 'subdir'), { recursive: true });
15
+ await writeFile(join(TEST_DIR, 'subdir', 'nested.txt'), 'Nested file');
16
+ await writeFile(join(TEST_DIR, '.hidden'), 'Hidden file');
17
+ });
18
+ afterAll(async () => {
19
+ await rm(TEST_DIR, { recursive: true, force: true });
20
+ });
21
+ describe('fileRead tool', () => {
22
+ it('reads file content', async () => {
23
+ const result = await fileRead.execute({ path: join(TEST_DIR, 'test.txt') }, mockContext);
24
+ expect(result).toHaveProperty('content', 'Hello, World!');
25
+ expect(result).toHaveProperty('encoding', 'utf-8');
26
+ expect(result).toHaveProperty('size', 13);
27
+ });
28
+ it('reads file as base64', async () => {
29
+ const result = await fileRead.execute({ path: join(TEST_DIR, 'test.txt'), encoding: 'base64' }, mockContext);
30
+ expect(result.content).toBe(Buffer.from('Hello, World!').toString('base64'));
31
+ });
32
+ it('returns error for non-existent file', async () => {
33
+ const result = await fileRead.execute({ path: join(TEST_DIR, 'nope.txt') }, mockContext);
34
+ expect(result).toHaveProperty('error');
35
+ expect(result.error).toContain('not found');
36
+ });
37
+ it('has correct metadata', () => {
38
+ expect(fileRead.name).toBe('file_read');
39
+ });
40
+ });
41
+ describe('fileWrite tool', () => {
42
+ it('writes file content', async () => {
43
+ const testPath = join(TEST_DIR, 'write-test.txt');
44
+ const result = await fileWrite.execute({ path: testPath, content: 'Test content' }, mockContext);
45
+ expect(result).toHaveProperty('success', true);
46
+ expect(result).toHaveProperty('size', 12);
47
+ const read = await fileRead.execute({ path: testPath }, mockContext);
48
+ expect(read.content).toBe('Test content');
49
+ });
50
+ it('creates parent directories', async () => {
51
+ const testPath = join(TEST_DIR, 'new-dir', 'deep', 'file.txt');
52
+ const result = await fileWrite.execute({ path: testPath, content: 'Deep content' }, mockContext);
53
+ expect(result).toHaveProperty('success', true);
54
+ const read = await fileRead.execute({ path: testPath }, mockContext);
55
+ expect(read.content).toBe('Deep content');
56
+ });
57
+ it('writes base64 content', async () => {
58
+ const testPath = join(TEST_DIR, 'binary.bin');
59
+ const content = Buffer.from([0x00, 0x01, 0x02, 0xff]).toString('base64');
60
+ await fileWrite.execute({ path: testPath, content, encoding: 'base64' }, mockContext);
61
+ const read = await fileRead.execute({ path: testPath, encoding: 'base64' }, mockContext);
62
+ expect(read.content).toBe(content);
63
+ });
64
+ it('has sideEffects declared', () => {
65
+ expect(fileWrite.sideEffects).toContain('filesystem');
66
+ });
67
+ });
68
+ describe('fileList tool', () => {
69
+ it('lists directory contents', async () => {
70
+ const result = await fileList.execute({ path: TEST_DIR }, mockContext);
71
+ expect(result).toHaveProperty('entries');
72
+ const entries = result.entries;
73
+ const names = entries.map((e) => e.name);
74
+ expect(names).toContain('test.txt');
75
+ expect(names).toContain('subdir');
76
+ expect(names).not.toContain('.hidden');
77
+ });
78
+ it('includes hidden files when requested', async () => {
79
+ const result = await fileList.execute({ path: TEST_DIR, includeHidden: true }, mockContext);
80
+ const names = result.entries.map((e) => e.name);
81
+ expect(names).toContain('.hidden');
82
+ });
83
+ it('lists recursively', async () => {
84
+ const result = await fileList.execute({ path: TEST_DIR, recursive: true }, mockContext);
85
+ const entries = result.entries;
86
+ const names = entries.map((e) => e.name);
87
+ expect(names).toContain('nested.txt');
88
+ });
89
+ it('returns error for non-existent directory', async () => {
90
+ const result = await fileList.execute({ path: join(TEST_DIR, 'nope') }, mockContext);
91
+ expect(result).toHaveProperty('error');
92
+ });
93
+ it('has correct metadata', () => {
94
+ expect(fileList.name).toBe('file_list');
95
+ });
96
+ });
97
+ describe('fileExists tool', () => {
98
+ it('returns true for existing file', async () => {
99
+ const result = await fileExists.execute({ path: join(TEST_DIR, 'test.txt') }, mockContext);
100
+ expect(result).toHaveProperty('exists', true);
101
+ expect(result).toHaveProperty('type', 'file');
102
+ });
103
+ it('returns true for existing directory', async () => {
104
+ const result = await fileExists.execute({ path: join(TEST_DIR, 'subdir') }, mockContext);
105
+ expect(result).toHaveProperty('exists', true);
106
+ expect(result).toHaveProperty('type', 'directory');
107
+ });
108
+ it('returns false for non-existent path', async () => {
109
+ const result = await fileExists.execute({ path: join(TEST_DIR, 'nope') }, mockContext);
110
+ expect(result).toHaveProperty('exists', false);
111
+ });
112
+ it('has correct metadata', () => {
113
+ expect(fileExists.name).toBe('file_exists');
114
+ });
115
+ });
116
+ describe('fileDelete tool', () => {
117
+ it('deletes a file', async () => {
118
+ const testPath = join(TEST_DIR, 'to-delete.txt');
119
+ await fileWrite.execute({ path: testPath, content: 'delete me' }, mockContext);
120
+ const result = await fileDelete.execute({ path: testPath }, mockContext);
121
+ expect(result).toHaveProperty('success', true);
122
+ expect(result).toHaveProperty('type', 'file');
123
+ const exists = await fileExists.execute({ path: testPath }, mockContext);
124
+ expect(exists).toHaveProperty('exists', false);
125
+ });
126
+ it('deletes empty directory', async () => {
127
+ const testPath = join(TEST_DIR, 'empty-dir-2');
128
+ await mkdir(testPath, { recursive: true });
129
+ const result = await fileDelete.execute({ path: testPath, recursive: true }, mockContext);
130
+ expect(result).toHaveProperty('success', true);
131
+ expect(result).toHaveProperty('type', 'directory');
132
+ });
133
+ it('deletes non-empty directory with recursive', async () => {
134
+ const testPath = join(TEST_DIR, 'full-dir');
135
+ await mkdir(testPath, { recursive: true });
136
+ await writeFile(join(testPath, 'file.txt'), 'content');
137
+ const result = await fileDelete.execute({ path: testPath, recursive: true }, mockContext);
138
+ expect(result).toHaveProperty('success', true);
139
+ });
140
+ it('returns error for non-existent path', async () => {
141
+ const result = await fileDelete.execute({ path: join(TEST_DIR, 'nope') }, mockContext);
142
+ expect(result).toHaveProperty('error');
143
+ });
144
+ it('has sideEffects declared', () => {
145
+ expect(fileDelete.sideEffects).toContain('filesystem');
146
+ });
147
+ });
148
+ //# sourceMappingURL=filesystem.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filesystem.test.js","sourceRoot":"","sources":["../../src/__tests__/filesystem.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Tests for Google Gemini Backend
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=google-backend.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"google-backend.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/google-backend.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}