@codedrifters/configulator 0.0.158 → 0.0.160

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/lib/index.d.mts CHANGED
@@ -213,6 +213,19 @@ interface AgentSkill {
213
213
  /**
214
214
  * Platform-specific overrides for a sub-agent definition.
215
215
  */
216
+ /**
217
+ * Copilot handoff definition for sub-agent delegation.
218
+ */
219
+ interface CopilotHandoff {
220
+ /** Display label for the handoff action. */
221
+ readonly label: string;
222
+ /** Target agent name. */
223
+ readonly agent: string;
224
+ /** Optional prompt to pass to the target agent. */
225
+ readonly prompt?: string;
226
+ /** Whether to auto-send the handoff without user confirmation. */
227
+ readonly send?: boolean;
228
+ }
216
229
  interface AgentSubAgentPlatformOverrides {
217
230
  /** Claude Code-specific overrides */
218
231
  readonly claude?: {
@@ -220,8 +233,12 @@ interface AgentSubAgentPlatformOverrides {
220
233
  readonly permissionMode?: string;
221
234
  /** Run in isolated git worktree */
222
235
  readonly isolation?: string;
223
- /** Reasoning effort level */
236
+ /** Run as a background task */
237
+ readonly background?: boolean;
238
+ /** Reasoning effort level (Opus): low, medium, high, max */
224
239
  readonly effort?: string;
240
+ /** Persistent memory scope: user, project, local */
241
+ readonly memory?: string;
225
242
  /** Exclude this sub-agent from Claude Code output entirely */
226
243
  readonly exclude?: boolean;
227
244
  };
@@ -236,11 +253,23 @@ interface AgentSubAgentPlatformOverrides {
236
253
  };
237
254
  /** Codex-specific overrides (future) */
238
255
  readonly codex?: {
256
+ /** Sandbox mode: read-only or full */
257
+ readonly sandboxMode?: string;
258
+ /** Model reasoning effort */
259
+ readonly modelReasoningEffort?: string;
239
260
  /** Exclude this sub-agent from Codex output entirely */
240
261
  readonly exclude?: boolean;
241
262
  };
242
263
  /** Copilot-specific overrides (future) */
243
264
  readonly copilot?: {
265
+ /** Target environment: vscode or github-copilot */
266
+ readonly target?: string;
267
+ /** Whether the user can invoke this sub-agent directly */
268
+ readonly userInvocable?: boolean;
269
+ /** Prevent auto-invocation of this sub-agent */
270
+ readonly disableModelInvocation?: boolean;
271
+ /** Handoff definitions for agent-to-agent delegation */
272
+ readonly handoffs?: ReadonlyArray<CopilotHandoff>;
244
273
  /** Exclude this sub-agent from Copilot output entirely */
245
274
  readonly exclude?: boolean;
246
275
  };
@@ -273,8 +302,28 @@ interface AgentSubAgent {
273
302
  * @example ['Read', 'Glob', 'Grep']
274
303
  */
275
304
  readonly tools?: ReadonlyArray<string>;
305
+ /**
306
+ * Tool denylist. Applied before the allowlist.
307
+ * @example ['Bash', 'Write']
308
+ */
309
+ readonly disallowedTools?: ReadonlyArray<string>;
276
310
  /** Maximum agentic turns before the sub-agent stops. */
277
311
  readonly maxTurns?: number;
312
+ /**
313
+ * Skills to preload for this sub-agent.
314
+ * @example ['commit', 'review-pr']
315
+ */
316
+ readonly skills?: ReadonlyArray<string>;
317
+ /**
318
+ * MCP servers available to this sub-agent.
319
+ * Rendered to the platform-specific sub-agent config.
320
+ */
321
+ readonly mcpServers?: Readonly<Record<string, McpServerConfig>>;
322
+ /**
323
+ * Sub-agents this agent can invoke/delegate to.
324
+ * @example ['test-writer', 'code-reviewer']
325
+ */
326
+ readonly canDelegateToAgents?: ReadonlyArray<string>;
278
327
  /** Optional per-platform overrides for this sub-agent. */
279
328
  readonly platforms?: AgentSubAgentPlatformOverrides;
280
329
  }
@@ -294,8 +343,21 @@ interface McpServerConfig {
294
343
  readonly args?: ReadonlyArray<string>;
295
344
  /** URL for HTTP/SSE remote servers. */
296
345
  readonly url?: string;
346
+ /** HTTP headers for HTTP/SSE connections. */
347
+ readonly headers?: Readonly<Record<string, string>>;
297
348
  /** Environment variables for the server process. */
298
349
  readonly env?: Readonly<Record<string, string>>;
350
+ /**
351
+ * Tool allowlist — only these tools from the server will be available.
352
+ * @example ['read_file', 'search']
353
+ */
354
+ readonly enabledTools?: ReadonlyArray<string>;
355
+ /**
356
+ * Tool denylist — these tools from the server will be blocked.
357
+ * Applied before enabledTools.
358
+ * @example ['delete_file', 'execute']
359
+ */
360
+ readonly disabledTools?: ReadonlyArray<string>;
299
361
  }
300
362
 
301
363
  /*******************************************************************************
@@ -361,22 +423,58 @@ interface CursorHooksConfig {
361
423
  * Fires before a shell command executes. Blocking — can deny execution.
362
424
  */
363
425
  readonly beforeShellExecution?: ReadonlyArray<CursorHookAction>;
426
+ /**
427
+ * Fires after a shell command executes. Non-blocking (informational).
428
+ */
429
+ readonly afterShellExecution?: ReadonlyArray<CursorHookAction>;
364
430
  /**
365
431
  * Fires before an MCP tool is invoked. Blocking — can deny execution.
366
432
  */
367
433
  readonly beforeMCPExecution?: ReadonlyArray<CursorHookAction>;
434
+ /**
435
+ * Fires after an MCP tool is invoked. Non-blocking (informational).
436
+ */
437
+ readonly afterMCPExecution?: ReadonlyArray<CursorHookAction>;
368
438
  /**
369
439
  * Fires before a file is read by the AI. Blocking — can rewrite content.
370
440
  */
371
441
  readonly beforeReadFile?: ReadonlyArray<CursorHookAction>;
442
+ /**
443
+ * Fires before a tab file is read. Blocking — can rewrite content.
444
+ */
445
+ readonly beforeTabFileRead?: ReadonlyArray<CursorHookAction>;
372
446
  /**
373
447
  * Fires after a file is edited. Non-blocking (informational).
374
448
  */
375
449
  readonly afterFileEdit?: ReadonlyArray<CursorHookAction>;
450
+ /**
451
+ * Fires after a tab file is edited. Non-blocking (informational).
452
+ */
453
+ readonly afterTabFileEdit?: ReadonlyArray<CursorHookAction>;
376
454
  /**
377
455
  * Fires when the agent stops. Non-blocking (informational).
378
456
  */
379
457
  readonly stop?: ReadonlyArray<CursorHookAction>;
458
+ /**
459
+ * Fires when a session starts. Non-blocking (informational).
460
+ */
461
+ readonly sessionStart?: ReadonlyArray<CursorHookAction>;
462
+ /**
463
+ * Fires when a session ends. Non-blocking (informational).
464
+ */
465
+ readonly sessionEnd?: ReadonlyArray<CursorHookAction>;
466
+ /**
467
+ * Fires before context compaction. Non-blocking (informational).
468
+ */
469
+ readonly preCompact?: ReadonlyArray<CursorHookAction>;
470
+ /**
471
+ * Fires after the agent produces a response. Non-blocking (informational).
472
+ */
473
+ readonly afterAgentResponse?: ReadonlyArray<CursorHookAction>;
474
+ /**
475
+ * Fires after the agent produces a thought. Non-blocking (informational).
476
+ */
477
+ readonly afterAgentThought?: ReadonlyArray<CursorHookAction>;
380
478
  }
381
479
  /**
382
480
  * Cursor-specific configuration options.
@@ -556,6 +654,8 @@ interface ClaudeSettingsConfig {
556
654
  readonly mcpServers?: Readonly<Record<string, McpServerConfig>>;
557
655
  /** MCP servers to explicitly allow. */
558
656
  readonly allowedMcpServers?: ReadonlyArray<string>;
657
+ /** MCP servers to explicitly deny. */
658
+ readonly deniedMcpServers?: ReadonlyArray<string>;
559
659
  /** Environment variables passed to Claude's shell. */
560
660
  readonly env?: Readonly<Record<string, string>>;
561
661
  /** Sandbox configuration. */
@@ -573,6 +673,16 @@ interface ClaudeSettingsConfig {
573
673
  * @example ['**\/.env', '**\/*.key', '**\/secrets/**']
574
674
  */
575
675
  readonly excludeSensitivePatterns?: ReadonlyArray<string>;
676
+ /**
677
+ * Default model ID for the project.
678
+ * @example 'claude-opus-4-6'
679
+ */
680
+ readonly model?: string;
681
+ /**
682
+ * Default reasoning effort level.
683
+ * @example 'high'
684
+ */
685
+ readonly effortLevel?: string;
576
686
  /** Attribution configuration for commits and PRs created by Claude. */
577
687
  readonly attribution?: {
578
688
  /** Attribution mode: 'inherit', 'always', 'never'. */
@@ -583,6 +693,16 @@ interface ClaudeSettingsConfig {
583
693
  readonly email?: string;
584
694
  };
585
695
  };
696
+ /**
697
+ * Glob patterns to exclude from CLAUDE.md file search.
698
+ * @example ['vendor/**', 'generated/**']
699
+ */
700
+ readonly claudeMdExcludes?: ReadonlyArray<string>;
701
+ /**
702
+ * Whether to respect .gitignore when indexing files.
703
+ * @default true
704
+ */
705
+ readonly respectGitignore?: boolean;
586
706
  }
587
707
  /*******************************************************************************
588
708
  *
@@ -2344,17 +2464,17 @@ interface MonorepoProjectOptions extends Omit<TypeScriptProjectOptions$1, "defau
2344
2464
  */
2345
2465
  readonly projectMetadata?: ProjectMetadataOptions | false;
2346
2466
  /**
2347
- * Enable AI agent configuration (Cursor, Claude Code rules).
2348
- * When true, generates rule files at the monorepo root with auto-detected
2349
- * bundles based on project and subproject introspection.
2467
+ * AI agent configuration (Cursor, Claude Code rules).
2468
+ * Generates rule files at the monorepo root with auto-detected bundles
2469
+ * based on project and subproject introspection.
2470
+ *
2471
+ * - `true` or `{}`: enable with auto-detected defaults
2472
+ * - `AgentConfigOptions`: enable with explicit configuration
2473
+ * - `false` or `undefined`: disabled (default)
2350
2474
  *
2351
2475
  * @default false
2352
2476
  */
2353
- readonly agentConfig?: boolean;
2354
- /**
2355
- * Options for the AgentConfig component. Only used when `agentConfig` is true.
2356
- */
2357
- readonly agentConfigOptions?: AgentConfigOptions;
2477
+ readonly agentConfig?: AgentConfigOptions | boolean;
2358
2478
  }
2359
2479
  declare class MonorepoProject extends TypeScriptAppProject {
2360
2480
  /**
@@ -2539,6 +2659,20 @@ interface TypeScriptProjectOptions extends Omit<typescript.TypeScriptProjectOpti
2539
2659
  * Options for the reset task.
2540
2660
  */
2541
2661
  readonly resetTaskOptions?: ResetTaskOptions;
2662
+ /**
2663
+ * AI agent configuration (Cursor, Claude Code rules).
2664
+ * Generates rule files with auto-detected bundles based on project tooling.
2665
+ *
2666
+ * - `true` or `{}`: enable with auto-detected defaults
2667
+ * - `AgentConfigOptions`: enable with explicit configuration
2668
+ * - `false` or `undefined`: disabled (default)
2669
+ *
2670
+ * When the parent is a MonorepoProject with AgentConfig enabled and this
2671
+ * option is not explicitly set, the sub-project inherits enablement.
2672
+ *
2673
+ * @default false
2674
+ */
2675
+ readonly agentConfig?: AgentConfigOptions | boolean;
2542
2676
  }
2543
2677
  declare class TypeScriptProject extends typescript.TypeScriptProject {
2544
2678
  constructor(userOptions: TypeScriptProjectOptions);
@@ -2659,4 +2793,4 @@ declare const COMPLETE_JOB_ID = "complete";
2659
2793
  */
2660
2794
  declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
2661
2795
 
2662
- export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AgentConfig, type AgentConfigOptions, type AgentModel, type AgentPlatform, type AgentPlatformOverrides, type AgentRule, type AgentRuleBundle, type AgentRuleScope, type AgentSkill, type AgentSubAgent, type AgentSubAgentPlatformOverrides, type ApproveMergeUpgradeOptions, type AwsAccount, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, type AwsDeploymentTargetOptions, type AwsLocalDeploymentConfig, type AwsOrganization, type AwsRegion, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, type CiDeploymentConfig, type ClassTypeOptions, type ClaudeAutoModeConfig, type ClaudeHookAction, type ClaudeHookEntry, type ClaudeHooksConfig, type ClaudePermissionsConfig, type ClaudeRuleTarget, type ClaudeSandboxConfig, type ClaudeSettingsConfig, type CursorHookAction, type CursorHooksConfig, type CursorSettingsConfig, type DeployWorkflowOptions, type DeploymentMetadata, type GitBranch, type GitHubBoardMetadata, type GitHubProjectMetadata, type GitHubSprintMetadata, type IDependencyResolver, JsiiFaker, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, type McpServerConfig, type McpTransport, type MergeMethod, MonorepoProject, type MonorepoProjectOptions, type OrganizationMetadata, PROD_DEPLOY_NAME, PnpmWorkspace, type PnpmWorkspaceOptions, ProjectMetadata, type ProjectMetadataOptions, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, type RemoteCacheOptions, type RepositoryMetadata, ResetTask, type ResetTaskOptions, type ResolvedProjectMetadata, type SlackMetadata, type TemplateResolveResult, TestRunner, TurboRepo, type TurboRepoOptions, TurboRepoTask, type TurboRepoTaskOptions, TypeScriptConfig, TypeScriptProject, type TypeScriptProjectOptions, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, type VersionKey, Vitest, type VitestConfigOptions, type VitestOptions, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, awsCdkBundle, baseBundle, getLatestEligibleVersion, jestBundle, pnpmBundle, projenBundle, resolveTemplateVariables, turborepoBundle, typescriptBundle, vitestBundle };
2796
+ export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AgentConfig, type AgentConfigOptions, type AgentModel, type AgentPlatform, type AgentPlatformOverrides, type AgentRule, type AgentRuleBundle, type AgentRuleScope, type AgentSkill, type AgentSubAgent, type AgentSubAgentPlatformOverrides, type ApproveMergeUpgradeOptions, type AwsAccount, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, type AwsDeploymentTargetOptions, type AwsLocalDeploymentConfig, type AwsOrganization, type AwsRegion, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, type CiDeploymentConfig, type ClassTypeOptions, type ClaudeAutoModeConfig, type ClaudeHookAction, type ClaudeHookEntry, type ClaudeHooksConfig, type ClaudePermissionsConfig, type ClaudeRuleTarget, type ClaudeSandboxConfig, type ClaudeSettingsConfig, type CopilotHandoff, type CursorHookAction, type CursorHooksConfig, type CursorSettingsConfig, type DeployWorkflowOptions, type DeploymentMetadata, type GitBranch, type GitHubBoardMetadata, type GitHubProjectMetadata, type GitHubSprintMetadata, type IDependencyResolver, JsiiFaker, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, type McpServerConfig, type McpTransport, type MergeMethod, MonorepoProject, type MonorepoProjectOptions, type OrganizationMetadata, PROD_DEPLOY_NAME, PnpmWorkspace, type PnpmWorkspaceOptions, ProjectMetadata, type ProjectMetadataOptions, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, type RemoteCacheOptions, type RepositoryMetadata, ResetTask, type ResetTaskOptions, type ResolvedProjectMetadata, type SlackMetadata, type TemplateResolveResult, TestRunner, TurboRepo, type TurboRepoOptions, TurboRepoTask, type TurboRepoTaskOptions, TypeScriptConfig, TypeScriptProject, type TypeScriptProjectOptions, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, type VersionKey, Vitest, type VitestConfigOptions, type VitestOptions, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, awsCdkBundle, baseBundle, getLatestEligibleVersion, jestBundle, pnpmBundle, projenBundle, resolveTemplateVariables, turborepoBundle, typescriptBundle, vitestBundle };
package/lib/index.d.ts CHANGED
@@ -262,6 +262,19 @@ interface AgentSkill {
262
262
  /**
263
263
  * Platform-specific overrides for a sub-agent definition.
264
264
  */
265
+ /**
266
+ * Copilot handoff definition for sub-agent delegation.
267
+ */
268
+ interface CopilotHandoff {
269
+ /** Display label for the handoff action. */
270
+ readonly label: string;
271
+ /** Target agent name. */
272
+ readonly agent: string;
273
+ /** Optional prompt to pass to the target agent. */
274
+ readonly prompt?: string;
275
+ /** Whether to auto-send the handoff without user confirmation. */
276
+ readonly send?: boolean;
277
+ }
265
278
  interface AgentSubAgentPlatformOverrides {
266
279
  /** Claude Code-specific overrides */
267
280
  readonly claude?: {
@@ -269,8 +282,12 @@ interface AgentSubAgentPlatformOverrides {
269
282
  readonly permissionMode?: string;
270
283
  /** Run in isolated git worktree */
271
284
  readonly isolation?: string;
272
- /** Reasoning effort level */
285
+ /** Run as a background task */
286
+ readonly background?: boolean;
287
+ /** Reasoning effort level (Opus): low, medium, high, max */
273
288
  readonly effort?: string;
289
+ /** Persistent memory scope: user, project, local */
290
+ readonly memory?: string;
274
291
  /** Exclude this sub-agent from Claude Code output entirely */
275
292
  readonly exclude?: boolean;
276
293
  };
@@ -285,11 +302,23 @@ interface AgentSubAgentPlatformOverrides {
285
302
  };
286
303
  /** Codex-specific overrides (future) */
287
304
  readonly codex?: {
305
+ /** Sandbox mode: read-only or full */
306
+ readonly sandboxMode?: string;
307
+ /** Model reasoning effort */
308
+ readonly modelReasoningEffort?: string;
288
309
  /** Exclude this sub-agent from Codex output entirely */
289
310
  readonly exclude?: boolean;
290
311
  };
291
312
  /** Copilot-specific overrides (future) */
292
313
  readonly copilot?: {
314
+ /** Target environment: vscode or github-copilot */
315
+ readonly target?: string;
316
+ /** Whether the user can invoke this sub-agent directly */
317
+ readonly userInvocable?: boolean;
318
+ /** Prevent auto-invocation of this sub-agent */
319
+ readonly disableModelInvocation?: boolean;
320
+ /** Handoff definitions for agent-to-agent delegation */
321
+ readonly handoffs?: ReadonlyArray<CopilotHandoff>;
293
322
  /** Exclude this sub-agent from Copilot output entirely */
294
323
  readonly exclude?: boolean;
295
324
  };
@@ -322,8 +351,28 @@ interface AgentSubAgent {
322
351
  * @example ['Read', 'Glob', 'Grep']
323
352
  */
324
353
  readonly tools?: ReadonlyArray<string>;
354
+ /**
355
+ * Tool denylist. Applied before the allowlist.
356
+ * @example ['Bash', 'Write']
357
+ */
358
+ readonly disallowedTools?: ReadonlyArray<string>;
325
359
  /** Maximum agentic turns before the sub-agent stops. */
326
360
  readonly maxTurns?: number;
361
+ /**
362
+ * Skills to preload for this sub-agent.
363
+ * @example ['commit', 'review-pr']
364
+ */
365
+ readonly skills?: ReadonlyArray<string>;
366
+ /**
367
+ * MCP servers available to this sub-agent.
368
+ * Rendered to the platform-specific sub-agent config.
369
+ */
370
+ readonly mcpServers?: Readonly<Record<string, McpServerConfig>>;
371
+ /**
372
+ * Sub-agents this agent can invoke/delegate to.
373
+ * @example ['test-writer', 'code-reviewer']
374
+ */
375
+ readonly canDelegateToAgents?: ReadonlyArray<string>;
327
376
  /** Optional per-platform overrides for this sub-agent. */
328
377
  readonly platforms?: AgentSubAgentPlatformOverrides;
329
378
  }
@@ -343,8 +392,21 @@ interface McpServerConfig {
343
392
  readonly args?: ReadonlyArray<string>;
344
393
  /** URL for HTTP/SSE remote servers. */
345
394
  readonly url?: string;
395
+ /** HTTP headers for HTTP/SSE connections. */
396
+ readonly headers?: Readonly<Record<string, string>>;
346
397
  /** Environment variables for the server process. */
347
398
  readonly env?: Readonly<Record<string, string>>;
399
+ /**
400
+ * Tool allowlist — only these tools from the server will be available.
401
+ * @example ['read_file', 'search']
402
+ */
403
+ readonly enabledTools?: ReadonlyArray<string>;
404
+ /**
405
+ * Tool denylist — these tools from the server will be blocked.
406
+ * Applied before enabledTools.
407
+ * @example ['delete_file', 'execute']
408
+ */
409
+ readonly disabledTools?: ReadonlyArray<string>;
348
410
  }
349
411
 
350
412
  /*******************************************************************************
@@ -410,22 +472,58 @@ interface CursorHooksConfig {
410
472
  * Fires before a shell command executes. Blocking — can deny execution.
411
473
  */
412
474
  readonly beforeShellExecution?: ReadonlyArray<CursorHookAction>;
475
+ /**
476
+ * Fires after a shell command executes. Non-blocking (informational).
477
+ */
478
+ readonly afterShellExecution?: ReadonlyArray<CursorHookAction>;
413
479
  /**
414
480
  * Fires before an MCP tool is invoked. Blocking — can deny execution.
415
481
  */
416
482
  readonly beforeMCPExecution?: ReadonlyArray<CursorHookAction>;
483
+ /**
484
+ * Fires after an MCP tool is invoked. Non-blocking (informational).
485
+ */
486
+ readonly afterMCPExecution?: ReadonlyArray<CursorHookAction>;
417
487
  /**
418
488
  * Fires before a file is read by the AI. Blocking — can rewrite content.
419
489
  */
420
490
  readonly beforeReadFile?: ReadonlyArray<CursorHookAction>;
491
+ /**
492
+ * Fires before a tab file is read. Blocking — can rewrite content.
493
+ */
494
+ readonly beforeTabFileRead?: ReadonlyArray<CursorHookAction>;
421
495
  /**
422
496
  * Fires after a file is edited. Non-blocking (informational).
423
497
  */
424
498
  readonly afterFileEdit?: ReadonlyArray<CursorHookAction>;
499
+ /**
500
+ * Fires after a tab file is edited. Non-blocking (informational).
501
+ */
502
+ readonly afterTabFileEdit?: ReadonlyArray<CursorHookAction>;
425
503
  /**
426
504
  * Fires when the agent stops. Non-blocking (informational).
427
505
  */
428
506
  readonly stop?: ReadonlyArray<CursorHookAction>;
507
+ /**
508
+ * Fires when a session starts. Non-blocking (informational).
509
+ */
510
+ readonly sessionStart?: ReadonlyArray<CursorHookAction>;
511
+ /**
512
+ * Fires when a session ends. Non-blocking (informational).
513
+ */
514
+ readonly sessionEnd?: ReadonlyArray<CursorHookAction>;
515
+ /**
516
+ * Fires before context compaction. Non-blocking (informational).
517
+ */
518
+ readonly preCompact?: ReadonlyArray<CursorHookAction>;
519
+ /**
520
+ * Fires after the agent produces a response. Non-blocking (informational).
521
+ */
522
+ readonly afterAgentResponse?: ReadonlyArray<CursorHookAction>;
523
+ /**
524
+ * Fires after the agent produces a thought. Non-blocking (informational).
525
+ */
526
+ readonly afterAgentThought?: ReadonlyArray<CursorHookAction>;
429
527
  }
430
528
  /**
431
529
  * Cursor-specific configuration options.
@@ -605,6 +703,8 @@ interface ClaudeSettingsConfig {
605
703
  readonly mcpServers?: Readonly<Record<string, McpServerConfig>>;
606
704
  /** MCP servers to explicitly allow. */
607
705
  readonly allowedMcpServers?: ReadonlyArray<string>;
706
+ /** MCP servers to explicitly deny. */
707
+ readonly deniedMcpServers?: ReadonlyArray<string>;
608
708
  /** Environment variables passed to Claude's shell. */
609
709
  readonly env?: Readonly<Record<string, string>>;
610
710
  /** Sandbox configuration. */
@@ -622,6 +722,16 @@ interface ClaudeSettingsConfig {
622
722
  * @example ['**\/.env', '**\/*.key', '**\/secrets/**']
623
723
  */
624
724
  readonly excludeSensitivePatterns?: ReadonlyArray<string>;
725
+ /**
726
+ * Default model ID for the project.
727
+ * @example 'claude-opus-4-6'
728
+ */
729
+ readonly model?: string;
730
+ /**
731
+ * Default reasoning effort level.
732
+ * @example 'high'
733
+ */
734
+ readonly effortLevel?: string;
625
735
  /** Attribution configuration for commits and PRs created by Claude. */
626
736
  readonly attribution?: {
627
737
  /** Attribution mode: 'inherit', 'always', 'never'. */
@@ -632,6 +742,16 @@ interface ClaudeSettingsConfig {
632
742
  readonly email?: string;
633
743
  };
634
744
  };
745
+ /**
746
+ * Glob patterns to exclude from CLAUDE.md file search.
747
+ * @example ['vendor/**', 'generated/**']
748
+ */
749
+ readonly claudeMdExcludes?: ReadonlyArray<string>;
750
+ /**
751
+ * Whether to respect .gitignore when indexing files.
752
+ * @default true
753
+ */
754
+ readonly respectGitignore?: boolean;
635
755
  }
636
756
  /*******************************************************************************
637
757
  *
@@ -2393,17 +2513,17 @@ interface MonorepoProjectOptions extends Omit<TypeScriptProjectOptions$1, "defau
2393
2513
  */
2394
2514
  readonly projectMetadata?: ProjectMetadataOptions | false;
2395
2515
  /**
2396
- * Enable AI agent configuration (Cursor, Claude Code rules).
2397
- * When true, generates rule files at the monorepo root with auto-detected
2398
- * bundles based on project and subproject introspection.
2516
+ * AI agent configuration (Cursor, Claude Code rules).
2517
+ * Generates rule files at the monorepo root with auto-detected bundles
2518
+ * based on project and subproject introspection.
2519
+ *
2520
+ * - `true` or `{}`: enable with auto-detected defaults
2521
+ * - `AgentConfigOptions`: enable with explicit configuration
2522
+ * - `false` or `undefined`: disabled (default)
2399
2523
  *
2400
2524
  * @default false
2401
2525
  */
2402
- readonly agentConfig?: boolean;
2403
- /**
2404
- * Options for the AgentConfig component. Only used when `agentConfig` is true.
2405
- */
2406
- readonly agentConfigOptions?: AgentConfigOptions;
2526
+ readonly agentConfig?: AgentConfigOptions | boolean;
2407
2527
  }
2408
2528
  declare class MonorepoProject extends TypeScriptAppProject {
2409
2529
  /**
@@ -2588,6 +2708,20 @@ interface TypeScriptProjectOptions extends Omit<typescript.TypeScriptProjectOpti
2588
2708
  * Options for the reset task.
2589
2709
  */
2590
2710
  readonly resetTaskOptions?: ResetTaskOptions;
2711
+ /**
2712
+ * AI agent configuration (Cursor, Claude Code rules).
2713
+ * Generates rule files with auto-detected bundles based on project tooling.
2714
+ *
2715
+ * - `true` or `{}`: enable with auto-detected defaults
2716
+ * - `AgentConfigOptions`: enable with explicit configuration
2717
+ * - `false` or `undefined`: disabled (default)
2718
+ *
2719
+ * When the parent is a MonorepoProject with AgentConfig enabled and this
2720
+ * option is not explicitly set, the sub-project inherits enablement.
2721
+ *
2722
+ * @default false
2723
+ */
2724
+ readonly agentConfig?: AgentConfigOptions | boolean;
2591
2725
  }
2592
2726
  declare class TypeScriptProject extends typescript.TypeScriptProject {
2593
2727
  constructor(userOptions: TypeScriptProjectOptions);
@@ -2709,4 +2843,4 @@ declare const COMPLETE_JOB_ID = "complete";
2709
2843
  declare function addBuildCompleteJob(buildWorkflow: BuildWorkflow): void;
2710
2844
 
2711
2845
  export { AGENT_MODEL, AGENT_PLATFORM, AGENT_RULE_SCOPE, AgentConfig, AwsDeployWorkflow, AwsDeploymentConfig, AwsDeploymentTarget, BUILT_IN_BUNDLES, CLAUDE_RULE_TARGET, COMPLETE_JOB_ID, JsiiFaker, MCP_TRANSPORT, MERGE_METHODS, MIMIMUM_RELEASE_AGE, MonorepoProject, PROD_DEPLOY_NAME, PnpmWorkspace, ProjectMetadata, ROOT_CI_TASK_NAME, ROOT_TURBO_TASK_NAME, ResetTask, TestRunner, TurboRepo, TurboRepoTask, TypeScriptConfig, TypeScriptProject, VERSION, VERSION_KEYS_SKIP, VERSION_NPM_PACKAGES, VSCodeConfig, Vitest, addApproveMergeUpgradeWorkflow, addBuildCompleteJob, awsCdkBundle, baseBundle, getLatestEligibleVersion, jestBundle, pnpmBundle, projenBundle, resolveTemplateVariables, turborepoBundle, typescriptBundle, vitestBundle };
2712
- export type { AgentConfigOptions, AgentModel, AgentPlatform, AgentPlatformOverrides, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, ApproveMergeUpgradeOptions, AwsAccount, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, DeployWorkflowOptions, DeploymentMetadata, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, McpServerConfig, McpTransport, MergeMethod, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, ProjectMetadataOptions, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedProjectMetadata, SlackMetadata, TemplateResolveResult, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, VersionKey, VitestConfigOptions, VitestOptions };
2846
+ export type { AgentConfigOptions, AgentModel, AgentPlatform, AgentPlatformOverrides, AgentRule, AgentRuleBundle, AgentRuleScope, AgentSkill, AgentSubAgent, AgentSubAgentPlatformOverrides, ApproveMergeUpgradeOptions, AwsAccount, AwsDeploymentTargetOptions, AwsLocalDeploymentConfig, AwsOrganization, AwsRegion, CiDeploymentConfig, ClassTypeOptions, ClaudeAutoModeConfig, ClaudeHookAction, ClaudeHookEntry, ClaudeHooksConfig, ClaudePermissionsConfig, ClaudeRuleTarget, ClaudeSandboxConfig, ClaudeSettingsConfig, CopilotHandoff, CursorHookAction, CursorHooksConfig, CursorSettingsConfig, DeployWorkflowOptions, DeploymentMetadata, GitBranch, GitHubBoardMetadata, GitHubProjectMetadata, GitHubSprintMetadata, IDependencyResolver, McpServerConfig, McpTransport, MergeMethod, MonorepoProjectOptions, OrganizationMetadata, PnpmWorkspaceOptions, ProjectMetadataOptions, RemoteCacheOptions, RepositoryMetadata, ResetTaskOptions, ResolvedProjectMetadata, SlackMetadata, TemplateResolveResult, TurboRepoOptions, TurboRepoTaskOptions, TypeScriptProjectOptions, VersionKey, VitestConfigOptions, VitestOptions };