@kindgi/cli 0.0.0-bootstrap.0 → 0.1.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 (516) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +738 -1
  3. package/dist/build/apt.d.ts +16 -0
  4. package/dist/build/apt.d.ts.map +1 -0
  5. package/dist/build/apt.js +50 -0
  6. package/dist/build/apt.js.map +1 -0
  7. package/dist/build/bundle.d.ts +48 -0
  8. package/dist/build/bundle.d.ts.map +1 -0
  9. package/dist/build/bundle.js +125 -0
  10. package/dist/build/bundle.js.map +1 -0
  11. package/dist/build/containerfile.d.ts +27 -0
  12. package/dist/build/containerfile.d.ts.map +1 -0
  13. package/dist/build/containerfile.js +197 -0
  14. package/dist/build/containerfile.js.map +1 -0
  15. package/dist/build/context-files.d.ts +24 -0
  16. package/dist/build/context-files.d.ts.map +1 -0
  17. package/dist/build/context-files.js +99 -0
  18. package/dist/build/context-files.js.map +1 -0
  19. package/dist/build/defaults.d.ts +66 -0
  20. package/dist/build/defaults.d.ts.map +1 -0
  21. package/dist/build/defaults.js +597 -0
  22. package/dist/build/defaults.js.map +1 -0
  23. package/dist/build/envelope.d.ts +72 -0
  24. package/dist/build/envelope.d.ts.map +1 -0
  25. package/dist/build/envelope.js +76 -0
  26. package/dist/build/envelope.js.map +1 -0
  27. package/dist/build/host-install.d.ts +100 -0
  28. package/dist/build/host-install.d.ts.map +1 -0
  29. package/dist/build/host-install.js +443 -0
  30. package/dist/build/host-install.js.map +1 -0
  31. package/dist/build/image-config.d.ts +32 -0
  32. package/dist/build/image-config.d.ts.map +1 -0
  33. package/dist/build/image-config.js +129 -0
  34. package/dist/build/image-config.js.map +1 -0
  35. package/dist/build/integrity.d.ts +51 -0
  36. package/dist/build/integrity.d.ts.map +1 -0
  37. package/dist/build/integrity.js +75 -0
  38. package/dist/build/integrity.js.map +1 -0
  39. package/dist/build/node-image.d.ts +18 -0
  40. package/dist/build/node-image.d.ts.map +1 -0
  41. package/dist/build/node-image.js +46 -0
  42. package/dist/build/node-image.js.map +1 -0
  43. package/dist/build/pack-root.d.ts +69 -0
  44. package/dist/build/pack-root.d.ts.map +1 -0
  45. package/dist/build/pack-root.js +102 -0
  46. package/dist/build/pack-root.js.map +1 -0
  47. package/dist/build/poetry-requirements.d.ts +5 -0
  48. package/dist/build/poetry-requirements.d.ts.map +1 -0
  49. package/dist/build/poetry-requirements.js +8 -0
  50. package/dist/build/poetry-requirements.js.map +1 -0
  51. package/dist/build/python-image.d.ts +40 -0
  52. package/dist/build/python-image.d.ts.map +1 -0
  53. package/dist/build/python-image.js +197 -0
  54. package/dist/build/python-image.js.map +1 -0
  55. package/dist/build/runners.d.ts +259 -0
  56. package/dist/build/runners.d.ts.map +1 -0
  57. package/dist/build/runners.js +4 -0
  58. package/dist/build/runners.js.map +1 -0
  59. package/dist/build/version-specifier.d.ts +2 -0
  60. package/dist/build/version-specifier.d.ts.map +1 -0
  61. package/dist/build/version-specifier.js +70 -0
  62. package/dist/build/version-specifier.js.map +1 -0
  63. package/dist/cli-package.d.ts +15 -0
  64. package/dist/cli-package.d.ts.map +1 -0
  65. package/dist/cli-package.js +37 -0
  66. package/dist/cli-package.js.map +1 -0
  67. package/dist/cli.d.ts +3 -0
  68. package/dist/cli.d.ts.map +1 -0
  69. package/dist/cli.js +26 -0
  70. package/dist/cli.js.map +1 -0
  71. package/dist/commands/adapters.d.ts +3 -0
  72. package/dist/commands/adapters.d.ts.map +1 -0
  73. package/dist/commands/adapters.js +148 -0
  74. package/dist/commands/adapters.js.map +1 -0
  75. package/dist/commands/agents.d.ts +3 -0
  76. package/dist/commands/agents.d.ts.map +1 -0
  77. package/dist/commands/agents.js +82 -0
  78. package/dist/commands/agents.js.map +1 -0
  79. package/dist/commands/approvals.d.ts +3 -0
  80. package/dist/commands/approvals.d.ts.map +1 -0
  81. package/dist/commands/approvals.js +92 -0
  82. package/dist/commands/approvals.js.map +1 -0
  83. package/dist/commands/artifacts.d.ts +3 -0
  84. package/dist/commands/artifacts.d.ts.map +1 -0
  85. package/dist/commands/artifacts.js +87 -0
  86. package/dist/commands/artifacts.js.map +1 -0
  87. package/dist/commands/auth.d.ts +25 -0
  88. package/dist/commands/auth.d.ts.map +1 -0
  89. package/dist/commands/auth.js +283 -0
  90. package/dist/commands/auth.js.map +1 -0
  91. package/dist/commands/build.d.ts +46 -0
  92. package/dist/commands/build.d.ts.map +1 -0
  93. package/dist/commands/build.js +902 -0
  94. package/dist/commands/build.js.map +1 -0
  95. package/dist/commands/capabilities.d.ts +3 -0
  96. package/dist/commands/capabilities.d.ts.map +1 -0
  97. package/dist/commands/capabilities.js +38 -0
  98. package/dist/commands/capabilities.js.map +1 -0
  99. package/dist/commands/conversations.d.ts +3 -0
  100. package/dist/commands/conversations.d.ts.map +1 -0
  101. package/dist/commands/conversations.js +75 -0
  102. package/dist/commands/conversations.js.map +1 -0
  103. package/dist/commands/deploy.d.ts +7 -0
  104. package/dist/commands/deploy.d.ts.map +1 -0
  105. package/dist/commands/deploy.js +697 -0
  106. package/dist/commands/deploy.js.map +1 -0
  107. package/dist/commands/dev.d.ts +43 -0
  108. package/dist/commands/dev.d.ts.map +1 -0
  109. package/dist/commands/dev.js +1110 -0
  110. package/dist/commands/dev.js.map +1 -0
  111. package/dist/commands/env.d.ts +27 -0
  112. package/dist/commands/env.d.ts.map +1 -0
  113. package/dist/commands/env.js +816 -0
  114. package/dist/commands/env.js.map +1 -0
  115. package/dist/commands/feedback.d.ts +33 -0
  116. package/dist/commands/feedback.d.ts.map +1 -0
  117. package/dist/commands/feedback.js +374 -0
  118. package/dist/commands/feedback.js.map +1 -0
  119. package/dist/commands/flows.d.ts +3 -0
  120. package/dist/commands/flows.d.ts.map +1 -0
  121. package/dist/commands/flows.js +60 -0
  122. package/dist/commands/flows.js.map +1 -0
  123. package/dist/commands/guardrails.d.ts +3 -0
  124. package/dist/commands/guardrails.d.ts.map +1 -0
  125. package/dist/commands/guardrails.js +89 -0
  126. package/dist/commands/guardrails.js.map +1 -0
  127. package/dist/commands/health.d.ts +8 -0
  128. package/dist/commands/health.d.ts.map +1 -0
  129. package/dist/commands/health.js +40 -0
  130. package/dist/commands/health.js.map +1 -0
  131. package/dist/commands/helpers.d.ts +48 -0
  132. package/dist/commands/helpers.d.ts.map +1 -0
  133. package/dist/commands/helpers.js +110 -0
  134. package/dist/commands/helpers.js.map +1 -0
  135. package/dist/commands/index.d.ts +7 -0
  136. package/dist/commands/index.d.ts.map +1 -0
  137. package/dist/commands/index.js +90 -0
  138. package/dist/commands/index.js.map +1 -0
  139. package/dist/commands/init.d.ts +46 -0
  140. package/dist/commands/init.d.ts.map +1 -0
  141. package/dist/commands/init.js +454 -0
  142. package/dist/commands/init.js.map +1 -0
  143. package/dist/commands/key.d.ts +3 -0
  144. package/dist/commands/key.d.ts.map +1 -0
  145. package/dist/commands/key.js +322 -0
  146. package/dist/commands/key.js.map +1 -0
  147. package/dist/commands/mcp.d.ts +43 -0
  148. package/dist/commands/mcp.d.ts.map +1 -0
  149. package/dist/commands/mcp.js +433 -0
  150. package/dist/commands/mcp.js.map +1 -0
  151. package/dist/commands/memory.d.ts +3 -0
  152. package/dist/commands/memory.d.ts.map +1 -0
  153. package/dist/commands/memory.js +82 -0
  154. package/dist/commands/memory.js.map +1 -0
  155. package/dist/commands/observations.d.ts +3 -0
  156. package/dist/commands/observations.d.ts.map +1 -0
  157. package/dist/commands/observations.js +27 -0
  158. package/dist/commands/observations.js.map +1 -0
  159. package/dist/commands/proposals.d.ts +3 -0
  160. package/dist/commands/proposals.d.ts.map +1 -0
  161. package/dist/commands/proposals.js +116 -0
  162. package/dist/commands/proposals.js.map +1 -0
  163. package/dist/commands/provenance.d.ts +3 -0
  164. package/dist/commands/provenance.d.ts.map +1 -0
  165. package/dist/commands/provenance.js +53 -0
  166. package/dist/commands/provenance.js.map +1 -0
  167. package/dist/commands/providers.d.ts +3 -0
  168. package/dist/commands/providers.d.ts.map +1 -0
  169. package/dist/commands/providers.js +212 -0
  170. package/dist/commands/providers.js.map +1 -0
  171. package/dist/commands/reviewers.d.ts +3 -0
  172. package/dist/commands/reviewers.d.ts.map +1 -0
  173. package/dist/commands/reviewers.js +78 -0
  174. package/dist/commands/reviewers.js.map +1 -0
  175. package/dist/commands/runs.d.ts +3 -0
  176. package/dist/commands/runs.d.ts.map +1 -0
  177. package/dist/commands/runs.js +223 -0
  178. package/dist/commands/runs.js.map +1 -0
  179. package/dist/commands/secrets.d.ts +18 -0
  180. package/dist/commands/secrets.d.ts.map +1 -0
  181. package/dist/commands/secrets.js +702 -0
  182. package/dist/commands/secrets.js.map +1 -0
  183. package/dist/commands/skills.d.ts +64 -0
  184. package/dist/commands/skills.d.ts.map +1 -0
  185. package/dist/commands/skills.js +430 -0
  186. package/dist/commands/skills.js.map +1 -0
  187. package/dist/commands/test.d.ts +5 -0
  188. package/dist/commands/test.d.ts.map +1 -0
  189. package/dist/commands/test.js +181 -0
  190. package/dist/commands/test.js.map +1 -0
  191. package/dist/commands/tokens.d.ts +3 -0
  192. package/dist/commands/tokens.d.ts.map +1 -0
  193. package/dist/commands/tokens.js +33 -0
  194. package/dist/commands/tokens.js.map +1 -0
  195. package/dist/commands/tools.d.ts +3 -0
  196. package/dist/commands/tools.d.ts.map +1 -0
  197. package/dist/commands/tools.js +162 -0
  198. package/dist/commands/tools.js.map +1 -0
  199. package/dist/commands/types.d.ts +54 -0
  200. package/dist/commands/types.d.ts.map +1 -0
  201. package/dist/commands/types.js +4 -0
  202. package/dist/commands/types.js.map +1 -0
  203. package/dist/commands/unwired.d.ts +22 -0
  204. package/dist/commands/unwired.d.ts.map +1 -0
  205. package/dist/commands/unwired.js +52 -0
  206. package/dist/commands/unwired.js.map +1 -0
  207. package/dist/commands/version.d.ts +8 -0
  208. package/dist/commands/version.d.ts.map +1 -0
  209. package/dist/commands/version.js +41 -0
  210. package/dist/commands/version.js.map +1 -0
  211. package/dist/config.d.ts +42 -0
  212. package/dist/config.d.ts.map +1 -0
  213. package/dist/config.js +83 -0
  214. package/dist/config.js.map +1 -0
  215. package/dist/context.d.ts +162 -0
  216. package/dist/context.d.ts.map +1 -0
  217. package/dist/context.js +45 -0
  218. package/dist/context.js.map +1 -0
  219. package/dist/deploy/defaults.d.ts +14 -0
  220. package/dist/deploy/defaults.d.ts.map +1 -0
  221. package/dist/deploy/defaults.js +37 -0
  222. package/dist/deploy/defaults.js.map +1 -0
  223. package/dist/deploy/envelope-loader.d.ts +24 -0
  224. package/dist/deploy/envelope-loader.d.ts.map +1 -0
  225. package/dist/deploy/envelope-loader.js +141 -0
  226. package/dist/deploy/envelope-loader.js.map +1 -0
  227. package/dist/deploy/post.d.ts +48 -0
  228. package/dist/deploy/post.d.ts.map +1 -0
  229. package/dist/deploy/post.js +210 -0
  230. package/dist/deploy/post.js.map +1 -0
  231. package/dist/deploy/response.d.ts +42 -0
  232. package/dist/deploy/response.d.ts.map +1 -0
  233. package/dist/deploy/response.js +128 -0
  234. package/dist/deploy/response.js.map +1 -0
  235. package/dist/deploy/runners.d.ts +218 -0
  236. package/dist/deploy/runners.d.ts.map +1 -0
  237. package/dist/deploy/runners.js +4 -0
  238. package/dist/deploy/runners.js.map +1 -0
  239. package/dist/dev/bundler.d.ts +10 -0
  240. package/dist/dev/bundler.d.ts.map +1 -0
  241. package/dist/dev/bundler.js +235 -0
  242. package/dist/dev/bundler.js.map +1 -0
  243. package/dist/dev/defaults.d.ts +140 -0
  244. package/dist/dev/defaults.d.ts.map +1 -0
  245. package/dist/dev/defaults.js +709 -0
  246. package/dist/dev/defaults.js.map +1 -0
  247. package/dist/dev/dev-only-imports.d.ts +15 -0
  248. package/dist/dev/dev-only-imports.d.ts.map +1 -0
  249. package/dist/dev/dev-only-imports.js +57 -0
  250. package/dist/dev/dev-only-imports.js.map +1 -0
  251. package/dist/dev/docker-compose.dev.yml +68 -0
  252. package/dist/dev/index-child.d.ts +2 -0
  253. package/dist/dev/index-child.d.ts.map +1 -0
  254. package/dist/dev/index-child.js +53 -0
  255. package/dist/dev/index-child.js.map +1 -0
  256. package/dist/dev/pack-code.d.ts +36 -0
  257. package/dist/dev/pack-code.d.ts.map +1 -0
  258. package/dist/dev/pack-code.js +129 -0
  259. package/dist/dev/pack-code.js.map +1 -0
  260. package/dist/dev/pack-env.d.ts +13 -0
  261. package/dist/dev/pack-env.d.ts.map +1 -0
  262. package/dist/dev/pack-env.js +36 -0
  263. package/dist/dev/pack-env.js.map +1 -0
  264. package/dist/dev/pack-service.d.ts +40 -0
  265. package/dist/dev/pack-service.d.ts.map +1 -0
  266. package/dist/dev/pack-service.js +189 -0
  267. package/dist/dev/pack-service.js.map +1 -0
  268. package/dist/dev/paths.d.ts +22 -0
  269. package/dist/dev/paths.d.ts.map +1 -0
  270. package/dist/dev/paths.js +35 -0
  271. package/dist/dev/paths.js.map +1 -0
  272. package/dist/dev/postgres-container.d.ts +77 -0
  273. package/dist/dev/postgres-container.d.ts.map +1 -0
  274. package/dist/dev/postgres-container.js +346 -0
  275. package/dist/dev/postgres-container.js.map +1 -0
  276. package/dist/dev/python-builder.d.ts +16 -0
  277. package/dist/dev/python-builder.d.ts.map +1 -0
  278. package/dist/dev/python-builder.js +122 -0
  279. package/dist/dev/python-builder.js.map +1 -0
  280. package/dist/dev/register.d.ts +71 -0
  281. package/dist/dev/register.d.ts.map +1 -0
  282. package/dist/dev/register.js +54 -0
  283. package/dist/dev/register.js.map +1 -0
  284. package/dist/dev/runners.d.ts +312 -0
  285. package/dist/dev/runners.d.ts.map +1 -0
  286. package/dist/dev/runners.js +4 -0
  287. package/dist/dev/runners.js.map +1 -0
  288. package/dist/dev/runtime-container.d.ts +71 -0
  289. package/dist/dev/runtime-container.d.ts.map +1 -0
  290. package/dist/dev/runtime-container.js +173 -0
  291. package/dist/dev/runtime-container.js.map +1 -0
  292. package/dist/dev/runtime-env.d.ts +62 -0
  293. package/dist/dev/runtime-env.d.ts.map +1 -0
  294. package/dist/dev/runtime-env.js +100 -0
  295. package/dist/dev/runtime-env.js.map +1 -0
  296. package/dist/dev/runtime-image.d.ts +26 -0
  297. package/dist/dev/runtime-image.d.ts.map +1 -0
  298. package/dist/dev/runtime-image.js +44 -0
  299. package/dist/dev/runtime-image.js.map +1 -0
  300. package/dist/dev/runtime-registry.d.ts +73 -0
  301. package/dist/dev/runtime-registry.d.ts.map +1 -0
  302. package/dist/dev/runtime-registry.js +111 -0
  303. package/dist/dev/runtime-registry.js.map +1 -0
  304. package/dist/env/defaults.d.ts +3 -0
  305. package/dist/env/defaults.d.ts.map +1 -0
  306. package/dist/env/defaults.js +22 -0
  307. package/dist/env/defaults.js.map +1 -0
  308. package/dist/env/pack-env-plan.d.ts +70 -0
  309. package/dist/env/pack-env-plan.d.ts.map +1 -0
  310. package/dist/env/pack-env-plan.js +236 -0
  311. package/dist/env/pack-env-plan.js.map +1 -0
  312. package/dist/env/parser.d.ts +9 -0
  313. package/dist/env/parser.d.ts.map +1 -0
  314. package/dist/env/parser.js +11 -0
  315. package/dist/env/parser.js.map +1 -0
  316. package/dist/env/project-env.d.ts +34 -0
  317. package/dist/env/project-env.d.ts.map +1 -0
  318. package/dist/env/project-env.js +45 -0
  319. package/dist/env/project-env.js.map +1 -0
  320. package/dist/env/runners.d.ts +22 -0
  321. package/dist/env/runners.d.ts.map +1 -0
  322. package/dist/env/runners.js +4 -0
  323. package/dist/env/runners.js.map +1 -0
  324. package/dist/env/writer.d.ts +7 -0
  325. package/dist/env/writer.d.ts.map +1 -0
  326. package/dist/env/writer.js +9 -0
  327. package/dist/env/writer.js.map +1 -0
  328. package/dist/errors.d.ts +31 -0
  329. package/dist/errors.d.ts.map +1 -0
  330. package/dist/errors.js +111 -0
  331. package/dist/errors.js.map +1 -0
  332. package/dist/help.d.ts +5 -0
  333. package/dist/help.d.ts.map +1 -0
  334. package/dist/help.js +61 -0
  335. package/dist/help.js.map +1 -0
  336. package/dist/index.d.ts +13 -0
  337. package/dist/index.d.ts.map +1 -0
  338. package/dist/index.js +13 -0
  339. package/dist/index.js.map +1 -0
  340. package/dist/init/augment-scaffolder.d.ts +86 -0
  341. package/dist/init/augment-scaffolder.d.ts.map +1 -0
  342. package/dist/init/augment-scaffolder.js +538 -0
  343. package/dist/init/augment-scaffolder.js.map +1 -0
  344. package/dist/init/dependency-specs.d.ts +58 -0
  345. package/dist/init/dependency-specs.d.ts.map +1 -0
  346. package/dist/init/dependency-specs.js +153 -0
  347. package/dist/init/dependency-specs.js.map +1 -0
  348. package/dist/init/gitignore-patcher.d.ts +23 -0
  349. package/dist/init/gitignore-patcher.d.ts.map +1 -0
  350. package/dist/init/gitignore-patcher.js +103 -0
  351. package/dist/init/gitignore-patcher.js.map +1 -0
  352. package/dist/init/mode-detect.d.ts +34 -0
  353. package/dist/init/mode-detect.d.ts.map +1 -0
  354. package/dist/init/mode-detect.js +115 -0
  355. package/dist/init/mode-detect.js.map +1 -0
  356. package/dist/init/package-json-patcher.d.ts +36 -0
  357. package/dist/init/package-json-patcher.d.ts.map +1 -0
  358. package/dist/init/package-json-patcher.js +128 -0
  359. package/dist/init/package-json-patcher.js.map +1 -0
  360. package/dist/init/pnpm-workspace-patcher.d.ts +55 -0
  361. package/dist/init/pnpm-workspace-patcher.d.ts.map +1 -0
  362. package/dist/init/pnpm-workspace-patcher.js +248 -0
  363. package/dist/init/pnpm-workspace-patcher.js.map +1 -0
  364. package/dist/init/pyproject-patcher.d.ts +56 -0
  365. package/dist/init/pyproject-patcher.d.ts.map +1 -0
  366. package/dist/init/pyproject-patcher.js +324 -0
  367. package/dist/init/pyproject-patcher.js.map +1 -0
  368. package/dist/init/python-augment.d.ts +22 -0
  369. package/dist/init/python-augment.d.ts.map +1 -0
  370. package/dist/init/python-augment.js +300 -0
  371. package/dist/init/python-augment.js.map +1 -0
  372. package/dist/init/template-files.d.ts +18 -0
  373. package/dist/init/template-files.d.ts.map +1 -0
  374. package/dist/init/template-files.js +53 -0
  375. package/dist/init/template-files.js.map +1 -0
  376. package/dist/key/defaults.d.ts +3 -0
  377. package/dist/key/defaults.d.ts.map +1 -0
  378. package/dist/key/defaults.js +60 -0
  379. package/dist/key/defaults.js.map +1 -0
  380. package/dist/key/fingerprint.d.ts +6 -0
  381. package/dist/key/fingerprint.d.ts.map +1 -0
  382. package/dist/key/fingerprint.js +25 -0
  383. package/dist/key/fingerprint.js.map +1 -0
  384. package/dist/key/paths.d.ts +30 -0
  385. package/dist/key/paths.d.ts.map +1 -0
  386. package/dist/key/paths.js +51 -0
  387. package/dist/key/paths.js.map +1 -0
  388. package/dist/key/runners.d.ts +60 -0
  389. package/dist/key/runners.d.ts.map +1 -0
  390. package/dist/key/runners.js +4 -0
  391. package/dist/key/runners.js.map +1 -0
  392. package/dist/main.d.ts +113 -0
  393. package/dist/main.d.ts.map +1 -0
  394. package/dist/main.js +199 -0
  395. package/dist/main.js.map +1 -0
  396. package/dist/mcp/launcher.d.ts +143 -0
  397. package/dist/mcp/launcher.d.ts.map +1 -0
  398. package/dist/mcp/launcher.js +393 -0
  399. package/dist/mcp/launcher.js.map +1 -0
  400. package/dist/mcp/preset-loader.d.ts +29 -0
  401. package/dist/mcp/preset-loader.d.ts.map +1 -0
  402. package/dist/mcp/preset-loader.js +217 -0
  403. package/dist/mcp/preset-loader.js.map +1 -0
  404. package/dist/mcp/preset-types.d.ts +71 -0
  405. package/dist/mcp/preset-types.d.ts.map +1 -0
  406. package/dist/mcp/preset-types.js +4 -0
  407. package/dist/mcp/preset-types.js.map +1 -0
  408. package/dist/mcp/presets/README.md +68 -0
  409. package/dist/mcp/presets/postgres.json +15 -0
  410. package/dist/output.d.ts +26 -0
  411. package/dist/output.d.ts.map +1 -0
  412. package/dist/output.js +46 -0
  413. package/dist/output.js.map +1 -0
  414. package/dist/pack-config.d.ts +37 -0
  415. package/dist/pack-config.d.ts.map +1 -0
  416. package/dist/pack-config.js +65 -0
  417. package/dist/pack-config.js.map +1 -0
  418. package/dist/package-manager.d.ts +33 -0
  419. package/dist/package-manager.d.ts.map +1 -0
  420. package/dist/package-manager.js +129 -0
  421. package/dist/package-manager.js.map +1 -0
  422. package/dist/parse.d.ts +88 -0
  423. package/dist/parse.d.ts.map +1 -0
  424. package/dist/parse.js +100 -0
  425. package/dist/parse.js.map +1 -0
  426. package/dist/providers/preset-loader.d.ts +47 -0
  427. package/dist/providers/preset-loader.d.ts.map +1 -0
  428. package/dist/providers/preset-loader.js +107 -0
  429. package/dist/providers/preset-loader.js.map +1 -0
  430. package/dist/providers/presets/anthropic.json +47 -0
  431. package/dist/providers/presets/gemini.json +40 -0
  432. package/dist/reference.d.ts +28 -0
  433. package/dist/reference.d.ts.map +1 -0
  434. package/dist/reference.js +52 -0
  435. package/dist/reference.js.map +1 -0
  436. package/dist/sdk-package.d.ts +9 -0
  437. package/dist/sdk-package.d.ts.map +1 -0
  438. package/dist/sdk-package.js +20 -0
  439. package/dist/sdk-package.js.map +1 -0
  440. package/dist/sdk-skills/kindgi-authoring-agents/SKILL.md +252 -0
  441. package/dist/sdk-skills/kindgi-authoring-flows/SKILL.md +302 -0
  442. package/dist/sdk-skills/kindgi-authoring-guardrails/SKILL.md +297 -0
  443. package/dist/sdk-skills/kindgi-authoring-mcp-servers/SKILL.md +289 -0
  444. package/dist/sdk-skills/kindgi-authoring-providers/SKILL.md +705 -0
  445. package/dist/sdk-skills/kindgi-authoring-tools/SKILL.md +298 -0
  446. package/dist/sdk-skills/kindgi-framework-feedback/SKILL.md +211 -0
  447. package/dist/sdk-skills/kindgi-getting-started/SKILL.md +189 -0
  448. package/dist/sdk-skills/kindgi-python-authoring-agents/SKILL.md +205 -0
  449. package/dist/sdk-skills/kindgi-python-authoring-flows/SKILL.md +325 -0
  450. package/dist/sdk-skills/kindgi-python-authoring-guardrails/SKILL.md +176 -0
  451. package/dist/sdk-skills/kindgi-python-authoring-tools/SKILL.md +305 -0
  452. package/dist/sdk-skills/kindgi-python-getting-started/SKILL.md +242 -0
  453. package/dist/stop-signal.d.ts +15 -0
  454. package/dist/stop-signal.d.ts.map +1 -0
  455. package/dist/stop-signal.js +16 -0
  456. package/dist/stop-signal.js.map +1 -0
  457. package/dist/templates/minimal/.nvmrc +1 -0
  458. package/dist/templates/minimal/AGENTS.md +23 -0
  459. package/dist/templates/minimal/README.md.tmpl +69 -0
  460. package/dist/templates/minimal/agents/.gitkeep +0 -0
  461. package/dist/templates/minimal/flows/.gitkeep +0 -0
  462. package/dist/templates/minimal/gitignore +8 -0
  463. package/dist/templates/minimal/guardrails/.gitkeep +0 -0
  464. package/dist/templates/minimal/kindgi.config.ts.tmpl +44 -0
  465. package/dist/templates/minimal/package.json.tmpl +25 -0
  466. package/dist/templates/minimal/pnpm-workspace.yaml +8 -0
  467. package/dist/templates/minimal/tools/.gitkeep +0 -0
  468. package/dist/templates/minimal/tsconfig.json.tmpl +27 -0
  469. package/dist/templates/minimal/vitest.config.ts.tmpl +14 -0
  470. package/dist/templates/python/AGENTS.md +30 -0
  471. package/dist/templates/python/README.md.tmpl +56 -0
  472. package/dist/templates/python/agents/echo_agent.py.tmpl +23 -0
  473. package/dist/templates/python/flows/echo_flow.py.tmpl +17 -0
  474. package/dist/templates/python/gitignore +9 -0
  475. package/dist/templates/python/guardrails/response_not_empty.py.tmpl +27 -0
  476. package/dist/templates/python/pyproject.toml.tmpl +42 -0
  477. package/dist/templates/python/tests/test_tools.py.tmpl +22 -0
  478. package/dist/templates/python/tools/echo.py.tmpl +27 -0
  479. package/dist/templates/python/tools/greet.py.tmpl +20 -0
  480. package/dist/templates/sample/.nvmrc +1 -0
  481. package/dist/templates/sample/AGENTS.md +23 -0
  482. package/dist/templates/sample/README.md.tmpl +85 -0
  483. package/dist/templates/sample/agents/echo-agent/index.ts.tmpl +34 -0
  484. package/dist/templates/sample/flows/echo-flow/index.ts.tmpl +59 -0
  485. package/dist/templates/sample/gitignore +8 -0
  486. package/dist/templates/sample/guardrails/response-not-empty/index.ts.tmpl +58 -0
  487. package/dist/templates/sample/kindgi.config.ts.tmpl +41 -0
  488. package/dist/templates/sample/package.json.tmpl +25 -0
  489. package/dist/templates/sample/pnpm-workspace.yaml +8 -0
  490. package/dist/templates/sample/tools/echo/index.test.ts.tmpl +31 -0
  491. package/dist/templates/sample/tools/echo/index.ts.tmpl +37 -0
  492. package/dist/templates/sample/tools/fetch-httpbin/index.ts.tmpl +60 -0
  493. package/dist/templates/sample/tools/greet/index.ts.tmpl +35 -0
  494. package/dist/templates/sample/tsconfig.json.tmpl +27 -0
  495. package/dist/templates/sample/vitest.config.ts.tmpl +14 -0
  496. package/dist/terminal-input.d.ts +17 -0
  497. package/dist/terminal-input.d.ts.map +1 -0
  498. package/dist/terminal-input.js +88 -0
  499. package/dist/terminal-input.js.map +1 -0
  500. package/dist/test/defaults.d.ts +3 -0
  501. package/dist/test/defaults.d.ts.map +1 -0
  502. package/dist/test/defaults.js +104 -0
  503. package/dist/test/defaults.js.map +1 -0
  504. package/dist/test/runners.d.ts +60 -0
  505. package/dist/test/runners.d.ts.map +1 -0
  506. package/dist/test/runners.js +4 -0
  507. package/dist/test/runners.js.map +1 -0
  508. package/dist/version-info.d.ts +9 -0
  509. package/dist/version-info.d.ts.map +1 -0
  510. package/dist/version-info.js +27 -0
  511. package/dist/version-info.js.map +1 -0
  512. package/dist/write-fully.d.ts +13 -0
  513. package/dist/write-fully.d.ts.map +1 -0
  514. package/dist/write-fully.js +17 -0
  515. package/dist/write-fully.js.map +1 -0
  516. package/package.json +63 -4
