artemys 0.2.0 → 0.2.1

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 (332) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +194 -146
  3. package/dist/cli/index.d.ts +1 -1
  4. package/dist/cli/index.d.ts.map +1 -1
  5. package/dist/cli/index.js +446 -379
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/coffeeshop/client.d.ts +158 -0
  8. package/dist/coffeeshop/client.d.ts.map +1 -0
  9. package/dist/coffeeshop/client.js +293 -0
  10. package/dist/coffeeshop/client.js.map +1 -0
  11. package/dist/coffeeshop/index.d.ts +2 -0
  12. package/dist/coffeeshop/index.d.ts.map +1 -0
  13. package/dist/coffeeshop/index.js +2 -0
  14. package/dist/coffeeshop/index.js.map +1 -0
  15. package/dist/discovery/agent-card.schema.d.ts +37 -109
  16. package/dist/discovery/agent-card.schema.d.ts.map +1 -1
  17. package/dist/discovery/discovery-query.schema.d.ts +6 -15
  18. package/dist/discovery/discovery-query.schema.d.ts.map +1 -1
  19. package/dist/discovery/index.d.ts +1 -1
  20. package/dist/discovery/index.d.ts.map +1 -1
  21. package/dist/discovery/index.js +1 -1
  22. package/dist/discovery/index.js.map +1 -1
  23. package/dist/discovery/intro-decision.schema.d.ts +9 -11
  24. package/dist/discovery/intro-decision.schema.d.ts.map +1 -1
  25. package/dist/discovery/intro-request.schema.d.ts +2 -14
  26. package/dist/discovery/intro-request.schema.d.ts.map +1 -1
  27. package/dist/discovery/session-bootstrap.schema.d.ts +86 -66
  28. package/dist/discovery/session-bootstrap.schema.d.ts.map +1 -1
  29. package/dist/discovery/session-bootstrap.schema.js +84 -8
  30. package/dist/discovery/session-bootstrap.schema.js.map +1 -1
  31. package/dist/mcp-server/index.d.ts +4 -0
  32. package/dist/mcp-server/index.d.ts.map +1 -0
  33. package/dist/mcp-server/index.js +4 -0
  34. package/dist/mcp-server/index.js.map +1 -0
  35. package/dist/mcp-server/persistence.d.ts +37 -0
  36. package/dist/mcp-server/persistence.d.ts.map +1 -0
  37. package/dist/mcp-server/persistence.js +309 -0
  38. package/dist/mcp-server/persistence.js.map +1 -0
  39. package/dist/mcp-server/resources.d.ts +20 -0
  40. package/dist/mcp-server/resources.d.ts.map +1 -0
  41. package/dist/mcp-server/resources.js +49 -0
  42. package/dist/mcp-server/resources.js.map +1 -0
  43. package/dist/mcp-server/server.d.ts +33 -0
  44. package/dist/mcp-server/server.d.ts.map +1 -0
  45. package/dist/mcp-server/server.js +220 -0
  46. package/dist/mcp-server/server.js.map +1 -0
  47. package/dist/mcp-server/state.d.ts +43 -0
  48. package/dist/mcp-server/state.d.ts.map +1 -0
  49. package/dist/mcp-server/state.js +111 -0
  50. package/dist/mcp-server/state.js.map +1 -0
  51. package/dist/mcp-server/tools/common.d.ts +225 -0
  52. package/dist/mcp-server/tools/common.d.ts.map +1 -0
  53. package/dist/mcp-server/tools/common.js +11 -0
  54. package/dist/mcp-server/tools/common.js.map +1 -0
  55. package/dist/mcp-server/tools/discovery.d.ts +3 -0
  56. package/dist/mcp-server/tools/discovery.d.ts.map +1 -0
  57. package/dist/mcp-server/tools/discovery.js +48 -0
  58. package/dist/mcp-server/tools/discovery.js.map +1 -0
  59. package/dist/mcp-server/tools/index.d.ts +4 -0
  60. package/dist/mcp-server/tools/index.d.ts.map +1 -0
  61. package/dist/mcp-server/tools/index.js +13 -0
  62. package/dist/mcp-server/tools/index.js.map +1 -0
  63. package/dist/mcp-server/tools/intro.d.ts +3 -0
  64. package/dist/mcp-server/tools/intro.d.ts.map +1 -0
  65. package/dist/mcp-server/tools/intro.js +53 -0
  66. package/dist/mcp-server/tools/intro.js.map +1 -0
  67. package/dist/mcp-server/tools/protocol.d.ts +3 -0
  68. package/dist/mcp-server/tools/protocol.d.ts.map +1 -0
  69. package/dist/mcp-server/tools/protocol.js +73 -0
  70. package/dist/mcp-server/tools/protocol.js.map +1 -0
  71. package/dist/mcp-server/tools/talent.d.ts +3 -0
  72. package/dist/mcp-server/tools/talent.d.ts.map +1 -0
  73. package/dist/mcp-server/tools/talent.js +226 -0
  74. package/dist/mcp-server/tools/talent.js.map +1 -0
  75. package/dist/openclaw/index.d.ts +2 -0
  76. package/dist/openclaw/index.d.ts.map +1 -0
  77. package/dist/openclaw/index.js +2 -0
  78. package/dist/openclaw/index.js.map +1 -0
  79. package/dist/openclaw/skill.d.ts +13 -0
  80. package/dist/openclaw/skill.d.ts.map +1 -0
  81. package/dist/openclaw/skill.js +18 -0
  82. package/dist/openclaw/skill.js.map +1 -0
  83. package/dist/protocol/consent.schema.d.ts +18 -48
  84. package/dist/protocol/consent.schema.d.ts.map +1 -1
  85. package/dist/protocol/consent.schema.js +1 -1
  86. package/dist/protocol/consent.schema.js.map +1 -1
  87. package/dist/protocol/dialogue.schema.d.ts +21 -177
  88. package/dist/protocol/dialogue.schema.d.ts.map +1 -1
  89. package/dist/protocol/envelope.schema.d.ts +46 -28
  90. package/dist/protocol/envelope.schema.d.ts.map +1 -1
  91. package/dist/protocol/errors.d.ts +8 -1
  92. package/dist/protocol/errors.d.ts.map +1 -1
  93. package/dist/protocol/handshake.schema.d.ts +130 -385
  94. package/dist/protocol/handshake.schema.d.ts.map +1 -1
  95. package/dist/protocol/handshake.schema.js +1 -0
  96. package/dist/protocol/handshake.schema.js.map +1 -1
  97. package/dist/protocol/identity.schema.d.ts +44 -94
  98. package/dist/protocol/identity.schema.d.ts.map +1 -1
  99. package/dist/protocol/index.d.ts +1 -0
  100. package/dist/protocol/index.d.ts.map +1 -1
  101. package/dist/protocol/index.js +1 -0
  102. package/dist/protocol/index.js.map +1 -1
  103. package/dist/protocol/message-types.d.ts +14 -1
  104. package/dist/protocol/message-types.d.ts.map +1 -1
  105. package/dist/protocol/message.schema.d.ts +100 -715
  106. package/dist/protocol/message.schema.d.ts.map +1 -1
  107. package/dist/protocol/resolution.schema.d.ts +22 -268
  108. package/dist/protocol/resolution.schema.d.ts.map +1 -1
  109. package/dist/protocol/resolution.schema.js +1 -1
  110. package/dist/protocol/resolution.schema.js.map +1 -1
  111. package/dist/protocol/state-machine.d.ts +10 -1
  112. package/dist/protocol/state-machine.d.ts.map +1 -1
  113. package/dist/protocol/talent.schema.d.ts +106 -0
  114. package/dist/protocol/talent.schema.d.ts.map +1 -0
  115. package/dist/protocol/talent.schema.js +47 -0
  116. package/dist/protocol/talent.schema.js.map +1 -0
  117. package/dist/protocol/transport.schema.d.ts +16 -18
  118. package/dist/protocol/transport.schema.d.ts.map +1 -1
  119. package/dist/transport/client.d.ts +32 -0
  120. package/dist/transport/client.d.ts.map +1 -0
  121. package/dist/transport/client.js +155 -0
  122. package/dist/transport/client.js.map +1 -0
  123. package/dist/transport/dedup.d.ts +9 -0
  124. package/dist/transport/dedup.d.ts.map +1 -0
  125. package/dist/transport/dedup.js +36 -0
  126. package/dist/transport/dedup.js.map +1 -0
  127. package/dist/transport/handler.d.ts +9 -0
  128. package/dist/transport/handler.d.ts.map +1 -0
  129. package/dist/transport/handler.js +105 -0
  130. package/dist/transport/handler.js.map +1 -0
  131. package/dist/transport/hmac.d.ts +3 -0
  132. package/dist/transport/hmac.d.ts.map +1 -0
  133. package/dist/transport/hmac.js +43 -0
  134. package/dist/transport/hmac.js.map +1 -0
  135. package/dist/transport/index.d.ts +6 -0
  136. package/dist/transport/index.d.ts.map +1 -0
  137. package/dist/transport/index.js +6 -0
  138. package/dist/transport/index.js.map +1 -0
  139. package/dist/transport/reference-runner.d.ts +37 -0
  140. package/dist/transport/reference-runner.d.ts.map +1 -0
  141. package/dist/transport/reference-runner.js +372 -0
  142. package/dist/transport/reference-runner.js.map +1 -0
  143. package/package.json +19 -31
  144. package/dist/agent/archiver.d.ts +0 -8
  145. package/dist/agent/archiver.d.ts.map +0 -1
  146. package/dist/agent/archiver.js +0 -48
  147. package/dist/agent/archiver.js.map +0 -1
  148. package/dist/agent/capabilities.d.ts +0 -23
  149. package/dist/agent/capabilities.d.ts.map +0 -1
  150. package/dist/agent/capabilities.js +0 -87
  151. package/dist/agent/capabilities.js.map +0 -1
  152. package/dist/agent/config.d.ts +0 -60
  153. package/dist/agent/config.d.ts.map +0 -1
  154. package/dist/agent/config.js +0 -84
  155. package/dist/agent/config.js.map +0 -1
  156. package/dist/agent/context-provider.d.ts +0 -12
  157. package/dist/agent/context-provider.d.ts.map +0 -1
  158. package/dist/agent/context-provider.js +0 -34
  159. package/dist/agent/context-provider.js.map +0 -1
  160. package/dist/agent/context.d.ts +0 -9
  161. package/dist/agent/context.d.ts.map +0 -1
  162. package/dist/agent/context.js +0 -80
  163. package/dist/agent/context.js.map +0 -1
  164. package/dist/agent/events.d.ts +0 -62
  165. package/dist/agent/events.d.ts.map +0 -1
  166. package/dist/agent/events.js +0 -21
  167. package/dist/agent/events.js.map +0 -1
  168. package/dist/agent/index.d.ts +0 -32
  169. package/dist/agent/index.d.ts.map +0 -1
  170. package/dist/agent/index.js +0 -28
  171. package/dist/agent/index.js.map +0 -1
  172. package/dist/agent/mcp.d.ts +0 -16
  173. package/dist/agent/mcp.d.ts.map +0 -1
  174. package/dist/agent/mcp.js +0 -69
  175. package/dist/agent/mcp.js.map +0 -1
  176. package/dist/agent/notifications/decision-parser.d.ts +0 -10
  177. package/dist/agent/notifications/decision-parser.d.ts.map +0 -1
  178. package/dist/agent/notifications/decision-parser.js +0 -21
  179. package/dist/agent/notifications/decision-parser.js.map +0 -1
  180. package/dist/agent/notifications/index.d.ts +0 -4
  181. package/dist/agent/notifications/index.d.ts.map +0 -1
  182. package/dist/agent/notifications/index.js +0 -3
  183. package/dist/agent/notifications/index.js.map +0 -1
  184. package/dist/agent/notifications/opportunity-templates.d.ts +0 -14
  185. package/dist/agent/notifications/opportunity-templates.d.ts.map +0 -1
  186. package/dist/agent/notifications/opportunity-templates.js +0 -21
  187. package/dist/agent/notifications/opportunity-templates.js.map +0 -1
  188. package/dist/agent/notifications/types.d.ts +0 -16
  189. package/dist/agent/notifications/types.d.ts.map +0 -1
  190. package/dist/agent/notifications/types.js +0 -2
  191. package/dist/agent/notifications/types.js.map +0 -1
  192. package/dist/agent/providers.d.ts +0 -9
  193. package/dist/agent/providers.d.ts.map +0 -1
  194. package/dist/agent/providers.js +0 -29
  195. package/dist/agent/providers.js.map +0 -1
  196. package/dist/agent/runtime.d.ts +0 -63
  197. package/dist/agent/runtime.d.ts.map +0 -1
  198. package/dist/agent/runtime.js +0 -395
  199. package/dist/agent/runtime.js.map +0 -1
  200. package/dist/agent/scanning/index.d.ts +0 -3
  201. package/dist/agent/scanning/index.d.ts.map +0 -1
  202. package/dist/agent/scanning/index.js +0 -3
  203. package/dist/agent/scanning/index.js.map +0 -1
  204. package/dist/agent/scanning/opportunity-scorer.d.ts +0 -24
  205. package/dist/agent/scanning/opportunity-scorer.d.ts.map +0 -1
  206. package/dist/agent/scanning/opportunity-scorer.js +0 -90
  207. package/dist/agent/scanning/opportunity-scorer.js.map +0 -1
  208. package/dist/agent/scanning/types.d.ts +0 -65
  209. package/dist/agent/scanning/types.d.ts.map +0 -1
  210. package/dist/agent/scanning/types.js +0 -32
  211. package/dist/agent/scanning/types.js.map +0 -1
  212. package/dist/agent/scheduler.d.ts +0 -38
  213. package/dist/agent/scheduler.d.ts.map +0 -1
  214. package/dist/agent/scheduler.js +0 -125
  215. package/dist/agent/scheduler.js.map +0 -1
  216. package/dist/agent/session.d.ts +0 -20
  217. package/dist/agent/session.d.ts.map +0 -1
  218. package/dist/agent/session.js +0 -88
  219. package/dist/agent/session.js.map +0 -1
  220. package/dist/agent/stores.d.ts +0 -48
  221. package/dist/agent/stores.d.ts.map +0 -1
  222. package/dist/agent/stores.js +0 -2
  223. package/dist/agent/stores.js.map +0 -1
  224. package/dist/agent/tools/browser/ats-patterns.d.ts +0 -20
  225. package/dist/agent/tools/browser/ats-patterns.d.ts.map +0 -1
  226. package/dist/agent/tools/browser/ats-patterns.js +0 -226
  227. package/dist/agent/tools/browser/ats-patterns.js.map +0 -1
  228. package/dist/agent/tools/browser/index.d.ts +0 -14
  229. package/dist/agent/tools/browser/index.d.ts.map +0 -1
  230. package/dist/agent/tools/browser/index.js +0 -126
  231. package/dist/agent/tools/browser/index.js.map +0 -1
  232. package/dist/agent/tools/browser/operator-runtime.d.ts +0 -35
  233. package/dist/agent/tools/browser/operator-runtime.d.ts.map +0 -1
  234. package/dist/agent/tools/browser/operator-runtime.js +0 -93
  235. package/dist/agent/tools/browser/operator-runtime.js.map +0 -1
  236. package/dist/agent/tools/browser/providers/chrome-mcp.d.ts +0 -3
  237. package/dist/agent/tools/browser/providers/chrome-mcp.d.ts.map +0 -1
  238. package/dist/agent/tools/browser/providers/chrome-mcp.js +0 -164
  239. package/dist/agent/tools/browser/providers/chrome-mcp.js.map +0 -1
  240. package/dist/agent/tools/browser/providers/playwright.d.ts +0 -7
  241. package/dist/agent/tools/browser/providers/playwright.d.ts.map +0 -1
  242. package/dist/agent/tools/browser/providers/playwright.js +0 -619
  243. package/dist/agent/tools/browser/providers/playwright.js.map +0 -1
  244. package/dist/agent/tools/browser/types.d.ts +0 -22
  245. package/dist/agent/tools/browser/types.d.ts.map +0 -1
  246. package/dist/agent/tools/browser/types.js +0 -15
  247. package/dist/agent/tools/browser/types.js.map +0 -1
  248. package/dist/agent/tools/cancel-task.d.ts +0 -4
  249. package/dist/agent/tools/cancel-task.d.ts.map +0 -1
  250. package/dist/agent/tools/cancel-task.js +0 -29
  251. package/dist/agent/tools/cancel-task.js.map +0 -1
  252. package/dist/agent/tools/career-advice.d.ts +0 -3
  253. package/dist/agent/tools/career-advice.d.ts.map +0 -1
  254. package/dist/agent/tools/career-advice.js +0 -49
  255. package/dist/agent/tools/career-advice.js.map +0 -1
  256. package/dist/agent/tools/index.d.ts +0 -15
  257. package/dist/agent/tools/index.d.ts.map +0 -1
  258. package/dist/agent/tools/index.js +0 -94
  259. package/dist/agent/tools/index.js.map +0 -1
  260. package/dist/agent/tools/job-search.d.ts +0 -3
  261. package/dist/agent/tools/job-search.d.ts.map +0 -1
  262. package/dist/agent/tools/job-search.js +0 -77
  263. package/dist/agent/tools/job-search.js.map +0 -1
  264. package/dist/agent/tools/list-tasks.d.ts +0 -4
  265. package/dist/agent/tools/list-tasks.d.ts.map +0 -1
  266. package/dist/agent/tools/list-tasks.js +0 -24
  267. package/dist/agent/tools/list-tasks.js.map +0 -1
  268. package/dist/agent/tools/market-data.d.ts +0 -8
  269. package/dist/agent/tools/market-data.d.ts.map +0 -1
  270. package/dist/agent/tools/market-data.js +0 -133
  271. package/dist/agent/tools/market-data.js.map +0 -1
  272. package/dist/agent/tools/memory-write.d.ts +0 -3
  273. package/dist/agent/tools/memory-write.d.ts.map +0 -1
  274. package/dist/agent/tools/memory-write.js +0 -48
  275. package/dist/agent/tools/memory-write.js.map +0 -1
  276. package/dist/agent/tools/resume.d.ts +0 -3
  277. package/dist/agent/tools/resume.d.ts.map +0 -1
  278. package/dist/agent/tools/resume.js +0 -70
  279. package/dist/agent/tools/resume.js.map +0 -1
  280. package/dist/agent/tools/schedule-task.d.ts +0 -4
  281. package/dist/agent/tools/schedule-task.d.ts.map +0 -1
  282. package/dist/agent/tools/schedule-task.js +0 -39
  283. package/dist/agent/tools/schedule-task.js.map +0 -1
  284. package/dist/agent/tools/shell.d.ts +0 -6
  285. package/dist/agent/tools/shell.d.ts.map +0 -1
  286. package/dist/agent/tools/shell.js +0 -66
  287. package/dist/agent/tools/shell.js.map +0 -1
  288. package/dist/agent/tools/web-search.d.ts +0 -6
  289. package/dist/agent/tools/web-search.d.ts.map +0 -1
  290. package/dist/agent/tools/web-search.js +0 -73
  291. package/dist/agent/tools/web-search.js.map +0 -1
  292. package/dist/agent/types.d.ts +0 -103
  293. package/dist/agent/types.d.ts.map +0 -1
  294. package/dist/agent/types.js +0 -11
  295. package/dist/agent/types.js.map +0 -1
  296. package/dist/channels/index.d.ts +0 -10
  297. package/dist/channels/index.d.ts.map +0 -1
  298. package/dist/channels/index.js +0 -15
  299. package/dist/channels/index.js.map +0 -1
  300. package/dist/channels/telegram.d.ts +0 -21
  301. package/dist/channels/telegram.d.ts.map +0 -1
  302. package/dist/channels/telegram.js +0 -255
  303. package/dist/channels/telegram.js.map +0 -1
  304. package/dist/channels/types.d.ts +0 -24
  305. package/dist/channels/types.d.ts.map +0 -1
  306. package/dist/channels/types.js +0 -2
  307. package/dist/channels/types.js.map +0 -1
  308. package/dist/cli/templates/HEARTBEAT.md +0 -6
  309. package/dist/cli/templates/MEMORY.md +0 -6
  310. package/dist/cli/templates/PREFERENCES.md +0 -40
  311. package/dist/cli/templates/PROFILE.md +0 -26
  312. package/dist/cli/templates/SOUL.md +0 -23
  313. package/dist/connectors/google-calendar.d.ts +0 -8
  314. package/dist/connectors/google-calendar.d.ts.map +0 -1
  315. package/dist/connectors/google-calendar.js +0 -23
  316. package/dist/connectors/google-calendar.js.map +0 -1
  317. package/dist/connectors/google-gmail.d.ts +0 -8
  318. package/dist/connectors/google-gmail.d.ts.map +0 -1
  319. package/dist/connectors/google-gmail.js +0 -30
  320. package/dist/connectors/google-gmail.js.map +0 -1
  321. package/dist/connectors/google-oauth.d.ts +0 -17
  322. package/dist/connectors/google-oauth.d.ts.map +0 -1
  323. package/dist/connectors/google-oauth.js +0 -52
  324. package/dist/connectors/google-oauth.js.map +0 -1
  325. package/dist/connectors/index.d.ts +0 -5
  326. package/dist/connectors/index.d.ts.map +0 -1
  327. package/dist/connectors/index.js +0 -5
  328. package/dist/connectors/index.js.map +0 -1
  329. package/dist/connectors/types.d.ts +0 -20
  330. package/dist/connectors/types.d.ts.map +0 -1
  331. package/dist/connectors/types.js +0 -5
  332. package/dist/connectors/types.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/agent/tools/browser/types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,gFAOlB,CAAA;AAEV,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAA;AAE5D,eAAO,MAAM,iBAAiB,uCAAwC,CAAA;AAEtE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AAChE,MAAM,MAAM,yBAAyB,GAAG,eAAe,GAAG,MAAM,CAAA;AAEhE,eAAO,MAAM,oBAAoB,0DAIvB,CAAA;AAEV,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAA;AAErE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,aAAa,CAAA;IACrB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACE,EAAE,EAAE,IAAI,CAAA;IACR,IAAI,EAAE,OAAO,CAAA;CACd,GACD;IACE,EAAE,EAAE,KAAK,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA"}
