Documentation
    Preparing search index...
    • Extract plain path strings from a mixed watch paths array. Useful for downstream consumers that only need glob strings.

      Parameters

      • paths: (
            | string
            | {
                path: string;
                vcs?: {
                    accessToken?: string;
                    author?: { email: string; name: string };
                    branch?: string;
                    circuitBreakerCooldownMs?: number;
                    commitMessage?: {
                        apiKey?: string;
                        enabled: boolean;
                        model: string;
                        provider: string;
                    };
                    commitThrottleMs?: number;
                    defaultAccessToken?: string;
                    enabled?: boolean;
                    maxBatchSize?: number;
                    maxConsecutiveFailures?: number;
                    remote?: string;
                    retention?: {
                        maxAgeDays: number;
                        maxVersions: number;
                        squashCron: string;
                    };
                    staleLockThresholdMs?: number;
                };
            }
        )[]

        Array of string or object watch path entries.

        • string
        • {
              path: string;
              vcs?: {
                  accessToken?: string;
                  author?: { email: string; name: string };
                  branch?: string;
                  circuitBreakerCooldownMs?: number;
                  commitMessage?: {
                      apiKey?: string;
                      enabled: boolean;
                      model: string;
                      provider: string;
                  };
                  commitThrottleMs?: number;
                  defaultAccessToken?: string;
                  enabled?: boolean;
                  maxBatchSize?: number;
                  maxConsecutiveFailures?: number;
                  remote?: string;
                  retention?: {
                      maxAgeDays: number;
                      maxVersions: number;
                      squashCron: string;
                  };
                  staleLockThresholdMs?: number;
              };
          }
          • path: string

            Glob pattern for files to watch.

          • Optionalvcs?: {
                accessToken?: string;
                author?: { email: string; name: string };
                branch?: string;
                circuitBreakerCooldownMs?: number;
                commitMessage?: {
                    apiKey?: string;
                    enabled: boolean;
                    model: string;
                    provider: string;
                };
                commitThrottleMs?: number;
                defaultAccessToken?: string;
                enabled?: boolean;
                maxBatchSize?: number;
                maxConsecutiveFailures?: number;
                remote?: string;
                retention?: { maxAgeDays: number; maxVersions: number; squashCron: string };
                staleLockThresholdMs?: number;
            }

            Per-root VCS overrides.

            • OptionalaccessToken?: string

              Access token override for this watch root. Supports env var substitution.

            • Optionalauthor?: { email: string; name: string }

              Git commit author identity. Set per-repo during init.

              • email: string

                Author email for git commits.

              • name: string

                Author name for git commits.

            • Optionalbranch?: string

              Git branch name for VCS operations. SquashManager and startup recovery use this instead of dynamic detection.

            • OptionalcircuitBreakerCooldownMs?: number

              Circuit breaker cooldown in ms. Once tripped, pending files are retained (re-queued, never discarded) and a single half-open recovery attempt is allowed once this cooldown elapses — without requiring a new file-change event.

            • OptionalcommitMessage?: { apiKey?: string; enabled: boolean; model: string; provider: string }

              Commit message generation configuration.

              • OptionalapiKey?: string

                API key for commit message provider. Supports env var substitution.

              • enabled: boolean

                Whether AI-generated commit messages are enabled.

              • model: string

                AI model for commit message generation.

              • provider: string

                AI provider for commit message generation.

            • OptionalcommitThrottleMs?: number

              Throttle interval in milliseconds for batching commits.

            • OptionaldefaultAccessToken?: string

              Default git access token for all roots. Supports env var substitution.

            • Optionalenabled?: boolean

              Whether VCS is enabled globally.

            • OptionalmaxBatchSize?: number

              Maximum number of files per commit batch.

            • OptionalmaxConsecutiveFailures?: number

              Circuit breaker: trip after this many consecutive commit failures.

            • Optionalremote?: string

              Git remote URL for this watch root.

            • Optionalretention?: { maxAgeDays: number; maxVersions: number; squashCron: string }

              Retention policy configuration.

              • maxAgeDays: number

                Maximum age in days for retained versions.

              • maxVersions: number

                Maximum number of versions to retain per file.

              • squashCron: string

                Cron expression for squash schedule.

            • OptionalstaleLockThresholdMs?: number

              Age in ms after which an index.lock is considered stale and force-removed.

      Returns string[]

      Array of path strings.