vibes-diy 12.2.9 → 12.2.11

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.
@@ -15,6 +15,33 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
15
15
  }, {
16
16
  type: "core-cli.res-device-id-register";
17
17
  output: string;
18
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
19
+ type: "vibes-diy.cli.skills";
20
+ }, {
21
+ type: "vibes-diy.cli.res-skills-list";
22
+ skills: {
23
+ name: string;
24
+ description: string;
25
+ }[];
26
+ } | {
27
+ type: "vibes-diy.cli.res-skill-content";
28
+ name: string;
29
+ content: string;
30
+ }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
31
+ type: "vibes-diy.cli.put-asset";
32
+ file: string;
33
+ appSlug: string;
34
+ ownerHandle: string;
35
+ apiUrl: string;
36
+ mimeType: string;
37
+ verifyFetch: boolean;
38
+ }, {
39
+ type: "vibes-diy.cli.res-put-asset";
40
+ cid: string;
41
+ getURL: string;
42
+ size: number;
43
+ uploadId: string;
44
+ verified?: boolean | undefined;
18
45
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
19
46
  type: "vibes-diy.cli.db.del";
20
47
  apiUrl: string;
@@ -94,13 +121,13 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
94
121
  type: "vibes.diy.res-error";
95
122
  error: {
96
123
  message: string;
97
- code: "max-app-slugs-reached";
124
+ code: "handle-required";
98
125
  };
99
126
  } | {
100
127
  type: "vibes.diy.res-error";
101
128
  error: {
102
129
  message: string;
103
- code: "handle-required";
130
+ code: "max-app-slugs-reached";
104
131
  };
105
132
  } | {
106
133
  type: "vibes-diy.cli.res-edit";
@@ -278,18 +305,6 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
278
305
  })[];
279
306
  updated: string;
280
307
  created: string;
