greprag 5.35.0 → 5.37.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.
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  // adr: adr/odyssey-rename.md
3
- /** greprag memory — episodic project memory (turn / hourly / daily / weekly / ship-event).
3
+ /** greprag memory — episodic project memory (turn / hourly / daily / ship-event).
4
4
  *
5
5
  * Per-project narrative pyramid. Stop hook captures raw turns; crons compact
6
- * at hourly, daily, and weekly tiers; advisor skills pull on demand by
6
+ * at hourly and daily tiers; advisor skills pull on demand by
7
7
  * project + time window. This CLI is the read surface (plus a manual
8
8
  * compaction trigger for admin use).
9
9
  *
@@ -13,18 +13,17 @@
13
13
  * operator's primary access point. See adr/odyssey-rename.md.
14
14
  *
15
15
  * Note: the server-side route + shape values stay named `memory` / `turn` /
16
- * `hourly` / `daily` / `weekly` / `ship-event` (internal). The CLI maps
16
+ * `hourly` / `daily` / `ship-event` (internal). The CLI maps
17
17
  * `memory` subcommands to /v1/memory/* URLs.
18
18
  *
19
19
  * Subcommands:
20
20
  * briefing [--project <name>] [--format markdown|json]
21
- * The SessionStart-shaped briefing — most recent weekly + 7 daily summaries.
21
+ * The SessionStart-shaped briefing — last 7 daily summaries.
22
22
  * daily [--last N=7] [--project <name>] [--from ISO --to ISO] [--format markdown|json]
23
- * weekly [--last N=2] [--project <name>] [--from ISO --to ISO] [--format markdown|json]
24
23
  * hourly [--last N=24] [--project <name>] [--from ISO --to ISO] [--format markdown|json]
25
24
  * turns [--last N=20] [--project <name>] [--from ISO --to ISO] [--format markdown|json]
26
25
  * ships [--last N=50] [--project <name>] [--from ISO --to ISO] [--format markdown|json]
27
- * compact <hour|day|week> [--now ISO]
26
+ * compact <hour|day> [--now ISO]
28
27
  * Manual compaction trigger (cron also runs these on schedule).
29
28
  *
30
29
  * Project resolution: without --project, uses the current cwd's project
@@ -224,7 +223,6 @@ function renderTurnRow(row) {
224
223
  }
225
224
  const SHAPE_DEFAULTS = {
226
225
  daily: { lastDefault: 7, windowDays: 30, apiLimit: 100, render: renderSummaryRow },
227
- weekly: { lastDefault: 2, windowDays: 90, apiLimit: 100, render: renderSummaryRow },
228
226
  hourly: { lastDefault: 24, windowDays: 7, apiLimit: 200, render: renderSummaryRow },
229
227
  turn: { lastDefault: 20, windowDays: 7, apiLimit: 500, render: renderTurnRow },
230
228
  'ship-event': { lastDefault: 50, windowDays: 30, apiLimit: 200, render: renderShipRow },
@@ -356,7 +354,7 @@ async function searchCmd(args) {
356
354
  console.log(`0 hits in ${ms}ms (server ${result.latencyMs ?? '?'}ms)\n`);
357
355
  console.log(`No session-history match for "${queryText}" across ${scopeStr}.`);
358
356
  console.log('For a recent or open-ended thread, pull chronologically:');
359
- console.log(' greprag memory recap # weekly + last 7 daily summaries');
357
+ console.log(' greprag memory recap # last 7 daily summaries');
360
358
  console.log(' greprag memory daily --last 7 # newest-first window');
361
359
  if (projectId) {
362
360
  console.log('Or drop --project to search every project.');
@@ -377,9 +375,8 @@ async function searchCmd(args) {
377
375
  console.log(hint + '\n');
378
376
  }
379
377
  // ---------- recap ---------------------------------------------------------
380
- /** SessionStart-shaped recap: the most recent weekly summary (if any)
381
- * followed by the last N daily summaries (default 7). Same shape advisor
382
- * skills use to catch a session up at the top of a turn.
378
+ /** SessionStart-shaped recap: the last N daily summaries (default 7).
379
+ * Same shape advisor skills use to catch a session up at the top of a turn.
383
380
  *
384
381
  * Verb history: was `briefing` through v5.15.0; kept as a silent alias
385
382
  * for back-compat. `recap` matches the SessionStart hook's verb. */
