@lazehq/cli 0.1.48 → 0.1.49

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 (2) hide show
  1. package/dist/laze.mjs +52 -14
  2. package/package.json +1 -1
package/dist/laze.mjs CHANGED
@@ -35718,7 +35718,7 @@ function flagText({
35718
35718
  }
35719
35719
 
35720
35720
  // src/rules/cli-version.rules.ts
35721
- var STAMPED = "0.1.48";
35721
+ var STAMPED = "0.1.49";
35722
35722
  function cliVersionOf({ stamped = STAMPED } = {}) {
35723
35723
  return stamped.startsWith("__") ? "dev" : stamped;
35724
35724
  }
@@ -65445,6 +65445,11 @@ var callerSchemaDefinition = external_exports.object({
65445
65445
  /** The person's time zone, or the agent owner's (IANA; UTC while Laze does not know it). */
65446
65446
  timeZone: external_exports.string().optional()
65447
65447
  });
65448
+ var agentGuideFilesSchemaDefinition = external_exports.object({
65449
+ "work/SOUL.md": external_exports.string(),
65450
+ "work/AGENTS.md": external_exports.string(),
65451
+ "work/CLAUDE.md": external_exports.string()
65452
+ });
65448
65453
  var agentChannelLevelSchema = external_exports.enum(["everything", "mentions"]);
65449
65454
  var callerChannelSchemaDefinition = external_exports.object({
65450
65455
  id: idSchema15,
@@ -65668,6 +65673,15 @@ var AgentHopLimitNoticeSlot = agentUi.component("hopLimitNotice");
65668
65673
  var AgentRetryTurnSlot = agentUi.component("retryTurn");
65669
65674
  var AgentHeldNoticeSlot = agentUi.component("heldNotice");
65670
65675
 
65676
+ // ../../modules/agent/contract/src/laze-changes.ts
65677
+ var lazeChangeSchemaDefinition = external_exports.object({
65678
+ /** The day it reached prod, YYYY-MM-DD. */
65679
+ date: external_exports.string().regex(/^\d{4}-\d{2}-\d{2}$/),
65680
+ /** The refusal codes it lifted; empty when the refusal had no code of its own. */
65681
+ codes: external_exports.array(external_exports.string()),
65682
+ text: external_exports.string().min(1)
65683
+ });
65684
+
65671
65685
  // ../../modules/agent/contract/src/agent.config.ts
65672
65686
  var positiveInt3 = external_exports.coerce.number().int().positive();
65673
65687
  var agentConfig = Config.define((c) => ({
@@ -71048,6 +71062,13 @@ are waiting, if you think one was missed.
71048
71062
  with \`laze app pull --app <app>\` (its files: page, plan, code) and
71049
71063
  \`laze app records list <collection> --app <app>\` (its data).
71050
71064
 
71065
+ ## When Laze refused something
71066
+
71067
+ A refusal is about Laze as it was then; Laze ships fixes several times a day. Before telling
71068
+ someone an action cannot be done because Laze refused it earlier, run \`laze changes\` and try it
71069
+ again. When a change lifts a refusal you hit in a conversation, tell the people there once that
71070
+ it works now.
71071
+
71051
71072
  If \`laze\` is not on the PATH, run the same commands through \`npx -y @lazehq/cli@latest\`.
71052
71073
  Never print or repeat your Laze key.
71053
71074
  `;
@@ -72806,6 +72827,9 @@ var appSchemaDefinition = external_exports.object({
72806
72827
  publishedUrl: external_exports.string(),
72807
72828
  /** The live version; null before the first push or while the app is taken offline. */
72808
72829
  publishedVersion: appVersionIdSchema.nullable(),
72830
+ /** Pages loaded before apps were trunk-based still require these: the origin and live version. */
72831
+ draftUrl: external_exports.string().optional(),
72832
+ draftVersion: appVersionIdSchema.nullable().optional(),
72809
72833
  pendingPublish: publishRequestSchema.nullable(),
72810
72834
  /** The standing approval for public publishes; absent or null when every one asks. */
72811
72835
  publishLease: publishLeaseSchema.nullable().optional(),
@@ -76423,6 +76447,18 @@ async function workspaces({ context, args }) {
76423
76447
  );
76424
76448
  }
76425
76449
  }
76450
+ async function changes({ context, args }) {
76451
+ const { client } = await signedIn({ context, args });
76452
+ const list10 = await client.get("/api/agents/me/changes");
76453
+ if (args.flags.json) return context.out(`${JSON.stringify(list10, null, 2)}
76454
+ `);
76455
+ if (list10.length === 0) return context.out("No recent changes.\n");
76456
+ for (const change2 of list10) {
76457
+ const lifted = change2.codes.length > 0 ? ` (lifts ${change2.codes.join(", ")})` : "";
76458
+ context.out(`${change2.date}${lifted}: ${change2.text}
76459
+ `);
76460
+ }
76461
+ }
76426
76462
 
76427
76463
  // src/services/billing-commands.service.ts
76428
76464
  var BILLING_USAGE = `Usage:
@@ -84636,7 +84672,7 @@ function changesOf(args) {
84636
84672
  ${USAGE14}`);
84637
84673
  const keywords = typeof args.flags.keywords === "string" ? args.flags.keywords : void 0;
84638
84674
  const emailAfter = flagText({ args, name: "email-after" });
84639
- const changes = {
84675
+ const changes2 = {
84640
84676
  channelDefault: channels2 || void 0,
84641
84677
  keywords: keywords?.split(",").map((word3) => word3.trim()).filter(Boolean),
84642
84678
  dndEnabled: switchOf({ args, name: "dnd" }),
@@ -84647,20 +84683,20 @@ ${USAGE14}`);
84647
84683
  emailEnabled: switchOf({ args, name: "email" }),
84648
84684
  emailDelayMinutes: emailAfter ? Number(emailAfter) : void 0
84649
84685
  };
84650
- return Object.fromEntries(Object.entries(changes).filter(([, value]) => value !== void 0));
84686
+ return Object.fromEntries(Object.entries(changes2).filter(([, value]) => value !== void 0));
84651
84687
  }
84652
84688
  async function showSettings({ context, args }) {
84653
84689
  const { client } = await signedIn({ context, args });
84654
84690
  print7({ context, args, settings: await client.get("/api/agents/me/notifications") });
84655
84691
  }
84656
84692
  async function setSettings({ context, args }) {
84657
- const changes = changesOf(args);
84658
- if (Object.keys(changes).length === 0) throw new CliUsageError(USAGE14);
84693
+ const changes2 = changesOf(args);
84694
+ if (Object.keys(changes2).length === 0) throw new CliUsageError(USAGE14);
84659
84695
  const { client } = await signedIn({ context, args });
84660
84696
  print7({
84661
84697
  context,
84662
84698
  args,
84663
- settings: await client.post("/api/agents/me/notifications", changes)
84699
+ settings: await client.post("/api/agents/me/notifications", changes2)
84664
84700
  });
84665
84701
  }
84666
84702
  async function snoozeFor({ context, args }) {
@@ -85236,9 +85272,9 @@ async function scheduleAdd({ context, args }) {
85236
85272
  printSchedule({ context, schedule: schedule2 });
85237
85273
  }
85238
85274
  function changesOf2(args) {
85239
- const changes = {};
85275
+ const changes2 = {};
85240
85276
  const timed = ["cron", "rrule", "at"].some((name3) => flagText({ args, name: name3 }));
85241
- if (timed) changes.timing = timingOf(args);
85277
+ if (timed) changes2.timing = timingOf(args);
85242
85278
  for (const [flag2, field] of [
85243
85279
  ["name", "name"],
85244
85280
  ["prompt", "prompt"],
@@ -85246,18 +85282,18 @@ function changesOf2(args) {
85246
85282
  ["agent", "agentId"]
85247
85283
  ]) {
85248
85284
  const value = flagText({ args, name: flag2 });
85249
- if (value) changes[field] = value;
85285
+ if (value) changes2[field] = value;
85250
85286
  }
85251
85287
  const channel = flagText({ args, name: "channel" });
85252
- if (channel) changes.channelId = channel === "none" ? null : channel;
85253
- return changes;
85288
+ if (channel) changes2.channelId = channel === "none" ? null : channel;
85289
+ return changes2;
85254
85290
  }
85255
85291
  async function scheduleUpdate({ context, args }) {
85256
85292
  const scheduleId = args.words[2];
85257
- const changes = changesOf2(args);
85258
- if (!scheduleId || Object.keys(changes).length === 0) throw new CliUsageError(USAGE15);
85293
+ const changes2 = changesOf2(args);
85294
+ if (!scheduleId || Object.keys(changes2).length === 0) throw new CliUsageError(USAGE15);
85259
85295
  const { client } = await signedIn({ context, args });
85260
- const schedule2 = await client.post("/api/schedules/update", { scheduleId, ...changes });
85296
+ const schedule2 = await client.post("/api/schedules/update", { scheduleId, ...changes2 });
85261
85297
  if (args.flags.json) return context.out(`${JSON.stringify(schedule2, null, 2)}
85262
85298
  `);
85263
85299
  printSchedule({ context, schedule: schedule2 });
@@ -88276,6 +88312,7 @@ var HELP = `laze: work in a Laze workspace from your terminal or your agent.
88276
88312
  laze update [--dry-run] install the latest release (npm, pnpm, bun or yarn)
88277
88313
  laze logout revoke this profile's key and forget it
88278
88314
  laze whoami who this key speaks for
88315
+ laze changes what changed in Laze lately; retry an action it refused before
88279
88316
  laze workspaces your signed-in profiles
88280
88317
  laze workspace the workspace this key belongs to
88281
88318
  laze workspace mine every workspace you belong to, with your role
@@ -88487,6 +88524,7 @@ var COMMANDS3 = {
88487
88524
  join: joinAsAgent,
88488
88525
  logout,
88489
88526
  whoami,
88527
+ changes,
88490
88528
  workspaces,
88491
88529
  workspace,
88492
88530
  members: members2,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lazehq/cli",
3
- "version": "0.1.48",
3
+ "version": "0.1.49",
4
4
  "description": "The Laze command line: sign in, read and post in chat, and connect your own Claude Code or Codex session as an agent.",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",