siclaw 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 (460) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +268 -0
  3. package/dist/agentbox/gateway-client.d.ts +41 -0
  4. package/dist/agentbox/gateway-client.js +108 -0
  5. package/dist/agentbox/gateway-client.js.map +1 -0
  6. package/dist/agentbox/http-server.d.ts +12 -0
  7. package/dist/agentbox/http-server.js +700 -0
  8. package/dist/agentbox/http-server.js.map +1 -0
  9. package/dist/agentbox/mcp-sync.d.ts +6 -0
  10. package/dist/agentbox/mcp-sync.js +26 -0
  11. package/dist/agentbox/mcp-sync.js.map +1 -0
  12. package/dist/agentbox/resource-handlers.d.ts +40 -0
  13. package/dist/agentbox/resource-handlers.js +116 -0
  14. package/dist/agentbox/resource-handlers.js.map +1 -0
  15. package/dist/agentbox/resource-sync.d.ts +28 -0
  16. package/dist/agentbox/resource-sync.js +74 -0
  17. package/dist/agentbox/resource-sync.js.map +1 -0
  18. package/dist/agentbox/session.d.ts +145 -0
  19. package/dist/agentbox/session.js +444 -0
  20. package/dist/agentbox/session.js.map +1 -0
  21. package/dist/agentbox-main.d.ts +7 -0
  22. package/dist/agentbox-main.js +90 -0
  23. package/dist/agentbox-main.js.map +1 -0
  24. package/dist/cli-main.d.ts +1 -0
  25. package/dist/cli-main.js +187 -0
  26. package/dist/cli-main.js.map +1 -0
  27. package/dist/cli-setup.d.ts +17 -0
  28. package/dist/cli-setup.js +247 -0
  29. package/dist/cli-setup.js.map +1 -0
  30. package/dist/core/agent-factory.d.ts +52 -0
  31. package/dist/core/agent-factory.js +547 -0
  32. package/dist/core/agent-factory.js.map +1 -0
  33. package/dist/core/brain-session.d.ts +67 -0
  34. package/dist/core/brain-session.js +15 -0
  35. package/dist/core/brain-session.js.map +1 -0
  36. package/dist/core/brains/claude-sdk-brain.d.ts +76 -0
  37. package/dist/core/brains/claude-sdk-brain.js +403 -0
  38. package/dist/core/brains/claude-sdk-brain.js.map +1 -0
  39. package/dist/core/brains/pi-agent-brain.d.ts +28 -0
  40. package/dist/core/brains/pi-agent-brain.js +84 -0
  41. package/dist/core/brains/pi-agent-brain.js.map +1 -0
  42. package/dist/core/config.d.ts +109 -0
  43. package/dist/core/config.js +294 -0
  44. package/dist/core/config.js.map +1 -0
  45. package/dist/core/extensions/context-pruning.d.ts +38 -0
  46. package/dist/core/extensions/context-pruning.js +162 -0
  47. package/dist/core/extensions/context-pruning.js.map +1 -0
  48. package/dist/core/extensions/deep-investigation.d.ts +2 -0
  49. package/dist/core/extensions/deep-investigation.js +541 -0
  50. package/dist/core/extensions/deep-investigation.js.map +1 -0
  51. package/dist/core/extensions/memory-flush.d.ts +20 -0
  52. package/dist/core/extensions/memory-flush.js +120 -0
  53. package/dist/core/extensions/memory-flush.js.map +1 -0
  54. package/dist/core/llm-proxy.d.ts +37 -0
  55. package/dist/core/llm-proxy.js +578 -0
  56. package/dist/core/llm-proxy.js.map +1 -0
  57. package/dist/core/mcp-client.d.ts +80 -0
  58. package/dist/core/mcp-client.js +285 -0
  59. package/dist/core/mcp-client.js.map +1 -0
  60. package/dist/core/prompt.d.ts +1 -0
  61. package/dist/core/prompt.js +64 -0
  62. package/dist/core/prompt.js.map +1 -0
  63. package/dist/core/tool-adapter.d.ts +45 -0
  64. package/dist/core/tool-adapter.js +154 -0
  65. package/dist/core/tool-adapter.js.map +1 -0
  66. package/dist/cron/cron-api.d.ts +9 -0
  67. package/dist/cron/cron-api.js +94 -0
  68. package/dist/cron/cron-api.js.map +1 -0
  69. package/dist/cron/cron-coordinator.d.ts +29 -0
  70. package/dist/cron/cron-coordinator.js +150 -0
  71. package/dist/cron/cron-coordinator.js.map +1 -0
  72. package/dist/cron/cron-executor.d.ts +15 -0
  73. package/dist/cron/cron-executor.js +90 -0
  74. package/dist/cron/cron-executor.js.map +1 -0
  75. package/dist/cron/cron-matcher.d.ts +19 -0
  76. package/dist/cron/cron-matcher.js +114 -0
  77. package/dist/cron/cron-matcher.js.map +1 -0
  78. package/dist/cron/cron-scheduler.d.ts +42 -0
  79. package/dist/cron/cron-scheduler.js +91 -0
  80. package/dist/cron/cron-scheduler.js.map +1 -0
  81. package/dist/cron/gateway-client.d.ts +32 -0
  82. package/dist/cron/gateway-client.js +91 -0
  83. package/dist/cron/gateway-client.js.map +1 -0
  84. package/dist/cron-main.d.ts +10 -0
  85. package/dist/cron-main.js +75 -0
  86. package/dist/cron-main.js.map +1 -0
  87. package/dist/gateway/agentbox/client.d.ts +187 -0
  88. package/dist/gateway/agentbox/client.js +314 -0
  89. package/dist/gateway/agentbox/client.js.map +1 -0
  90. package/dist/gateway/agentbox/index.d.ts +10 -0
  91. package/dist/gateway/agentbox/index.js +11 -0
  92. package/dist/gateway/agentbox/index.js.map +1 -0
  93. package/dist/gateway/agentbox/k8s-spawner.d.ts +70 -0
  94. package/dist/gateway/agentbox/k8s-spawner.js +466 -0
  95. package/dist/gateway/agentbox/k8s-spawner.js.map +1 -0
  96. package/dist/gateway/agentbox/local-spawner.d.ts +63 -0
  97. package/dist/gateway/agentbox/local-spawner.js +234 -0
  98. package/dist/gateway/agentbox/local-spawner.js.map +1 -0
  99. package/dist/gateway/agentbox/manager.d.ts +121 -0
  100. package/dist/gateway/agentbox/manager.js +325 -0
  101. package/dist/gateway/agentbox/manager.js.map +1 -0
  102. package/dist/gateway/agentbox/process-spawner.d.ts +21 -0
  103. package/dist/gateway/agentbox/process-spawner.js +168 -0
  104. package/dist/gateway/agentbox/process-spawner.js.map +1 -0
  105. package/dist/gateway/agentbox/spawner.d.ts +33 -0
  106. package/dist/gateway/agentbox/spawner.js +10 -0
  107. package/dist/gateway/agentbox/spawner.js.map +1 -0
  108. package/dist/gateway/agentbox/types.d.ts +39 -0
  109. package/dist/gateway/agentbox/types.js +5 -0
  110. package/dist/gateway/agentbox/types.js.map +1 -0
  111. package/dist/gateway/auth/bind-code-store.d.ts +31 -0
  112. package/dist/gateway/auth/bind-code-store.js +73 -0
  113. package/dist/gateway/auth/bind-code-store.js.map +1 -0
  114. package/dist/gateway/auth/index.d.ts +9 -0
  115. package/dist/gateway/auth/index.js +10 -0
  116. package/dist/gateway/auth/index.js.map +1 -0
  117. package/dist/gateway/auth/jwt.d.ts +23 -0
  118. package/dist/gateway/auth/jwt.js +82 -0
  119. package/dist/gateway/auth/jwt.js.map +1 -0
  120. package/dist/gateway/auth/login.d.ts +26 -0
  121. package/dist/gateway/auth/login.js +74 -0
  122. package/dist/gateway/auth/login.js.map +1 -0
  123. package/dist/gateway/auth/middleware.d.ts +23 -0
  124. package/dist/gateway/auth/middleware.js +67 -0
  125. package/dist/gateway/auth/middleware.js.map +1 -0
  126. package/dist/gateway/auth/oauth2.d.ts +57 -0
  127. package/dist/gateway/auth/oauth2.js +113 -0
  128. package/dist/gateway/auth/oauth2.js.map +1 -0
  129. package/dist/gateway/auth/user-store.d.ts +95 -0
  130. package/dist/gateway/auth/user-store.js +291 -0
  131. package/dist/gateway/auth/user-store.js.map +1 -0
  132. package/dist/gateway/channels/channel-manager.d.ts +42 -0
  133. package/dist/gateway/channels/channel-manager.js +156 -0
  134. package/dist/gateway/channels/channel-manager.js.map +1 -0
  135. package/dist/gateway/channels/channel-rpc.d.ts +9 -0
  136. package/dist/gateway/channels/channel-rpc.js +104 -0
  137. package/dist/gateway/channels/channel-rpc.js.map +1 -0
  138. package/dist/gateway/channels/channel-store.d.ts +32 -0
  139. package/dist/gateway/channels/channel-store.js +114 -0
  140. package/dist/gateway/channels/channel-store.js.map +1 -0
  141. package/dist/gateway/channels/discord.d.ts +5 -0
  142. package/dist/gateway/channels/discord.js +177 -0
  143. package/dist/gateway/channels/discord.js.map +1 -0
  144. package/dist/gateway/channels/lark-format.d.ts +41 -0
  145. package/dist/gateway/channels/lark-format.js +620 -0
  146. package/dist/gateway/channels/lark-format.js.map +1 -0
  147. package/dist/gateway/channels/lark.d.ts +5 -0
  148. package/dist/gateway/channels/lark.js +1000 -0
  149. package/dist/gateway/channels/lark.js.map +1 -0
  150. package/dist/gateway/channels/slack.d.ts +5 -0
  151. package/dist/gateway/channels/slack.js +170 -0
  152. package/dist/gateway/channels/slack.js.map +1 -0
  153. package/dist/gateway/channels/telegram.d.ts +5 -0
  154. package/dist/gateway/channels/telegram.js +173 -0
  155. package/dist/gateway/channels/telegram.js.map +1 -0
  156. package/dist/gateway/channels/utils.d.ts +34 -0
  157. package/dist/gateway/channels/utils.js +115 -0
  158. package/dist/gateway/channels/utils.js.map +1 -0
  159. package/dist/gateway/config.d.ts +14 -0
  160. package/dist/gateway/config.js +12 -0
  161. package/dist/gateway/config.js.map +1 -0
  162. package/dist/gateway/cron/notify.d.ts +14 -0
  163. package/dist/gateway/cron/notify.js +40 -0
  164. package/dist/gateway/cron/notify.js.map +1 -0
  165. package/dist/gateway/db/dialect-helpers.d.ts +8 -0
  166. package/dist/gateway/db/dialect-helpers.js +26 -0
  167. package/dist/gateway/db/dialect-helpers.js.map +1 -0
  168. package/dist/gateway/db/index.d.ts +20 -0
  169. package/dist/gateway/db/index.js +140 -0
  170. package/dist/gateway/db/index.js.map +1 -0
  171. package/dist/gateway/db/init-schema.d.ts +8 -0
  172. package/dist/gateway/db/init-schema.js +385 -0
  173. package/dist/gateway/db/init-schema.js.map +1 -0
  174. package/dist/gateway/db/migrate-sqlite.d.ts +8 -0
  175. package/dist/gateway/db/migrate-sqlite.js +335 -0
  176. package/dist/gateway/db/migrate-sqlite.js.map +1 -0
  177. package/dist/gateway/db/repositories/chat-repo.d.ts +64 -0
  178. package/dist/gateway/db/repositories/chat-repo.js +115 -0
  179. package/dist/gateway/db/repositories/chat-repo.js.map +1 -0
  180. package/dist/gateway/db/repositories/config-repo.d.ts +164 -0
  181. package/dist/gateway/db/repositories/config-repo.js +267 -0
  182. package/dist/gateway/db/repositories/config-repo.js.map +1 -0
  183. package/dist/gateway/db/repositories/credential-repo.d.ts +51 -0
  184. package/dist/gateway/db/repositories/credential-repo.js +70 -0
  185. package/dist/gateway/db/repositories/credential-repo.js.map +1 -0
  186. package/dist/gateway/db/repositories/env-repo.d.ts +37 -0
  187. package/dist/gateway/db/repositories/env-repo.js +74 -0
  188. package/dist/gateway/db/repositories/env-repo.js.map +1 -0
  189. package/dist/gateway/db/repositories/mcp-server-repo.d.ts +97 -0
  190. package/dist/gateway/db/repositories/mcp-server-repo.js +83 -0
  191. package/dist/gateway/db/repositories/mcp-server-repo.js.map +1 -0
  192. package/dist/gateway/db/repositories/model-config-repo.d.ts +141 -0
  193. package/dist/gateway/db/repositories/model-config-repo.js +439 -0
  194. package/dist/gateway/db/repositories/model-config-repo.js.map +1 -0
  195. package/dist/gateway/db/repositories/notification-repo.d.ts +50 -0
  196. package/dist/gateway/db/repositories/notification-repo.js +105 -0
  197. package/dist/gateway/db/repositories/notification-repo.js.map +1 -0
  198. package/dist/gateway/db/repositories/permission-repo.d.ts +28 -0
  199. package/dist/gateway/db/repositories/permission-repo.js +74 -0
  200. package/dist/gateway/db/repositories/permission-repo.js.map +1 -0
  201. package/dist/gateway/db/repositories/skill-content-repo.d.ts +29 -0
  202. package/dist/gateway/db/repositories/skill-content-repo.js +90 -0
  203. package/dist/gateway/db/repositories/skill-content-repo.js.map +1 -0
  204. package/dist/gateway/db/repositories/skill-repo.d.ts +170 -0
  205. package/dist/gateway/db/repositories/skill-repo.js +185 -0
  206. package/dist/gateway/db/repositories/skill-repo.js.map +1 -0
  207. package/dist/gateway/db/repositories/skill-review-repo.d.ts +44 -0
  208. package/dist/gateway/db/repositories/skill-review-repo.js +44 -0
  209. package/dist/gateway/db/repositories/skill-review-repo.js.map +1 -0
  210. package/dist/gateway/db/repositories/skill-version-repo.d.ts +30 -0
  211. package/dist/gateway/db/repositories/skill-version-repo.js +56 -0
  212. package/dist/gateway/db/repositories/skill-version-repo.js.map +1 -0
  213. package/dist/gateway/db/repositories/system-config-repo.d.ts +21 -0
  214. package/dist/gateway/db/repositories/system-config-repo.js +86 -0
  215. package/dist/gateway/db/repositories/system-config-repo.js.map +1 -0
  216. package/dist/gateway/db/repositories/user-env-config-repo.d.ts +32 -0
  217. package/dist/gateway/db/repositories/user-env-config-repo.js +79 -0
  218. package/dist/gateway/db/repositories/user-env-config-repo.js.map +1 -0
  219. package/dist/gateway/db/repositories/user-repo.d.ts +59 -0
  220. package/dist/gateway/db/repositories/user-repo.js +83 -0
  221. package/dist/gateway/db/repositories/user-repo.js.map +1 -0
  222. package/dist/gateway/db/repositories/vote-repo.d.ts +26 -0
  223. package/dist/gateway/db/repositories/vote-repo.js +97 -0
  224. package/dist/gateway/db/repositories/vote-repo.js.map +1 -0
  225. package/dist/gateway/db/repositories/workspace-repo.d.ts +27 -0
  226. package/dist/gateway/db/repositories/workspace-repo.js +145 -0
  227. package/dist/gateway/db/repositories/workspace-repo.js.map +1 -0
  228. package/dist/gateway/db/schema-mysql.d.ts +3897 -0
  229. package/dist/gateway/db/schema-mysql.js +354 -0
  230. package/dist/gateway/db/schema-mysql.js.map +1 -0
  231. package/dist/gateway/db/schema-sqlite.d.ts +4147 -0
  232. package/dist/gateway/db/schema-sqlite.js +345 -0
  233. package/dist/gateway/db/schema-sqlite.js.map +1 -0
  234. package/dist/gateway/db/schema.d.ts +3869 -0
  235. package/dist/gateway/db/schema.js +16 -0
  236. package/dist/gateway/db/schema.js.map +1 -0
  237. package/dist/gateway/mcp-config-builder.d.ts +8 -0
  238. package/dist/gateway/mcp-config-builder.js +39 -0
  239. package/dist/gateway/mcp-config-builder.js.map +1 -0
  240. package/dist/gateway/output-redactor.d.ts +27 -0
  241. package/dist/gateway/output-redactor.js +101 -0
  242. package/dist/gateway/output-redactor.js.map +1 -0
  243. package/dist/gateway/plugins/api.d.ts +181 -0
  244. package/dist/gateway/plugins/api.js +28 -0
  245. package/dist/gateway/plugins/api.js.map +1 -0
  246. package/dist/gateway/plugins/channel-bridge.d.ts +72 -0
  247. package/dist/gateway/plugins/channel-bridge.js +586 -0
  248. package/dist/gateway/plugins/channel-bridge.js.map +1 -0
  249. package/dist/gateway/plugins/loader.d.ts +2 -0
  250. package/dist/gateway/plugins/loader.js +83 -0
  251. package/dist/gateway/plugins/loader.js.map +1 -0
  252. package/dist/gateway/plugins/runtime.d.ts +25 -0
  253. package/dist/gateway/plugins/runtime.js +64 -0
  254. package/dist/gateway/plugins/runtime.js.map +1 -0
  255. package/dist/gateway/resource-notifier.d.ts +36 -0
  256. package/dist/gateway/resource-notifier.js +123 -0
  257. package/dist/gateway/resource-notifier.js.map +1 -0
  258. package/dist/gateway/rpc-methods.d.ts +34 -0
  259. package/dist/gateway/rpc-methods.js +3198 -0
  260. package/dist/gateway/rpc-methods.js.map +1 -0
  261. package/dist/gateway/security/cert-manager.d.ts +77 -0
  262. package/dist/gateway/security/cert-manager.js +280 -0
  263. package/dist/gateway/security/cert-manager.js.map +1 -0
  264. package/dist/gateway/security/mtls-middleware.d.ts +33 -0
  265. package/dist/gateway/security/mtls-middleware.js +89 -0
  266. package/dist/gateway/security/mtls-middleware.js.map +1 -0
  267. package/dist/gateway/server.d.ts +54 -0
  268. package/dist/gateway/server.js +1146 -0
  269. package/dist/gateway/server.js.map +1 -0
  270. package/dist/gateway/skill-labels.d.ts +16 -0
  271. package/dist/gateway/skill-labels.js +79 -0
  272. package/dist/gateway/skill-labels.js.map +1 -0
  273. package/dist/gateway/skills/file-writer.d.ts +75 -0
  274. package/dist/gateway/skills/file-writer.js +320 -0
  275. package/dist/gateway/skills/file-writer.js.map +1 -0
  276. package/dist/gateway/skills/script-evaluator.d.ts +42 -0
  277. package/dist/gateway/skills/script-evaluator.js +204 -0
  278. package/dist/gateway/skills/script-evaluator.js.map +1 -0
  279. package/dist/gateway/skills/skill-bundle.d.ts +34 -0
  280. package/dist/gateway/skills/skill-bundle.js +83 -0
  281. package/dist/gateway/skills/skill-bundle.js.map +1 -0
  282. package/dist/gateway/web/dist/assets/index-BF6CtvnV.css +1 -0
  283. package/dist/gateway/web/dist/assets/index-Dumzqsr-.js +680 -0
  284. package/dist/gateway/web/dist/assets/index-n4IMHP1Q.js +675 -0
  285. package/dist/gateway/web/dist/index.html +14 -0
  286. package/dist/gateway/web/dist/noise.png +1 -0
  287. package/dist/gateway/web/dist/robots.txt +2 -0
  288. package/dist/gateway/web/dist/vite.svg +1 -0
  289. package/dist/gateway/ws-protocol.d.ts +68 -0
  290. package/dist/gateway/ws-protocol.js +106 -0
  291. package/dist/gateway/ws-protocol.js.map +1 -0
  292. package/dist/gateway-main.d.ts +1 -0
  293. package/dist/gateway-main.js +129 -0
  294. package/dist/gateway-main.js.map +1 -0
  295. package/dist/lib/s3-backup.d.ts +28 -0
  296. package/dist/lib/s3-backup.js +85 -0
  297. package/dist/lib/s3-backup.js.map +1 -0
  298. package/dist/lib/s3-storage.d.ts +45 -0
  299. package/dist/lib/s3-storage.js +210 -0
  300. package/dist/lib/s3-storage.js.map +1 -0
  301. package/dist/memory/chunker.d.ts +15 -0
  302. package/dist/memory/chunker.js +94 -0
  303. package/dist/memory/chunker.js.map +1 -0
  304. package/dist/memory/embeddings.d.ts +14 -0
  305. package/dist/memory/embeddings.js +143 -0
  306. package/dist/memory/embeddings.js.map +1 -0
  307. package/dist/memory/index.d.ts +18 -0
  308. package/dist/memory/index.js +15 -0
  309. package/dist/memory/index.js.map +1 -0
  310. package/dist/memory/indexer.d.ts +70 -0
  311. package/dist/memory/indexer.js +567 -0
  312. package/dist/memory/indexer.js.map +1 -0
  313. package/dist/memory/mmr.d.ts +22 -0
  314. package/dist/memory/mmr.js +82 -0
  315. package/dist/memory/mmr.js.map +1 -0
  316. package/dist/memory/schema.d.ts +2 -0
  317. package/dist/memory/schema.js +85 -0
  318. package/dist/memory/schema.js.map +1 -0
  319. package/dist/memory/session-summarizer.d.ts +19 -0
  320. package/dist/memory/session-summarizer.js +139 -0
  321. package/dist/memory/session-summarizer.js.map +1 -0
  322. package/dist/memory/stop-words.d.ts +13 -0
  323. package/dist/memory/stop-words.js +132 -0
  324. package/dist/memory/stop-words.js.map +1 -0
  325. package/dist/memory/temporal-decay.d.ts +20 -0
  326. package/dist/memory/temporal-decay.js +63 -0
  327. package/dist/memory/temporal-decay.js.map +1 -0
  328. package/dist/memory/types.d.ts +40 -0
  329. package/dist/memory/types.js +2 -0
  330. package/dist/memory/types.js.map +1 -0
  331. package/dist/shared/resource-sync.d.ts +80 -0
  332. package/dist/shared/resource-sync.js +24 -0
  333. package/dist/shared/resource-sync.js.map +1 -0
  334. package/dist/tools/command-sets.d.ts +61 -0
  335. package/dist/tools/command-sets.js +845 -0
  336. package/dist/tools/command-sets.js.map +1 -0
  337. package/dist/tools/create-skill.d.ts +2 -0
  338. package/dist/tools/create-skill.js +169 -0
  339. package/dist/tools/create-skill.js.map +1 -0
  340. package/dist/tools/credential-list.d.ts +8 -0
  341. package/dist/tools/credential-list.js +139 -0
  342. package/dist/tools/credential-list.js.map +1 -0
  343. package/dist/tools/deep-search/engine.d.ts +40 -0
  344. package/dist/tools/deep-search/engine.js +594 -0
  345. package/dist/tools/deep-search/engine.js.map +1 -0
  346. package/dist/tools/deep-search/events.d.ts +11 -0
  347. package/dist/tools/deep-search/events.js +10 -0
  348. package/dist/tools/deep-search/events.js.map +1 -0
  349. package/dist/tools/deep-search/format.d.ts +11 -0
  350. package/dist/tools/deep-search/format.js +143 -0
  351. package/dist/tools/deep-search/format.js.map +1 -0
  352. package/dist/tools/deep-search/prompts.d.ts +30 -0
  353. package/dist/tools/deep-search/prompts.js +237 -0
  354. package/dist/tools/deep-search/prompts.js.map +1 -0
  355. package/dist/tools/deep-search/sre-knowledge.d.ts +21 -0
  356. package/dist/tools/deep-search/sre-knowledge.js +112 -0
  357. package/dist/tools/deep-search/sre-knowledge.js.map +1 -0
  358. package/dist/tools/deep-search/sub-agent.d.ts +71 -0
  359. package/dist/tools/deep-search/sub-agent.js +401 -0
  360. package/dist/tools/deep-search/sub-agent.js.map +1 -0
  361. package/dist/tools/deep-search/tool.d.ts +9 -0
  362. package/dist/tools/deep-search/tool.js +201 -0
  363. package/dist/tools/deep-search/tool.js.map +1 -0
  364. package/dist/tools/deep-search/types.d.ts +67 -0
  365. package/dist/tools/deep-search/types.js +41 -0
  366. package/dist/tools/deep-search/types.js.map +1 -0
  367. package/dist/tools/dp-tools.d.ts +47 -0
  368. package/dist/tools/dp-tools.js +170 -0
  369. package/dist/tools/dp-tools.js.map +1 -0
  370. package/dist/tools/fork-skill.d.ts +2 -0
  371. package/dist/tools/fork-skill.js +93 -0
  372. package/dist/tools/fork-skill.js.map +1 -0
  373. package/dist/tools/k8s-checks.d.ts +18 -0
  374. package/dist/tools/k8s-checks.js +105 -0
  375. package/dist/tools/k8s-checks.js.map +1 -0
  376. package/dist/tools/kubeconfig-resolver.d.ts +11 -0
  377. package/dist/tools/kubeconfig-resolver.js +53 -0
  378. package/dist/tools/kubeconfig-resolver.js.map +1 -0
  379. package/dist/tools/kubectl.d.ts +12 -0
  380. package/dist/tools/kubectl.js +169 -0
  381. package/dist/tools/kubectl.js.map +1 -0
  382. package/dist/tools/manage-schedule.d.ts +3 -0
  383. package/dist/tools/manage-schedule.js +189 -0
  384. package/dist/tools/manage-schedule.js.map +1 -0
  385. package/dist/tools/memory-get.d.ts +2 -0
  386. package/dist/tools/memory-get.js +99 -0
  387. package/dist/tools/memory-get.js.map +1 -0
  388. package/dist/tools/memory-search.d.ts +3 -0
  389. package/dist/tools/memory-search.js +93 -0
  390. package/dist/tools/memory-search.js.map +1 -0
  391. package/dist/tools/netns-script.d.ts +3 -0
  392. package/dist/tools/netns-script.js +394 -0
  393. package/dist/tools/netns-script.js.map +1 -0
  394. package/dist/tools/node-exec.d.ts +18 -0
  395. package/dist/tools/node-exec.js +342 -0
  396. package/dist/tools/node-exec.js.map +1 -0
  397. package/dist/tools/node-script.d.ts +3 -0
  398. package/dist/tools/node-script.js +266 -0
  399. package/dist/tools/node-script.js.map +1 -0
  400. package/dist/tools/pod-exec.d.ts +4 -0
  401. package/dist/tools/pod-exec.js +146 -0
  402. package/dist/tools/pod-exec.js.map +1 -0
  403. package/dist/tools/pod-nsenter-exec.d.ts +3 -0
  404. package/dist/tools/pod-nsenter-exec.js +333 -0
  405. package/dist/tools/pod-nsenter-exec.js.map +1 -0
  406. package/dist/tools/pod-script.d.ts +3 -0
  407. package/dist/tools/pod-script.js +176 -0
  408. package/dist/tools/pod-script.js.map +1 -0
  409. package/dist/tools/restricted-bash.d.ts +41 -0
  410. package/dist/tools/restricted-bash.js +503 -0
  411. package/dist/tools/restricted-bash.js.map +1 -0
  412. package/dist/tools/run-skill.d.ts +3 -0
  413. package/dist/tools/run-skill.js +169 -0
  414. package/dist/tools/run-skill.js.map +1 -0
  415. package/dist/tools/sanitize-env.d.ts +14 -0
  416. package/dist/tools/sanitize-env.js +95 -0
  417. package/dist/tools/sanitize-env.js.map +1 -0
  418. package/dist/tools/script-resolver.d.ts +35 -0
  419. package/dist/tools/script-resolver.js +213 -0
  420. package/dist/tools/script-resolver.js.map +1 -0
  421. package/dist/tools/tool-render.d.ts +20 -0
  422. package/dist/tools/tool-render.js +77 -0
  423. package/dist/tools/tool-render.js.map +1 -0
  424. package/dist/tools/update-skill.d.ts +2 -0
  425. package/dist/tools/update-skill.js +169 -0
  426. package/dist/tools/update-skill.js.map +1 -0
  427. package/package.json +106 -0
  428. package/settings.example.json +74 -0
  429. package/siclaw.mjs +48 -0
  430. package/skills/core/cluster-events/SKILL.md +150 -0
  431. package/skills/core/deep-investigation/SKILL.md +87 -0
  432. package/skills/core/deep-investigation/default-memory.md +8 -0
  433. package/skills/core/deployment-rollout-debug/SKILL.md +144 -0
  434. package/skills/core/dns-debug/SKILL.md +144 -0
  435. package/skills/core/find-node/SKILL.md +23 -0
  436. package/skills/core/find-node/scripts/find-node.sh +9 -0
  437. package/skills/core/hpa-debug/SKILL.md +159 -0
  438. package/skills/core/image-pull-debug/SKILL.md +151 -0
  439. package/skills/core/ingress-debug/SKILL.md +189 -0
  440. package/skills/core/job-debug/SKILL.md +180 -0
  441. package/skills/core/meta.json +23 -0
  442. package/skills/core/node-health-check/SKILL.md +150 -0
  443. package/skills/core/node-logs/SKILL.md +68 -0
  444. package/skills/core/node-logs/scripts/get-node-logs.sh +78 -0
  445. package/skills/core/node-ping-gateway/SKILL.md +54 -0
  446. package/skills/core/node-ping-gateway/scripts/ping-node-gateway.sh +71 -0
  447. package/skills/core/node-show-gateway/SKILL.md +55 -0
  448. package/skills/core/node-show-gateway/scripts/show-node-gateway.sh +90 -0
  449. package/skills/core/pod-crash-debug/SKILL.md +135 -0
  450. package/skills/core/pod-pending-debug/SKILL.md +146 -0
  451. package/skills/core/pod-ping-gateway/SKILL.md +44 -0
  452. package/skills/core/pod-ping-gateway/scripts/ping-gateway.sh +76 -0
  453. package/skills/core/pod-show-gateway/SKILL.md +54 -0
  454. package/skills/core/pod-show-gateway/scripts/show-gateway.sh +115 -0
  455. package/skills/core/pvc-debug/SKILL.md +169 -0
  456. package/skills/core/service-debug/SKILL.md +164 -0
  457. package/skills/extension/.gitkeep +0 -0
  458. package/skills/platform/create-skill/SKILL.md +288 -0
  459. package/skills/platform/manage-skill/SKILL.md +23 -0
  460. package/skills/platform/update-skill/SKILL.md +52 -0
