@lark-base-open/base-database-cli 1.1.0 → 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 +86 -0
  2. package/LICENSE +6 -0
  3. package/README.md +55 -31
  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 +8 -1
  13. package/dist/auth.d.ts.map +1 -1
  14. package/dist/auth.js +60 -6
  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 +886 -243
  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 +2 -1
  63. package/dist/lark-cli.d.ts.map +1 -1
  64. package/dist/lark-cli.js +292 -29
  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 +241 -42
  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 +70 -53
  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 +54 -27
  159. package/skills/lark-base-database/references/style-guide.md +10 -67
  160. package/skills/lark-base-database/references/verification.md +17 -13
  161. package/skills/lark-base-database/references/workspace.md +71 -22
  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 -151
  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
package/dist/lark-cli.js CHANGED
@@ -1,12 +1,43 @@
1
1
  import { spawnSync } from 'node:child_process';
2
- import { accessSync, constants } from 'node:fs';
3
- import { delimiter, isAbsolute, join, relative, resolve } from 'node:path';
4
- import { readConfig } from './config.js';
2
+ import { accessSync, closeSync, constants, copyFileSync, fstatSync, lstatSync, mkdirSync, mkdtempSync, openSync, readFileSync, realpathSync, rmSync, } from 'node:fs';
3
+ import { basename, delimiter, dirname, isAbsolute, join, relative, resolve, } from 'node:path';
4
+ import { CONFIG_FILE_NAME, readConfig } from './config.js';
5
+ import { LarkCliError, safeDiagnostic } from './lark-cli-error.js';
5
6
  import { assertProjectRuntimeProfile, ONLINE_RUNTIME_PROFILE, } from './environment.js';
6
7
  import { runCommand } from './process.js';
7
8
  import { validateLarkProfile } from './profile-name.js';
8
9
  const LARK_CLI_PATH_ENV = 'BASE_DATABASE_LARK_CLI_PATH';
9
10
  const larkCliExecutableCache = new Map();
11
+ const larkCliCommandsCache = new Map();
12
+ // Probe command availability only; never cache account or authentication results.
13
+ function larkCliCommands(executable, env, cwd = process.cwd()) {
14
+ const cached = larkCliCommandsCache.get(executable);
15
+ if (cached)
16
+ return cached;
17
+ const result = spawnSync(executable, ['--help'], {
18
+ cwd,
19
+ env: quietEnvironment(env),
20
+ encoding: 'utf8',
21
+ timeout: 5_000,
22
+ });
23
+ if (result.error)
24
+ throw result.error;
25
+ if (result.status !== 0) {
26
+ throw new Error((result.stderr || 'Unable to inspect lark-cli commands').trim());
27
+ }
28
+ const commands = new Set();
29
+ for (const line of result.stdout.split(/\r?\n/)) {
30
+ const command = /^\s{2,}([a-z][a-z-]*)\s{2,}\S/.exec(line)?.[1];
31
+ if (command)
32
+ commands.add(command);
33
+ }
34
+ larkCliCommandsCache.set(executable, commands);
35
+ return commands;
36
+ }
37
+ export function isMissingLarkCommand(error, command) {
38
+ const message = error instanceof Error ? error.message : String(error);
39
+ return new RegExp(`^(?:Error: )?unknown command "${command}" for "lark-cli"(?:\\r?\\n|$)`, 'i').test(message.trim());
40
+ }
10
41
  function pathEnvironment(env) {
11
42
  return env.PATH ?? env.Path ?? env.path;
12
43
  }
@@ -65,14 +96,6 @@ function readLarkCliVersion(executable, env, cwd) {
65
96
  }
66
97
  return undefined;
67
98
  }