281
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
282
- type: "vibes-diy.cli.skills";
283
- }, {
284
- type: "vibes-diy.cli.res-skills-list";
285
- skills: {
286
- name: string;
287
- description: string;
288
- }[];
289
- } | {
290
- type: "vibes-diy.cli.res-skill-content";
291
- name: string;
292
- content: string;
293
308
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
294
309
  type: "use-vibes.cli.themes";
295
310
  }, {
@@ -371,13 +386,13 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
371
386
  type: "vibes.diy.res-error";
372
387
  error: {
373
388
  message: string;
374
- code: "max-app-slugs-reached";
389
+ code: "handle-required";
375
390
  };
376
391
  } | {
377
392
  type: "vibes.diy.res-error";
378
393
  error: {
379
394
  message: string;
380
- code: "handle-required";
395
+ code: "max-app-slugs-reached";
381
396
  };
382
397
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
383
398
  type: "vibes-diy.cli.claim-handle";
@@ -389,21 +404,6 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
389
404
  ownerHandle?: string | undefined;
390
405
  defaultHandleSet?: boolean | undefined;
391
406
  suggestions: string[];
392
- }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
393
- type: "vibes-diy.cli.put-asset";
394
- file: string;
395
- appSlug: string;
396
- ownerHandle: string;
397
- apiUrl: string;
398
- mimeType: string;
399
- verifyFetch: boolean;
400
- }, {
401
- type: "vibes-diy.cli.res-put-asset";
402
- cid: string;
403
- getURL: string;
404
- size: number;
405
- uploadId: string;
406
- verified?: boolean | undefined;
407
407
  }> | import("@adviser/cement").EventoHandler<WrapCmdTSMsg<unknown>, {
408
408
  type: "vibes-diy.cli.generate";
409
409
  prompt: string;
@@ -470,13 +470,13 @@ export declare function cliEventoHandlers(): (import("@adviser/cement").EventoHa
470
470
  type: "vibes.diy.res-error";
471
471
  error: {
472
472
  message: string;
473
- code: "max-app-slugs-reached";
473
+ code: "handle-required";
474
474
  };
475
475
  } | {
476
476
  type: "vibes.diy.res-error";
477
477
  error: {
478
478
  message: string;
479
- code: "handle-required";
479
+ code: "max-app-slugs-reached";
480
480
  };
481
481
  } | {
482
482
  type: "vibes-diy.cli.res-generate";
@@ -2,17 +2,9 @@ import { EventoHandler } from "@adviser/cement";
2
2
  import { ResEnsureAppSlug } from "@vibes.diy/api-types";
3
3
  import { CliCtx } from "../cli-ctx.js";
4
4
  import { WrapCmdTSMsg } from "../cmd-evento.js";
5
- export declare const ResGenerate: import("arktype/internal/variants/object.ts").ObjectType<{
6
- type: "vibes-diy.cli.res-generate";
7
- appSlug: string;
8
- ownerHandle: string;
9
- url: string;
10
- directory: string;
11
- dryRun?: boolean | undefined;
12
- }, {}>;
13
- export type ResGenerate = typeof ResGenerate.infer;
14
- export declare function isResGenerate(obj: unknown): obj is ResGenerate;
15
- export declare function resGenerateJsonLine(msg: ResGenerate): string | undefined;
5
+ import type { ResGenerate } from "./generate-core.js";
6
+ export { ResGenerate, isResGenerate, resGenerateJsonLine } from "./generate-core.js";
7
+ export type { GenerateCoreArgs, GenerateProgress } from "./generate-core.js";
16
8
  export declare const ReqGenerate: import("arktype/internal/variants/object.ts").ObjectType<{
17
9
  type: "vibes-diy.cli.generate";
18
10
  prompt: string;
@@ -1,37 +1,13 @@
1
1
  import { command, flag, option, optional, positional, string } from "cmd-ts";
2
- import { mkdir } from "fs/promises";
3
- import { join } from "path";
4
- import { Result, Option, exception2Result, BuildURI, loadAsset, } from "@adviser/cement";
2
+ import { Result, Option } from "@adviser/cement";
5
3
  import { type } from "arktype";
6
- import { isResError, isSectionEvent } from "@vibes.diy/api-types";
7
4
  import { cmdTsDefaultArgs } from "../cli-ctx.js";
8
5
  import { sendMsg, sendProgress } from "../cmd-evento.js";
9
- import { resolveHandle } from "../resolve-handle.js";
10
6
  import { resolveVibeArgs } from "../parse-vibe.js";
11
- import { resolveSectionStream } from "./resolve-section-stream.js";
12
- import { resumeSectionStream } from "./resume-section-stream.js";
13
- import { pushFromDir } from "./push-from-dir.js";
14
7
  import { formatErr } from "./format-err.js";
15
- import { formatNoFilesError } from "./format-no-files-error.js";
16
8
  import { formatDryRunAsText, readDryRunPayloadFromStream } from "./dry-run.js";
17
- import { modelFromSectionEvent } from "./resolved-model.js";
18
- import { materializeFile } from "./materialize-file.js";
19
- export const ResGenerate = type({
20
- type: "'vibes-diy.cli.res-generate'",
21
- appSlug: "string",
22
- ownerHandle: "string",
23
- url: "string",
24
- directory: "string",
25
- "dryRun?": "boolean",
26
- });
27
- export function isResGenerate(obj) {
28
- return !(ResGenerate(obj) instanceof type.errors);
29
- }
30
- export function resGenerateJsonLine(msg) {
31
- if (msg.dryRun === true)
32
- return undefined;
33
- return JSON.stringify(msg);
34
- }
9
+ import { runGenerate } from "./generate-core.js";
10
+ export { ResGenerate, isResGenerate, resGenerateJsonLine } from "./generate-core.js";
35
11
  export const ReqGenerate = type({
36
12
  type: "'vibes-diy.cli.generate'",
37
13
  prompt: "string",
@@ -99,218 +75,22 @@ export const generateEvento = {
99
75
  dryRun: true,
100
76
  });
101
77
  }
102
- let announcedModel = args.model;
103
- await sendProgress(ctx, "info", announcedModel ? `Generating with ${announcedModel}...` : "Generating...");
104
- const ownerHandle = await resolveHandle(api, args.ownerHandle === "" ? undefined : args.ownerHandle);
105
- const appSlug = args.appSlug === "" ? undefined : args.appSlug;
106
- const rChat = await api.openChat({
107
- ownerHandle,
108
- appSlug,
78
+ const rGenerate = await runGenerate(api, {
109
79
  prompt: args.prompt,
110
- mode: "codegen",
111
- });
112
- if (rChat.isErr()) {
113
- return Result.Err(`Failed to open chat: ${formatErr(rChat.Err())}`);
114
- }
115
- const chat = rChat.Ok();
116
- const rPrompt = await chat.prompt({
80
+ appSlug: args.appSlug,
81
+ ownerHandle: args.ownerHandle,
82
+ apiUrl: args.apiUrl,
117
83
  ...(args.model !== undefined ? { model: args.model } : {}),
118
- messages: [{ role: "user", content: [{ type: "text", text: args.prompt }] }],
119
- }, {
120
- ...(args.focusPath !== undefined ? { focusPath: args.focusPath } : {}),
121
84
  ...(args.apiKey !== undefined ? { apiKey: args.apiKey } : {}),
122
- });
123
- if (rPrompt.isErr()) {
124
- return Result.Err(`Failed to send prompt: ${formatErr(rPrompt.Err())}`);
125
- }
126
- const promptId = rPrompt.Ok().promptId;
127
- const upstreamErrors = [];
128
- let sectionEventCount = 0;
129
- let blockCount = 0;
130
- let streamedBytes = 0;
131
- const sectionOnly = chat.sectionStream.pipeThrough(new TransformStream({
132
- transform(msg, controller) {
133
- if (isSectionEvent(msg)) {
134
- sectionEventCount += 1;
135
- blockCount += msg.blocks.length;
136
- streamedBytes += JSON.stringify(msg).length;
137
- {
138
- const resolved = modelFromSectionEvent(msg);
139
- if (resolved && resolved !== announcedModel) {
140
- const fellBack = announcedModel !== undefined;
141
- announcedModel = resolved;
142
- sendProgress(ctx, "info", fellBack ? `Fell back to ${announcedModel}...` : `Generating with ${announcedModel}...`).catch(() => {
143
- });
144
- }
145
- }
146
- controller.enqueue(msg);
147
- return;
148
- }
149
- if (isResError(msg)) {
150
- upstreamErrors.push(msg);
151
- if (args.verbose) {
152
- const code = msg.error?.code ? ` [${msg.error.code}]` : "";
153
- process.stderr.write(`[upstream-error]${code} ${msg.error?.message ?? "(no message)"}\n`);
154
- }
155
- }
156
- },
157
- }));
158
- const rResolved = await resolveSectionStream({
159
- sectionStream: sectionOnly,
160
- streamId: promptId,
161
- onSnapshot: (snap) => {
162
- if (args.verbose) {
163
- process.stderr.write(`[${snap.source}] ${snap.path} (${snap.content.length} chars, ${snap.appliedSections} sections)\n`);
164
- }
165
- },
166
- onError: (err) => {
167
- if (args.verbose) {
168
- for (const fail of err.failures) {
169
- process.stderr.write(`[error] ${err.path}: ${fail.reason}${fail.search ? ` near ${fail.search.slice(0, 40)}` : ""}\n`);
170
- }
171
- }
172
- },
173
- });
174
- await chat.close();
175
- if (rResolved.isErr()) {
176
- return Result.Err(`Failed to resolve generated stream: ${rResolved.Err().message}`);
177
- }
178
- const resolved = rResolved.Ok();
179
- if (args.verbose) {
180
- process.stderr.write(`[stream-summary] section-events=${sectionEventCount} blocks=${blockCount} bytes=${streamedBytes} snapshots=${resolved.snapshotCount} apply-errors=${resolved.applyErrorCount} turn-end=${resolved.turnEndSeen}\n`);
181
- }
182
- let files = resolved.files;
183
- let errors = resolved.errors;
184
- let turnComplete = resolved.turnEndSeen;
185
- let announcedPaths = resolved.announcedPaths;
186
- if (!turnComplete) {
187
- const reason = resolved.promptErrors.length > 0 ? `: ${resolved.promptErrors.join("; ")}` : "";
188
- await sendProgress(ctx, "warn", `Stream ended before the turn completed${reason}. Trying to recover the full turn...`);
189
- const outcome = await resumeSectionStream({
190
- reopen: async () => {
191
- const rReopen = await api.openChat({ ownerHandle: chat.ownerHandle, appSlug: chat.appSlug, mode: "codegen" });
192
- if (rReopen.isErr())
193
- return Result.Err(formatErr(rReopen.Err()));
194
- return Result.Ok(rReopen.Ok());
195
- },
196
- streamId: promptId,
197
- turnOverAtStart: resolved.blockEndSeen,
198
- onProgress: (msg) => {
199
- sendProgress(ctx, "info", msg).catch(() => {
200
- });
201
- },
202
- onSnapshot: (snap) => {
203
- if (args.verbose) {
204
- process.stderr.write(`[resume:${snap.source}] ${snap.path} (${snap.content.length} chars)\n`);
205
- }
206
- },
207
- });
208
- if (outcome.complete) {
209
- files = outcome.complete.files;
210
- errors = outcome.complete.errors;
211
- turnComplete = true;
212
- await sendProgress(ctx, "info", `Recovered the complete turn after reconnecting (${outcome.attempts} attempt(s)).`);
213
- }
214
- else {
215
- files = { ...files, ...outcome.snapshots };
216
- for (const p of outcome.announcedPaths) {
217
- if (!announcedPaths.includes(p))
218
- announcedPaths = [...announcedPaths, p];
219
- }
220
- }
221
- }
222
- if (Object.keys(files).length === 0) {
223
- return Result.Err(formatNoFilesError({
224
- sectionEventCount,
225
- blockCount,
226
- streamedBytes,
227
- upstreamErrors: [
228
- ...upstreamErrors.map((e) => ({
229
- code: e.error?.code,
230
- message: e.error?.message ?? "(no message)",
231
- })),
232
- ...resolved.promptErrors.map((message) => ({ message })),
233
- ],
234
- applyErrors: errors,
235
- }));
236
- }
237
- if (!turnComplete) {
238
- const missing = announcedPaths.filter((p) => !(p in files));
239
- if (missing.length > 0) {
240
- return Result.Err(`Stream recovery lost file(s) it had announced: ${missing.join(", ")}. ` +
241
- `Refusing to deploy a partial app. Re-run the generate, or push the files from disk if they were written.`);
242
- }
243
- const names = Object.keys(files)
244
- .map((p) => (p.startsWith("/") ? p.slice(1) : p))
245
- .sort()
246
- .join(", ");
247
- await sendProgress(ctx, "warn", `Could not recover the complete turn. Deploying ${Object.keys(files).length} file(s) from snapshots (${names}); the result may be incomplete.`);
248
- }
249
- if (upstreamErrors.length > 0 && !args.verbose) {
250
- const first = upstreamErrors[0];
251
- const code = first.error?.code ? ` [${first.error.code}]` : "";
252
- await sendProgress(ctx, "warn", `Upstream warning${code}: ${first.error?.message ?? "(no message)"}`);
253
- }
254
- if (errors.length > 0 && !args.verbose) {
255
- await sendProgress(ctx, "warn", `Resolved with ${errors.length} apply error(s); rerun with --verbose for detail.`);
256
- }
257
- const pushAppSlug = chat.appSlug;
258
- const pushUserSlug = chat.ownerHandle;
259
- const dir = join(ectx.cwd === undefined ? process.cwd() : ectx.cwd(), pushAppSlug);
260
- const rDir = await exception2Result(() => mkdir(dir, { recursive: true }));
261
- if (rDir.isErr()) {
262
- return Result.Err(`Failed to create directory: ${rDir.Err().message}`);
263
- }
264
- for (const [path, content] of Object.entries(files)) {
265
- const rWrite = await materializeFile({ root: dir, filename: path, content });
266
- if (rWrite.isErr()) {
267
- return Result.Err(`Failed to write ${path}: ${rWrite.Err().message}`);
268
- }
269
- }
270
- const vibeUrl = BuildURI.from(args.apiUrl)
271
- .pathname(`/vibe/${pushUserSlug}/${pushAppSlug}`)
272
- .cleanParams("@stable-entry@", ".stable-entry.")
273
- .toString();
274
- const readme = await generateReadme(pushAppSlug, args.prompt, vibeUrl);
275
- const rReadme = await materializeFile({ root: dir, filename: "README.md", content: readme });
276
- if (rReadme.isErr()) {
277
- return Result.Err(`Failed to write README.md: ${rReadme.Err().message}`);
278
- }
279
- const rPush = await pushFromDir({
280
- dir,
281
- mode: "production",
282
- appSlug: pushAppSlug,
283
- ownerHandle: pushUserSlug,
284
- runId: promptId,
285
- apiUrl: args.apiUrl,
286
- api,
287
- ctx,
288
- });
289
- if (rPush.isErr())
290
- return Result.Err(rPush.Err());
291
- await sendProgress(ctx, "info", `Created: ${dir}`);
292
- return sendMsg(ctx, {
293
- type: "vibes-diy.cli.res-generate",
294
- appSlug: pushAppSlug,
295
- ownerHandle: pushUserSlug,
296
- url: rPush.Ok().publicUrl,
297
- directory: dir,
298
- });
85
+ ...(args.focusPath !== undefined ? { focusPath: args.focusPath } : {}),
86
+ verbose: args.verbose,
87
+ baseDir: ectx.cwd === undefined ? process.cwd() : ectx.cwd(),
88
+ }, (level, message) => sendProgress(ctx, level, message));
89
+ if (rGenerate.isErr())
90
+ return Result.Err(rGenerate.Err());
91
+ return sendMsg(ctx, rGenerate.Ok());
299
92
  },
300
93
  };
301
- async function generateReadme(appSlug, prompt, vibeUrl) {
302
- const rTemplate = await loadAsset("./readme-template.md", {
303
- basePath: () => import.meta.url,
304
- });
305
- if (rTemplate.isErr()) {
306
- return `# ${appSlug}\n\n> ${prompt}\n\nLive at [${vibeUrl}](${vibeUrl})\n`;
307
- }
308
- return rTemplate
309
- .Ok()
310
- .replace(/\{\{APP_SLUG\}\}/g, appSlug)
311
- .replace(/\{\{PROMPT\}\}/g, prompt)
312
- .replace(/\{\{VIBE_URL\}\}/g, vibeUrl);
313
- }
314
94
  export function generateCmd(ctx) {
315
95
  return command({
316
96
  name: "generate",
@@ -1 +1 @@
1
- {"version":3,"file":"generate-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/generate-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generate-cmd.js","sourceRoot":"","sources":["../../../jsr/cli/cmds/generate-cmd.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { Result } from "@adviser/cement";
2
+ import type { VibesDiyApi } from "@vibes.diy/api-impl";
3
+ export declare const ResGenerate: import("arktype/internal/variants/object.ts").ObjectType<{
4
+ type: "vibes-diy.cli.res-generate";
5
+ appSlug: string;
6
+ ownerHandle: string;
7
+ url: string;
8
+ directory: string;
9
+ dryRun?: boolean | undefined;
10
+ }, {}>;
11
+ export type ResGenerate = typeof ResGenerate.infer;
12
+ export declare function isResGenerate(obj: unknown): obj is ResGenerate;
13
+ export declare function resGenerateJsonLine(msg: ResGenerate): string | undefined;
14
+ export interface GenerateCoreArgs {
15
+ readonly prompt: string;
16
+ readonly appSlug?: string;
17
+ readonly ownerHandle?: string;
18
+ readonly apiUrl: string;
19
+ readonly model?: string;
20
+ readonly apiKey?: string;
21
+ readonly focusPath?: string;
22
+ readonly verbose: boolean;
23
+ readonly baseDir: string;
24
+ readonly signal?: AbortSignal;
25
+ }
26
+ export type GenerateProgress = (level: "info" | "warn", message: string) => void | Promise<void>;
27
+ export declare function runGenerate(api: VibesDiyApi, args: GenerateCoreArgs, progress: GenerateProgress): Promise<Result<ResGenerate>>;