@zeegme/cli 0.1.0 → 0.2.0

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.
package/README.md CHANGED
@@ -56,6 +56,7 @@ Plain `http` is accepted for `localhost` only. Each origin keeps its own login.
56
56
  | `zeeg bookings cancel <uuid> [--reason]` | Cancel a booking |
57
57
  | `zeeg bookings reschedule <uuid> --date --time` | Move a booking |
58
58
  | `zeeg bookings hand-over <uuid> [--to]` | Hand a round-robin booking to another host |
59
+ | `zeeg bookings no-show <inviteeUuid> [--undo]` | Mark an invitee as a no-show, or undo it |
59
60
  | `zeeg notes list <bookingUuid>` / `add <bookingUuid> <text>` | Notes on a booking |
60
61
  | `zeeg crm list <people\|companies\|slug> [--search <text>]` | CRM records |
61
62
  | `zeeg crm get <object> <id>` | One CRM record |
@@ -66,7 +67,7 @@ Plain `http` is accepted for `localhost` only. Each origin keeps its own login.
66
67
 
67
68
  `zeeg <command> --help` lists every option. Times are in your machine's time zone unless you pass `--tz`.
68
69
 
69
- Commands that reach other people or spend AI minutes (`bookings create`, `cancel`, `reschedule`, `hand-over`, `calls start`) ask before they act. Pass `--yes` to skip the question, which scripts must do: without a terminal to ask in, they stop instead.
70
+ Commands that reach other people or spend AI minutes (`bookings create`, `cancel`, `reschedule`, `hand-over`, `no-show`, `calls start`) ask before they act. Pass `--yes` to skip the question, which scripts must do: without a terminal to ask in, they stop instead.
70
71
 
71
72
  ```sh
72
73
  zeeg availability 5c7e… --from 2026-10-05 --to 2026-10-09 --tz Europe/Berlin
@@ -121,6 +121,23 @@ export function registerBookings(program, context) {
121
121
  })));
122
122
  ctx.print.message(data, `Rescheduled ${uuid} to ${options.date} ${options.time}.`);
123
123
  });
124
+ bookings
125
+ .command('no-show <inviteeUuid>')
126
+ .description('Mark an invitee as a no-show once the booking has started (the invitee uuid is in `zeeg bookings get`)')
127
+ .option('--undo', 'withdraw the marking instead')
128
+ .option('-y, --yes', 'mark without asking')
129
+ .action(async (inviteeUuid, options) => {
130
+ const ctx = context();
131
+ const params = { params: { path: { uuid: inviteeUuid } } };
132
+ if (options.undo) {
133
+ const data = asJson(await unwrap((await ctx.api()).DELETE('/scheduled-invitees/{uuid}/no-show', params)));
134
+ ctx.print.message(data, `${inviteeUuid} is no longer marked as a no-show.`);
135
+ return;
136
+ }
137
+ await ctx.confirm(`Mark invitee ${inviteeUuid} as a no-show? Your no-show workflows may email them.`, options.yes);
138
+ const data = asJson(await unwrap((await ctx.api()).POST('/scheduled-invitees/{uuid}/no-show', params)));
139
+ ctx.print.message(data, `Marked ${inviteeUuid} as a no-show.`);
140
+ });
124
141
  bookings
125
142
  .command('hand-over <uuid>')
126
143
  .description('Hand a round-robin booking to another host')
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zeegme/cli",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "The Zeeg command line: bookings, availability, notes, CRM, routing forms and AI phone calls from your terminal.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -18,6 +18,7 @@
18
18
  },
19
19
  "scripts": {
20
20
  "build": "tsc -p tsconfig.build.json",
21
+ "prepublishOnly": "npm run build",
21
22
  "check-types": "tsc --noEmit",
22
23
  "generate:api": "openapi-typescript ../../apps/backend/tools/api-docs/openapi.yaml -o src/api/schema.d.ts",
23
24
  "test": "vitest run"