68
- function versionContainsBuildHash(version) {
69
- const normalized = version.replace(/^v/i, '');
70
- const suffix = normalized.replace(/^\d+\.\d+\.\d+/, '');
71
- const identifiers = suffix.split(/[-+.]/).filter(Boolean);
72
- return identifiers.some((identifier) => identifier.length >= 7 &&
73
- /^[0-9a-f]+$/i.test(identifier) &&
74
- /[a-f]/i.test(identifier));
75
- }
76
99
  export function resolveLarkCliExecutable(env, cwd = process.cwd()) {
77
100
  const explicitPath = env[LARK_CLI_PATH_ENV]?.trim();
78
101
  if (explicitPath) {
@@ -96,15 +119,11 @@ export function resolveLarkCliExecutable(env, cwd = process.cwd()) {
96
119
  rejected.push(`${candidate} (unrecognized --version output)`);
97
120
  continue;
98
121
  }
99
- if (versionContainsBuildHash(version)) {
100
- rejected.push(`${candidate} (${version}, contains a build hash)`);
101
- continue;
102
- }
103
122
  larkCliExecutableCache.set(cacheKey, candidate);
104
123
  return candidate;
105
124
  }
106
125
  const detail = rejected.length > 0 ? ` Rejected candidates: ${rejected.join('; ')}` : '';
107
- throw new Error(`No release lark-cli was found in PATH.${detail} Set ${LARK_CLI_PATH_ENV} to an absolute executable path to override automatic selection.`);
126
+ throw new Error(`No compatible lark-cli was found in PATH.${detail} Set ${LARK_CLI_PATH_ENV} to an absolute executable path to override automatic selection.`);
108
127
  }
109
128
  function withUserIdentity(args) {
110
129
  const commandArgs = [...args];
@@ -145,27 +164,177 @@ function quietEnvironment(env) {
145
164
  LARKSUITE_CLI_NO_SKILLS_NOTIFIER: '1',
146
165
  };
147
166
  }