@@ -389,43 +386,29 @@ async function recapCmd(args) {
389
386
  abortNotConfigured();
390
387
  const format = validateFormat(getFlag(args, '--format'));
391
388
  const dailyLast = parsePositiveInt(getFlag(args, '--daily-last'), 7, '--daily-last');
392
- const weeklyLast = parsePositiveInt(getFlag(args, '--weekly-last'), 1, '--weekly-last');
393
389
  const { projectId, projectName } = await resolveProject(args, cfg.apiUrl, cfg.apiKey);
394
390
  const nowI = nowIso();
395
- const [dailyAll, weeklyAll] = await Promise.all([
396
- fetchPeriod(cfg.apiUrl, cfg.apiKey, projectId, daysAgoIso(30), nowI, 'daily', 100),
397
- fetchPeriod(cfg.apiUrl, cfg.apiKey, projectId, daysAgoIso(90), nowI, 'weekly', 100),
398
- ]);
391
+ const dailyAll = await fetchPeriod(cfg.apiUrl, cfg.apiKey, projectId, daysAgoIso(30), nowI, 'daily', 100);
399
392
  const daily = tailN(dailyAll, dailyLast);
400
- const weekly = tailN(weeklyAll, weeklyLast);
401
393
  if (format === 'json') {
402
394
  console.log(JSON.stringify({
403
- project: projectName, weekly, daily,
395
+ project: projectName, daily,
404
396
  }, null, 2));
405
397
  return;
406
398
  }
407
- if (weekly.length === 0 && daily.length === 0) {
399
+ if (daily.length === 0) {
408
400
  console.log(`No episodic rows yet for ${projectName} — compaction runs hourly. Check back after the first active session.`);
409
401
  return;
410
402
  }
411
403
  console.log(`## ${projectName} — memory recap\n`);
412
- if (weekly.length > 0) {
413
- console.log('### This week\n');
414
- for (const w of weekly) {
415
- console.log(w.content.trim());
416
- console.log('');
417
- }
418
- }
419
- if (daily.length > 0) {
420
- console.log('### Recent days\n');
421
- // Show newest-first within the recent-days block — matches the
422
- // SessionStart recap shape used by advisor skills.
423
- for (const d of [...daily].reverse()) {
424
- const day = d.createdAt ? d.createdAt.slice(0, 10) : '';
425
- console.log(`**${day}**`);
426
- console.log(d.content.trim());
427
- console.log('');
428
- }
404
+ console.log('### Recent days\n');
405
+ // Show newest-first within the recent-days block — matches the
406
+ // SessionStart recap shape used by advisor skills.
407
+ for (const d of [...daily].reverse()) {
408
+ const day = d.createdAt ? d.createdAt.slice(0, 10) : '';
409
+ console.log(`**${day}**`);
410
+ console.log(d.content.trim());
411
+ console.log('');
429
412
  }
430
413
  }
431
414
  // ---------- compact -------------------------------------------------------
@@ -434,16 +417,15 @@ async function compactCmd(args) {
434
417
  if (!cfg.apiKey)
435
418
  abortNotConfigured();
436
419
  const tier = args[0];
437
- if (!tier || (tier !== 'hour' && tier !== 'day' && tier !== 'week')) {
438
- console.error('Usage: greprag memory compact <hour|day|week> [--now ISO]');
420
+ if (!tier || (tier !== 'hour' && tier !== 'day')) {
421
+ console.error('Usage: greprag memory compact <hour|day> [--now ISO]');
439
422
  process.exit(1);
440
423
  }
441
424
  const nowOverride = getFlag(args, '--now');
442
425
  const body = {};
443
426
  if (nowOverride)
444
427
  body.now = nowOverride;
445
- const route = tier === 'hour' ? 'compact-hour' :
446
- tier === 'day' ? 'compact-day' : 'compact-week';
428
+ const route = tier === 'hour' ? 'compact-hour' : 'compact-day';
447
429
  const res = await apiPost(`${cfg.apiUrl}/v1/memory/${route}`, cfg.apiKey, body);
448
430
  console.log(JSON.stringify(res, null, 2));
449
431
  }
@@ -452,7 +434,7 @@ const SUB_HELP = `
452
434
  greprag memory — episodic project memory (per-project narrative pyramid).
453
435
 
454
436
  Two access patterns: pull by time (the recap / per-shape verbs) or grep by
455
- topic (search). Both read the same rows: hourly / daily / weekly summaries,
437
+ topic (search). Both read the same rows: hourly / daily summaries,
456
438
  plus raw turns and ship-events. Pulls per-project by default (uses the
457
439
  current cwd's anchor); --project <name> targets another project under your
458
440
  tenant.
@@ -473,8 +455,8 @@ Subcommands:
473
455
  confidence band; weak/doc-heavy results print a
474
456
  coaching hint pointing at the time verbs.
475
457
  [--limit N=5] Top-N hits.
476
- [--shape <name>] Restrict to one shape (daily / weekly /
477
- hourly / turn / ship-event). Default: all.
458
+ [--shape <name>] Restrict to one shape (daily / hourly /
459
+ turn / ship-event). Default: all.
478
460
  [--include-docs] Also search documentation/boilerplate turns
479
461
  (skill bodies, chip prompts) — off by default.
480
462
  [--recent] Frecency: bias toward recent nodes (14-day
@@ -483,15 +465,13 @@ Subcommands:
483
465
  [--project <name>] Target another project under this tenant.
484
466
  [--format markdown|json] Default markdown.
485
467
 
486
- recap Weekly summary + last 7 daily summaries.
468
+ recap Last 7 daily summaries.
487
469
  The "catch me up" no-flags shortcut.
488
470
  [--daily-last N=7] How many recent daily rows to include.
489
- [--weekly-last N=1] How many recent weekly rows to include.
490
471
  [--project <name>] Target another project under this tenant.
491
472
  [--format markdown|json] Default markdown.
492
473
 
493
474
  daily [--last N=7] [--project <name>] [--from ISO --to ISO]
494
- weekly [--last N=2] [--project <name>] [--from ISO --to ISO]
495
475
  hourly [--last N=24] [--project <name>] [--from ISO --to ISO]
496
476
  turns [--last N=20] [--project <name>] [--from ISO --to ISO]
497
477
  ships [--last N=50] [--project <name>] [--from ISO --to ISO]
@@ -499,10 +479,10 @@ Subcommands:
499
479
  shape-appropriate; --from / --to override.
500
480
  [--format markdown|json]
501
481
 
502
- compact <hour|day|week> [--now ISO]
482
+ compact <hour|day> [--now ISO]
503
483
  Manual compaction trigger. Cron runs these
504
- on schedule (hourly / 03:00 UTC daily /
505
- 04:00 UTC Sundays); this is for backfill.
484
+ on schedule (hourly / 03:00 UTC daily);
485
+ this is for backfill.
506
486
 
507
487
  Aliases (silent back-compat):
508
488
  briefing → recap (renamed in v5.16.0 — recap matches the SessionStart
@@ -515,7 +495,6 @@ Examples:
515
495
  greprag memory search "discord pairing" --shape daily --limit 10
516
496
  greprag memory recap
517
497
  greprag memory daily --last 14 --format json
518
- greprag memory weekly --project openwriter
519
498
  greprag memory hourly --last 8
520
499
  greprag memory turns --last 5
521
500
  greprag memory ships --last 20
@@ -533,7 +512,6 @@ async function runMemory(args) {
533
512
  case 'recap': return recapCmd(rest);
534
513
  case 'briefing': return recapCmd(rest); // silent back-compat alias (renamed in v5.16.0)
535
514
  case 'daily': return queryShape(rest, 'daily');
536
- case 'weekly': return queryShape(rest, 'weekly');
537
515
  case 'hourly': return queryShape(rest, 'hourly');
538
516
  case 'turns':
539
517
  case 'turn': return queryShape(rest, 'turn');
@@ -1 +1 @@
1
- {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory.js","sourceRoot":"","sources":["../../src/commands/memory.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -185,8 +185,8 @@ const INBOX_HELP = `greprag inbox — read + manage your async message inbox.
185
185
 
186
186
  greprag inbox List unread for THIS session: its own lines
187
187
  (sender or recipient) + the front desk
188
- (tenant catch-all) + project broadcasts.
189
- Other sessions' private lines are hidden.
188
+ (tenant catch-all). Other sessions' private
189
+ lines are hidden.
190
190
  greprag inbox --all Audit peek: drop the per-session scope (every
191
191
  session's lines) AND include already-read.
192
192
  greprag inbox --peek List WITHOUT marking read (non-mutating).
@@ -206,7 +206,7 @@ const INBOX_HELP = `greprag inbox — read + manage your async message inbox.
206
206
  To SEND or REPLY (top-level command, NOT an inbox subcommand):
207
207
  greprag send --to discord:<snowflake> "reply" Reply to a Discord DM.
208
208
  greprag send "msg" --to <handle>@greprag.com Cold open (tenant catch-all).
209
- greprag send "msg" --to <handle>@greprag.com/<target> Message a session/project.
209
+ greprag send "msg" --to <handle>@greprag.com/<session> Message a specific session.
210
210
  greprag send "msg" --to <h>@greprag.com/<session> --in-reply-to <front-desk-id>
211
211
  Reply that threads a cold open.`;
212
212
  const INBOX_WATCH_HELP = `greprag inbox watch — long-lived SSE subscriber for live inbox delivery.
@@ -218,7 +218,7 @@ lands instead of polling.
218
218
  greprag inbox watch Tenant-wide stream.
219
219
  greprag inbox watch --project <name> Only messages addressed to this project.
220
220
  greprag inbox watch --session <id> Only messages targeting this session
221
- (plus untargeted broadcasts). Strictest.
221
+ (plus the front-desk catch-all). Strictest.
222
222
  greprag inbox watch --since <id|iso> Resume from a known cursor.
223
223
  greprag inbox watch --json One JSON object per line (preferred under Monitor).
224
224
  greprag inbox watch --receptionist Attend the front desk — wake live on a
@@ -431,8 +431,8 @@ async function inbox(args) {
431
431
  // other sessions' inboxes without burning unread state for them.
432
432
  const peek = args.includes('--peek');
433
433
  // Default view auto-scopes to THIS session — its own lines (sender OR
434
- // recipient) + the front desk (tenant catch-all) + project broadcasts. Other
435
- // sessions' private session↔session lines are hidden. `--all` drops the scope
434
+ // recipient) + the front desk (tenant catch-all). Other sessions' private
435
+ // session↔session lines are hidden. `--all` drops the scope
436
436
  // for a tenant-wide audit peek across every session. An explicit `--session`
437
437
  // always scopes to that id. adr: adr/address-grammar.md
438
438
  const autoSession = process.env.CLAUDE_SESSION_ID || process.env.GREPRAG_SESSION_ID || null;
@@ -536,6 +536,11 @@ async function inbox(args) {
536
536
  // Indent each body line so multi-line markdown stays visually grouped
537
537
  for (const line of msg.body.split('\n'))
538
538
  console.log(` ${line}`);
539
+ // Front Desk relay: the operator reached this session through the
540
+ // receptionist — answer on the rail they came in on, NOT the bare handle.
541
+ if (msg.references?.reply_to) {
542
+ console.log(` ↩ reply on the operator's rail: greprag send --to ${msg.references.reply_to} "your reply"`);
543
+ }
539
544
  // References block — only printed when present, formatted as a compact section.
540
545
  const refs = msg.references;
541
546
  if (refs && (refs.memory_ids?.length || refs.artifacts?.length || refs.files?.length)) {
@@ -597,15 +602,16 @@ function parseFileFlag(raw) {
597
602
  const SESSION_ID_PATTERN = /^([0-9a-f]{8}|[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12})$/i;
598
603
  /** Parse a send address under the v0.12 grammar:
599
604
  * <handle>@greprag.com[/<target>]
600
- * where <target> is exactly one segment — a session UUID (or 8-hex short
601
- * form) for a session-targeted send, or a project name for a project
602
- * broadcast. The bare form <handle>@greprag.com (no target) is the tenant
603
- * catch-all / cold opena first-contact channel for a sender who does not
604
- * know the recipient's session. The message lands in the recipient's inbox
605
- * for a manual check; it does not wake their session watchers.
605
+ * where <target> is exactly one segment — a session UUID (or 8-hex short form)
606
+ * for a session-targeted send. A non-session second segment parses as a project
607
+ * name (targetKind 'project'); project broadcasts were removed, so the send
608
+ * command rejects that kindthis parser still classifies it so the caller can
609
+ * print a precise error. The bare form <handle>@greprag.com (no target) is the
610
+ * tenant catch-all / cold open first contact when you don't know the
611
+ * recipient's session; it lands on their front desk for a manual check.
606
612
  *
607
613
  * Returns a discriminated result so the caller can print the helpful
608
- * migration hint on failure. */
614
+ * hint on failure. */
609
615
  function parseSendAddress(addr) {
610
616
  // Discord prefix is its own addressing grammar — bypasses the
611
617
  // <handle>@greprag.com/<target> shape entirely. Server-side
@@ -617,6 +623,16 @@ function parseSendAddress(addr) {
617
623
  }
618
624
  return { ok: true, targetKind: 'discord', target: snowflake };
619
625
  }
626
+ // sms: prefix — the Front Desk return leg (a connected session replies to the
627
+ // operator's phone). Own addressing grammar like discord:; server-side
628
+ // /v1/inbox/send resolves the phone against sms_pairings. adr: docs/front-desk-switchboard.md §4
629
+ if (addr.startsWith('sms:')) {
630
+ const phone = addr.slice('sms:'.length);
631
+ if (!/^\+?[0-9]{8,15}$/.test(phone)) {
632
+ return { ok: false, error: `sms address "${addr}" must be sms:<E.164 phone, e.g. sms:+16045551234>.` };
633
+ }
634
+ return { ok: true, targetKind: 'sms', target: phone };
635
+ }
620
636
  const segments = addr.split('/');
621
637
  if (segments.length > 2) {
622
638
  return { ok: false, error: `address "${addr}" has too many segments. The v0.12 grammar is\n` +
@@ -790,10 +806,10 @@ async function sendToDesk(args, cfg, to) {
790
806
  * [--file <path[:lines]>]+ (repeatable; e.g. src/auth.ts:42)
791
807
  * [--ref-json '<json>'] (escape hatch — full references object)
792
808
  *
793
- * <target> is exactly one segment — a session UUID (normal case) or a
794
- * project name (intentional broadcast). The bare <handle>@greprag.com form
795
- * (no target) is the tenant catch-all / cold open sendable, no --broadcast
796
- * needed, lands quietly in the recipient's inbox for a manual check.
809
+ * <target> is exactly one segment — a session UUID (normal case). The bare
810
+ * <handle>@greprag.com form (no target) is the tenant catch-all / cold open —
811
+ * sendable, lands quietly on the recipient's front desk for a manual check.
812
+ * Project-name targets are rejected: project broadcasts were removed (2026-06-07).
797
813
  * --session and --project flags were removed in v0.11 — the address carries
798
814
  * the target. adr: adr/address-grammar.md
799
815
  */
@@ -812,7 +828,7 @@ async function send(args) {
812
828
  return sendToDesk(args, cfg, to);
813
829
  }
814
830
  if (!to) {
815
- console.error('Usage: greprag send "body" --to <handle>@greprag.com[/<target>] [--from-session <id>] [--memory <uuid>] [--artifact <type:id>] [--file <path[:lines]>] [--broadcast]\n bare handle: tenant catch-all (cold open). <target>: session UUID (normal) or project name (broadcast — requires --broadcast).\n self-desk: --to-desk --type <internal-type> (internal queue item, no recipient).');
831
+ console.error('Usage: greprag send "body" --to <handle>@greprag.com[/<session-uuid>] [--from-session <id>] [--memory <uuid>] [--artifact <type:id>] [--file <path[:lines]>]\n bare handle: tenant catch-all (cold open). /<session-uuid>: session-targeted send. (project broadcasts were removed.)\n self-desk: --to-desk --type <internal-type> (internal queue item, no recipient).');
816
832
  process.exit(1);
817
833
  }
818
834
  // Early validation — fail before the round-trip so the operator sees the
@@ -822,16 +838,14 @@ async function send(args) {
822
838
  console.error(parsed.error);
823
839
  process.exit(1);
824
840
  }
825
- // Broadcast gate: project-scope addresses fan out to every watcher in the
826
- // project. That is rarely what the sender wants — orchestrator/chip traffic
827
- // belongs on the session segment. Require --broadcast as explicit confirmation
828
- // for the rare intentional case (release announcement, advisor heads-up).
829
- // adr: adr/broadcast-gate.md
830
- if (parsed.ok && parsed.targetKind === 'project' && !args.includes('--broadcast')) {
831
- console.error(`address "${to}" targets a project — every watcher in that project receives this message.\n` +
832
- ` This is almost always a mistake; chip/orchestrator traffic belongs on a session id.\n` +
833
- ` Either use --to <handle>@greprag.com/<session-uuid> for session-scoped delivery (recommended),\n` +
834
- ` or add --broadcast to confirm you really want every project watcher to receive it.`);
841
+ // Project broadcasts were removed (2026-06-07). A project-name target has no
842
+ // scope to send to reject it. Session/chip traffic belongs on a session id;
843
+ // first contact goes to the bare-handle front desk.
844
+ // adr: adr/address-grammar.md, docs/front-desk-switchboard.md §1
845
+ if (parsed.ok && parsed.targetKind === 'project') {
846
+ console.error(`address "${to}" targets a whole project project broadcasts were removed.\n` +
847
+ ` Send to one session: --to <handle>@greprag.com/<session-uuid>\n` +
848
+ ` or to the front desk: --to <handle>@greprag.com (bare handle, cold open)`);
835
849
  process.exit(1);
836
850
  }
837
851
  // Reject the dropped flags loudly so legacy scripts surface the change
@@ -840,7 +854,7 @@ async function send(args) {
840
854
  if (args.includes(dropped)) {
841
855
  console.error(`${dropped} was removed in v0.11. The address itself now carries the target —\n` +
842
856
  ` for session: --to <handle>@greprag.com/<session-uuid>\n` +
843
- ` for project broadcast: --to <handle>@greprag.com/<project-name> --broadcast`);
857
+ ` (project broadcasts were removed; there is no project target.)`);
844
858
  process.exit(1);
845
859
  }
846
860
  }
@@ -871,6 +885,12 @@ async function send(args) {
871
885
  console.log(`Sent to discord:${delivered.snowflake}`);
872
886
  return;
873
887
  }
888
+ // SMS destinations (Front Desk return leg) also short-circuit the inbox table
889
+ // — delivered to the operator's phone via Twilio, no row/id/retract.
890
+ if (delivered?.kind === 'sms' && delivered.phone) {
891
+ console.log(`Sent to sms:${delivered.phone}`);
892
+ return;
893
+ }
874
894
  // Render the delivered-to in the v0.11 single-segment grammar.
875
895
  // adr: adr/numeric-handles.md, adr/address-grammar.md
876
896
  const base = delivered.handle || `${delivered.tenant}@greprag.com`;
@@ -1174,8 +1194,8 @@ Inbox (email-style messaging across tenants):
1174
1194
  inbox [--all] [--session <id>] [--project <name>] [--peek]
1175
1195
  List unread, auto-scoped to THIS session: its own
1176
1196
  lines (sender OR recipient) + the front desk
1177
- (tenant catch-all) + project broadcasts. Other
1178
- sessions' private lines are hidden by default.
1197
+ (tenant catch-all). Other sessions' private lines
1198
+ are hidden by default.
1179
1199
  --all = audit peek: drop the per-session scope
1180
1200
  (every session's lines) AND include read history.
1181
1201
  --session scopes to one specific session's view.
@@ -1192,7 +1212,7 @@ Inbox (email-style messaging across tenants):
1192
1212
  reload-survival. "inbox watch --help" for details.
1193
1213
  [--project <name>] Filter to one project inbox (default: tenant-wide).
1194
1214
  [--session <id>] Filter to messages targeting this session
1195
- (plus untargeted broadcasts).
1215
+ (plus the front-desk catch-all).
1196
1216
  [--receptionist] Attend the front desk — wake live on a tenant
1197
1217
  catch-all (cold open / inbound email). Without it,
1198
1218
  cold opens surface only on a manual inbox check.
@@ -1219,9 +1239,6 @@ Inbox (email-style messaging across tenants):
1219
1239
  --in-reply-to <id> Thread a reply back to a front-desk record (cold open /
1220
1240
  inbound email) — sets references.in_reply_to so the
1221
1241
  ensuing private line continues that conversation.
1222
- --broadcast Required when <addr> targets a project — every watcher in
1223
- that project receives the message. Default behavior is
1224
- session-scoped delivery; this flag is the explicit opt-in.
1225
1242
  --to-desk Self-addressed internal mail — posts to THIS project's own
1226
1243
  desk (no recipient; omit --to). Requires --type.
1227
1244
  --type <internal-type> Internal messageType for --to-desk (e.g. lore_smell). Queue
@@ -1239,17 +1256,17 @@ Inbox (email-style messaging across tenants):
1239
1256
  Unread → hard delete. Read → body replaced with a retracted notice.
1240
1257
  Idempotent: double-retract is a no-op.
1241
1258
 
1242
- Addresses (v0.12+):
1259
+ Addresses:
1243
1260
  Cold open: <handle>@greprag.com tenant catch-all — first contact when
1244
- you don't know their session. Lands in
1245
- their inbox for a manual check; no live
1246
- ping. No --broadcast needed.
1261
+ you don't know their session. Lands on
1262
+ their front desk for a manual check;
1263
+ no live ping.
1247
1264
  Session: <handle>@greprag.com/<session-uuid> session-to-session (normal, live)
1248
- Project: <handle>@greprag.com/<project-name> project broadcast — requires --broadcast
1249
1265
  Self-desk: --to-desk --type <internal-type> internal queue item on your own project
1250
1266
  desk — no recipient, no wake; drained by
1251
1267
  its typed consumer (e.g. lore_smell).
1252
1268
  --session and --project flags were removed; the address carries the target.
1269
+ Project broadcasts (<handle>@greprag.com/<project-name>) were removed.
1253
1270
 
1254
1271
  Email (agent-email front desk — drain inbound attachments to local disk):
1255
1272
  email [pending] List pending front-desk email (envelope only).
@@ -1263,16 +1280,15 @@ Email (agent-email front desk — drain inbound attachments to local disk):
1263
1280
  in .greprag/project.json so the mail hook pulls
1264
1281
  new attachments each turn.
1265
1282
 
1266
- Memory (episodic project memory — turn/hourly/daily/weekly/ship-event):
1283
+ Memory (episodic project memory — turn/hourly/daily/ship-event):
1267
1284
  memory search "<query>" Lexical retrieval over the project's memory.
1268
1285
  Same v5 RRF + adjacency pipeline as 'corpus
1269
1286
  search'. Use when looking up a specific
1270
1287
  problem, bug, or topic.
1271
1288
  [--limit N=5] [--shape <name>] [--project <name>] [--format markdown|json]
1272
- memory recap Weekly + recent daily summaries (SessionStart shape).
1273
- [--daily-last N=7] [--weekly-last N=1] [--project <name>] [--format markdown|json]
1289
+ memory recap Recent daily summaries (SessionStart shape).
1290
+ [--daily-last N=7] [--project <name>] [--format markdown|json]
1274
1291
  memory daily [--last N=7] Most-recent daily summaries.
1275
- memory weekly [--last N=2] Most-recent weekly summaries.
1276
1292
  memory hourly [--last N=24] Most-recent hourly summaries.
1277
1293
  memory turns [--last N=20] Raw per-turn envelopes (21-day TTL).
1278
1294
  memory ships [--last N=50] Ship-event rows (commits/PRs/deploys/releases).
@@ -1388,8 +1404,8 @@ Examples:
1388
1404
  greprag inbox
1389
1405
  greprag send "done with migration" --to alice@greprag.com/abc12345
1390
1406
  # session-targeted (normal)
1391
- greprag send "deploy approved" --to alice@greprag.com/paybot
1392
- # project broadcast (rare)
1407
+ greprag send "deploy approved" --to alice@greprag.com
1408
+ # cold open — alice's front desk
1393
1409
  greprag send "Bug in auth flow — repro at line 42" --to alice@greprag.com/abc12345 \
1394
1410
  --file src/auth.ts:42 --artifact commit:abc123
1395
1411
  `.trim();