@@ -0,0 +1,235 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright (C) 2026 Kindgi Inc.
3
+ /**
4
+ * `kindgi dev`'s bundler: every primitive file, with everything it
5
+ * imports, bundled into `.kindgi/dev/dist` by esbuild — so tsconfig
6
+ * `paths` (`@/…`), extensionless imports and the pack's own modules work
7
+ * as they do under the app's own build. What resolves into
8
+ * `node_modules` stays external (see `nodeModulesExternalPlugin`).
9
+ *
10
+ * In watch mode esbuild rebuilds when any file a bundle read changes —
11
+ * not only the discovery folders. A rebuild is reported when the files
12
+ * it read differ from those of the last build reported (so watch mode's
13
+ * own first build, right after `build()`, is not reported twice), and
14
+ * whenever it fails.
15
+ * Adding or removing a primitive file changes the entry points, so
16
+ * `syncEntries()` recreates the build. When the last primitive file is
17
+ * removed there is nothing for esbuild to build or watch, so the (empty)
18
+ * build is reported directly — the refresh then publishes an empty index.
19
+ *
20
+ * Each build says which packages the code loads from `node_modules`
21
+ * (`externals`), by the same rule as a pack image's bundles. An image
22
+ * bundles the pack's config too, so the config's own are added: it is
23
+ * bundled for them once, as `kindgi dev` reads the config once.
24
+ */
25
+ import { stat } from 'node:fs/promises';
26
+ import { relative, resolve, sep } from 'node:path';
27
+ import { REQUIRE_BANNER, collectPackEntries, nodeModulesExternalPlugin, } from '../build/bundle.js';
28
+ import { devDistDir } from './paths.js';
29
+ export function createDevPackBuilder(options) {
30
+ const outDir = devDistDir(options.packDir);
31
+ let context;
32
+ let entries = [];
33
+ let entriesKey;
34
+ let listener;
35
+ /** What the last reported build read: each input's path, size and mtime. */
36
+ let reportedInputs;
37
+ /** The externals of the build running now (a new map per build, read once it ends). */
38
+ let importing = new Map();
39
+ let configImporting;
40
+ const configExternals = () => {
41
+ configImporting ??= configExternalsOf(options.packDir, options.configPath);
42
+ return configImporting;
43
+ };
44
+ const externalsOf = async (code) => listExternals([code, await configExternals()], options.packDir);
45
+ /** Each build starts with no externals; `nodeModulesExternalPlugin` records them. */
46
+ const collector = {
47
+ name: 'kindgi-dev-externals',
48
+ setup(build) {
49
+ build.onStart(() => {
50
+ importing = new Map();
51
+ });
52
+ },
53
+ };
54
+ /** Each build's outcome, for the listener while watching. */
55
+ const reporter = {
56
+ name: 'kindgi-dev-build-report',
57
+ setup(build) {
58
+ build.onEnd(async (result) => {
59
+ if (listener === undefined)
60
+ return;
61
+ const code = importing;
62
+ const read = result.errors.length > 0 ? undefined : await inputsOf(result, options.packDir);
63
+ if (read !== undefined && read === reportedInputs)
64
+ return;
65
+ reportedInputs = read;
66
+ const outcome = outcomeOf(result, entries, options.packDir, await externalsOf(code));
67
+ listener?.(outcome);
68
+ });
69
+ },
70
+ };
71
+ /** Recreate the esbuild context when the entry points changed. */
72
+ async function ensureContext() {
73
+ const found = await collectPackEntries(options.packDir, options.patterns);
74
+ const key = JSON.stringify(found.map((e) => e.sourceRel));
75
+ if (context !== undefined && key === entriesKey)
76
+ return false;
77
+ const esbuild = await import('esbuild');
78
+ await context?.dispose();
79
+ entries = found;
80
+ entriesKey = key;
81
+ context = await esbuild.context({
82
+ absWorkingDir: options.packDir,
83
+ entryPoints: found.map((e) => ({ in: e.abs, out: e.outRel })),
84
+ outdir: outDir,
85
+ outExtension: { '.js': '.mjs' },
86
+ bundle: true,
87
+ format: 'esm',
88
+ platform: 'node',
89
+ target: 'node22',
90
+ sourcemap: 'linked',
91
+ banner: { js: REQUIRE_BANNER },
92
+ plugins: [
93
+ collector,
94
+ nodeModulesExternalPlugin({
95
+ onExternal: (name, importer) => add(importing, name, importer),
96
+ }),
97
+ reporter,
98
+ ],
99
+ metafile: true,
100
+ logLevel: 'silent',
101
+ });
102
+ return true;
103
+ }
104
+ return {
105
+ async build() {
106
+ await ensureContext();
107
+ if (context === undefined) {
108
+ return { kind: 'ok', bundleMap: {}, externals: await externalsOf(new Map()) };
109
+ }
110
+ try {
111
+ const result = await context.rebuild();
112
+ const code = importing;
113
+ reportedInputs = await inputsOf(result, options.packDir);
114
+ return outcomeOf(result, entries, options.packDir, await externalsOf(code));
115
+ }
116
+ catch (failure) {
117
+ return failed(failure.errors ?? [], failure);
118
+ }
119
+ },
120
+ async watch(onBuild) {
121
+ listener = onBuild;
122
+ await context?.watch();
123
+ },
124
+ async syncEntries() {
125
+ const changed = await ensureContext();
126
+ if (!changed || listener === undefined)
127
+ return changed;
128
+ if (entries.length === 0) {
129
+ reportedInputs = '';
130
+ const externals = await externalsOf(new Map());
131
+ listener?.({ kind: 'ok', bundleMap: {}, externals });
132
+ }
133
+ else {
134
+ // A new context doesn't watch yet; watching triggers its first build.
135
+ await context?.watch();
136
+ }
137
+ return changed;
138
+ },
139
+ async dispose() {
140
+ listener = undefined;
141
+ await context?.dispose();
142
+ context = undefined;
143
+ },
144
+ };
145
+ }
146
+ /**
147
+ * A build's outcome: each primitive's source path (as the index records
148
+ * it) mapped to its bundle, both relative to the pack root, and the
149
+ * externals — or the errors, each located `file:line:column`.
150
+ */
151
+ function outcomeOf(result, entries, packDir, externals) {
152
+ if (result.errors.length > 0)
153
+ return failed(result.errors, undefined);
154
+ const bundleMap = {};
155
+ const outDir = devDistDir(packDir);
156
+ for (const entry of entries) {
157
+ bundleMap[entry.sourceRel] = toPosix(relative(packDir, `${outDir}/${entry.outRel}.mjs`));
158
+ }
159
+ return { kind: 'ok', bundleMap, externals };
160
+ }
161
+ /**
162
+ * What the config imports from `node_modules`: bundled in memory, by the
163
+ * externals rule. A config that doesn't bundle adds nothing here (`kindgi
164
+ * build` reports it).
165
+ */
166
+ async function configExternalsOf(packDir, configPath) {
167
+ const found = new Map();
168
+ if (configPath === undefined)
169
+ return found;
170
+ const esbuild = await import('esbuild');
171
+ try {
172
+ await esbuild.build({
173
+ absWorkingDir: packDir,
174
+ entryPoints: [configPath],
175
+ bundle: true,
176
+ write: false,
177
+ format: 'esm',
178
+ platform: 'node',
179
+ target: 'node22',
180
+ logLevel: 'silent',
181
+ plugins: [
182
+ nodeModulesExternalPlugin({ onExternal: (name, importer) => add(found, name, importer) }),
183
+ ],
184
+ });
185
+ }
186
+ catch {
187
+ return new Map();
188
+ }
189
+ return found;
190
+ }
191
+ function add(importers, name, importer) {
192
+ const files = importers.get(name) ?? new Set();
193
+ files.add(importer);
194
+ importers.set(name, files);
195
+ }
196
+ /** The externals, merged, sorted by name; importers relative to the pack root. */
197
+ function listExternals(sets, packDir) {
198
+ const merged = new Map();
199
+ for (const set of sets) {
200
+ for (const [name, files] of set)
201
+ for (const file of files)
202
+ add(merged, name, file);
203
+ }
204
+ return [...merged.keys()].sort().map((name) => ({
205
+ name,
206
+ importers: [...(merged.get(name) ?? [])].map((file) => toPosix(relative(packDir, file))).sort(),
207
+ }));
208
+ }
209
+ /** Every file a build read, with its size and mtime — equal when nothing changed. */
210
+ async function inputsOf(result, packDir) {
211
+ const inputs = Object.keys(result.metafile?.inputs ?? {}).sort();
212
+ const stamped = await Promise.all(inputs.map(async (input) => {
213
+ try {
214
+ const s = await stat(resolve(packDir, input));
215
+ return `${input}:${s.size}:${s.mtimeMs}`;
216
+ }
217
+ catch {
218
+ return `${input}:-`;
219
+ }
220
+ }));
221
+ return stamped.join('\n');
222
+ }
223
+ function failed(errors, cause) {
224
+ const located = errors.map((e) => e.location === null
225
+ ? e.text
226
+ : `${e.location.file}:${e.location.line}:${e.location.column}: ${e.text}`);
227
+ return {
228
+ kind: 'err',
229
+ errors: located.length > 0 ? located : [cause instanceof Error ? cause.message : String(cause)],
230
+ };
231
+ }
232
+ function toPosix(path) {
233
+ return path.split(sep).join('/');
234
+ }
235
+ //# sourceMappingURL=bundler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundler.js","sourceRoot":"","sources":["../../src/dev/bundler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,140 @@
1
+ import type { FSWatcher } from 'node:fs';
2
+ import { watch } from 'node:fs/promises';
3
+ import { runIndexer as runIndexerReal } from '@kindgi/handler-runtime';
4
+ import { type PackCode } from './pack-code.js';
5
+ import { type DockerRunner } from './postgres-container.js';
6
+ import type { DevPackService, DevPackServiceOptions, DevRunners, IndexResult, IndexerRunOptions, PackBuilder, RunningApiServer, StartApiServerOptions, StartServicesResult, WatchHandle } from './runners.js';
7
+ import { type RuntimeNetwork } from './runtime-container.js';
8
+ /**
9
+ * The pack-service process for the pack's code: the Node pack service
10
+ * (loading the bundles in `.kindgi/dev/dist`, stack traces mapped back to
11
+ * the sources), or `python -m kindgi.pack serve` with the pack's Python.
12
+ */
13
+ export declare function packServiceCommand(code: PackCode): readonly [string, ...string[]];
14
+ /**
15
+ * The pack service as a child process behind the supervisor's front. The
16
+ * runtime calls the front over HTTP, the same address however often the
17
+ * code is swapped (it retries while the front answers 503 mid-swap).
18
+ */
19
+ export declare function createPackServiceReal(opts: DevPackServiceOptions): DevPackService;
20
+ /** The builder for the pack's code: esbuild bundles (Node) or the sources (Python). */
21
+ export declare function createPackBuilderReal(opts: {
22
+ readonly packDir: string;
23
+ readonly patterns: readonly string[];
24
+ readonly configPath?: string;
25
+ readonly code: PackCode;
26
+ readonly env: () => Promise<Readonly<Record<string, string>>>;
27
+ }): PackBuilder;
28
+ export interface PythonIndexerOptions {
29
+ readonly packDir: string;
30
+ readonly outputPath: string;
31
+ /** The pack's interpreter (an argv prefix). */
32
+ readonly python: readonly [string, ...string[]];
33
+ readonly env: Readonly<Record<string, string>>;
34
+ /** Pins for a reproducible index (`kindgi build`). */
35
+ readonly artifactVersion?: string;
36
+ readonly publishedAt?: string;
37
+ }
38
+ /**
39
+ * `python -m kindgi.pack index` with the pack's Python and an environment,
40
+ * read back like the Node indexer's: the same one-line outcome, then the
41
+ * written index.
42
+ */
43
+ export declare function runPythonIndexer(opts: PythonIndexerOptions): Promise<IndexResult>;
44
+ /** Swap the staged index in: the dev index changes in one step (a rename). */
45
+ export declare function publishIndexReal(stagedPath: string, indexPath: string): Promise<void>;
46
+ /**
47
+ * The Kindgi runtime, as a container: pull the image if needed, write
48
+ * `runtime.env`, start it with the pack directory mounted, and wait until
49
+ * it serves. The runtime makes or loads its own public run token key;
50
+ * the developer's key file, if set, and their Google credentials are
51
+ * mounted read-only.
52
+ */
53
+ export declare function startApiServerContainerReal(opts: StartApiServerOptions): Promise<RunningApiServer>;
54
+ /**
55
+ * A runtime the developer runs themselves (`--runtime-url`), typically
56
+ * from source: write `runtime.env` with this machine's paths (the server
57
+ * binds loopback, no alias), then wait until the runtime at the URL
58
+ * serves and takes this session's dev token. Its lifetime isn't ours:
59
+ * `shutdown` leaves it running.
60
+ */
61
+ export declare function attachToRuntimeReal(opts: StartApiServerOptions & {
62
+ readonly runtimeUrl: string;
63
+ }): Promise<RunningApiServer>;
64
+ /** The runtime `kindgi dev` talks to: a container, or the developer's own (`--runtime-url`). */
65
+ export declare function startApiServerReal(opts: StartApiServerOptions): Promise<RunningApiServer>;
66
+ /**
67
+ * Postgres as the container reaches it. Through the alias the container
68
+ * can't see the host's loopback, and a database connection isn't HTTP
69
+ * (the runtime's alias covers HTTP only), so a loopback host becomes
70
+ * `host.docker.internal` here.
71
+ */
72
+ export declare function databaseUrlFrom(url: string, network: RuntimeNetwork): string;
73
+ /**
74
+ * The developer's Google Application Default Credentials, mounted
75
+ * read-only (Kindgi keeps no key files of its own): `GOOGLE_APPLICATION_CREDENTIALS`
76
+ * if set, else the file `gcloud auth application-default login` writes.
77
+ */
78
+ export declare function googleCredentialsPath(hostEnv: Readonly<Record<string, string | undefined>>): string | undefined;
79
+ /**
80
+ * Run the indexer against a pack root. `runIndexer` writes an
81
+ * `index.json` on the pack root by default; we tolerate the write and
82
+ * read the bytes back so callers get the parsed manifest without a
83
+ * second walk. Failures are captured as typed `IndexFailure` — the
84
+ * function never throws.
85
+ */
86
+ export declare function runIndexerReadReal(packDir: string, outputPath?: string, options?: IndexerRunOptions): Promise<IndexResult>;
87
+ /**
88
+ * Watch the pack's discovery patterns for changes. Watches each
89
+ * pattern's static prefix (`kindgi/tools` for `kindgi/tools/**\/*.ts`) —
90
+ * never the whole host repo when the pack is embedded in an app — and
91
+ * fires only for paths a pattern matches, so the indexer's own output
92
+ * and unrelated files never trigger a re-index. `patterns` defaults to
93
+ * the indexer's `DEFAULT_DISCOVERY`.
94
+ *
95
+ * Uses `node:fs.watch({ recursive: true })` — dependency-free; on
96
+ * macOS + Linux this delivers reliable change events. Windows behavior
97
+ * is a known-good path per the Node docs but not exercised in CI.
98
+ *
99
+ * A single debounce timer is shared across every event → the callback
100
+ * fires at most once per debounce window. Roots that don't exist yet
101
+ * are skipped.
102
+ */
103
+ export declare function watchPackReal(packDir: string, onChange: () => void, opts?: {
104
+ readonly debounceMs?: number;
105
+ readonly patterns?: readonly string[];
106
+ readonly files?: readonly string[];
107
+ }): Promise<WatchHandle>;
108
+ /**
109
+ * Boot the bundled services with plain `docker compose`, in the
110
+ * `kindgi-dev` project:
111
+ *
112
+ * 1. `up -d --wait` Postgres, which waits for its healthcheck;
113
+ * 2. read its published port back.
114
+ *
115
+ * Without compose (a Docker engine without the plugin), the same
116
+ * Postgres starts with plain `docker` (`postgres-container.ts`): the
117
+ * same names, so the data is shared whichever way it was started.
118
+ * `unavailable` only when docker itself doesn't work.
119
+ *
120
+ * Not testcontainers: its reaper (Ryuk) is handed the compose project
121
+ * and, when the process exits, deletes everything labelled with it —
122
+ * the named volumes too — so every restart came up empty. The data in
123
+ * the named volumes now survives `kindgi dev` restarts, as the
124
+ * monorepo's own dev services do (`docker compose up -d --wait`).
125
+ * Every `kindgi dev` on the machine shares them, so nothing here removes
126
+ * them; to wipe all dev data, `docker compose -p kindgi-dev down -v`.
127
+ * Containers left running by a killed `kindgi dev` are picked up by the
128
+ * next boot.
129
+ */
130
+ export declare function startServicesReal(options: {
131
+ readonly recreate: boolean;
132
+ }, run?: DockerRunner): Promise<StartServicesResult>;
133
+ /** Default wiring used by the `kindgi dev` command in production. */
134
+ export declare const REAL_DEV_RUNNERS: DevRunners;
135
+ export declare const _internals: {
136
+ readonly fsWatch: typeof watch;
137
+ readonly runIndexer: typeof runIndexerReal;
138
+ };
139
+ export type { FSWatcher };
140
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/dev/defaults.ts"],"names":[],"mappings":"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"}