148
- export function runLarkCli(args, env, cwd) {
167
+ export function runLarkCli(args, env, cwd, input) {
149
168
  const commandArgs = withUserIdentity(args);
150
169
  // config show already emits JSON and does not accept output-format flags.
151
170
  const isConfigShow = args[0] === 'config' && args[1] === 'show';
152
- if (!isConfigShow && !args.includes('--json') && !args.includes('--format')) {
171
+ if (!isConfigShow &&
172
+ !args.includes('--json') &&
173
+ !args.some((arg) => arg === '--format' || arg.startsWith('--format='))) {
153
174
  commandArgs.push('--json');
154
175
  }
155
- const result = spawnSync(resolveLarkCliExecutable(env, cwd), commandArgs, {
176
+ // Host CLIs may save JSON bodies served as text/plain, even with --json.
177
+ // Capture the original response once; never retry a mutation to recover it.
178
+ const workingDirectory = resolve(cwd ?? process.cwd());
179
+ const capturesResponse = args[0] === 'api';
180
+ const uploadsFile = capturesResponse &&
181
+ args.some((arg) => arg === '--file' || arg.startsWith('--file='));
182
+ if (capturesResponse &&
183
+ args.some((arg) => arg === '-o' ||
184
+ arg.startsWith('-o=') ||
185
+ arg === '--output' ||
186
+ arg.startsWith('--output='))) {
187
+ throw new Error('Use runLarkCliOutput for explicit file downloads');
188
+ }
189
+ const executable = resolveLarkCliExecutable(env, cwd);
190
+ const responseDirectory = capturesResponse
191
+ ? mkdtempSync(join(workingDirectory, '.base-database-response-'))
192
+ : undefined;
193
+ const responsePath = !uploadsFile && responseDirectory
194
+ ? join(responseDirectory, 'response.json')
195
+ : undefined;
196
+ if (responsePath) {
197
+ commandArgs.push('--output', relative(workingDirectory, responsePath));
198
+ }
199
+ try {
200
+ // --file and --output are mutually exclusive in the host CLI. Isolate
201
+ // automatic downloads and stage relative inputs without changing filenames.
202
+ const executionArgs = uploadsFile && responseDirectory
203
+ ? stageUploadInputs(commandArgs, workingDirectory, responseDirectory)
204
+ : commandArgs;
205
+ return executeLarkCli(executable, executionArgs, args, env, uploadsFile ? responseDirectory : cwd, responsePath, uploadsFile ? responseDirectory : undefined, input);
206
+ }
207
+ finally {
208
+ if (responseDirectory)
209
+ rmSync(responseDirectory, { recursive: true, force: true });
210
+ }
211
+ }
212
+ function stageUploadInputs(args, cwd, directory) {
213
+ const staged = [...args];
214
+ for (let index = 0; index < staged.length; index++) {
215
+ const arg = staged[index];
216
+ const flag = arg.split('=', 1)[0];
217
+ if (flag !== '--file' && flag !== '--data' && flag !== '--params')
218
+ continue;
219
+ const inline = arg.startsWith(`${flag}=`);
220
+ const valueIndex = inline ? index : ++index;
221
+ const value = inline ? arg.slice(flag.length + 1) : staged[valueIndex];
222
+ if (!value)
223
+ throw new Error(`lark-cli requires a value after ${flag}`);
224
+ let prefix = '';
225
+ let input = value;
226
+ if (flag === '--file') {
227
+ const separator = value.indexOf('=');
228
+ if (separator >= 0) {
229
+ prefix = value.slice(0, separator + 1);
230
+ input = value.slice(separator + 1);
231
+ }
232
+ if (input === '-')
233
+ continue;
234
+ }
235
+ else {
236
+ if (!value.startsWith('@'))
237
+ continue;
238
+ prefix = '@';
239
+ input = value.slice(1);
240
+ }
241
+ const inputDirectory = join(directory, `input-${valueIndex}`);
242
+ mkdirSync(inputDirectory);
243
+ const destination = join(inputDirectory, basename(input));
244
+ copyFileSync(resolve(cwd, input), destination);
245
+ const replacement = prefix + relative(directory, destination);
246
+ staged[valueIndex] = inline ? `${flag}=${replacement}` : replacement;
247
+ }
248
+ return staged;
249
+ }
250
+ function isRecord(value) {
251
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
252
+ }
253
+ function readCapturedResponse(receipt, path, env) {
254
+ // The caller restricts automatic downloads to this request's private directory.
255
+ if (!lstatSync(path).isFile() ||
256
+ typeof receipt.saved_path !== 'string' ||
257
+ resolve(dirname(path), receipt.saved_path) !== realpathSync(path) ||
258
+ typeof receipt.size_bytes !== 'number') {
259
+ throw new Error('lark-cli returned an invalid response-file receipt');
260
+ }
261
+ const fd = openSync(path, constants.O_RDONLY | constants.O_NOFOLLOW);
262
+ let body;
263
+ try {
264
+ const stat = fstatSync(fd);
265
+ if (!stat.isFile() ||
266
+ stat.size !== receipt.size_bytes ||
267
+ stat.size > 16 * 1024 * 1024) {
268
+ throw new Error('lark-cli response file has an invalid size or type');
269
+ }
270
+ try {
271
+ body = JSON.parse(readFileSync(fd, 'utf8'));
272
+ }
273
+ catch {
274
+ throw new Error('lark-cli saved a non-JSON API response; the request was not retried');
275
+ }
276
+ }
277
+ finally {
278
+ closeSync(fd);
279
+ }
280
+ if (!isRecord(body))
281
+ throw new Error('lark-cli API response must be a JSON object');
282
+ // Files contain the raw OpenAPI envelope, before lark-cli's stdout wrapping.
283
+ if (Object.hasOwn(body, 'code')) {
284
+ if (body.code !== 0) {
285
+ const failure = LarkCliError.response(body, 'lark-cli API request failed', env);
286
+ throw new LarkCliError({
287
+ ...failure.details,
288
+ message: `lark-cli API error (code ${String(failure.details.code)}): ${failure.details.message}`,
289
+ });
290
+ }
291
+ if (body.ok === false)
292
+ throw new Error('lark-cli API response reports failure');
293
+ return { ok: true, data: body.data ?? {} };
294
+ }
295
+ if (typeof body.ok === 'boolean')
296
+ return body;
297
+ throw new Error('lark-cli API response has no recognized success or error envelope');
298
+ }
299
+ function executeLarkCli(executable, commandArgs, args, env, cwd, responsePath, responseDirectory, input) {
300
+ const result = spawnSync(executable, commandArgs, {
156
301
  cwd,
157
302
  env: quietEnvironment(env),
303
+ input,
158
304
  encoding: 'utf8',
159
305
  timeout: 90_000,
160
306
  });
161
307
  if (result.error)
162
- throw result.error;
308
+ throw new LarkCliError({
309
+ kind: 'transport',
310
+ message: safeDiagnostic(result.error.message, env) ||
311
+ 'lark-cli transport failed',
312
+ });
163
313
  let response;
164
314
  try {
165
315
  response = JSON.parse(result.stdout);
166
316
  }
167
317
  catch {
168
- throw new Error((result.stderr || result.stdout || 'lark-cli returned no JSON').trim());
318
+ throw new LarkCliError({
319
+ kind: 'invalid_response',
320
+ message: safeDiagnostic(result.stderr, env) ||
321
+ 'lark-cli returned no valid JSON; write outcome is unknown',
322
+ });
323
+ }
324
+ if (result.status === 0 &&
325
+ (responsePath || responseDirectory) &&
326
+ isRecord(response) &&
327
+ Object.hasOwn(response, 'saved_path')) {
328
+ let path = responsePath;
329
+ if (!path && responseDirectory) {
330
+ if (typeof response.saved_path !== 'string')
331
+ throw new Error('lark-cli returned an invalid response-file receipt');
332
+ const root = realpathSync(responseDirectory);
333
+ path = resolve(root, response.saved_path);
334
+ if (dirname(path) !== root)
335
+ throw new Error('lark-cli response file must stay within its request directory');
336
+ }
337
+ response = readCapturedResponse(response, path, env);
169
338
  }
170
339
  if (result.status === 0 &&
171
340
  (args[0] === 'auth' || args[0] === 'config') &&
@@ -178,10 +347,7 @@ export function runLarkCli(args, env, cwd) {
178
347
  !response ||
179
348
  typeof response !== 'object' ||
180
349
  response.ok !== true) {
181
- const failure = response;
182
- const logId = failure.error?.log_id;
183
- const message = failure.error?.message || failure.msg || result.stderr;
184
- throw new Error(`${String(message || 'lark-cli request failed').trim()}${logId ? ` (LogID: ${logId})` : ''}`);
350
+ throw LarkCliError.response(response, result.stderr || 'lark-cli request failed', env);
185
351
  }
186
352
  return response;
187
353
  }
@@ -213,7 +379,28 @@ export function resolveLarkProfileEnvironment(source, explicit, configured, runt
213
379
  externalCredentialKeys.some((key) => env[key])) {
214
380
  return { env }; // Preserve host-managed authentication when no profile was selected.
215
381
  }
216
- const data = responseData(runLarkCli(['config', 'show'], env));
382
+ let data;
383
+ try {
384
+ data = responseData(runLarkCli(['config', 'show'], env));
385
+ }
386
+ catch (error) {
387
+ if (!isMissingLarkCommand(error, 'config'))
388
+ throw error;
389
+ const commands = larkCliCommands(resolveLarkCliExecutable(env), env);
390
+ if (!commands.has('api') || !commands.has('base') || commands.has('config'))
391
+ throw error;
392
+ if (runtimeProfile?.supportedLarkBrands) {
393
+ throw new Error(`Runtime ${runtimeProfile.name} requires verified account brand metadata; this lark-cli has no config command`);
394
+ }
395
+ // The host owns authentication. Business requests still use --as user and
396
+ // must succeed normally; missing management commands do not prove login.
397
+ // Some host builds select their managed credential only through
398
+ // LARKSUITE_CLI_PROFILE and explicitly reject a --profile argument. Keep
399
+ // the selected environment value intact and let the host validate it.
400
+ return env.LARKSUITE_CLI_PROFILE
401
+ ? { env, larkProfile: env.LARKSUITE_CLI_PROFILE }
402
+ : { env };
403
+ }
217
404
  if (typeof data.profile !== 'string' ||
218
405
  (data.brand !== 'feishu' && data.brand !== 'lark')) {
219
406
  throw new Error('lark-cli config show must return profile and brand; update lark-cli before using profiles');
@@ -231,18 +418,94 @@ export function resolveLarkProfileEnvironment(source, explicit, configured, runt
231
418
  env.LARKSUITE_CLI_BRAND = data.brand;
232
419
  return { env, larkProfile };
233
420
  }
421
+ function capturesProjectApiJson(args) {
422
+ if (args[0] !== 'api')
423
+ return false;
424
+ for (let index = 3; index < args.length; index++) {
425
+ const arg = args[index];
426
+ if (['--data', '--params', '--file'].includes(arg)) {
427
+ const value = args[++index];
428
+ if (value === '-' || (arg === '--file' && value?.endsWith('=-')))
429
+ return false;
430
+ continue;
431
+ }
432
+ if (/^--(?:data|params)=-$/.test(arg) || /^--file=(?:[^=]+=)?-$/.test(arg))
433
+ return false;
434
+ // These modes own stdout, pagination or files and must remain native.
435
+ if (arg === '--help' ||
436
+ arg === '-h' ||
437
+ arg === '--dry-run' ||
438
+ arg === '--output' ||
439
+ arg.startsWith('--output=') ||
440
+ arg.startsWith('-o') ||
441
+ arg === '--jq' ||
442
+ arg.startsWith('--jq=') ||
443
+ arg.startsWith('-q') ||
444
+ arg === '--page-all' ||
445
+ arg.startsWith('--page-all='))
446
+ return false;
447
+ if (arg === '--format' && args[++index] !== 'json')
448
+ return false;
449
+ if (arg.startsWith('--format=') && arg !== '--format=json')
450
+ return false;
451
+ }
452
+ // Help and incomplete invocations are handled by lark-cli itself.
453
+ return (args.length >= 3 && !args.slice(1, 3).some((arg) => arg.startsWith('-')));
454
+ }
455
+ function isProjectIndependentDiscovery(args) {
456
+ const commandWord = /^\+?[a-z][a-z0-9_-]*$/i;
457
+ // Only a command path and a help marker qualify. In particular, a value
458
+ // named "--help" after --data/--name or a literal -- is not a help request.
459
+ if (args.at(-1) === '--help' || args.at(-1) === '-h') {
460
+ return args.slice(0, -1).every((arg) => commandWord.test(arg));
461
+ }
462
+ if (args[0] === 'help') {
463
+ return args.slice(1).every((arg) => commandWord.test(arg));
464
+ }
465
+ if (args[0] === 'schema') {
466
+ return (args.length <= 4 &&
467
+ args.slice(1).every((arg) => /^[a-z][a-z0-9_.-]*$/i.test(arg)));
468
+ }
469
+ if (args[0] !== 'skills')
470
+ return false;
471
+ const paths = args.slice(2);
472
+ const validPathCount = args[1] === 'list'
473
+ ? paths.length <= 1
474
+ : args[1] === 'read' && paths.length >= 1 && paths.length <= 2;
475
+ if (!validPathCount)
476
+ return false;
477
+ return paths.every((path) => path.split('/').every((part) => /^[a-z0-9][a-z0-9_.-]*$/i.test(part)));
478
+ }
234
479
  export async function runProjectLarkCli(args, profile = ONLINE_RUNTIME_PROFILE, larkProfile) {
235
480
  if (args.length === 0) {
236
481
  throw new Error('Pass lark-cli arguments after `--`');
237
482
  }
238
483
  const directory = process.cwd();
239
- const config = readConfig(directory);
240
- assertProjectRuntimeProfile(config.runtimeProfile, profile);
484
+ const config = isProjectIndependentDiscovery(args) &&
485
+ !lstatSync(join(directory, CONFIG_FILE_NAME), { throwIfNoEntry: false })
486
+ ? undefined
487
+ : readConfig(directory);
488
+ if (config)
489
+ assertProjectRuntimeProfile(config.runtimeProfile, profile);
241
490
  // Profile selection belongs to this wrapper; a raw override could bypass the project.
242
491
  if (args.some((arg) => arg === '--profile' || arg.startsWith('--profile='))) {
243
492
  throw new Error('Pass --profile before `lark-cli --`, not in forwarded arguments');
244
493
  }
245
- const { env } = resolveLarkProfileEnvironment(await profile.commandEnvironment(), larkProfile, config.larkProfile, profile);
494
+ const { env } = resolveLarkProfileEnvironment(await profile.commandEnvironment(), larkProfile, config?.larkProfile, profile);
495
+ if (capturesProjectApiJson(args)) {
496
+ try {
497
+ const response = runLarkCli(args, env, directory);
498
+ process.stdout.write(`${JSON.stringify(response, null, 2)}\n`);
499
+ }
500
+ catch (error) {
501
+ // 原始响应文件由本次请求捕获;透传入口保留完整公开对象供 agent 使用。
502
+ if (error instanceof LarkCliError && error.details.publicError) {
503
+ error.message += `\ndata.error=${JSON.stringify(error.details.publicError)}`;
504
+ }
505
+ throw error;
506
+ }
507
+ return;
508
+ }
246
509
  runCommand(resolveLarkCliExecutable(env, directory), withUserIdentity(args), {
247
510
  cwd: directory,
248
511
  env: quietEnvironment(env),
@@ -1 +1 @@
1
- {"version":3,"file":"lark-cli.js","sourceRoot":"","sources":["../src/lark-cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lark-cli.js","sourceRoot":"","sources":["../src/lark-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,146 @@
1
+ export declare const mutationSchema: {
2
+ readonly type: 'object';
3
+ readonly properties: {
4
+ readonly spec: {
5
+ readonly type: 'object';
6
+ readonly properties: {
7
+ readonly table: {
8
+ readonly type: 'object';
9
+ readonly properties: {
10
+ readonly table_id: {
11
+ readonly type: 'string';
12
+ readonly pattern: '^[A-Za-z][A-Za-z0-9_]{0,63}$';
13
+ };
14
+ };
15
+ readonly required: readonly ['table_id'];
16
+ readonly additionalProperties: false;
17
+ };
18
+ readonly operation: {
19
+ readonly enum: readonly ['create', 'update', 'delete', 'append_attachments', 'remove_attachments'];
20
+ };
21
+ readonly params: {
22
+ readonly type: 'array';
23
+ readonly items: {
24
+ readonly $ref: '#/$defs/parameter';
25
+ };
26
+ readonly maxItems: 256;
27
+ };
28
+ readonly precondition: {
29
+ readonly type: 'object';
30
+ readonly properties: {
31
+ readonly conjunction: {
32
+ readonly const: 'and';
33
+ };
34
+ readonly conditions: {
35
+ readonly type: 'array';
36
+ readonly minItems: 1;
37
+ readonly maxItems: 1;
38
+ readonly items: {
39
+ readonly type: 'object';
40
+ readonly properties: {
41
+ readonly field_id: {
42
+ readonly const: 'rec_id';
43
+ };
44
+ readonly operator: {
45
+ readonly const: 'is';
46
+ };
47
+ readonly param: {
48
+ readonly type: 'integer';
49
+ readonly minimum: 1;
50
+ readonly maximum: 256;
51
+ };
52
+ };
53
+ readonly required: readonly ['field_id', 'operator', 'param'];
54
+ readonly additionalProperties: false;
55
+ };
56
+ };
57
+ };
58
+ readonly required: readonly ['conjunction', 'conditions'];
59
+ readonly additionalProperties: false;
60
+ };
61
+ readonly set: {
62
+ readonly type: 'object';
63
+ readonly maxProperties: 200;
64
+ readonly propertyNames: {
65
+ readonly pattern: '^[A-Za-z][A-Za-z0-9_]{0,63}$';
66
+ };
67
+ readonly additionalProperties: {
68
+ readonly $ref: '#/$defs/source';
69
+ };
70
+ };
71
+ readonly returning: {
72
+ readonly type: 'array';
73
+ readonly items: {
74
+ readonly type: 'string';
75
+ };
76
+ readonly uniqueItems: true;
77
+ readonly maxItems: 201;
78
+ };
79
+ };
80
+ readonly required: readonly ['table', 'operation'];
81
+ readonly additionalProperties: false;
82
+ };
83
+ };
84
+ readonly required: readonly ['spec'];
85
+ readonly additionalProperties: false;
86
+ readonly $defs: {
87
+ readonly parameter: {
88
+ readonly type: 'object';
89
+ readonly properties: {
90
+ readonly kind: {
91
+ readonly enum: readonly ['TEXT', 'INT', 'DOUBLE', 'BOOL', 'TIMESTAMP', 'DURATION', 'USER_ID', 'GROUP_ID', 'RECORD_ID', 'ATTACHMENT'];
92
+ };
93
+ readonly description: {
94
+ readonly type: 'string';
95
+ };
96
+ readonly required: {
97
+ readonly type: 'boolean';
98
+ };
99
+ readonly list: {
100
+ readonly type: 'boolean';
101
+ };
102
+ readonly max_length: {
103
+ readonly type: 'integer';
104
+ readonly minimum: 1;
105
+ readonly maximum: 100000;
106
+ };
107
+ readonly max_items: {
108
+ readonly type: 'integer';
109
+ readonly minimum: 1;
110
+ readonly maximum: 200;
111
+ };
112
+ };
113
+ readonly required: readonly ['kind'];
114
+ readonly additionalProperties: false;
115
+ };
116
+ readonly source: {
117
+ readonly type: 'object';
118
+ readonly properties: {
119
+ readonly const: {
120
+ readonly not: {
121
+ readonly type: 'null';
122
+ };
123
+ };
124
+ readonly param: {
125
+ readonly type: 'integer';
126
+ readonly minimum: 1;
127
+ readonly maximum: 256;
128
+ };
129
+ readonly current_user: {
130
+ readonly const: true;
131
+ };
132
+ readonly now: {
133
+ readonly const: true;
134
+ };
135
+ readonly clear: {
136
+ readonly const: true;
137
+ };
138
+ };
139
+ readonly required: readonly [];
140
+ readonly additionalProperties: false;
141
+ readonly minProperties: 1;
142
+ readonly maxProperties: 1;
143
+ };
144
+ };
145
+ };
146
+ //# sourceMappingURL=mutation-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mutation-schema.d.ts","sourceRoot":"","sources":["../src/mutation-schema.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,cAAc;aACzB,IAAI,EAAE,QAAQ;aACd,UAAU;iBACR,IAAI;qBACF,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,KAAK;6BACH,IAAI,EAAE,QAAQ;6BACd,UAAU;iCACR,QAAQ;qCACN,IAAI,EAAE,QAAQ;qCACd,OAAO,EAAE,8BAA8B;;;6BAG3C,QAAQ,YAAG,UAAU;6BACrB,oBAAoB;;yBAEtB,SAAS;6BACP,IAAI,YACF,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,oBAAoB,EACpB,oBAAoB;;yBAGxB,MAAM;6BACJ,IAAI,EAAE,OAAO;6BACb,KAAK;iCACH,IAAI,EAAE,mBAAmB;;6BAE3B,QAAQ,EAAE,GAAG;;yBAEf,YAAY;6BACV,IAAI,EAAE,QAAQ;6BACd,UAAU;iCACR,WAAW;qCAAI,KAAK,EAAE,KAAK;;iCAC3B,UAAU;qCACR,IAAI,EAAE,OAAO;qCACb,QAAQ,EAAE,CAAC;qCACX,QAAQ,EAAE,CAAC;qCACX,KAAK;yCACH,IAAI,EAAE,QAAQ;yCACd,UAAU;6CACR,QAAQ;iDAAI,KAAK,EAAE,QAAQ;;6CAC3B,QAAQ;iDAAI,KAAK,EAAE,IAAI;;6CACvB,KAAK;iDAAI,IAAI,EAAE,SAAS;iDAAE,OAAO,EAAE,CAAC;iDAAE,OAAO,EAAE,GAAG;;;yCAEpD,QAAQ,YAAG,UAAU,EAAE,UAAU,EAAE,OAAO;yCAC1C,oBAAoB;;;;6BAI1B,QAAQ,YAAG,aAAa,EAAE,YAAY;6BACtC,oBAAoB;;yBAEtB,GAAG;6BACD,IAAI,EAAE,QAAQ;6BACd,aAAa,EAAE,GAAG;6BAClB,aAAa;iCACX,OAAO,EAAE,8BAA8B;;6BAEzC,oBAAoB;iCAClB,IAAI,EAAE,gBAAgB;;;yBAG1B,SAAS;6BACP,IAAI,EAAE,OAAO;6BACb,KAAK;iCACH,IAAI,EAAE,QAAQ;;6BAEhB,WAAW;6BACX,QAAQ,EAAE,GAAG;;;qBAGjB,QAAQ,YAAG,OAAO,EAAE,WAAW;qBAC/B,oBAAoB;;;aAGxB,QAAQ,YAAG,MAAM;aACjB,oBAAoB;aACpB,KAAK;iBACH,SAAS;qBACP,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,IAAI;6BACF,IAAI,YACF,MAAM,EACN,KAAK,EACL,QAAQ,EACR,MAAM,EACN,WAAW,EACX,UAAU,EACV,SAAS,EACT,UAAU,EACV,WAAW,EACX,YAAY;;yBAGhB,WAAW;6BACT,IAAI,EAAE,QAAQ;;yBAEhB,QAAQ;6BACN,IAAI,EAAE,SAAS;;yBAEjB,IAAI;6BACF,IAAI,EAAE,SAAS;;yBAEjB,UAAU;6BACR,IAAI,EAAE,SAAS;6BACf,OAAO,EAAE,CAAC;6BACV,OAAO,EAAE,MAAM;;yBAEjB,SAAS;6BACP,IAAI,EAAE,SAAS;6BACf,OAAO,EAAE,CAAC;6BACV,OAAO,EAAE,GAAG;;;qBAGhB,QAAQ,YAAG,MAAM;qBACjB,oBAAoB;;iBAEtB,MAAM;qBACJ,IAAI,EAAE,QAAQ;qBACd,UAAU;yBACR,KAAK;6BACH,GAAG;iCACD,IAAI,EAAE,MAAM;;;yBAGhB,KAAK;6BACH,IAAI,EAAE,SAAS;6BACf,OAAO,EAAE,CAAC;6BACV,OAAO,EAAE,GAAG;;yBAEd,YAAY;6BACV,KAAK;;yBAEP,GAAG;6BACD,KAAK;;yBAEP,KAAK;6BACH,KAAK;;;qBAGT,QAAQ;qBACR,oBAAoB;qBACpB,aAAa,EAAE,CAAC;qBAChB,aAAa,EAAE,CAAC;;;CAGZ,CAAC"}