@@ -0,0 +1,620 @@
1
+ /**
2
+ * Markdown → Lark Post format converter
3
+ *
4
+ * Ported from openclaw's markdown IR system:
5
+ * - src/markdown/ir.ts (markdown → IR via markdown-it)
6
+ * - src/lark/format.ts (IR → Lark post elements)
7
+ */
8
+ import MarkdownIt from "markdown-it";
9
+ // ─── markdown-it setup ─────────────────────────────────────
10
+ function createMd(options) {
11
+ const md = new MarkdownIt({
12
+ html: false,
13
+ linkify: options.linkify ?? true,
14
+ breaks: false,
15
+ typographer: false,
16
+ });
17
+ md.enable("strikethrough");
18
+ if (options.tableMode && options.tableMode !== "off") {
19
+ md.enable("table");
20
+ }
21
+ else {
22
+ md.disable("table");
23
+ }
24
+ return md;
25
+ }
26
+ // ─── IR rendering helpers ───────────────────────────────────
27
+ function getAttr(token, name) {
28
+ if (token.attrGet)
29
+ return token.attrGet(name);
30
+ if (token.attrs) {
31
+ for (const [key, value] of token.attrs) {
32
+ if (key === name)
33
+ return value;
34
+ }
35
+ }
36
+ return null;
37
+ }
38
+ function initRenderTarget() {
39
+ return { text: "", styles: [], openStyles: [], links: [], linkStack: [] };
40
+ }
41
+ function resolveTarget(state) {
42
+ return state.table?.currentCell ?? state;
43
+ }
44
+ function appendText(state, value) {
45
+ if (!value)
46
+ return;
47
+ resolveTarget(state).text += value;
48
+ }
49
+ function openStyle(state, style) {
50
+ const t = resolveTarget(state);
51
+ t.openStyles.push({ style, start: t.text.length });
52
+ }
53
+ function closeStyle(state, style) {
54
+ const t = resolveTarget(state);
55
+ for (let i = t.openStyles.length - 1; i >= 0; i--) {
56
+ if (t.openStyles[i]?.style === style) {
57
+ const start = t.openStyles[i].start;
58
+ t.openStyles.splice(i, 1);
59
+ const end = t.text.length;
60
+ if (end > start)
61
+ t.styles.push({ start, end, style });
62
+ return;
63
+ }
64
+ }
65
+ }
66
+ function appendParagraphSep(state) {
67
+ if (state.env.listStack.length > 0 || state.table)
68
+ return;
69
+ state.text += "\n\n";
70
+ }
71
+ function appendListPrefix(state) {
72
+ const stack = state.env.listStack;
73
+ const top = stack[stack.length - 1];
74
+ if (!top)
75
+ return;
76
+ top.index += 1;
77
+ const indent = " ".repeat(Math.max(0, stack.length - 1));
78
+ const prefix = top.type === "ordered" ? `${top.index}. ` : "• ";
79
+ state.text += `${indent}${prefix}`;
80
+ }
81
+ function renderInlineCode(state, content) {
82
+ if (!content)
83
+ return;
84
+ const t = resolveTarget(state);
85
+ const start = t.text.length;
86
+ t.text += content;
87
+ t.styles.push({ start, end: start + content.length, style: "code" });
88
+ }
89
+ function renderCodeBlock(state, content) {
90
+ let code = content ?? "";
91
+ if (!code.endsWith("\n"))
92
+ code = `${code}\n`;
93
+ const t = resolveTarget(state);
94
+ const start = t.text.length;
95
+ t.text += code;
96
+ t.styles.push({ start, end: start + code.length, style: "code_block" });
97
+ if (state.env.listStack.length === 0)
98
+ t.text += "\n";
99
+ }
100
+ function handleLinkClose(state) {
101
+ const t = resolveTarget(state);
102
+ const link = t.linkStack.pop();
103
+ if (!link?.href)
104
+ return;
105
+ const href = link.href.trim();
106
+ if (!href)
107
+ return;
108
+ const start = link.labelStart;
109
+ const end = t.text.length;
110
+ if (end >= start)
111
+ t.links.push({ start, end, href });
112
+ }
113
+ // ─── Table rendering ────────────────────────────────────────
114
+ function initTableState() {
115
+ return { headers: [], rows: [], currentRow: [], currentCell: null, inHeader: false };
116
+ }
117
+ function closeRemainingStyles(target) {
118
+ for (let i = target.openStyles.length - 1; i >= 0; i--) {
119
+ const open = target.openStyles[i];
120
+ const end = target.text.length;
121
+ if (end > open.start)
122
+ target.styles.push({ start: open.start, end, style: open.style });
123
+ }
124
+ target.openStyles = [];
125
+ }
126
+ function finishTableCell(cell) {
127
+ closeRemainingStyles(cell);
128
+ return { text: cell.text, styles: cell.styles, links: cell.links };
129
+ }
130
+ function trimCell(cell) {
131
+ const text = cell.text;
132
+ let start = 0;
133
+ let end = text.length;
134
+ while (start < end && /\s/.test(text[start] ?? ""))
135
+ start++;
136
+ while (end > start && /\s/.test(text[end - 1] ?? ""))
137
+ end--;
138
+ if (start === 0 && end === text.length)
139
+ return cell;
140
+ const trimmedText = text.slice(start, end);
141
+ const len = trimmedText.length;
142
+ const styles = [];
143
+ for (const s of cell.styles) {
144
+ const a = Math.max(0, s.start - start);
145
+ const b = Math.min(len, s.end - start);
146
+ if (b > a)
147
+ styles.push({ start: a, end: b, style: s.style });
148
+ }
149
+ const links = [];
150
+ for (const l of cell.links) {
151
+ const a = Math.max(0, l.start - start);
152
+ const b = Math.min(len, l.end - start);
153
+ if (b > a)
154
+ links.push({ start: a, end: b, href: l.href });
155
+ }
156
+ return { text: trimmedText, styles, links };
157
+ }
158
+ function appendCell(state, cell) {
159
+ if (!cell.text)
160
+ return;
161
+ const start = state.text.length;
162
+ state.text += cell.text;
163
+ for (const s of cell.styles)
164
+ state.styles.push({ start: start + s.start, end: start + s.end, style: s.style });
165
+ for (const l of cell.links)
166
+ state.links.push({ start: start + l.start, end: start + l.end, href: l.href });
167
+ }
168
+ function renderTableAsBullets(state) {
169
+ if (!state.table)
170
+ return;
171
+ const headers = state.table.headers.map(trimCell);
172
+ const rows = state.table.rows.map((r) => r.map(trimCell));
173
+ if (headers.length === 0 && rows.length === 0)
174
+ return;
175
+ const useLabel = headers.length > 1 && rows.length > 0;
176
+ if (useLabel) {
177
+ for (const row of rows) {
178
+ if (row.length === 0)
179
+ continue;
180
+ const label = row[0];
181
+ if (label?.text) {
182
+ const ls = state.text.length;
183
+ appendCell(state, label);
184
+ const le = state.text.length;
185
+ if (le > ls)
186
+ state.styles.push({ start: ls, end: le, style: "bold" });
187
+ state.text += "\n";
188
+ }
189
+ for (let i = 1; i < row.length; i++) {
190
+ const val = row[i];
191
+ if (!val?.text)
192
+ continue;
193
+ state.text += "• ";
194
+ if (headers[i]?.text) {
195
+ appendCell(state, headers[i]);
196
+ state.text += ": ";
197
+ }
198
+ appendCell(state, val);
199
+ state.text += "\n";
200
+ }
201
+ state.text += "\n";
202
+ }
203
+ }
204
+ else {
205
+ for (const row of rows) {
206
+ for (let i = 0; i < row.length; i++) {
207
+ const val = row[i];
208
+ if (!val?.text)
209
+ continue;
210
+ state.text += "• ";
211
+ if (headers[i]?.text) {
212
+ appendCell(state, headers[i]);
213
+ state.text += ": ";
214
+ }
215
+ appendCell(state, val);
216
+ state.text += "\n";
217
+ }
218
+ state.text += "\n";
219
+ }
220
+ }
221
+ }
222
+ function renderTableAsCode(state) {
223
+ if (!state.table)
224
+ return;
225
+ const headers = state.table.headers.map(trimCell);
226
+ const rows = state.table.rows.map((r) => r.map(trimCell));
227
+ const colCount = Math.max(headers.length, ...rows.map((r) => r.length));
228
+ if (colCount === 0)
229
+ return;
230
+ const widths = Array.from({ length: colCount }, () => 0);
231
+ const updateWidths = (cells) => {
232
+ for (let i = 0; i < colCount; i++) {
233
+ const w = cells[i]?.text.length ?? 0;
234
+ if (widths[i] < w)
235
+ widths[i] = w;
236
+ }
237
+ };
238
+ updateWidths(headers);
239
+ for (const row of rows)
240
+ updateWidths(row);
241
+ const codeStart = state.text.length;
242
+ const appendRow = (cells) => {
243
+ state.text += "|";
244
+ for (let i = 0; i < colCount; i++) {
245
+ state.text += " ";
246
+ const cell = cells[i];
247
+ if (cell)
248
+ appendCell(state, cell);
249
+ const pad = widths[i] - (cell?.text.length ?? 0);
250
+ if (pad > 0)
251
+ state.text += " ".repeat(pad);
252
+ state.text += " |";
253
+ }
254
+ state.text += "\n";
255
+ };
256
+ const appendDiv = () => {
257
+ state.text += "|";
258
+ for (let i = 0; i < colCount; i++)
259
+ state.text += ` ${"-".repeat(Math.max(3, widths[i]))} |`;
260
+ state.text += "\n";
261
+ };
262
+ appendRow(headers);
263
+ appendDiv();
264
+ for (const row of rows)
265
+ appendRow(row);
266
+ const codeEnd = state.text.length;
267
+ if (codeEnd > codeStart)
268
+ state.styles.push({ start: codeStart, end: codeEnd, style: "code_block" });
269
+ if (state.env.listStack.length === 0)
270
+ state.text += "\n";
271
+ }
272
+ // ─── Token rendering ────────────────────────────────────────
273
+ function renderTokens(tokens, state) {
274
+ for (const token of tokens) {
275
+ switch (token.type) {
276
+ case "inline":
277
+ if (token.children)
278
+ renderTokens(token.children, state);
279
+ break;
280
+ case "text":
281
+ appendText(state, token.content ?? "");
282
+ break;
283
+ case "em_open":
284
+ openStyle(state, "italic");
285
+ break;
286
+ case "em_close":
287
+ closeStyle(state, "italic");
288
+ break;
289
+ case "strong_open":
290
+ openStyle(state, "bold");
291
+ break;
292
+ case "strong_close":
293
+ closeStyle(state, "bold");
294
+ break;
295
+ case "s_open":
296
+ openStyle(state, "strikethrough");
297
+ break;
298
+ case "s_close":
299
+ closeStyle(state, "strikethrough");
300
+ break;
301
+ case "code_inline":
302
+ renderInlineCode(state, token.content ?? "");
303
+ break;
304
+ case "link_open": {
305
+ const href = getAttr(token, "href") ?? "";
306
+ const t = resolveTarget(state);
307
+ t.linkStack.push({ href, labelStart: t.text.length });
308
+ break;
309
+ }
310
+ case "link_close":
311
+ handleLinkClose(state);
312
+ break;
313
+ case "image":
314
+ appendText(state, token.content ?? "");
315
+ break;
316
+ case "softbreak":
317
+ case "hardbreak":
318
+ appendText(state, "\n");
319
+ break;
320
+ case "paragraph_close":
321
+ appendParagraphSep(state);
322
+ break;
323
+ case "heading_open":
324
+ if (state.headingStyle === "bold")
325
+ openStyle(state, "bold");
326
+ break;
327
+ case "heading_close":
328
+ if (state.headingStyle === "bold")
329
+ closeStyle(state, "bold");
330
+ appendParagraphSep(state);
331
+ break;
332
+ case "blockquote_open":
333
+ if (state.blockquotePrefix)
334
+ state.text += state.blockquotePrefix;
335
+ break;
336
+ case "blockquote_close":
337
+ state.text += "\n";
338
+ break;
339
+ case "bullet_list_open":
340
+ state.env.listStack.push({ type: "bullet", index: 0 });
341
+ break;
342
+ case "bullet_list_close":
343
+ state.env.listStack.pop();
344
+ break;
345
+ case "ordered_list_open": {
346
+ const start = Number(getAttr(token, "start") ?? "1");
347
+ state.env.listStack.push({ type: "ordered", index: start - 1 });
348
+ break;
349
+ }
350
+ case "ordered_list_close":
351
+ state.env.listStack.pop();
352
+ break;
353
+ case "list_item_open":
354
+ appendListPrefix(state);
355
+ break;
356
+ case "list_item_close":
357
+ state.text += "\n";
358
+ break;
359
+ case "code_block":
360
+ case "fence":
361
+ renderCodeBlock(state, token.content ?? "");
362
+ break;
363
+ case "html_block":
364
+ case "html_inline":
365
+ appendText(state, token.content ?? "");
366
+ break;
367
+ case "table_open":
368
+ if (state.tableMode !== "off")
369
+ state.table = initTableState();
370
+ break;
371
+ case "table_close":
372
+ if (state.table) {
373
+ if (state.tableMode === "bullets")
374
+ renderTableAsBullets(state);
375
+ else if (state.tableMode === "code")
376
+ renderTableAsCode(state);
377
+ }
378
+ state.table = null;
379
+ break;
380
+ case "thead_open":
381
+ if (state.table)
382
+ state.table.inHeader = true;
383
+ break;
384
+ case "thead_close":
385
+ if (state.table)
386
+ state.table.inHeader = false;
387
+ break;
388
+ case "tbody_open":
389
+ case "tbody_close": break;
390
+ case "tr_open":
391
+ if (state.table)
392
+ state.table.currentRow = [];
393
+ break;
394
+ case "tr_close":
395
+ if (state.table) {
396
+ if (state.table.inHeader)
397
+ state.table.headers = state.table.currentRow;
398
+ else
399
+ state.table.rows.push(state.table.currentRow);
400
+ state.table.currentRow = [];
401
+ }
402
+ break;
403
+ case "th_open":
404
+ case "td_open":
405
+ if (state.table)
406
+ state.table.currentCell = initRenderTarget();
407
+ break;
408
+ case "th_close":
409
+ case "td_close":
410
+ if (state.table?.currentCell) {
411
+ state.table.currentRow.push(finishTableCell(state.table.currentCell));
412
+ state.table.currentCell = null;
413
+ }
414
+ break;
415
+ case "hr":
416
+ state.text += "\n";
417
+ break;
418
+ default:
419
+ if (token.children)
420
+ renderTokens(token.children, state);
421
+ break;
422
+ }
423
+ }
424
+ }
425
+ // ─── IR construction ────────────────────────────────────────
426
+ function mergeStyleSpans(spans) {
427
+ const sorted = [...spans].sort((a, b) => a.start !== b.start ? a.start - b.start : a.end !== b.end ? a.end - b.end : a.style.localeCompare(b.style));
428
+ const merged = [];
429
+ for (const span of sorted) {
430
+ const prev = merged[merged.length - 1];
431
+ if (prev && prev.style === span.style && span.start <= prev.end) {
432
+ prev.end = Math.max(prev.end, span.end);
433
+ continue;
434
+ }
435
+ merged.push({ ...span });
436
+ }
437
+ return merged;
438
+ }
439
+ function clampStyles(spans, max) {
440
+ const out = [];
441
+ for (const s of spans) {
442
+ const a = Math.max(0, Math.min(s.start, max));
443
+ const b = Math.max(a, Math.min(s.end, max));
444
+ if (b > a)
445
+ out.push({ start: a, end: b, style: s.style });
446
+ }
447
+ return out;
448
+ }
449
+ function clampLinks(spans, max) {
450
+ const out = [];
451
+ for (const s of spans) {
452
+ const a = Math.max(0, Math.min(s.start, max));
453
+ const b = Math.max(a, Math.min(s.end, max));
454
+ if (b > a)
455
+ out.push({ start: a, end: b, href: s.href });
456
+ }
457
+ return out;
458
+ }
459
+ export function markdownToIR(markdown, options = {}) {
460
+ const env = { listStack: [] };
461
+ const md = createMd(options);
462
+ const tokens = md.parse(markdown ?? "", env);
463
+ const tableMode = options.tableMode ?? "off";
464
+ const state = {
465
+ text: "",
466
+ styles: [],
467
+ openStyles: [],
468
+ links: [],
469
+ linkStack: [],
470
+ env,
471
+ headingStyle: options.headingStyle ?? "none",
472
+ blockquotePrefix: options.blockquotePrefix ?? "",
473
+ tableMode,
474
+ table: null,
475
+ };
476
+ renderTokens(tokens, state);
477
+ closeRemainingStyles(state);
478
+ const trimmedText = state.text.trimEnd();
479
+ const trimmedLength = trimmedText.length;
480
+ let codeBlockEnd = 0;
481
+ for (const s of state.styles) {
482
+ if (s.style === "code_block" && s.end > codeBlockEnd)
483
+ codeBlockEnd = s.end;
484
+ }
485
+ const finalLength = Math.max(trimmedLength, codeBlockEnd);
486
+ const finalText = finalLength === state.text.length ? state.text : state.text.slice(0, finalLength);
487
+ return {
488
+ text: finalText,
489
+ styles: mergeStyleSpans(clampStyles(state.styles, finalLength)),
490
+ links: clampLinks(state.links, finalLength),
491
+ };
492
+ }
493
+ // ─── IR → Lark Post ─────────────────────────────────────────
494
+ function buildStyleRanges(styles, textLength) {
495
+ const ranges = Array(textLength)
496
+ .fill(null)
497
+ .map(() => ({ bold: false, italic: false, strikethrough: false, code: false }));
498
+ for (const span of styles) {
499
+ for (let i = span.start; i < span.end && i < textLength; i++) {
500
+ switch (span.style) {
501
+ case "bold":
502
+ ranges[i].bold = true;
503
+ break;
504
+ case "italic":
505
+ ranges[i].italic = true;
506
+ break;
507
+ case "strikethrough":
508
+ ranges[i].strikethrough = true;
509
+ break;
510
+ case "code":
511
+ case "code_block":
512
+ ranges[i].code = true;
513
+ break;
514
+ }
515
+ }
516
+ }
517
+ return ranges;
518
+ }
519
+ function buildLinkMap(links) {
520
+ const map = new Map();
521
+ for (const link of links) {
522
+ for (let i = link.start; i < link.end; i++)
523
+ map.set(i, link.href);
524
+ }
525
+ return map;
526
+ }
527
+ function getStylesAt(ranges, pos) {
528
+ return ranges[pos] ?? { bold: false, italic: false, strikethrough: false, code: false };
529
+ }
530
+ function stylesEqual(a, b) {
531
+ return a.bold === b.bold && a.italic === b.italic && a.strikethrough === b.strikethrough && a.code === b.code;
532
+ }
533
+ function createPostElement(text, styles, link) {
534
+ const styleArray = [];
535
+ if (styles.bold)
536
+ styleArray.push("bold");
537
+ if (styles.italic)
538
+ styleArray.push("italic");
539
+ if (styles.strikethrough)
540
+ styleArray.push("lineThrough");
541
+ if (styles.code)
542
+ styleArray.push("code");
543
+ if (link) {
544
+ return { tag: "a", text, href: link, ...(styleArray.length > 0 ? { style: styleArray } : {}) };
545
+ }
546
+ return { tag: "text", text, ...(styleArray.length > 0 ? { style: styleArray } : {}) };
547
+ }
548
+ function renderLarkPost(ir) {
549
+ const lines = [];
550
+ const text = ir.text;
551
+ if (!text)
552
+ return { zh_cn: { content: [[{ tag: "text", text: "" }]] } };
553
+ const styleRanges = buildStyleRanges(ir.styles, text.length);
554
+ const linkMap = buildLinkMap(ir.links);
555
+ const textLines = text.split("\n");
556
+ let charIndex = 0;
557
+ for (const line of textLines) {
558
+ const elems = [];
559
+ if (line.length === 0) {
560
+ elems.push({ tag: "text", text: "" });
561
+ }
562
+ else {
563
+ let segStart = charIndex;
564
+ let curStyles = getStylesAt(styleRanges, segStart);
565
+ let curLink = linkMap.get(segStart);
566
+ for (let i = 0; i < line.length; i++) {
567
+ const pos = charIndex + i;
568
+ const newStyles = getStylesAt(styleRanges, pos);
569
+ const newLink = linkMap.get(pos);
570
+ if (!stylesEqual(curStyles, newStyles) || curLink !== newLink) {
571
+ const segText = text.slice(segStart, pos);
572
+ if (segText)
573
+ elems.push(createPostElement(segText, curStyles, curLink));
574
+ segStart = pos;
575
+ curStyles = newStyles;
576
+ curLink = newLink;
577
+ }
578
+ }
579
+ const finalSeg = text.slice(segStart, charIndex + line.length);
580
+ if (finalSeg)
581
+ elems.push(createPostElement(finalSeg, curStyles, curLink));
582
+ }
583
+ lines.push(elems.length > 0 ? elems : [{ tag: "text", text: "" }]);
584
+ charIndex += line.length + 1;
585
+ }
586
+ return { zh_cn: { content: lines } };
587
+ }
588
+ // ─── Public API ─────────────────────────────────────────────
589
+ /**
590
+ * Check if text contains Markdown formatting
591
+ */
592
+ export function containsMarkdown(text) {
593
+ if (!text)
594
+ return false;
595
+ return [
596
+ /\*\*[^*]+\*\*/,
597
+ /\*[^*]+\*/,
598
+ /~~[^~]+~~/,
599
+ /`[^`]+`/,
600
+ /```[\s\S]*?```/,
601
+ /\[.+?\]\(.+?\)/,
602
+ /^#{1,6}\s/m,
603
+ /^[-*]\s/m,
604
+ /^\d+\.\s/m,
605
+ ].some((p) => p.test(text));
606
+ }
607
+ /**
608
+ * Convert Markdown to Lark Post format JSON string
609
+ */
610
+ export function markdownToLarkPost(text, options) {
611
+ const ir = markdownToIR(text, {
612
+ linkify: true,
613
+ headingStyle: "bold",
614
+ blockquotePrefix: "| ",
615
+ tableMode: options?.tableMode ?? "bullets",
616
+ });
617
+ const post = renderLarkPost(ir);
618
+ return JSON.stringify(post);
619
+ }
620
+ //# sourceMappingURL=lark-format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lark-format.js","sourceRoot":"","sources":["../../../src/gateway/channels/lark-format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { ChannelPlugin } from "../plugins/api.js";
2
+ import type { ChannelBridge } from "../plugins/channel-bridge.js";
3
+ import type { GatewayConfig } from "../config.js";
4
+ import type { ChannelDeps } from "./channel-manager.js";
5
+ export declare function createLarkChannel(config: GatewayConfig, channelBridge: ChannelBridge, deps?: ChannelDeps): ChannelPlugin;