syntaur 0.45.0 → 0.46.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.
@@ -226,6 +226,13 @@ interface HotkeyBindingsConfig {
226
226
  bindings: Partial<Record<BindableActionKind, string>>;
227
227
  }
228
228
 
229
+ /**
230
+ * Automatic session tracking scope:
231
+ * - `all`: every discovered/hooked session is written to the sessions DB.
232
+ * - `workspaces-only`: only sessions whose cwd has `.syntaur/context.json`.
233
+ * - `off`: no automatic DB writes (manual `track-session` still works).
234
+ */
235
+ type SessionAutoTrack = 'all' | 'workspaces-only' | 'off';
229
236
  interface SyntaurConfig {
230
237
  version: string;
231
238
  defaultProjectDir: string;
@@ -235,6 +242,9 @@ interface SyntaurConfig {
235
242
  autoApprove: boolean;
236
243
  autoCreateWorktree: AutoCreateWorktree;
237
244
  };
245
+ session: {
246
+ autoTrack: SessionAutoTrack;
247
+ };
238
248
  integrations: IntegrationConfig;
239
249
  backup: BackupConfig | null;
240
250
  statuses: StatusConfig | null;
@@ -280,6 +290,15 @@ interface LaunchPlan {
280
290
  shellFallbackWarning: string | null;
281
291
  /** Non-fatal launch-prompt token warnings (unknown/malformed `@`-tokens). */
282
292
  promptWarnings?: string[];
293
+ /**
294
+ * Session identity at launch time, for register-at-birth. `sessionId` is only
295
+ * known for resume-mode session launches; fresh/fork launches mint a NEW id
296
+ * inside the agent, so they carry `null` and rely on the pending runtime
297
+ * marker + scanner to close the gap. Absent on assignment launches.
298
+ */
299
+ session?: {
300
+ sessionId: string | null;
301
+ };
283
302
  }
284
303
  interface ResolveLaunchPlanInput {
285
304
  kind: 'assignment' | 'session';