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
@@ -0,0 +1,48 @@
1
+ import { z } from "zod";
2
+ import { AgentCardSchema } from "../../discovery/index.js";
3
+ import { toToolResponse } from "./common.js";
4
+ export function registerDiscoveryTools(server, deps) {
5
+ server.registerTool("discover_agents", {
6
+ description: "Discover agents by role, capabilities, and protocol version",
7
+ inputSchema: {
8
+ role: z.enum(["candidate_agent", "talent_agent"]).optional(),
9
+ capabilities_any: z.array(z.string()).optional(),
10
+ protocol_version: z.string().optional(),
11
+ limit: z.number().int().min(1).max(100).optional(),
12
+ },
13
+ }, async (args) => {
14
+ const role = args.role === "candidate_agent" || args.role === "talent_agent" ? args.role : undefined;
15
+ const query = {
16
+ requester_agent_id: deps.agentCard.agent_id,
17
+ ...(role ? { role } : {}),
18
+ ...(Array.isArray(args.capabilities_any)
19
+ ? { capabilities_any: args.capabilities_any.filter((value) => typeof value === "string") }
20
+ : {}),
21
+ ...(typeof args.protocol_version === "string" ? { protocol_version: args.protocol_version } : {}),
22
+ ...(typeof args.limit === "number" ? { limit: args.limit } : {}),
23
+ };
24
+ const agents = await deps.coffeeShopClient.discover(query);
25
+ return toToolResponse(agents);
26
+ });
27
+ server.registerTool("get_agent_card", {
28
+ description: "Fetch a public agent card by agent ID",
29
+ inputSchema: {
30
+ agent_id: z.string().min(1),
31
+ },
32
+ }, async (args) => {
33
+ const agentId = typeof args.agent_id === "string" ? args.agent_id : "";
34
+ const card = await deps.coffeeShopClient.getCard(agentId);
35
+ return toToolResponse(card);
36
+ });
37
+ server.registerTool("register_agent", {
38
+ description: "Register an agent card with Coffee Shop",
39
+ inputSchema: {
40
+ card: AgentCardSchema,
41
+ },
42
+ }, async (args) => {
43
+ const parsed = z.object({ card: AgentCardSchema }).parse(args);
44
+ const registration = await deps.coffeeShopClient.register(parsed.card);
45
+ return toToolResponse(registration);
46
+ });
47
+ }
48
+ //# sourceMappingURL=discovery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/discovery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { McpToolDeps, ToolServer } from "./common.js";
2
+ export declare function registerMcpTools(server: ToolServer, deps: McpToolDeps): void;
3
+ export type { McpToolDeps } from "./common.js";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAM1D,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAO5E;AAED,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { registerDiscoveryTools } from "./discovery.js";
2
+ import { registerIntroTools } from "./intro.js";
3
+ import { registerProtocolTools } from "./protocol.js";
4
+ import { registerTalentTools } from "./talent.js";
5
+ export function registerMcpTools(server, deps) {
6
+ registerDiscoveryTools(server, deps);
7
+ if (deps.introToolsEnabled) {
8
+ registerIntroTools(server, deps);
9
+ }
10
+ registerProtocolTools(server, deps);
11
+ registerTalentTools(server, deps);
12
+ }
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,MAAM,UAAU,gBAAgB,CAAC,MAAkB,EAAE,IAAiB;IACpE,sBAAsB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACpC,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IAClC,CAAC;IACD,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;IACnC,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AACnC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { McpToolDeps, ToolServer } from "./common.js";
2
+ export declare function registerIntroTools(server: ToolServer, deps: McpToolDeps): void;
3
+ //# sourceMappingURL=intro.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intro.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/intro.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG1D,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAoE9E"}
@@ -0,0 +1,53 @@
1
+ import { z } from "zod";
2
+ import { IntroDecisionSchema } from "../../discovery/index.js";
3
+ import { toToolResponse } from "./common.js";
4
+ export function registerIntroTools(server, deps) {
5
+ server.registerTool("request_intro", {
6
+ description: "Request an intro to another agent",
7
+ inputSchema: {
8
+ target_agent_id: z.string().min(1),
9
+ reason: z.string().min(1),
10
+ capabilities: z.array(z.string()).optional(),
11
+ idempotency_key: z.string().max(128).optional(),
12
+ },
13
+ }, async (args) => {
14
+ const result = await deps.coffeeShopClient.requestIntro({
15
+ requester_agent_id: deps.agentCard.agent_id,
16
+ target_agent_id: typeof args.target_agent_id === "string" ? args.target_agent_id : "",
17
+ reason: typeof args.reason === "string" ? args.reason : "",
18
+ ...(Array.isArray(args.capabilities)
19
+ ? {
20
+ requested_capabilities: args.capabilities.filter((value) => typeof value === "string"),
21
+ }
22
+ : {}),
23
+ }, {
24
+ ...(typeof args.idempotency_key === "string" ? { idempotencyKey: args.idempotency_key } : {}),
25
+ });
26
+ return toToolResponse(result);
27
+ });
28
+ server.registerTool("respond_to_intro", {
29
+ description: "Accept or decline an intro request",
30
+ inputSchema: {
31
+ intro_id: z.string().min(1),
32
+ decision: z.enum(["accept", "decline"]),
33
+ reason: z.string().optional(),
34
+ },
35
+ }, async (args) => {
36
+ const payload = IntroDecisionSchema.parse({
37
+ decision: args.decision,
38
+ decider_agent_id: deps.agentCard.agent_id,
39
+ ...(typeof args.reason === "string" ? { reason: args.reason } : {}),
40
+ });
41
+ const introId = typeof args.intro_id === "string" ? args.intro_id : "";
42
+ const sessionBootstrap = await deps.coffeeShopClient.respondToIntro(introId, payload);
43
+ return toToolResponse(sessionBootstrap);
44
+ });
45
+ server.registerTool("list_pending_intros", {
46
+ description: "List pending intro requests for this agent",
47
+ inputSchema: {},
48
+ }, async () => {
49
+ const intros = await deps.coffeeShopClient.listPendingIntros();
50
+ return toToolResponse(intros);
51
+ });
52
+ }
53
+ //# sourceMappingURL=intro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intro.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/intro.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpToolDeps, ToolServer } from "./common.js";
2
+ export declare function registerProtocolTools(server: ToolServer, deps: McpToolDeps): void;
3
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/protocol.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG1D,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CA0FjF"}
@@ -0,0 +1,73 @@
1
+ import { z } from "zod";
2
+ import { parseProtocolMessageSafe } from "../../protocol/index.js";
3
+ import { JsonMessageSchema, toToolResponse } from "./common.js";
4
+ export function registerProtocolTools(server, deps) {
5
+ server.registerTool("send_protocol_message", {
6
+ description: "Send a signed Artemys protocol message to a remote endpoint",
7
+ inputSchema: {
8
+ endpoint: z.string().url(),
9
+ message: JsonMessageSchema,
10
+ target_agent_id: z.string().min(1).optional(),
11
+ },
12
+ }, async (args) => {
13
+ const input = z
14
+ .object({
15
+ endpoint: z.string().url(),
16
+ message: JsonMessageSchema,
17
+ target_agent_id: z.string().min(1).optional(),
18
+ })
19
+ .parse(args);
20
+ const result = await deps.transportClient.send(input.endpoint, input.message, {
21
+ ...(input.target_agent_id ? { targetAgentId: input.target_agent_id } : {}),
22
+ });
23
+ if (result.ok) {
24
+ try {
25
+ deps.tracker.recordMessage(input.message);
26
+ }
27
+ catch {
28
+ // Ignore tracker failures for tool delivery response.
29
+ }
30
+ }
31
+ return toToolResponse(result);
32
+ });
33
+ server.registerTool("get_conversation_state", {
34
+ description: "Get tracked protocol conversation state",
35
+ inputSchema: {
36
+ conversation_id: z.string().min(1),
37
+ },
38
+ }, async (args) => {
39
+ const conversationId = typeof args.conversation_id === "string" ? args.conversation_id : "";
40
+ const state = deps.tracker.getState(conversationId);
41
+ const record = deps.tracker.getConversation(conversationId);
42
+ return toToolResponse({
43
+ state,
44
+ message_count: record?.message_count ?? 0,
45
+ });
46
+ });
47
+ server.registerTool("validate_message", {
48
+ description: "Validate a protocol message against Artemys schemas",
49
+ inputSchema: {
50
+ message: JsonMessageSchema,
51
+ },
52
+ }, async (args) => {
53
+ const parsed = parseProtocolMessageSafe(args.message);
54
+ if (parsed.ok) {
55
+ return toToolResponse({ valid: true });
56
+ }
57
+ return toToolResponse({
58
+ valid: false,
59
+ errors: {
60
+ code: parsed.error.code,
61
+ message: parsed.error.message,
62
+ details: parsed.error.details,
63
+ },
64
+ });
65
+ });
66
+ server.registerTool("list_conversations", {
67
+ description: "List active tracked conversations",
68
+ inputSchema: {},
69
+ }, async () => {
70
+ return toToolResponse(deps.tracker.listConversations());
71
+ });
72
+ }
73
+ //# sourceMappingURL=protocol.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { McpToolDeps, ToolServer } from "./common.js";
2
+ export declare function registerTalentTools(server: ToolServer, deps: McpToolDeps): void;
3
+ //# sourceMappingURL=talent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"talent.d.ts","sourceRoot":"","sources":["../../../src/mcp-server/tools/talent.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAiD1D,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAmO/E"}
@@ -0,0 +1,226 @@
1
+ import { randomUUID } from "node:crypto";
2
+ import { z } from "zod";
3
+ import { ApplicationIntentSchema, CandidateSnapshotSchema, HandshakeInitiateSchema, PROTOCOL_VERSION, } from "../../protocol/index.js";
4
+ import { toToolResponse } from "./common.js";
5
+ const SearchOpportunitiesInputSchema = z.object({
6
+ role_keywords: z.array(z.string().min(1).max(128)).max(20).optional(),
7
+ location: z.string().min(1).max(256).optional(),
8
+ remote_ok: z.boolean().optional(),
9
+ seniority: z.string().min(1).max(64).optional(),
10
+ limit: z.number().int().min(1).max(100).optional(),
11
+ });
12
+ const ExpressInterestInputSchema = z.object({
13
+ target_agent_id: z.string().min(1),
14
+ target_endpoint: z.string().url(),
15
+ job_posting_ref: z.string().min(1).max(256),
16
+ match_reasoning: z.string().min(1).max(4000).optional(),
17
+ });
18
+ const CheckConversationsInputSchema = z.object({
19
+ status_filter: z.string().min(1).optional(),
20
+ });
21
+ const UpdateProfileInputSchema = CandidateSnapshotSchema.extend({
22
+ sync_agent_card: z.boolean().optional(),
23
+ });
24
+ function normalizeText(value) {
25
+ return value.trim().toLowerCase();
26
+ }
27
+ function mapAgentRole(cardRole) {
28
+ return cardRole === "talent_agent" ? "sourcer" : "candidate_representative";
29
+ }
30
+ function mapRepresentingType(cardRole) {
31
+ return cardRole === "talent_agent" ? "employer" : "individual";
32
+ }
33
+ function inferCounterpartyAgentId(messages, selfAgentId) {
34
+ for (let index = messages.length - 1; index >= 0; index -= 1) {
35
+ const senderAgentId = messages[index]?.sender_agent_id;
36
+ if (senderAgentId && senderAgentId !== selfAgentId) {
37
+ return senderAgentId;
38
+ }
39
+ }
40
+ return null;
41
+ }
42
+ export function registerTalentTools(server, deps) {
43
+ server.registerTool("search_opportunities", {
44
+ description: "Discover talent agents and annotate opportunity capabilities",
45
+ inputSchema: {
46
+ role_keywords: z.array(z.string().min(1)).optional(),
47
+ location: z.string().min(1).optional(),
48
+ remote_ok: z.boolean().optional(),
49
+ seniority: z.string().min(1).optional(),
50
+ limit: z.number().int().min(1).max(100).optional(),
51
+ },
52
+ }, async (args) => {
53
+ const input = SearchOpportunitiesInputSchema.parse(args);
54
+ const roleKeywords = (input.role_keywords ?? []).map(normalizeText).filter(Boolean);
55
+ const locationFilter = input.location ? normalizeText(input.location) : undefined;
56
+ const seniorityFilter = input.seniority ? normalizeText(input.seniority) : undefined;
57
+ const agents = await deps.coffeeShopClient.discover({
58
+ requester_agent_id: deps.agentCard.agent_id,
59
+ role: "talent_agent",
60
+ ...(typeof input.limit === "number" ? { limit: input.limit } : {}),
61
+ });
62
+ const opportunities = agents.map((agent) => {
63
+ const discoverableOpportunities = agent.capabilities.map((capability) => {
64
+ const capabilityText = normalizeText(capability);
65
+ const matchedRoleKeywords = roleKeywords.filter((keyword) => capabilityText.includes(keyword));
66
+ const locationMatch = locationFilter ? capabilityText.includes(locationFilter) : true;
67
+ const seniorityMatch = seniorityFilter ? capabilityText.includes(seniorityFilter) : true;
68
+ const remoteMatch = input.remote_ok === true ? capabilityText.includes("remote") : true;
69
+ return {
70
+ capability,
71
+ matched_role_keywords: matchedRoleKeywords,
72
+ matches_filters: locationMatch && seniorityMatch && remoteMatch,
73
+ };
74
+ });
75
+ const matchesAnyCapability = discoverableOpportunities.some((entry) => {
76
+ const keywordsMatch = roleKeywords.length === 0 || entry.matched_role_keywords.length > 0;
77
+ return keywordsMatch && entry.matches_filters;
78
+ });
79
+ return {
80
+ agent_card: agent,
81
+ discoverable_opportunities: discoverableOpportunities,
82
+ matches_filters: matchesAnyCapability,
83
+ };
84
+ });
85
+ const filtered = roleKeywords.length === 0 && !locationFilter && !seniorityFilter && input.remote_ok !== true
86
+ ? opportunities
87
+ : opportunities.filter((entry) => entry.matches_filters);
88
+ return toToolResponse({
89
+ filters: input,
90
+ total: filtered.length,
91
+ opportunities: filtered,
92
+ });
93
+ });
94
+ server.registerTool("express_interest", {
95
+ description: "Send handshake initiate message with application intent data",
96
+ inputSchema: {
97
+ target_agent_id: z.string().min(1),
98
+ target_endpoint: z.string().url(),
99
+ job_posting_ref: z.string().min(1),
100
+ match_reasoning: z.string().min(1).max(4000).optional(),
101
+ },
102
+ }, async (args) => {
103
+ const input = ExpressInterestInputSchema.parse(args);
104
+ const storedProfile = deps.profileStore?.getProfile();
105
+ const candidateSnapshot = CandidateSnapshotSchema.parse(storedProfile ?? {
106
+ display_name: deps.agentCard.display_name,
107
+ });
108
+ const applicationIntent = ApplicationIntentSchema.parse({
109
+ job_posting_ref: input.job_posting_ref,
110
+ ...(input.match_reasoning ? { match_reasoning: input.match_reasoning } : {}),
111
+ candidate_snapshot: candidateSnapshot,
112
+ });
113
+ const seniority = typeof candidateSnapshot.experience_years === "number" && candidateSnapshot.experience_years >= 8
114
+ ? "senior"
115
+ : "mid";
116
+ const message = HandshakeInitiateSchema.parse({
117
+ protocol_version: PROTOCOL_VERSION,
118
+ type: "artemys.handshake.initiate",
119
+ timestamp: new Date().toISOString(),
120
+ message_id: `msg-${randomUUID()}`,
121
+ conversation_id: `conv-${randomUUID()}`,
122
+ sender_agent_id: deps.agentCard.agent_id,
123
+ agent: {
124
+ id: deps.agentCard.agent_id,
125
+ role: mapAgentRole(deps.agentCard.role),
126
+ representing: {
127
+ type: mapRepresentingType(deps.agentCard.role),
128
+ name: deps.agentCard.display_name,
129
+ identity: deps.agentCard.agent_id,
130
+ verified: true,
131
+ },
132
+ },
133
+ intent: {
134
+ type: "role_inquiry",
135
+ signal: {
136
+ domain: candidateSnapshot.preferred_roles?.[0] ?? "general",
137
+ seniority,
138
+ location_flexibility: candidateSnapshot.remote_preference ?? "remote_ok",
139
+ application_intent: applicationIntent,
140
+ },
141
+ },
142
+ });
143
+ const transportResult = await deps.transportClient.send(input.target_endpoint, message, {
144
+ targetAgentId: input.target_agent_id,
145
+ });
146
+ if (transportResult.ok) {
147
+ try {
148
+ deps.tracker.recordMessage(message);
149
+ }
150
+ catch {
151
+ // Ignore tracker failures for tool delivery response.
152
+ }
153
+ }
154
+ return toToolResponse({
155
+ conversation_id: message.conversation_id,
156
+ message_id: message.message_id,
157
+ transport: transportResult,
158
+ });
159
+ });
160
+ server.registerTool("check_conversations", {
161
+ description: "List tracked conversations with optional state filter",
162
+ inputSchema: {
163
+ status_filter: z.string().min(1).optional(),
164
+ },
165
+ }, async (args) => {
166
+ const input = CheckConversationsInputSchema.parse(args);
167
+ const statusFilter = input.status_filter ? input.status_filter.trim().toUpperCase() : null;
168
+ const conversations = deps.tracker
169
+ .listConversations()
170
+ .filter((summary) => !statusFilter || summary.state === statusFilter)
171
+ .map((summary) => {
172
+ const record = deps.tracker.getConversation(summary.conversation_id);
173
+ const lastMessage = record && record.messages.length > 0 ? record.messages[record.messages.length - 1] : null;
174
+ return {
175
+ conversation_id: summary.conversation_id,
176
+ state: summary.state,
177
+ counterparty_agent_id: inferCounterpartyAgentId(record?.messages ?? [], deps.agentCard.agent_id),
178
+ message_count: summary.message_count,
179
+ last_activity: lastMessage?.timestamp ?? null,
180
+ };
181
+ });
182
+ return toToolResponse({
183
+ status_filter: statusFilter,
184
+ total: conversations.length,
185
+ conversations,
186
+ });
187
+ });
188
+ server.registerTool("update_profile", {
189
+ description: "Validate and store candidate profile snapshot",
190
+ inputSchema: {
191
+ ...CandidateSnapshotSchema.shape,
192
+ sync_agent_card: z.boolean().optional(),
193
+ },
194
+ }, async (args) => {
195
+ const input = UpdateProfileInputSchema.parse(args);
196
+ const { sync_agent_card = false, ...snapshotInput } = input;
197
+ const snapshot = CandidateSnapshotSchema.parse(snapshotInput);
198
+ if (deps.profileStore) {
199
+ deps.profileStore.setProfile(snapshot);
200
+ }
201
+ const data = {
202
+ stored: Boolean(deps.profileStore),
203
+ profile: snapshot,
204
+ };
205
+ if (!deps.profileStore) {
206
+ data.warning = "ProfileStore is not configured for this MCP server instance";
207
+ }
208
+ if (sync_agent_card) {
209
+ try {
210
+ const nextCapabilities = Array.from(new Set(["candidate_profile", ...deps.agentCard.capabilities]));
211
+ const updatedCard = await deps.coffeeShopClient.updateCard({
212
+ capabilities: nextCapabilities,
213
+ });
214
+ deps.agentCard.capabilities = updatedCard.capabilities;
215
+ data.agent_card_synced = true;
216
+ data.capabilities = updatedCard.capabilities;
217
+ }
218
+ catch (error) {
219
+ data.agent_card_synced = false;
220
+ data.sync_error = error instanceof Error ? error.message : "Unable to sync agent card";
221
+ }
222
+ }
223
+ return toToolResponse(data);
224
+ });
225
+ }
226
+ //# sourceMappingURL=talent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"talent.js","sourceRoot":"","sources":["../../../src/mcp-server/tools/talent.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { ARTEMYS_TALENT_SKILL_ID, ArtemysTalentSkillManifest, type OpenClawSkillManifest, } from "./skill.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/openclaw/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,YAAY,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { ARTEMYS_TALENT_SKILL_ID, ArtemysTalentSkillManifest, } from "./skill.js";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/openclaw/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,GAE3B,MAAM,YAAY,CAAA"}
@@ -0,0 +1,13 @@
1
+ export declare const ARTEMYS_TALENT_SKILL_ID = "artemys-talent";
2
+ export interface OpenClawSkillManifest {
3
+ id: string;
4
+ name: string;
5
+ description: string;
6
+ mcp_server: {
7
+ package: string;
8
+ subpath: string;
9
+ };
10
+ commands: Record<string, string[]>;
11
+ }
12
+ export declare const ArtemysTalentSkillManifest: OpenClawSkillManifest;
13
+ //# sourceMappingURL=skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../src/openclaw/skill.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,mBAAmB,CAAA;AAEvD,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE;QACV,OAAO,EAAE,MAAM,CAAA;QACf,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;CACnC;AAED,eAAO,MAAM,0BAA0B,EAAE,qBAexC,CAAA"}
@@ -0,0 +1,18 @@
1
+ export const ARTEMYS_TALENT_SKILL_ID = "artemys-talent";
2
+ export const ArtemysTalentSkillManifest = {
3
+ id: ARTEMYS_TALENT_SKILL_ID,
4
+ name: "Artemys Talent",
5
+ description: "OpenClaw skill manifest for the Artemys talent workflow.",
6
+ mcp_server: {
7
+ package: "artemys",
8
+ subpath: "mcp-server",
9
+ },
10
+ commands: {
11
+ "talent start": ["register_agent", "update_profile"],
12
+ "talent search": ["search_opportunities"],
13
+ "talent apply": ["express_interest"],
14
+ "talent status": ["check_conversations"],
15
+ "talent profile": ["update_profile"],
16
+ },
17
+ };
18
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../src/openclaw/skill.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,gBAAgB,CAAA;AAavD,MAAM,CAAC,MAAM,0BAA0B,GAA0B;IAC/D,EAAE,EAAE,uBAAuB;IAC3B,IAAI,EAAE,gBAAgB;IACtB,WAAW,EAAE,0DAA0D;IACvE,UAAU,EAAE;QACV,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,YAAY;KACtB;IACD,QAAQ,EAAE;QACR,cAAc,EAAE,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;QACpD,eAAe,EAAE,CAAC,sBAAsB,CAAC;QACzC,cAAc,EAAE,CAAC,kBAAkB,CAAC;QACpC,eAAe,EAAE,CAAC,qBAAqB,CAAC;QACxC,gBAAgB,EAAE,CAAC,gBAAgB,CAAC;KACrC;CACF,CAAA"}