@lark-base-open/base-database-cli 1.1.1 → 1.3.7

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 (222) hide show
  1. package/CHANGELOG.md +74 -0
  2. package/LICENSE +6 -0
  3. package/README.md +45 -27
  4. package/dist/ai-functions.d.ts +42 -0
  5. package/dist/ai-functions.d.ts.map +1 -0
  6. package/dist/ai-functions.js +327 -0
  7. package/dist/ai-functions.js.map +1 -0
  8. package/dist/archive.d.ts +21 -0
  9. package/dist/archive.d.ts.map +1 -1
  10. package/dist/archive.js +65 -10
  11. package/dist/archive.js.map +1 -1
  12. package/dist/auth.d.ts +5 -0
  13. package/dist/auth.d.ts.map +1 -1
  14. package/dist/auth.js +26 -3
  15. package/dist/auth.js.map +1 -1
  16. package/dist/check.d.ts +74 -0
  17. package/dist/check.d.ts.map +1 -0
  18. package/dist/check.js +283 -0
  19. package/dist/check.js.map +1 -0
  20. package/dist/dependency-policy.d.ts +10 -0
  21. package/dist/dependency-policy.d.ts.map +1 -0
  22. package/dist/dependency-policy.js +162 -0
  23. package/dist/dependency-policy.js.map +1 -0
  24. package/dist/deploy.d.ts +1 -0
  25. package/dist/deploy.d.ts.map +1 -1
  26. package/dist/deploy.js +122 -175
  27. package/dist/deploy.js.map +1 -1
  28. package/dist/environment-variables.d.ts +52 -0
  29. package/dist/environment-variables.d.ts.map +1 -0
  30. package/dist/environment-variables.js +563 -0
  31. package/dist/environment-variables.js.map +1 -0
  32. package/dist/environment.d.ts +1 -1
  33. package/dist/environment.js +1 -1
  34. package/dist/environment.js.map +1 -1
  35. package/dist/function-input-types.d.ts +10 -0
  36. package/dist/function-input-types.d.ts.map +1 -0
  37. package/dist/function-input-types.js +160 -0
  38. package/dist/function-input-types.js.map +1 -0
  39. package/dist/function-schema.d.ts.map +1 -1
  40. package/dist/function-schema.js +89 -36
  41. package/dist/function-schema.js.map +1 -1
  42. package/dist/init-field-retry.d.ts +17 -0
  43. package/dist/init-field-retry.d.ts.map +1 -0
  44. package/dist/init-field-retry.js +127 -0
  45. package/dist/init-field-retry.js.map +1 -0
  46. package/dist/init-journal.d.ts +98 -0
  47. package/dist/init-journal.d.ts.map +1 -0
  48. package/dist/init-journal.js +492 -0
  49. package/dist/init-journal.js.map +1 -0
  50. package/dist/init-schema.d.ts +8 -0
  51. package/dist/init-schema.d.ts.map +1 -0
  52. package/dist/init-schema.js +423 -0
  53. package/dist/init-schema.js.map +1 -0
  54. package/dist/init.d.ts +14 -0
  55. package/dist/init.d.ts.map +1 -1
  56. package/dist/init.js +883 -261
  57. package/dist/init.js.map +1 -1
  58. package/dist/lark-cli-error.d.ts +46 -0
  59. package/dist/lark-cli-error.d.ts.map +1 -0
  60. package/dist/lark-cli-error.js +171 -0
  61. package/dist/lark-cli-error.js.map +1 -0
  62. package/dist/lark-cli.d.ts +1 -1
  63. package/dist/lark-cli.d.ts.map +1 -1
  64. package/dist/lark-cli.js +66 -18
  65. package/dist/lark-cli.js.map +1 -1
  66. package/dist/mutation-schema.d.ts +146 -0
  67. package/dist/mutation-schema.d.ts.map +1 -0
  68. package/dist/mutation-schema.js +153 -0
  69. package/dist/mutation-schema.js.map +1 -0
  70. package/dist/mutation.d.ts +10 -0
  71. package/dist/mutation.d.ts.map +1 -0
  72. package/dist/mutation.js +131 -0
  73. package/dist/mutation.js.map +1 -0
  74. package/dist/npm.d.ts +1 -0
  75. package/dist/npm.d.ts.map +1 -1
  76. package/dist/npm.js +2 -2
  77. package/dist/npm.js.map +1 -1
  78. package/dist/preview-receipt.d.ts.map +1 -1
  79. package/dist/preview-receipt.js +15 -5
  80. package/dist/preview-receipt.js.map +1 -1
  81. package/dist/process.d.ts +3 -1
  82. package/dist/process.d.ts.map +1 -1
  83. package/dist/process.js +16 -4
  84. package/dist/process.js.map +1 -1
  85. package/dist/program.d.ts.map +1 -1
  86. package/dist/program.js +240 -41
  87. package/dist/program.js.map +1 -1
  88. package/dist/project-build.d.ts +25 -0
  89. package/dist/project-build.d.ts.map +1 -0
  90. package/dist/project-build.js +229 -0
  91. package/dist/project-build.js.map +1 -0
  92. package/dist/project-context.d.ts +344 -0
  93. package/dist/project-context.d.ts.map +1 -0
  94. package/dist/project-context.js +485 -0
  95. package/dist/project-context.js.map +1 -0
  96. package/dist/project-layout.d.ts +5 -0
  97. package/dist/project-layout.d.ts.map +1 -0
  98. package/dist/project-layout.js +24 -0
  99. package/dist/project-layout.js.map +1 -0
  100. package/dist/public-sql-error.d.ts +25 -0
  101. package/dist/public-sql-error.d.ts.map +1 -0
  102. package/dist/public-sql-error.js +81 -0
  103. package/dist/public-sql-error.js.map +1 -0
  104. package/dist/pull.d.ts.map +1 -1
  105. package/dist/pull.js +54 -15
  106. package/dist/pull.js.map +1 -1
  107. package/dist/site-readme.d.ts +3 -0
  108. package/dist/site-readme.d.ts.map +1 -0
  109. package/dist/site-readme.js +83 -0
  110. package/dist/site-readme.js.map +1 -0
  111. package/dist/workspace-fingerprint.d.ts +21 -1
  112. package/dist/workspace-fingerprint.d.ts.map +1 -1
  113. package/dist/workspace-fingerprint.js +81 -2
  114. package/dist/workspace-fingerprint.js.map +1 -1
  115. package/package.json +2 -1
  116. package/skills/lark-base-database/SKILL.md +66 -50
  117. package/skills/lark-base-database/references/ai-function.md +471 -0
  118. package/skills/lark-base-database/references/base-capability-routing.md +3 -3
  119. package/skills/lark-base-database/references/database-function-limitations.md +46 -0
  120. package/skills/lark-base-database/references/database-function.md +349 -0
  121. package/skills/lark-base-database/references/design/components/actions-fields.md +16 -0
  122. package/skills/lark-base-database/references/design/components/code/controls.css +122 -0
  123. package/skills/lark-base-database/references/design/components/code/controls.tsx +73 -0
  124. package/skills/lark-base-database/references/design/components/code/date-picker.tsx +42 -0
  125. package/skills/lark-base-database/references/design/components/code/floating.tsx +41 -0
  126. package/skills/lark-base-database/references/design/components/code/overlays.tsx +19 -0
  127. package/skills/lark-base-database/references/design/components/code/select.tsx +34 -0
  128. package/skills/lark-base-database/references/design/components/code/styles.d.ts +1 -0
  129. package/skills/lark-base-database/references/design/components/code/theme.css +49 -0
  130. package/skills/lark-base-database/references/design/components/code/usage.tsx +38 -0
  131. package/skills/lark-base-database/references/design/components/date-time-number.md +9 -0
  132. package/skills/lark-base-database/references/design/components/feedback-navigation.md +9 -0
  133. package/skills/lark-base-database/references/design/components/index.md +18 -0
  134. package/skills/lark-base-database/references/design/components/overlays.md +9 -0
  135. package/skills/lark-base-database/references/design/components/patterns/flat-business.md +7 -0
  136. package/skills/lark-base-database/references/design/components/selection.md +24 -0
  137. package/skills/lark-base-database/references/design/components.md +91 -0
  138. package/skills/lark-base-database/references/design/composition.md +90 -0
  139. package/skills/lark-base-database/references/design/control-recipes.md +107 -0
  140. package/skills/lark-base-database/references/design/examples.md +172 -0
  141. package/skills/lark-base-database/references/design/foundations.md +126 -0
  142. package/skills/lark-base-database/references/design/review.md +82 -0
  143. package/skills/lark-base-database/references/design/scenes/analysis-report.md +66 -0
  144. package/skills/lark-base-database/references/design/scenes/brand-showcase.md +70 -0
  145. package/skills/lark-base-database/references/design/scenes/business-operations.md +85 -0
  146. package/skills/lark-base-database/references/design/scenes/campaign-report.md +66 -0
  147. package/skills/lark-base-database/references/design/scenes/dashboard.md +77 -0
  148. package/skills/lark-base-database/references/design/scenes/festive-campaign.md +69 -0
  149. package/skills/lark-base-database/references/design/theme.md +27 -0
  150. package/skills/lark-base-database/references/design/typography.md +56 -0
  151. package/skills/lark-base-database/references/development.md +165 -32
  152. package/skills/lark-base-database/references/environment-variables.md +55 -0
  153. package/skills/lark-base-database/references/faas.md +41 -48
  154. package/skills/lark-base-database/references/file-transfer.md +25 -25
  155. package/skills/lark-base-database/references/frontend-design-guide.md +33 -77
  156. package/skills/lark-base-database/references/mutations.md +295 -0
  157. package/skills/lark-base-database/references/permission-design.md +24 -24
  158. package/skills/lark-base-database/references/release.md +51 -24
  159. package/skills/lark-base-database/references/style-guide.md +10 -67
  160. package/skills/lark-base-database/references/verification.md +15 -11
  161. package/skills/lark-base-database/references/workspace.md +46 -8
  162. package/templates/database-starter/README.md +34 -4
  163. package/templates/database-starter/database-functions/README.md +8 -0
  164. package/templates/database-starter/mutations/README.md +19 -0
  165. package/templates/database-starter/page/README.md +25 -19
  166. package/templates/database-starter/page/package-lock.json +8 -16
  167. package/templates/database-starter/page/package.json +2 -3
  168. package/templates/database-starter/page/src/App.tsx +23 -3
  169. package/templates/database-starter/page/src/components/UserSelectorEditor/index.tsx +32 -4
  170. package/templates/database-starter/page/src/components/UserSelectorPanel/index.tsx +104 -34
  171. package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.test.ts +55 -11
  172. package/templates/database-starter/page/src/components/UserSelectorPanel/user-search.ts +68 -25
  173. package/templates/database-starter/page/src/components/database-runtime-ready.tsx +1 -1
  174. package/templates/database-starter/page/src/components/database-user-menu/index.tsx +4 -7
  175. package/templates/database-starter/page/src/components/feedback/page-state.tsx +40 -5
  176. package/templates/database-starter/page/src/components/floating-button/assets/edit-active.svg +3 -0
  177. package/templates/database-starter/page/src/components/floating-button/assets/edit-default.svg +3 -0
  178. package/templates/database-starter/page/src/components/floating-button/index.tsx +75 -112
  179. package/templates/database-starter/page/src/components/floating-button/utils/project-meta.test.ts +107 -37
  180. package/templates/database-starter/page/src/components/floating-button/utils/project-meta.ts +13 -50
  181. package/templates/database-starter/page/src/components/ui-language.test.tsx +101 -0
  182. package/templates/database-starter/page/src/examples/ai-function/ImageTaskOperation.tsx +202 -0
  183. package/templates/database-starter/page/src/examples/ai-function/README.md +14 -0
  184. package/templates/database-starter/page/src/examples/ai-function/TextStreamOperation.tsx +184 -0
  185. package/templates/database-starter/page/src/examples/ai-function/ai-copy.ts +173 -0
  186. package/templates/database-starter/page/src/examples/ai-function/ai-delta.test.ts +30 -0
  187. package/templates/database-starter/page/src/examples/ai-function/ai-delta.ts +26 -0
  188. package/templates/database-starter/page/src/examples/ai-function/ai-language.test.tsx +86 -0
  189. package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.test.ts +201 -0
  190. package/templates/database-starter/page/src/examples/ai-function/ai-media-panel.tsx +382 -0
  191. package/templates/database-starter/page/src/lib/attachment-image.tsx +144 -0
  192. package/templates/database-starter/page/src/lib/database-function-inputs.generated.ts +4 -0
  193. package/templates/database-starter/page/src/lib/database-runtime-attachment.test.ts +180 -76
  194. package/templates/database-starter/page/src/lib/database-runtime.test.ts +130 -10
  195. package/templates/database-starter/page/src/lib/database-runtime.ts +484 -51
  196. package/templates/database-starter/page/src/lib/date-time.ts +61 -0
  197. package/templates/database-starter/page/src/lib/ui-language.ts +86 -0
  198. package/templates/database-starter/page/src/main.tsx +1 -1
  199. package/templates/database-starter/page/tsconfig.json +2 -2
  200. package/templates/database-starter/page/vite.config.ts +1 -2
  201. package/templates/database-starter/prettierignore +1 -1
  202. package/templates/database-starter/server-functions/README.md +2 -2
  203. package/templates/database-starter/server-functions/package-lock.json +4 -4
  204. package/templates/database-starter/server-functions/package.json +1 -1
  205. package/dist/agent-guide.d.ts +0 -19
  206. package/dist/agent-guide.d.ts.map +0 -1
  207. package/dist/agent-guide.js +0 -31
  208. package/dist/agent-guide.js.map +0 -1
  209. package/dist/database-skill.d.ts +0 -24
  210. package/dist/database-skill.d.ts.map +0 -1
  211. package/dist/database-skill.js +0 -148
  212. package/dist/database-skill.js.map +0 -1
  213. package/skills/lark-base-database/references/base-sql-unsupported.md +0 -42
  214. package/skills/lark-base-database/references/database-capability-skill.md +0 -40
  215. package/skills/lark-base-database/references/sql-function.md +0 -289
  216. package/templates/database-capability/SKILL.md.tmpl +0 -58
  217. package/templates/database-starter/page/src/components/floating-button/chatbot-entry.test.ts +0 -23
  218. package/templates/database-starter/page/src/components/floating-button/chatbot-entry.tsx +0 -873
  219. package/templates/database-starter/page/src/components/floating-button/local-chat-panel.test.ts +0 -25
  220. package/templates/database-starter/page/src/components/floating-button/local-chat-panel.tsx +0 -197
  221. package/templates/database-starter/page/src/components/floating-button/utils/env.ts +0 -18
  222. package/templates/database-starter/sql/README.md +0 -8
