agent-bober 0.18.0 → 0.19.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/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +11 -0
- package/README.md +245 -6
- package/agents/bober-art-director.md +100 -0
- package/agents/bober-design-critic.md +114 -0
- package/agents/bober-frontend-builder.md +101 -0
- package/agents/bober-security-auditor.md +193 -0
- package/agents/bober-security-verifier.md +104 -0
- package/agents/bober-seo-strategist.md +144 -0
- package/agents/bober-seo-verifier.md +103 -0
- package/dist/calendar/calendar-egress.d.ts +26 -0
- package/dist/calendar/calendar-egress.d.ts.map +1 -0
- package/dist/calendar/calendar-egress.js +35 -0
- package/dist/calendar/calendar-egress.js.map +1 -0
- package/dist/calendar/calendar-token.d.ts +34 -0
- package/dist/calendar/calendar-token.d.ts.map +1 -0
- package/dist/calendar/calendar-token.js +56 -0
- package/dist/calendar/calendar-token.js.map +1 -0
- package/dist/calendar/connector.d.ts +22 -0
- package/dist/calendar/connector.d.ts.map +1 -0
- package/dist/calendar/connector.js +3 -0
- package/dist/calendar/connector.js.map +1 -0
- package/dist/calendar/finding-source.d.ts +20 -0
- package/dist/calendar/finding-source.d.ts.map +1 -0
- package/dist/calendar/finding-source.js +35 -0
- package/dist/calendar/finding-source.js.map +1 -0
- package/dist/calendar/google-connector.d.ts +65 -0
- package/dist/calendar/google-connector.d.ts.map +1 -0
- package/dist/calendar/google-connector.js +129 -0
- package/dist/calendar/google-connector.js.map +1 -0
- package/dist/calendar/ics-connector.d.ts +12 -0
- package/dist/calendar/ics-connector.d.ts.map +1 -0
- package/dist/calendar/ics-connector.js +48 -0
- package/dist/calendar/ics-connector.js.map +1 -0
- package/dist/calendar/proposal-gate.d.ts +84 -0
- package/dist/calendar/proposal-gate.d.ts.map +1 -0
- package/dist/calendar/proposal-gate.js +126 -0
- package/dist/calendar/proposal-gate.js.map +1 -0
- package/dist/calendar/slotter.d.ts +34 -0
- package/dist/calendar/slotter.d.ts.map +1 -0
- package/dist/calendar/slotter.js +196 -0
- package/dist/calendar/slotter.js.map +1 -0
- package/dist/calendar/types.d.ts +162 -0
- package/dist/calendar/types.d.ts.map +1 -0
- package/dist/calendar/types.js +28 -0
- package/dist/calendar/types.js.map +1 -0
- package/dist/chat/chat-session.d.ts +27 -0
- package/dist/chat/chat-session.d.ts.map +1 -1
- package/dist/chat/chat-session.js +101 -1
- package/dist/chat/chat-session.js.map +1 -1
- package/dist/chat/slash-commands.d.ts +6 -2
- package/dist/chat/slash-commands.d.ts.map +1 -1
- package/dist/chat/slash-commands.js +22 -2
- package/dist/chat/slash-commands.js.map +1 -1
- package/dist/chat/turn-classifier.d.ts +3 -0
- package/dist/chat/turn-classifier.d.ts.map +1 -1
- package/dist/chat/turn-classifier.js +7 -0
- package/dist/chat/turn-classifier.js.map +1 -1
- package/dist/cli/commands/calendar.d.ts +75 -0
- package/dist/cli/commands/calendar.d.ts.map +1 -0
- package/dist/cli/commands/calendar.js +203 -0
- package/dist/cli/commands/calendar.js.map +1 -0
- package/dist/cli/commands/do.d.ts +52 -0
- package/dist/cli/commands/do.d.ts.map +1 -0
- package/dist/cli/commands/do.js +216 -0
- package/dist/cli/commands/do.js.map +1 -0
- package/dist/cli/commands/hub.d.ts +29 -0
- package/dist/cli/commands/hub.d.ts.map +1 -0
- package/dist/cli/commands/hub.js +233 -0
- package/dist/cli/commands/hub.js.map +1 -0
- package/dist/cli/commands/medical.d.ts +25 -0
- package/dist/cli/commands/medical.d.ts.map +1 -1
- package/dist/cli/commands/medical.js +233 -0
- package/dist/cli/commands/medical.js.map +1 -1
- package/dist/cli/commands/research.d.ts +41 -0
- package/dist/cli/commands/research.d.ts.map +1 -0
- package/dist/cli/commands/research.js +313 -0
- package/dist/cli/commands/research.js.map +1 -0
- package/dist/cli/commands/security-audit.d.ts +89 -0
- package/dist/cli/commands/security-audit.d.ts.map +1 -0
- package/dist/cli/commands/security-audit.js +238 -0
- package/dist/cli/commands/security-audit.js.map +1 -0
- package/dist/cli/commands/task.d.ts +64 -0
- package/dist/cli/commands/task.d.ts.map +1 -0
- package/dist/cli/commands/task.js +422 -0
- package/dist/cli/commands/task.js.map +1 -0
- package/dist/cli/commands/telegram.d.ts +10 -0
- package/dist/cli/commands/telegram.d.ts.map +1 -0
- package/dist/cli/commands/telegram.js +44 -0
- package/dist/cli/commands/telegram.js.map +1 -0
- package/dist/cli/commands/vault.d.ts +40 -0
- package/dist/cli/commands/vault.d.ts.map +1 -0
- package/dist/cli/commands/vault.js +122 -0
- package/dist/cli/commands/vault.js.map +1 -0
- package/dist/cli/index.js +33 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/config/role-providers.d.ts +15 -0
- package/dist/config/role-providers.d.ts.map +1 -1
- package/dist/config/role-providers.js +8 -1
- package/dist/config/role-providers.js.map +1 -1
- package/dist/config/schema.d.ts +3522 -171
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +405 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/do-bridge/coding-promoter.d.ts +19 -0
- package/dist/do-bridge/coding-promoter.d.ts.map +1 -0
- package/dist/do-bridge/coding-promoter.js +43 -0
- package/dist/do-bridge/coding-promoter.js.map +1 -0
- package/dist/do-bridge/finding-port.d.ts +88 -0
- package/dist/do-bridge/finding-port.d.ts.map +1 -0
- package/dist/do-bridge/finding-port.js +95 -0
- package/dist/do-bridge/finding-port.js.map +1 -0
- package/dist/do-bridge/launcher.d.ts +55 -0
- package/dist/do-bridge/launcher.d.ts.map +1 -0
- package/dist/do-bridge/launcher.js +37 -0
- package/dist/do-bridge/launcher.js.map +1 -0
- package/dist/do-bridge/promote.d.ts +50 -0
- package/dist/do-bridge/promote.d.ts.map +1 -0
- package/dist/do-bridge/promote.js +116 -0
- package/dist/do-bridge/promote.js.map +1 -0
- package/dist/do-bridge/reconcile.d.ts +50 -0
- package/dist/do-bridge/reconcile.d.ts.map +1 -0
- package/dist/do-bridge/reconcile.js +70 -0
- package/dist/do-bridge/reconcile.js.map +1 -0
- package/dist/do-bridge/registry.d.ts +23 -0
- package/dist/do-bridge/registry.d.ts.map +1 -0
- package/dist/do-bridge/registry.js +42 -0
- package/dist/do-bridge/registry.js.map +1 -0
- package/dist/do-bridge/types.d.ts +50 -0
- package/dist/do-bridge/types.d.ts.map +1 -0
- package/dist/do-bridge/types.js +17 -0
- package/dist/do-bridge/types.js.map +1 -0
- package/dist/fleet/child-config.d.ts.map +1 -1
- package/dist/fleet/child-config.js +7 -0
- package/dist/fleet/child-config.js.map +1 -1
- package/dist/fleet/coordinator.d.ts +27 -1
- package/dist/fleet/coordinator.d.ts.map +1 -1
- package/dist/fleet/coordinator.js +70 -0
- package/dist/fleet/coordinator.js.map +1 -1
- package/dist/fleet/critic-deep.d.ts +9 -1
- package/dist/fleet/critic-deep.d.ts.map +1 -1
- package/dist/fleet/critic-deep.js +5 -2
- package/dist/fleet/critic-deep.js.map +1 -1
- package/dist/fleet/decomposer-deep.d.ts +4 -11
- package/dist/fleet/decomposer-deep.d.ts.map +1 -1
- package/dist/fleet/decomposer-deep.js +5 -5
- package/dist/fleet/decomposer-deep.js.map +1 -1
- package/dist/fleet/index.d.ts +9 -0
- package/dist/fleet/index.d.ts.map +1 -1
- package/dist/fleet/index.js +87 -8
- package/dist/fleet/index.js.map +1 -1
- package/dist/fleet/manifest.d.ts +26 -0
- package/dist/fleet/manifest.d.ts.map +1 -1
- package/dist/fleet/manifest.js +8 -0
- package/dist/fleet/manifest.js.map +1 -1
- package/dist/fleet/reporter.d.ts +4 -1
- package/dist/fleet/reporter.d.ts.map +1 -1
- package/dist/fleet/reporter.js +2 -1
- package/dist/fleet/reporter.js.map +1 -1
- package/dist/fleet/scaffolder.d.ts +5 -1
- package/dist/fleet/scaffolder.d.ts.map +1 -1
- package/dist/fleet/scaffolder.js +11 -2
- package/dist/fleet/scaffolder.js.map +1 -1
- package/dist/graph/client.d.ts.map +1 -1
- package/dist/graph/client.js +115 -23
- package/dist/graph/client.js.map +1 -1
- package/dist/graph/mcp-client.d.ts +1 -0
- package/dist/graph/mcp-client.d.ts.map +1 -1
- package/dist/graph/mcp-client.js +58 -7
- package/dist/graph/mcp-client.js.map +1 -1
- package/dist/hub/collector.d.ts +12 -0
- package/dist/hub/collector.d.ts.map +1 -0
- package/dist/hub/collector.js +36 -0
- package/dist/hub/collector.js.map +1 -0
- package/dist/hub/finding-source.d.ts +22 -0
- package/dist/hub/finding-source.d.ts.map +1 -0
- package/dist/hub/finding-source.js +41 -0
- package/dist/hub/finding-source.js.map +1 -0
- package/dist/hub/finding-store.d.ts +68 -0
- package/dist/hub/finding-store.d.ts.map +1 -0
- package/dist/hub/finding-store.js +122 -0
- package/dist/hub/finding-store.js.map +1 -0
- package/dist/hub/finding.d.ts +54 -0
- package/dist/hub/finding.d.ts.map +1 -0
- package/dist/hub/finding.js +24 -0
- package/dist/hub/finding.js.map +1 -0
- package/dist/hub/gmail-to-task.d.ts +69 -0
- package/dist/hub/gmail-to-task.d.ts.map +1 -0
- package/dist/hub/gmail-to-task.js +102 -0
- package/dist/hub/gmail-to-task.js.map +1 -0
- package/dist/hub/hub-config.d.ts +18 -0
- package/dist/hub/hub-config.d.ts.map +1 -0
- package/dist/hub/hub-config.js +40 -0
- package/dist/hub/hub-config.js.map +1 -0
- package/dist/hub/judge.d.ts +30 -0
- package/dist/hub/judge.d.ts.map +1 -0
- package/dist/hub/judge.js +177 -0
- package/dist/hub/judge.js.map +1 -0
- package/dist/hub/lenses.d.ts +60 -0
- package/dist/hub/lenses.d.ts.map +1 -0
- package/dist/hub/lenses.js +123 -0
- package/dist/hub/lenses.js.map +1 -0
- package/dist/hub/priority-md.d.ts +21 -0
- package/dist/hub/priority-md.d.ts.map +1 -0
- package/dist/hub/priority-md.js +64 -0
- package/dist/hub/priority-md.js.map +1 -0
- package/dist/hub/repo-resolver.d.ts +11 -0
- package/dist/hub/repo-resolver.d.ts.map +1 -0
- package/dist/hub/repo-resolver.js +39 -0
- package/dist/hub/repo-resolver.js.map +1 -0
- package/dist/hub/scope.d.ts +39 -0
- package/dist/hub/scope.d.ts.map +1 -0
- package/dist/hub/scope.js +62 -0
- package/dist/hub/scope.js.map +1 -0
- package/dist/hub/task-inbox.d.ts +16 -0
- package/dist/hub/task-inbox.d.ts.map +1 -0
- package/dist/hub/task-inbox.js +39 -0
- package/dist/hub/task-inbox.js.map +1 -0
- package/dist/incident/resolution-verify.d.ts +2 -2
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/medical/adapters/apple-health.js +1 -1
- package/dist/medical/adapters/apple-health.js.map +1 -1
- package/dist/medical/analysis/cadence.d.ts +32 -0
- package/dist/medical/analysis/cadence.d.ts.map +1 -0
- package/dist/medical/analysis/cadence.js +72 -0
- package/dist/medical/analysis/cadence.js.map +1 -0
- package/dist/medical/analysis/cross-marker.d.ts +33 -0
- package/dist/medical/analysis/cross-marker.d.ts.map +1 -0
- package/dist/medical/analysis/cross-marker.js +79 -0
- package/dist/medical/analysis/cross-marker.js.map +1 -0
- package/dist/medical/analysis/finding-writer.d.ts +26 -0
- package/dist/medical/analysis/finding-writer.d.ts.map +1 -0
- package/dist/medical/analysis/finding-writer.js +60 -0
- package/dist/medical/analysis/finding-writer.js.map +1 -0
- package/dist/medical/analysis/finding.d.ts +63 -0
- package/dist/medical/analysis/finding.d.ts.map +1 -0
- package/dist/medical/analysis/finding.js +70 -0
- package/dist/medical/analysis/finding.js.map +1 -0
- package/dist/medical/analysis/review-pass.d.ts +76 -0
- package/dist/medical/analysis/review-pass.d.ts.map +1 -0
- package/dist/medical/analysis/review-pass.js +119 -0
- package/dist/medical/analysis/review-pass.js.map +1 -0
- package/dist/medical/analysis/trends.d.ts +36 -0
- package/dist/medical/analysis/trends.d.ts.map +1 -0
- package/dist/medical/analysis/trends.js +157 -0
- package/dist/medical/analysis/trends.js.map +1 -0
- package/dist/medical/health-store.d.ts +5 -0
- package/dist/medical/health-store.d.ts.map +1 -1
- package/dist/medical/health-store.js +10 -0
- package/dist/medical/health-store.js.map +1 -1
- package/dist/medical/lab-note.d.ts +72 -0
- package/dist/medical/lab-note.d.ts.map +1 -0
- package/dist/medical/lab-note.js +161 -0
- package/dist/medical/lab-note.js.map +1 -0
- package/dist/medical/lab-pdf-parser.d.ts +19 -0
- package/dist/medical/lab-pdf-parser.d.ts.map +1 -0
- package/dist/medical/lab-pdf-parser.js +57 -0
- package/dist/medical/lab-pdf-parser.js.map +1 -0
- package/dist/medical/lab-reindex.d.ts +24 -0
- package/dist/medical/lab-reindex.d.ts.map +1 -0
- package/dist/medical/lab-reindex.js +45 -0
- package/dist/medical/lab-reindex.js.map +1 -0
- package/dist/medical/lab-types.d.ts +75 -0
- package/dist/medical/lab-types.d.ts.map +1 -0
- package/dist/medical/lab-types.js +17 -0
- package/dist/medical/lab-types.js.map +1 -0
- package/dist/medical/profile.d.ts +96 -0
- package/dist/medical/profile.d.ts.map +1 -0
- package/dist/medical/profile.js +273 -0
- package/dist/medical/profile.js.map +1 -0
- package/dist/medical/recommend/context.d.ts +48 -0
- package/dist/medical/recommend/context.d.ts.map +1 -0
- package/dist/medical/recommend/context.js +109 -0
- package/dist/medical/recommend/context.js.map +1 -0
- package/dist/medical/recommend/judge-panel.d.ts +49 -0
- package/dist/medical/recommend/judge-panel.d.ts.map +1 -0
- package/dist/medical/recommend/judge-panel.js +164 -0
- package/dist/medical/recommend/judge-panel.js.map +1 -0
- package/dist/medical/recommend/lenses.d.ts +72 -0
- package/dist/medical/recommend/lenses.d.ts.map +1 -0
- package/dist/medical/recommend/lenses.js +220 -0
- package/dist/medical/recommend/lenses.js.map +1 -0
- package/dist/medical/recommend/recommend.d.ts +86 -0
- package/dist/medical/recommend/recommend.d.ts.map +1 -0
- package/dist/medical/recommend/recommend.js +211 -0
- package/dist/medical/recommend/recommend.js.map +1 -0
- package/dist/medical/recommend/types.d.ts +98 -0
- package/dist/medical/recommend/types.d.ts.map +1 -0
- package/dist/medical/recommend/types.js +20 -0
- package/dist/medical/recommend/types.js.map +1 -0
- package/dist/medical/recommend/urgency.d.ts +26 -0
- package/dist/medical/recommend/urgency.d.ts.map +1 -0
- package/dist/medical/recommend/urgency.js +124 -0
- package/dist/medical/recommend/urgency.js.map +1 -0
- package/dist/medical/research/online-research.d.ts +65 -0
- package/dist/medical/research/online-research.d.ts.map +1 -0
- package/dist/medical/research/online-research.js +101 -0
- package/dist/medical/research/online-research.js.map +1 -0
- package/dist/medical/research/research-note.d.ts +32 -0
- package/dist/medical/research/research-note.d.ts.map +1 -0
- package/dist/medical/research/research-note.js +55 -0
- package/dist/medical/research/research-note.js.map +1 -0
- package/dist/medical/supplements.d.ts +82 -0
- package/dist/medical/supplements.d.ts.map +1 -0
- package/dist/medical/supplements.js +173 -0
- package/dist/medical/supplements.js.map +1 -0
- package/dist/orchestrator/agentic-loop.d.ts +160 -1
- package/dist/orchestrator/agentic-loop.d.ts.map +1 -1
- package/dist/orchestrator/agentic-loop.js +350 -41
- package/dist/orchestrator/agentic-loop.js.map +1 -1
- package/dist/orchestrator/compaction.d.ts +47 -0
- package/dist/orchestrator/compaction.d.ts.map +1 -0
- package/dist/orchestrator/compaction.js +75 -0
- package/dist/orchestrator/compaction.js.map +1 -0
- package/dist/orchestrator/generator-agent.d.ts +19 -0
- package/dist/orchestrator/generator-agent.d.ts.map +1 -1
- package/dist/orchestrator/generator-agent.js +27 -1
- package/dist/orchestrator/generator-agent.js.map +1 -1
- package/dist/orchestrator/loop-events.d.ts +98 -0
- package/dist/orchestrator/loop-events.d.ts.map +1 -0
- package/dist/orchestrator/loop-events.js +2 -0
- package/dist/orchestrator/loop-events.js.map +1 -0
- package/dist/orchestrator/model-resolver.d.ts.map +1 -1
- package/dist/orchestrator/model-resolver.js +10 -6
- package/dist/orchestrator/model-resolver.js.map +1 -1
- package/dist/orchestrator/pipeline.d.ts +10 -1
- package/dist/orchestrator/pipeline.d.ts.map +1 -1
- package/dist/orchestrator/pipeline.js +102 -4
- package/dist/orchestrator/pipeline.js.map +1 -1
- package/dist/orchestrator/security-audit-types.d.ts +53 -0
- package/dist/orchestrator/security-audit-types.d.ts.map +1 -0
- package/dist/orchestrator/security-audit-types.js +10 -0
- package/dist/orchestrator/security-audit-types.js.map +1 -0
- package/dist/orchestrator/security-auditor-agent.d.ts +68 -0
- package/dist/orchestrator/security-auditor-agent.d.ts.map +1 -0
- package/dist/orchestrator/security-auditor-agent.js +482 -0
- package/dist/orchestrator/security-auditor-agent.js.map +1 -0
- package/dist/orchestrator/security-gate.d.ts +73 -0
- package/dist/orchestrator/security-gate.d.ts.map +1 -0
- package/dist/orchestrator/security-gate.js +174 -0
- package/dist/orchestrator/security-gate.js.map +1 -0
- package/dist/orchestrator/security-hub.d.ts +45 -0
- package/dist/orchestrator/security-hub.d.ts.map +1 -0
- package/dist/orchestrator/security-hub.js +147 -0
- package/dist/orchestrator/security-hub.js.map +1 -0
- package/dist/orchestrator/security-knowledge/benchmark/harness.d.ts +43 -0
- package/dist/orchestrator/security-knowledge/benchmark/harness.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/benchmark/harness.js +13 -0
- package/dist/orchestrator/security-knowledge/benchmark/harness.js.map +1 -0
- package/dist/orchestrator/security-knowledge/diff-provider.d.ts +79 -0
- package/dist/orchestrator/security-knowledge/diff-provider.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/diff-provider.js +320 -0
- package/dist/orchestrator/security-knowledge/diff-provider.js.map +1 -0
- package/dist/orchestrator/security-knowledge/index.d.ts +22 -0
- package/dist/orchestrator/security-knowledge/index.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/index.js +66 -0
- package/dist/orchestrator/security-knowledge/index.js.map +1 -0
- package/dist/orchestrator/security-knowledge/parser.d.ts +9 -0
- package/dist/orchestrator/security-knowledge/parser.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/parser.js +137 -0
- package/dist/orchestrator/security-knowledge/parser.js.map +1 -0
- package/dist/orchestrator/security-knowledge/registry.d.ts +25 -0
- package/dist/orchestrator/security-knowledge/registry.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/registry.js +114 -0
- package/dist/orchestrator/security-knowledge/registry.js.map +1 -0
- package/dist/orchestrator/security-knowledge/resolver.d.ts +48 -0
- package/dist/orchestrator/security-knowledge/resolver.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/resolver.js +63 -0
- package/dist/orchestrator/security-knowledge/resolver.js.map +1 -0
- package/dist/orchestrator/security-knowledge/selector.d.ts +18 -0
- package/dist/orchestrator/security-knowledge/selector.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/selector.js +46 -0
- package/dist/orchestrator/security-knowledge/selector.js.map +1 -0
- package/dist/orchestrator/security-knowledge/signature.d.ts +37 -0
- package/dist/orchestrator/security-knowledge/signature.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/signature.js +2 -0
- package/dist/orchestrator/security-knowledge/signature.js.map +1 -0
- package/dist/orchestrator/security-knowledge/supply-chain-inspector.d.ts +29 -0
- package/dist/orchestrator/security-knowledge/supply-chain-inspector.d.ts.map +1 -0
- package/dist/orchestrator/security-knowledge/supply-chain-inspector.js +211 -0
- package/dist/orchestrator/security-knowledge/supply-chain-inspector.js.map +1 -0
- package/dist/orchestrator/security-scanners.d.ts +126 -0
- package/dist/orchestrator/security-scanners.d.ts.map +1 -0
- package/dist/orchestrator/security-scanners.js +501 -0
- package/dist/orchestrator/security-scanners.js.map +1 -0
- package/dist/orchestrator/security-verifier-agent.d.ts +62 -0
- package/dist/orchestrator/security-verifier-agent.d.ts.map +1 -0
- package/dist/orchestrator/security-verifier-agent.js +230 -0
- package/dist/orchestrator/security-verifier-agent.js.map +1 -0
- package/dist/orchestrator/session-store.d.ts +95 -0
- package/dist/orchestrator/session-store.d.ts.map +1 -0
- package/dist/orchestrator/session-store.js +186 -0
- package/dist/orchestrator/session-store.js.map +1 -0
- package/dist/orchestrator/stack-knowledge.d.ts +17 -0
- package/dist/orchestrator/stack-knowledge.d.ts.map +1 -0
- package/dist/orchestrator/stack-knowledge.js +35 -0
- package/dist/orchestrator/stack-knowledge.js.map +1 -0
- package/dist/orchestrator/subagents.d.ts +62 -0
- package/dist/orchestrator/subagents.d.ts.map +1 -0
- package/dist/orchestrator/subagents.js +143 -0
- package/dist/orchestrator/subagents.js.map +1 -0
- package/dist/orchestrator/tools/executor.d.ts +68 -0
- package/dist/orchestrator/tools/executor.d.ts.map +1 -0
- package/dist/orchestrator/tools/executor.js +104 -0
- package/dist/orchestrator/tools/executor.js.map +1 -0
- package/dist/orchestrator/tools/mcp-bridge.d.ts +76 -0
- package/dist/orchestrator/tools/mcp-bridge.d.ts.map +1 -0
- package/dist/orchestrator/tools/mcp-bridge.js +154 -0
- package/dist/orchestrator/tools/mcp-bridge.js.map +1 -0
- package/dist/orchestrator/tools/schemas.d.ts.map +1 -1
- package/dist/orchestrator/tools/schemas.js +3 -0
- package/dist/orchestrator/tools/schemas.js.map +1 -1
- package/dist/orchestrator/workflow/budget.d.ts +24 -2
- package/dist/orchestrator/workflow/budget.d.ts.map +1 -1
- package/dist/orchestrator/workflow/budget.js +39 -1
- package/dist/orchestrator/workflow/budget.js.map +1 -1
- package/dist/orchestrator/workflow/engine.d.ts +1 -1
- package/dist/orchestrator/workflow/engine.d.ts.map +1 -1
- package/dist/orchestrator/workflow/selector.d.ts.map +1 -1
- package/dist/orchestrator/workflow/selector.js +10 -0
- package/dist/orchestrator/workflow/selector.js.map +1 -1
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +116 -26
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/claude-code.d.ts.map +1 -1
- package/dist/providers/claude-code.js +17 -0
- package/dist/providers/claude-code.js.map +1 -1
- package/dist/providers/cost-meter.d.ts +52 -0
- package/dist/providers/cost-meter.d.ts.map +1 -0
- package/dist/providers/cost-meter.js +81 -0
- package/dist/providers/cost-meter.js.map +1 -0
- package/dist/providers/factory.d.ts +6 -1
- package/dist/providers/factory.d.ts.map +1 -1
- package/dist/providers/factory.js +24 -5
- package/dist/providers/factory.js.map +1 -1
- package/dist/providers/google.d.ts.map +1 -1
- package/dist/providers/google.js +29 -0
- package/dist/providers/google.js.map +1 -1
- package/dist/providers/grounded-search.d.ts +128 -0
- package/dist/providers/grounded-search.d.ts.map +1 -0
- package/dist/providers/grounded-search.js +160 -0
- package/dist/providers/grounded-search.js.map +1 -0
- package/dist/providers/openai-compat.d.ts +15 -1
- package/dist/providers/openai-compat.d.ts.map +1 -1
- package/dist/providers/openai-compat.js +24 -0
- package/dist/providers/openai-compat.js.map +1 -1
- package/dist/providers/openai.d.ts +7 -0
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +95 -4
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/types.d.ts +88 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/research/cadence.d.ts +33 -0
- package/dist/research/cadence.d.ts.map +1 -0
- package/dist/research/cadence.js +55 -0
- package/dist/research/cadence.js.map +1 -0
- package/dist/research/digest.d.ts +80 -0
- package/dist/research/digest.d.ts.map +1 -0
- package/dist/research/digest.js +119 -0
- package/dist/research/digest.js.map +1 -0
- package/dist/research/egress.d.ts +28 -0
- package/dist/research/egress.d.ts.map +1 -0
- package/dist/research/egress.js +41 -0
- package/dist/research/egress.js.map +1 -0
- package/dist/research/job-store.d.ts +30 -0
- package/dist/research/job-store.d.ts.map +1 -0
- package/dist/research/job-store.js +100 -0
- package/dist/research/job-store.js.map +1 -0
- package/dist/research/model-diversity.d.ts +27 -0
- package/dist/research/model-diversity.d.ts.map +1 -0
- package/dist/research/model-diversity.js +52 -0
- package/dist/research/model-diversity.js.map +1 -0
- package/dist/research/note-writer.d.ts +36 -0
- package/dist/research/note-writer.d.ts.map +1 -0
- package/dist/research/note-writer.js +53 -0
- package/dist/research/note-writer.js.map +1 -0
- package/dist/research/online-retrieval.d.ts +27 -0
- package/dist/research/online-retrieval.d.ts.map +1 -0
- package/dist/research/online-retrieval.js +22 -0
- package/dist/research/online-retrieval.js.map +1 -0
- package/dist/research/runner.d.ts +80 -0
- package/dist/research/runner.d.ts.map +1 -0
- package/dist/research/runner.js +115 -0
- package/dist/research/runner.js.map +1 -0
- package/dist/research/scheduler.d.ts +61 -0
- package/dist/research/scheduler.d.ts.map +1 -0
- package/dist/research/scheduler.js +58 -0
- package/dist/research/scheduler.js.map +1 -0
- package/dist/research/types.d.ts +81 -0
- package/dist/research/types.d.ts.map +1 -0
- package/dist/research/types.js +57 -0
- package/dist/research/types.js.map +1 -0
- package/dist/seo/adapters/http.d.ts +43 -0
- package/dist/seo/adapters/http.d.ts.map +1 -0
- package/dist/seo/adapters/http.js +35 -0
- package/dist/seo/adapters/http.js.map +1 -0
- package/dist/seo/ai-visibility-provider.d.ts +171 -0
- package/dist/seo/ai-visibility-provider.d.ts.map +1 -0
- package/dist/seo/ai-visibility-provider.js +165 -0
- package/dist/seo/ai-visibility-provider.js.map +1 -0
- package/dist/seo/ai-visibility-scorer.d.ts +43 -0
- package/dist/seo/ai-visibility-scorer.d.ts.map +1 -0
- package/dist/seo/ai-visibility-scorer.js +102 -0
- package/dist/seo/ai-visibility-scorer.js.map +1 -0
- package/dist/seo/analyzer.d.ts +58 -0
- package/dist/seo/analyzer.d.ts.map +1 -0
- package/dist/seo/analyzer.js +265 -0
- package/dist/seo/analyzer.js.map +1 -0
- package/dist/seo/benchmark/harness.d.ts +56 -0
- package/dist/seo/benchmark/harness.d.ts.map +1 -0
- package/dist/seo/benchmark/harness.js +172 -0
- package/dist/seo/benchmark/harness.js.map +1 -0
- package/dist/seo/builder/approved-finding.d.ts +115 -0
- package/dist/seo/builder/approved-finding.d.ts.map +1 -0
- package/dist/seo/builder/approved-finding.js +145 -0
- package/dist/seo/builder/approved-finding.js.map +1 -0
- package/dist/seo/builder/build-runner.d.ts +41 -0
- package/dist/seo/builder/build-runner.d.ts.map +1 -0
- package/dist/seo/builder/build-runner.js +156 -0
- package/dist/seo/builder/build-runner.js.map +1 -0
- package/dist/seo/builder/draft-generators.d.ts +32 -0
- package/dist/seo/builder/draft-generators.d.ts.map +1 -0
- package/dist/seo/builder/draft-generators.js +31 -0
- package/dist/seo/builder/draft-generators.js.map +1 -0
- package/dist/seo/builder/draft-store.d.ts +30 -0
- package/dist/seo/builder/draft-store.d.ts.map +1 -0
- package/dist/seo/builder/draft-store.js +76 -0
- package/dist/seo/builder/draft-store.js.map +1 -0
- package/dist/seo/builder/draft-types.d.ts +36 -0
- package/dist/seo/builder/draft-types.d.ts.map +1 -0
- package/dist/seo/builder/draft-types.js +14 -0
- package/dist/seo/builder/draft-types.js.map +1 -0
- package/dist/seo/builder/hub-approved-source.d.ts +11 -0
- package/dist/seo/builder/hub-approved-source.d.ts.map +1 -0
- package/dist/seo/builder/hub-approved-source.js +48 -0
- package/dist/seo/builder/hub-approved-source.js.map +1 -0
- package/dist/seo/builder/seo-builder.d.ts +72 -0
- package/dist/seo/builder/seo-builder.d.ts.map +1 -0
- package/dist/seo/builder/seo-builder.js +72 -0
- package/dist/seo/builder/seo-builder.js.map +1 -0
- package/dist/seo/citation-gate.d.ts +36 -0
- package/dist/seo/citation-gate.d.ts.map +1 -0
- package/dist/seo/citation-gate.js +59 -0
- package/dist/seo/citation-gate.js.map +1 -0
- package/dist/seo/command.d.ts +11 -0
- package/dist/seo/command.d.ts.map +1 -0
- package/dist/seo/command.js +90 -0
- package/dist/seo/command.js.map +1 -0
- package/dist/seo/content-sanitizer.d.ts +56 -0
- package/dist/seo/content-sanitizer.d.ts.map +1 -0
- package/dist/seo/content-sanitizer.js +55 -0
- package/dist/seo/content-sanitizer.js.map +1 -0
- package/dist/seo/crawl-engine.d.ts +35 -0
- package/dist/seo/crawl-engine.d.ts.map +1 -0
- package/dist/seo/crawl-engine.js +2 -0
- package/dist/seo/crawl-engine.js.map +1 -0
- package/dist/seo/data-source.d.ts +156 -0
- package/dist/seo/data-source.d.ts.map +1 -0
- package/dist/seo/data-source.js +2 -0
- package/dist/seo/data-source.js.map +1 -0
- package/dist/seo/egress.d.ts +39 -0
- package/dist/seo/egress.d.ts.map +1 -0
- package/dist/seo/egress.js +64 -0
- package/dist/seo/egress.js.map +1 -0
- package/dist/seo/hub-emitter.d.ts +28 -0
- package/dist/seo/hub-emitter.d.ts.map +1 -0
- package/dist/seo/hub-emitter.js +95 -0
- package/dist/seo/hub-emitter.js.map +1 -0
- package/dist/seo/index.d.ts +42 -0
- package/dist/seo/index.d.ts.map +1 -0
- package/dist/seo/index.js +19 -0
- package/dist/seo/index.js.map +1 -0
- package/dist/seo/never-encode-filter.d.ts +45 -0
- package/dist/seo/never-encode-filter.d.ts.map +1 -0
- package/dist/seo/never-encode-filter.js +51 -0
- package/dist/seo/never-encode-filter.js.map +1 -0
- package/dist/seo/parser.d.ts +46 -0
- package/dist/seo/parser.d.ts.map +1 -0
- package/dist/seo/parser.js +113 -0
- package/dist/seo/parser.js.map +1 -0
- package/dist/seo/playbook-index.d.ts +19 -0
- package/dist/seo/playbook-index.d.ts.map +1 -0
- package/dist/seo/playbook-index.js +74 -0
- package/dist/seo/playbook-index.js.map +1 -0
- package/dist/seo/quota-governor.d.ts +100 -0
- package/dist/seo/quota-governor.d.ts.map +1 -0
- package/dist/seo/quota-governor.js +199 -0
- package/dist/seo/quota-governor.js.map +1 -0
- package/dist/seo/quota-ledger.d.ts +50 -0
- package/dist/seo/quota-ledger.d.ts.map +1 -0
- package/dist/seo/quota-ledger.js +95 -0
- package/dist/seo/quota-ledger.js.map +1 -0
- package/dist/seo/report-store.d.ts +30 -0
- package/dist/seo/report-store.d.ts.map +1 -0
- package/dist/seo/report-store.js +94 -0
- package/dist/seo/report-store.js.map +1 -0
- package/dist/seo/retriever.d.ts +34 -0
- package/dist/seo/retriever.d.ts.map +1 -0
- package/dist/seo/retriever.js +95 -0
- package/dist/seo/retriever.js.map +1 -0
- package/dist/seo/runner.d.ts +108 -0
- package/dist/seo/runner.d.ts.map +1 -0
- package/dist/seo/runner.js +512 -0
- package/dist/seo/runner.js.map +1 -0
- package/dist/seo/scrape-throttle.d.ts +84 -0
- package/dist/seo/scrape-throttle.d.ts.map +1 -0
- package/dist/seo/scrape-throttle.js +149 -0
- package/dist/seo/scrape-throttle.js.map +1 -0
- package/dist/seo/serp-provider.d.ts +52 -0
- package/dist/seo/serp-provider.d.ts.map +1 -0
- package/dist/seo/serp-provider.js +17 -0
- package/dist/seo/serp-provider.js.map +1 -0
- package/dist/seo/sources/ai-visibility-adapter.d.ts +87 -0
- package/dist/seo/sources/ai-visibility-adapter.d.ts.map +1 -0
- package/dist/seo/sources/ai-visibility-adapter.js +85 -0
- package/dist/seo/sources/ai-visibility-adapter.js.map +1 -0
- package/dist/seo/sources/api-spine-provider.d.ts +66 -0
- package/dist/seo/sources/api-spine-provider.d.ts.map +1 -0
- package/dist/seo/sources/api-spine-provider.js +68 -0
- package/dist/seo/sources/api-spine-provider.js.map +1 -0
- package/dist/seo/sources/citation-verifier.d.ts +95 -0
- package/dist/seo/sources/citation-verifier.d.ts.map +1 -0
- package/dist/seo/sources/citation-verifier.js +106 -0
- package/dist/seo/sources/citation-verifier.js.map +1 -0
- package/dist/seo/sources/crawl-source.d.ts +62 -0
- package/dist/seo/sources/crawl-source.d.ts.map +1 -0
- package/dist/seo/sources/crawl-source.js +87 -0
- package/dist/seo/sources/crawl-source.js.map +1 -0
- package/dist/seo/sources/damcrawler-crawl-engine.d.ts +151 -0
- package/dist/seo/sources/damcrawler-crawl-engine.d.ts.map +1 -0
- package/dist/seo/sources/damcrawler-crawl-engine.js +154 -0
- package/dist/seo/sources/damcrawler-crawl-engine.js.map +1 -0
- package/dist/seo/sources/damcrawler-serp-provider.d.ts +75 -0
- package/dist/seo/sources/damcrawler-serp-provider.d.ts.map +1 -0
- package/dist/seo/sources/damcrawler-serp-provider.js +60 -0
- package/dist/seo/sources/damcrawler-serp-provider.js.map +1 -0
- package/dist/seo/sources/dataforseo-adapter.d.ts +46 -0
- package/dist/seo/sources/dataforseo-adapter.d.ts.map +1 -0
- package/dist/seo/sources/dataforseo-adapter.js +335 -0
- package/dist/seo/sources/dataforseo-adapter.js.map +1 -0
- package/dist/seo/sources/dataforseo-serp-provider.d.ts +30 -0
- package/dist/seo/sources/dataforseo-serp-provider.d.ts.map +1 -0
- package/dist/seo/sources/dataforseo-serp-provider.js +20 -0
- package/dist/seo/sources/dataforseo-serp-provider.js.map +1 -0
- package/dist/seo/sources/engine-scrape-parser-chatgpt.d.ts +62 -0
- package/dist/seo/sources/engine-scrape-parser-chatgpt.d.ts.map +1 -0
- package/dist/seo/sources/engine-scrape-parser-chatgpt.js +72 -0
- package/dist/seo/sources/engine-scrape-parser-chatgpt.js.map +1 -0
- package/dist/seo/sources/engine-scrape-parser-perplexity.d.ts +10 -0
- package/dist/seo/sources/engine-scrape-parser-perplexity.d.ts.map +1 -0
- package/dist/seo/sources/engine-scrape-parser-perplexity.js +72 -0
- package/dist/seo/sources/engine-scrape-parser-perplexity.js.map +1 -0
- package/dist/seo/sources/gsc-adapter.d.ts +64 -0
- package/dist/seo/sources/gsc-adapter.d.ts.map +1 -0
- package/dist/seo/sources/gsc-adapter.js +221 -0
- package/dist/seo/sources/gsc-adapter.js.map +1 -0
- package/dist/seo/sources/local-export.d.ts +53 -0
- package/dist/seo/sources/local-export.d.ts.map +1 -0
- package/dist/seo/sources/local-export.js +307 -0
- package/dist/seo/sources/local-export.js.map +1 -0
- package/dist/seo/sources/mention-citation-extractor.d.ts +136 -0
- package/dist/seo/sources/mention-citation-extractor.d.ts.map +1 -0
- package/dist/seo/sources/mention-citation-extractor.js +272 -0
- package/dist/seo/sources/mention-citation-extractor.js.map +1 -0
- package/dist/seo/sources/scrape-arm-provider.d.ts +109 -0
- package/dist/seo/sources/scrape-arm-provider.d.ts.map +1 -0
- package/dist/seo/sources/scrape-arm-provider.js +129 -0
- package/dist/seo/sources/scrape-arm-provider.js.map +1 -0
- package/dist/seo/tracked-prompt-store.d.ts +33 -0
- package/dist/seo/tracked-prompt-store.d.ts.map +1 -0
- package/dist/seo/tracked-prompt-store.js +68 -0
- package/dist/seo/tracked-prompt-store.js.map +1 -0
- package/dist/seo/types.d.ts +128 -0
- package/dist/seo/types.d.ts.map +1 -0
- package/dist/seo/types.js +14 -0
- package/dist/seo/types.js.map +1 -0
- package/dist/seo/verifier.d.ts +34 -0
- package/dist/seo/verifier.d.ts.map +1 -0
- package/dist/seo/verifier.js +204 -0
- package/dist/seo/verifier.js.map +1 -0
- package/dist/seo/workflow-capabilities.d.ts +26 -0
- package/dist/seo/workflow-capabilities.d.ts.map +1 -0
- package/dist/seo/workflow-capabilities.js +12 -0
- package/dist/seo/workflow-capabilities.js.map +1 -0
- package/dist/state/facts.d.ts +5 -1
- package/dist/state/facts.d.ts.map +1 -1
- package/dist/state/facts.js +29 -19
- package/dist/state/facts.js.map +1 -1
- package/dist/state/index.d.ts +1 -1
- package/dist/state/index.d.ts.map +1 -1
- package/dist/state/index.js +1 -1
- package/dist/state/index.js.map +1 -1
- package/dist/state/outline-state.d.ts +0 -12
- package/dist/state/outline-state.d.ts.map +1 -1
- package/dist/state/outline-state.js +1 -18
- package/dist/state/outline-state.js.map +1 -1
- package/dist/state/security-audit-state.d.ts +20 -0
- package/dist/state/security-audit-state.d.ts.map +1 -0
- package/dist/state/security-audit-state.js +59 -0
- package/dist/state/security-audit-state.js.map +1 -0
- package/dist/teams/registry.d.ts.map +1 -1
- package/dist/teams/registry.js +17 -0
- package/dist/teams/registry.js.map +1 -1
- package/dist/telegram/bot.d.ts +137 -0
- package/dist/telegram/bot.d.ts.map +1 -0
- package/dist/telegram/bot.js +323 -0
- package/dist/telegram/bot.js.map +1 -0
- package/dist/telegram/digest.d.ts +19 -0
- package/dist/telegram/digest.d.ts.map +1 -0
- package/dist/telegram/digest.js +23 -0
- package/dist/telegram/digest.js.map +1 -0
- package/dist/telegram/fleet-view.d.ts +38 -0
- package/dist/telegram/fleet-view.d.ts.map +1 -0
- package/dist/telegram/fleet-view.js +98 -0
- package/dist/telegram/fleet-view.js.map +1 -0
- package/dist/telegram/handlers/approvals.d.ts +61 -0
- package/dist/telegram/handlers/approvals.d.ts.map +1 -0
- package/dist/telegram/handlers/approvals.js +122 -0
- package/dist/telegram/handlers/approvals.js.map +1 -0
- package/dist/telegram/handlers/capture.d.ts +43 -0
- package/dist/telegram/handlers/capture.d.ts.map +1 -0
- package/dist/telegram/handlers/capture.js +51 -0
- package/dist/telegram/handlers/capture.js.map +1 -0
- package/dist/telegram/handlers/prioritize.d.ts +50 -0
- package/dist/telegram/handlers/prioritize.d.ts.map +1 -0
- package/dist/telegram/handlers/prioritize.js +99 -0
- package/dist/telegram/handlers/prioritize.js.map +1 -0
- package/dist/telegram/handlers/upload.d.ts +105 -0
- package/dist/telegram/handlers/upload.d.ts.map +1 -0
- package/dist/telegram/handlers/upload.js +149 -0
- package/dist/telegram/handlers/upload.js.map +1 -0
- package/dist/telegram/keyboard.d.ts +48 -0
- package/dist/telegram/keyboard.d.ts.map +1 -0
- package/dist/telegram/keyboard.js +81 -0
- package/dist/telegram/keyboard.js.map +1 -0
- package/dist/telegram/outbound.d.ts +77 -0
- package/dist/telegram/outbound.d.ts.map +1 -0
- package/dist/telegram/outbound.js +45 -0
- package/dist/telegram/outbound.js.map +1 -0
- package/dist/telegram/router.d.ts +46 -0
- package/dist/telegram/router.d.ts.map +1 -0
- package/dist/telegram/router.js +63 -0
- package/dist/telegram/router.js.map +1 -0
- package/dist/telegram/streaming.d.ts +36 -0
- package/dist/telegram/streaming.d.ts.map +1 -0
- package/dist/telegram/streaming.js +55 -0
- package/dist/telegram/streaming.js.map +1 -0
- package/dist/telegram/whitelist.d.ts +20 -0
- package/dist/telegram/whitelist.d.ts.map +1 -0
- package/dist/telegram/whitelist.js +34 -0
- package/dist/telegram/whitelist.js.map +1 -0
- package/dist/utils/git.d.ts +0 -6
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +0 -19
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/index.d.ts +1 -1
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/index.js.map +1 -1
- package/dist/vault/conventions.d.ts +23 -0
- package/dist/vault/conventions.d.ts.map +1 -0
- package/dist/vault/conventions.js +22 -0
- package/dist/vault/conventions.js.map +1 -0
- package/dist/vault/frontmatter.d.ts +47 -0
- package/dist/vault/frontmatter.d.ts.map +1 -0
- package/dist/vault/frontmatter.js +149 -0
- package/dist/vault/frontmatter.js.map +1 -0
- package/dist/vault/index-map.d.ts +35 -0
- package/dist/vault/index-map.d.ts.map +1 -0
- package/dist/vault/index-map.js +67 -0
- package/dist/vault/index-map.js.map +1 -0
- package/dist/vault/mcp-adapter.d.ts +96 -0
- package/dist/vault/mcp-adapter.d.ts.map +1 -0
- package/dist/vault/mcp-adapter.js +176 -0
- package/dist/vault/mcp-adapter.js.map +1 -0
- package/dist/vault/note-io.d.ts +29 -0
- package/dist/vault/note-io.d.ts.map +1 -0
- package/dist/vault/note-io.js +44 -0
- package/dist/vault/note-io.js.map +1 -0
- package/dist/vault/profile.d.ts +35 -0
- package/dist/vault/profile.d.ts.map +1 -0
- package/dist/vault/profile.js +50 -0
- package/dist/vault/profile.js.map +1 -0
- package/dist/vault/reindex.d.ts +55 -0
- package/dist/vault/reindex.d.ts.map +1 -0
- package/dist/vault/reindex.js +69 -0
- package/dist/vault/reindex.js.map +1 -0
- package/dist/vault/types.d.ts +25 -0
- package/dist/vault/types.d.ts.map +1 -0
- package/dist/vault/types.js +9 -0
- package/dist/vault/types.js.map +1 -0
- package/package.json +20 -4
- package/scripts/sync-targets.json +2 -1
- package/skills/bober.design/SKILL.md +190 -0
- package/skills/bober.design/references/1-anti-slop.md +102 -0
- package/skills/bober.design/references/2-design-brief.md +84 -0
- package/skills/bober.design/references/3-critique-rubric.md +62 -0
- package/skills/bober.design/references/4-copy-guide.md +43 -0
- package/skills/bober.plan/SKILL.md +15 -1
- package/skills/bober.run/SKILL.md +7 -4
- package/skills/bober.security-anchor/SKILL.md +172 -0
- package/skills/bober.security-audit/SKILL.md +288 -0
- package/skills/bober.security-dex-backend/SKILL.md +306 -0
- package/skills/bober.security-generic/SKILL.md +295 -0
- package/skills/bober.security-igaming/SKILL.md +290 -0
- package/skills/bober.security-node/SKILL.md +267 -0
- package/skills/bober.security-payments/SKILL.md +249 -0
- package/skills/bober.security-react/SKILL.md +194 -0
- package/skills/bober.security-solidity/SKILL.md +306 -0
- package/skills/bober.seo/SKILL.md +132 -0
- package/skills/bober.seo-ai-visibility/SKILL.md +110 -0
- package/skills/bober.seo-content-decay/SKILL.md +99 -0
- package/skills/bober.seo-generic/SKILL.md +173 -0
- package/skills/bober.seo-internal-linking/SKILL.md +87 -0
- package/skills/bober.seo-parasite-watch/SKILL.md +121 -0
- package/skills/bober.seo-rank-track/SKILL.md +98 -0
- package/skills/bober.seo-schema-audit/SKILL.md +97 -0
- package/skills/bober.seo-technical-audit/SKILL.md +113 -0
- package/skills/bober.seo-topical-map/SKILL.md +100 -0
- package/skills/bober.seo-verticals/SKILL.md +133 -0
- package/skills/bober.using-bober/SKILL.md +1 -0
package/dist/config/schema.d.ts
CHANGED
|
@@ -35,6 +35,26 @@ export declare const SprintSizeSchema: z.ZodEnum<["small", "medium", "large"]>;
|
|
|
35
35
|
export type SprintSize = z.infer<typeof SprintSizeSchema>;
|
|
36
36
|
export declare const ContextResetSchema: z.ZodEnum<["always", "on-threshold", "never"]>;
|
|
37
37
|
export type ContextReset = z.infer<typeof ContextResetSchema>;
|
|
38
|
+
/**
|
|
39
|
+
* Reasoning/output effort level (Sprint 3 — agent-loop capability port).
|
|
40
|
+
* Mirrors `ChatParams.effort` (`src/providers/types.ts`) value-for-value;
|
|
41
|
+
* only the Anthropic adapter forwards it (as `output_config.effort`).
|
|
42
|
+
*/
|
|
43
|
+
export declare const EffortSchema: z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>;
|
|
44
|
+
export type Effort = z.infer<typeof EffortSchema>;
|
|
45
|
+
/**
|
|
46
|
+
* Optional per-run USD spend ceiling (Sprint 3 — agent-loop capability port).
|
|
47
|
+
* `maxUsd: null` (or omitted) means uncapped — mirrors `Budget`'s own
|
|
48
|
+
* null-means-unlimited convention (`src/orchestrator/workflow/budget.ts`).
|
|
49
|
+
*/
|
|
50
|
+
export declare const BudgetSectionSchema: z.ZodObject<{
|
|
51
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
52
|
+
}, "strip", z.ZodTypeAny, {
|
|
53
|
+
maxUsd?: number | null | undefined;
|
|
54
|
+
}, {
|
|
55
|
+
maxUsd?: number | null | undefined;
|
|
56
|
+
}>;
|
|
57
|
+
export type BudgetSection = z.infer<typeof BudgetSectionSchema>;
|
|
38
58
|
/**
|
|
39
59
|
* Well-known built-in evaluator strategy types.
|
|
40
60
|
* The type field also accepts ANY string — unknown types are resolved
|
|
@@ -106,6 +126,7 @@ export declare const ProjectSectionSchema: z.ZodObject<{
|
|
|
106
126
|
}, "strip", z.ZodTypeAny, {
|
|
107
127
|
name: string;
|
|
108
128
|
mode: "greenfield" | "brownfield";
|
|
129
|
+
preset?: string | undefined;
|
|
109
130
|
stack?: {
|
|
110
131
|
frontend?: string | undefined;
|
|
111
132
|
backend?: string | undefined;
|
|
@@ -115,11 +136,11 @@ export declare const ProjectSectionSchema: z.ZodObject<{
|
|
|
115
136
|
language?: string | undefined;
|
|
116
137
|
other?: string[] | undefined;
|
|
117
138
|
} | undefined;
|
|
118
|
-
preset?: string | undefined;
|
|
119
139
|
description?: string | undefined;
|
|
120
140
|
}, {
|
|
121
141
|
name: string;
|
|
122
142
|
mode: "greenfield" | "brownfield";
|
|
143
|
+
preset?: string | undefined;
|
|
123
144
|
stack?: {
|
|
124
145
|
frontend?: string | undefined;
|
|
125
146
|
backend?: string | undefined;
|
|
@@ -129,7 +150,6 @@ export declare const ProjectSectionSchema: z.ZodObject<{
|
|
|
129
150
|
language?: string | undefined;
|
|
130
151
|
other?: string[] | undefined;
|
|
131
152
|
} | undefined;
|
|
132
|
-
preset?: string | undefined;
|
|
133
153
|
description?: string | undefined;
|
|
134
154
|
}>;
|
|
135
155
|
export type ProjectSection = z.infer<typeof ProjectSectionSchema>;
|
|
@@ -140,6 +160,16 @@ export declare const PlannerSectionSchema: z.ZodObject<{
|
|
|
140
160
|
provider: z.ZodOptional<z.ZodString>;
|
|
141
161
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
142
162
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
163
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
164
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
165
|
+
/** Optional per-run USD spend ceiling. */
|
|
166
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
167
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
168
|
+
}, "strip", z.ZodTypeAny, {
|
|
169
|
+
maxUsd?: number | null | undefined;
|
|
170
|
+
}, {
|
|
171
|
+
maxUsd?: number | null | undefined;
|
|
172
|
+
}>>;
|
|
143
173
|
}, "strip", z.ZodTypeAny, {
|
|
144
174
|
maxClarifications: number;
|
|
145
175
|
model: string;
|
|
@@ -147,6 +177,10 @@ export declare const PlannerSectionSchema: z.ZodObject<{
|
|
|
147
177
|
provider?: string | undefined;
|
|
148
178
|
endpoint?: string | null | undefined;
|
|
149
179
|
providerConfig?: Record<string, unknown> | undefined;
|
|
180
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
181
|
+
budget?: {
|
|
182
|
+
maxUsd?: number | null | undefined;
|
|
183
|
+
} | undefined;
|
|
150
184
|
}, {
|
|
151
185
|
maxClarifications?: number | undefined;
|
|
152
186
|
model?: string | undefined;
|
|
@@ -154,6 +188,10 @@ export declare const PlannerSectionSchema: z.ZodObject<{
|
|
|
154
188
|
provider?: string | undefined;
|
|
155
189
|
endpoint?: string | null | undefined;
|
|
156
190
|
providerConfig?: Record<string, unknown> | undefined;
|
|
191
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
192
|
+
budget?: {
|
|
193
|
+
maxUsd?: number | null | undefined;
|
|
194
|
+
} | undefined;
|
|
157
195
|
}>;
|
|
158
196
|
export type PlannerSection = z.infer<typeof PlannerSectionSchema>;
|
|
159
197
|
export declare const GeneratorSectionSchema: z.ZodObject<{
|
|
@@ -164,6 +202,23 @@ export declare const GeneratorSectionSchema: z.ZodObject<{
|
|
|
164
202
|
provider: z.ZodOptional<z.ZodString>;
|
|
165
203
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
166
204
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
205
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
206
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
207
|
+
/** Optional per-run USD spend ceiling. */
|
|
208
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
209
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
210
|
+
}, "strip", z.ZodTypeAny, {
|
|
211
|
+
maxUsd?: number | null | undefined;
|
|
212
|
+
}, {
|
|
213
|
+
maxUsd?: number | null | undefined;
|
|
214
|
+
}>>;
|
|
215
|
+
/**
|
|
216
|
+
* When true, contiguous read-only tool calls (read_file/glob/grep) within a
|
|
217
|
+
* turn execute concurrently instead of strictly serially (ADR-2, agent-loop
|
|
218
|
+
* capability port sprint 4). Optional, no default — absent/false is
|
|
219
|
+
* byte-identical to the pre-change serial loop.
|
|
220
|
+
*/
|
|
221
|
+
parallelReadOnlyTools: z.ZodOptional<z.ZodBoolean>;
|
|
167
222
|
}, "strip", z.ZodTypeAny, {
|
|
168
223
|
model: string;
|
|
169
224
|
maxTurnsPerSprint: number;
|
|
@@ -172,14 +227,24 @@ export declare const GeneratorSectionSchema: z.ZodObject<{
|
|
|
172
227
|
provider?: string | undefined;
|
|
173
228
|
endpoint?: string | null | undefined;
|
|
174
229
|
providerConfig?: Record<string, unknown> | undefined;
|
|
230
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
231
|
+
budget?: {
|
|
232
|
+
maxUsd?: number | null | undefined;
|
|
233
|
+
} | undefined;
|
|
234
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
175
235
|
}, {
|
|
176
236
|
model?: string | undefined;
|
|
177
237
|
provider?: string | undefined;
|
|
178
238
|
endpoint?: string | null | undefined;
|
|
179
239
|
providerConfig?: Record<string, unknown> | undefined;
|
|
240
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
241
|
+
budget?: {
|
|
242
|
+
maxUsd?: number | null | undefined;
|
|
243
|
+
} | undefined;
|
|
180
244
|
maxTurnsPerSprint?: number | undefined;
|
|
181
245
|
autoCommit?: boolean | undefined;
|
|
182
246
|
branchPattern?: string | undefined;
|
|
247
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
183
248
|
}>;
|
|
184
249
|
export type GeneratorSection = z.infer<typeof GeneratorSectionSchema>;
|
|
185
250
|
export declare const EvaluatorSectionSchema: z.ZodObject<{
|
|
@@ -230,6 +295,16 @@ export declare const EvaluatorSectionSchema: z.ZodObject<{
|
|
|
230
295
|
lenses?: string[] | undefined;
|
|
231
296
|
maxConcurrent?: number | undefined;
|
|
232
297
|
}>>;
|
|
298
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
299
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
300
|
+
/** Optional per-run USD spend ceiling. */
|
|
301
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
302
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
303
|
+
}, "strip", z.ZodTypeAny, {
|
|
304
|
+
maxUsd?: number | null | undefined;
|
|
305
|
+
}, {
|
|
306
|
+
maxUsd?: number | null | undefined;
|
|
307
|
+
}>>;
|
|
233
308
|
}, "strip", z.ZodTypeAny, {
|
|
234
309
|
model: string;
|
|
235
310
|
strategies: {
|
|
@@ -249,6 +324,10 @@ export declare const EvaluatorSectionSchema: z.ZodObject<{
|
|
|
249
324
|
provider?: string | undefined;
|
|
250
325
|
endpoint?: string | null | undefined;
|
|
251
326
|
providerConfig?: Record<string, unknown> | undefined;
|
|
327
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
328
|
+
budget?: {
|
|
329
|
+
maxUsd?: number | null | undefined;
|
|
330
|
+
} | undefined;
|
|
252
331
|
plugins?: string[] | undefined;
|
|
253
332
|
}, {
|
|
254
333
|
strategies: {
|
|
@@ -263,6 +342,10 @@ export declare const EvaluatorSectionSchema: z.ZodObject<{
|
|
|
263
342
|
provider?: string | undefined;
|
|
264
343
|
endpoint?: string | null | undefined;
|
|
265
344
|
providerConfig?: Record<string, unknown> | undefined;
|
|
345
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
346
|
+
budget?: {
|
|
347
|
+
maxUsd?: number | null | undefined;
|
|
348
|
+
} | undefined;
|
|
266
349
|
maxIterations?: number | undefined;
|
|
267
350
|
plugins?: string[] | undefined;
|
|
268
351
|
panel?: {
|
|
@@ -307,11 +390,11 @@ export declare const SprintSectionSchema: z.ZodObject<{
|
|
|
307
390
|
}, "strip", z.ZodTypeAny, {
|
|
308
391
|
maxSprints: number;
|
|
309
392
|
requireContracts: boolean;
|
|
310
|
-
sprintSize: "
|
|
393
|
+
sprintSize: "medium" | "small" | "large";
|
|
311
394
|
}, {
|
|
312
395
|
maxSprints?: number | undefined;
|
|
313
396
|
requireContracts?: boolean | undefined;
|
|
314
|
-
sprintSize?: "
|
|
397
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
315
398
|
}>;
|
|
316
399
|
export type SprintSection = z.infer<typeof SprintSectionSchema>;
|
|
317
400
|
export declare const CuratorSectionSchema: z.ZodObject<{
|
|
@@ -321,6 +404,16 @@ export declare const CuratorSectionSchema: z.ZodObject<{
|
|
|
321
404
|
provider: z.ZodOptional<z.ZodString>;
|
|
322
405
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
323
406
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
407
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
408
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
409
|
+
/** Optional per-run USD spend ceiling. */
|
|
410
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
411
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
412
|
+
}, "strip", z.ZodTypeAny, {
|
|
413
|
+
maxUsd?: number | null | undefined;
|
|
414
|
+
}, {
|
|
415
|
+
maxUsd?: number | null | undefined;
|
|
416
|
+
}>>;
|
|
324
417
|
}, "strip", z.ZodTypeAny, {
|
|
325
418
|
model: string;
|
|
326
419
|
maxTurns: number;
|
|
@@ -328,11 +421,19 @@ export declare const CuratorSectionSchema: z.ZodObject<{
|
|
|
328
421
|
provider?: string | undefined;
|
|
329
422
|
endpoint?: string | null | undefined;
|
|
330
423
|
providerConfig?: Record<string, unknown> | undefined;
|
|
424
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
425
|
+
budget?: {
|
|
426
|
+
maxUsd?: number | null | undefined;
|
|
427
|
+
} | undefined;
|
|
331
428
|
}, {
|
|
332
429
|
model?: string | undefined;
|
|
333
430
|
provider?: string | undefined;
|
|
334
431
|
endpoint?: string | null | undefined;
|
|
335
432
|
providerConfig?: Record<string, unknown> | undefined;
|
|
433
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
434
|
+
budget?: {
|
|
435
|
+
maxUsd?: number | null | undefined;
|
|
436
|
+
} | undefined;
|
|
336
437
|
maxTurns?: number | undefined;
|
|
337
438
|
enabled?: boolean | undefined;
|
|
338
439
|
}>;
|
|
@@ -364,54 +465,405 @@ export declare const CodeReviewSectionSchema: z.ZodObject<{
|
|
|
364
465
|
}>;
|
|
365
466
|
export type CodeReviewSection = z.infer<typeof CodeReviewSectionSchema>;
|
|
366
467
|
/**
|
|
367
|
-
*
|
|
368
|
-
*
|
|
369
|
-
*
|
|
468
|
+
* Configuration for the bober-security-auditor role (spec-20260712).
|
|
469
|
+
* Opt-in and default-off: `enabled: false` and the section itself is wired
|
|
470
|
+
* `.optional()` on BoberConfigSchema with no top-level default, so a config
|
|
471
|
+
* that omits `security` entirely stays byte-identical (no defaults leak in).
|
|
472
|
+
* `standaloneBlockOn`/`hub` are consumed by later sprints (gate + hub
|
|
473
|
+
* emission) but are declared here now to avoid re-touching this schema.
|
|
370
474
|
*/
|
|
371
|
-
|
|
372
|
-
|
|
475
|
+
/**
|
|
476
|
+
* Sprint-6: opt-in real-diff configuration (ADR-5 — the orchestrator, not
|
|
477
|
+
* the auditor, owns the diff). `mode` defaults to `"estimated-files"`,
|
|
478
|
+
* today's exact behavior; `git-diff` is never the default (fail-safe
|
|
479
|
+
* opt-in, nonGoals[1]).
|
|
480
|
+
*/
|
|
481
|
+
export declare const SecurityDiffConfigSchema: z.ZodObject<{
|
|
482
|
+
mode: z.ZodDefault<z.ZodEnum<["estimated-files", "git-diff"]>>;
|
|
483
|
+
baseRef: z.ZodOptional<z.ZodString>;
|
|
484
|
+
expandWithGraph: z.ZodDefault<z.ZodBoolean>;
|
|
485
|
+
}, "strip", z.ZodTypeAny, {
|
|
486
|
+
mode: "estimated-files" | "git-diff";
|
|
487
|
+
expandWithGraph: boolean;
|
|
488
|
+
baseRef?: string | undefined;
|
|
489
|
+
}, {
|
|
490
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
491
|
+
baseRef?: string | undefined;
|
|
492
|
+
expandWithGraph?: boolean | undefined;
|
|
493
|
+
}>;
|
|
494
|
+
export type SecurityDiffConfig = z.infer<typeof SecurityDiffConfigSchema>;
|
|
495
|
+
/**
|
|
496
|
+
* Sprint-7: opt-in supply-chain/dependency/secret scanner axis. `enabled`
|
|
497
|
+
* defaults false and `scanners` reuses `EvalStrategySchema` (the same shape
|
|
498
|
+
* `security.scanners` uses) — the supply-chain parser kinds (npm-audit,
|
|
499
|
+
* osv-scanner, gitleaks) are detected the same way as any other scanner.
|
|
500
|
+
*/
|
|
501
|
+
export declare const SecuritySupplyChainConfigSchema: z.ZodObject<{
|
|
502
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
503
|
+
scanners: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
504
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
505
|
+
type: z.ZodString;
|
|
506
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
507
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
508
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
509
|
+
command: z.ZodOptional<z.ZodString>;
|
|
510
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
511
|
+
required: z.ZodBoolean;
|
|
512
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
513
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
514
|
+
/** Human-readable label (defaults to type if not set). */
|
|
515
|
+
label: z.ZodOptional<z.ZodString>;
|
|
516
|
+
}, "strip", z.ZodTypeAny, {
|
|
517
|
+
type: string;
|
|
518
|
+
required: boolean;
|
|
519
|
+
plugin?: string | undefined;
|
|
520
|
+
command?: string | undefined;
|
|
521
|
+
config?: Record<string, unknown> | undefined;
|
|
522
|
+
label?: string | undefined;
|
|
523
|
+
}, {
|
|
524
|
+
type: string;
|
|
525
|
+
required: boolean;
|
|
526
|
+
plugin?: string | undefined;
|
|
527
|
+
command?: string | undefined;
|
|
528
|
+
config?: Record<string, unknown> | undefined;
|
|
529
|
+
label?: string | undefined;
|
|
530
|
+
}>, "many">>;
|
|
531
|
+
}, "strip", z.ZodTypeAny, {
|
|
532
|
+
enabled: boolean;
|
|
533
|
+
scanners: {
|
|
534
|
+
type: string;
|
|
535
|
+
required: boolean;
|
|
536
|
+
plugin?: string | undefined;
|
|
537
|
+
command?: string | undefined;
|
|
538
|
+
config?: Record<string, unknown> | undefined;
|
|
539
|
+
label?: string | undefined;
|
|
540
|
+
}[];
|
|
541
|
+
}, {
|
|
542
|
+
enabled?: boolean | undefined;
|
|
543
|
+
scanners?: {
|
|
544
|
+
type: string;
|
|
545
|
+
required: boolean;
|
|
546
|
+
plugin?: string | undefined;
|
|
547
|
+
command?: string | undefined;
|
|
548
|
+
config?: Record<string, unknown> | undefined;
|
|
549
|
+
label?: string | undefined;
|
|
550
|
+
}[] | undefined;
|
|
551
|
+
}>;
|
|
552
|
+
export type SecuritySupplyChainConfig = z.infer<typeof SecuritySupplyChainConfigSchema>;
|
|
553
|
+
/**
|
|
554
|
+
* Sprint-7: egress axis gating network-capable supply-chain scanners
|
|
555
|
+
* (npm-audit/osv-scanner hit a remote registry/vulnerability DB).
|
|
556
|
+
* `onlineResearch` defaults false (fail-safe opt-in), mirroring the
|
|
557
|
+
* research/medical online-research egress precedent.
|
|
558
|
+
*/
|
|
559
|
+
export declare const SecurityEgressConfigSchema: z.ZodObject<{
|
|
560
|
+
onlineResearch: z.ZodDefault<z.ZodBoolean>;
|
|
561
|
+
}, "strip", z.ZodTypeAny, {
|
|
562
|
+
onlineResearch: boolean;
|
|
563
|
+
}, {
|
|
564
|
+
onlineResearch?: boolean | undefined;
|
|
565
|
+
}>;
|
|
566
|
+
export type SecurityEgressConfig = z.infer<typeof SecurityEgressConfigSchema>;
|
|
567
|
+
export declare const SecuritySectionSchema: z.ZodObject<{
|
|
373
568
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
569
|
+
/** Fail-closed: unparseable auditor output or a timeout blocks. Default true. */
|
|
570
|
+
failClosed: z.ZodDefault<z.ZodBoolean>;
|
|
571
|
+
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
374
572
|
model: z.ZodDefault<z.ZodString>;
|
|
375
573
|
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
376
574
|
provider: z.ZodOptional<z.ZodString>;
|
|
377
575
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
378
576
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
577
|
+
/** Optional per-run USD spend ceiling. */
|
|
578
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
579
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
580
|
+
}, "strip", z.ZodTypeAny, {
|
|
581
|
+
maxUsd?: number | null | undefined;
|
|
582
|
+
}, {
|
|
583
|
+
maxUsd?: number | null | undefined;
|
|
584
|
+
}>>;
|
|
585
|
+
/** Opt-in deterministic scanner pre-filter strategies (e.g. slither, semgrep). */
|
|
586
|
+
scanners: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
587
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
588
|
+
type: z.ZodString;
|
|
589
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
590
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
591
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
592
|
+
command: z.ZodOptional<z.ZodString>;
|
|
593
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
594
|
+
required: z.ZodBoolean;
|
|
595
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
596
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
597
|
+
/** Human-readable label (defaults to type if not set). */
|
|
598
|
+
label: z.ZodOptional<z.ZodString>;
|
|
599
|
+
}, "strip", z.ZodTypeAny, {
|
|
600
|
+
type: string;
|
|
601
|
+
required: boolean;
|
|
602
|
+
plugin?: string | undefined;
|
|
603
|
+
command?: string | undefined;
|
|
604
|
+
config?: Record<string, unknown> | undefined;
|
|
605
|
+
label?: string | undefined;
|
|
606
|
+
}, {
|
|
607
|
+
type: string;
|
|
608
|
+
required: boolean;
|
|
609
|
+
plugin?: string | undefined;
|
|
610
|
+
command?: string | undefined;
|
|
611
|
+
config?: Record<string, unknown> | undefined;
|
|
612
|
+
label?: string | undefined;
|
|
613
|
+
}>, "many">>;
|
|
614
|
+
/** Blocking threshold for the standalone `bober security-audit` CLI (sprint 4). */
|
|
615
|
+
standaloneBlockOn: z.ZodDefault<z.ZodEnum<["critical", "important"]>>;
|
|
616
|
+
/** Whether findings are emitted to the priority hub (sprint 6). Default true. */
|
|
617
|
+
hub: z.ZodDefault<z.ZodBoolean>;
|
|
618
|
+
/**
|
|
619
|
+
* Opt-in real-diff provider config (sprint 6). OPTIONAL with no outer
|
|
620
|
+
* default — a config that omits `diff` entirely stays byte-identical
|
|
621
|
+
* (no defaults leak in), same guarantee as `security` itself (sc-6-3).
|
|
622
|
+
*/
|
|
623
|
+
diff: z.ZodOptional<z.ZodObject<{
|
|
624
|
+
mode: z.ZodDefault<z.ZodEnum<["estimated-files", "git-diff"]>>;
|
|
625
|
+
baseRef: z.ZodOptional<z.ZodString>;
|
|
626
|
+
expandWithGraph: z.ZodDefault<z.ZodBoolean>;
|
|
627
|
+
}, "strip", z.ZodTypeAny, {
|
|
628
|
+
mode: "estimated-files" | "git-diff";
|
|
629
|
+
expandWithGraph: boolean;
|
|
630
|
+
baseRef?: string | undefined;
|
|
631
|
+
}, {
|
|
632
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
633
|
+
baseRef?: string | undefined;
|
|
634
|
+
expandWithGraph?: boolean | undefined;
|
|
635
|
+
}>>;
|
|
636
|
+
/**
|
|
637
|
+
* Sprint-7: opt-in supply-chain axis config. OPTIONAL with no outer
|
|
638
|
+
* default — a config that omits `supplyChain` entirely stays
|
|
639
|
+
* byte-identical (no defaults leak in), same guarantee as `diff` (sc-7-3).
|
|
640
|
+
*/
|
|
641
|
+
supplyChain: z.ZodOptional<z.ZodObject<{
|
|
642
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
643
|
+
scanners: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
644
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
645
|
+
type: z.ZodString;
|
|
646
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
647
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
648
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
649
|
+
command: z.ZodOptional<z.ZodString>;
|
|
650
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
651
|
+
required: z.ZodBoolean;
|
|
652
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
653
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
654
|
+
/** Human-readable label (defaults to type if not set). */
|
|
655
|
+
label: z.ZodOptional<z.ZodString>;
|
|
656
|
+
}, "strip", z.ZodTypeAny, {
|
|
657
|
+
type: string;
|
|
658
|
+
required: boolean;
|
|
659
|
+
plugin?: string | undefined;
|
|
660
|
+
command?: string | undefined;
|
|
661
|
+
config?: Record<string, unknown> | undefined;
|
|
662
|
+
label?: string | undefined;
|
|
663
|
+
}, {
|
|
664
|
+
type: string;
|
|
665
|
+
required: boolean;
|
|
666
|
+
plugin?: string | undefined;
|
|
667
|
+
command?: string | undefined;
|
|
668
|
+
config?: Record<string, unknown> | undefined;
|
|
669
|
+
label?: string | undefined;
|
|
670
|
+
}>, "many">>;
|
|
671
|
+
}, "strip", z.ZodTypeAny, {
|
|
672
|
+
enabled: boolean;
|
|
673
|
+
scanners: {
|
|
674
|
+
type: string;
|
|
675
|
+
required: boolean;
|
|
676
|
+
plugin?: string | undefined;
|
|
677
|
+
command?: string | undefined;
|
|
678
|
+
config?: Record<string, unknown> | undefined;
|
|
679
|
+
label?: string | undefined;
|
|
680
|
+
}[];
|
|
681
|
+
}, {
|
|
682
|
+
enabled?: boolean | undefined;
|
|
683
|
+
scanners?: {
|
|
684
|
+
type: string;
|
|
685
|
+
required: boolean;
|
|
686
|
+
plugin?: string | undefined;
|
|
687
|
+
command?: string | undefined;
|
|
688
|
+
config?: Record<string, unknown> | undefined;
|
|
689
|
+
label?: string | undefined;
|
|
690
|
+
}[] | undefined;
|
|
691
|
+
}>>;
|
|
692
|
+
/**
|
|
693
|
+
* Sprint-7: egress axis gating network-capable supply-chain scanners.
|
|
694
|
+
* OPTIONAL with no outer default (same byte-identical guarantee as above).
|
|
695
|
+
*/
|
|
696
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
697
|
+
onlineResearch: z.ZodDefault<z.ZodBoolean>;
|
|
698
|
+
}, "strip", z.ZodTypeAny, {
|
|
699
|
+
onlineResearch: boolean;
|
|
700
|
+
}, {
|
|
701
|
+
onlineResearch?: boolean | undefined;
|
|
702
|
+
}>>;
|
|
703
|
+
/**
|
|
704
|
+
* Sprint-8: opt-in adversarial finder->verifier stage config. OPTIONAL
|
|
705
|
+
* with no outer default — a config that omits `verifier` entirely stays
|
|
706
|
+
* byte-identical (no defaults leak in), same guarantee as `diff` /
|
|
707
|
+
* `supplyChain` / `egress` above (sc-8-5). `maxTurns` defaults lower than
|
|
708
|
+
* the finder's (10 vs 20) — refutation needs fewer turns than the
|
|
709
|
+
* original audit.
|
|
710
|
+
*/
|
|
711
|
+
verifier: z.ZodOptional<z.ZodObject<{
|
|
712
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
713
|
+
model: z.ZodDefault<z.ZodString>;
|
|
714
|
+
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
715
|
+
}, "strip", z.ZodTypeAny, {
|
|
716
|
+
model: string;
|
|
717
|
+
maxTurns: number;
|
|
718
|
+
enabled: boolean;
|
|
719
|
+
}, {
|
|
720
|
+
model?: string | undefined;
|
|
721
|
+
maxTurns?: number | undefined;
|
|
722
|
+
enabled?: boolean | undefined;
|
|
723
|
+
}>>;
|
|
379
724
|
}, "strip", z.ZodTypeAny, {
|
|
380
725
|
model: string;
|
|
381
726
|
maxTurns: number;
|
|
382
727
|
enabled: boolean;
|
|
383
728
|
timeoutMs: number;
|
|
729
|
+
failClosed: boolean;
|
|
730
|
+
scanners: {
|
|
731
|
+
type: string;
|
|
732
|
+
required: boolean;
|
|
733
|
+
plugin?: string | undefined;
|
|
734
|
+
command?: string | undefined;
|
|
735
|
+
config?: Record<string, unknown> | undefined;
|
|
736
|
+
label?: string | undefined;
|
|
737
|
+
}[];
|
|
738
|
+
standaloneBlockOn: "critical" | "important";
|
|
739
|
+
hub: boolean;
|
|
384
740
|
provider?: string | undefined;
|
|
385
741
|
endpoint?: string | null | undefined;
|
|
386
742
|
providerConfig?: Record<string, unknown> | undefined;
|
|
743
|
+
budget?: {
|
|
744
|
+
maxUsd?: number | null | undefined;
|
|
745
|
+
} | undefined;
|
|
746
|
+
egress?: {
|
|
747
|
+
onlineResearch: boolean;
|
|
748
|
+
} | undefined;
|
|
749
|
+
diff?: {
|
|
750
|
+
mode: "estimated-files" | "git-diff";
|
|
751
|
+
expandWithGraph: boolean;
|
|
752
|
+
baseRef?: string | undefined;
|
|
753
|
+
} | undefined;
|
|
754
|
+
supplyChain?: {
|
|
755
|
+
enabled: boolean;
|
|
756
|
+
scanners: {
|
|
757
|
+
type: string;
|
|
758
|
+
required: boolean;
|
|
759
|
+
plugin?: string | undefined;
|
|
760
|
+
command?: string | undefined;
|
|
761
|
+
config?: Record<string, unknown> | undefined;
|
|
762
|
+
label?: string | undefined;
|
|
763
|
+
}[];
|
|
764
|
+
} | undefined;
|
|
765
|
+
verifier?: {
|
|
766
|
+
model: string;
|
|
767
|
+
maxTurns: number;
|
|
768
|
+
enabled: boolean;
|
|
769
|
+
} | undefined;
|
|
387
770
|
}, {
|
|
388
771
|
model?: string | undefined;
|
|
389
772
|
provider?: string | undefined;
|
|
390
773
|
endpoint?: string | null | undefined;
|
|
391
774
|
providerConfig?: Record<string, unknown> | undefined;
|
|
775
|
+
budget?: {
|
|
776
|
+
maxUsd?: number | null | undefined;
|
|
777
|
+
} | undefined;
|
|
392
778
|
maxTurns?: number | undefined;
|
|
393
779
|
enabled?: boolean | undefined;
|
|
394
780
|
timeoutMs?: number | undefined;
|
|
781
|
+
egress?: {
|
|
782
|
+
onlineResearch?: boolean | undefined;
|
|
783
|
+
} | undefined;
|
|
784
|
+
failClosed?: boolean | undefined;
|
|
785
|
+
scanners?: {
|
|
786
|
+
type: string;
|
|
787
|
+
required: boolean;
|
|
788
|
+
plugin?: string | undefined;
|
|
789
|
+
command?: string | undefined;
|
|
790
|
+
config?: Record<string, unknown> | undefined;
|
|
791
|
+
label?: string | undefined;
|
|
792
|
+
}[] | undefined;
|
|
793
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
794
|
+
hub?: boolean | undefined;
|
|
795
|
+
diff?: {
|
|
796
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
797
|
+
baseRef?: string | undefined;
|
|
798
|
+
expandWithGraph?: boolean | undefined;
|
|
799
|
+
} | undefined;
|
|
800
|
+
supplyChain?: {
|
|
801
|
+
enabled?: boolean | undefined;
|
|
802
|
+
scanners?: {
|
|
803
|
+
type: string;
|
|
804
|
+
required: boolean;
|
|
805
|
+
plugin?: string | undefined;
|
|
806
|
+
command?: string | undefined;
|
|
807
|
+
config?: Record<string, unknown> | undefined;
|
|
808
|
+
label?: string | undefined;
|
|
809
|
+
}[] | undefined;
|
|
810
|
+
} | undefined;
|
|
811
|
+
verifier?: {
|
|
812
|
+
model?: string | undefined;
|
|
813
|
+
maxTurns?: number | undefined;
|
|
814
|
+
enabled?: boolean | undefined;
|
|
815
|
+
} | undefined;
|
|
395
816
|
}>;
|
|
396
|
-
export type
|
|
397
|
-
/**
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
817
|
+
export type SecuritySection = z.infer<typeof SecuritySectionSchema>;
|
|
818
|
+
/**
|
|
819
|
+
* Per-sprint documenter — writes docs immediately after a sprint's evaluator
|
|
820
|
+
* passes (instead of batching all docs into a final sprint). Advisory: a
|
|
821
|
+
* documenter failure never downgrades the already-passed sprint.
|
|
822
|
+
*/
|
|
823
|
+
export declare const DocumenterSectionSchema: z.ZodObject<{
|
|
824
|
+
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
825
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
826
|
+
model: z.ZodDefault<z.ZodString>;
|
|
827
|
+
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
828
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
829
|
+
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
830
|
+
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
831
|
+
}, "strip", z.ZodTypeAny, {
|
|
832
|
+
model: string;
|
|
833
|
+
maxTurns: number;
|
|
834
|
+
enabled: boolean;
|
|
835
|
+
timeoutMs: number;
|
|
836
|
+
provider?: string | undefined;
|
|
837
|
+
endpoint?: string | null | undefined;
|
|
838
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
839
|
+
}, {
|
|
840
|
+
model?: string | undefined;
|
|
841
|
+
provider?: string | undefined;
|
|
842
|
+
endpoint?: string | null | undefined;
|
|
843
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
844
|
+
maxTurns?: number | undefined;
|
|
845
|
+
enabled?: boolean | undefined;
|
|
846
|
+
timeoutMs?: number | undefined;
|
|
847
|
+
}>;
|
|
848
|
+
export type DocumenterSection = z.infer<typeof DocumenterSectionSchema>;
|
|
849
|
+
/** Well-known checkpoint mechanism names. */
|
|
850
|
+
export declare const CheckpointMechanismSchema: z.ZodEnum<["noop", "cli", "disk", "pr"]>;
|
|
851
|
+
export type CheckpointMechanismName = z.infer<typeof CheckpointMechanismSchema>;
|
|
852
|
+
export declare const PipelineSectionSchema: z.ZodObject<{
|
|
853
|
+
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
854
|
+
/** Maximum times the router re-invokes a responsible agent after rejection. Default 3, min 1, max 10. */
|
|
855
|
+
maxCheckpointIterations: z.ZodDefault<z.ZodNumber>;
|
|
856
|
+
requireApproval: z.ZodDefault<z.ZodBoolean>;
|
|
857
|
+
contextReset: z.ZodDefault<z.ZodEnum<["always", "on-threshold", "never"]>>;
|
|
858
|
+
researchPhase: z.ZodDefault<z.ZodBoolean>;
|
|
859
|
+
architectPhase: z.ZodDefault<z.ZodBoolean>;
|
|
860
|
+
/** Pipeline execution mode. 'autopilot' auto-approves all checkpoints; 'careful' defaults to disk mechanism. Default: 'autopilot'. */
|
|
861
|
+
mode: z.ZodDefault<z.ZodEnum<["autopilot", "careful"]>>;
|
|
862
|
+
/** Global default checkpoint mechanism name. When unset, resolved at runtime from pipeline.mode. Optional — leave unset to use mode-based default. */
|
|
863
|
+
checkpointMechanism: z.ZodOptional<z.ZodEnum<["noop", "cli", "disk", "pr"]>>;
|
|
864
|
+
/** Per-checkpoint mechanism overrides. Keys are checkpoint IDs (e.g., 'post-research'); values are mechanism names. Default: {}. */
|
|
865
|
+
checkpointOverrides: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodEnum<["noop", "cli", "disk", "pr"]>>>;
|
|
866
|
+
/** How long (ms) the disk and CLI mechanisms wait for approval before timing out. Default: 86400000 (24 hours). */
|
|
415
867
|
approvalTimeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
416
868
|
/** How often (ms) the PR mechanism polls for PR merge/close events. Default: 30000 (30 seconds). */
|
|
417
869
|
prPollMs: z.ZodDefault<z.ZodNumber>;
|
|
@@ -438,9 +890,9 @@ export declare const PipelineSectionSchema: z.ZodObject<{
|
|
|
438
890
|
* worktree is ALWAYS retained for debugging regardless of this flag. */
|
|
439
891
|
cleanupWorktreeOnSuccess: z.ZodDefault<z.ZodBoolean>;
|
|
440
892
|
/** Orchestration engine. 'ts' runs the built-in TypeScript pipeline (default). 'skill' and 'workflow' select alternative engines (sprint 6+). Default: 'ts'. */
|
|
441
|
-
engine: z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow"]>>;
|
|
893
|
+
engine: z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>;
|
|
442
894
|
}, "strip", z.ZodTypeAny, {
|
|
443
|
-
mode: "
|
|
895
|
+
mode: "autopilot" | "careful";
|
|
444
896
|
maxIterations: number;
|
|
445
897
|
maxCheckpointIterations: number;
|
|
446
898
|
requireApproval: boolean;
|
|
@@ -454,10 +906,10 @@ export declare const PipelineSectionSchema: z.ZodObject<{
|
|
|
454
906
|
eventQueueBound: number;
|
|
455
907
|
worktreeRoot: string;
|
|
456
908
|
cleanupWorktreeOnSuccess: boolean;
|
|
457
|
-
engine: "ts" | "skill" | "workflow";
|
|
909
|
+
engine: "ts" | "skill" | "workflow" | "medical-sop";
|
|
458
910
|
checkpointMechanism?: "noop" | "cli" | "disk" | "pr" | undefined;
|
|
459
911
|
}, {
|
|
460
|
-
mode?: "
|
|
912
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
461
913
|
maxIterations?: number | undefined;
|
|
462
914
|
maxCheckpointIterations?: number | undefined;
|
|
463
915
|
requireApproval?: boolean | undefined;
|
|
@@ -472,7 +924,7 @@ export declare const PipelineSectionSchema: z.ZodObject<{
|
|
|
472
924
|
eventQueueBound?: number | undefined;
|
|
473
925
|
worktreeRoot?: string | undefined;
|
|
474
926
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
475
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
927
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
476
928
|
}>;
|
|
477
929
|
export type PipelineSection = z.infer<typeof PipelineSectionSchema>;
|
|
478
930
|
export declare const CommandsSectionSchema: z.ZodObject<{
|
|
@@ -565,7 +1017,7 @@ export declare const GraphSectionSchema: z.ZodObject<{
|
|
|
565
1017
|
}, "strip", z.ZodTypeAny, {
|
|
566
1018
|
enabled: boolean;
|
|
567
1019
|
autoSync: boolean;
|
|
568
|
-
languageTier: "
|
|
1020
|
+
languageTier: "core" | "extended" | "all";
|
|
569
1021
|
manifestPath: string;
|
|
570
1022
|
syncTimeoutMs: number;
|
|
571
1023
|
queryTimeoutMs: number;
|
|
@@ -585,7 +1037,7 @@ export declare const GraphSectionSchema: z.ZodObject<{
|
|
|
585
1037
|
enabled?: boolean | undefined;
|
|
586
1038
|
tokensavePath?: string | undefined;
|
|
587
1039
|
autoSync?: boolean | undefined;
|
|
588
|
-
languageTier?: "
|
|
1040
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
589
1041
|
manifestPath?: string | undefined;
|
|
590
1042
|
syncTimeoutMs?: number | undefined;
|
|
591
1043
|
queryTimeoutMs?: number | undefined;
|
|
@@ -622,15 +1074,15 @@ export declare const ObservabilityProviderSchema: z.ZodObject<{
|
|
|
622
1074
|
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
623
1075
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
624
1076
|
}, "strip", z.ZodTypeAny, {
|
|
625
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
626
1077
|
name: string;
|
|
627
1078
|
enabled: boolean;
|
|
1079
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
628
1080
|
mcpCommand: string;
|
|
629
1081
|
mcpArgs?: string[] | undefined;
|
|
630
1082
|
mcpEnv?: Record<string, string> | undefined;
|
|
631
1083
|
}, {
|
|
632
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
633
1084
|
name: string;
|
|
1085
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
634
1086
|
mcpCommand: string;
|
|
635
1087
|
enabled?: boolean | undefined;
|
|
636
1088
|
mcpArgs?: string[] | undefined;
|
|
@@ -649,15 +1101,15 @@ export declare const ObservabilitySectionSchema: z.ZodObject<{
|
|
|
649
1101
|
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
650
1102
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
651
1103
|
}, "strip", z.ZodTypeAny, {
|
|
652
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
653
1104
|
name: string;
|
|
654
1105
|
enabled: boolean;
|
|
1106
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
655
1107
|
mcpCommand: string;
|
|
656
1108
|
mcpArgs?: string[] | undefined;
|
|
657
1109
|
mcpEnv?: Record<string, string> | undefined;
|
|
658
1110
|
}, {
|
|
659
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
660
1111
|
name: string;
|
|
1112
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
661
1113
|
mcpCommand: string;
|
|
662
1114
|
enabled?: boolean | undefined;
|
|
663
1115
|
mcpArgs?: string[] | undefined;
|
|
@@ -665,17 +1117,17 @@ export declare const ObservabilitySectionSchema: z.ZodObject<{
|
|
|
665
1117
|
}>, "many">>;
|
|
666
1118
|
}, "strip", z.ZodTypeAny, {
|
|
667
1119
|
providers: {
|
|
668
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
669
1120
|
name: string;
|
|
670
1121
|
enabled: boolean;
|
|
1122
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
671
1123
|
mcpCommand: string;
|
|
672
1124
|
mcpArgs?: string[] | undefined;
|
|
673
1125
|
mcpEnv?: Record<string, string> | undefined;
|
|
674
1126
|
}[];
|
|
675
1127
|
}, {
|
|
676
1128
|
providers?: {
|
|
677
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
678
1129
|
name: string;
|
|
1130
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
679
1131
|
mcpCommand: string;
|
|
680
1132
|
enabled?: boolean | undefined;
|
|
681
1133
|
mcpArgs?: string[] | undefined;
|
|
@@ -708,6 +1160,16 @@ export declare const TelemetrySectionSchema: z.ZodObject<{
|
|
|
708
1160
|
enabled?: boolean | undefined;
|
|
709
1161
|
}>;
|
|
710
1162
|
export type TelemetrySection = z.infer<typeof TelemetrySectionSchema>;
|
|
1163
|
+
export declare const TaskInboxSectionSchema: z.ZodObject<{
|
|
1164
|
+
/** When true, `bober task from-gmail` may read a Gmail thread via the MCP
|
|
1165
|
+
* connector. Default false — zero Gmail egress unless explicitly opted in. */
|
|
1166
|
+
gmailEgress: z.ZodDefault<z.ZodBoolean>;
|
|
1167
|
+
}, "strip", z.ZodTypeAny, {
|
|
1168
|
+
gmailEgress: boolean;
|
|
1169
|
+
}, {
|
|
1170
|
+
gmailEgress?: boolean | undefined;
|
|
1171
|
+
}>;
|
|
1172
|
+
export type TaskInboxSection = z.infer<typeof TaskInboxSectionSchema>;
|
|
711
1173
|
export declare const HistorySectionSchema: z.ZodObject<{
|
|
712
1174
|
/** Max entries kept in the active history.jsonl before rotation moves the
|
|
713
1175
|
* oldest overflow to history.archive.jsonl. Positive integer, default 2000. */
|
|
@@ -741,7 +1203,7 @@ export declare const TeamConfigSchema: z.ZodObject<{
|
|
|
741
1203
|
/** Memory namespace segment — restricted to a safe path segment. */
|
|
742
1204
|
memoryNamespace: z.ZodOptional<z.ZodString>;
|
|
743
1205
|
/** Orchestration engine shape for this team. Mirrors the z.enum in PipelineSectionSchema. */
|
|
744
|
-
pipelineShape: z.ZodOptional<z.ZodEnum<["ts", "skill", "workflow"]>>;
|
|
1206
|
+
pipelineShape: z.ZodOptional<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>;
|
|
745
1207
|
/** Partial role -> provider override. Keys SHOULD be RoleName values. */
|
|
746
1208
|
providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
747
1209
|
roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -759,7 +1221,7 @@ export declare const TeamConfigSchema: z.ZodObject<{
|
|
|
759
1221
|
providers?: Record<string, string> | undefined;
|
|
760
1222
|
displayName?: string | undefined;
|
|
761
1223
|
memoryNamespace?: string | undefined;
|
|
762
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
1224
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
763
1225
|
roles?: {
|
|
764
1226
|
name: string;
|
|
765
1227
|
displayName: string;
|
|
@@ -769,7 +1231,7 @@ export declare const TeamConfigSchema: z.ZodObject<{
|
|
|
769
1231
|
providers?: Record<string, string> | undefined;
|
|
770
1232
|
displayName?: string | undefined;
|
|
771
1233
|
memoryNamespace?: string | undefined;
|
|
772
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
1234
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
773
1235
|
roles?: {
|
|
774
1236
|
name: string;
|
|
775
1237
|
displayName: string;
|
|
@@ -777,6 +1239,637 @@ export declare const TeamConfigSchema: z.ZodObject<{
|
|
|
777
1239
|
guardrails?: unknown;
|
|
778
1240
|
}>;
|
|
779
1241
|
export type TeamConfig = z.infer<typeof TeamConfigSchema>;
|
|
1242
|
+
export declare const MedicalSectionSchema: z.ZodObject<{
|
|
1243
|
+
/** Egress opt-in axes (ADR-6). Both default false — zero outbound bytes by default. */
|
|
1244
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
1245
|
+
/** When true, cloud inference synthesis is permitted. Default false. */
|
|
1246
|
+
cloudInference: z.ZodDefault<z.ZodBoolean>;
|
|
1247
|
+
/** When true, literature retrieval (MedlinePlus) is permitted. Default false. */
|
|
1248
|
+
literatureRetrieval: z.ZodDefault<z.ZodBoolean>;
|
|
1249
|
+
/** When true, WHOOP device-connection egress is permitted (ADR-1). Default false. */
|
|
1250
|
+
deviceConnection: z.ZodDefault<z.ZodBoolean>;
|
|
1251
|
+
}, "strip", z.ZodTypeAny, {
|
|
1252
|
+
cloudInference: boolean;
|
|
1253
|
+
literatureRetrieval: boolean;
|
|
1254
|
+
deviceConnection: boolean;
|
|
1255
|
+
}, {
|
|
1256
|
+
cloudInference?: boolean | undefined;
|
|
1257
|
+
literatureRetrieval?: boolean | undefined;
|
|
1258
|
+
deviceConnection?: boolean | undefined;
|
|
1259
|
+
}>>;
|
|
1260
|
+
/**
|
|
1261
|
+
* Optional synthesis/critic model override (Sprint 3 — grounding-critic).
|
|
1262
|
+
* Absent => local Ollama default (openai-compat http://localhost:11434/v1, llama3).
|
|
1263
|
+
* A CLOUD provider here is only honoured when egress.cloudInference is true (fail-closed otherwise).
|
|
1264
|
+
*/
|
|
1265
|
+
inference: z.ZodOptional<z.ZodObject<{
|
|
1266
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
1267
|
+
endpoint: z.ZodOptional<z.ZodString>;
|
|
1268
|
+
model: z.ZodOptional<z.ZodString>;
|
|
1269
|
+
}, "strip", z.ZodTypeAny, {
|
|
1270
|
+
model?: string | undefined;
|
|
1271
|
+
provider?: string | undefined;
|
|
1272
|
+
endpoint?: string | undefined;
|
|
1273
|
+
}, {
|
|
1274
|
+
model?: string | undefined;
|
|
1275
|
+
provider?: string | undefined;
|
|
1276
|
+
endpoint?: string | undefined;
|
|
1277
|
+
}>>;
|
|
1278
|
+
/** Optional vault dir for medical Findings/notes. Default: <projectRoot>/.bober/medical/vault. */
|
|
1279
|
+
vaultDir: z.ZodOptional<z.ZodString>;
|
|
1280
|
+
}, "strip", z.ZodTypeAny, {
|
|
1281
|
+
egress?: {
|
|
1282
|
+
cloudInference: boolean;
|
|
1283
|
+
literatureRetrieval: boolean;
|
|
1284
|
+
deviceConnection: boolean;
|
|
1285
|
+
} | undefined;
|
|
1286
|
+
inference?: {
|
|
1287
|
+
model?: string | undefined;
|
|
1288
|
+
provider?: string | undefined;
|
|
1289
|
+
endpoint?: string | undefined;
|
|
1290
|
+
} | undefined;
|
|
1291
|
+
vaultDir?: string | undefined;
|
|
1292
|
+
}, {
|
|
1293
|
+
egress?: {
|
|
1294
|
+
cloudInference?: boolean | undefined;
|
|
1295
|
+
literatureRetrieval?: boolean | undefined;
|
|
1296
|
+
deviceConnection?: boolean | undefined;
|
|
1297
|
+
} | undefined;
|
|
1298
|
+
inference?: {
|
|
1299
|
+
model?: string | undefined;
|
|
1300
|
+
provider?: string | undefined;
|
|
1301
|
+
endpoint?: string | undefined;
|
|
1302
|
+
} | undefined;
|
|
1303
|
+
vaultDir?: string | undefined;
|
|
1304
|
+
}>;
|
|
1305
|
+
export type MedicalSection = z.infer<typeof MedicalSectionSchema>;
|
|
1306
|
+
export declare const FleetSectionSchema: z.ZodObject<{
|
|
1307
|
+
/** Absolute path to the shared WAL facts.db file. */
|
|
1308
|
+
blackboardDbPath: z.ZodString;
|
|
1309
|
+
/** Namespace scoping all findings for this fleet run. */
|
|
1310
|
+
blackboardNamespace: z.ZodString;
|
|
1311
|
+
/** This child's own subject identifier (equals the child folder name). */
|
|
1312
|
+
blackboardSubject: z.ZodString;
|
|
1313
|
+
/** Maximum number of exchange rounds (1–3). */
|
|
1314
|
+
maxRounds: z.ZodNumber;
|
|
1315
|
+
}, "strip", z.ZodTypeAny, {
|
|
1316
|
+
blackboardDbPath: string;
|
|
1317
|
+
blackboardNamespace: string;
|
|
1318
|
+
blackboardSubject: string;
|
|
1319
|
+
maxRounds: number;
|
|
1320
|
+
}, {
|
|
1321
|
+
blackboardDbPath: string;
|
|
1322
|
+
blackboardNamespace: string;
|
|
1323
|
+
blackboardSubject: string;
|
|
1324
|
+
maxRounds: number;
|
|
1325
|
+
}>;
|
|
1326
|
+
export type FleetSection = z.infer<typeof FleetSectionSchema>;
|
|
1327
|
+
/**
|
|
1328
|
+
* Configuration for one on-device Obsidian MCP server.
|
|
1329
|
+
* Mirrors ObservabilityProviderSchema but drops `kind` and adds `toolNames`.
|
|
1330
|
+
* mcpEnv may contain secrets — treat as opaque (never log, never stringify).
|
|
1331
|
+
*/
|
|
1332
|
+
export declare const VaultObsidianSchema: z.ZodObject<{
|
|
1333
|
+
/** Unique server name (used in error messages — never secrets). */
|
|
1334
|
+
name: z.ZodString;
|
|
1335
|
+
/** Executable to spawn (e.g., "npx", "/usr/local/bin/obsidian-mcp"). */
|
|
1336
|
+
mcpCommand: z.ZodString;
|
|
1337
|
+
mcpArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
1338
|
+
/** Env vars passed to the child — may contain SECRETS (treat as opaque, never log). */
|
|
1339
|
+
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
1340
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1341
|
+
/**
|
|
1342
|
+
* Override the server tool names per logical operation.
|
|
1343
|
+
* When absent, cyanheads/obsidian-mcp-server defaults are used (see DEFAULT_VAULT_TOOL_NAMES).
|
|
1344
|
+
* Provide overrides when using a different MCP server (e.g., Obsidian Local REST API).
|
|
1345
|
+
*/
|
|
1346
|
+
toolNames: z.ZodOptional<z.ZodObject<{
|
|
1347
|
+
readNote: z.ZodOptional<z.ZodString>;
|
|
1348
|
+
writeNote: z.ZodOptional<z.ZodString>;
|
|
1349
|
+
listNotes: z.ZodOptional<z.ZodString>;
|
|
1350
|
+
}, "strip", z.ZodTypeAny, {
|
|
1351
|
+
readNote?: string | undefined;
|
|
1352
|
+
writeNote?: string | undefined;
|
|
1353
|
+
listNotes?: string | undefined;
|
|
1354
|
+
}, {
|
|
1355
|
+
readNote?: string | undefined;
|
|
1356
|
+
writeNote?: string | undefined;
|
|
1357
|
+
listNotes?: string | undefined;
|
|
1358
|
+
}>>;
|
|
1359
|
+
}, "strip", z.ZodTypeAny, {
|
|
1360
|
+
name: string;
|
|
1361
|
+
enabled: boolean;
|
|
1362
|
+
mcpCommand: string;
|
|
1363
|
+
mcpArgs?: string[] | undefined;
|
|
1364
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1365
|
+
toolNames?: {
|
|
1366
|
+
readNote?: string | undefined;
|
|
1367
|
+
writeNote?: string | undefined;
|
|
1368
|
+
listNotes?: string | undefined;
|
|
1369
|
+
} | undefined;
|
|
1370
|
+
}, {
|
|
1371
|
+
name: string;
|
|
1372
|
+
mcpCommand: string;
|
|
1373
|
+
enabled?: boolean | undefined;
|
|
1374
|
+
mcpArgs?: string[] | undefined;
|
|
1375
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1376
|
+
toolNames?: {
|
|
1377
|
+
readNote?: string | undefined;
|
|
1378
|
+
writeNote?: string | undefined;
|
|
1379
|
+
listNotes?: string | undefined;
|
|
1380
|
+
} | undefined;
|
|
1381
|
+
}>;
|
|
1382
|
+
export type VaultObsidian = z.infer<typeof VaultObsidianSchema>;
|
|
1383
|
+
export declare const VaultSectionSchema: z.ZodObject<{
|
|
1384
|
+
obsidian: z.ZodOptional<z.ZodObject<{
|
|
1385
|
+
/** Unique server name (used in error messages — never secrets). */
|
|
1386
|
+
name: z.ZodString;
|
|
1387
|
+
/** Executable to spawn (e.g., "npx", "/usr/local/bin/obsidian-mcp"). */
|
|
1388
|
+
mcpCommand: z.ZodString;
|
|
1389
|
+
mcpArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
1390
|
+
/** Env vars passed to the child — may contain SECRETS (treat as opaque, never log). */
|
|
1391
|
+
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
1392
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1393
|
+
/**
|
|
1394
|
+
* Override the server tool names per logical operation.
|
|
1395
|
+
* When absent, cyanheads/obsidian-mcp-server defaults are used (see DEFAULT_VAULT_TOOL_NAMES).
|
|
1396
|
+
* Provide overrides when using a different MCP server (e.g., Obsidian Local REST API).
|
|
1397
|
+
*/
|
|
1398
|
+
toolNames: z.ZodOptional<z.ZodObject<{
|
|
1399
|
+
readNote: z.ZodOptional<z.ZodString>;
|
|
1400
|
+
writeNote: z.ZodOptional<z.ZodString>;
|
|
1401
|
+
listNotes: z.ZodOptional<z.ZodString>;
|
|
1402
|
+
}, "strip", z.ZodTypeAny, {
|
|
1403
|
+
readNote?: string | undefined;
|
|
1404
|
+
writeNote?: string | undefined;
|
|
1405
|
+
listNotes?: string | undefined;
|
|
1406
|
+
}, {
|
|
1407
|
+
readNote?: string | undefined;
|
|
1408
|
+
writeNote?: string | undefined;
|
|
1409
|
+
listNotes?: string | undefined;
|
|
1410
|
+
}>>;
|
|
1411
|
+
}, "strip", z.ZodTypeAny, {
|
|
1412
|
+
name: string;
|
|
1413
|
+
enabled: boolean;
|
|
1414
|
+
mcpCommand: string;
|
|
1415
|
+
mcpArgs?: string[] | undefined;
|
|
1416
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1417
|
+
toolNames?: {
|
|
1418
|
+
readNote?: string | undefined;
|
|
1419
|
+
writeNote?: string | undefined;
|
|
1420
|
+
listNotes?: string | undefined;
|
|
1421
|
+
} | undefined;
|
|
1422
|
+
}, {
|
|
1423
|
+
name: string;
|
|
1424
|
+
mcpCommand: string;
|
|
1425
|
+
enabled?: boolean | undefined;
|
|
1426
|
+
mcpArgs?: string[] | undefined;
|
|
1427
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1428
|
+
toolNames?: {
|
|
1429
|
+
readNote?: string | undefined;
|
|
1430
|
+
writeNote?: string | undefined;
|
|
1431
|
+
listNotes?: string | undefined;
|
|
1432
|
+
} | undefined;
|
|
1433
|
+
}>>;
|
|
1434
|
+
}, "strip", z.ZodTypeAny, {
|
|
1435
|
+
obsidian?: {
|
|
1436
|
+
name: string;
|
|
1437
|
+
enabled: boolean;
|
|
1438
|
+
mcpCommand: string;
|
|
1439
|
+
mcpArgs?: string[] | undefined;
|
|
1440
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1441
|
+
toolNames?: {
|
|
1442
|
+
readNote?: string | undefined;
|
|
1443
|
+
writeNote?: string | undefined;
|
|
1444
|
+
listNotes?: string | undefined;
|
|
1445
|
+
} | undefined;
|
|
1446
|
+
} | undefined;
|
|
1447
|
+
}, {
|
|
1448
|
+
obsidian?: {
|
|
1449
|
+
name: string;
|
|
1450
|
+
mcpCommand: string;
|
|
1451
|
+
enabled?: boolean | undefined;
|
|
1452
|
+
mcpArgs?: string[] | undefined;
|
|
1453
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
1454
|
+
toolNames?: {
|
|
1455
|
+
readNote?: string | undefined;
|
|
1456
|
+
writeNote?: string | undefined;
|
|
1457
|
+
listNotes?: string | undefined;
|
|
1458
|
+
} | undefined;
|
|
1459
|
+
} | undefined;
|
|
1460
|
+
}>;
|
|
1461
|
+
export type VaultSection = z.infer<typeof VaultSectionSchema>;
|
|
1462
|
+
export declare const CalendarSectionSchema: z.ZodObject<{
|
|
1463
|
+
/** Egress opt-in axis (Sprint 3). Default false — zero cloud egress by default. */
|
|
1464
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
1465
|
+
/** When true, Google Calendar (cloud) egress is permitted. Default false (fail-closed). */
|
|
1466
|
+
cloudCalendar: z.ZodDefault<z.ZodBoolean>;
|
|
1467
|
+
}, "strip", z.ZodTypeAny, {
|
|
1468
|
+
cloudCalendar: boolean;
|
|
1469
|
+
}, {
|
|
1470
|
+
cloudCalendar?: boolean | undefined;
|
|
1471
|
+
}>>;
|
|
1472
|
+
/** Which connector to use. Default 'ics' (local, zero-egress). */
|
|
1473
|
+
connector: z.ZodDefault<z.ZodEnum<["ics", "google"]>>;
|
|
1474
|
+
/** Optional IANA timezone (informational only; not used in epoch-ms math). */
|
|
1475
|
+
timezone: z.ZodOptional<z.ZodString>;
|
|
1476
|
+
}, "strip", z.ZodTypeAny, {
|
|
1477
|
+
connector: "ics" | "google";
|
|
1478
|
+
egress?: {
|
|
1479
|
+
cloudCalendar: boolean;
|
|
1480
|
+
} | undefined;
|
|
1481
|
+
timezone?: string | undefined;
|
|
1482
|
+
}, {
|
|
1483
|
+
egress?: {
|
|
1484
|
+
cloudCalendar?: boolean | undefined;
|
|
1485
|
+
} | undefined;
|
|
1486
|
+
connector?: "ics" | "google" | undefined;
|
|
1487
|
+
timezone?: string | undefined;
|
|
1488
|
+
}>;
|
|
1489
|
+
export type CalendarSection = z.infer<typeof CalendarSectionSchema>;
|
|
1490
|
+
export declare const ResearchSectionSchema: z.ZodObject<{
|
|
1491
|
+
/** Egress opt-in axis. Default false — zero outbound bytes by default (fail-closed, ADR-6 lineage). */
|
|
1492
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
1493
|
+
/** When true, online/web research retrieval is permitted. Default false. */
|
|
1494
|
+
onlineResearch: z.ZodDefault<z.ZodBoolean>;
|
|
1495
|
+
}, "strip", z.ZodTypeAny, {
|
|
1496
|
+
onlineResearch: boolean;
|
|
1497
|
+
}, {
|
|
1498
|
+
onlineResearch?: boolean | undefined;
|
|
1499
|
+
}>>;
|
|
1500
|
+
}, "strip", z.ZodTypeAny, {
|
|
1501
|
+
egress?: {
|
|
1502
|
+
onlineResearch: boolean;
|
|
1503
|
+
} | undefined;
|
|
1504
|
+
}, {
|
|
1505
|
+
egress?: {
|
|
1506
|
+
onlineResearch?: boolean | undefined;
|
|
1507
|
+
} | undefined;
|
|
1508
|
+
}>;
|
|
1509
|
+
export type ResearchSection = z.infer<typeof ResearchSectionSchema>;
|
|
1510
|
+
/** One configured MCP server the opt-in bridge spawns to expose its tools as loop ToolDefs. */
|
|
1511
|
+
export declare const McpBridgeServerSchema: z.ZodObject<{
|
|
1512
|
+
/** Executable to spawn (e.g., "node", "npx", "/usr/local/bin/some-mcp-server"). */
|
|
1513
|
+
command: z.ZodString;
|
|
1514
|
+
args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1515
|
+
}, "strip", z.ZodTypeAny, {
|
|
1516
|
+
command: string;
|
|
1517
|
+
args: string[];
|
|
1518
|
+
}, {
|
|
1519
|
+
command: string;
|
|
1520
|
+
args?: string[] | undefined;
|
|
1521
|
+
}>;
|
|
1522
|
+
export type McpBridgeServer = z.infer<typeof McpBridgeServerSchema>;
|
|
1523
|
+
export declare const ToolsSectionSchema: z.ZodObject<{
|
|
1524
|
+
/** Opt-in bridge exposing a configured MCP server's tools as agentic-loop
|
|
1525
|
+
* ToolDefs (agent-loop-capability-port sprint 10). Default false —
|
|
1526
|
+
* disabled means no MCP process/transport is ever created and the loop's
|
|
1527
|
+
* tool list is unchanged. Only constructed by a consumer that reads
|
|
1528
|
+
* `enabled === true` at the call site (never at config parse time). */
|
|
1529
|
+
mcpBridge: z.ZodOptional<z.ZodObject<{
|
|
1530
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1531
|
+
server: z.ZodObject<{
|
|
1532
|
+
/** Executable to spawn (e.g., "node", "npx", "/usr/local/bin/some-mcp-server"). */
|
|
1533
|
+
command: z.ZodString;
|
|
1534
|
+
args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
1535
|
+
}, "strip", z.ZodTypeAny, {
|
|
1536
|
+
command: string;
|
|
1537
|
+
args: string[];
|
|
1538
|
+
}, {
|
|
1539
|
+
command: string;
|
|
1540
|
+
args?: string[] | undefined;
|
|
1541
|
+
}>;
|
|
1542
|
+
}, "strip", z.ZodTypeAny, {
|
|
1543
|
+
enabled: boolean;
|
|
1544
|
+
server: {
|
|
1545
|
+
command: string;
|
|
1546
|
+
args: string[];
|
|
1547
|
+
};
|
|
1548
|
+
}, {
|
|
1549
|
+
server: {
|
|
1550
|
+
command: string;
|
|
1551
|
+
args?: string[] | undefined;
|
|
1552
|
+
};
|
|
1553
|
+
enabled?: boolean | undefined;
|
|
1554
|
+
}>>;
|
|
1555
|
+
}, "strip", z.ZodTypeAny, {
|
|
1556
|
+
mcpBridge?: {
|
|
1557
|
+
enabled: boolean;
|
|
1558
|
+
server: {
|
|
1559
|
+
command: string;
|
|
1560
|
+
args: string[];
|
|
1561
|
+
};
|
|
1562
|
+
} | undefined;
|
|
1563
|
+
}, {
|
|
1564
|
+
mcpBridge?: {
|
|
1565
|
+
server: {
|
|
1566
|
+
command: string;
|
|
1567
|
+
args?: string[] | undefined;
|
|
1568
|
+
};
|
|
1569
|
+
enabled?: boolean | undefined;
|
|
1570
|
+
} | undefined;
|
|
1571
|
+
}>;
|
|
1572
|
+
export type ToolsSection = z.infer<typeof ToolsSectionSchema>;
|
|
1573
|
+
/**
|
|
1574
|
+
* Configuration for the bober-seo capability (spec-20260715). Opt-in and
|
|
1575
|
+
* default-off: the two live-data egress axes (`search-console`,
|
|
1576
|
+
* `serp-provider`) each default false, and the whole `seo` section is wired
|
|
1577
|
+
* `.optional()` on BoberConfigSchema with no top-level default, so a config
|
|
1578
|
+
* that omits `seo` entirely stays byte-identical (no defaults leak in) —
|
|
1579
|
+
* mirrors the security-section idiom (schema.ts:246-296) and the medical
|
|
1580
|
+
* nested-egress idiom (schema.ts:525-536).
|
|
1581
|
+
*/
|
|
1582
|
+
export declare const SeoConfigSchema: z.ZodObject<{
|
|
1583
|
+
/**
|
|
1584
|
+
* Two live-data egress axes (search-console, serp-provider). Both default
|
|
1585
|
+
* false — the offline LocalExportSource path needs neither. OPTIONAL with
|
|
1586
|
+
* no outer default — a config that omits `egress` entirely stays
|
|
1587
|
+
* byte-identical, same guarantee as `security.egress` (schema.ts:280).
|
|
1588
|
+
*/
|
|
1589
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
1590
|
+
/** When true, Google Search Console API egress is permitted. Default false. */
|
|
1591
|
+
"search-console": z.ZodDefault<z.ZodBoolean>;
|
|
1592
|
+
/** When true, DataForSEO SERP/keywords/backlinks egress is permitted. Default false. */
|
|
1593
|
+
"serp-provider": z.ZodDefault<z.ZodBoolean>;
|
|
1594
|
+
/** When true, live AI-visibility/GEO provider egress (BYOK grounded-LLM API spine) is permitted. Default false. */
|
|
1595
|
+
"ai-visibility": z.ZodDefault<z.ZodBoolean>;
|
|
1596
|
+
/** When true, damcrawler-backed site crawling (crawl/url-coverage/link-graph/SERP-scrape) is permitted. Default false. */
|
|
1597
|
+
"site-crawl": z.ZodDefault<z.ZodBoolean>;
|
|
1598
|
+
/**
|
|
1599
|
+
* When true, the AI-visibility UI-scrape arm's egress is permitted.
|
|
1600
|
+
* SEPARATE axis from `ai-visibility` (ADR-5, in-house-ai-visibility
|
|
1601
|
+
* architecture line 44) — default false and, as of Sprint 3, composes
|
|
1602
|
+
* NO provider yet (axis-only; the scrape arm lands Sprint 10).
|
|
1603
|
+
*/
|
|
1604
|
+
"ai-visibility-scrape": z.ZodDefault<z.ZodBoolean>;
|
|
1605
|
+
}, "strip", z.ZodTypeAny, {
|
|
1606
|
+
"search-console": boolean;
|
|
1607
|
+
"serp-provider": boolean;
|
|
1608
|
+
"ai-visibility": boolean;
|
|
1609
|
+
"site-crawl": boolean;
|
|
1610
|
+
"ai-visibility-scrape": boolean;
|
|
1611
|
+
}, {
|
|
1612
|
+
"search-console"?: boolean | undefined;
|
|
1613
|
+
"serp-provider"?: boolean | undefined;
|
|
1614
|
+
"ai-visibility"?: boolean | undefined;
|
|
1615
|
+
"site-crawl"?: boolean | undefined;
|
|
1616
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
1617
|
+
}>>;
|
|
1618
|
+
/**
|
|
1619
|
+
* Opt-in adversarial downgrade-only verifier stage (mirrors
|
|
1620
|
+
* `security.verifier`, schema.ts:289-295). OPTIONAL with no outer
|
|
1621
|
+
* default — omitting `verifier` entirely stays byte-identical.
|
|
1622
|
+
*/
|
|
1623
|
+
verifier: z.ZodOptional<z.ZodObject<{
|
|
1624
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1625
|
+
}, "strip", z.ZodTypeAny, {
|
|
1626
|
+
enabled: boolean;
|
|
1627
|
+
}, {
|
|
1628
|
+
enabled?: boolean | undefined;
|
|
1629
|
+
}>>;
|
|
1630
|
+
/**
|
|
1631
|
+
* Per-run USD spend ceiling for PAYG DataForSEO calls. Reuses
|
|
1632
|
+
* `BudgetSectionSchema` (schema.ts:48-51) verbatim; null/absent = uncapped.
|
|
1633
|
+
*/
|
|
1634
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
1635
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
1636
|
+
}, "strip", z.ZodTypeAny, {
|
|
1637
|
+
maxUsd?: number | null | undefined;
|
|
1638
|
+
}, {
|
|
1639
|
+
maxUsd?: number | null | undefined;
|
|
1640
|
+
}>>;
|
|
1641
|
+
/** Default domain/URL/local path used when the CLI omits [target]. */
|
|
1642
|
+
defaultTarget: z.ZodOptional<z.ZodString>;
|
|
1643
|
+
/** Citation-gate blocking threshold for the CI exit code. Default 'critical-uncited'. */
|
|
1644
|
+
blockThreshold: z.ZodDefault<z.ZodEnum<["never", "any-uncited", "critical-uncited"]>>;
|
|
1645
|
+
/**
|
|
1646
|
+
* Which SERP provider implementation serves the `serp` capability. OPTIONAL
|
|
1647
|
+
* with an INNER default on `provider` (not an outer default on the whole
|
|
1648
|
+
* object) — a config omitting `serp` entirely stays byte-identical
|
|
1649
|
+
* (`SeoConfigSchema.parse({})` leaks only `blockThreshold`, schema.test.ts:978-985).
|
|
1650
|
+
*/
|
|
1651
|
+
serp: z.ZodOptional<z.ZodObject<{
|
|
1652
|
+
provider: z.ZodDefault<z.ZodEnum<["dataforseo", "damcrawler"]>>;
|
|
1653
|
+
}, "strip", z.ZodTypeAny, {
|
|
1654
|
+
provider: "dataforseo" | "damcrawler";
|
|
1655
|
+
}, {
|
|
1656
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
1657
|
+
}>>;
|
|
1658
|
+
/**
|
|
1659
|
+
* In-house AI-visibility API-spine configuration (in-house-ai-visibility,
|
|
1660
|
+
* Sprint 3). OPTIONAL with NO outer default — a config that omits
|
|
1661
|
+
* `aiVisibility` entirely stays byte-identical (mirrors the `serp` idiom
|
|
1662
|
+
* above). Inner fields carry their own `.default(...)` and only
|
|
1663
|
+
* materialize when the object is present. `resolveAiVisibilityProvider`
|
|
1664
|
+
* (`../seo/ai-visibility-provider.js`) reads this to compose per-engine
|
|
1665
|
+
* arms; an engine with no matching API key is skipped (no-key-safe).
|
|
1666
|
+
*/
|
|
1667
|
+
aiVisibility: z.ZodOptional<z.ZodObject<{
|
|
1668
|
+
/** Grounded-search samples per prompt per engine (N in the ADR-3 N-baked cost formula). Default 5. */
|
|
1669
|
+
samplesPerPrompt: z.ZodDefault<z.ZodNumber>;
|
|
1670
|
+
/**
|
|
1671
|
+
* Which engines to probe. `"perplexity"` is a valid value but has no
|
|
1672
|
+
* live provider mapper yet (Sprint 7 nonGoal) — configuring it yields
|
|
1673
|
+
* zero rows from that arm, not an error. Default `[]` (no engines
|
|
1674
|
+
* configured => `resolveAiVisibilityProvider` returns `undefined`).
|
|
1675
|
+
*/
|
|
1676
|
+
engines: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
1677
|
+
engine: z.ZodEnum<["anthropic", "openai", "perplexity"]>;
|
|
1678
|
+
/** Fixed USD price per grounded-search call for this engine. Default 0. */
|
|
1679
|
+
perCallUsd: z.ZodDefault<z.ZodNumber>;
|
|
1680
|
+
}, "strip", z.ZodTypeAny, {
|
|
1681
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1682
|
+
perCallUsd: number;
|
|
1683
|
+
}, {
|
|
1684
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1685
|
+
perCallUsd?: number | undefined;
|
|
1686
|
+
}>, "many">>;
|
|
1687
|
+
/**
|
|
1688
|
+
* Optional LLM-as-judge fuzzy-mention path (in-house-ai-visibility,
|
|
1689
|
+
* Sprint 8). OPTIONAL with NO outer default — mirrors `serp`/
|
|
1690
|
+
* `aiVisibility` above — a config that omits `judge` entirely stays
|
|
1691
|
+
* byte-identical (`SeoConfigSchema.parse({ aiVisibility: {} })` leaks
|
|
1692
|
+
* only `samplesPerPrompt`/`engines`, schema.test.ts:1089-1096). Only
|
|
1693
|
+
* the inner `enabled` flag carries a `.default(false)`. The judge is
|
|
1694
|
+
* OFF by default even when this object is present but `enabled` is
|
|
1695
|
+
* omitted.
|
|
1696
|
+
*/
|
|
1697
|
+
judge: z.ZodOptional<z.ZodObject<{
|
|
1698
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1699
|
+
/** Optional model override for the judge call; falls back to the injected default when absent. */
|
|
1700
|
+
model: z.ZodOptional<z.ZodString>;
|
|
1701
|
+
}, "strip", z.ZodTypeAny, {
|
|
1702
|
+
enabled: boolean;
|
|
1703
|
+
model?: string | undefined;
|
|
1704
|
+
}, {
|
|
1705
|
+
model?: string | undefined;
|
|
1706
|
+
enabled?: boolean | undefined;
|
|
1707
|
+
}>>;
|
|
1708
|
+
/**
|
|
1709
|
+
* Gated damcrawler UI-scrape arm configuration (in-house-ai-
|
|
1710
|
+
* visibility, Sprint 9/10). OPTIONAL with NO outer default — mirrors
|
|
1711
|
+
* `serp`/`judge` above — a config that omits `scrape` entirely stays
|
|
1712
|
+
* byte-identical (`SeoConfigSchema.parse({ aiVisibility: {} })` leaks
|
|
1713
|
+
* only `samplesPerPrompt`/`engines`). Only the inner fields carry
|
|
1714
|
+
* `.default(...)`. Gated separately by the `ai-visibility-scrape`
|
|
1715
|
+
* egress axis (`../seo/egress.js`) — this object being present does
|
|
1716
|
+
* NOT itself enable scraping. `authSession`/`proxy` are operator-
|
|
1717
|
+
* supplied (nonGoal: no auth harvesting, no proxy sourcing); the rate/
|
|
1718
|
+
* proxy-budget caps are consumed by a follow-up sprint's
|
|
1719
|
+
* `ScrapeThrottle` runner wiring (Sprint 9 built the throttle itself
|
|
1720
|
+
* in isolation; Sprint 10 composes the arm behind an injected dep).
|
|
1721
|
+
*/
|
|
1722
|
+
scrape: z.ZodOptional<z.ZodObject<{
|
|
1723
|
+
/** Which scrape-arm engines to compose. This sprint composes ONLY "chatgpt-ui"; "perplexity-ui" is a valid config value with no live parser yet (Sprint 11 nonGoal). Default []. */
|
|
1724
|
+
engines: z.ZodDefault<z.ZodArray<z.ZodEnum<["chatgpt-ui", "perplexity-ui"]>, "many">>;
|
|
1725
|
+
/** Operator-supplied auth session (storageState path / profile name / cookie blob) passed opaquely to damcrawler's scrape options. */
|
|
1726
|
+
authSession: z.ZodOptional<z.ZodString>;
|
|
1727
|
+
/** Operator-supplied proxy passed opaquely to damcrawler's scrape options. */
|
|
1728
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
1729
|
+
/** Fixed USD cost booked to the ScrapeThrottle proxy ledger per successful scrape. Default 0. */
|
|
1730
|
+
proxyUsdPerScrape: z.ZodDefault<z.ZodNumber>;
|
|
1731
|
+
/** ScrapeThrottle rate-window cap: max acquire() grants per engine per window. Default 10. */
|
|
1732
|
+
maxPerWindow: z.ZodDefault<z.ZodNumber>;
|
|
1733
|
+
/** ScrapeThrottle rate-window length in milliseconds. Default 60000 (1 minute). */
|
|
1734
|
+
windowMs: z.ZodDefault<z.ZodNumber>;
|
|
1735
|
+
/** ScrapeThrottle cumulative proxy-USD cap per engine. Default 0 (no proxy spend permitted until explicitly raised). */
|
|
1736
|
+
maxProxyUsd: z.ZodDefault<z.ZodNumber>;
|
|
1737
|
+
}, "strip", z.ZodTypeAny, {
|
|
1738
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
1739
|
+
proxyUsdPerScrape: number;
|
|
1740
|
+
maxPerWindow: number;
|
|
1741
|
+
windowMs: number;
|
|
1742
|
+
maxProxyUsd: number;
|
|
1743
|
+
authSession?: string | undefined;
|
|
1744
|
+
proxy?: string | undefined;
|
|
1745
|
+
}, {
|
|
1746
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
1747
|
+
authSession?: string | undefined;
|
|
1748
|
+
proxy?: string | undefined;
|
|
1749
|
+
proxyUsdPerScrape?: number | undefined;
|
|
1750
|
+
maxPerWindow?: number | undefined;
|
|
1751
|
+
windowMs?: number | undefined;
|
|
1752
|
+
maxProxyUsd?: number | undefined;
|
|
1753
|
+
}>>;
|
|
1754
|
+
}, "strip", z.ZodTypeAny, {
|
|
1755
|
+
samplesPerPrompt: number;
|
|
1756
|
+
engines: {
|
|
1757
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1758
|
+
perCallUsd: number;
|
|
1759
|
+
}[];
|
|
1760
|
+
judge?: {
|
|
1761
|
+
enabled: boolean;
|
|
1762
|
+
model?: string | undefined;
|
|
1763
|
+
} | undefined;
|
|
1764
|
+
scrape?: {
|
|
1765
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
1766
|
+
proxyUsdPerScrape: number;
|
|
1767
|
+
maxPerWindow: number;
|
|
1768
|
+
windowMs: number;
|
|
1769
|
+
maxProxyUsd: number;
|
|
1770
|
+
authSession?: string | undefined;
|
|
1771
|
+
proxy?: string | undefined;
|
|
1772
|
+
} | undefined;
|
|
1773
|
+
}, {
|
|
1774
|
+
samplesPerPrompt?: number | undefined;
|
|
1775
|
+
engines?: {
|
|
1776
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1777
|
+
perCallUsd?: number | undefined;
|
|
1778
|
+
}[] | undefined;
|
|
1779
|
+
judge?: {
|
|
1780
|
+
model?: string | undefined;
|
|
1781
|
+
enabled?: boolean | undefined;
|
|
1782
|
+
} | undefined;
|
|
1783
|
+
scrape?: {
|
|
1784
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
1785
|
+
authSession?: string | undefined;
|
|
1786
|
+
proxy?: string | undefined;
|
|
1787
|
+
proxyUsdPerScrape?: number | undefined;
|
|
1788
|
+
maxPerWindow?: number | undefined;
|
|
1789
|
+
windowMs?: number | undefined;
|
|
1790
|
+
maxProxyUsd?: number | undefined;
|
|
1791
|
+
} | undefined;
|
|
1792
|
+
}>>;
|
|
1793
|
+
}, "strip", z.ZodTypeAny, {
|
|
1794
|
+
blockThreshold: "never" | "any-uncited" | "critical-uncited";
|
|
1795
|
+
budget?: {
|
|
1796
|
+
maxUsd?: number | null | undefined;
|
|
1797
|
+
} | undefined;
|
|
1798
|
+
egress?: {
|
|
1799
|
+
"search-console": boolean;
|
|
1800
|
+
"serp-provider": boolean;
|
|
1801
|
+
"ai-visibility": boolean;
|
|
1802
|
+
"site-crawl": boolean;
|
|
1803
|
+
"ai-visibility-scrape": boolean;
|
|
1804
|
+
} | undefined;
|
|
1805
|
+
verifier?: {
|
|
1806
|
+
enabled: boolean;
|
|
1807
|
+
} | undefined;
|
|
1808
|
+
defaultTarget?: string | undefined;
|
|
1809
|
+
serp?: {
|
|
1810
|
+
provider: "dataforseo" | "damcrawler";
|
|
1811
|
+
} | undefined;
|
|
1812
|
+
aiVisibility?: {
|
|
1813
|
+
samplesPerPrompt: number;
|
|
1814
|
+
engines: {
|
|
1815
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1816
|
+
perCallUsd: number;
|
|
1817
|
+
}[];
|
|
1818
|
+
judge?: {
|
|
1819
|
+
enabled: boolean;
|
|
1820
|
+
model?: string | undefined;
|
|
1821
|
+
} | undefined;
|
|
1822
|
+
scrape?: {
|
|
1823
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
1824
|
+
proxyUsdPerScrape: number;
|
|
1825
|
+
maxPerWindow: number;
|
|
1826
|
+
windowMs: number;
|
|
1827
|
+
maxProxyUsd: number;
|
|
1828
|
+
authSession?: string | undefined;
|
|
1829
|
+
proxy?: string | undefined;
|
|
1830
|
+
} | undefined;
|
|
1831
|
+
} | undefined;
|
|
1832
|
+
}, {
|
|
1833
|
+
budget?: {
|
|
1834
|
+
maxUsd?: number | null | undefined;
|
|
1835
|
+
} | undefined;
|
|
1836
|
+
egress?: {
|
|
1837
|
+
"search-console"?: boolean | undefined;
|
|
1838
|
+
"serp-provider"?: boolean | undefined;
|
|
1839
|
+
"ai-visibility"?: boolean | undefined;
|
|
1840
|
+
"site-crawl"?: boolean | undefined;
|
|
1841
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
1842
|
+
} | undefined;
|
|
1843
|
+
verifier?: {
|
|
1844
|
+
enabled?: boolean | undefined;
|
|
1845
|
+
} | undefined;
|
|
1846
|
+
defaultTarget?: string | undefined;
|
|
1847
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
1848
|
+
serp?: {
|
|
1849
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
1850
|
+
} | undefined;
|
|
1851
|
+
aiVisibility?: {
|
|
1852
|
+
samplesPerPrompt?: number | undefined;
|
|
1853
|
+
engines?: {
|
|
1854
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
1855
|
+
perCallUsd?: number | undefined;
|
|
1856
|
+
}[] | undefined;
|
|
1857
|
+
judge?: {
|
|
1858
|
+
model?: string | undefined;
|
|
1859
|
+
enabled?: boolean | undefined;
|
|
1860
|
+
} | undefined;
|
|
1861
|
+
scrape?: {
|
|
1862
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
1863
|
+
authSession?: string | undefined;
|
|
1864
|
+
proxy?: string | undefined;
|
|
1865
|
+
proxyUsdPerScrape?: number | undefined;
|
|
1866
|
+
maxPerWindow?: number | undefined;
|
|
1867
|
+
windowMs?: number | undefined;
|
|
1868
|
+
maxProxyUsd?: number | undefined;
|
|
1869
|
+
} | undefined;
|
|
1870
|
+
} | undefined;
|
|
1871
|
+
}>;
|
|
1872
|
+
export type SeoConfig = z.infer<typeof SeoConfigSchema>;
|
|
780
1873
|
export declare const BoberConfigSchema: z.ZodObject<{
|
|
781
1874
|
project: z.ZodObject<{
|
|
782
1875
|
name: z.ZodString;
|
|
@@ -811,6 +1904,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
811
1904
|
}, "strip", z.ZodTypeAny, {
|
|
812
1905
|
name: string;
|
|
813
1906
|
mode: "greenfield" | "brownfield";
|
|
1907
|
+
preset?: string | undefined;
|
|
814
1908
|
stack?: {
|
|
815
1909
|
frontend?: string | undefined;
|
|
816
1910
|
backend?: string | undefined;
|
|
@@ -820,11 +1914,11 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
820
1914
|
language?: string | undefined;
|
|
821
1915
|
other?: string[] | undefined;
|
|
822
1916
|
} | undefined;
|
|
823
|
-
preset?: string | undefined;
|
|
824
1917
|
description?: string | undefined;
|
|
825
1918
|
}, {
|
|
826
1919
|
name: string;
|
|
827
1920
|
mode: "greenfield" | "brownfield";
|
|
1921
|
+
preset?: string | undefined;
|
|
828
1922
|
stack?: {
|
|
829
1923
|
frontend?: string | undefined;
|
|
830
1924
|
backend?: string | undefined;
|
|
@@ -834,7 +1928,6 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
834
1928
|
language?: string | undefined;
|
|
835
1929
|
other?: string[] | undefined;
|
|
836
1930
|
} | undefined;
|
|
837
|
-
preset?: string | undefined;
|
|
838
1931
|
description?: string | undefined;
|
|
839
1932
|
}>;
|
|
840
1933
|
planner: z.ZodObject<{
|
|
@@ -844,6 +1937,16 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
844
1937
|
provider: z.ZodOptional<z.ZodString>;
|
|
845
1938
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
846
1939
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1940
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
1941
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
1942
|
+
/** Optional per-run USD spend ceiling. */
|
|
1943
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
1944
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
1945
|
+
}, "strip", z.ZodTypeAny, {
|
|
1946
|
+
maxUsd?: number | null | undefined;
|
|
1947
|
+
}, {
|
|
1948
|
+
maxUsd?: number | null | undefined;
|
|
1949
|
+
}>>;
|
|
847
1950
|
}, "strip", z.ZodTypeAny, {
|
|
848
1951
|
maxClarifications: number;
|
|
849
1952
|
model: string;
|
|
@@ -851,6 +1954,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
851
1954
|
provider?: string | undefined;
|
|
852
1955
|
endpoint?: string | null | undefined;
|
|
853
1956
|
providerConfig?: Record<string, unknown> | undefined;
|
|
1957
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
1958
|
+
budget?: {
|
|
1959
|
+
maxUsd?: number | null | undefined;
|
|
1960
|
+
} | undefined;
|
|
854
1961
|
}, {
|
|
855
1962
|
maxClarifications?: number | undefined;
|
|
856
1963
|
model?: string | undefined;
|
|
@@ -858,6 +1965,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
858
1965
|
provider?: string | undefined;
|
|
859
1966
|
endpoint?: string | null | undefined;
|
|
860
1967
|
providerConfig?: Record<string, unknown> | undefined;
|
|
1968
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
1969
|
+
budget?: {
|
|
1970
|
+
maxUsd?: number | null | undefined;
|
|
1971
|
+
} | undefined;
|
|
861
1972
|
}>;
|
|
862
1973
|
curator: z.ZodOptional<z.ZodObject<{
|
|
863
1974
|
model: z.ZodDefault<z.ZodString>;
|
|
@@ -866,6 +1977,16 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
866
1977
|
provider: z.ZodOptional<z.ZodString>;
|
|
867
1978
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
868
1979
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1980
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
1981
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
1982
|
+
/** Optional per-run USD spend ceiling. */
|
|
1983
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
1984
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
1985
|
+
}, "strip", z.ZodTypeAny, {
|
|
1986
|
+
maxUsd?: number | null | undefined;
|
|
1987
|
+
}, {
|
|
1988
|
+
maxUsd?: number | null | undefined;
|
|
1989
|
+
}>>;
|
|
869
1990
|
}, "strip", z.ZodTypeAny, {
|
|
870
1991
|
model: string;
|
|
871
1992
|
maxTurns: number;
|
|
@@ -873,11 +1994,19 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
873
1994
|
provider?: string | undefined;
|
|
874
1995
|
endpoint?: string | null | undefined;
|
|
875
1996
|
providerConfig?: Record<string, unknown> | undefined;
|
|
1997
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
1998
|
+
budget?: {
|
|
1999
|
+
maxUsd?: number | null | undefined;
|
|
2000
|
+
} | undefined;
|
|
876
2001
|
}, {
|
|
877
2002
|
model?: string | undefined;
|
|
878
2003
|
provider?: string | undefined;
|
|
879
2004
|
endpoint?: string | null | undefined;
|
|
880
2005
|
providerConfig?: Record<string, unknown> | undefined;
|
|
2006
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
2007
|
+
budget?: {
|
|
2008
|
+
maxUsd?: number | null | undefined;
|
|
2009
|
+
} | undefined;
|
|
881
2010
|
maxTurns?: number | undefined;
|
|
882
2011
|
enabled?: boolean | undefined;
|
|
883
2012
|
}>>;
|
|
@@ -889,6 +2018,23 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
889
2018
|
provider: z.ZodOptional<z.ZodString>;
|
|
890
2019
|
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
891
2020
|
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
2021
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
2022
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
2023
|
+
/** Optional per-run USD spend ceiling. */
|
|
2024
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
2025
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
2026
|
+
}, "strip", z.ZodTypeAny, {
|
|
2027
|
+
maxUsd?: number | null | undefined;
|
|
2028
|
+
}, {
|
|
2029
|
+
maxUsd?: number | null | undefined;
|
|
2030
|
+
}>>;
|
|
2031
|
+
/**
|
|
2032
|
+
* When true, contiguous read-only tool calls (read_file/glob/grep) within a
|
|
2033
|
+
* turn execute concurrently instead of strictly serially (ADR-2, agent-loop
|
|
2034
|
+
* capability port sprint 4). Optional, no default — absent/false is
|
|
2035
|
+
* byte-identical to the pre-change serial loop.
|
|
2036
|
+
*/
|
|
2037
|
+
parallelReadOnlyTools: z.ZodOptional<z.ZodBoolean>;
|
|
892
2038
|
}, "strip", z.ZodTypeAny, {
|
|
893
2039
|
model: string;
|
|
894
2040
|
maxTurnsPerSprint: number;
|
|
@@ -897,14 +2043,24 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
897
2043
|
provider?: string | undefined;
|
|
898
2044
|
endpoint?: string | null | undefined;
|
|
899
2045
|
providerConfig?: Record<string, unknown> | undefined;
|
|
2046
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
2047
|
+
budget?: {
|
|
2048
|
+
maxUsd?: number | null | undefined;
|
|
2049
|
+
} | undefined;
|
|
2050
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
900
2051
|
}, {
|
|
901
2052
|
model?: string | undefined;
|
|
902
2053
|
provider?: string | undefined;
|
|
903
2054
|
endpoint?: string | null | undefined;
|
|
904
2055
|
providerConfig?: Record<string, unknown> | undefined;
|
|
2056
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
2057
|
+
budget?: {
|
|
2058
|
+
maxUsd?: number | null | undefined;
|
|
2059
|
+
} | undefined;
|
|
905
2060
|
maxTurnsPerSprint?: number | undefined;
|
|
906
2061
|
autoCommit?: boolean | undefined;
|
|
907
2062
|
branchPattern?: string | undefined;
|
|
2063
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
908
2064
|
}>;
|
|
909
2065
|
evaluator: z.ZodObject<{
|
|
910
2066
|
model: z.ZodDefault<z.ZodString>;
|
|
@@ -954,6 +2110,16 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
954
2110
|
lenses?: string[] | undefined;
|
|
955
2111
|
maxConcurrent?: number | undefined;
|
|
956
2112
|
}>>;
|
|
2113
|
+
/** Reasoning/output effort forwarded to ChatParams.effort (Anthropic only). */
|
|
2114
|
+
effort: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>;
|
|
2115
|
+
/** Optional per-run USD spend ceiling. */
|
|
2116
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
2117
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
2118
|
+
}, "strip", z.ZodTypeAny, {
|
|
2119
|
+
maxUsd?: number | null | undefined;
|
|
2120
|
+
}, {
|
|
2121
|
+
maxUsd?: number | null | undefined;
|
|
2122
|
+
}>>;
|
|
957
2123
|
}, "strip", z.ZodTypeAny, {
|
|
958
2124
|
model: string;
|
|
959
2125
|
strategies: {
|
|
@@ -973,6 +2139,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
973
2139
|
provider?: string | undefined;
|
|
974
2140
|
endpoint?: string | null | undefined;
|
|
975
2141
|
providerConfig?: Record<string, unknown> | undefined;
|
|
2142
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
2143
|
+
budget?: {
|
|
2144
|
+
maxUsd?: number | null | undefined;
|
|
2145
|
+
} | undefined;
|
|
976
2146
|
plugins?: string[] | undefined;
|
|
977
2147
|
}, {
|
|
978
2148
|
strategies: {
|
|
@@ -987,6 +2157,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
987
2157
|
provider?: string | undefined;
|
|
988
2158
|
endpoint?: string | null | undefined;
|
|
989
2159
|
providerConfig?: Record<string, unknown> | undefined;
|
|
2160
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
2161
|
+
budget?: {
|
|
2162
|
+
maxUsd?: number | null | undefined;
|
|
2163
|
+
} | undefined;
|
|
990
2164
|
maxIterations?: number | undefined;
|
|
991
2165
|
plugins?: string[] | undefined;
|
|
992
2166
|
panel?: {
|
|
@@ -1002,11 +2176,11 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1002
2176
|
}, "strip", z.ZodTypeAny, {
|
|
1003
2177
|
maxSprints: number;
|
|
1004
2178
|
requireContracts: boolean;
|
|
1005
|
-
sprintSize: "
|
|
2179
|
+
sprintSize: "medium" | "small" | "large";
|
|
1006
2180
|
}, {
|
|
1007
2181
|
maxSprints?: number | undefined;
|
|
1008
2182
|
requireContracts?: boolean | undefined;
|
|
1009
|
-
sprintSize?: "
|
|
2183
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
1010
2184
|
}>;
|
|
1011
2185
|
pipeline: z.ZodObject<{
|
|
1012
2186
|
maxIterations: z.ZodDefault<z.ZodNumber>;
|
|
@@ -1049,9 +2223,9 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1049
2223
|
* worktree is ALWAYS retained for debugging regardless of this flag. */
|
|
1050
2224
|
cleanupWorktreeOnSuccess: z.ZodDefault<z.ZodBoolean>;
|
|
1051
2225
|
/** Orchestration engine. 'ts' runs the built-in TypeScript pipeline (default). 'skill' and 'workflow' select alternative engines (sprint 6+). Default: 'ts'. */
|
|
1052
|
-
engine: z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow"]>>;
|
|
2226
|
+
engine: z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>;
|
|
1053
2227
|
}, "strip", z.ZodTypeAny, {
|
|
1054
|
-
mode: "
|
|
2228
|
+
mode: "autopilot" | "careful";
|
|
1055
2229
|
maxIterations: number;
|
|
1056
2230
|
maxCheckpointIterations: number;
|
|
1057
2231
|
requireApproval: boolean;
|
|
@@ -1065,10 +2239,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1065
2239
|
eventQueueBound: number;
|
|
1066
2240
|
worktreeRoot: string;
|
|
1067
2241
|
cleanupWorktreeOnSuccess: boolean;
|
|
1068
|
-
engine: "ts" | "skill" | "workflow";
|
|
2242
|
+
engine: "ts" | "skill" | "workflow" | "medical-sop";
|
|
1069
2243
|
checkpointMechanism?: "noop" | "cli" | "disk" | "pr" | undefined;
|
|
1070
2244
|
}, {
|
|
1071
|
-
mode?: "
|
|
2245
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
1072
2246
|
maxIterations?: number | undefined;
|
|
1073
2247
|
maxCheckpointIterations?: number | undefined;
|
|
1074
2248
|
requireApproval?: boolean | undefined;
|
|
@@ -1083,7 +2257,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1083
2257
|
eventQueueBound?: number | undefined;
|
|
1084
2258
|
worktreeRoot?: string | undefined;
|
|
1085
2259
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
1086
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
2260
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1087
2261
|
}>;
|
|
1088
2262
|
commands: z.ZodObject<{
|
|
1089
2263
|
install: z.ZodOptional<z.ZodString>;
|
|
@@ -1146,7 +2320,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1146
2320
|
}, "strip", z.ZodTypeAny, {
|
|
1147
2321
|
enabled: boolean;
|
|
1148
2322
|
autoSync: boolean;
|
|
1149
|
-
languageTier: "
|
|
2323
|
+
languageTier: "core" | "extended" | "all";
|
|
1150
2324
|
manifestPath: string;
|
|
1151
2325
|
syncTimeoutMs: number;
|
|
1152
2326
|
queryTimeoutMs: number;
|
|
@@ -1166,7 +2340,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1166
2340
|
enabled?: boolean | undefined;
|
|
1167
2341
|
tokensavePath?: string | undefined;
|
|
1168
2342
|
autoSync?: boolean | undefined;
|
|
1169
|
-
languageTier?: "
|
|
2343
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
1170
2344
|
manifestPath?: string | undefined;
|
|
1171
2345
|
syncTimeoutMs?: number | undefined;
|
|
1172
2346
|
queryTimeoutMs?: number | undefined;
|
|
@@ -1244,15 +2418,15 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1244
2418
|
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
1245
2419
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
1246
2420
|
}, "strip", z.ZodTypeAny, {
|
|
1247
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1248
2421
|
name: string;
|
|
1249
2422
|
enabled: boolean;
|
|
2423
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1250
2424
|
mcpCommand: string;
|
|
1251
2425
|
mcpArgs?: string[] | undefined;
|
|
1252
2426
|
mcpEnv?: Record<string, string> | undefined;
|
|
1253
2427
|
}, {
|
|
1254
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1255
2428
|
name: string;
|
|
2429
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1256
2430
|
mcpCommand: string;
|
|
1257
2431
|
enabled?: boolean | undefined;
|
|
1258
2432
|
mcpArgs?: string[] | undefined;
|
|
@@ -1260,17 +2434,17 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1260
2434
|
}>, "many">>;
|
|
1261
2435
|
}, "strip", z.ZodTypeAny, {
|
|
1262
2436
|
providers: {
|
|
1263
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1264
2437
|
name: string;
|
|
1265
2438
|
enabled: boolean;
|
|
2439
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1266
2440
|
mcpCommand: string;
|
|
1267
2441
|
mcpArgs?: string[] | undefined;
|
|
1268
2442
|
mcpEnv?: Record<string, string> | undefined;
|
|
1269
2443
|
}[];
|
|
1270
2444
|
}, {
|
|
1271
2445
|
providers?: {
|
|
1272
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1273
2446
|
name: string;
|
|
2447
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1274
2448
|
mcpCommand: string;
|
|
1275
2449
|
enabled?: boolean | undefined;
|
|
1276
2450
|
mcpArgs?: string[] | undefined;
|
|
@@ -1357,7 +2531,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1357
2531
|
/** Memory namespace segment — restricted to a safe path segment. */
|
|
1358
2532
|
memoryNamespace: z.ZodOptional<z.ZodString>;
|
|
1359
2533
|
/** Orchestration engine shape for this team. Mirrors the z.enum in PipelineSectionSchema. */
|
|
1360
|
-
pipelineShape: z.ZodOptional<z.ZodEnum<["ts", "skill", "workflow"]>>;
|
|
2534
|
+
pipelineShape: z.ZodOptional<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>;
|
|
1361
2535
|
/** Partial role -> provider override. Keys SHOULD be RoleName values. */
|
|
1362
2536
|
providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
1363
2537
|
roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
@@ -1375,7 +2549,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1375
2549
|
providers?: Record<string, string> | undefined;
|
|
1376
2550
|
displayName?: string | undefined;
|
|
1377
2551
|
memoryNamespace?: string | undefined;
|
|
1378
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
2552
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1379
2553
|
roles?: {
|
|
1380
2554
|
name: string;
|
|
1381
2555
|
displayName: string;
|
|
@@ -1385,7 +2559,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1385
2559
|
providers?: Record<string, string> | undefined;
|
|
1386
2560
|
displayName?: string | undefined;
|
|
1387
2561
|
memoryNamespace?: string | undefined;
|
|
1388
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
2562
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1389
2563
|
roles?: {
|
|
1390
2564
|
name: string;
|
|
1391
2565
|
displayName: string;
|
|
@@ -1393,10 +2567,816 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1393
2567
|
guardrails?: unknown;
|
|
1394
2568
|
}>>>;
|
|
1395
2569
|
defaultTeam: z.ZodOptional<z.ZodString>;
|
|
2570
|
+
medical: z.ZodOptional<z.ZodObject<{
|
|
2571
|
+
/** Egress opt-in axes (ADR-6). Both default false — zero outbound bytes by default. */
|
|
2572
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
2573
|
+
/** When true, cloud inference synthesis is permitted. Default false. */
|
|
2574
|
+
cloudInference: z.ZodDefault<z.ZodBoolean>;
|
|
2575
|
+
/** When true, literature retrieval (MedlinePlus) is permitted. Default false. */
|
|
2576
|
+
literatureRetrieval: z.ZodDefault<z.ZodBoolean>;
|
|
2577
|
+
/** When true, WHOOP device-connection egress is permitted (ADR-1). Default false. */
|
|
2578
|
+
deviceConnection: z.ZodDefault<z.ZodBoolean>;
|
|
2579
|
+
}, "strip", z.ZodTypeAny, {
|
|
2580
|
+
cloudInference: boolean;
|
|
2581
|
+
literatureRetrieval: boolean;
|
|
2582
|
+
deviceConnection: boolean;
|
|
2583
|
+
}, {
|
|
2584
|
+
cloudInference?: boolean | undefined;
|
|
2585
|
+
literatureRetrieval?: boolean | undefined;
|
|
2586
|
+
deviceConnection?: boolean | undefined;
|
|
2587
|
+
}>>;
|
|
2588
|
+
/**
|
|
2589
|
+
* Optional synthesis/critic model override (Sprint 3 — grounding-critic).
|
|
2590
|
+
* Absent => local Ollama default (openai-compat http://localhost:11434/v1, llama3).
|
|
2591
|
+
* A CLOUD provider here is only honoured when egress.cloudInference is true (fail-closed otherwise).
|
|
2592
|
+
*/
|
|
2593
|
+
inference: z.ZodOptional<z.ZodObject<{
|
|
2594
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
2595
|
+
endpoint: z.ZodOptional<z.ZodString>;
|
|
2596
|
+
model: z.ZodOptional<z.ZodString>;
|
|
2597
|
+
}, "strip", z.ZodTypeAny, {
|
|
2598
|
+
model?: string | undefined;
|
|
2599
|
+
provider?: string | undefined;
|
|
2600
|
+
endpoint?: string | undefined;
|
|
2601
|
+
}, {
|
|
2602
|
+
model?: string | undefined;
|
|
2603
|
+
provider?: string | undefined;
|
|
2604
|
+
endpoint?: string | undefined;
|
|
2605
|
+
}>>;
|
|
2606
|
+
/** Optional vault dir for medical Findings/notes. Default: <projectRoot>/.bober/medical/vault. */
|
|
2607
|
+
vaultDir: z.ZodOptional<z.ZodString>;
|
|
2608
|
+
}, "strip", z.ZodTypeAny, {
|
|
2609
|
+
egress?: {
|
|
2610
|
+
cloudInference: boolean;
|
|
2611
|
+
literatureRetrieval: boolean;
|
|
2612
|
+
deviceConnection: boolean;
|
|
2613
|
+
} | undefined;
|
|
2614
|
+
inference?: {
|
|
2615
|
+
model?: string | undefined;
|
|
2616
|
+
provider?: string | undefined;
|
|
2617
|
+
endpoint?: string | undefined;
|
|
2618
|
+
} | undefined;
|
|
2619
|
+
vaultDir?: string | undefined;
|
|
2620
|
+
}, {
|
|
2621
|
+
egress?: {
|
|
2622
|
+
cloudInference?: boolean | undefined;
|
|
2623
|
+
literatureRetrieval?: boolean | undefined;
|
|
2624
|
+
deviceConnection?: boolean | undefined;
|
|
2625
|
+
} | undefined;
|
|
2626
|
+
inference?: {
|
|
2627
|
+
model?: string | undefined;
|
|
2628
|
+
provider?: string | undefined;
|
|
2629
|
+
endpoint?: string | undefined;
|
|
2630
|
+
} | undefined;
|
|
2631
|
+
vaultDir?: string | undefined;
|
|
2632
|
+
}>>;
|
|
2633
|
+
fleet: z.ZodOptional<z.ZodObject<{
|
|
2634
|
+
/** Absolute path to the shared WAL facts.db file. */
|
|
2635
|
+
blackboardDbPath: z.ZodString;
|
|
2636
|
+
/** Namespace scoping all findings for this fleet run. */
|
|
2637
|
+
blackboardNamespace: z.ZodString;
|
|
2638
|
+
/** This child's own subject identifier (equals the child folder name). */
|
|
2639
|
+
blackboardSubject: z.ZodString;
|
|
2640
|
+
/** Maximum number of exchange rounds (1–3). */
|
|
2641
|
+
maxRounds: z.ZodNumber;
|
|
2642
|
+
}, "strip", z.ZodTypeAny, {
|
|
2643
|
+
blackboardDbPath: string;
|
|
2644
|
+
blackboardNamespace: string;
|
|
2645
|
+
blackboardSubject: string;
|
|
2646
|
+
maxRounds: number;
|
|
2647
|
+
}, {
|
|
2648
|
+
blackboardDbPath: string;
|
|
2649
|
+
blackboardNamespace: string;
|
|
2650
|
+
blackboardSubject: string;
|
|
2651
|
+
maxRounds: number;
|
|
2652
|
+
}>>;
|
|
2653
|
+
vault: z.ZodOptional<z.ZodObject<{
|
|
2654
|
+
obsidian: z.ZodOptional<z.ZodObject<{
|
|
2655
|
+
/** Unique server name (used in error messages — never secrets). */
|
|
2656
|
+
name: z.ZodString;
|
|
2657
|
+
/** Executable to spawn (e.g., "npx", "/usr/local/bin/obsidian-mcp"). */
|
|
2658
|
+
mcpCommand: z.ZodString;
|
|
2659
|
+
mcpArgs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
2660
|
+
/** Env vars passed to the child — may contain SECRETS (treat as opaque, never log). */
|
|
2661
|
+
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
2662
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2663
|
+
/**
|
|
2664
|
+
* Override the server tool names per logical operation.
|
|
2665
|
+
* When absent, cyanheads/obsidian-mcp-server defaults are used (see DEFAULT_VAULT_TOOL_NAMES).
|
|
2666
|
+
* Provide overrides when using a different MCP server (e.g., Obsidian Local REST API).
|
|
2667
|
+
*/
|
|
2668
|
+
toolNames: z.ZodOptional<z.ZodObject<{
|
|
2669
|
+
readNote: z.ZodOptional<z.ZodString>;
|
|
2670
|
+
writeNote: z.ZodOptional<z.ZodString>;
|
|
2671
|
+
listNotes: z.ZodOptional<z.ZodString>;
|
|
2672
|
+
}, "strip", z.ZodTypeAny, {
|
|
2673
|
+
readNote?: string | undefined;
|
|
2674
|
+
writeNote?: string | undefined;
|
|
2675
|
+
listNotes?: string | undefined;
|
|
2676
|
+
}, {
|
|
2677
|
+
readNote?: string | undefined;
|
|
2678
|
+
writeNote?: string | undefined;
|
|
2679
|
+
listNotes?: string | undefined;
|
|
2680
|
+
}>>;
|
|
2681
|
+
}, "strip", z.ZodTypeAny, {
|
|
2682
|
+
name: string;
|
|
2683
|
+
enabled: boolean;
|
|
2684
|
+
mcpCommand: string;
|
|
2685
|
+
mcpArgs?: string[] | undefined;
|
|
2686
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
2687
|
+
toolNames?: {
|
|
2688
|
+
readNote?: string | undefined;
|
|
2689
|
+
writeNote?: string | undefined;
|
|
2690
|
+
listNotes?: string | undefined;
|
|
2691
|
+
} | undefined;
|
|
2692
|
+
}, {
|
|
2693
|
+
name: string;
|
|
2694
|
+
mcpCommand: string;
|
|
2695
|
+
enabled?: boolean | undefined;
|
|
2696
|
+
mcpArgs?: string[] | undefined;
|
|
2697
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
2698
|
+
toolNames?: {
|
|
2699
|
+
readNote?: string | undefined;
|
|
2700
|
+
writeNote?: string | undefined;
|
|
2701
|
+
listNotes?: string | undefined;
|
|
2702
|
+
} | undefined;
|
|
2703
|
+
}>>;
|
|
2704
|
+
}, "strip", z.ZodTypeAny, {
|
|
2705
|
+
obsidian?: {
|
|
2706
|
+
name: string;
|
|
2707
|
+
enabled: boolean;
|
|
2708
|
+
mcpCommand: string;
|
|
2709
|
+
mcpArgs?: string[] | undefined;
|
|
2710
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
2711
|
+
toolNames?: {
|
|
2712
|
+
readNote?: string | undefined;
|
|
2713
|
+
writeNote?: string | undefined;
|
|
2714
|
+
listNotes?: string | undefined;
|
|
2715
|
+
} | undefined;
|
|
2716
|
+
} | undefined;
|
|
2717
|
+
}, {
|
|
2718
|
+
obsidian?: {
|
|
2719
|
+
name: string;
|
|
2720
|
+
mcpCommand: string;
|
|
2721
|
+
enabled?: boolean | undefined;
|
|
2722
|
+
mcpArgs?: string[] | undefined;
|
|
2723
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
2724
|
+
toolNames?: {
|
|
2725
|
+
readNote?: string | undefined;
|
|
2726
|
+
writeNote?: string | undefined;
|
|
2727
|
+
listNotes?: string | undefined;
|
|
2728
|
+
} | undefined;
|
|
2729
|
+
} | undefined;
|
|
2730
|
+
}>>;
|
|
2731
|
+
taskInbox: z.ZodOptional<z.ZodObject<{
|
|
2732
|
+
/** When true, `bober task from-gmail` may read a Gmail thread via the MCP
|
|
2733
|
+
* connector. Default false — zero Gmail egress unless explicitly opted in. */
|
|
2734
|
+
gmailEgress: z.ZodDefault<z.ZodBoolean>;
|
|
2735
|
+
}, "strip", z.ZodTypeAny, {
|
|
2736
|
+
gmailEgress: boolean;
|
|
2737
|
+
}, {
|
|
2738
|
+
gmailEgress?: boolean | undefined;
|
|
2739
|
+
}>>;
|
|
2740
|
+
calendar: z.ZodOptional<z.ZodObject<{
|
|
2741
|
+
/** Egress opt-in axis (Sprint 3). Default false — zero cloud egress by default. */
|
|
2742
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
2743
|
+
/** When true, Google Calendar (cloud) egress is permitted. Default false (fail-closed). */
|
|
2744
|
+
cloudCalendar: z.ZodDefault<z.ZodBoolean>;
|
|
2745
|
+
}, "strip", z.ZodTypeAny, {
|
|
2746
|
+
cloudCalendar: boolean;
|
|
2747
|
+
}, {
|
|
2748
|
+
cloudCalendar?: boolean | undefined;
|
|
2749
|
+
}>>;
|
|
2750
|
+
/** Which connector to use. Default 'ics' (local, zero-egress). */
|
|
2751
|
+
connector: z.ZodDefault<z.ZodEnum<["ics", "google"]>>;
|
|
2752
|
+
/** Optional IANA timezone (informational only; not used in epoch-ms math). */
|
|
2753
|
+
timezone: z.ZodOptional<z.ZodString>;
|
|
2754
|
+
}, "strip", z.ZodTypeAny, {
|
|
2755
|
+
connector: "ics" | "google";
|
|
2756
|
+
egress?: {
|
|
2757
|
+
cloudCalendar: boolean;
|
|
2758
|
+
} | undefined;
|
|
2759
|
+
timezone?: string | undefined;
|
|
2760
|
+
}, {
|
|
2761
|
+
egress?: {
|
|
2762
|
+
cloudCalendar?: boolean | undefined;
|
|
2763
|
+
} | undefined;
|
|
2764
|
+
connector?: "ics" | "google" | undefined;
|
|
2765
|
+
timezone?: string | undefined;
|
|
2766
|
+
}>>;
|
|
2767
|
+
research: z.ZodOptional<z.ZodObject<{
|
|
2768
|
+
/** Egress opt-in axis. Default false — zero outbound bytes by default (fail-closed, ADR-6 lineage). */
|
|
2769
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
2770
|
+
/** When true, online/web research retrieval is permitted. Default false. */
|
|
2771
|
+
onlineResearch: z.ZodDefault<z.ZodBoolean>;
|
|
2772
|
+
}, "strip", z.ZodTypeAny, {
|
|
2773
|
+
onlineResearch: boolean;
|
|
2774
|
+
}, {
|
|
2775
|
+
onlineResearch?: boolean | undefined;
|
|
2776
|
+
}>>;
|
|
2777
|
+
}, "strip", z.ZodTypeAny, {
|
|
2778
|
+
egress?: {
|
|
2779
|
+
onlineResearch: boolean;
|
|
2780
|
+
} | undefined;
|
|
2781
|
+
}, {
|
|
2782
|
+
egress?: {
|
|
2783
|
+
onlineResearch?: boolean | undefined;
|
|
2784
|
+
} | undefined;
|
|
2785
|
+
}>>;
|
|
2786
|
+
tools: z.ZodOptional<z.ZodObject<{
|
|
2787
|
+
/** Opt-in bridge exposing a configured MCP server's tools as agentic-loop
|
|
2788
|
+
* ToolDefs (agent-loop-capability-port sprint 10). Default false —
|
|
2789
|
+
* disabled means no MCP process/transport is ever created and the loop's
|
|
2790
|
+
* tool list is unchanged. Only constructed by a consumer that reads
|
|
2791
|
+
* `enabled === true` at the call site (never at config parse time). */
|
|
2792
|
+
mcpBridge: z.ZodOptional<z.ZodObject<{
|
|
2793
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2794
|
+
server: z.ZodObject<{
|
|
2795
|
+
/** Executable to spawn (e.g., "node", "npx", "/usr/local/bin/some-mcp-server"). */
|
|
2796
|
+
command: z.ZodString;
|
|
2797
|
+
args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
2798
|
+
}, "strip", z.ZodTypeAny, {
|
|
2799
|
+
command: string;
|
|
2800
|
+
args: string[];
|
|
2801
|
+
}, {
|
|
2802
|
+
command: string;
|
|
2803
|
+
args?: string[] | undefined;
|
|
2804
|
+
}>;
|
|
2805
|
+
}, "strip", z.ZodTypeAny, {
|
|
2806
|
+
enabled: boolean;
|
|
2807
|
+
server: {
|
|
2808
|
+
command: string;
|
|
2809
|
+
args: string[];
|
|
2810
|
+
};
|
|
2811
|
+
}, {
|
|
2812
|
+
server: {
|
|
2813
|
+
command: string;
|
|
2814
|
+
args?: string[] | undefined;
|
|
2815
|
+
};
|
|
2816
|
+
enabled?: boolean | undefined;
|
|
2817
|
+
}>>;
|
|
2818
|
+
}, "strip", z.ZodTypeAny, {
|
|
2819
|
+
mcpBridge?: {
|
|
2820
|
+
enabled: boolean;
|
|
2821
|
+
server: {
|
|
2822
|
+
command: string;
|
|
2823
|
+
args: string[];
|
|
2824
|
+
};
|
|
2825
|
+
} | undefined;
|
|
2826
|
+
}, {
|
|
2827
|
+
mcpBridge?: {
|
|
2828
|
+
server: {
|
|
2829
|
+
command: string;
|
|
2830
|
+
args?: string[] | undefined;
|
|
2831
|
+
};
|
|
2832
|
+
enabled?: boolean | undefined;
|
|
2833
|
+
} | undefined;
|
|
2834
|
+
}>>;
|
|
2835
|
+
security: z.ZodOptional<z.ZodObject<{
|
|
2836
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2837
|
+
/** Fail-closed: unparseable auditor output or a timeout blocks. Default true. */
|
|
2838
|
+
failClosed: z.ZodDefault<z.ZodBoolean>;
|
|
2839
|
+
timeoutMs: z.ZodDefault<z.ZodNumber>;
|
|
2840
|
+
model: z.ZodDefault<z.ZodString>;
|
|
2841
|
+
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
2842
|
+
provider: z.ZodOptional<z.ZodString>;
|
|
2843
|
+
endpoint: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
2844
|
+
providerConfig: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
2845
|
+
/** Optional per-run USD spend ceiling. */
|
|
2846
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
2847
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
2848
|
+
}, "strip", z.ZodTypeAny, {
|
|
2849
|
+
maxUsd?: number | null | undefined;
|
|
2850
|
+
}, {
|
|
2851
|
+
maxUsd?: number | null | undefined;
|
|
2852
|
+
}>>;
|
|
2853
|
+
/** Opt-in deterministic scanner pre-filter strategies (e.g. slither, semgrep). */
|
|
2854
|
+
scanners: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
2855
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
2856
|
+
type: z.ZodString;
|
|
2857
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
2858
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
2859
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
2860
|
+
command: z.ZodOptional<z.ZodString>;
|
|
2861
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
2862
|
+
required: z.ZodBoolean;
|
|
2863
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
2864
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
2865
|
+
/** Human-readable label (defaults to type if not set). */
|
|
2866
|
+
label: z.ZodOptional<z.ZodString>;
|
|
2867
|
+
}, "strip", z.ZodTypeAny, {
|
|
2868
|
+
type: string;
|
|
2869
|
+
required: boolean;
|
|
2870
|
+
plugin?: string | undefined;
|
|
2871
|
+
command?: string | undefined;
|
|
2872
|
+
config?: Record<string, unknown> | undefined;
|
|
2873
|
+
label?: string | undefined;
|
|
2874
|
+
}, {
|
|
2875
|
+
type: string;
|
|
2876
|
+
required: boolean;
|
|
2877
|
+
plugin?: string | undefined;
|
|
2878
|
+
command?: string | undefined;
|
|
2879
|
+
config?: Record<string, unknown> | undefined;
|
|
2880
|
+
label?: string | undefined;
|
|
2881
|
+
}>, "many">>;
|
|
2882
|
+
/** Blocking threshold for the standalone `bober security-audit` CLI (sprint 4). */
|
|
2883
|
+
standaloneBlockOn: z.ZodDefault<z.ZodEnum<["critical", "important"]>>;
|
|
2884
|
+
/** Whether findings are emitted to the priority hub (sprint 6). Default true. */
|
|
2885
|
+
hub: z.ZodDefault<z.ZodBoolean>;
|
|
2886
|
+
/**
|
|
2887
|
+
* Opt-in real-diff provider config (sprint 6). OPTIONAL with no outer
|
|
2888
|
+
* default — a config that omits `diff` entirely stays byte-identical
|
|
2889
|
+
* (no defaults leak in), same guarantee as `security` itself (sc-6-3).
|
|
2890
|
+
*/
|
|
2891
|
+
diff: z.ZodOptional<z.ZodObject<{
|
|
2892
|
+
mode: z.ZodDefault<z.ZodEnum<["estimated-files", "git-diff"]>>;
|
|
2893
|
+
baseRef: z.ZodOptional<z.ZodString>;
|
|
2894
|
+
expandWithGraph: z.ZodDefault<z.ZodBoolean>;
|
|
2895
|
+
}, "strip", z.ZodTypeAny, {
|
|
2896
|
+
mode: "estimated-files" | "git-diff";
|
|
2897
|
+
expandWithGraph: boolean;
|
|
2898
|
+
baseRef?: string | undefined;
|
|
2899
|
+
}, {
|
|
2900
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
2901
|
+
baseRef?: string | undefined;
|
|
2902
|
+
expandWithGraph?: boolean | undefined;
|
|
2903
|
+
}>>;
|
|
2904
|
+
/**
|
|
2905
|
+
* Sprint-7: opt-in supply-chain axis config. OPTIONAL with no outer
|
|
2906
|
+
* default — a config that omits `supplyChain` entirely stays
|
|
2907
|
+
* byte-identical (no defaults leak in), same guarantee as `diff` (sc-7-3).
|
|
2908
|
+
*/
|
|
2909
|
+
supplyChain: z.ZodOptional<z.ZodObject<{
|
|
2910
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2911
|
+
scanners: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
2912
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
2913
|
+
type: z.ZodString;
|
|
2914
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
2915
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
2916
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
2917
|
+
command: z.ZodOptional<z.ZodString>;
|
|
2918
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
2919
|
+
required: z.ZodBoolean;
|
|
2920
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
2921
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
2922
|
+
/** Human-readable label (defaults to type if not set). */
|
|
2923
|
+
label: z.ZodOptional<z.ZodString>;
|
|
2924
|
+
}, "strip", z.ZodTypeAny, {
|
|
2925
|
+
type: string;
|
|
2926
|
+
required: boolean;
|
|
2927
|
+
plugin?: string | undefined;
|
|
2928
|
+
command?: string | undefined;
|
|
2929
|
+
config?: Record<string, unknown> | undefined;
|
|
2930
|
+
label?: string | undefined;
|
|
2931
|
+
}, {
|
|
2932
|
+
type: string;
|
|
2933
|
+
required: boolean;
|
|
2934
|
+
plugin?: string | undefined;
|
|
2935
|
+
command?: string | undefined;
|
|
2936
|
+
config?: Record<string, unknown> | undefined;
|
|
2937
|
+
label?: string | undefined;
|
|
2938
|
+
}>, "many">>;
|
|
2939
|
+
}, "strip", z.ZodTypeAny, {
|
|
2940
|
+
enabled: boolean;
|
|
2941
|
+
scanners: {
|
|
2942
|
+
type: string;
|
|
2943
|
+
required: boolean;
|
|
2944
|
+
plugin?: string | undefined;
|
|
2945
|
+
command?: string | undefined;
|
|
2946
|
+
config?: Record<string, unknown> | undefined;
|
|
2947
|
+
label?: string | undefined;
|
|
2948
|
+
}[];
|
|
2949
|
+
}, {
|
|
2950
|
+
enabled?: boolean | undefined;
|
|
2951
|
+
scanners?: {
|
|
2952
|
+
type: string;
|
|
2953
|
+
required: boolean;
|
|
2954
|
+
plugin?: string | undefined;
|
|
2955
|
+
command?: string | undefined;
|
|
2956
|
+
config?: Record<string, unknown> | undefined;
|
|
2957
|
+
label?: string | undefined;
|
|
2958
|
+
}[] | undefined;
|
|
2959
|
+
}>>;
|
|
2960
|
+
/**
|
|
2961
|
+
* Sprint-7: egress axis gating network-capable supply-chain scanners.
|
|
2962
|
+
* OPTIONAL with no outer default (same byte-identical guarantee as above).
|
|
2963
|
+
*/
|
|
2964
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
2965
|
+
onlineResearch: z.ZodDefault<z.ZodBoolean>;
|
|
2966
|
+
}, "strip", z.ZodTypeAny, {
|
|
2967
|
+
onlineResearch: boolean;
|
|
2968
|
+
}, {
|
|
2969
|
+
onlineResearch?: boolean | undefined;
|
|
2970
|
+
}>>;
|
|
2971
|
+
/**
|
|
2972
|
+
* Sprint-8: opt-in adversarial finder->verifier stage config. OPTIONAL
|
|
2973
|
+
* with no outer default — a config that omits `verifier` entirely stays
|
|
2974
|
+
* byte-identical (no defaults leak in), same guarantee as `diff` /
|
|
2975
|
+
* `supplyChain` / `egress` above (sc-8-5). `maxTurns` defaults lower than
|
|
2976
|
+
* the finder's (10 vs 20) — refutation needs fewer turns than the
|
|
2977
|
+
* original audit.
|
|
2978
|
+
*/
|
|
2979
|
+
verifier: z.ZodOptional<z.ZodObject<{
|
|
2980
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2981
|
+
model: z.ZodDefault<z.ZodString>;
|
|
2982
|
+
maxTurns: z.ZodDefault<z.ZodNumber>;
|
|
2983
|
+
}, "strip", z.ZodTypeAny, {
|
|
2984
|
+
model: string;
|
|
2985
|
+
maxTurns: number;
|
|
2986
|
+
enabled: boolean;
|
|
2987
|
+
}, {
|
|
2988
|
+
model?: string | undefined;
|
|
2989
|
+
maxTurns?: number | undefined;
|
|
2990
|
+
enabled?: boolean | undefined;
|
|
2991
|
+
}>>;
|
|
2992
|
+
}, "strip", z.ZodTypeAny, {
|
|
2993
|
+
model: string;
|
|
2994
|
+
maxTurns: number;
|
|
2995
|
+
enabled: boolean;
|
|
2996
|
+
timeoutMs: number;
|
|
2997
|
+
failClosed: boolean;
|
|
2998
|
+
scanners: {
|
|
2999
|
+
type: string;
|
|
3000
|
+
required: boolean;
|
|
3001
|
+
plugin?: string | undefined;
|
|
3002
|
+
command?: string | undefined;
|
|
3003
|
+
config?: Record<string, unknown> | undefined;
|
|
3004
|
+
label?: string | undefined;
|
|
3005
|
+
}[];
|
|
3006
|
+
standaloneBlockOn: "critical" | "important";
|
|
3007
|
+
hub: boolean;
|
|
3008
|
+
provider?: string | undefined;
|
|
3009
|
+
endpoint?: string | null | undefined;
|
|
3010
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
3011
|
+
budget?: {
|
|
3012
|
+
maxUsd?: number | null | undefined;
|
|
3013
|
+
} | undefined;
|
|
3014
|
+
egress?: {
|
|
3015
|
+
onlineResearch: boolean;
|
|
3016
|
+
} | undefined;
|
|
3017
|
+
diff?: {
|
|
3018
|
+
mode: "estimated-files" | "git-diff";
|
|
3019
|
+
expandWithGraph: boolean;
|
|
3020
|
+
baseRef?: string | undefined;
|
|
3021
|
+
} | undefined;
|
|
3022
|
+
supplyChain?: {
|
|
3023
|
+
enabled: boolean;
|
|
3024
|
+
scanners: {
|
|
3025
|
+
type: string;
|
|
3026
|
+
required: boolean;
|
|
3027
|
+
plugin?: string | undefined;
|
|
3028
|
+
command?: string | undefined;
|
|
3029
|
+
config?: Record<string, unknown> | undefined;
|
|
3030
|
+
label?: string | undefined;
|
|
3031
|
+
}[];
|
|
3032
|
+
} | undefined;
|
|
3033
|
+
verifier?: {
|
|
3034
|
+
model: string;
|
|
3035
|
+
maxTurns: number;
|
|
3036
|
+
enabled: boolean;
|
|
3037
|
+
} | undefined;
|
|
3038
|
+
}, {
|
|
3039
|
+
model?: string | undefined;
|
|
3040
|
+
provider?: string | undefined;
|
|
3041
|
+
endpoint?: string | null | undefined;
|
|
3042
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
3043
|
+
budget?: {
|
|
3044
|
+
maxUsd?: number | null | undefined;
|
|
3045
|
+
} | undefined;
|
|
3046
|
+
maxTurns?: number | undefined;
|
|
3047
|
+
enabled?: boolean | undefined;
|
|
3048
|
+
timeoutMs?: number | undefined;
|
|
3049
|
+
egress?: {
|
|
3050
|
+
onlineResearch?: boolean | undefined;
|
|
3051
|
+
} | undefined;
|
|
3052
|
+
failClosed?: boolean | undefined;
|
|
3053
|
+
scanners?: {
|
|
3054
|
+
type: string;
|
|
3055
|
+
required: boolean;
|
|
3056
|
+
plugin?: string | undefined;
|
|
3057
|
+
command?: string | undefined;
|
|
3058
|
+
config?: Record<string, unknown> | undefined;
|
|
3059
|
+
label?: string | undefined;
|
|
3060
|
+
}[] | undefined;
|
|
3061
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
3062
|
+
hub?: boolean | undefined;
|
|
3063
|
+
diff?: {
|
|
3064
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
3065
|
+
baseRef?: string | undefined;
|
|
3066
|
+
expandWithGraph?: boolean | undefined;
|
|
3067
|
+
} | undefined;
|
|
3068
|
+
supplyChain?: {
|
|
3069
|
+
enabled?: boolean | undefined;
|
|
3070
|
+
scanners?: {
|
|
3071
|
+
type: string;
|
|
3072
|
+
required: boolean;
|
|
3073
|
+
plugin?: string | undefined;
|
|
3074
|
+
command?: string | undefined;
|
|
3075
|
+
config?: Record<string, unknown> | undefined;
|
|
3076
|
+
label?: string | undefined;
|
|
3077
|
+
}[] | undefined;
|
|
3078
|
+
} | undefined;
|
|
3079
|
+
verifier?: {
|
|
3080
|
+
model?: string | undefined;
|
|
3081
|
+
maxTurns?: number | undefined;
|
|
3082
|
+
enabled?: boolean | undefined;
|
|
3083
|
+
} | undefined;
|
|
3084
|
+
}>>;
|
|
3085
|
+
seo: z.ZodOptional<z.ZodObject<{
|
|
3086
|
+
/**
|
|
3087
|
+
* Two live-data egress axes (search-console, serp-provider). Both default
|
|
3088
|
+
* false — the offline LocalExportSource path needs neither. OPTIONAL with
|
|
3089
|
+
* no outer default — a config that omits `egress` entirely stays
|
|
3090
|
+
* byte-identical, same guarantee as `security.egress` (schema.ts:280).
|
|
3091
|
+
*/
|
|
3092
|
+
egress: z.ZodOptional<z.ZodObject<{
|
|
3093
|
+
/** When true, Google Search Console API egress is permitted. Default false. */
|
|
3094
|
+
"search-console": z.ZodDefault<z.ZodBoolean>;
|
|
3095
|
+
/** When true, DataForSEO SERP/keywords/backlinks egress is permitted. Default false. */
|
|
3096
|
+
"serp-provider": z.ZodDefault<z.ZodBoolean>;
|
|
3097
|
+
/** When true, live AI-visibility/GEO provider egress (BYOK grounded-LLM API spine) is permitted. Default false. */
|
|
3098
|
+
"ai-visibility": z.ZodDefault<z.ZodBoolean>;
|
|
3099
|
+
/** When true, damcrawler-backed site crawling (crawl/url-coverage/link-graph/SERP-scrape) is permitted. Default false. */
|
|
3100
|
+
"site-crawl": z.ZodDefault<z.ZodBoolean>;
|
|
3101
|
+
/**
|
|
3102
|
+
* When true, the AI-visibility UI-scrape arm's egress is permitted.
|
|
3103
|
+
* SEPARATE axis from `ai-visibility` (ADR-5, in-house-ai-visibility
|
|
3104
|
+
* architecture line 44) — default false and, as of Sprint 3, composes
|
|
3105
|
+
* NO provider yet (axis-only; the scrape arm lands Sprint 10).
|
|
3106
|
+
*/
|
|
3107
|
+
"ai-visibility-scrape": z.ZodDefault<z.ZodBoolean>;
|
|
3108
|
+
}, "strip", z.ZodTypeAny, {
|
|
3109
|
+
"search-console": boolean;
|
|
3110
|
+
"serp-provider": boolean;
|
|
3111
|
+
"ai-visibility": boolean;
|
|
3112
|
+
"site-crawl": boolean;
|
|
3113
|
+
"ai-visibility-scrape": boolean;
|
|
3114
|
+
}, {
|
|
3115
|
+
"search-console"?: boolean | undefined;
|
|
3116
|
+
"serp-provider"?: boolean | undefined;
|
|
3117
|
+
"ai-visibility"?: boolean | undefined;
|
|
3118
|
+
"site-crawl"?: boolean | undefined;
|
|
3119
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
3120
|
+
}>>;
|
|
3121
|
+
/**
|
|
3122
|
+
* Opt-in adversarial downgrade-only verifier stage (mirrors
|
|
3123
|
+
* `security.verifier`, schema.ts:289-295). OPTIONAL with no outer
|
|
3124
|
+
* default — omitting `verifier` entirely stays byte-identical.
|
|
3125
|
+
*/
|
|
3126
|
+
verifier: z.ZodOptional<z.ZodObject<{
|
|
3127
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
3128
|
+
}, "strip", z.ZodTypeAny, {
|
|
3129
|
+
enabled: boolean;
|
|
3130
|
+
}, {
|
|
3131
|
+
enabled?: boolean | undefined;
|
|
3132
|
+
}>>;
|
|
3133
|
+
/**
|
|
3134
|
+
* Per-run USD spend ceiling for PAYG DataForSEO calls. Reuses
|
|
3135
|
+
* `BudgetSectionSchema` (schema.ts:48-51) verbatim; null/absent = uncapped.
|
|
3136
|
+
*/
|
|
3137
|
+
budget: z.ZodOptional<z.ZodObject<{
|
|
3138
|
+
maxUsd: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
|
3139
|
+
}, "strip", z.ZodTypeAny, {
|
|
3140
|
+
maxUsd?: number | null | undefined;
|
|
3141
|
+
}, {
|
|
3142
|
+
maxUsd?: number | null | undefined;
|
|
3143
|
+
}>>;
|
|
3144
|
+
/** Default domain/URL/local path used when the CLI omits [target]. */
|
|
3145
|
+
defaultTarget: z.ZodOptional<z.ZodString>;
|
|
3146
|
+
/** Citation-gate blocking threshold for the CI exit code. Default 'critical-uncited'. */
|
|
3147
|
+
blockThreshold: z.ZodDefault<z.ZodEnum<["never", "any-uncited", "critical-uncited"]>>;
|
|
3148
|
+
/**
|
|
3149
|
+
* Which SERP provider implementation serves the `serp` capability. OPTIONAL
|
|
3150
|
+
* with an INNER default on `provider` (not an outer default on the whole
|
|
3151
|
+
* object) — a config omitting `serp` entirely stays byte-identical
|
|
3152
|
+
* (`SeoConfigSchema.parse({})` leaks only `blockThreshold`, schema.test.ts:978-985).
|
|
3153
|
+
*/
|
|
3154
|
+
serp: z.ZodOptional<z.ZodObject<{
|
|
3155
|
+
provider: z.ZodDefault<z.ZodEnum<["dataforseo", "damcrawler"]>>;
|
|
3156
|
+
}, "strip", z.ZodTypeAny, {
|
|
3157
|
+
provider: "dataforseo" | "damcrawler";
|
|
3158
|
+
}, {
|
|
3159
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
3160
|
+
}>>;
|
|
3161
|
+
/**
|
|
3162
|
+
* In-house AI-visibility API-spine configuration (in-house-ai-visibility,
|
|
3163
|
+
* Sprint 3). OPTIONAL with NO outer default — a config that omits
|
|
3164
|
+
* `aiVisibility` entirely stays byte-identical (mirrors the `serp` idiom
|
|
3165
|
+
* above). Inner fields carry their own `.default(...)` and only
|
|
3166
|
+
* materialize when the object is present. `resolveAiVisibilityProvider`
|
|
3167
|
+
* (`../seo/ai-visibility-provider.js`) reads this to compose per-engine
|
|
3168
|
+
* arms; an engine with no matching API key is skipped (no-key-safe).
|
|
3169
|
+
*/
|
|
3170
|
+
aiVisibility: z.ZodOptional<z.ZodObject<{
|
|
3171
|
+
/** Grounded-search samples per prompt per engine (N in the ADR-3 N-baked cost formula). Default 5. */
|
|
3172
|
+
samplesPerPrompt: z.ZodDefault<z.ZodNumber>;
|
|
3173
|
+
/**
|
|
3174
|
+
* Which engines to probe. `"perplexity"` is a valid value but has no
|
|
3175
|
+
* live provider mapper yet (Sprint 7 nonGoal) — configuring it yields
|
|
3176
|
+
* zero rows from that arm, not an error. Default `[]` (no engines
|
|
3177
|
+
* configured => `resolveAiVisibilityProvider` returns `undefined`).
|
|
3178
|
+
*/
|
|
3179
|
+
engines: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
3180
|
+
engine: z.ZodEnum<["anthropic", "openai", "perplexity"]>;
|
|
3181
|
+
/** Fixed USD price per grounded-search call for this engine. Default 0. */
|
|
3182
|
+
perCallUsd: z.ZodDefault<z.ZodNumber>;
|
|
3183
|
+
}, "strip", z.ZodTypeAny, {
|
|
3184
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3185
|
+
perCallUsd: number;
|
|
3186
|
+
}, {
|
|
3187
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3188
|
+
perCallUsd?: number | undefined;
|
|
3189
|
+
}>, "many">>;
|
|
3190
|
+
/**
|
|
3191
|
+
* Optional LLM-as-judge fuzzy-mention path (in-house-ai-visibility,
|
|
3192
|
+
* Sprint 8). OPTIONAL with NO outer default — mirrors `serp`/
|
|
3193
|
+
* `aiVisibility` above — a config that omits `judge` entirely stays
|
|
3194
|
+
* byte-identical (`SeoConfigSchema.parse({ aiVisibility: {} })` leaks
|
|
3195
|
+
* only `samplesPerPrompt`/`engines`, schema.test.ts:1089-1096). Only
|
|
3196
|
+
* the inner `enabled` flag carries a `.default(false)`. The judge is
|
|
3197
|
+
* OFF by default even when this object is present but `enabled` is
|
|
3198
|
+
* omitted.
|
|
3199
|
+
*/
|
|
3200
|
+
judge: z.ZodOptional<z.ZodObject<{
|
|
3201
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
3202
|
+
/** Optional model override for the judge call; falls back to the injected default when absent. */
|
|
3203
|
+
model: z.ZodOptional<z.ZodString>;
|
|
3204
|
+
}, "strip", z.ZodTypeAny, {
|
|
3205
|
+
enabled: boolean;
|
|
3206
|
+
model?: string | undefined;
|
|
3207
|
+
}, {
|
|
3208
|
+
model?: string | undefined;
|
|
3209
|
+
enabled?: boolean | undefined;
|
|
3210
|
+
}>>;
|
|
3211
|
+
/**
|
|
3212
|
+
* Gated damcrawler UI-scrape arm configuration (in-house-ai-
|
|
3213
|
+
* visibility, Sprint 9/10). OPTIONAL with NO outer default — mirrors
|
|
3214
|
+
* `serp`/`judge` above — a config that omits `scrape` entirely stays
|
|
3215
|
+
* byte-identical (`SeoConfigSchema.parse({ aiVisibility: {} })` leaks
|
|
3216
|
+
* only `samplesPerPrompt`/`engines`). Only the inner fields carry
|
|
3217
|
+
* `.default(...)`. Gated separately by the `ai-visibility-scrape`
|
|
3218
|
+
* egress axis (`../seo/egress.js`) — this object being present does
|
|
3219
|
+
* NOT itself enable scraping. `authSession`/`proxy` are operator-
|
|
3220
|
+
* supplied (nonGoal: no auth harvesting, no proxy sourcing); the rate/
|
|
3221
|
+
* proxy-budget caps are consumed by a follow-up sprint's
|
|
3222
|
+
* `ScrapeThrottle` runner wiring (Sprint 9 built the throttle itself
|
|
3223
|
+
* in isolation; Sprint 10 composes the arm behind an injected dep).
|
|
3224
|
+
*/
|
|
3225
|
+
scrape: z.ZodOptional<z.ZodObject<{
|
|
3226
|
+
/** Which scrape-arm engines to compose. This sprint composes ONLY "chatgpt-ui"; "perplexity-ui" is a valid config value with no live parser yet (Sprint 11 nonGoal). Default []. */
|
|
3227
|
+
engines: z.ZodDefault<z.ZodArray<z.ZodEnum<["chatgpt-ui", "perplexity-ui"]>, "many">>;
|
|
3228
|
+
/** Operator-supplied auth session (storageState path / profile name / cookie blob) passed opaquely to damcrawler's scrape options. */
|
|
3229
|
+
authSession: z.ZodOptional<z.ZodString>;
|
|
3230
|
+
/** Operator-supplied proxy passed opaquely to damcrawler's scrape options. */
|
|
3231
|
+
proxy: z.ZodOptional<z.ZodString>;
|
|
3232
|
+
/** Fixed USD cost booked to the ScrapeThrottle proxy ledger per successful scrape. Default 0. */
|
|
3233
|
+
proxyUsdPerScrape: z.ZodDefault<z.ZodNumber>;
|
|
3234
|
+
/** ScrapeThrottle rate-window cap: max acquire() grants per engine per window. Default 10. */
|
|
3235
|
+
maxPerWindow: z.ZodDefault<z.ZodNumber>;
|
|
3236
|
+
/** ScrapeThrottle rate-window length in milliseconds. Default 60000 (1 minute). */
|
|
3237
|
+
windowMs: z.ZodDefault<z.ZodNumber>;
|
|
3238
|
+
/** ScrapeThrottle cumulative proxy-USD cap per engine. Default 0 (no proxy spend permitted until explicitly raised). */
|
|
3239
|
+
maxProxyUsd: z.ZodDefault<z.ZodNumber>;
|
|
3240
|
+
}, "strip", z.ZodTypeAny, {
|
|
3241
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
3242
|
+
proxyUsdPerScrape: number;
|
|
3243
|
+
maxPerWindow: number;
|
|
3244
|
+
windowMs: number;
|
|
3245
|
+
maxProxyUsd: number;
|
|
3246
|
+
authSession?: string | undefined;
|
|
3247
|
+
proxy?: string | undefined;
|
|
3248
|
+
}, {
|
|
3249
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
3250
|
+
authSession?: string | undefined;
|
|
3251
|
+
proxy?: string | undefined;
|
|
3252
|
+
proxyUsdPerScrape?: number | undefined;
|
|
3253
|
+
maxPerWindow?: number | undefined;
|
|
3254
|
+
windowMs?: number | undefined;
|
|
3255
|
+
maxProxyUsd?: number | undefined;
|
|
3256
|
+
}>>;
|
|
3257
|
+
}, "strip", z.ZodTypeAny, {
|
|
3258
|
+
samplesPerPrompt: number;
|
|
3259
|
+
engines: {
|
|
3260
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3261
|
+
perCallUsd: number;
|
|
3262
|
+
}[];
|
|
3263
|
+
judge?: {
|
|
3264
|
+
enabled: boolean;
|
|
3265
|
+
model?: string | undefined;
|
|
3266
|
+
} | undefined;
|
|
3267
|
+
scrape?: {
|
|
3268
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
3269
|
+
proxyUsdPerScrape: number;
|
|
3270
|
+
maxPerWindow: number;
|
|
3271
|
+
windowMs: number;
|
|
3272
|
+
maxProxyUsd: number;
|
|
3273
|
+
authSession?: string | undefined;
|
|
3274
|
+
proxy?: string | undefined;
|
|
3275
|
+
} | undefined;
|
|
3276
|
+
}, {
|
|
3277
|
+
samplesPerPrompt?: number | undefined;
|
|
3278
|
+
engines?: {
|
|
3279
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3280
|
+
perCallUsd?: number | undefined;
|
|
3281
|
+
}[] | undefined;
|
|
3282
|
+
judge?: {
|
|
3283
|
+
model?: string | undefined;
|
|
3284
|
+
enabled?: boolean | undefined;
|
|
3285
|
+
} | undefined;
|
|
3286
|
+
scrape?: {
|
|
3287
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
3288
|
+
authSession?: string | undefined;
|
|
3289
|
+
proxy?: string | undefined;
|
|
3290
|
+
proxyUsdPerScrape?: number | undefined;
|
|
3291
|
+
maxPerWindow?: number | undefined;
|
|
3292
|
+
windowMs?: number | undefined;
|
|
3293
|
+
maxProxyUsd?: number | undefined;
|
|
3294
|
+
} | undefined;
|
|
3295
|
+
}>>;
|
|
3296
|
+
}, "strip", z.ZodTypeAny, {
|
|
3297
|
+
blockThreshold: "never" | "any-uncited" | "critical-uncited";
|
|
3298
|
+
budget?: {
|
|
3299
|
+
maxUsd?: number | null | undefined;
|
|
3300
|
+
} | undefined;
|
|
3301
|
+
egress?: {
|
|
3302
|
+
"search-console": boolean;
|
|
3303
|
+
"serp-provider": boolean;
|
|
3304
|
+
"ai-visibility": boolean;
|
|
3305
|
+
"site-crawl": boolean;
|
|
3306
|
+
"ai-visibility-scrape": boolean;
|
|
3307
|
+
} | undefined;
|
|
3308
|
+
verifier?: {
|
|
3309
|
+
enabled: boolean;
|
|
3310
|
+
} | undefined;
|
|
3311
|
+
defaultTarget?: string | undefined;
|
|
3312
|
+
serp?: {
|
|
3313
|
+
provider: "dataforseo" | "damcrawler";
|
|
3314
|
+
} | undefined;
|
|
3315
|
+
aiVisibility?: {
|
|
3316
|
+
samplesPerPrompt: number;
|
|
3317
|
+
engines: {
|
|
3318
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3319
|
+
perCallUsd: number;
|
|
3320
|
+
}[];
|
|
3321
|
+
judge?: {
|
|
3322
|
+
enabled: boolean;
|
|
3323
|
+
model?: string | undefined;
|
|
3324
|
+
} | undefined;
|
|
3325
|
+
scrape?: {
|
|
3326
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
3327
|
+
proxyUsdPerScrape: number;
|
|
3328
|
+
maxPerWindow: number;
|
|
3329
|
+
windowMs: number;
|
|
3330
|
+
maxProxyUsd: number;
|
|
3331
|
+
authSession?: string | undefined;
|
|
3332
|
+
proxy?: string | undefined;
|
|
3333
|
+
} | undefined;
|
|
3334
|
+
} | undefined;
|
|
3335
|
+
}, {
|
|
3336
|
+
budget?: {
|
|
3337
|
+
maxUsd?: number | null | undefined;
|
|
3338
|
+
} | undefined;
|
|
3339
|
+
egress?: {
|
|
3340
|
+
"search-console"?: boolean | undefined;
|
|
3341
|
+
"serp-provider"?: boolean | undefined;
|
|
3342
|
+
"ai-visibility"?: boolean | undefined;
|
|
3343
|
+
"site-crawl"?: boolean | undefined;
|
|
3344
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
3345
|
+
} | undefined;
|
|
3346
|
+
verifier?: {
|
|
3347
|
+
enabled?: boolean | undefined;
|
|
3348
|
+
} | undefined;
|
|
3349
|
+
defaultTarget?: string | undefined;
|
|
3350
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
3351
|
+
serp?: {
|
|
3352
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
3353
|
+
} | undefined;
|
|
3354
|
+
aiVisibility?: {
|
|
3355
|
+
samplesPerPrompt?: number | undefined;
|
|
3356
|
+
engines?: {
|
|
3357
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3358
|
+
perCallUsd?: number | undefined;
|
|
3359
|
+
}[] | undefined;
|
|
3360
|
+
judge?: {
|
|
3361
|
+
model?: string | undefined;
|
|
3362
|
+
enabled?: boolean | undefined;
|
|
3363
|
+
} | undefined;
|
|
3364
|
+
scrape?: {
|
|
3365
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
3366
|
+
authSession?: string | undefined;
|
|
3367
|
+
proxy?: string | undefined;
|
|
3368
|
+
proxyUsdPerScrape?: number | undefined;
|
|
3369
|
+
maxPerWindow?: number | undefined;
|
|
3370
|
+
windowMs?: number | undefined;
|
|
3371
|
+
maxProxyUsd?: number | undefined;
|
|
3372
|
+
} | undefined;
|
|
3373
|
+
} | undefined;
|
|
3374
|
+
}>>;
|
|
1396
3375
|
}, "strip", z.ZodTypeAny, {
|
|
1397
3376
|
project: {
|
|
1398
3377
|
name: string;
|
|
1399
3378
|
mode: "greenfield" | "brownfield";
|
|
3379
|
+
preset?: string | undefined;
|
|
1400
3380
|
stack?: {
|
|
1401
3381
|
frontend?: string | undefined;
|
|
1402
3382
|
backend?: string | undefined;
|
|
@@ -1406,7 +3386,6 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1406
3386
|
language?: string | undefined;
|
|
1407
3387
|
other?: string[] | undefined;
|
|
1408
3388
|
} | undefined;
|
|
1409
|
-
preset?: string | undefined;
|
|
1410
3389
|
description?: string | undefined;
|
|
1411
3390
|
};
|
|
1412
3391
|
planner: {
|
|
@@ -1416,6 +3395,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1416
3395
|
provider?: string | undefined;
|
|
1417
3396
|
endpoint?: string | null | undefined;
|
|
1418
3397
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3398
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3399
|
+
budget?: {
|
|
3400
|
+
maxUsd?: number | null | undefined;
|
|
3401
|
+
} | undefined;
|
|
1419
3402
|
};
|
|
1420
3403
|
generator: {
|
|
1421
3404
|
model: string;
|
|
@@ -1425,6 +3408,11 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1425
3408
|
provider?: string | undefined;
|
|
1426
3409
|
endpoint?: string | null | undefined;
|
|
1427
3410
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3411
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3412
|
+
budget?: {
|
|
3413
|
+
maxUsd?: number | null | undefined;
|
|
3414
|
+
} | undefined;
|
|
3415
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
1428
3416
|
};
|
|
1429
3417
|
evaluator: {
|
|
1430
3418
|
model: string;
|
|
@@ -1445,15 +3433,19 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1445
3433
|
provider?: string | undefined;
|
|
1446
3434
|
endpoint?: string | null | undefined;
|
|
1447
3435
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3436
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3437
|
+
budget?: {
|
|
3438
|
+
maxUsd?: number | null | undefined;
|
|
3439
|
+
} | undefined;
|
|
1448
3440
|
plugins?: string[] | undefined;
|
|
1449
3441
|
};
|
|
1450
3442
|
sprint: {
|
|
1451
3443
|
maxSprints: number;
|
|
1452
3444
|
requireContracts: boolean;
|
|
1453
|
-
sprintSize: "
|
|
3445
|
+
sprintSize: "medium" | "small" | "large";
|
|
1454
3446
|
};
|
|
1455
3447
|
pipeline: {
|
|
1456
|
-
mode: "
|
|
3448
|
+
mode: "autopilot" | "careful";
|
|
1457
3449
|
maxIterations: number;
|
|
1458
3450
|
maxCheckpointIterations: number;
|
|
1459
3451
|
requireApproval: boolean;
|
|
@@ -1467,7 +3459,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1467
3459
|
eventQueueBound: number;
|
|
1468
3460
|
worktreeRoot: string;
|
|
1469
3461
|
cleanupWorktreeOnSuccess: boolean;
|
|
1470
|
-
engine: "ts" | "skill" | "workflow";
|
|
3462
|
+
engine: "ts" | "skill" | "workflow" | "medical-sop";
|
|
1471
3463
|
checkpointMechanism?: "noop" | "cli" | "disk" | "pr" | undefined;
|
|
1472
3464
|
};
|
|
1473
3465
|
commands: {
|
|
@@ -1485,6 +3477,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1485
3477
|
provider?: string | undefined;
|
|
1486
3478
|
endpoint?: string | null | undefined;
|
|
1487
3479
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3480
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3481
|
+
budget?: {
|
|
3482
|
+
maxUsd?: number | null | undefined;
|
|
3483
|
+
} | undefined;
|
|
1488
3484
|
} | undefined;
|
|
1489
3485
|
architect?: {
|
|
1490
3486
|
panel: {
|
|
@@ -1496,7 +3492,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1496
3492
|
graph?: {
|
|
1497
3493
|
enabled: boolean;
|
|
1498
3494
|
autoSync: boolean;
|
|
1499
|
-
languageTier: "
|
|
3495
|
+
languageTier: "core" | "extended" | "all";
|
|
1500
3496
|
manifestPath: string;
|
|
1501
3497
|
syncTimeoutMs: number;
|
|
1502
3498
|
queryTimeoutMs: number;
|
|
@@ -1533,9 +3529,9 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1533
3529
|
} | undefined;
|
|
1534
3530
|
observability?: {
|
|
1535
3531
|
providers: {
|
|
1536
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1537
3532
|
name: string;
|
|
1538
3533
|
enabled: boolean;
|
|
3534
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1539
3535
|
mcpCommand: string;
|
|
1540
3536
|
mcpArgs?: string[] | undefined;
|
|
1541
3537
|
mcpEnv?: Record<string, string> | undefined;
|
|
@@ -1560,7 +3556,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1560
3556
|
providers?: Record<string, string> | undefined;
|
|
1561
3557
|
displayName?: string | undefined;
|
|
1562
3558
|
memoryNamespace?: string | undefined;
|
|
1563
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
3559
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1564
3560
|
roles?: {
|
|
1565
3561
|
name: string;
|
|
1566
3562
|
displayName: string;
|
|
@@ -1568,10 +3564,155 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1568
3564
|
guardrails?: unknown;
|
|
1569
3565
|
}> | undefined;
|
|
1570
3566
|
defaultTeam?: string | undefined;
|
|
3567
|
+
medical?: {
|
|
3568
|
+
egress?: {
|
|
3569
|
+
cloudInference: boolean;
|
|
3570
|
+
literatureRetrieval: boolean;
|
|
3571
|
+
deviceConnection: boolean;
|
|
3572
|
+
} | undefined;
|
|
3573
|
+
inference?: {
|
|
3574
|
+
model?: string | undefined;
|
|
3575
|
+
provider?: string | undefined;
|
|
3576
|
+
endpoint?: string | undefined;
|
|
3577
|
+
} | undefined;
|
|
3578
|
+
vaultDir?: string | undefined;
|
|
3579
|
+
} | undefined;
|
|
3580
|
+
fleet?: {
|
|
3581
|
+
blackboardDbPath: string;
|
|
3582
|
+
blackboardNamespace: string;
|
|
3583
|
+
blackboardSubject: string;
|
|
3584
|
+
maxRounds: number;
|
|
3585
|
+
} | undefined;
|
|
3586
|
+
vault?: {
|
|
3587
|
+
obsidian?: {
|
|
3588
|
+
name: string;
|
|
3589
|
+
enabled: boolean;
|
|
3590
|
+
mcpCommand: string;
|
|
3591
|
+
mcpArgs?: string[] | undefined;
|
|
3592
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
3593
|
+
toolNames?: {
|
|
3594
|
+
readNote?: string | undefined;
|
|
3595
|
+
writeNote?: string | undefined;
|
|
3596
|
+
listNotes?: string | undefined;
|
|
3597
|
+
} | undefined;
|
|
3598
|
+
} | undefined;
|
|
3599
|
+
} | undefined;
|
|
3600
|
+
taskInbox?: {
|
|
3601
|
+
gmailEgress: boolean;
|
|
3602
|
+
} | undefined;
|
|
3603
|
+
calendar?: {
|
|
3604
|
+
connector: "ics" | "google";
|
|
3605
|
+
egress?: {
|
|
3606
|
+
cloudCalendar: boolean;
|
|
3607
|
+
} | undefined;
|
|
3608
|
+
timezone?: string | undefined;
|
|
3609
|
+
} | undefined;
|
|
3610
|
+
research?: {
|
|
3611
|
+
egress?: {
|
|
3612
|
+
onlineResearch: boolean;
|
|
3613
|
+
} | undefined;
|
|
3614
|
+
} | undefined;
|
|
3615
|
+
tools?: {
|
|
3616
|
+
mcpBridge?: {
|
|
3617
|
+
enabled: boolean;
|
|
3618
|
+
server: {
|
|
3619
|
+
command: string;
|
|
3620
|
+
args: string[];
|
|
3621
|
+
};
|
|
3622
|
+
} | undefined;
|
|
3623
|
+
} | undefined;
|
|
3624
|
+
security?: {
|
|
3625
|
+
model: string;
|
|
3626
|
+
maxTurns: number;
|
|
3627
|
+
enabled: boolean;
|
|
3628
|
+
timeoutMs: number;
|
|
3629
|
+
failClosed: boolean;
|
|
3630
|
+
scanners: {
|
|
3631
|
+
type: string;
|
|
3632
|
+
required: boolean;
|
|
3633
|
+
plugin?: string | undefined;
|
|
3634
|
+
command?: string | undefined;
|
|
3635
|
+
config?: Record<string, unknown> | undefined;
|
|
3636
|
+
label?: string | undefined;
|
|
3637
|
+
}[];
|
|
3638
|
+
standaloneBlockOn: "critical" | "important";
|
|
3639
|
+
hub: boolean;
|
|
3640
|
+
provider?: string | undefined;
|
|
3641
|
+
endpoint?: string | null | undefined;
|
|
3642
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
3643
|
+
budget?: {
|
|
3644
|
+
maxUsd?: number | null | undefined;
|
|
3645
|
+
} | undefined;
|
|
3646
|
+
egress?: {
|
|
3647
|
+
onlineResearch: boolean;
|
|
3648
|
+
} | undefined;
|
|
3649
|
+
diff?: {
|
|
3650
|
+
mode: "estimated-files" | "git-diff";
|
|
3651
|
+
expandWithGraph: boolean;
|
|
3652
|
+
baseRef?: string | undefined;
|
|
3653
|
+
} | undefined;
|
|
3654
|
+
supplyChain?: {
|
|
3655
|
+
enabled: boolean;
|
|
3656
|
+
scanners: {
|
|
3657
|
+
type: string;
|
|
3658
|
+
required: boolean;
|
|
3659
|
+
plugin?: string | undefined;
|
|
3660
|
+
command?: string | undefined;
|
|
3661
|
+
config?: Record<string, unknown> | undefined;
|
|
3662
|
+
label?: string | undefined;
|
|
3663
|
+
}[];
|
|
3664
|
+
} | undefined;
|
|
3665
|
+
verifier?: {
|
|
3666
|
+
model: string;
|
|
3667
|
+
maxTurns: number;
|
|
3668
|
+
enabled: boolean;
|
|
3669
|
+
} | undefined;
|
|
3670
|
+
} | undefined;
|
|
3671
|
+
seo?: {
|
|
3672
|
+
blockThreshold: "never" | "any-uncited" | "critical-uncited";
|
|
3673
|
+
budget?: {
|
|
3674
|
+
maxUsd?: number | null | undefined;
|
|
3675
|
+
} | undefined;
|
|
3676
|
+
egress?: {
|
|
3677
|
+
"search-console": boolean;
|
|
3678
|
+
"serp-provider": boolean;
|
|
3679
|
+
"ai-visibility": boolean;
|
|
3680
|
+
"site-crawl": boolean;
|
|
3681
|
+
"ai-visibility-scrape": boolean;
|
|
3682
|
+
} | undefined;
|
|
3683
|
+
verifier?: {
|
|
3684
|
+
enabled: boolean;
|
|
3685
|
+
} | undefined;
|
|
3686
|
+
defaultTarget?: string | undefined;
|
|
3687
|
+
serp?: {
|
|
3688
|
+
provider: "dataforseo" | "damcrawler";
|
|
3689
|
+
} | undefined;
|
|
3690
|
+
aiVisibility?: {
|
|
3691
|
+
samplesPerPrompt: number;
|
|
3692
|
+
engines: {
|
|
3693
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
3694
|
+
perCallUsd: number;
|
|
3695
|
+
}[];
|
|
3696
|
+
judge?: {
|
|
3697
|
+
enabled: boolean;
|
|
3698
|
+
model?: string | undefined;
|
|
3699
|
+
} | undefined;
|
|
3700
|
+
scrape?: {
|
|
3701
|
+
engines: ("chatgpt-ui" | "perplexity-ui")[];
|
|
3702
|
+
proxyUsdPerScrape: number;
|
|
3703
|
+
maxPerWindow: number;
|
|
3704
|
+
windowMs: number;
|
|
3705
|
+
maxProxyUsd: number;
|
|
3706
|
+
authSession?: string | undefined;
|
|
3707
|
+
proxy?: string | undefined;
|
|
3708
|
+
} | undefined;
|
|
3709
|
+
} | undefined;
|
|
3710
|
+
} | undefined;
|
|
1571
3711
|
}, {
|
|
1572
3712
|
project: {
|
|
1573
3713
|
name: string;
|
|
1574
3714
|
mode: "greenfield" | "brownfield";
|
|
3715
|
+
preset?: string | undefined;
|
|
1575
3716
|
stack?: {
|
|
1576
3717
|
frontend?: string | undefined;
|
|
1577
3718
|
backend?: string | undefined;
|
|
@@ -1581,7 +3722,6 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1581
3722
|
language?: string | undefined;
|
|
1582
3723
|
other?: string[] | undefined;
|
|
1583
3724
|
} | undefined;
|
|
1584
|
-
preset?: string | undefined;
|
|
1585
3725
|
description?: string | undefined;
|
|
1586
3726
|
};
|
|
1587
3727
|
planner: {
|
|
@@ -1591,15 +3731,24 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1591
3731
|
provider?: string | undefined;
|
|
1592
3732
|
endpoint?: string | null | undefined;
|
|
1593
3733
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3734
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3735
|
+
budget?: {
|
|
3736
|
+
maxUsd?: number | null | undefined;
|
|
3737
|
+
} | undefined;
|
|
1594
3738
|
};
|
|
1595
3739
|
generator: {
|
|
1596
3740
|
model?: string | undefined;
|
|
1597
3741
|
provider?: string | undefined;
|
|
1598
3742
|
endpoint?: string | null | undefined;
|
|
1599
3743
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3744
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3745
|
+
budget?: {
|
|
3746
|
+
maxUsd?: number | null | undefined;
|
|
3747
|
+
} | undefined;
|
|
1600
3748
|
maxTurnsPerSprint?: number | undefined;
|
|
1601
3749
|
autoCommit?: boolean | undefined;
|
|
1602
3750
|
branchPattern?: string | undefined;
|
|
3751
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
1603
3752
|
};
|
|
1604
3753
|
evaluator: {
|
|
1605
3754
|
strategies: {
|
|
@@ -1614,6 +3763,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1614
3763
|
provider?: string | undefined;
|
|
1615
3764
|
endpoint?: string | null | undefined;
|
|
1616
3765
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3766
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3767
|
+
budget?: {
|
|
3768
|
+
maxUsd?: number | null | undefined;
|
|
3769
|
+
} | undefined;
|
|
1617
3770
|
maxIterations?: number | undefined;
|
|
1618
3771
|
plugins?: string[] | undefined;
|
|
1619
3772
|
panel?: {
|
|
@@ -1625,10 +3778,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1625
3778
|
sprint: {
|
|
1626
3779
|
maxSprints?: number | undefined;
|
|
1627
3780
|
requireContracts?: boolean | undefined;
|
|
1628
|
-
sprintSize?: "
|
|
3781
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
1629
3782
|
};
|
|
1630
3783
|
pipeline: {
|
|
1631
|
-
mode?: "
|
|
3784
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
1632
3785
|
maxIterations?: number | undefined;
|
|
1633
3786
|
maxCheckpointIterations?: number | undefined;
|
|
1634
3787
|
requireApproval?: boolean | undefined;
|
|
@@ -1643,7 +3796,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1643
3796
|
eventQueueBound?: number | undefined;
|
|
1644
3797
|
worktreeRoot?: string | undefined;
|
|
1645
3798
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
1646
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
3799
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1647
3800
|
};
|
|
1648
3801
|
commands: {
|
|
1649
3802
|
install?: string | undefined;
|
|
@@ -1658,6 +3811,10 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1658
3811
|
provider?: string | undefined;
|
|
1659
3812
|
endpoint?: string | null | undefined;
|
|
1660
3813
|
providerConfig?: Record<string, unknown> | undefined;
|
|
3814
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
3815
|
+
budget?: {
|
|
3816
|
+
maxUsd?: number | null | undefined;
|
|
3817
|
+
} | undefined;
|
|
1661
3818
|
maxTurns?: number | undefined;
|
|
1662
3819
|
enabled?: boolean | undefined;
|
|
1663
3820
|
} | undefined;
|
|
@@ -1672,7 +3829,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1672
3829
|
enabled?: boolean | undefined;
|
|
1673
3830
|
tokensavePath?: string | undefined;
|
|
1674
3831
|
autoSync?: boolean | undefined;
|
|
1675
|
-
languageTier?: "
|
|
3832
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
1676
3833
|
manifestPath?: string | undefined;
|
|
1677
3834
|
syncTimeoutMs?: number | undefined;
|
|
1678
3835
|
queryTimeoutMs?: number | undefined;
|
|
@@ -1708,8 +3865,8 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1708
3865
|
} | undefined;
|
|
1709
3866
|
observability?: {
|
|
1710
3867
|
providers?: {
|
|
1711
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1712
3868
|
name: string;
|
|
3869
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
1713
3870
|
mcpCommand: string;
|
|
1714
3871
|
enabled?: boolean | undefined;
|
|
1715
3872
|
mcpArgs?: string[] | undefined;
|
|
@@ -1735,7 +3892,7 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1735
3892
|
providers?: Record<string, string> | undefined;
|
|
1736
3893
|
displayName?: string | undefined;
|
|
1737
3894
|
memoryNamespace?: string | undefined;
|
|
1738
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
3895
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1739
3896
|
roles?: {
|
|
1740
3897
|
name: string;
|
|
1741
3898
|
displayName: string;
|
|
@@ -1743,6 +3900,150 @@ export declare const BoberConfigSchema: z.ZodObject<{
|
|
|
1743
3900
|
guardrails?: unknown;
|
|
1744
3901
|
}> | undefined;
|
|
1745
3902
|
defaultTeam?: string | undefined;
|
|
3903
|
+
medical?: {
|
|
3904
|
+
egress?: {
|
|
3905
|
+
cloudInference?: boolean | undefined;
|
|
3906
|
+
literatureRetrieval?: boolean | undefined;
|
|
3907
|
+
deviceConnection?: boolean | undefined;
|
|
3908
|
+
} | undefined;
|
|
3909
|
+
inference?: {
|
|
3910
|
+
model?: string | undefined;
|
|
3911
|
+
provider?: string | undefined;
|
|
3912
|
+
endpoint?: string | undefined;
|
|
3913
|
+
} | undefined;
|
|
3914
|
+
vaultDir?: string | undefined;
|
|
3915
|
+
} | undefined;
|
|
3916
|
+
fleet?: {
|
|
3917
|
+
blackboardDbPath: string;
|
|
3918
|
+
blackboardNamespace: string;
|
|
3919
|
+
blackboardSubject: string;
|
|
3920
|
+
maxRounds: number;
|
|
3921
|
+
} | undefined;
|
|
3922
|
+
vault?: {
|
|
3923
|
+
obsidian?: {
|
|
3924
|
+
name: string;
|
|
3925
|
+
mcpCommand: string;
|
|
3926
|
+
enabled?: boolean | undefined;
|
|
3927
|
+
mcpArgs?: string[] | undefined;
|
|
3928
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
3929
|
+
toolNames?: {
|
|
3930
|
+
readNote?: string | undefined;
|
|
3931
|
+
writeNote?: string | undefined;
|
|
3932
|
+
listNotes?: string | undefined;
|
|
3933
|
+
} | undefined;
|
|
3934
|
+
} | undefined;
|
|
3935
|
+
} | undefined;
|
|
3936
|
+
taskInbox?: {
|
|
3937
|
+
gmailEgress?: boolean | undefined;
|
|
3938
|
+
} | undefined;
|
|
3939
|
+
calendar?: {
|
|
3940
|
+
egress?: {
|
|
3941
|
+
cloudCalendar?: boolean | undefined;
|
|
3942
|
+
} | undefined;
|
|
3943
|
+
connector?: "ics" | "google" | undefined;
|
|
3944
|
+
timezone?: string | undefined;
|
|
3945
|
+
} | undefined;
|
|
3946
|
+
research?: {
|
|
3947
|
+
egress?: {
|
|
3948
|
+
onlineResearch?: boolean | undefined;
|
|
3949
|
+
} | undefined;
|
|
3950
|
+
} | undefined;
|
|
3951
|
+
tools?: {
|
|
3952
|
+
mcpBridge?: {
|
|
3953
|
+
server: {
|
|
3954
|
+
command: string;
|
|
3955
|
+
args?: string[] | undefined;
|
|
3956
|
+
};
|
|
3957
|
+
enabled?: boolean | undefined;
|
|
3958
|
+
} | undefined;
|
|
3959
|
+
} | undefined;
|
|
3960
|
+
security?: {
|
|
3961
|
+
model?: string | undefined;
|
|
3962
|
+
provider?: string | undefined;
|
|
3963
|
+
endpoint?: string | null | undefined;
|
|
3964
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
3965
|
+
budget?: {
|
|
3966
|
+
maxUsd?: number | null | undefined;
|
|
3967
|
+
} | undefined;
|
|
3968
|
+
maxTurns?: number | undefined;
|
|
3969
|
+
enabled?: boolean | undefined;
|
|
3970
|
+
timeoutMs?: number | undefined;
|
|
3971
|
+
egress?: {
|
|
3972
|
+
onlineResearch?: boolean | undefined;
|
|
3973
|
+
} | undefined;
|
|
3974
|
+
failClosed?: boolean | undefined;
|
|
3975
|
+
scanners?: {
|
|
3976
|
+
type: string;
|
|
3977
|
+
required: boolean;
|
|
3978
|
+
plugin?: string | undefined;
|
|
3979
|
+
command?: string | undefined;
|
|
3980
|
+
config?: Record<string, unknown> | undefined;
|
|
3981
|
+
label?: string | undefined;
|
|
3982
|
+
}[] | undefined;
|
|
3983
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
3984
|
+
hub?: boolean | undefined;
|
|
3985
|
+
diff?: {
|
|
3986
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
3987
|
+
baseRef?: string | undefined;
|
|
3988
|
+
expandWithGraph?: boolean | undefined;
|
|
3989
|
+
} | undefined;
|
|
3990
|
+
supplyChain?: {
|
|
3991
|
+
enabled?: boolean | undefined;
|
|
3992
|
+
scanners?: {
|
|
3993
|
+
type: string;
|
|
3994
|
+
required: boolean;
|
|
3995
|
+
plugin?: string | undefined;
|
|
3996
|
+
command?: string | undefined;
|
|
3997
|
+
config?: Record<string, unknown> | undefined;
|
|
3998
|
+
label?: string | undefined;
|
|
3999
|
+
}[] | undefined;
|
|
4000
|
+
} | undefined;
|
|
4001
|
+
verifier?: {
|
|
4002
|
+
model?: string | undefined;
|
|
4003
|
+
maxTurns?: number | undefined;
|
|
4004
|
+
enabled?: boolean | undefined;
|
|
4005
|
+
} | undefined;
|
|
4006
|
+
} | undefined;
|
|
4007
|
+
seo?: {
|
|
4008
|
+
budget?: {
|
|
4009
|
+
maxUsd?: number | null | undefined;
|
|
4010
|
+
} | undefined;
|
|
4011
|
+
egress?: {
|
|
4012
|
+
"search-console"?: boolean | undefined;
|
|
4013
|
+
"serp-provider"?: boolean | undefined;
|
|
4014
|
+
"ai-visibility"?: boolean | undefined;
|
|
4015
|
+
"site-crawl"?: boolean | undefined;
|
|
4016
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
4017
|
+
} | undefined;
|
|
4018
|
+
verifier?: {
|
|
4019
|
+
enabled?: boolean | undefined;
|
|
4020
|
+
} | undefined;
|
|
4021
|
+
defaultTarget?: string | undefined;
|
|
4022
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
4023
|
+
serp?: {
|
|
4024
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
4025
|
+
} | undefined;
|
|
4026
|
+
aiVisibility?: {
|
|
4027
|
+
samplesPerPrompt?: number | undefined;
|
|
4028
|
+
engines?: {
|
|
4029
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
4030
|
+
perCallUsd?: number | undefined;
|
|
4031
|
+
}[] | undefined;
|
|
4032
|
+
judge?: {
|
|
4033
|
+
model?: string | undefined;
|
|
4034
|
+
enabled?: boolean | undefined;
|
|
4035
|
+
} | undefined;
|
|
4036
|
+
scrape?: {
|
|
4037
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
4038
|
+
authSession?: string | undefined;
|
|
4039
|
+
proxy?: string | undefined;
|
|
4040
|
+
proxyUsdPerScrape?: number | undefined;
|
|
4041
|
+
maxPerWindow?: number | undefined;
|
|
4042
|
+
windowMs?: number | undefined;
|
|
4043
|
+
maxProxyUsd?: number | undefined;
|
|
4044
|
+
} | undefined;
|
|
4045
|
+
} | undefined;
|
|
4046
|
+
} | undefined;
|
|
1746
4047
|
}>;
|
|
1747
4048
|
export type BoberConfig = z.infer<typeof BoberConfigSchema>;
|
|
1748
4049
|
/**
|
|
@@ -1757,6 +4058,14 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1757
4058
|
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1758
4059
|
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
1759
4060
|
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4061
|
+
effort: z.ZodOptional<z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>>;
|
|
4062
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4063
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
4064
|
+
}, "strip", z.ZodTypeAny, {
|
|
4065
|
+
maxUsd?: number | null | undefined;
|
|
4066
|
+
}, {
|
|
4067
|
+
maxUsd?: number | null | undefined;
|
|
4068
|
+
}>>>;
|
|
1760
4069
|
}, "strip", z.ZodTypeAny, {
|
|
1761
4070
|
maxClarifications?: number | undefined;
|
|
1762
4071
|
model?: string | undefined;
|
|
@@ -1764,6 +4073,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1764
4073
|
provider?: string | undefined;
|
|
1765
4074
|
endpoint?: string | null | undefined;
|
|
1766
4075
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4076
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4077
|
+
budget?: {
|
|
4078
|
+
maxUsd?: number | null | undefined;
|
|
4079
|
+
} | undefined;
|
|
1767
4080
|
}, {
|
|
1768
4081
|
maxClarifications?: number | undefined;
|
|
1769
4082
|
model?: string | undefined;
|
|
@@ -1771,6 +4084,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1771
4084
|
provider?: string | undefined;
|
|
1772
4085
|
endpoint?: string | null | undefined;
|
|
1773
4086
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4087
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4088
|
+
budget?: {
|
|
4089
|
+
maxUsd?: number | null | undefined;
|
|
4090
|
+
} | undefined;
|
|
1774
4091
|
}>>;
|
|
1775
4092
|
curator: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
1776
4093
|
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
@@ -1779,11 +4096,23 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1779
4096
|
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1780
4097
|
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
1781
4098
|
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4099
|
+
effort: z.ZodOptional<z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>>;
|
|
4100
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4101
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
4102
|
+
}, "strip", z.ZodTypeAny, {
|
|
4103
|
+
maxUsd?: number | null | undefined;
|
|
4104
|
+
}, {
|
|
4105
|
+
maxUsd?: number | null | undefined;
|
|
4106
|
+
}>>>;
|
|
1782
4107
|
}, "strip", z.ZodTypeAny, {
|
|
1783
4108
|
model?: string | undefined;
|
|
1784
4109
|
provider?: string | undefined;
|
|
1785
4110
|
endpoint?: string | null | undefined;
|
|
1786
4111
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4112
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4113
|
+
budget?: {
|
|
4114
|
+
maxUsd?: number | null | undefined;
|
|
4115
|
+
} | undefined;
|
|
1787
4116
|
maxTurns?: number | undefined;
|
|
1788
4117
|
enabled?: boolean | undefined;
|
|
1789
4118
|
}, {
|
|
@@ -1791,6 +4120,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1791
4120
|
provider?: string | undefined;
|
|
1792
4121
|
endpoint?: string | null | undefined;
|
|
1793
4122
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4123
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4124
|
+
budget?: {
|
|
4125
|
+
maxUsd?: number | null | undefined;
|
|
4126
|
+
} | undefined;
|
|
1794
4127
|
maxTurns?: number | undefined;
|
|
1795
4128
|
enabled?: boolean | undefined;
|
|
1796
4129
|
}>>>;
|
|
@@ -1802,22 +4135,41 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1802
4135
|
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
1803
4136
|
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
1804
4137
|
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4138
|
+
effort: z.ZodOptional<z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>>;
|
|
4139
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4140
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
4141
|
+
}, "strip", z.ZodTypeAny, {
|
|
4142
|
+
maxUsd?: number | null | undefined;
|
|
4143
|
+
}, {
|
|
4144
|
+
maxUsd?: number | null | undefined;
|
|
4145
|
+
}>>>;
|
|
4146
|
+
parallelReadOnlyTools: z.ZodOptional<z.ZodOptional<z.ZodBoolean>>;
|
|
1805
4147
|
}, "strip", z.ZodTypeAny, {
|
|
1806
4148
|
model?: string | undefined;
|
|
1807
4149
|
provider?: string | undefined;
|
|
1808
4150
|
endpoint?: string | null | undefined;
|
|
1809
4151
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4152
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4153
|
+
budget?: {
|
|
4154
|
+
maxUsd?: number | null | undefined;
|
|
4155
|
+
} | undefined;
|
|
1810
4156
|
maxTurnsPerSprint?: number | undefined;
|
|
1811
4157
|
autoCommit?: boolean | undefined;
|
|
1812
4158
|
branchPattern?: string | undefined;
|
|
4159
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
1813
4160
|
}, {
|
|
1814
4161
|
model?: string | undefined;
|
|
1815
4162
|
provider?: string | undefined;
|
|
1816
4163
|
endpoint?: string | null | undefined;
|
|
1817
4164
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4165
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4166
|
+
budget?: {
|
|
4167
|
+
maxUsd?: number | null | undefined;
|
|
4168
|
+
} | undefined;
|
|
1818
4169
|
maxTurnsPerSprint?: number | undefined;
|
|
1819
4170
|
autoCommit?: boolean | undefined;
|
|
1820
4171
|
branchPattern?: string | undefined;
|
|
4172
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
1821
4173
|
}>>;
|
|
1822
4174
|
evaluator: z.ZodOptional<z.ZodObject<{
|
|
1823
4175
|
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
@@ -1861,11 +4213,23 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1861
4213
|
lenses?: string[] | undefined;
|
|
1862
4214
|
maxConcurrent?: number | undefined;
|
|
1863
4215
|
}>>>;
|
|
4216
|
+
effort: z.ZodOptional<z.ZodOptional<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>>>;
|
|
4217
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4218
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
4219
|
+
}, "strip", z.ZodTypeAny, {
|
|
4220
|
+
maxUsd?: number | null | undefined;
|
|
4221
|
+
}, {
|
|
4222
|
+
maxUsd?: number | null | undefined;
|
|
4223
|
+
}>>>;
|
|
1864
4224
|
}, "strip", z.ZodTypeAny, {
|
|
1865
4225
|
model?: string | undefined;
|
|
1866
4226
|
provider?: string | undefined;
|
|
1867
4227
|
endpoint?: string | null | undefined;
|
|
1868
4228
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4229
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4230
|
+
budget?: {
|
|
4231
|
+
maxUsd?: number | null | undefined;
|
|
4232
|
+
} | undefined;
|
|
1869
4233
|
strategies?: {
|
|
1870
4234
|
type?: string | undefined;
|
|
1871
4235
|
plugin?: string | undefined;
|
|
@@ -1886,6 +4250,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1886
4250
|
provider?: string | undefined;
|
|
1887
4251
|
endpoint?: string | null | undefined;
|
|
1888
4252
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4253
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
4254
|
+
budget?: {
|
|
4255
|
+
maxUsd?: number | null | undefined;
|
|
4256
|
+
} | undefined;
|
|
1889
4257
|
strategies?: {
|
|
1890
4258
|
type?: string | undefined;
|
|
1891
4259
|
plugin?: string | undefined;
|
|
@@ -1909,11 +4277,11 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1909
4277
|
}, "strip", z.ZodTypeAny, {
|
|
1910
4278
|
maxSprints?: number | undefined;
|
|
1911
4279
|
requireContracts?: boolean | undefined;
|
|
1912
|
-
sprintSize?: "
|
|
4280
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
1913
4281
|
}, {
|
|
1914
4282
|
maxSprints?: number | undefined;
|
|
1915
4283
|
requireContracts?: boolean | undefined;
|
|
1916
|
-
sprintSize?: "
|
|
4284
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
1917
4285
|
}>>;
|
|
1918
4286
|
pipeline: z.ZodOptional<z.ZodObject<{
|
|
1919
4287
|
maxIterations: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
@@ -1931,9 +4299,9 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1931
4299
|
eventQueueBound: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
1932
4300
|
worktreeRoot: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
1933
4301
|
cleanupWorktreeOnSuccess: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
1934
|
-
engine: z.ZodOptional<z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow"]>>>;
|
|
4302
|
+
engine: z.ZodOptional<z.ZodDefault<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>>;
|
|
1935
4303
|
}, "strip", z.ZodTypeAny, {
|
|
1936
|
-
mode?: "
|
|
4304
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
1937
4305
|
maxIterations?: number | undefined;
|
|
1938
4306
|
maxCheckpointIterations?: number | undefined;
|
|
1939
4307
|
requireApproval?: boolean | undefined;
|
|
@@ -1948,9 +4316,9 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1948
4316
|
eventQueueBound?: number | undefined;
|
|
1949
4317
|
worktreeRoot?: string | undefined;
|
|
1950
4318
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
1951
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
4319
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1952
4320
|
}, {
|
|
1953
|
-
mode?: "
|
|
4321
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
1954
4322
|
maxIterations?: number | undefined;
|
|
1955
4323
|
maxCheckpointIterations?: number | undefined;
|
|
1956
4324
|
requireApproval?: boolean | undefined;
|
|
@@ -1965,7 +4333,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
1965
4333
|
eventQueueBound?: number | undefined;
|
|
1966
4334
|
worktreeRoot?: string | undefined;
|
|
1967
4335
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
1968
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
4336
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
1969
4337
|
}>>;
|
|
1970
4338
|
commands: z.ZodOptional<z.ZodObject<{
|
|
1971
4339
|
install: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
@@ -2025,7 +4393,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2025
4393
|
enabled?: boolean | undefined;
|
|
2026
4394
|
tokensavePath?: string | undefined;
|
|
2027
4395
|
autoSync?: boolean | undefined;
|
|
2028
|
-
languageTier?: "
|
|
4396
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
2029
4397
|
manifestPath?: string | undefined;
|
|
2030
4398
|
syncTimeoutMs?: number | undefined;
|
|
2031
4399
|
queryTimeoutMs?: number | undefined;
|
|
@@ -2044,7 +4412,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2044
4412
|
enabled?: boolean | undefined;
|
|
2045
4413
|
tokensavePath?: string | undefined;
|
|
2046
4414
|
autoSync?: boolean | undefined;
|
|
2047
|
-
languageTier?: "
|
|
4415
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
2048
4416
|
manifestPath?: string | undefined;
|
|
2049
4417
|
syncTimeoutMs?: number | undefined;
|
|
2050
4418
|
queryTimeoutMs?: number | undefined;
|
|
@@ -2122,15 +4490,15 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2122
4490
|
mcpEnv: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
2123
4491
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
2124
4492
|
}, "strip", z.ZodTypeAny, {
|
|
2125
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2126
4493
|
name: string;
|
|
2127
4494
|
enabled: boolean;
|
|
4495
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2128
4496
|
mcpCommand: string;
|
|
2129
4497
|
mcpArgs?: string[] | undefined;
|
|
2130
4498
|
mcpEnv?: Record<string, string> | undefined;
|
|
2131
4499
|
}, {
|
|
2132
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2133
4500
|
name: string;
|
|
4501
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2134
4502
|
mcpCommand: string;
|
|
2135
4503
|
enabled?: boolean | undefined;
|
|
2136
4504
|
mcpArgs?: string[] | undefined;
|
|
@@ -2138,17 +4506,17 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2138
4506
|
}>, "many">>>;
|
|
2139
4507
|
}, "strip", z.ZodTypeAny, {
|
|
2140
4508
|
providers?: {
|
|
2141
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2142
4509
|
name: string;
|
|
2143
4510
|
enabled: boolean;
|
|
4511
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2144
4512
|
mcpCommand: string;
|
|
2145
4513
|
mcpArgs?: string[] | undefined;
|
|
2146
4514
|
mcpEnv?: Record<string, string> | undefined;
|
|
2147
4515
|
}[] | undefined;
|
|
2148
4516
|
}, {
|
|
2149
4517
|
providers?: {
|
|
2150
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2151
4518
|
name: string;
|
|
4519
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2152
4520
|
mcpCommand: string;
|
|
2153
4521
|
enabled?: boolean | undefined;
|
|
2154
4522
|
mcpArgs?: string[] | undefined;
|
|
@@ -2175,91 +4543,752 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2175
4543
|
lenses: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
2176
4544
|
maxConcurrent: z.ZodDefault<z.ZodNumber>;
|
|
2177
4545
|
}, "strip", z.ZodTypeAny, {
|
|
2178
|
-
enabled: boolean;
|
|
2179
|
-
lenses: string[];
|
|
2180
|
-
maxConcurrent: number;
|
|
4546
|
+
enabled: boolean;
|
|
4547
|
+
lenses: string[];
|
|
4548
|
+
maxConcurrent: number;
|
|
4549
|
+
}, {
|
|
4550
|
+
enabled?: boolean | undefined;
|
|
4551
|
+
lenses?: string[] | undefined;
|
|
4552
|
+
maxConcurrent?: number | undefined;
|
|
4553
|
+
}>>>;
|
|
4554
|
+
}, "strip", z.ZodTypeAny, {
|
|
4555
|
+
panel?: {
|
|
4556
|
+
enabled: boolean;
|
|
4557
|
+
lenses: string[];
|
|
4558
|
+
maxConcurrent: number;
|
|
4559
|
+
} | undefined;
|
|
4560
|
+
}, {
|
|
4561
|
+
panel?: {
|
|
4562
|
+
enabled?: boolean | undefined;
|
|
4563
|
+
lenses?: string[] | undefined;
|
|
4564
|
+
maxConcurrent?: number | undefined;
|
|
4565
|
+
} | undefined;
|
|
4566
|
+
}>>>;
|
|
4567
|
+
history: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4568
|
+
maxActiveLines: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
4569
|
+
}, "strip", z.ZodTypeAny, {
|
|
4570
|
+
maxActiveLines?: number | undefined;
|
|
4571
|
+
}, {
|
|
4572
|
+
maxActiveLines?: number | undefined;
|
|
4573
|
+
}>>>;
|
|
4574
|
+
chat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4575
|
+
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
4576
|
+
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4577
|
+
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
4578
|
+
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4579
|
+
}, "strip", z.ZodTypeAny, {
|
|
4580
|
+
model?: string | undefined;
|
|
4581
|
+
provider?: string | undefined;
|
|
4582
|
+
endpoint?: string | null | undefined;
|
|
4583
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
4584
|
+
}, {
|
|
4585
|
+
model?: string | undefined;
|
|
4586
|
+
provider?: string | undefined;
|
|
4587
|
+
endpoint?: string | null | undefined;
|
|
4588
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
4589
|
+
}>>>;
|
|
4590
|
+
teams: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
4591
|
+
displayName: z.ZodOptional<z.ZodString>;
|
|
4592
|
+
/** Memory namespace segment — restricted to a safe path segment. */
|
|
4593
|
+
memoryNamespace: z.ZodOptional<z.ZodString>;
|
|
4594
|
+
/** Orchestration engine shape for this team. Mirrors the z.enum in PipelineSectionSchema. */
|
|
4595
|
+
pipelineShape: z.ZodOptional<z.ZodEnum<["ts", "skill", "workflow", "medical-sop"]>>;
|
|
4596
|
+
/** Partial role -> provider override. Keys SHOULD be RoleName values. */
|
|
4597
|
+
providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
4598
|
+
roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
4599
|
+
name: z.ZodString;
|
|
4600
|
+
displayName: z.ZodString;
|
|
4601
|
+
}, "strip", z.ZodTypeAny, {
|
|
4602
|
+
name: string;
|
|
4603
|
+
displayName: string;
|
|
4604
|
+
}, {
|
|
4605
|
+
name: string;
|
|
4606
|
+
displayName: string;
|
|
4607
|
+
}>, "many">>;
|
|
4608
|
+
guardrails: z.ZodOptional<z.ZodUnknown>;
|
|
4609
|
+
}, "strip", z.ZodTypeAny, {
|
|
4610
|
+
providers?: Record<string, string> | undefined;
|
|
4611
|
+
displayName?: string | undefined;
|
|
4612
|
+
memoryNamespace?: string | undefined;
|
|
4613
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
4614
|
+
roles?: {
|
|
4615
|
+
name: string;
|
|
4616
|
+
displayName: string;
|
|
4617
|
+
}[] | undefined;
|
|
4618
|
+
guardrails?: unknown;
|
|
4619
|
+
}, {
|
|
4620
|
+
providers?: Record<string, string> | undefined;
|
|
4621
|
+
displayName?: string | undefined;
|
|
4622
|
+
memoryNamespace?: string | undefined;
|
|
4623
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
4624
|
+
roles?: {
|
|
4625
|
+
name: string;
|
|
4626
|
+
displayName: string;
|
|
4627
|
+
}[] | undefined;
|
|
4628
|
+
guardrails?: unknown;
|
|
4629
|
+
}>>>>;
|
|
4630
|
+
defaultTeam: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4631
|
+
medical: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4632
|
+
egress: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4633
|
+
cloudInference: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4634
|
+
literatureRetrieval: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4635
|
+
deviceConnection: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4636
|
+
}, "strip", z.ZodTypeAny, {
|
|
4637
|
+
cloudInference?: boolean | undefined;
|
|
4638
|
+
literatureRetrieval?: boolean | undefined;
|
|
4639
|
+
deviceConnection?: boolean | undefined;
|
|
4640
|
+
}, {
|
|
4641
|
+
cloudInference?: boolean | undefined;
|
|
4642
|
+
literatureRetrieval?: boolean | undefined;
|
|
4643
|
+
deviceConnection?: boolean | undefined;
|
|
4644
|
+
}>>>;
|
|
4645
|
+
inference: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4646
|
+
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4647
|
+
endpoint: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4648
|
+
model: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4649
|
+
}, "strip", z.ZodTypeAny, {
|
|
4650
|
+
model?: string | undefined;
|
|
4651
|
+
provider?: string | undefined;
|
|
4652
|
+
endpoint?: string | undefined;
|
|
4653
|
+
}, {
|
|
4654
|
+
model?: string | undefined;
|
|
4655
|
+
provider?: string | undefined;
|
|
4656
|
+
endpoint?: string | undefined;
|
|
4657
|
+
}>>>;
|
|
4658
|
+
vaultDir: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4659
|
+
}, "strip", z.ZodTypeAny, {
|
|
4660
|
+
egress?: {
|
|
4661
|
+
cloudInference?: boolean | undefined;
|
|
4662
|
+
literatureRetrieval?: boolean | undefined;
|
|
4663
|
+
deviceConnection?: boolean | undefined;
|
|
4664
|
+
} | undefined;
|
|
4665
|
+
inference?: {
|
|
4666
|
+
model?: string | undefined;
|
|
4667
|
+
provider?: string | undefined;
|
|
4668
|
+
endpoint?: string | undefined;
|
|
4669
|
+
} | undefined;
|
|
4670
|
+
vaultDir?: string | undefined;
|
|
4671
|
+
}, {
|
|
4672
|
+
egress?: {
|
|
4673
|
+
cloudInference?: boolean | undefined;
|
|
4674
|
+
literatureRetrieval?: boolean | undefined;
|
|
4675
|
+
deviceConnection?: boolean | undefined;
|
|
4676
|
+
} | undefined;
|
|
4677
|
+
inference?: {
|
|
4678
|
+
model?: string | undefined;
|
|
4679
|
+
provider?: string | undefined;
|
|
4680
|
+
endpoint?: string | undefined;
|
|
4681
|
+
} | undefined;
|
|
4682
|
+
vaultDir?: string | undefined;
|
|
4683
|
+
}>>>;
|
|
4684
|
+
fleet: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4685
|
+
blackboardDbPath: z.ZodOptional<z.ZodString>;
|
|
4686
|
+
blackboardNamespace: z.ZodOptional<z.ZodString>;
|
|
4687
|
+
blackboardSubject: z.ZodOptional<z.ZodString>;
|
|
4688
|
+
maxRounds: z.ZodOptional<z.ZodNumber>;
|
|
4689
|
+
}, "strip", z.ZodTypeAny, {
|
|
4690
|
+
blackboardDbPath?: string | undefined;
|
|
4691
|
+
blackboardNamespace?: string | undefined;
|
|
4692
|
+
blackboardSubject?: string | undefined;
|
|
4693
|
+
maxRounds?: number | undefined;
|
|
4694
|
+
}, {
|
|
4695
|
+
blackboardDbPath?: string | undefined;
|
|
4696
|
+
blackboardNamespace?: string | undefined;
|
|
4697
|
+
blackboardSubject?: string | undefined;
|
|
4698
|
+
maxRounds?: number | undefined;
|
|
4699
|
+
}>>>;
|
|
4700
|
+
vault: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4701
|
+
obsidian: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4702
|
+
name: z.ZodOptional<z.ZodString>;
|
|
4703
|
+
mcpCommand: z.ZodOptional<z.ZodString>;
|
|
4704
|
+
mcpArgs: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
|
|
4705
|
+
mcpEnv: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>>;
|
|
4706
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4707
|
+
toolNames: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4708
|
+
readNote: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4709
|
+
writeNote: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4710
|
+
listNotes: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4711
|
+
}, "strip", z.ZodTypeAny, {
|
|
4712
|
+
readNote?: string | undefined;
|
|
4713
|
+
writeNote?: string | undefined;
|
|
4714
|
+
listNotes?: string | undefined;
|
|
4715
|
+
}, {
|
|
4716
|
+
readNote?: string | undefined;
|
|
4717
|
+
writeNote?: string | undefined;
|
|
4718
|
+
listNotes?: string | undefined;
|
|
4719
|
+
}>>>;
|
|
4720
|
+
}, "strip", z.ZodTypeAny, {
|
|
4721
|
+
name?: string | undefined;
|
|
4722
|
+
enabled?: boolean | undefined;
|
|
4723
|
+
mcpCommand?: string | undefined;
|
|
4724
|
+
mcpArgs?: string[] | undefined;
|
|
4725
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
4726
|
+
toolNames?: {
|
|
4727
|
+
readNote?: string | undefined;
|
|
4728
|
+
writeNote?: string | undefined;
|
|
4729
|
+
listNotes?: string | undefined;
|
|
4730
|
+
} | undefined;
|
|
4731
|
+
}, {
|
|
4732
|
+
name?: string | undefined;
|
|
4733
|
+
enabled?: boolean | undefined;
|
|
4734
|
+
mcpCommand?: string | undefined;
|
|
4735
|
+
mcpArgs?: string[] | undefined;
|
|
4736
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
4737
|
+
toolNames?: {
|
|
4738
|
+
readNote?: string | undefined;
|
|
4739
|
+
writeNote?: string | undefined;
|
|
4740
|
+
listNotes?: string | undefined;
|
|
4741
|
+
} | undefined;
|
|
4742
|
+
}>>>;
|
|
4743
|
+
}, "strip", z.ZodTypeAny, {
|
|
4744
|
+
obsidian?: {
|
|
4745
|
+
name?: string | undefined;
|
|
4746
|
+
enabled?: boolean | undefined;
|
|
4747
|
+
mcpCommand?: string | undefined;
|
|
4748
|
+
mcpArgs?: string[] | undefined;
|
|
4749
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
4750
|
+
toolNames?: {
|
|
4751
|
+
readNote?: string | undefined;
|
|
4752
|
+
writeNote?: string | undefined;
|
|
4753
|
+
listNotes?: string | undefined;
|
|
4754
|
+
} | undefined;
|
|
4755
|
+
} | undefined;
|
|
4756
|
+
}, {
|
|
4757
|
+
obsidian?: {
|
|
4758
|
+
name?: string | undefined;
|
|
4759
|
+
enabled?: boolean | undefined;
|
|
4760
|
+
mcpCommand?: string | undefined;
|
|
4761
|
+
mcpArgs?: string[] | undefined;
|
|
4762
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
4763
|
+
toolNames?: {
|
|
4764
|
+
readNote?: string | undefined;
|
|
4765
|
+
writeNote?: string | undefined;
|
|
4766
|
+
listNotes?: string | undefined;
|
|
4767
|
+
} | undefined;
|
|
4768
|
+
} | undefined;
|
|
4769
|
+
}>>>;
|
|
4770
|
+
taskInbox: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4771
|
+
gmailEgress: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4772
|
+
}, "strip", z.ZodTypeAny, {
|
|
4773
|
+
gmailEgress?: boolean | undefined;
|
|
4774
|
+
}, {
|
|
4775
|
+
gmailEgress?: boolean | undefined;
|
|
4776
|
+
}>>>;
|
|
4777
|
+
calendar: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4778
|
+
egress: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4779
|
+
cloudCalendar: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4780
|
+
}, "strip", z.ZodTypeAny, {
|
|
4781
|
+
cloudCalendar?: boolean | undefined;
|
|
4782
|
+
}, {
|
|
4783
|
+
cloudCalendar?: boolean | undefined;
|
|
4784
|
+
}>>>;
|
|
4785
|
+
connector: z.ZodOptional<z.ZodDefault<z.ZodEnum<["ics", "google"]>>>;
|
|
4786
|
+
timezone: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4787
|
+
}, "strip", z.ZodTypeAny, {
|
|
4788
|
+
egress?: {
|
|
4789
|
+
cloudCalendar?: boolean | undefined;
|
|
4790
|
+
} | undefined;
|
|
4791
|
+
connector?: "ics" | "google" | undefined;
|
|
4792
|
+
timezone?: string | undefined;
|
|
4793
|
+
}, {
|
|
4794
|
+
egress?: {
|
|
4795
|
+
cloudCalendar?: boolean | undefined;
|
|
4796
|
+
} | undefined;
|
|
4797
|
+
connector?: "ics" | "google" | undefined;
|
|
4798
|
+
timezone?: string | undefined;
|
|
4799
|
+
}>>>;
|
|
4800
|
+
research: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4801
|
+
egress: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4802
|
+
onlineResearch: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4803
|
+
}, "strip", z.ZodTypeAny, {
|
|
4804
|
+
onlineResearch?: boolean | undefined;
|
|
4805
|
+
}, {
|
|
4806
|
+
onlineResearch?: boolean | undefined;
|
|
4807
|
+
}>>>;
|
|
4808
|
+
}, "strip", z.ZodTypeAny, {
|
|
4809
|
+
egress?: {
|
|
4810
|
+
onlineResearch?: boolean | undefined;
|
|
4811
|
+
} | undefined;
|
|
4812
|
+
}, {
|
|
4813
|
+
egress?: {
|
|
4814
|
+
onlineResearch?: boolean | undefined;
|
|
4815
|
+
} | undefined;
|
|
4816
|
+
}>>>;
|
|
4817
|
+
tools: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4818
|
+
mcpBridge: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4819
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4820
|
+
server: z.ZodOptional<z.ZodObject<{
|
|
4821
|
+
command: z.ZodOptional<z.ZodString>;
|
|
4822
|
+
args: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodString, "many">>>;
|
|
4823
|
+
}, "strip", z.ZodTypeAny, {
|
|
4824
|
+
command?: string | undefined;
|
|
4825
|
+
args?: string[] | undefined;
|
|
4826
|
+
}, {
|
|
4827
|
+
command?: string | undefined;
|
|
4828
|
+
args?: string[] | undefined;
|
|
4829
|
+
}>>;
|
|
4830
|
+
}, "strip", z.ZodTypeAny, {
|
|
4831
|
+
enabled?: boolean | undefined;
|
|
4832
|
+
server?: {
|
|
4833
|
+
command?: string | undefined;
|
|
4834
|
+
args?: string[] | undefined;
|
|
4835
|
+
} | undefined;
|
|
4836
|
+
}, {
|
|
4837
|
+
enabled?: boolean | undefined;
|
|
4838
|
+
server?: {
|
|
4839
|
+
command?: string | undefined;
|
|
4840
|
+
args?: string[] | undefined;
|
|
4841
|
+
} | undefined;
|
|
4842
|
+
}>>>;
|
|
4843
|
+
}, "strip", z.ZodTypeAny, {
|
|
4844
|
+
mcpBridge?: {
|
|
4845
|
+
enabled?: boolean | undefined;
|
|
4846
|
+
server?: {
|
|
4847
|
+
command?: string | undefined;
|
|
4848
|
+
args?: string[] | undefined;
|
|
4849
|
+
} | undefined;
|
|
4850
|
+
} | undefined;
|
|
4851
|
+
}, {
|
|
4852
|
+
mcpBridge?: {
|
|
4853
|
+
enabled?: boolean | undefined;
|
|
4854
|
+
server?: {
|
|
4855
|
+
command?: string | undefined;
|
|
4856
|
+
args?: string[] | undefined;
|
|
4857
|
+
} | undefined;
|
|
4858
|
+
} | undefined;
|
|
4859
|
+
}>>>;
|
|
4860
|
+
security: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4861
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4862
|
+
failClosed: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4863
|
+
timeoutMs: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
4864
|
+
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
4865
|
+
maxTurns: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
4866
|
+
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4867
|
+
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
4868
|
+
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4869
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4870
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
4871
|
+
}, "strip", z.ZodTypeAny, {
|
|
4872
|
+
maxUsd?: number | null | undefined;
|
|
4873
|
+
}, {
|
|
4874
|
+
maxUsd?: number | null | undefined;
|
|
4875
|
+
}>>>;
|
|
4876
|
+
scanners: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
4877
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
4878
|
+
type: z.ZodString;
|
|
4879
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
4880
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
4881
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
4882
|
+
command: z.ZodOptional<z.ZodString>;
|
|
4883
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
4884
|
+
required: z.ZodBoolean;
|
|
4885
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
4886
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
4887
|
+
/** Human-readable label (defaults to type if not set). */
|
|
4888
|
+
label: z.ZodOptional<z.ZodString>;
|
|
4889
|
+
}, "strip", z.ZodTypeAny, {
|
|
4890
|
+
type: string;
|
|
4891
|
+
required: boolean;
|
|
4892
|
+
plugin?: string | undefined;
|
|
4893
|
+
command?: string | undefined;
|
|
4894
|
+
config?: Record<string, unknown> | undefined;
|
|
4895
|
+
label?: string | undefined;
|
|
4896
|
+
}, {
|
|
4897
|
+
type: string;
|
|
4898
|
+
required: boolean;
|
|
4899
|
+
plugin?: string | undefined;
|
|
4900
|
+
command?: string | undefined;
|
|
4901
|
+
config?: Record<string, unknown> | undefined;
|
|
4902
|
+
label?: string | undefined;
|
|
4903
|
+
}>, "many">>>;
|
|
4904
|
+
standaloneBlockOn: z.ZodOptional<z.ZodDefault<z.ZodEnum<["critical", "important"]>>>;
|
|
4905
|
+
hub: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4906
|
+
diff: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4907
|
+
mode: z.ZodOptional<z.ZodDefault<z.ZodEnum<["estimated-files", "git-diff"]>>>;
|
|
4908
|
+
baseRef: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
4909
|
+
expandWithGraph: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4910
|
+
}, "strip", z.ZodTypeAny, {
|
|
4911
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
4912
|
+
baseRef?: string | undefined;
|
|
4913
|
+
expandWithGraph?: boolean | undefined;
|
|
2181
4914
|
}, {
|
|
4915
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
4916
|
+
baseRef?: string | undefined;
|
|
4917
|
+
expandWithGraph?: boolean | undefined;
|
|
4918
|
+
}>>>;
|
|
4919
|
+
supplyChain: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4920
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4921
|
+
scanners: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
4922
|
+
/** Strategy type — built-in name OR any custom name (e.g. "k6", "anchor-verify", "slither"). */
|
|
4923
|
+
type: z.ZodString;
|
|
4924
|
+
/** Path to a custom plugin module (for type "custom" or any non-built-in type). */
|
|
4925
|
+
plugin: z.ZodOptional<z.ZodString>;
|
|
4926
|
+
/** Shell command to run directly — shorthand alternative to writing a plugin file. */
|
|
4927
|
+
command: z.ZodOptional<z.ZodString>;
|
|
4928
|
+
/** Whether this strategy must pass for the sprint to pass. */
|
|
4929
|
+
required: z.ZodBoolean;
|
|
4930
|
+
/** Arbitrary config passed to the evaluator plugin. */
|
|
4931
|
+
config: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
4932
|
+
/** Human-readable label (defaults to type if not set). */
|
|
4933
|
+
label: z.ZodOptional<z.ZodString>;
|
|
4934
|
+
}, "strip", z.ZodTypeAny, {
|
|
4935
|
+
type: string;
|
|
4936
|
+
required: boolean;
|
|
4937
|
+
plugin?: string | undefined;
|
|
4938
|
+
command?: string | undefined;
|
|
4939
|
+
config?: Record<string, unknown> | undefined;
|
|
4940
|
+
label?: string | undefined;
|
|
4941
|
+
}, {
|
|
4942
|
+
type: string;
|
|
4943
|
+
required: boolean;
|
|
4944
|
+
plugin?: string | undefined;
|
|
4945
|
+
command?: string | undefined;
|
|
4946
|
+
config?: Record<string, unknown> | undefined;
|
|
4947
|
+
label?: string | undefined;
|
|
4948
|
+
}>, "many">>>;
|
|
4949
|
+
}, "strip", z.ZodTypeAny, {
|
|
2182
4950
|
enabled?: boolean | undefined;
|
|
2183
|
-
|
|
2184
|
-
|
|
4951
|
+
scanners?: {
|
|
4952
|
+
type: string;
|
|
4953
|
+
required: boolean;
|
|
4954
|
+
plugin?: string | undefined;
|
|
4955
|
+
command?: string | undefined;
|
|
4956
|
+
config?: Record<string, unknown> | undefined;
|
|
4957
|
+
label?: string | undefined;
|
|
4958
|
+
}[] | undefined;
|
|
4959
|
+
}, {
|
|
4960
|
+
enabled?: boolean | undefined;
|
|
4961
|
+
scanners?: {
|
|
4962
|
+
type: string;
|
|
4963
|
+
required: boolean;
|
|
4964
|
+
plugin?: string | undefined;
|
|
4965
|
+
command?: string | undefined;
|
|
4966
|
+
config?: Record<string, unknown> | undefined;
|
|
4967
|
+
label?: string | undefined;
|
|
4968
|
+
}[] | undefined;
|
|
2185
4969
|
}>>>;
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
4970
|
+
egress: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4971
|
+
onlineResearch: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4972
|
+
}, "strip", z.ZodTypeAny, {
|
|
4973
|
+
onlineResearch?: boolean | undefined;
|
|
4974
|
+
}, {
|
|
4975
|
+
onlineResearch?: boolean | undefined;
|
|
4976
|
+
}>>>;
|
|
4977
|
+
verifier: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
4978
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
4979
|
+
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
4980
|
+
maxTurns: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
4981
|
+
}, "strip", z.ZodTypeAny, {
|
|
4982
|
+
model?: string | undefined;
|
|
4983
|
+
maxTurns?: number | undefined;
|
|
2194
4984
|
enabled?: boolean | undefined;
|
|
2195
|
-
|
|
2196
|
-
|
|
2197
|
-
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
maxActiveLines: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
2201
|
-
}, "strip", z.ZodTypeAny, {
|
|
2202
|
-
maxActiveLines?: number | undefined;
|
|
2203
|
-
}, {
|
|
2204
|
-
maxActiveLines?: number | undefined;
|
|
2205
|
-
}>>>;
|
|
2206
|
-
chat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
2207
|
-
model: z.ZodOptional<z.ZodDefault<z.ZodString>>;
|
|
2208
|
-
provider: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
2209
|
-
endpoint: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodString>>>;
|
|
2210
|
-
providerConfig: z.ZodOptional<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
4985
|
+
}, {
|
|
4986
|
+
model?: string | undefined;
|
|
4987
|
+
maxTurns?: number | undefined;
|
|
4988
|
+
enabled?: boolean | undefined;
|
|
4989
|
+
}>>>;
|
|
2211
4990
|
}, "strip", z.ZodTypeAny, {
|
|
2212
4991
|
model?: string | undefined;
|
|
2213
4992
|
provider?: string | undefined;
|
|
2214
4993
|
endpoint?: string | null | undefined;
|
|
2215
4994
|
providerConfig?: Record<string, unknown> | undefined;
|
|
4995
|
+
budget?: {
|
|
4996
|
+
maxUsd?: number | null | undefined;
|
|
4997
|
+
} | undefined;
|
|
4998
|
+
maxTurns?: number | undefined;
|
|
4999
|
+
enabled?: boolean | undefined;
|
|
5000
|
+
timeoutMs?: number | undefined;
|
|
5001
|
+
egress?: {
|
|
5002
|
+
onlineResearch?: boolean | undefined;
|
|
5003
|
+
} | undefined;
|
|
5004
|
+
failClosed?: boolean | undefined;
|
|
5005
|
+
scanners?: {
|
|
5006
|
+
type: string;
|
|
5007
|
+
required: boolean;
|
|
5008
|
+
plugin?: string | undefined;
|
|
5009
|
+
command?: string | undefined;
|
|
5010
|
+
config?: Record<string, unknown> | undefined;
|
|
5011
|
+
label?: string | undefined;
|
|
5012
|
+
}[] | undefined;
|
|
5013
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
5014
|
+
hub?: boolean | undefined;
|
|
5015
|
+
diff?: {
|
|
5016
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
5017
|
+
baseRef?: string | undefined;
|
|
5018
|
+
expandWithGraph?: boolean | undefined;
|
|
5019
|
+
} | undefined;
|
|
5020
|
+
supplyChain?: {
|
|
5021
|
+
enabled?: boolean | undefined;
|
|
5022
|
+
scanners?: {
|
|
5023
|
+
type: string;
|
|
5024
|
+
required: boolean;
|
|
5025
|
+
plugin?: string | undefined;
|
|
5026
|
+
command?: string | undefined;
|
|
5027
|
+
config?: Record<string, unknown> | undefined;
|
|
5028
|
+
label?: string | undefined;
|
|
5029
|
+
}[] | undefined;
|
|
5030
|
+
} | undefined;
|
|
5031
|
+
verifier?: {
|
|
5032
|
+
model?: string | undefined;
|
|
5033
|
+
maxTurns?: number | undefined;
|
|
5034
|
+
enabled?: boolean | undefined;
|
|
5035
|
+
} | undefined;
|
|
2216
5036
|
}, {
|
|
2217
5037
|
model?: string | undefined;
|
|
2218
5038
|
provider?: string | undefined;
|
|
2219
5039
|
endpoint?: string | null | undefined;
|
|
2220
5040
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5041
|
+
budget?: {
|
|
5042
|
+
maxUsd?: number | null | undefined;
|
|
5043
|
+
} | undefined;
|
|
5044
|
+
maxTurns?: number | undefined;
|
|
5045
|
+
enabled?: boolean | undefined;
|
|
5046
|
+
timeoutMs?: number | undefined;
|
|
5047
|
+
egress?: {
|
|
5048
|
+
onlineResearch?: boolean | undefined;
|
|
5049
|
+
} | undefined;
|
|
5050
|
+
failClosed?: boolean | undefined;
|
|
5051
|
+
scanners?: {
|
|
5052
|
+
type: string;
|
|
5053
|
+
required: boolean;
|
|
5054
|
+
plugin?: string | undefined;
|
|
5055
|
+
command?: string | undefined;
|
|
5056
|
+
config?: Record<string, unknown> | undefined;
|
|
5057
|
+
label?: string | undefined;
|
|
5058
|
+
}[] | undefined;
|
|
5059
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
5060
|
+
hub?: boolean | undefined;
|
|
5061
|
+
diff?: {
|
|
5062
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
5063
|
+
baseRef?: string | undefined;
|
|
5064
|
+
expandWithGraph?: boolean | undefined;
|
|
5065
|
+
} | undefined;
|
|
5066
|
+
supplyChain?: {
|
|
5067
|
+
enabled?: boolean | undefined;
|
|
5068
|
+
scanners?: {
|
|
5069
|
+
type: string;
|
|
5070
|
+
required: boolean;
|
|
5071
|
+
plugin?: string | undefined;
|
|
5072
|
+
command?: string | undefined;
|
|
5073
|
+
config?: Record<string, unknown> | undefined;
|
|
5074
|
+
label?: string | undefined;
|
|
5075
|
+
}[] | undefined;
|
|
5076
|
+
} | undefined;
|
|
5077
|
+
verifier?: {
|
|
5078
|
+
model?: string | undefined;
|
|
5079
|
+
maxTurns?: number | undefined;
|
|
5080
|
+
enabled?: boolean | undefined;
|
|
5081
|
+
} | undefined;
|
|
2221
5082
|
}>>>;
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
|
|
2229
|
-
providers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
2230
|
-
roles: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
2231
|
-
name: z.ZodString;
|
|
2232
|
-
displayName: z.ZodString;
|
|
5083
|
+
seo: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5084
|
+
egress: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5085
|
+
"search-console": z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5086
|
+
"serp-provider": z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5087
|
+
"ai-visibility": z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5088
|
+
"site-crawl": z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5089
|
+
"ai-visibility-scrape": z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
2233
5090
|
}, "strip", z.ZodTypeAny, {
|
|
2234
|
-
|
|
2235
|
-
|
|
5091
|
+
"search-console"?: boolean | undefined;
|
|
5092
|
+
"serp-provider"?: boolean | undefined;
|
|
5093
|
+
"ai-visibility"?: boolean | undefined;
|
|
5094
|
+
"site-crawl"?: boolean | undefined;
|
|
5095
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
2236
5096
|
}, {
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
5097
|
+
"search-console"?: boolean | undefined;
|
|
5098
|
+
"serp-provider"?: boolean | undefined;
|
|
5099
|
+
"ai-visibility"?: boolean | undefined;
|
|
5100
|
+
"site-crawl"?: boolean | undefined;
|
|
5101
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
5102
|
+
}>>>;
|
|
5103
|
+
verifier: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5104
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5105
|
+
}, "strip", z.ZodTypeAny, {
|
|
5106
|
+
enabled?: boolean | undefined;
|
|
5107
|
+
}, {
|
|
5108
|
+
enabled?: boolean | undefined;
|
|
5109
|
+
}>>>;
|
|
5110
|
+
budget: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5111
|
+
maxUsd: z.ZodOptional<z.ZodOptional<z.ZodNullable<z.ZodNumber>>>;
|
|
5112
|
+
}, "strip", z.ZodTypeAny, {
|
|
5113
|
+
maxUsd?: number | null | undefined;
|
|
5114
|
+
}, {
|
|
5115
|
+
maxUsd?: number | null | undefined;
|
|
5116
|
+
}>>>;
|
|
5117
|
+
defaultTarget: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
5118
|
+
blockThreshold: z.ZodOptional<z.ZodDefault<z.ZodEnum<["never", "any-uncited", "critical-uncited"]>>>;
|
|
5119
|
+
serp: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5120
|
+
provider: z.ZodOptional<z.ZodDefault<z.ZodEnum<["dataforseo", "damcrawler"]>>>;
|
|
5121
|
+
}, "strip", z.ZodTypeAny, {
|
|
5122
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
5123
|
+
}, {
|
|
5124
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
5125
|
+
}>>>;
|
|
5126
|
+
aiVisibility: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5127
|
+
samplesPerPrompt: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
5128
|
+
engines: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
5129
|
+
engine: z.ZodEnum<["anthropic", "openai", "perplexity"]>;
|
|
5130
|
+
/** Fixed USD price per grounded-search call for this engine. Default 0. */
|
|
5131
|
+
perCallUsd: z.ZodDefault<z.ZodNumber>;
|
|
5132
|
+
}, "strip", z.ZodTypeAny, {
|
|
5133
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5134
|
+
perCallUsd: number;
|
|
5135
|
+
}, {
|
|
5136
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5137
|
+
perCallUsd?: number | undefined;
|
|
5138
|
+
}>, "many">>>;
|
|
5139
|
+
judge: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5140
|
+
enabled: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
|
|
5141
|
+
model: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
5142
|
+
}, "strip", z.ZodTypeAny, {
|
|
5143
|
+
model?: string | undefined;
|
|
5144
|
+
enabled?: boolean | undefined;
|
|
5145
|
+
}, {
|
|
5146
|
+
model?: string | undefined;
|
|
5147
|
+
enabled?: boolean | undefined;
|
|
5148
|
+
}>>>;
|
|
5149
|
+
scrape: z.ZodOptional<z.ZodOptional<z.ZodObject<{
|
|
5150
|
+
engines: z.ZodOptional<z.ZodDefault<z.ZodArray<z.ZodEnum<["chatgpt-ui", "perplexity-ui"]>, "many">>>;
|
|
5151
|
+
authSession: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
5152
|
+
proxy: z.ZodOptional<z.ZodOptional<z.ZodString>>;
|
|
5153
|
+
proxyUsdPerScrape: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
5154
|
+
maxPerWindow: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
5155
|
+
windowMs: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
5156
|
+
maxProxyUsd: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
|
|
5157
|
+
}, "strip", z.ZodTypeAny, {
|
|
5158
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5159
|
+
authSession?: string | undefined;
|
|
5160
|
+
proxy?: string | undefined;
|
|
5161
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5162
|
+
maxPerWindow?: number | undefined;
|
|
5163
|
+
windowMs?: number | undefined;
|
|
5164
|
+
maxProxyUsd?: number | undefined;
|
|
5165
|
+
}, {
|
|
5166
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5167
|
+
authSession?: string | undefined;
|
|
5168
|
+
proxy?: string | undefined;
|
|
5169
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5170
|
+
maxPerWindow?: number | undefined;
|
|
5171
|
+
windowMs?: number | undefined;
|
|
5172
|
+
maxProxyUsd?: number | undefined;
|
|
5173
|
+
}>>>;
|
|
5174
|
+
}, "strip", z.ZodTypeAny, {
|
|
5175
|
+
samplesPerPrompt?: number | undefined;
|
|
5176
|
+
engines?: {
|
|
5177
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5178
|
+
perCallUsd: number;
|
|
5179
|
+
}[] | undefined;
|
|
5180
|
+
judge?: {
|
|
5181
|
+
model?: string | undefined;
|
|
5182
|
+
enabled?: boolean | undefined;
|
|
5183
|
+
} | undefined;
|
|
5184
|
+
scrape?: {
|
|
5185
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5186
|
+
authSession?: string | undefined;
|
|
5187
|
+
proxy?: string | undefined;
|
|
5188
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5189
|
+
maxPerWindow?: number | undefined;
|
|
5190
|
+
windowMs?: number | undefined;
|
|
5191
|
+
maxProxyUsd?: number | undefined;
|
|
5192
|
+
} | undefined;
|
|
5193
|
+
}, {
|
|
5194
|
+
samplesPerPrompt?: number | undefined;
|
|
5195
|
+
engines?: {
|
|
5196
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5197
|
+
perCallUsd?: number | undefined;
|
|
5198
|
+
}[] | undefined;
|
|
5199
|
+
judge?: {
|
|
5200
|
+
model?: string | undefined;
|
|
5201
|
+
enabled?: boolean | undefined;
|
|
5202
|
+
} | undefined;
|
|
5203
|
+
scrape?: {
|
|
5204
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5205
|
+
authSession?: string | undefined;
|
|
5206
|
+
proxy?: string | undefined;
|
|
5207
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5208
|
+
maxPerWindow?: number | undefined;
|
|
5209
|
+
windowMs?: number | undefined;
|
|
5210
|
+
maxProxyUsd?: number | undefined;
|
|
5211
|
+
} | undefined;
|
|
5212
|
+
}>>>;
|
|
2241
5213
|
}, "strip", z.ZodTypeAny, {
|
|
2242
|
-
|
|
2243
|
-
|
|
2244
|
-
|
|
2245
|
-
|
|
2246
|
-
|
|
2247
|
-
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
5214
|
+
budget?: {
|
|
5215
|
+
maxUsd?: number | null | undefined;
|
|
5216
|
+
} | undefined;
|
|
5217
|
+
egress?: {
|
|
5218
|
+
"search-console"?: boolean | undefined;
|
|
5219
|
+
"serp-provider"?: boolean | undefined;
|
|
5220
|
+
"ai-visibility"?: boolean | undefined;
|
|
5221
|
+
"site-crawl"?: boolean | undefined;
|
|
5222
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
5223
|
+
} | undefined;
|
|
5224
|
+
verifier?: {
|
|
5225
|
+
enabled?: boolean | undefined;
|
|
5226
|
+
} | undefined;
|
|
5227
|
+
defaultTarget?: string | undefined;
|
|
5228
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
5229
|
+
serp?: {
|
|
5230
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
5231
|
+
} | undefined;
|
|
5232
|
+
aiVisibility?: {
|
|
5233
|
+
samplesPerPrompt?: number | undefined;
|
|
5234
|
+
engines?: {
|
|
5235
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5236
|
+
perCallUsd: number;
|
|
5237
|
+
}[] | undefined;
|
|
5238
|
+
judge?: {
|
|
5239
|
+
model?: string | undefined;
|
|
5240
|
+
enabled?: boolean | undefined;
|
|
5241
|
+
} | undefined;
|
|
5242
|
+
scrape?: {
|
|
5243
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5244
|
+
authSession?: string | undefined;
|
|
5245
|
+
proxy?: string | undefined;
|
|
5246
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5247
|
+
maxPerWindow?: number | undefined;
|
|
5248
|
+
windowMs?: number | undefined;
|
|
5249
|
+
maxProxyUsd?: number | undefined;
|
|
5250
|
+
} | undefined;
|
|
5251
|
+
} | undefined;
|
|
2251
5252
|
}, {
|
|
2252
|
-
|
|
2253
|
-
|
|
2254
|
-
|
|
2255
|
-
|
|
2256
|
-
|
|
2257
|
-
|
|
2258
|
-
|
|
2259
|
-
|
|
2260
|
-
|
|
2261
|
-
|
|
2262
|
-
|
|
5253
|
+
budget?: {
|
|
5254
|
+
maxUsd?: number | null | undefined;
|
|
5255
|
+
} | undefined;
|
|
5256
|
+
egress?: {
|
|
5257
|
+
"search-console"?: boolean | undefined;
|
|
5258
|
+
"serp-provider"?: boolean | undefined;
|
|
5259
|
+
"ai-visibility"?: boolean | undefined;
|
|
5260
|
+
"site-crawl"?: boolean | undefined;
|
|
5261
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
5262
|
+
} | undefined;
|
|
5263
|
+
verifier?: {
|
|
5264
|
+
enabled?: boolean | undefined;
|
|
5265
|
+
} | undefined;
|
|
5266
|
+
defaultTarget?: string | undefined;
|
|
5267
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
5268
|
+
serp?: {
|
|
5269
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
5270
|
+
} | undefined;
|
|
5271
|
+
aiVisibility?: {
|
|
5272
|
+
samplesPerPrompt?: number | undefined;
|
|
5273
|
+
engines?: {
|
|
5274
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5275
|
+
perCallUsd?: number | undefined;
|
|
5276
|
+
}[] | undefined;
|
|
5277
|
+
judge?: {
|
|
5278
|
+
model?: string | undefined;
|
|
5279
|
+
enabled?: boolean | undefined;
|
|
5280
|
+
} | undefined;
|
|
5281
|
+
scrape?: {
|
|
5282
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5283
|
+
authSession?: string | undefined;
|
|
5284
|
+
proxy?: string | undefined;
|
|
5285
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5286
|
+
maxPerWindow?: number | undefined;
|
|
5287
|
+
windowMs?: number | undefined;
|
|
5288
|
+
maxProxyUsd?: number | undefined;
|
|
5289
|
+
} | undefined;
|
|
5290
|
+
} | undefined;
|
|
5291
|
+
}>>>;
|
|
2263
5292
|
} & {
|
|
2264
5293
|
project: z.ZodObject<{
|
|
2265
5294
|
name: z.ZodOptional<z.ZodString>;
|
|
@@ -2294,6 +5323,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2294
5323
|
}, "strip", z.ZodTypeAny, {
|
|
2295
5324
|
mode: "greenfield" | "brownfield";
|
|
2296
5325
|
name?: string | undefined;
|
|
5326
|
+
preset?: string | undefined;
|
|
2297
5327
|
stack?: {
|
|
2298
5328
|
frontend?: string | undefined;
|
|
2299
5329
|
backend?: string | undefined;
|
|
@@ -2303,11 +5333,11 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2303
5333
|
language?: string | undefined;
|
|
2304
5334
|
other?: string[] | undefined;
|
|
2305
5335
|
} | undefined;
|
|
2306
|
-
preset?: string | undefined;
|
|
2307
5336
|
description?: string | undefined;
|
|
2308
5337
|
}, {
|
|
2309
5338
|
mode: "greenfield" | "brownfield";
|
|
2310
5339
|
name?: string | undefined;
|
|
5340
|
+
preset?: string | undefined;
|
|
2311
5341
|
stack?: {
|
|
2312
5342
|
frontend?: string | undefined;
|
|
2313
5343
|
backend?: string | undefined;
|
|
@@ -2317,13 +5347,13 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2317
5347
|
language?: string | undefined;
|
|
2318
5348
|
other?: string[] | undefined;
|
|
2319
5349
|
} | undefined;
|
|
2320
|
-
preset?: string | undefined;
|
|
2321
5350
|
description?: string | undefined;
|
|
2322
5351
|
}>;
|
|
2323
5352
|
}, "strip", z.ZodTypeAny, {
|
|
2324
5353
|
project: {
|
|
2325
5354
|
mode: "greenfield" | "brownfield";
|
|
2326
5355
|
name?: string | undefined;
|
|
5356
|
+
preset?: string | undefined;
|
|
2327
5357
|
stack?: {
|
|
2328
5358
|
frontend?: string | undefined;
|
|
2329
5359
|
backend?: string | undefined;
|
|
@@ -2333,7 +5363,6 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2333
5363
|
language?: string | undefined;
|
|
2334
5364
|
other?: string[] | undefined;
|
|
2335
5365
|
} | undefined;
|
|
2336
|
-
preset?: string | undefined;
|
|
2337
5366
|
description?: string | undefined;
|
|
2338
5367
|
};
|
|
2339
5368
|
planner?: {
|
|
@@ -2343,12 +5372,20 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2343
5372
|
provider?: string | undefined;
|
|
2344
5373
|
endpoint?: string | null | undefined;
|
|
2345
5374
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5375
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5376
|
+
budget?: {
|
|
5377
|
+
maxUsd?: number | null | undefined;
|
|
5378
|
+
} | undefined;
|
|
2346
5379
|
} | undefined;
|
|
2347
5380
|
curator?: {
|
|
2348
5381
|
model?: string | undefined;
|
|
2349
5382
|
provider?: string | undefined;
|
|
2350
5383
|
endpoint?: string | null | undefined;
|
|
2351
5384
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5385
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5386
|
+
budget?: {
|
|
5387
|
+
maxUsd?: number | null | undefined;
|
|
5388
|
+
} | undefined;
|
|
2352
5389
|
maxTurns?: number | undefined;
|
|
2353
5390
|
enabled?: boolean | undefined;
|
|
2354
5391
|
} | undefined;
|
|
@@ -2357,15 +5394,24 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2357
5394
|
provider?: string | undefined;
|
|
2358
5395
|
endpoint?: string | null | undefined;
|
|
2359
5396
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5397
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5398
|
+
budget?: {
|
|
5399
|
+
maxUsd?: number | null | undefined;
|
|
5400
|
+
} | undefined;
|
|
2360
5401
|
maxTurnsPerSprint?: number | undefined;
|
|
2361
5402
|
autoCommit?: boolean | undefined;
|
|
2362
5403
|
branchPattern?: string | undefined;
|
|
5404
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
2363
5405
|
} | undefined;
|
|
2364
5406
|
evaluator?: {
|
|
2365
5407
|
model?: string | undefined;
|
|
2366
5408
|
provider?: string | undefined;
|
|
2367
5409
|
endpoint?: string | null | undefined;
|
|
2368
5410
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5411
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5412
|
+
budget?: {
|
|
5413
|
+
maxUsd?: number | null | undefined;
|
|
5414
|
+
} | undefined;
|
|
2369
5415
|
strategies?: {
|
|
2370
5416
|
type?: string | undefined;
|
|
2371
5417
|
plugin?: string | undefined;
|
|
@@ -2385,10 +5431,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2385
5431
|
sprint?: {
|
|
2386
5432
|
maxSprints?: number | undefined;
|
|
2387
5433
|
requireContracts?: boolean | undefined;
|
|
2388
|
-
sprintSize?: "
|
|
5434
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
2389
5435
|
} | undefined;
|
|
2390
5436
|
pipeline?: {
|
|
2391
|
-
mode?: "
|
|
5437
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
2392
5438
|
maxIterations?: number | undefined;
|
|
2393
5439
|
maxCheckpointIterations?: number | undefined;
|
|
2394
5440
|
requireApproval?: boolean | undefined;
|
|
@@ -2403,7 +5449,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2403
5449
|
eventQueueBound?: number | undefined;
|
|
2404
5450
|
worktreeRoot?: string | undefined;
|
|
2405
5451
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
2406
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
5452
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
2407
5453
|
} | undefined;
|
|
2408
5454
|
commands?: {
|
|
2409
5455
|
install?: string | undefined;
|
|
@@ -2424,7 +5470,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2424
5470
|
enabled?: boolean | undefined;
|
|
2425
5471
|
tokensavePath?: string | undefined;
|
|
2426
5472
|
autoSync?: boolean | undefined;
|
|
2427
|
-
languageTier?: "
|
|
5473
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
2428
5474
|
manifestPath?: string | undefined;
|
|
2429
5475
|
syncTimeoutMs?: number | undefined;
|
|
2430
5476
|
queryTimeoutMs?: number | undefined;
|
|
@@ -2460,9 +5506,9 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2460
5506
|
} | undefined;
|
|
2461
5507
|
observability?: {
|
|
2462
5508
|
providers?: {
|
|
2463
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2464
5509
|
name: string;
|
|
2465
5510
|
enabled: boolean;
|
|
5511
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2466
5512
|
mcpCommand: string;
|
|
2467
5513
|
mcpArgs?: string[] | undefined;
|
|
2468
5514
|
mcpEnv?: Record<string, string> | undefined;
|
|
@@ -2487,7 +5533,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2487
5533
|
providers?: Record<string, string> | undefined;
|
|
2488
5534
|
displayName?: string | undefined;
|
|
2489
5535
|
memoryNamespace?: string | undefined;
|
|
2490
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
5536
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
2491
5537
|
roles?: {
|
|
2492
5538
|
name: string;
|
|
2493
5539
|
displayName: string;
|
|
@@ -2495,10 +5541,155 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2495
5541
|
guardrails?: unknown;
|
|
2496
5542
|
}> | undefined;
|
|
2497
5543
|
defaultTeam?: string | undefined;
|
|
5544
|
+
medical?: {
|
|
5545
|
+
egress?: {
|
|
5546
|
+
cloudInference?: boolean | undefined;
|
|
5547
|
+
literatureRetrieval?: boolean | undefined;
|
|
5548
|
+
deviceConnection?: boolean | undefined;
|
|
5549
|
+
} | undefined;
|
|
5550
|
+
inference?: {
|
|
5551
|
+
model?: string | undefined;
|
|
5552
|
+
provider?: string | undefined;
|
|
5553
|
+
endpoint?: string | undefined;
|
|
5554
|
+
} | undefined;
|
|
5555
|
+
vaultDir?: string | undefined;
|
|
5556
|
+
} | undefined;
|
|
5557
|
+
fleet?: {
|
|
5558
|
+
blackboardDbPath?: string | undefined;
|
|
5559
|
+
blackboardNamespace?: string | undefined;
|
|
5560
|
+
blackboardSubject?: string | undefined;
|
|
5561
|
+
maxRounds?: number | undefined;
|
|
5562
|
+
} | undefined;
|
|
5563
|
+
vault?: {
|
|
5564
|
+
obsidian?: {
|
|
5565
|
+
name?: string | undefined;
|
|
5566
|
+
enabled?: boolean | undefined;
|
|
5567
|
+
mcpCommand?: string | undefined;
|
|
5568
|
+
mcpArgs?: string[] | undefined;
|
|
5569
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
5570
|
+
toolNames?: {
|
|
5571
|
+
readNote?: string | undefined;
|
|
5572
|
+
writeNote?: string | undefined;
|
|
5573
|
+
listNotes?: string | undefined;
|
|
5574
|
+
} | undefined;
|
|
5575
|
+
} | undefined;
|
|
5576
|
+
} | undefined;
|
|
5577
|
+
taskInbox?: {
|
|
5578
|
+
gmailEgress?: boolean | undefined;
|
|
5579
|
+
} | undefined;
|
|
5580
|
+
calendar?: {
|
|
5581
|
+
egress?: {
|
|
5582
|
+
cloudCalendar?: boolean | undefined;
|
|
5583
|
+
} | undefined;
|
|
5584
|
+
connector?: "ics" | "google" | undefined;
|
|
5585
|
+
timezone?: string | undefined;
|
|
5586
|
+
} | undefined;
|
|
5587
|
+
research?: {
|
|
5588
|
+
egress?: {
|
|
5589
|
+
onlineResearch?: boolean | undefined;
|
|
5590
|
+
} | undefined;
|
|
5591
|
+
} | undefined;
|
|
5592
|
+
tools?: {
|
|
5593
|
+
mcpBridge?: {
|
|
5594
|
+
enabled?: boolean | undefined;
|
|
5595
|
+
server?: {
|
|
5596
|
+
command?: string | undefined;
|
|
5597
|
+
args?: string[] | undefined;
|
|
5598
|
+
} | undefined;
|
|
5599
|
+
} | undefined;
|
|
5600
|
+
} | undefined;
|
|
5601
|
+
security?: {
|
|
5602
|
+
model?: string | undefined;
|
|
5603
|
+
provider?: string | undefined;
|
|
5604
|
+
endpoint?: string | null | undefined;
|
|
5605
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
5606
|
+
budget?: {
|
|
5607
|
+
maxUsd?: number | null | undefined;
|
|
5608
|
+
} | undefined;
|
|
5609
|
+
maxTurns?: number | undefined;
|
|
5610
|
+
enabled?: boolean | undefined;
|
|
5611
|
+
timeoutMs?: number | undefined;
|
|
5612
|
+
egress?: {
|
|
5613
|
+
onlineResearch?: boolean | undefined;
|
|
5614
|
+
} | undefined;
|
|
5615
|
+
failClosed?: boolean | undefined;
|
|
5616
|
+
scanners?: {
|
|
5617
|
+
type: string;
|
|
5618
|
+
required: boolean;
|
|
5619
|
+
plugin?: string | undefined;
|
|
5620
|
+
command?: string | undefined;
|
|
5621
|
+
config?: Record<string, unknown> | undefined;
|
|
5622
|
+
label?: string | undefined;
|
|
5623
|
+
}[] | undefined;
|
|
5624
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
5625
|
+
hub?: boolean | undefined;
|
|
5626
|
+
diff?: {
|
|
5627
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
5628
|
+
baseRef?: string | undefined;
|
|
5629
|
+
expandWithGraph?: boolean | undefined;
|
|
5630
|
+
} | undefined;
|
|
5631
|
+
supplyChain?: {
|
|
5632
|
+
enabled?: boolean | undefined;
|
|
5633
|
+
scanners?: {
|
|
5634
|
+
type: string;
|
|
5635
|
+
required: boolean;
|
|
5636
|
+
plugin?: string | undefined;
|
|
5637
|
+
command?: string | undefined;
|
|
5638
|
+
config?: Record<string, unknown> | undefined;
|
|
5639
|
+
label?: string | undefined;
|
|
5640
|
+
}[] | undefined;
|
|
5641
|
+
} | undefined;
|
|
5642
|
+
verifier?: {
|
|
5643
|
+
model?: string | undefined;
|
|
5644
|
+
maxTurns?: number | undefined;
|
|
5645
|
+
enabled?: boolean | undefined;
|
|
5646
|
+
} | undefined;
|
|
5647
|
+
} | undefined;
|
|
5648
|
+
seo?: {
|
|
5649
|
+
budget?: {
|
|
5650
|
+
maxUsd?: number | null | undefined;
|
|
5651
|
+
} | undefined;
|
|
5652
|
+
egress?: {
|
|
5653
|
+
"search-console"?: boolean | undefined;
|
|
5654
|
+
"serp-provider"?: boolean | undefined;
|
|
5655
|
+
"ai-visibility"?: boolean | undefined;
|
|
5656
|
+
"site-crawl"?: boolean | undefined;
|
|
5657
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
5658
|
+
} | undefined;
|
|
5659
|
+
verifier?: {
|
|
5660
|
+
enabled?: boolean | undefined;
|
|
5661
|
+
} | undefined;
|
|
5662
|
+
defaultTarget?: string | undefined;
|
|
5663
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
5664
|
+
serp?: {
|
|
5665
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
5666
|
+
} | undefined;
|
|
5667
|
+
aiVisibility?: {
|
|
5668
|
+
samplesPerPrompt?: number | undefined;
|
|
5669
|
+
engines?: {
|
|
5670
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
5671
|
+
perCallUsd: number;
|
|
5672
|
+
}[] | undefined;
|
|
5673
|
+
judge?: {
|
|
5674
|
+
model?: string | undefined;
|
|
5675
|
+
enabled?: boolean | undefined;
|
|
5676
|
+
} | undefined;
|
|
5677
|
+
scrape?: {
|
|
5678
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
5679
|
+
authSession?: string | undefined;
|
|
5680
|
+
proxy?: string | undefined;
|
|
5681
|
+
proxyUsdPerScrape?: number | undefined;
|
|
5682
|
+
maxPerWindow?: number | undefined;
|
|
5683
|
+
windowMs?: number | undefined;
|
|
5684
|
+
maxProxyUsd?: number | undefined;
|
|
5685
|
+
} | undefined;
|
|
5686
|
+
} | undefined;
|
|
5687
|
+
} | undefined;
|
|
2498
5688
|
}, {
|
|
2499
5689
|
project: {
|
|
2500
5690
|
mode: "greenfield" | "brownfield";
|
|
2501
5691
|
name?: string | undefined;
|
|
5692
|
+
preset?: string | undefined;
|
|
2502
5693
|
stack?: {
|
|
2503
5694
|
frontend?: string | undefined;
|
|
2504
5695
|
backend?: string | undefined;
|
|
@@ -2508,7 +5699,6 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2508
5699
|
language?: string | undefined;
|
|
2509
5700
|
other?: string[] | undefined;
|
|
2510
5701
|
} | undefined;
|
|
2511
|
-
preset?: string | undefined;
|
|
2512
5702
|
description?: string | undefined;
|
|
2513
5703
|
};
|
|
2514
5704
|
planner?: {
|
|
@@ -2518,12 +5708,20 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2518
5708
|
provider?: string | undefined;
|
|
2519
5709
|
endpoint?: string | null | undefined;
|
|
2520
5710
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5711
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5712
|
+
budget?: {
|
|
5713
|
+
maxUsd?: number | null | undefined;
|
|
5714
|
+
} | undefined;
|
|
2521
5715
|
} | undefined;
|
|
2522
5716
|
curator?: {
|
|
2523
5717
|
model?: string | undefined;
|
|
2524
5718
|
provider?: string | undefined;
|
|
2525
5719
|
endpoint?: string | null | undefined;
|
|
2526
5720
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5721
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5722
|
+
budget?: {
|
|
5723
|
+
maxUsd?: number | null | undefined;
|
|
5724
|
+
} | undefined;
|
|
2527
5725
|
maxTurns?: number | undefined;
|
|
2528
5726
|
enabled?: boolean | undefined;
|
|
2529
5727
|
} | undefined;
|
|
@@ -2532,15 +5730,24 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2532
5730
|
provider?: string | undefined;
|
|
2533
5731
|
endpoint?: string | null | undefined;
|
|
2534
5732
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5733
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5734
|
+
budget?: {
|
|
5735
|
+
maxUsd?: number | null | undefined;
|
|
5736
|
+
} | undefined;
|
|
2535
5737
|
maxTurnsPerSprint?: number | undefined;
|
|
2536
5738
|
autoCommit?: boolean | undefined;
|
|
2537
5739
|
branchPattern?: string | undefined;
|
|
5740
|
+
parallelReadOnlyTools?: boolean | undefined;
|
|
2538
5741
|
} | undefined;
|
|
2539
5742
|
evaluator?: {
|
|
2540
5743
|
model?: string | undefined;
|
|
2541
5744
|
provider?: string | undefined;
|
|
2542
5745
|
endpoint?: string | null | undefined;
|
|
2543
5746
|
providerConfig?: Record<string, unknown> | undefined;
|
|
5747
|
+
effort?: "low" | "medium" | "high" | "xhigh" | "max" | undefined;
|
|
5748
|
+
budget?: {
|
|
5749
|
+
maxUsd?: number | null | undefined;
|
|
5750
|
+
} | undefined;
|
|
2544
5751
|
strategies?: {
|
|
2545
5752
|
type?: string | undefined;
|
|
2546
5753
|
plugin?: string | undefined;
|
|
@@ -2560,10 +5767,10 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2560
5767
|
sprint?: {
|
|
2561
5768
|
maxSprints?: number | undefined;
|
|
2562
5769
|
requireContracts?: boolean | undefined;
|
|
2563
|
-
sprintSize?: "
|
|
5770
|
+
sprintSize?: "medium" | "small" | "large" | undefined;
|
|
2564
5771
|
} | undefined;
|
|
2565
5772
|
pipeline?: {
|
|
2566
|
-
mode?: "
|
|
5773
|
+
mode?: "autopilot" | "careful" | undefined;
|
|
2567
5774
|
maxIterations?: number | undefined;
|
|
2568
5775
|
maxCheckpointIterations?: number | undefined;
|
|
2569
5776
|
requireApproval?: boolean | undefined;
|
|
@@ -2578,7 +5785,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2578
5785
|
eventQueueBound?: number | undefined;
|
|
2579
5786
|
worktreeRoot?: string | undefined;
|
|
2580
5787
|
cleanupWorktreeOnSuccess?: boolean | undefined;
|
|
2581
|
-
engine?: "ts" | "skill" | "workflow" | undefined;
|
|
5788
|
+
engine?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
2582
5789
|
} | undefined;
|
|
2583
5790
|
commands?: {
|
|
2584
5791
|
install?: string | undefined;
|
|
@@ -2599,7 +5806,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2599
5806
|
enabled?: boolean | undefined;
|
|
2600
5807
|
tokensavePath?: string | undefined;
|
|
2601
5808
|
autoSync?: boolean | undefined;
|
|
2602
|
-
languageTier?: "
|
|
5809
|
+
languageTier?: "core" | "extended" | "all" | undefined;
|
|
2603
5810
|
manifestPath?: string | undefined;
|
|
2604
5811
|
syncTimeoutMs?: number | undefined;
|
|
2605
5812
|
queryTimeoutMs?: number | undefined;
|
|
@@ -2635,8 +5842,8 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2635
5842
|
} | undefined;
|
|
2636
5843
|
observability?: {
|
|
2637
5844
|
providers?: {
|
|
2638
|
-
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2639
5845
|
name: string;
|
|
5846
|
+
kind: "custom" | "logs" | "metrics" | "traces" | "errors";
|
|
2640
5847
|
mcpCommand: string;
|
|
2641
5848
|
enabled?: boolean | undefined;
|
|
2642
5849
|
mcpArgs?: string[] | undefined;
|
|
@@ -2662,7 +5869,7 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2662
5869
|
providers?: Record<string, string> | undefined;
|
|
2663
5870
|
displayName?: string | undefined;
|
|
2664
5871
|
memoryNamespace?: string | undefined;
|
|
2665
|
-
pipelineShape?: "ts" | "skill" | "workflow" | undefined;
|
|
5872
|
+
pipelineShape?: "ts" | "skill" | "workflow" | "medical-sop" | undefined;
|
|
2666
5873
|
roles?: {
|
|
2667
5874
|
name: string;
|
|
2668
5875
|
displayName: string;
|
|
@@ -2670,6 +5877,150 @@ export declare const PartialBoberConfigSchema: z.ZodObject<{
|
|
|
2670
5877
|
guardrails?: unknown;
|
|
2671
5878
|
}> | undefined;
|
|
2672
5879
|
defaultTeam?: string | undefined;
|
|
5880
|
+
medical?: {
|
|
5881
|
+
egress?: {
|
|
5882
|
+
cloudInference?: boolean | undefined;
|
|
5883
|
+
literatureRetrieval?: boolean | undefined;
|
|
5884
|
+
deviceConnection?: boolean | undefined;
|
|
5885
|
+
} | undefined;
|
|
5886
|
+
inference?: {
|
|
5887
|
+
model?: string | undefined;
|
|
5888
|
+
provider?: string | undefined;
|
|
5889
|
+
endpoint?: string | undefined;
|
|
5890
|
+
} | undefined;
|
|
5891
|
+
vaultDir?: string | undefined;
|
|
5892
|
+
} | undefined;
|
|
5893
|
+
fleet?: {
|
|
5894
|
+
blackboardDbPath?: string | undefined;
|
|
5895
|
+
blackboardNamespace?: string | undefined;
|
|
5896
|
+
blackboardSubject?: string | undefined;
|
|
5897
|
+
maxRounds?: number | undefined;
|
|
5898
|
+
} | undefined;
|
|
5899
|
+
vault?: {
|
|
5900
|
+
obsidian?: {
|
|
5901
|
+
name?: string | undefined;
|
|
5902
|
+
enabled?: boolean | undefined;
|
|
5903
|
+
mcpCommand?: string | undefined;
|
|
5904
|
+
mcpArgs?: string[] | undefined;
|
|
5905
|
+
mcpEnv?: Record<string, string> | undefined;
|
|
5906
|
+
toolNames?: {
|
|
5907
|
+
readNote?: string | undefined;
|
|
5908
|
+
writeNote?: string | undefined;
|
|
5909
|
+
listNotes?: string | undefined;
|
|
5910
|
+
} | undefined;
|
|
5911
|
+
} | undefined;
|
|
5912
|
+
} | undefined;
|
|
5913
|
+
taskInbox?: {
|
|
5914
|
+
gmailEgress?: boolean | undefined;
|
|
5915
|
+
} | undefined;
|
|
5916
|
+
calendar?: {
|
|
5917
|
+
egress?: {
|
|
5918
|
+
cloudCalendar?: boolean | undefined;
|
|
5919
|
+
} | undefined;
|
|
5920
|
+
connector?: "ics" | "google" | undefined;
|
|
5921
|
+
timezone?: string | undefined;
|
|
5922
|
+
} | undefined;
|
|
5923
|
+
research?: {
|
|
5924
|
+
egress?: {
|
|
5925
|
+
onlineResearch?: boolean | undefined;
|
|
5926
|
+
} | undefined;
|
|
5927
|
+
} | undefined;
|
|
5928
|
+
tools?: {
|
|
5929
|
+
mcpBridge?: {
|
|
5930
|
+
enabled?: boolean | undefined;
|
|
5931
|
+
server?: {
|
|
5932
|
+
command?: string | undefined;
|
|
5933
|
+
args?: string[] | undefined;
|
|
5934
|
+
} | undefined;
|
|
5935
|
+
} | undefined;
|
|
5936
|
+
} | undefined;
|
|
5937
|
+
security?: {
|
|
5938
|
+
model?: string | undefined;
|
|
5939
|
+
provider?: string | undefined;
|
|
5940
|
+
endpoint?: string | null | undefined;
|
|
5941
|
+
providerConfig?: Record<string, unknown> | undefined;
|
|
5942
|
+
budget?: {
|
|
5943
|
+
maxUsd?: number | null | undefined;
|
|
5944
|
+
} | undefined;
|
|
5945
|
+
maxTurns?: number | undefined;
|
|
5946
|
+
enabled?: boolean | undefined;
|
|
5947
|
+
timeoutMs?: number | undefined;
|
|
5948
|
+
egress?: {
|
|
5949
|
+
onlineResearch?: boolean | undefined;
|
|
5950
|
+
} | undefined;
|
|
5951
|
+
failClosed?: boolean | undefined;
|
|
5952
|
+
scanners?: {
|
|
5953
|
+
type: string;
|
|
5954
|
+
required: boolean;
|
|
5955
|
+
plugin?: string | undefined;
|
|
5956
|
+
command?: string | undefined;
|
|
5957
|
+
config?: Record<string, unknown> | undefined;
|
|
5958
|
+
label?: string | undefined;
|
|
5959
|
+
}[] | undefined;
|
|
5960
|
+
standaloneBlockOn?: "critical" | "important" | undefined;
|
|
5961
|
+
hub?: boolean | undefined;
|
|
5962
|
+
diff?: {
|
|
5963
|
+
mode?: "estimated-files" | "git-diff" | undefined;
|
|
5964
|
+
baseRef?: string | undefined;
|
|
5965
|
+
expandWithGraph?: boolean | undefined;
|
|
5966
|
+
} | undefined;
|
|
5967
|
+
supplyChain?: {
|
|
5968
|
+
enabled?: boolean | undefined;
|
|
5969
|
+
scanners?: {
|
|
5970
|
+
type: string;
|
|
5971
|
+
required: boolean;
|
|
5972
|
+
plugin?: string | undefined;
|
|
5973
|
+
command?: string | undefined;
|
|
5974
|
+
config?: Record<string, unknown> | undefined;
|
|
5975
|
+
label?: string | undefined;
|
|
5976
|
+
}[] | undefined;
|
|
5977
|
+
} | undefined;
|
|
5978
|
+
verifier?: {
|
|
5979
|
+
model?: string | undefined;
|
|
5980
|
+
maxTurns?: number | undefined;
|
|
5981
|
+
enabled?: boolean | undefined;
|
|
5982
|
+
} | undefined;
|
|
5983
|
+
} | undefined;
|
|
5984
|
+
seo?: {
|
|
5985
|
+
budget?: {
|
|
5986
|
+
maxUsd?: number | null | undefined;
|
|
5987
|
+
} | undefined;
|
|
5988
|
+
egress?: {
|
|
5989
|
+
"search-console"?: boolean | undefined;
|
|
5990
|
+
"serp-provider"?: boolean | undefined;
|
|
5991
|
+
"ai-visibility"?: boolean | undefined;
|
|
5992
|
+
"site-crawl"?: boolean | undefined;
|
|
5993
|
+
"ai-visibility-scrape"?: boolean | undefined;
|
|
5994
|
+
} | undefined;
|
|
5995
|
+
verifier?: {
|
|
5996
|
+
enabled?: boolean | undefined;
|
|
5997
|
+
} | undefined;
|
|
5998
|
+
defaultTarget?: string | undefined;
|
|
5999
|
+
blockThreshold?: "never" | "any-uncited" | "critical-uncited" | undefined;
|
|
6000
|
+
serp?: {
|
|
6001
|
+
provider?: "dataforseo" | "damcrawler" | undefined;
|
|
6002
|
+
} | undefined;
|
|
6003
|
+
aiVisibility?: {
|
|
6004
|
+
samplesPerPrompt?: number | undefined;
|
|
6005
|
+
engines?: {
|
|
6006
|
+
engine: "anthropic" | "openai" | "perplexity";
|
|
6007
|
+
perCallUsd?: number | undefined;
|
|
6008
|
+
}[] | undefined;
|
|
6009
|
+
judge?: {
|
|
6010
|
+
model?: string | undefined;
|
|
6011
|
+
enabled?: boolean | undefined;
|
|
6012
|
+
} | undefined;
|
|
6013
|
+
scrape?: {
|
|
6014
|
+
engines?: ("chatgpt-ui" | "perplexity-ui")[] | undefined;
|
|
6015
|
+
authSession?: string | undefined;
|
|
6016
|
+
proxy?: string | undefined;
|
|
6017
|
+
proxyUsdPerScrape?: number | undefined;
|
|
6018
|
+
maxPerWindow?: number | undefined;
|
|
6019
|
+
windowMs?: number | undefined;
|
|
6020
|
+
maxProxyUsd?: number | undefined;
|
|
6021
|
+
} | undefined;
|
|
6022
|
+
} | undefined;
|
|
6023
|
+
} | undefined;
|
|
2673
6024
|
}>;
|
|
2674
6025
|
export type PartialBoberConfig = z.infer<typeof PartialBoberConfigSchema>;
|
|
2675
6026
|
/**
|