@@ -1,15 +0,0 @@
1
- export const BROWSER_ACTIONS = [
2
- "navigate",
3
- "screenshot",
4
- "fill",
5
- "click",
6
- "extract_text",
7
- "submit",
8
- ];
9
- export const BROWSER_OPERATORS = ["playwright", "chrome-mcp"];
10
- export const BROWSER_SUBMIT_MODES = [
11
- "auto",
12
- "confirm-before-submit",
13
- "draft-only",
14
- ];
15
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/agent/tools/browser/types.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,UAAU;IACV,YAAY;IACZ,MAAM;IACN,OAAO;IACP,cAAc;IACd,QAAQ;CACA,CAAA;AAIV,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,YAAY,CAAU,CAAA;AAKtE,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,MAAM;IACN,uBAAuB;IACvB,YAAY;CACJ,CAAA"}
@@ -1,4 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- import type { TaskScheduler } from "../scheduler.js";
3
- export declare function createCancelTaskTool(scheduler: TaskScheduler): ToolDefinition;
4
- //# sourceMappingURL=cancel-task.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancel-task.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/cancel-task.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,CA0B7E"}
@@ -1,29 +0,0 @@
1
- import { z } from "zod";
2
- export function createCancelTaskTool(scheduler) {
3
- return {
4
- name: "cancel-task",
5
- description: "Cancel a scheduled task by its ID. The task will be marked as cancelled and will not run again.",
6
- parameters: z.object({
7
- task_id: z.string().describe("The ID of the task to cancel"),
8
- }),
9
- policy: "confirm",
10
- async execute(args) {
11
- try {
12
- const task = await scheduler.cancelTask(args.task_id);
13
- if (!task) {
14
- return { tool_name: "cancel-task", success: false, data: null, error: `Task not found: ${args.task_id}` };
15
- }
16
- return { tool_name: "cancel-task", success: true, data: { task_id: task.id, status: task.status } };
17
- }
18
- catch (err) {
19
- return {
20
- tool_name: "cancel-task",
21
- success: false,
22
- data: null,
23
- error: err instanceof Error ? err.message : String(err),
24
- };
25
- }
26
- },
27
- };
28
- }
29
- //# sourceMappingURL=cancel-task.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cancel-task.js","sourceRoot":"","sources":["../../../src/agent/tools/cancel-task.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,MAAM,UAAU,oBAAoB,CAAC,SAAwB;IAC3D,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,iGAAiG;QAC9G,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;YACnB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;SAC7D,CAAC;QACF,MAAM,EAAE,SAAS;QAEjB,KAAK,CAAC,OAAO,CAAC,IAAI;YAChB,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBACrD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,IAAI,CAAC,OAAO,EAAE,EAAE,CAAA;gBAC3G,CAAC;gBACD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,CAAA;YACrG,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,SAAS,EAAE,aAAa;oBACxB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAA;YACH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- export declare function createCareerAdviceTool(): ToolDefinition;
3
- //# sourceMappingURL=career-advice.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"career-advice.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/career-advice.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AAW1E,wBAAgB,sBAAsB,IAAI,cAAc,CAyCvD"}
@@ -1,49 +0,0 @@
1
- import { generateText } from "ai";
2
- import { z } from "zod";
3
- import { resolveModel } from "../providers.js";
4
- const SYSTEM_PROMPT = `You are a career analyst embedded in Artie, a personal career agent. Analyze the candidate's question using their profile context. Provide actionable, specific insights — not generic advice.
5
-
6
- Structure your response:
7
- 1. **Assessment** — What the market data and their profile suggest
8
- 2. **Gaps** — Skills or experience gaps relative to their goals
9
- 3. **Actions** — Concrete next steps ranked by impact
10
-
11
- Be direct. Use data-informed reasoning. Avoid platitudes.`;
12
- export function createCareerAdviceTool() {
13
- return {
14
- name: "career-advice",
15
- description: "Analyze career positioning, identify skill gaps, suggest growth paths based on the candidate's profile and market trends.",
16
- parameters: z.object({
17
- query: z.string().describe("The career question or topic to analyze"),
18
- profile_context: z.string().optional().describe("Additional profile context to consider"),
19
- }),
20
- policy: "auto",
21
- async execute(args, context) {
22
- const { query, profile_context } = args;
23
- if (!context?.config) {
24
- return { tool_name: "career-advice", success: false, data: null, error: "Missing agent config" };
25
- }
26
- try {
27
- const userMessage = profile_context
28
- ? `Profile context:\n${profile_context}\n\nQuestion:\n${query}`
29
- : query;
30
- const result = await generateText({
31
- model: resolveModel(context.config),
32
- system: SYSTEM_PROMPT,
33
- messages: [{ role: "user", content: userMessage }],
34
- maxOutputTokens: 1024,
35
- });
36
- return { tool_name: "career-advice", success: true, data: { analysis: result.text } };
37
- }
38
- catch (err) {
39
- return {
40
- tool_name: "career-advice",
41
- success: false,
42
- data: null,
43
- error: err instanceof Error ? err.message : String(err),
44
- };
45
- }
46
- },
47
- };
48
- }
49
- //# sourceMappingURL=career-advice.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"career-advice.js","sourceRoot":"","sources":["../../../src/agent/tools/career-advice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AACjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C,MAAM,aAAa,GAAG;;;;;;;0DAOoC,CAAA;AAE1D,MAAM,UAAU,sBAAsB;IACpC,OAAO;QACL,IAAI,EAAE,eAAe;QACrB,WAAW,EACT,2HAA2H;QAC7H,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yCAAyC,CAAC;YACrE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;SAC1F,CAAC;QACF,MAAM,EAAE,MAAM;QAEd,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAqB;YACvC,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,GAAG,IAAI,CAAA;YAEvC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;gBACrB,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAA;YAClG,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,eAAe;oBACjC,CAAC,CAAC,qBAAqB,eAAe,kBAAkB,KAAK,EAAE;oBAC/D,CAAC,CAAC,KAAK,CAAA;gBAET,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;oBAChC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;oBACnC,MAAM,EAAE,aAAa;oBACrB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;oBAClD,eAAe,EAAE,IAAI;iBACtB,CAAC,CAAA;gBAEF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAA;YACvF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,SAAS,EAAE,eAAe;oBAC1B,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAA;YACH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,15 +0,0 @@
1
- import type { ToolDefinition, ToolResult, ToolContext } from "../types.js";
2
- export declare class ToolRegistry {
3
- private tools;
4
- register(tool: ToolDefinition): void;
5
- get(name: string): ToolDefinition | undefined;
6
- list(): ToolDefinition[];
7
- formatForLLM(): {
8
- name: string;
9
- description: string;
10
- input_schema: Record<string, unknown>;
11
- }[];
12
- execute(name: string, args: unknown, context?: ToolContext): Promise<ToolResult>;
13
- requiresApproval(name: string): boolean;
14
- }
15
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAuC1E,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAoC;IAEjD,QAAQ,CAAC,IAAI,EAAE,cAAc,GAAG,IAAI;IAIpC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAI7C,IAAI,IAAI,cAAc,EAAE;IAIxB,YAAY,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,EAAE;IAQxF,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;IAmCtF,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;CAGxC"}
@@ -1,94 +0,0 @@
1
- import { z } from "zod";
2
- function zodToJsonSchema(schema) {
3
- if (schema instanceof z.ZodOptional)
4
- return zodToJsonSchema(schema.unwrap());
5
- if (schema instanceof z.ZodDefault)
6
- return zodToJsonSchema(schema.removeDefault());
7
- if (schema instanceof z.ZodEffects)
8
- return zodToJsonSchema(schema.innerType());
9
- if (schema instanceof z.ZodNullable) {
10
- return { ...zodToJsonSchema(schema.unwrap()), nullable: true };
11
- }
12
- if (schema instanceof z.ZodString)
13
- return { type: "string" };
14
- if (schema instanceof z.ZodNumber)
15
- return { type: "number" };
16
- if (schema instanceof z.ZodBoolean)
17
- return { type: "boolean" };
18
- if (schema instanceof z.ZodEnum)
19
- return { type: "string", enum: schema.options };
20
- if (schema instanceof z.ZodArray) {
21
- return { type: "array", items: zodToJsonSchema(schema.element) };
22
- }
23
- if (schema instanceof z.ZodObject) {
24
- const shape = schema.shape;
25
- const properties = {};
26
- const required = [];
27
- for (const [key, value] of Object.entries(shape)) {
28
- properties[key] = zodToJsonSchema(value);
29
- if (!(value instanceof z.ZodOptional) && !(value instanceof z.ZodDefault)) {
30
- required.push(key);
31
- }
32
- }
33
- const result = { type: "object", properties };
34
- if (required.length > 0)
35
- result.required = required;
36
- return result;
37
- }
38
- return {};
39
- }
40
- export class ToolRegistry {
41
- tools = new Map();
42
- register(tool) {
43
- this.tools.set(tool.name, tool);
44
- }
45
- get(name) {
46
- return this.tools.get(name);
47
- }
48
- list() {
49
- return Array.from(this.tools.values());
50
- }
51
- formatForLLM() {
52
- return this.list().map((tool) => ({
53
- name: tool.name,
54
- description: tool.description,
55
- input_schema: zodToJsonSchema(tool.parameters),
56
- }));
57
- }
58
- async execute(name, args, context) {
59
- const tool = this.tools.get(name);
60
- if (!tool) {
61
- return { tool_name: name, success: false, data: null, error: `Unknown tool: ${name}` };
62
- }
63
- const parseResult = tool.parameters.safeParse(args);
64
- if (!parseResult.success) {
65
- return {
66
- tool_name: name,
67
- success: false,
68
- data: null,
69
- error: `Invalid arguments: ${parseResult.error.message}`,
70
- };
71
- }
72
- if (tool.policy === "confirm" && context?.approvalCallback) {
73
- const approved = await context.approvalCallback(name, parseResult.data);
74
- if (!approved) {
75
- return { tool_name: name, success: false, data: null, error: "Tool execution not approved by user" };
76
- }
77
- }
78
- try {
79
- return await tool.execute(parseResult.data, context);
80
- }
81
- catch (err) {
82
- return {
83
- tool_name: name,
84
- success: false,
85
- data: null,
86
- error: err instanceof Error ? err.message : String(err),
87
- };
88
- }
89
- }
90
- requiresApproval(name) {
91
- return this.tools.get(name)?.policy === "confirm";
92
- }
93
- }
94
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent/tools/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- export declare function createJobSearchTool(): ToolDefinition;
3
- //# sourceMappingURL=job-search.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"job-search.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/job-search.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AAI1E,wBAAgB,mBAAmB,IAAI,cAAc,CA0EpD"}
@@ -1,77 +0,0 @@
1
- import { z } from "zod";
2
- import { getPage, ACTION_TIMEOUT } from "./browser/index.js";
3
- import { detectATS, getSelectors, getActionPlan } from "./browser/ats-patterns.js";
4
- export function createJobSearchTool() {
5
- return {
6
- name: "job-search",
7
- description: "Search for job listings or apply to a specific job posting. Uses browser automation for ATS sites.",
8
- parameters: z.object({
9
- action: z.enum(["search", "apply"]),
10
- query: z.string().optional().describe("Search query for finding jobs"),
11
- url: z.string().optional().describe("Direct URL to a job posting for apply action"),
12
- location: z.string().optional().describe("Geographic location filter"),
13
- }),
14
- policy: "auto",
15
- async execute(args, context) {
16
- const { action, query, url, location } = args;
17
- const headless = context?.config.browser_headless ?? true;
18
- try {
19
- if (action === "search") {
20
- if (!query)
21
- return fail("query is required for search action");
22
- const p = await getPage(headless);
23
- let searchUrl = `https://www.google.com/search?q=${encodeURIComponent(query + " jobs")}`;
24
- if (location)
25
- searchUrl += `+${encodeURIComponent(location)}`;
26
- searchUrl += "&ibp=htl;jobs";
27
- await p.goto(searchUrl, { waitUntil: "domcontentloaded", timeout: ACTION_TIMEOUT });
28
- const bodyText = await p.innerText("body").catch(() => "");
29
- const truncated = bodyText.length > 6000 ? bodyText.slice(0, 6000) + "..." : bodyText;
30
- return ok({
31
- search_query: query,
32
- location: location ?? null,
33
- search_url: searchUrl,
34
- page_text: truncated,
35
- note: "Raw search results. The LLM will parse and structure these for the user.",
36
- });
37
- }
38
- if (action === "apply") {
39
- if (!url)
40
- return fail("url is required for apply action");
41
- const atsType = detectATS(url);
42
- const selectors = getSelectors(atsType);
43
- const actionPlan = getActionPlan(atsType);
44
- const p = await getPage(headless);
45
- await p.goto(url, { waitUntil: "domcontentloaded", timeout: ACTION_TIMEOUT });
46
- const pageTitle = await p.title();
47
- const detectedFields = [];
48
- for (const [field, selector] of Object.entries(selectors)) {
49
- const exists = await p.$(selector).catch(() => null);
50
- if (exists)
51
- detectedFields.push(field);
52
- }
53
- return ok({
54
- url,
55
- page_title: pageTitle,
56
- ats_type: atsType,
57
- detected_fields: detectedFields,
58
- selectors,
59
- action_plan: actionPlan,
60
- note: "Application page analyzed. Use the browser tool to fill fields, then submit with human approval.",
61
- });
62
- }
63
- return fail(`Unknown action: ${action}`);
64
- }
65
- catch (err) {
66
- return fail(err instanceof Error ? err.message : String(err));
67
- }
68
- },
69
- };
70
- }
71
- function ok(data) {
72
- return { tool_name: "job-search", success: true, data };
73
- }
74
- function fail(error) {
75
- return { tool_name: "job-search", success: false, data: null, error };
76
- }
77
- //# sourceMappingURL=job-search.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"job-search.js","sourceRoot":"","sources":["../../../src/agent/tools/job-search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAA;AAElF,MAAM,UAAU,mBAAmB;IACjC,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,WAAW,EACT,oGAAoG;QACtG,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;YACnB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACtE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YACnF,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;SACvE,CAAC;QACF,MAAM,EAAE,MAAM;QAEd,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAqB;YACvC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;YAC7C,MAAM,QAAQ,GAAG,OAAO,EAAE,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAA;YAEzD,IAAI,CAAC;gBACH,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;oBACxB,IAAI,CAAC,KAAK;wBAAE,OAAO,IAAI,CAAC,qCAAqC,CAAC,CAAA;oBAE9D,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;oBACjC,IAAI,SAAS,GAAG,mCAAmC,kBAAkB,CAAC,KAAK,GAAG,OAAO,CAAC,EAAE,CAAA;oBACxF,IAAI,QAAQ;wBAAE,SAAS,IAAI,IAAI,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAA;oBAC7D,SAAS,IAAI,eAAe,CAAA;oBAE5B,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAA;oBAEnF,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAA;oBAC1D,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAA;oBAErF,OAAO,EAAE,CAAC;wBACR,YAAY,EAAE,KAAK;wBACnB,QAAQ,EAAE,QAAQ,IAAI,IAAI;wBAC1B,UAAU,EAAE,SAAS;wBACrB,SAAS,EAAE,SAAS;wBACpB,IAAI,EAAE,0EAA0E;qBACjF,CAAC,CAAA;gBACJ,CAAC;gBAED,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;oBACvB,IAAI,CAAC,GAAG;wBAAE,OAAO,IAAI,CAAC,kCAAkC,CAAC,CAAA;oBAEzD,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;oBAC9B,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;oBACvC,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;oBACzC,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;oBAEjC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAA;oBAC7E,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;oBAEjC,MAAM,cAAc,GAAa,EAAE,CAAA;oBACnC,KAAK,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;wBAC1D,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;wBACpD,IAAI,MAAM;4BAAE,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACxC,CAAC;oBAED,OAAO,EAAE,CAAC;wBACR,GAAG;wBACH,UAAU,EAAE,SAAS;wBACrB,QAAQ,EAAE,OAAO;wBACjB,eAAe,EAAE,cAAc;wBAC/B,SAAS;wBACT,WAAW,EAAE,UAAU;wBACvB,IAAI,EAAE,kGAAkG;qBACzG,CAAC,CAAA;gBACJ,CAAC;gBAED,OAAO,IAAI,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAA;YAC1C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;YAC/D,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,EAAE,CAAC,IAAa;IACvB,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;AACzD,CAAC;AAED,SAAS,IAAI,CAAC,KAAa;IACzB,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAA;AACvE,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- import type { TaskScheduler } from "../scheduler.js";
3
- export declare function createListTasksTool(scheduler: TaskScheduler): ToolDefinition;
4
- //# sourceMappingURL=list-tasks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-tasks.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/list-tasks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,aAAa,CAAA;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAEpD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,CAqB5E"}
@@ -1,24 +0,0 @@
1
- import { z } from "zod";
2
- export function createListTasksTool(scheduler) {
3
- return {
4
- name: "list-tasks",
5
- description: "List all scheduled tasks with their status, schedule, and next run time.",
6
- parameters: z.object({}),
7
- policy: "auto",
8
- async execute() {
9
- try {
10
- const tasks = await scheduler.listTasks();
11
- return { tool_name: "list-tasks", success: true, data: { tasks } };
12
- }
13
- catch (err) {
14
- return {
15
- tool_name: "list-tasks",
16
- success: false,
17
- data: null,
18
- error: err instanceof Error ? err.message : String(err),
19
- };
20
- }
21
- },
22
- };
23
- }
24
- //# sourceMappingURL=list-tasks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"list-tasks.js","sourceRoot":"","sources":["../../../src/agent/tools/list-tasks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,MAAM,UAAU,mBAAmB,CAAC,SAAwB;IAC1D,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,0EAA0E;QACvF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACxB,MAAM,EAAE,MAAM;QAEd,KAAK,CAAC,OAAO;YACX,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,CAAA;gBACzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAA;YACpE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,SAAS,EAAE,YAAY;oBACvB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAA;YACH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Market data tool — salary ranges, level expectations, and demand signals.
3
- * v0.1.0: Estimated data based on common market ranges.
4
- * TODO: Integrate with levels.fyi API or similar for live data.
5
- */
6
- import type { ToolDefinition } from "../types.js";
7
- export declare function createMarketDataTool(): ToolDefinition;
8
- //# sourceMappingURL=market-data.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market-data.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/market-data.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AAmG1E,wBAAgB,oBAAoB,IAAI,cAAc,CAoCrD"}
@@ -1,133 +0,0 @@
1
- /**
2
- * Market data tool — salary ranges, level expectations, and demand signals.
3
- * v0.1.0: Estimated data based on common market ranges.
4
- * TODO: Integrate with levels.fyi API or similar for live data.
5
- */
6
- import { z } from "zod";
7
- const SALARY_TABLE = {
8
- "software-engineer": {
9
- junior: { p25: 85_000, p50: 105_000, p75: 130_000, currency: "USD" },
10
- mid: { p25: 120_000, p50: 150_000, p75: 180_000, currency: "USD" },
11
- senior: { p25: 160_000, p50: 195_000, p75: 240_000, currency: "USD" },
12
- staff: { p25: 210_000, p50: 260_000, p75: 320_000, currency: "USD" },
13
- principal: { p25: 270_000, p50: 330_000, p75: 400_000, currency: "USD" },
14
- },
15
- "product-manager": {
16
- junior: { p25: 80_000, p50: 100_000, p75: 125_000, currency: "USD" },
17
- mid: { p25: 115_000, p50: 140_000, p75: 170_000, currency: "USD" },
18
- senior: { p25: 150_000, p50: 185_000, p75: 225_000, currency: "USD" },
19
- staff: { p25: 190_000, p50: 240_000, p75: 300_000, currency: "USD" },
20
- principal: { p25: 250_000, p50: 310_000, p75: 380_000, currency: "USD" },
21
- },
22
- "data-scientist": {
23
- junior: { p25: 80_000, p50: 100_000, p75: 125_000, currency: "USD" },
24
- mid: { p25: 115_000, p50: 145_000, p75: 175_000, currency: "USD" },
25
- senior: { p25: 155_000, p50: 190_000, p75: 235_000, currency: "USD" },
26
- staff: { p25: 200_000, p50: 250_000, p75: 310_000, currency: "USD" },
27
- principal: { p25: 260_000, p50: 320_000, p75: 390_000, currency: "USD" },
28
- },
29
- designer: {
30
- junior: { p25: 65_000, p50: 80_000, p75: 100_000, currency: "USD" },
31
- mid: { p25: 95_000, p50: 120_000, p75: 145_000, currency: "USD" },
32
- senior: { p25: 130_000, p50: 160_000, p75: 195_000, currency: "USD" },
33
- staff: { p25: 165_000, p50: 205_000, p75: 255_000, currency: "USD" },
34
- principal: { p25: 210_000, p50: 265_000, p75: 330_000, currency: "USD" },
35
- },
36
- default: {
37
- junior: { p25: 70_000, p50: 90_000, p75: 110_000, currency: "USD" },
38
- mid: { p25: 100_000, p50: 130_000, p75: 160_000, currency: "USD" },
39
- senior: { p25: 140_000, p50: 175_000, p75: 215_000, currency: "USD" },
40
- staff: { p25: 185_000, p50: 230_000, p75: 285_000, currency: "USD" },
41
- principal: { p25: 240_000, p50: 300_000, p75: 370_000, currency: "USD" },
42
- },
43
- };
44
- const LEVEL_MAPPINGS = {
45
- junior: { title_variants: ["Junior", "Associate", "L3", "SDE I", "IC1", "IC2"], typical_yoe: "0-2 years" },
46
- mid: { title_variants: ["Mid-level", "L4", "SDE II", "IC3"], typical_yoe: "2-5 years" },
47
- senior: { title_variants: ["Senior", "L5", "SDE III", "IC4"], typical_yoe: "5-8 years" },
48
- staff: { title_variants: ["Staff", "L6", "Principal SDE", "IC5"], typical_yoe: "8-12 years" },
49
- principal: { title_variants: ["Principal", "L7", "Distinguished", "IC6", "Fellow"], typical_yoe: "12+ years" },
50
- };
51
- const LOCATION_MULTIPLIERS = {
52
- "san francisco": 1.35, "new york": 1.3, seattle: 1.2, boston: 1.2,
53
- "los angeles": 1.15, austin: 1.05, denver: 1.05, chicago: 1.0,
54
- remote: 0.95, london: 0.9, toronto: 0.8, berlin: 0.75,
55
- };
56
- const DEMAND_SIGNALS = {
57
- "software-engineer": "high",
58
- "data-scientist": "high",
59
- "product-manager": "moderate",
60
- designer: "moderate",
61
- default: "moderate",
62
- };
63
- function normalizeRole(role) {
64
- const lower = role.toLowerCase();
65
- if (/software|engineer|developer|swe|frontend|backend|full.?stack/.test(lower))
66
- return "software-engineer";
67
- if (lower.includes("product") && lower.includes("manag"))
68
- return "product-manager";
69
- if (lower.includes("data") && /scien|ml|ai/.test(lower))
70
- return "data-scientist";
71
- if (lower.includes("design"))
72
- return "designer";
73
- return "default";
74
- }
75
- function normalizeLevel(level) {
76
- if (!level)
77
- return "mid";
78
- const lower = level.toLowerCase();
79
- if (lower.includes("junior") || lower.includes("entry") || lower === "l3")
80
- return "junior";
81
- if (lower.includes("staff") || lower === "l6")
82
- return "staff";
83
- if (lower.includes("principal") || lower.includes("distinguished") || lower === "l7")
84
- return "principal";
85
- if (lower.includes("senior") || lower === "l5")
86
- return "senior";
87
- return "mid";
88
- }
89
- function adjustForLocation(range, location) {
90
- const multiplier = location ? (LOCATION_MULTIPLIERS[location.toLowerCase().trim()] ?? 1.0) : 1.0;
91
- if (multiplier === 1.0)
92
- return range;
93
- return {
94
- p25: Math.round(range.p25 * multiplier),
95
- p50: Math.round(range.p50 * multiplier),
96
- p75: Math.round(range.p75 * multiplier),
97
- currency: range.currency,
98
- };
99
- }
100
- export function createMarketDataTool() {
101
- return {
102
- name: "market-data",
103
- description: "Get salary ranges, level expectations, and market demand for specific roles and locations.",
104
- parameters: z.object({
105
- role: z.string().describe("Job role/title to research"),
106
- location: z.string().optional().describe("Geographic location or 'remote'"),
107
- level: z.string().optional().describe("Seniority level (junior, mid, senior, staff, principal)"),
108
- }),
109
- policy: "auto",
110
- async execute(args, _context) {
111
- const { role, location, level } = args;
112
- const normalizedRole = normalizeRole(role);
113
- const normalizedLevel = normalizeLevel(level);
114
- const roleTable = SALARY_TABLE[normalizedRole] ?? SALARY_TABLE["default"];
115
- const baseSalary = roleTable[normalizedLevel] ?? roleTable["mid"];
116
- const levelMapping = LEVEL_MAPPINGS[normalizedLevel] ?? LEVEL_MAPPINGS["mid"];
117
- return {
118
- tool_name: "market-data",
119
- success: true,
120
- data: {
121
- role,
122
- location: location ?? "US national average",
123
- salary_range: adjustForLocation(baseSalary, location),
124
- level_mapping: { level: normalizedLevel, ...levelMapping },
125
- demand_signal: DEMAND_SIGNALS[normalizedRole] ?? "moderate",
126
- source: "estimated",
127
- note: "Estimates based on public market data. Actual compensation varies by company, equity, and total package.",
128
- },
129
- };
130
- },
131
- };
132
- }
133
- //# sourceMappingURL=market-data.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"market-data.js","sourceRoot":"","sources":["../../../src/agent/tools/market-data.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- export declare function createMemoryWriteTool(): ToolDefinition;
3
- //# sourceMappingURL=memory-write.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-write.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/memory-write.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AAO1E,wBAAgB,qBAAqB,IAAI,cAAc,CAyCtD"}
@@ -1,48 +0,0 @@
1
- import * as fs from "node:fs/promises";
2
- import * as path from "node:path";
3
- import { z } from "zod";
4
- import { expandPath } from "../config.js";
5
- const WRITABLE_FILES = {
6
- memory: "MEMORY.md",
7
- heartbeat: "HEARTBEAT.md",
8
- };
9
- export function createMemoryWriteTool() {
10
- return {
11
- name: "memory-write",
12
- description: "Write to Artie's persistent memory (MEMORY.md for facts, HEARTBEAT.md for scheduled actions). Cannot write to SOUL.md, PROFILE.md, or PREFERENCES.md.",
13
- parameters: z.object({
14
- file: z.enum(["memory", "heartbeat"]).describe("Which memory file to write to"),
15
- content: z.string().describe("Content to append to the file"),
16
- }),
17
- policy: "auto",
18
- async execute(args, context) {
19
- const { file, content } = args;
20
- const filename = WRITABLE_FILES[file];
21
- if (!filename) {
22
- return { tool_name: "memory-write", success: false, data: null, error: `Invalid file: ${file}` };
23
- }
24
- const memoryDir = expandPath(context?.config.memory_dir ?? "~/.artemys");
25
- const filePath = path.join(memoryDir, filename);
26
- try {
27
- await fs.mkdir(path.dirname(filePath), { recursive: true });
28
- const timestamp = new Date().toISOString();
29
- const entry = `\n[${timestamp}] ${content}\n`;
30
- await fs.appendFile(filePath, entry, "utf-8");
31
- return {
32
- tool_name: "memory-write",
33
- success: true,
34
- data: { file: filename, appended: content, timestamp },
35
- };
36
- }
37
- catch (err) {
38
- return {
39
- tool_name: "memory-write",
40
- success: false,
41
- data: null,
42
- error: err instanceof Error ? err.message : String(err),
43
- };
44
- }
45
- },
46
- };
47
- }
48
- //# sourceMappingURL=memory-write.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"memory-write.js","sourceRoot":"","sources":["../../../src/agent/tools/memory-write.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAA;AACtC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAGzC,MAAM,cAAc,GAAG;IACrB,MAAM,EAAE,WAAW;IACnB,SAAS,EAAE,cAAc;CACjB,CAAA;AAEV,MAAM,UAAU,qBAAqB;IACnC,OAAO;QACL,IAAI,EAAE,cAAc;QACpB,WAAW,EACT,uJAAuJ;QACzJ,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC;YACnB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YAC/E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;SAC9D,CAAC;QACF,MAAM,EAAE,MAAM;QAEd,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAqB;YACvC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,CAAA;YAC9B,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAmC,CAAC,CAAA;YACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,IAAI,EAAE,EAAE,CAAA;YAClG,CAAC;YAED,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,UAAU,IAAI,YAAY,CAAC,CAAA;YACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;YAE/C,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC3D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;gBAC1C,MAAM,KAAK,GAAG,MAAM,SAAS,KAAK,OAAO,IAAI,CAAA;gBAC7C,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;gBAC7C,OAAO;oBACL,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,IAAI;oBACb,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE;iBACvD,CAAA;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO;oBACL,SAAS,EAAE,cAAc;oBACzB,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACxD,CAAA;YACH,CAAC;QACH,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -1,3 +0,0 @@
1
- import type { ToolDefinition } from "../types.js";
2
- export declare function createResumeTool(): ToolDefinition;
3
- //# sourceMappingURL=resume.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resume.d.ts","sourceRoot":"","sources":["../../../src/agent/tools/resume.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAA2B,MAAM,aAAa,CAAA;AA6B1E,wBAAgB,gBAAgB,IAAI,cAAc,CA8CjD"}