@@ -1,7 +1,7 @@
1
1
  import { createHash } from 'node:crypto';
2
2
  import { existsSync, mkdirSync, readFileSync, renameSync, rmSync, statSync, writeFileSync, } from 'node:fs';
3
3
  import { dirname, join } from 'node:path';
4
- import { WORKSPACE_INPUT_FINGERPRINT_ALGORITHM, workspaceInputFingerprint, } from './workspace-fingerprint.js';
4
+ import { DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM, LEGACY_DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM, WORKSPACE_INPUT_FINGERPRINT_ALGORITHM, deploymentInputFingerprint, legacyDeploymentInputFingerprint, workspaceInputFingerprint, } from './workspace-fingerprint.js';
5
5
  const PREVIEW_RECEIPT_VERSION = 2;
6
6
  function statePath(workspace, name) {
7
7
  return join(workspace, '.base-database-cli/state', name);
@@ -72,14 +72,24 @@ function verifyArtifact(receipt) {
72
72
  }
73
73
  function verifyWorkspace(workspace, receipt) {
74
74
  if (receipt.receiptVersion !== PREVIEW_RECEIPT_VERSION ||
75
- receipt.workspaceInputFingerprintAlgorithm !==
76
- WORKSPACE_INPUT_FINGERPRINT_ALGORITHM ||
77
75
  typeof receipt.workspaceInputFingerprint !== 'string' ||
78
76
  !/^[0-9a-f]{64}$/.test(receipt.workspaceInputFingerprint)) {
79
77
  throw new Error('The Preview receipt cannot verify the current application workspace; run `deploy` again before publishing Production');
80
78
  }
81
- if (workspaceInputFingerprint(workspace).sha256 !==
82
- receipt.workspaceInputFingerprint) {
79
+ const current = receipt.workspaceInputFingerprintAlgorithm ===
80
+ DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM
81
+ ? deploymentInputFingerprint(workspace)
82
+ : receipt.workspaceInputFingerprintAlgorithm ===
83
+ LEGACY_DEPLOYMENT_INPUT_FINGERPRINT_ALGORITHM
84
+ ? legacyDeploymentInputFingerprint(workspace)
85
+ : receipt.workspaceInputFingerprintAlgorithm ===
86
+ WORKSPACE_INPUT_FINGERPRINT_ALGORITHM
87
+ ? workspaceInputFingerprint(workspace)
88
+ : undefined;
89
+ if (!current) {
90
+ throw new Error('The Preview receipt cannot verify the current application workspace; run `deploy` again before publishing Production');
91
+ }
92
+ if (current.sha256 !== receipt.workspaceInputFingerprint) {
83
93
  throw new Error('The application workspace changed after Preview; run `deploy` again before publishing Production');
84
94
  }
85
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"preview-receipt.js","sourceRoot":"","sources":["../src/preview-receipt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preview-receipt.js","sourceRoot":"","sources":["../src/preview-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,UAAU,EACV,MAAM,EACN,QAAQ,EACR,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACL,sCAAsC,EACtC,6CAA6C,EAC7C,qCAAqC,EACrC,0BAA0B,EAC1B,gCAAgC,EAChC,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AA6BlC,SAAS,SAAS,CAAC,SAAiB,EAAE,IAAY;IAChD,OAAO,IAAI,CAAC,SAAS,EAAE,0BAA0B,EAAE,IAAI,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,kBAAkB;IACzB,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,mCAAmC,EAAE,IAAI,EAAE,CAAC;IAC5E,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAC;IACnC,IAAI,KAAc,CAAC;IACnB,IAAI,CAAC;QACH,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAY,CAAC;IACnE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,OAAO,GAAG,KAAoC,CAAC;IACrD,IACE,OAAO,OAAO,CAAC,aAAa,KAAK,QAAQ;QACzC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE;QACnC,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,GAAG;QAClC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACpD,CAAC,OAAO,CAAC,qBAAqB,IAAI,CAAC,CAAC,GAAG,CAAC,EACxC,CAAC;QACD,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,OAAO;QACL,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,qBAAqB,EAAE,OAAO,CAAC,qBAAsB;KACtD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAyB,EACzB,cAAyC;IAEzC,OAAO;QACL,GAAG,QAAQ;QACX,cAAc,EAAE,uBAAuB;QACvC,yBAAyB,EAAE,cAAc,CAAC,MAAM;QAChD,kCAAkC,EAAE,cAAc,CAAC,SAAS;QAC5D,uBAAuB,EAAE,cAAc,CAAC,SAAS;QACjD,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;KAChC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,KAAc;IACvD,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9C,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;IACvD,aAAa,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAChE,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,cAAsB;IACvD,IAAI,OAAuB,CAAC;IAC5B,IAAI,CAAC;QACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAmB,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,cAAc,CAAC,OAAuB;IAC7C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC;SACrC,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;SACtC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjB,IAAI,WAAW,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,SAAiB,EAAE,OAAuB;IACjE,IACE,OAAO,CAAC,cAAc,KAAK,uBAAuB;QAClD,OAAO,OAAO,CAAC,yBAAyB,KAAK,QAAQ;QACrD,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,EACzD,CAAC;QACD,MAAM,IAAI,KAAK,CACb,sHAAsH,CACvH,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GACX,OAAO,CAAC,kCAAkC;QAC1C,sCAAsC;QACpC,CAAC,CAAC,0BAA0B,CAAC,SAAS,CAAC;QACvC,CAAC,CAAC,OAAO,CAAC,kCAAkC;YACxC,6CAA6C;YAC/C,CAAC,CAAC,gCAAgC,CAAC,SAAS,CAAC;YAC7C,CAAC,CAAC,OAAO,CAAC,kCAAkC;gBACxC,qCAAqC;gBACvC,CAAC,CAAC,yBAAyB,CAAC,SAAS,CAAC;gBACtC,CAAC,CAAC,SAAS,CAAC;IACpB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,sHAAsH,CACvH,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,yBAAyB,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CACb,kGAAkG,CACnG,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,SAAiB,EACjB,QAAyB,EACzB,cAAyC;IAEzC,mBAAmB,CACjB,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,EAC5C,iBAAiB,CAAC,QAAQ,EAAE,cAAc,CAAC,CAC5C,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,QAAgB,EAChB,SAAiB,EACjB,SAAkB,EAClB,WAAoB;IAEpB,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;IACjE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,WAAW,CAC1B,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,4DAA4D,CAC7D,CAAC;QACF,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;QACJ,CAAC;QACD,aAAa,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACrC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzB,eAAe,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrC,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,OAAO,GAAG,WAAW,CACzB,WAAW,EACX,4DAA4D,CAC7D,CAAC;IACF,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CACb,8FAA8F,CAC/F,CAAC;IACJ,CAAC;IACD,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACpC,cAAc,CAAC,OAAO,CAAC,CAAC;IACxB,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG;QACd,GAAG,OAAO;QACV,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;KACtB,CAAC;IACF,mBAAmB,CAAC,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,+BAA+B,CAC7C,SAAiB,EACjB,QAAgB,EAChB,WAAoB;IAEpB,MAAM,OAAO,GAAG,WAAW,CACzB,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,EACpC,+CAA+C,CAChD,CAAC;IACF,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IACpC,cAAc,CAAC,OAAO,CAAC,CAAC;IACxB,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACpC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,QAAgB,EAChB,QAAgB,EAChB,SAAiB,EACjB,WAAoB;IAEpB,OAAO;QACL,QAAQ;QACR,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,QAAQ;QACR,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;QACzE,KAAK,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,IAAI;QAC9B,SAAS;KACV,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,OAAuB,EAAE,WAAoB;IAClE,IAAI,OAAO,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,+GAA+G,CAChH,CAAC;IACJ,CAAC;AACH,CAAC"}
package/dist/process.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  export declare class CommandExecutionError extends Error {
2
2
  readonly stderr: string;
3
3
  readonly exitCode: number | null;
4
- constructor(message: string, stderr: string, exitCode: number | null);
4
+ readonly stdout: string;
5
+ constructor(message: string, stderr: string, exitCode: number | null, stdout?: string);
5
6
  }
6
7
  export declare function runCommand(command: string, args: string[], options?: {
7
8
  cwd?: string;
@@ -13,5 +14,6 @@ export declare function runCommandAsync(command: string, args: string[], options
13
14
  cwd?: string;
14
15
  env?: NodeJS.ProcessEnv;
15
16
  captureStderr?: boolean;
17
+ captureOutput?: boolean;
16
18
  }): Promise<void>;
17
19
  //# sourceMappingURL=process.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAEA,qBAAa,qBAAsB,SAAQ,KAAK;IAG5C,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAHlC,YACE,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EAIjC;CACF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,MAAM,CAmBR;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,GACL,OAAO,CAAC,IAAI,CAAC,CA2Bf"}
1
+ {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAEA,qBAAa,qBAAsB,SAAQ,KAAK;IAG5C,QAAQ,CAAC,MAAM,EAAE,MAAM;IACvB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAChC,QAAQ,CAAC,MAAM;IAJjB,YACE,OAAO,EAAE,MAAM,EACN,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,MAAM,SAAK,EAIrB;CACF;AAED,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CACb,GACL,MAAM,CAmBR;AAED,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IACP,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACpB,GACL,OAAO,CAAC,IAAI,CAAC,CAqCf"}
package/dist/process.js CHANGED
@@ -2,10 +2,12 @@ import { spawn, spawnSync } from 'node:child_process';
2
2
  export class CommandExecutionError extends Error {
3
3
  stderr;
4
4
  exitCode;
5
- constructor(message, stderr, exitCode) {
5
+ stdout;
6
+ constructor(message, stderr, exitCode, stdout = '') {
6
7
  super(message);
7
8
  this.stderr = stderr;
8
9
  this.exitCode = exitCode;
10
+ this.stdout = stdout;
9
11
  this.name = 'CommandExecutionError';
10
12
  }
11
13
  }
@@ -30,15 +32,25 @@ export function runCommand(command, args, options = {}) {
30
32
  }
31
33
  export function runCommandAsync(command, args, options = {}) {
32
34
  return new Promise((resolve, reject) => {
35
+ const captureOutput = options.captureOutput === true;
33
36
  const child = spawn(command, args, {
34
37
  cwd: options.cwd,
35
38
  env: options.env,
36
- stdio: options.captureStderr ? ['inherit', 'inherit', 'pipe'] : 'inherit',
39
+ stdio: captureOutput
40
+ ? ['inherit', 'pipe', 'pipe']
41
+ : options.captureStderr
42
+ ? ['inherit', 'inherit', 'pipe']
43
+ : 'inherit',
37
44
  });
45
+ let stdout = '';
38
46
  let stderr = '';
47
+ child.stdout?.on('data', (chunk) => {
48
+ stdout = (stdout + chunk.toString('utf8')).slice(-16 * 1024);
49
+ });
39
50
  child.stderr?.on('data', (chunk) => {
40
51
  stderr = (stderr + chunk.toString('utf8')).slice(-16 * 1024);
41
- process.stderr.write(chunk);
52
+ if (!captureOutput)
53
+ process.stderr.write(chunk);
42
54
  });
43
55
  child.once('error', reject);
44
56
  child.once('close', (code, signal) => {
@@ -46,7 +58,7 @@ export function runCommandAsync(command, args, options = {}) {
46
58
  resolve();
47
59
  return;
48
60
  }
49
- reject(new CommandExecutionError(`${command} failed${signal ? ` with signal ${signal}` : ` with status ${String(code)}`}`, stderr, code));
61
+ reject(new CommandExecutionError(`${command} failed${signal ? ` with signal ${signal}` : ` with status ${String(code)}`}`, stderr, code, stdout));
50
62
  });
51
63
  });
52
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../src/process.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAGnC,MAAM;IACN,QAAQ;IACR,MAAM;IAJjB,YACE,OAAe,EACN,MAAc,EACd,QAAuB,EACvB,MAAM,GAAG,EAAE;QAEpB,KAAK,CAAC,OAAO,CAAC,CAAC;sBAJN,MAAM;wBACN,QAAQ;sBACR,MAAM;QAGf,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AAED,MAAM,UAAU,UAAU,CACxB,OAAe,EACf,IAAc,EACd,OAAO,GAKH,EAAE;IAEN,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE;QACtC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,QAAQ,EAAE,MAAM;QAChB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;KACzB,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,KAAK;QAAE,MAAM,MAAM,CAAC,KAAK,CAAC;IACrC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;aAC1C,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC;aACV,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CACb,MAAM,IAAI,GAAG,OAAO,uBAAuB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CACnE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,IAAc,EACd,OAAO,GAKH,EAAE;IAEN,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,KAAK,IAAI,CAAC;QACrD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE;YACjC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,KAAK,EAAE,aAAa;gBAClB,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC;gBAC7B,CAAC,CAAC,OAAO,CAAC,aAAa;oBACrB,CAAC,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;oBAChC,CAAC,CAAC,SAAS;SAChB,CAAC,CAAC;QACH,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACzC,MAAM,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;YACzC,MAAM,GAAG,CAAC,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;YAC7D,IAAI,CAAC,aAAa;gBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;YACD,MAAM,CACJ,IAAI,qBAAqB,CACvB,GAAG,OAAO,UAAU,MAAM,CAAC,CAAC,CAAC,gBAAgB,MAAM,EAAE,CAAC,CAAC,CAAC,gBAAgB,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,EACxF,MAAM,EACN,IAAI,EACJ,MAAM,CACP,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAI5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAgBvD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAMD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAoWT;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAO7D"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAc5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsBvD,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,SAAS,cAAc,EAAE,CAAC;IAC3C,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAaD,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAgpBT;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAW7D"}
package/dist/program.js CHANGED
@@ -1,15 +1,28 @@
1
+ import { readFileSync } from 'node:fs';
1
2
  import { Command, Option } from 'commander';
3
+ import { debugAIFunction, getAIFunction, getAIFunctionTask, getAIFunctionUsage, listAIFunctions, syncAIFunctions, validateAIFunction, } from './ai-functions.js';
2
4
  import { doctor, login, logout, whoami } from './auth.js';
5
+ import { CheckFailureError, checkProject } from './check.js';
3
6
  import { deploymentStatus, deployProject } from './deploy.js';
7
+ import { clearEnvironmentVariable, declareEnvironmentVariable, ENVIRONMENT_VARIABLE_TARGETS, ENVIRONMENT_VARIABLE_TYPES, listEnvironmentVariables, setEnvironmentVariable, } from './environment-variables.js';
4
8
  import { initializeProject } from './init.js';
5
- import { runProjectLarkCli, resolveLarkProfileEnvironment, } from './lark-cli.js';
9
+ import { InitFailureError } from './init-journal.js';
10
+ import { runProjectLarkCli } from './lark-cli.js';
6
11
  import { validateLarkProfile } from './profile-name.js';
7
12
  import { pullProject } from './pull.js';
13
+ import { getProjectContext, summarizeProjectContext, } from './project-context.js';
8
14
  import { installSkill } from './skill.js';
9
- import { discoveryArgs, installDatabaseSkill, invocationArgs, runDatabaseSkillRequest, } from './database-skill.js';
10
15
  function printJson(value) {
11
16
  process.stdout.write(`${JSON.stringify(value, null, 2)}\n`);
12
17
  }
18
+ class JsonOutputError extends Error {
19
+ output;
20
+ constructor(output) {
21
+ super('Command failed with structured JSON output');
22
+ this.output = output;
23
+ this.name = 'JsonOutputError';
24
+ }
25
+ }
13
26
  export function createBaseDatabaseProgram(options) {
14
27
  const [defaultProfile] = options.runtimeProfiles;
15
28
  if (!defaultProfile) {
@@ -82,44 +95,21 @@ export function createBaseDatabaseProgram(options) {
82
95
  printJson({ ok: true, installed });
83
96
  });
84
97
  }
85
- const databaseSkill = program
86
- .command('database-skill')
87
- .description('Install and use an application capability Skill without a project directory');
88
- databaseSkill
89
- .command('install')
90
- .requiredOption('--app-token <token>', 'Application token')
91
- .requiredOption('--title <title>', 'Application name used for Skill discovery')
92
- .option('--dir <directory>', 'Agent skills root (default: Codex user skills)')
93
- .action(async (args) => {
94
- const { larkProfile } = resolveLarkProfileEnvironment(await defaultProfile.commandEnvironment(), selectedLarkProfile(), undefined, defaultProfile);
95
- printJson({
96
- ok: true,
97
- skill: installDatabaseSkill({
98
- appToken: args.appToken,
99
- title: args.title,
100
- directory: args.dir,
101
- profile: defaultProfile,
102
- larkProfile,
103
- }),
98
+ program
99
+ .command('context')
100
+ .description('Print a local, read-only database project context snapshot')
101
+ .argument('[directory]', 'Project directory', '.')
102
+ .option('--json', 'Print JSON (accepted for explicit machine-readable use)', false)
103
+ .option('--summary', 'Omit workspace paths, fingerprints and per-resource details', false)
104
+ .addHelpText('after', '\nReads only local project configuration, Catalog, Function metadata and receipts. Does not authenticate, contact application APIs, build or deploy.')
105
+ .action((directory, commandOptions) => {
106
+ const context = getProjectContext({
107
+ directory,
108
+ cliVersion: options.version,
109
+ defaultEnvironment: defaultProfile.name,
110
+ larkProfile: selectedLarkProfile(),
104
111
  });
105
- });
106
- databaseSkill
107
- .command('discover')
108
- .requiredOption('--app-token <token>', 'Application token')
109
- .option('--page-size <count>', 'Functions per page', '20')
110
- .option('--page-token <token>', 'Opaque discovery cursor')
111
- .action(async (args) => {
112
- const request = discoveryArgs(args.appToken, Number(args.pageSize), args.pageToken);
113
- printJson(await runDatabaseSkillRequest(defaultProfile, request, selectedLarkProfile()));
114
- });
115
- databaseSkill
116
- .command('invoke')
117
- .requiredOption('--app-token <token>', 'Application token')
118
- .requiredOption('--function-id <id>', 'Discovered Function ID')
119
- .requiredOption('--params <json>', 'Raw business params as JSON (not an envelope)')
120
- .action(async (args) => {
121
- const request = invocationArgs(args.appToken, args.functionId, args.params);
122
- printJson(await runDatabaseSkillRequest(defaultProfile, request, selectedLarkProfile()));
112
+ printJson(commandOptions.summary ? summarizeProjectContext(context) : context);
123
113
  });
124
114
  program
125
115
  .command('init')
@@ -131,6 +121,7 @@ export function createBaseDatabaseProgram(options) {
131
121
  .requiredOption('--name <name>', 'Application name; also names a Base created with --schema')
132
122
  .option('--description <description>', 'Application description')
133
123
  .option('--time-zone <timeZone>', 'Base time zone', 'Asia/Shanghai')
124
+ .option('--resume', 'Resume the matching initialization receipt after read-only reconciliation', false)
134
125
  .addOption(environmentOption())
135
126
  .action(async (directory, commandOptions) => {
136
127
  const profile = runtimeProfile(commandOptions.env);
@@ -144,6 +135,7 @@ export function createBaseDatabaseProgram(options) {
144
135
  description: commandOptions.description,
145
136
  timeZone: commandOptions.timeZone,
146
137
  environment: commandOptions.env,
138
+ resume: commandOptions.resume,
147
139
  runtimeProfile: profile,
148
140
  }));
149
141
  });
@@ -163,6 +155,33 @@ export function createBaseDatabaseProgram(options) {
163
155
  runtimeProfile: profile,
164
156
  }));
165
157
  });
158
+ program
159
+ .command('check')
160
+ .description('Check local Function metadata, prepare dependencies and build Page/FaaS without deploying')
161
+ .argument('[directory]', 'Project directory', '.')
162
+ .option('--no-install', 'Reuse Page/FaaS dependencies; fail if missing')
163
+ .option('--force-install', 'Reinstall Page and FaaS dependencies', false)
164
+ .option('--force-build', 'Ignore successful Page/FaaS build cache', false)
165
+ .option('--json', 'Emit one JSON document on success or failure and capture build output', false)
166
+ .addHelpText('after', '\nUses the same npm installer and build scripts as deploy. Regenerates Page Function input types from local metadata, may install dependencies and write local build output; does not contact application APIs, change bindings, upload artifacts or publish. Server-side Database Function query validation is not run.')
167
+ .action(async (directory, commandOptions) => {
168
+ try {
169
+ printJson(await checkProject({
170
+ directory,
171
+ install: commandOptions.install,
172
+ forceInstall: commandOptions.forceInstall,
173
+ forceBuild: commandOptions.forceBuild,
174
+ json: commandOptions.json,
175
+ runtimeProfile: defaultProfile,
176
+ }));
177
+ }
178
+ catch (error) {
179
+ if (commandOptions.json && error instanceof CheckFailureError) {
180
+ throw new JsonOutputError(error.report);
181
+ }
182
+ throw error;
183
+ }
184
+ });
166
185
  program
167
186
  .command('deploy')
168
187
  .description('Build and publish the current database application')
@@ -187,10 +206,96 @@ export function createBaseDatabaseProgram(options) {
187
206
  });
188
207
  program
189
208
  .command('lark-cli')
190
- .description('Run lark-cli with the current project routing (debug only)')
209
+ .description('Run lark-cli with project routing; help, skills and schema discovery also work before init')
191
210
  .argument('[arguments...]', 'lark-cli arguments; ordinary JSON API responses are normalized')
192
211
  .allowUnknownOption()
193
212
  .action(async (args) => runProjectLarkCli(args, defaultProfile, selectedLarkProfile()));
213
+ const environmentVariables = program
214
+ .command('environment-variables')
215
+ .alias('env-vars')
216
+ .description('Manage database application environment variables through the current user');
217
+ const targetOption = (mandatory = false) => {
218
+ const option = new Option('--target <target>', 'FaaS runtime environment').choices([...ENVIRONMENT_VARIABLE_TARGETS]);
219
+ return mandatory ? option.makeOptionMandatory() : option.default('preview');
220
+ };
221
+ const typeOption = () => new Option('--type <type>', 'Environment variable type')
222
+ .choices([...ENVIRONMENT_VARIABLE_TYPES])
223
+ .makeOptionMandatory();
224
+ environmentVariables
225
+ .command('list')
226
+ .description('List Config values and masked Secret values')
227
+ .argument('[directory]', 'Project directory', '.')
228
+ .addOption(targetOption())
229
+ .action(async (directory, commandOptions) => printJson(await listEnvironmentVariables({
230
+ directory,
231
+ target: commandOptions.target,
232
+ runtimeProfile: defaultProfile,
233
+ larkProfile: selectedLarkProfile(),
234
+ })));
235
+ environmentVariables
236
+ .command('declare')
237
+ .description('Declare a Config or Secret without setting its value')
238
+ .argument('<name>', 'Environment variable name')
239
+ .argument('[directory]', 'Project directory', '.')
240
+ .addOption(targetOption(true))
241
+ .addOption(typeOption())
242
+ .requiredOption('--description <description>', 'Purpose shown to users')
243
+ .option('--required', 'Require a value before publishing')
244
+ .option('--optional', 'Allow publishing without a value')
245
+ .option('--force', 'Replace metadata for an existing shared definition after explicit confirmation', false)
246
+ .action(async (name, directory, commandOptions) => {
247
+ if (commandOptions.required === commandOptions.optional) {
248
+ throw new Error('Declare whether the variable is required or optional with exactly one of --required or --optional');
249
+ }
250
+ printJson(await declareEnvironmentVariable({
251
+ directory,
252
+ name,
253
+ target: commandOptions.target,
254
+ type: commandOptions.type,
255
+ description: commandOptions.description,
256
+ required: commandOptions.required === true,
257
+ force: commandOptions.force,
258
+ runtimeProfile: defaultProfile,
259
+ larkProfile: selectedLarkProfile(),
260
+ }));
261
+ });
262
+ environmentVariables
263
+ .command('set')
264
+ .description('Set one target-environment value for an existing definition')
265
+ .argument('<name>', 'Environment variable name')
266
+ .argument('[directory]', 'Project directory', '.')
267
+ .addOption(targetOption(true))
268
+ .option('--value-stdin', 'Read the value from standard input', false)
269
+ .action(async (name, directory, commandOptions) => {
270
+ if (!commandOptions.valueStdin) {
271
+ throw new Error('Use --value-stdin to provide the value');
272
+ }
273
+ const value = readFileSync(0, 'utf8').replace(/\r?\n$/, '');
274
+ if (value === '') {
275
+ throw new Error('Environment variable value cannot be empty');
276
+ }
277
+ printJson(await setEnvironmentVariable({
278
+ directory,
279
+ name,
280
+ target: commandOptions.target,
281
+ value,
282
+ runtimeProfile: defaultProfile,
283
+ larkProfile: selectedLarkProfile(),
284
+ }));
285
+ });
286
+ environmentVariables
287
+ .command('clear')
288
+ .description('Clear one value without deleting its shared definition')
289
+ .argument('<name>', 'Environment variable name')
290
+ .argument('[directory]', 'Project directory', '.')
291
+ .addOption(targetOption(true))
292
+ .action(async (name, directory, commandOptions) => printJson(await clearEnvironmentVariable({
293
+ directory,
294
+ name,
295
+ target: commandOptions.target,
296
+ runtimeProfile: defaultProfile,
297
+ larkProfile: selectedLarkProfile(),
298
+ })));
194
299
  const deployments = program
195
300
  .command('deployments')
196
301
  .description('Inspect database application deployments');
@@ -201,11 +306,105 @@ export function createBaseDatabaseProgram(options) {
201
306
  .argument('[directory]', 'Project directory', '.')
202
307
  .option('--wait', 'Poll until the task finishes', false)
203
308
  .action(async (publishId, directory, commandOptions) => printJson(await deploymentStatus(directory, publishId, commandOptions.wait, defaultProfile, selectedLarkProfile())));
309
+ const aiFunctions = program
310
+ .command('ai-functions')
311
+ .description('Manage AI Functions (function_type=4) declared under ai/');
312
+ aiFunctions
313
+ .command('list')
314
+ .description('List AI Functions')
315
+ .argument('[directory]', 'Project directory', '.')
316
+ .action(async (directory) => printJson(await listAIFunctions({ directory, runtimeProfile: defaultProfile })));
317
+ aiFunctions
318
+ .command('pull')
319
+ .description('Read one AI Function config for local editing / diff')
320
+ .argument('<function-key>', 'AI Function key')
321
+ .argument('[directory]', 'Project directory', '.')
322
+ .action(async (functionKey, directory) => printJson(await getAIFunction(functionKey, {
323
+ directory,
324
+ runtimeProfile: defaultProfile,
325
+ })));
326
+ aiFunctions
327
+ .command('sync')
328
+ .description('Full-cover sync local ai/ declarations to the Site')
329
+ .argument('[directory]', 'Project directory', '.')
330
+ .action(async (directory) => printJson(await syncAIFunctions({ directory, runtimeProfile: defaultProfile })));
331
+ aiFunctions
332
+ .command('validate')
333
+ .description('Static-validate one local AI Function before saving')
334
+ .argument('<function-key>', 'AI Function key')
335
+ .argument('[directory]', 'Project directory', '.')
336
+ .action(async (functionKey, directory) => printJson(await validateAIFunction(functionKey, {
337
+ directory,
338
+ runtimeProfile: defaultProfile,
339
+ })));
340
+ aiFunctions
341
+ .command('debug')
342
+ .description('Debug an AI Function via unary invoke or media task submit')
343
+ .argument('<function-key>', 'AI Function key')
344
+ .argument('[directory]', 'Project directory', '.')
345
+ .option('--env <env>', 'Runtime env (preview|prod)', 'preview')
346
+ .option('--variables <json>', 'Variables JSON object', '{}')
347
+ .option('--messages <json>', 'Messages JSON array (text/vision)', '[]')
348
+ .option('--input <json>', 'Input JSON object (image/video)', '{}')
349
+ .action(async (functionKey, directory, commandOptions) => {
350
+ const env = commandOptions.env === 'prod' ? 'prod' : 'preview';
351
+ printJson(await debugAIFunction(functionKey, {
352
+ directory,
353
+ env,
354
+ input: JSON.parse(commandOptions.input),
355
+ messages: JSON.parse(commandOptions.messages),
356
+ runtimeProfile: defaultProfile,
357
+ variables: JSON.parse(commandOptions.variables),
358
+ }));
359
+ });
360
+ aiFunctions
361
+ .command('task')
362
+ .description('Get an AI Function image or video task')
363
+ .argument('<function-key>', 'AI Function key')
364
+ .argument('<task-id>', 'Media task ID')
365
+ .argument('[directory]', 'Project directory', '.')
366
+ .option('--env <env>', 'Runtime env (preview|prod)', 'preview')
367
+ .action(async (functionKey, taskId, directory, commandOptions) => {
368
+ const env = commandOptions.env === 'prod' ? 'prod' : 'preview';
369
+ printJson(await getAIFunctionTask(functionKey, taskId, {
370
+ directory,
371
+ env,
372
+ runtimeProfile: defaultProfile,
373
+ }));
374
+ });
375
+ aiFunctions
376
+ .command('usage')
377
+ .description('Show AI Function usage summary (totals + by-date distribution)')
378
+ .argument('[directory]', 'Project directory', '.')
379
+ .option('--env <env>', 'Filter by runtime env (preview|prod)')
380
+ .option('--from <yyyymmdd>', 'Start date (inclusive), e.g. 20260901')
381
+ .option('--to <yyyymmdd>', 'End date (inclusive), e.g. 20260908')
382
+ .option('--function-key <key>', 'Filter by AI Function key')
383
+ .option('--model <profileId>', 'Filter by model profile ID from model_profiles')
384
+ .option('--capability-type <type>', 'Filter by capability (text|vision|image|video)')
385
+ .action(async (directory, commandOptions) => {
386
+ printJson(await getAIFunctionUsage({
387
+ capabilityType: commandOptions.capabilityType,
388
+ directory,
389
+ env: commandOptions.env,
390
+ from: commandOptions.from,
391
+ functionKey: commandOptions.functionKey,
392
+ model: commandOptions.model,
393
+ runtimeProfile: defaultProfile,
394
+ to: commandOptions.to,
395
+ }));
396
+ });
204
397
  return program;
205
398
  }
206
399
  export function runBaseDatabaseProgram(program) {
207
400
  program.parseAsync().catch((error) => {
208
- process.stderr.write(`${program.name()}: ${error instanceof Error ? error.message : String(error)}\n`);
401
+ if (error instanceof JsonOutputError)
402
+ printJson(error.output);
403
+ else {
404
+ if (error instanceof InitFailureError)
405
+ printJson(error.report);
406
+ process.stderr.write(`${program.name()}: ${error instanceof Error ? error.message : String(error)}\n`);
407
+ }
209
408
  process.exitCode = 1;
210
409
  });
211
410
  }
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import { type WorkspaceNpm } from './npm.js';
2
+ export declare const dependencyDirectories: readonly ['page', 'server-functions'];
3
+ export type DependencyDirectory = (typeof dependencyDirectories)[number];
4
+ export type ProjectBuildStatus = 'passed' | 'cached' | 'failed';
5
+ export interface ProjectBuildResult {
6
+ target: DependencyDirectory;
7
+ status: ProjectBuildStatus;
8
+ message?: string;
9
+ diagnostics?: string;
10
+ }
11
+ export declare class ProjectBuildError extends Error {
12
+ readonly results: ProjectBuildResult[];
13
+ constructor(results: ProjectBuildResult[]);
14
+ }
15
+ export interface ProjectBuildOptions {
16
+ incremental?: boolean;
17
+ force?: boolean;
18
+ captureOutput?: boolean;
19
+ }
20
+ export declare function validateProjectDependencyLocks(workspace: string, npm: WorkspaceNpm): void;
21
+ export declare function installDependencies(workspace: string, forceInstall: boolean, npm: WorkspaceNpm, options?: {
22
+ captureOutput?: boolean;
23
+ }): Promise<void>;
24
+ export declare function buildProject(workspace: string, env: NodeJS.ProcessEnv, npm: WorkspaceNpm, options?: ProjectBuildOptions): Promise<ProjectBuildResult[]>;
25
+ //# sourceMappingURL=project-build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-build.d.ts","sourceRoot":"","sources":["../src/project-build.ts"],"names":[],"mappings":"AAWA,OAAO,EAGL,KAAK,YAAY,EAClB,MAAM,UAAU,CAAC;AAIlB,eAAO,MAAM,qBAAqB,YAAI,MAAM,EAAE,kBAAkB,CAAU,CAAC;AAE3E,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzE,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEhE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,mBAAmB,CAAC;IAC5B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,iBAAkB,SAAQ,KAAK;IAC9B,QAAQ,CAAC,OAAO,EAAE,kBAAkB,EAAE;IAAlD,YAAqB,OAAO,EAAE,kBAAkB,EAAE,EAWjD;CACF;AAED,MAAM,WAAW,mBAAmB;IAClC,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAmBD,wBAAgB,8BAA8B,CAC5C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,YAAY,GAChB,IAAI,CAIN;AA2FD,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,OAAO,EACrB,GAAG,EAAE,YAAY,EACjB,OAAO,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GACxC,OAAO,CAAC,IAAI,CAAC,CA4Df;AAgFD,wBAAsB,YAAY,CAChC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,EAAE,YAAY,EACjB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CA6C/B"}