ultimate-pi 0.18.1 → 0.19.1
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/.agents/skills/harness-debate-plan/SKILL.md +1 -1
- package/.agents/skills/harness-decisions/SKILL.md +1 -2
- package/.agents/skills/harness-governor/SKILL.md +6 -5
- package/.agents/skills/web-retrieval/SKILL.md +163 -0
- package/.agents/skills/wiki-autoresearch/SKILL.md +6 -6
- package/.pi/PACKAGING.md +4 -4
- package/.pi/SYSTEM.md +75 -123
- package/.pi/agents/harness/incident-recorder.md +0 -1
- package/.pi/agents/harness/planning/decompose.md +0 -2
- package/.pi/agents/harness/planning/execution-plan-author.md +0 -2
- package/.pi/agents/harness/planning/hypothesis-validator.md +0 -2
- package/.pi/agents/harness/planning/hypothesis.md +0 -2
- package/.pi/agents/harness/planning/implementation-researcher.md +1 -3
- package/.pi/agents/harness/planning/plan-adversary.md +0 -2
- package/.pi/agents/harness/planning/plan-evaluator.md +1 -3
- package/.pi/agents/harness/planning/planning-context.md +0 -2
- package/.pi/agents/harness/planning/review-integrator.md +0 -2
- package/.pi/agents/harness/planning/sprint-contract-auditor.md +0 -2
- package/.pi/agents/harness/planning/stack-researcher.md +5 -3
- package/.pi/agents/harness/reviewing/adversary.md +0 -2
- package/.pi/agents/harness/reviewing/evaluator.md +0 -2
- package/.pi/agents/harness/reviewing/tie-breaker.md +0 -2
- package/.pi/agents/harness/running/executor.md +0 -2
- package/.pi/agents/harness/sentrux-bootstrap.md +0 -1
- package/.pi/agents/harness/sentrux-steward.md +0 -2
- package/.pi/agents/harness/trace-librarian.md +0 -1
- package/.pi/agents/harness/web-retrieval/web-answerer.md +35 -0
- package/.pi/agents/harness/web-retrieval/web-criteria-verifier.md +28 -0
- package/.pi/agents/harness/web-retrieval/web-gap-analyzer.md +31 -0
- package/.pi/agents/harness/web-retrieval/web-query-expander-fast.md +34 -0
- package/.pi/agents/harness/web-retrieval/web-query-expander.md +60 -0
- package/.pi/agents/harness/web-retrieval/web-summarizer.md +18 -0
- package/.pi/extensions/agt-kill-switch.ts +57 -0
- package/.pi/extensions/agt-prompt-guard.ts +32 -0
- package/.pi/extensions/custom-footer.ts +46 -145
- package/.pi/extensions/custom-header.ts +1 -1
- package/.pi/extensions/custom-system-prompt.ts +1 -1
- package/.pi/extensions/debate-orchestrator.ts +6 -6
- package/.pi/extensions/harness-ask-user.ts +7 -7
- package/.pi/extensions/harness-debate-tools.ts +26 -42
- package/.pi/extensions/harness-lens.ts +94 -0
- package/.pi/extensions/harness-plan-approval.ts +11 -11
- package/.pi/extensions/harness-run-context.ts +1070 -876
- package/.pi/extensions/harness-subagent-governance.ts +8 -0
- package/.pi/extensions/harness-subagent-submit.ts +34 -163
- package/.pi/extensions/harness-subagents.ts +3 -3
- package/.pi/extensions/harness-telemetry.ts +2 -2
- package/.pi/extensions/harness-web-guard.ts +2 -1
- package/.pi/extensions/harness-web-tools.ts +691 -53
- package/.pi/extensions/policy-gate.ts +25 -5
- package/.pi/extensions/sentrux-rules-sync.ts +1 -1
- package/.pi/extensions/subagent-governance.ts +92 -0
- package/.pi/extensions/trace-recorder.ts +1 -1
- package/.pi/extensions/{ultimate-pi-vcc.ts → vcc-compaction.ts} +1 -1
- package/.pi/harness/README.md +6 -2
- package/.pi/harness/agents.manifest.json +46 -25
- package/.pi/harness/agents.policy.yaml +309 -0
- package/.pi/harness/docs/adrs/0030-inhouse-vcc-compaction.md +1 -1
- package/.pi/harness/docs/adrs/0035-plan-phase-review-gate.md +1 -1
- package/.pi/harness/docs/adrs/0045-harness-lens-minimal-contract.md +49 -0
- package/.pi/harness/docs/adrs/0046-agt-policy-engine.md +51 -0
- package/.pi/harness/docs/adrs/0047-agt-layered-security.md +39 -0
- package/.pi/harness/docs/adrs/0048-tool-call-hook-order.md +25 -0
- package/.pi/harness/docs/adrs/0049-agents-policy-manifest.md +36 -0
- package/.pi/harness/docs/adrs/0050-agentic-web-retrieval-stack.md +46 -0
- package/.pi/harness/docs/adrs/README.md +5 -0
- package/.pi/harness/docs/harness-web-search.md +97 -0
- package/.pi/harness/env.harness.template +9 -1
- package/.pi/harness/evolution/README.md +1 -2
- package/.pi/harness/examples/agents.policy.project.yaml +19 -0
- package/.pi/harness/examples/policies/custom-deny-bash.yaml +9 -0
- package/.pi/harness/examples/web-heuristic-angles.project.yaml +22 -0
- package/.pi/harness/policies/bash-denylists.yaml +5 -0
- package/.pi/harness/policies/defaults.yaml +51 -0
- package/.pi/harness/policies/orchestrator.yaml +18 -0
- package/.pi/harness/policies/phases.yaml +10 -0
- package/.pi/harness/policies/roles.yaml +5 -0
- package/.pi/harness/policies/web-guard.yaml +5 -0
- package/.pi/harness/policies/workflow-sequences.yaml +9 -0
- package/.pi/harness/sentrux/architecture.manifest.json +26 -4
- package/.pi/harness/specs/observation.schema.json +2 -1
- package/.pi/harness/web-heuristic-angles.json +278 -0
- package/.pi/harness/web-heuristic-angles.yaml +182 -0
- package/.pi/lib/agents-policy.d.mts +70 -0
- package/.pi/lib/agents-policy.mjs +331 -0
- package/.pi/lib/agents-policy.ts +19 -0
- package/.pi/lib/agt/audit-run-sink.ts +52 -0
- package/.pi/lib/agt/build-evaluation-context.ts +285 -0
- package/.pi/lib/agt/config.ts +28 -0
- package/.pi/lib/agt/delegation.ts +69 -0
- package/.pi/lib/agt/evaluate-policy.ts +56 -0
- package/.pi/lib/agt/identity-registry.ts +41 -0
- package/.pi/lib/agt/index.ts +55 -0
- package/.pi/lib/agt/kill-switch-state.ts +11 -0
- package/.pi/lib/agt/legacy-evaluate.ts +101 -0
- package/.pi/lib/agt/policy-engine.ts +154 -0
- package/.pi/lib/agt/rings.ts +21 -0
- package/.pi/lib/agt/sre-hooks.ts +45 -0
- package/.pi/lib/agt/trust-run-store.ts +26 -0
- package/.pi/lib/agt/workflow-history.ts +29 -0
- package/.pi/lib/agt-governance-active.ts +14 -0
- package/.pi/lib/agt-tool-guard.ts +78 -0
- package/.pi/lib/ask-user/dialog.ts +314 -0
- package/.pi/{extensions/lib → lib}/debate-bus-core.ts +10 -10
- package/.pi/{extensions/lib → lib}/debate-bus-state.ts +1 -1
- package/.pi/{extensions/lib → lib}/extension-load-guard.ts +13 -2
- package/.pi/lib/harness-agt-tool-guard.ts +5 -0
- package/.pi/{extensions/lib → lib}/harness-artifact-gate.ts +1 -1
- package/.pi/lib/harness-debate-core-deps.ts +14 -0
- package/.pi/lib/harness-debate-workflow-deps.ts +43 -0
- package/.pi/lib/harness-lens/.gitattributes +1 -0
- package/.pi/lib/harness-lens/clients/edit-autopatch.ts +88 -0
- package/.pi/lib/harness-lens/clients/file-kinds.ts +380 -0
- package/.pi/lib/harness-lens/clients/file-time.ts +215 -0
- package/.pi/lib/harness-lens/clients/file-utils.ts +484 -0
- package/.pi/lib/harness-lens/clients/format-service.ts +276 -0
- package/.pi/lib/harness-lens/clients/formatters.ts +1000 -0
- package/.pi/lib/harness-lens/clients/git-guard.ts +31 -0
- package/.pi/lib/harness-lens/clients/indent-retarget.ts +90 -0
- package/.pi/lib/harness-lens/clients/installer/index.ts +2368 -0
- package/.pi/lib/harness-lens/clients/latency-logger.ts +80 -0
- package/.pi/lib/harness-lens/clients/lens-config.ts +43 -0
- package/.pi/lib/harness-lens/clients/lens-events.ts +164 -0
- package/.pi/lib/harness-lens/clients/lsp/aggregation.ts +91 -0
- package/.pi/lib/harness-lens/clients/lsp/client.ts +1466 -0
- package/.pi/lib/harness-lens/clients/lsp/config.ts +216 -0
- package/.pi/lib/harness-lens/clients/lsp/edits.ts +297 -0
- package/.pi/lib/harness-lens/clients/lsp/index.ts +1355 -0
- package/.pi/lib/harness-lens/clients/lsp/interactive-install.ts +424 -0
- package/.pi/lib/harness-lens/clients/lsp/language.ts +223 -0
- package/.pi/lib/harness-lens/clients/lsp/launch.ts +939 -0
- package/.pi/lib/harness-lens/clients/lsp/lsp-index.ts +11 -0
- package/.pi/lib/harness-lens/clients/lsp/path-utils.ts +12 -0
- package/.pi/lib/harness-lens/clients/lsp/server-strategies.ts +81 -0
- package/.pi/lib/harness-lens/clients/lsp/server.ts +1971 -0
- package/.pi/lib/harness-lens/clients/path-utils.ts +182 -0
- package/.pi/lib/harness-lens/clients/pipeline.ts +360 -0
- package/.pi/lib/harness-lens/clients/project-profile.ts +117 -0
- package/.pi/lib/harness-lens/clients/runtime-agent-end.ts +112 -0
- package/.pi/lib/harness-lens/clients/runtime-config.ts +33 -0
- package/.pi/lib/harness-lens/clients/runtime-coordinator.ts +186 -0
- package/.pi/lib/harness-lens/clients/runtime-tool-result.ts +171 -0
- package/.pi/lib/harness-lens/clients/safe-spawn.ts +339 -0
- package/.pi/lib/harness-lens/clients/secrets-scanner.ts +214 -0
- package/.pi/lib/harness-lens/clients/tool-policy.ts +2072 -0
- package/.pi/lib/harness-lens/clients/types.ts +59 -0
- package/.pi/lib/harness-lens/clients/widget-state.ts +283 -0
- package/.pi/lib/harness-lens/index.ts +532 -0
- package/.pi/lib/harness-lens/tools/lsp-diagnostics.ts +706 -0
- package/.pi/lib/harness-lens/tools/lsp-navigation.ts +1246 -0
- package/.pi/{extensions/lib → lib}/harness-posthog.ts +3 -0
- package/.pi/lib/harness-run-context-responses.ts +9 -0
- package/.pi/lib/harness-run-context.ts +0 -2
- package/.pi/{extensions/lib/spawn-policy.ts → lib/harness-spawn-policy.ts} +1 -0
- package/.pi/{extensions/lib → lib}/harness-spawn-topology.ts +1 -1
- package/.pi/lib/harness-subagent-auth.ts +81 -0
- package/.pi/{extensions/lib → lib}/harness-subagent-precheck.ts +10 -7
- package/.pi/{extensions/lib → lib}/harness-subagent-submit-pipeline.ts +3 -3
- package/.pi/lib/harness-subagent-submit-register.ts +163 -0
- package/.pi/{extensions/lib → lib}/harness-subagent-submit-registry.ts +1 -37
- package/.pi/{extensions/lib → lib}/harness-subagents-bridge.ts +74 -14
- package/.pi/{extensions/lib → lib}/harness-subprocess-bootstrap.ts +1 -1
- package/.pi/lib/harness-web/artifacts.ts +200 -0
- package/.pi/lib/harness-web/cache.ts +369 -0
- package/.pi/{extensions/lib → lib}/harness-web/run-cli.ts +42 -2
- package/.pi/{extensions/lib → lib}/plan-approval/create-plan.ts +2 -2
- package/.pi/{extensions/lib → lib}/plan-approval/format-plan.ts +2 -2
- package/.pi/{extensions/lib → lib}/plan-approval/plan-review.ts +162 -201
- package/.pi/{extensions/lib → lib}/plan-approval/render.ts +1 -1
- package/.pi/{extensions/lib → lib}/plan-approval/resolve-disk.ts +2 -2
- package/.pi/{extensions/lib → lib}/plan-approval/types.ts +1 -1
- package/.pi/{extensions/lib → lib}/plan-approval/validate.ts +3 -3
- package/.pi/{extensions/lib → lib}/plan-debate-envelope.ts +1 -1
- package/.pi/{extensions/lib → lib}/plan-debate-gate.ts +1 -1
- package/.pi/{extensions/lib → lib}/plan-debate-lane.ts +1 -4
- package/.pi/{extensions/lib → lib}/plan-messenger.ts +1 -1
- package/.pi/prompts/harness-plan.md +2 -1
- package/.pi/prompts/harness-setup.md +40 -65
- package/.pi/scripts/README.md +2 -5
- package/.pi/scripts/gen-web-heuristic-angles-json.mjs +24 -0
- package/.pi/scripts/generate-agents-policy-yaml.mjs +148 -0
- package/.pi/scripts/harness-agents-manifest.mjs +60 -3
- package/.pi/scripts/harness-agt-doctor.ts +36 -0
- package/.pi/scripts/harness-cli-verify.sh +14 -2
- package/.pi/scripts/harness-verify.mjs +191 -39
- package/.pi/scripts/harness-web-policy-guard.mjs +3 -3
- package/.pi/scripts/harness-web.py +218 -15
- package/.pi/scripts/harness_web/deep_search.py +55 -0
- package/.pi/scripts/harness_web/evidence_bundle.py +47 -0
- package/.pi/scripts/harness_web/find_similar.py +88 -0
- package/.pi/scripts/harness_web/heuristic_angles_shipped.py +85 -0
- package/.pi/scripts/harness_web/heuristic_config.py +251 -0
- package/.pi/scripts/harness_web/highlights.py +47 -0
- package/.pi/scripts/harness_web/multi_search.py +59 -0
- package/.pi/scripts/harness_web/output.py +24 -0
- package/.pi/scripts/harness_web/query_angles.py +116 -0
- package/.pi/scripts/harness_web/rank.py +163 -0
- package/.pi/scripts/harness_web/scrape.py +30 -0
- package/.pi/scripts/tests/test_harness_web_heuristic_config.py +132 -0
- package/.pi/scripts/tests/test_harness_web_query_angles.py +45 -0
- package/.pi/scripts/tests/test_harness_web_rank.py +56 -0
- package/.pi/scripts/validate-plan-dag.mjs +65 -74
- package/.pi/scripts/vendor-pi-vcc-settings.stub.ts +2 -2
- package/.pi/scripts/vendor-sync-pi-vcc.sh +1 -1
- package/.pi/skills/architecture/broker-domain/SKILL.md +65 -0
- package/.pi/skills/architecture/cqrs/SKILL.md +63 -0
- package/.pi/skills/architecture/event-driven/SKILL.md +60 -0
- package/.pi/skills/architecture/hexagonal-ports-adapters/SKILL.md +66 -0
- package/.pi/skills/architecture/layered/SKILL.md +68 -0
- package/.pi/skills/architecture/microkernel/SKILL.md +62 -0
- package/.pi/skills/architecture/microservices/SKILL.md +64 -0
- package/.pi/skills/architecture/modular-monolith/SKILL.md +65 -0
- package/.pi/skills/architecture/orchestration-driven-soa/SKILL.md +61 -0
- package/.pi/skills/architecture/pipeline/SKILL.md +63 -0
- package/.pi/skills/architecture/service-based/SKILL.md +64 -0
- package/.pi/skills/architecture/service-mesh/SKILL.md +60 -0
- package/.pi/skills/architecture/space-based/SKILL.md +60 -0
- package/.pi/skills/ast-grep/SKILL.md +40 -321
- package/.pi/skills/delivery/debugging-discipline/SKILL.md +36 -0
- package/.pi/skills/delivery/documentation-update/SKILL.md +33 -0
- package/.pi/skills/delivery/requirements-to-implementation/SKILL.md +34 -0
- package/.pi/skills/delivery/risk-based-verification/SKILL.md +43 -0
- package/.pi/skills/delivery/tradeoff-analysis/SKILL.md +34 -0
- package/.pi/skills/engineering/api-contract-design/SKILL.md +38 -0
- package/.pi/skills/engineering/cohesion-coupling/SKILL.md +43 -0
- package/.pi/skills/engineering/complexity-control/SKILL.md +31 -0
- package/.pi/skills/engineering/defensive-programming/SKILL.md +38 -0
- package/.pi/skills/engineering/dependency-management/SKILL.md +29 -0
- package/.pi/skills/engineering/domain-modeling/SKILL.md +32 -0
- package/.pi/skills/engineering/error-handling/SKILL.md +37 -0
- package/.pi/skills/engineering/legacy-code-seams/SKILL.md +35 -0
- package/.pi/skills/engineering/naming-and-intent/SKILL.md +29 -0
- package/.pi/skills/engineering/refactoring-safe-evolution/SKILL.md +35 -0
- package/.pi/skills/engineering/routine-function-design/SKILL.md +34 -0
- package/.pi/skills/engineering/small-change-discipline/SKILL.md +35 -0
- package/.pi/skills/lsp-navigation/SKILL.md +89 -0
- package/.pi/skills/quality/code-review-self-check/SKILL.md +35 -0
- package/.pi/skills/quality/privacy-data-handling/SKILL.md +26 -0
- package/.pi/skills/quality/security-review/SKILL.md +34 -0
- package/.pi/skills/quality/test-strategy/SKILL.md +33 -0
- package/.pi/skills/quality/testability-design/SKILL.md +33 -0
- package/.pi/skills/systems/concurrency-safety/SKILL.md +32 -0
- package/.pi/skills/systems/data-modeling-migrations/SKILL.md +31 -0
- package/.pi/skills/systems/observability-instrumentation/SKILL.md +32 -0
- package/.pi/skills/systems/performance-measurement/SKILL.md +35 -0
- package/.pi/skills/systems/reliability-design/SKILL.md +32 -0
- package/.sentrux/rules.toml +20 -4
- package/AGENTS.md +7 -2
- package/CHANGELOG.md +20 -0
- package/README.md +3 -12
- package/THIRD_PARTY_NOTICES.md +12 -21
- package/package.json +17 -7
- package/vendor/pi-subagents/src/agents.ts +45 -1
- package/vendor/pi-subagents/src/subagents.ts +866 -811
- package/vendor/pi-vcc/src/core/brief.ts +68 -99
- package/vendor/pi-vcc/src/core/settings.ts +2 -2
- package/.agents/skills/caveman/SKILL.md +0 -67
- package/.agents/skills/scrapling-web/SKILL.md +0 -98
- package/.pi/agents/harness/meta-optimizer.md +0 -36
- package/.pi/extensions/00-posthog-network-bootstrap.ts +0 -11
- package/.pi/extensions/lib/ask-user/dialog.ts +0 -260
- package/.pi/extensions/lib/harness-subagent-auth.ts +0 -207
- package/.pi/extensions/lib/harness-subagent-policy.ts +0 -236
- package/.pi/extensions/pi-model-router-harness.ts +0 -42
- package/.pi/harness/evolution/meta-optimizer.mjs +0 -99
- package/.pi/harness/specs/router-tuning-proposal.schema.json +0 -114
- package/.pi/model-router.example.json +0 -36
- package/.pi/prompts/harness-critic.md +0 -10
- package/.pi/prompts/harness-eval.md +0 -10
- package/.pi/prompts/harness-router-tune.md +0 -52
- package/.pi/scripts/harness-generate-model-router.mjs +0 -327
- package/.pi/scripts/harness-model-router-routing.test.mjs +0 -97
- package/.pi/scripts/harness-sync-model-router.mjs +0 -97
- package/.pi/scripts/harness_web/__pycache__/__init__.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/config.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/output.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/scrape.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/search.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/search_ddg.cpython-314.pyc +0 -0
- package/.pi/scripts/harness_web/__pycache__/search_searxng.cpython-314.pyc +0 -0
- package/.pi/scripts/vendor-sync-pi-model-router.sh +0 -47
- package/vendor/pi-model-router/.prettierignore +0 -4
- package/vendor/pi-model-router/.prettierrc +0 -5
- package/vendor/pi-model-router/AGENTS.md +0 -39
- package/vendor/pi-model-router/LICENSE +0 -21
- package/vendor/pi-model-router/README.md +0 -99
- package/vendor/pi-model-router/UPSTREAM_PIN.md +0 -10
- package/vendor/pi-model-router/docs/ARCHITECTURE.md +0 -54
- package/vendor/pi-model-router/extensions/commands.ts +0 -720
- package/vendor/pi-model-router/extensions/config.ts +0 -348
- package/vendor/pi-model-router/extensions/constants.ts +0 -1
- package/vendor/pi-model-router/extensions/index.ts +0 -478
- package/vendor/pi-model-router/extensions/provider.ts +0 -580
- package/vendor/pi-model-router/extensions/routing.ts +0 -564
- package/vendor/pi-model-router/extensions/state.ts +0 -52
- package/vendor/pi-model-router/extensions/types.ts +0 -95
- package/vendor/pi-model-router/extensions/ui.ts +0 -144
- package/vendor/pi-model-router/model-router.example.json +0 -48
- package/vendor/pi-model-router/package.json +0 -48
- package/vendor/pi-model-router/tsconfig.json +0 -16
- /package/.pi/{prompts → harness/docs}/planning-rubrics.md +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/fallback.ts +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/render.ts +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/schema.ts +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/types.ts +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/validate-core.mjs +0 -0
- /package/.pi/{extensions/lib → lib}/ask-user/validate.ts +0 -0
- /package/.pi/{extensions/lib → lib}/harness-cocoindex-refresh.ts +0 -0
- /package/.pi/{extensions/lib → lib}/harness-paths.ts +0 -0
- /package/.pi/{extensions/lib → lib}/harness-spawn-budget.ts +0 -0
- /package/.pi/{extensions/lib → lib}/harness-vcc-settings.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-approval/dialog.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-approval/schema.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-approval-readiness.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-eligibility.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-focus.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-id.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-lanes.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-round-status.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-debate-write-guard.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-review-gate.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-review-integrator-rules.ts +0 -0
- /package/.pi/{extensions/lib → lib}/plan-scope-guard.ts +0 -0
- /package/.pi/{extensions/lib → lib}/posthog-client.ts +0 -0
- /package/.pi/{extensions/lib → lib}/posthog-node.d.ts +0 -0
|
@@ -0,0 +1,278 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 1,
|
|
3
|
+
"max_angles": 8,
|
|
4
|
+
"base": [
|
|
5
|
+
{
|
|
6
|
+
"id": "definitional",
|
|
7
|
+
"query": "{query}",
|
|
8
|
+
"rationale": "Core intent phrasing"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"id": "authoritative",
|
|
12
|
+
"query": "{query} official documentation OR specification OR RFC",
|
|
13
|
+
"rationale": "Primary specs and vendor docs"
|
|
14
|
+
}
|
|
15
|
+
],
|
|
16
|
+
"categories": {
|
|
17
|
+
"code": [
|
|
18
|
+
{
|
|
19
|
+
"id": "github",
|
|
20
|
+
"query": "{query} site:github.com",
|
|
21
|
+
"rationale": "Source, issues, discussions"
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"id": "stackoverflow",
|
|
25
|
+
"query": "{query} site:stackoverflow.com",
|
|
26
|
+
"rationale": "Debugging and API usage Q&A"
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"id": "stackexchange",
|
|
30
|
+
"query": "{query} site:stackexchange.com",
|
|
31
|
+
"rationale": "Broader SE network (Super User, Server Fault, etc.)"
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"id": "readthedocs",
|
|
35
|
+
"query": "{query} site:readthedocs.io",
|
|
36
|
+
"rationale": "OSS library documentation"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"id": "mdn",
|
|
40
|
+
"query": "{query} site:developer.mozilla.org",
|
|
41
|
+
"rationale": "Web platform and browser APIs"
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
"id": "package_registries",
|
|
45
|
+
"query": "{query} site:npmjs.com OR site:pypi.org OR site:pkg.go.dev OR site:crates.io",
|
|
46
|
+
"rationale": "Package metadata across major ecosystems"
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"id": "microsoft_learn",
|
|
50
|
+
"query": "{query} site:learn.microsoft.com",
|
|
51
|
+
"rationale": ".NET, Azure, Windows, and enterprise stacks"
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"id": "hacker_news",
|
|
55
|
+
"query": "{query} site:news.ycombinator.com",
|
|
56
|
+
"rationale": "High-signal practitioner discussion"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"id": "gitlab",
|
|
60
|
+
"query": "{query} site:gitlab.com",
|
|
61
|
+
"rationale": "Alternate host and CI-visible code"
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
"id": "devto",
|
|
65
|
+
"query": "{query} site:dev.to OR site:medium.com",
|
|
66
|
+
"rationale": "Tutorials and implementation writeups"
|
|
67
|
+
}
|
|
68
|
+
],
|
|
69
|
+
"paper": [
|
|
70
|
+
{
|
|
71
|
+
"id": "arxiv",
|
|
72
|
+
"query": "{query} site:arxiv.org",
|
|
73
|
+
"rationale": "Preprints and latest ML/CS uploads"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"id": "semantic_scholar",
|
|
77
|
+
"query": "{query} site:semanticscholar.org",
|
|
78
|
+
"rationale": "Citations, influences, and PDF links"
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"id": "google_scholar",
|
|
82
|
+
"query": "{query} site:scholar.google.com",
|
|
83
|
+
"rationale": "Broad academic discovery"
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"id": "papers_with_code",
|
|
87
|
+
"query": "{query} site:paperswithcode.com",
|
|
88
|
+
"rationale": "Benchmarks tied to implementations"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"id": "openreview",
|
|
92
|
+
"query": "{query} site:openreview.net",
|
|
93
|
+
"rationale": "Peer reviews and ML conference submissions"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"id": "acl_anthology",
|
|
97
|
+
"query": "{query} site:aclanthology.org",
|
|
98
|
+
"rationale": "NLP and computational linguistics"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"id": "acm_dl",
|
|
102
|
+
"query": "{query} site:dl.acm.org",
|
|
103
|
+
"rationale": "ACM proceedings and journals"
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
"id": "pubmed",
|
|
107
|
+
"query": "{query} site:pubmed.ncbi.nlm.nih.gov",
|
|
108
|
+
"rationale": "Biomedical and life-sciences literature"
|
|
109
|
+
}
|
|
110
|
+
],
|
|
111
|
+
"news": [
|
|
112
|
+
{
|
|
113
|
+
"id": "recent",
|
|
114
|
+
"query": "{query} news 2025 2026",
|
|
115
|
+
"rationale": "Recency-biased open web"
|
|
116
|
+
},
|
|
117
|
+
{
|
|
118
|
+
"id": "wire_reuters",
|
|
119
|
+
"query": "{query} site:reuters.com",
|
|
120
|
+
"rationale": "Wire-service reporting"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"id": "wire_ap",
|
|
124
|
+
"query": "{query} site:apnews.com",
|
|
125
|
+
"rationale": "Associated Press coverage"
|
|
126
|
+
},
|
|
127
|
+
{
|
|
128
|
+
"id": "tech_press",
|
|
129
|
+
"query": "{query} site:techcrunch.com OR site:theverge.com OR site:arstechnica.com",
|
|
130
|
+
"rationale": "Technology industry news"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"id": "business_press",
|
|
134
|
+
"query": "{query} site:bloomberg.com OR site:ft.com OR site:wsj.com",
|
|
135
|
+
"rationale": "Markets and business context"
|
|
136
|
+
},
|
|
137
|
+
{
|
|
138
|
+
"id": "analysis",
|
|
139
|
+
"query": "{query} in-depth analysis explainer",
|
|
140
|
+
"rationale": "Long-form journalism and explainers"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"id": "bbc",
|
|
144
|
+
"query": "{query} site:bbc.com/news",
|
|
145
|
+
"rationale": "International general news desk"
|
|
146
|
+
}
|
|
147
|
+
],
|
|
148
|
+
"company": [
|
|
149
|
+
{
|
|
150
|
+
"id": "official_site",
|
|
151
|
+
"query": "{query} official website",
|
|
152
|
+
"rationale": "Company-controlled messaging"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"id": "crunchbase",
|
|
156
|
+
"query": "{query} site:crunchbase.com",
|
|
157
|
+
"rationale": "Funding, investors, and competitors"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"id": "linkedin_company",
|
|
161
|
+
"query": "{query} site:linkedin.com/company",
|
|
162
|
+
"rationale": "Headcount, hiring, and positioning"
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"id": "sec_filings",
|
|
166
|
+
"query": "{query} site:sec.gov 10-K OR 10-Q OR S-1",
|
|
167
|
+
"rationale": "US public-company disclosures"
|
|
168
|
+
},
|
|
169
|
+
{
|
|
170
|
+
"id": "g2_reviews",
|
|
171
|
+
"query": "{query} site:g2.com OR site:capterra.com",
|
|
172
|
+
"rationale": "B2B software reviews and comparisons"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"id": "company_news",
|
|
176
|
+
"query": "{query} company announcement press release",
|
|
177
|
+
"rationale": "Launches, partnerships, and earnings"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"id": "glassdoor",
|
|
181
|
+
"query": "{query} site:glassdoor.com",
|
|
182
|
+
"rationale": "Employee sentiment and culture signals"
|
|
183
|
+
}
|
|
184
|
+
],
|
|
185
|
+
"people": [
|
|
186
|
+
{
|
|
187
|
+
"id": "linkedin",
|
|
188
|
+
"query": "{query} site:linkedin.com/in",
|
|
189
|
+
"rationale": "Professional profiles"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"id": "github_person",
|
|
193
|
+
"query": "{query} site:github.com",
|
|
194
|
+
"rationale": "Open-source footprint for builders"
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"id": "wikipedia",
|
|
198
|
+
"query": "{query} site:en.wikipedia.org",
|
|
199
|
+
"rationale": "Neutral biographical baseline"
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"id": "scholar_person",
|
|
203
|
+
"query": "{query} site:scholar.google.com",
|
|
204
|
+
"rationale": "Publication record for researchers"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"id": "interviews",
|
|
208
|
+
"query": "{query} interview podcast keynote",
|
|
209
|
+
"rationale": "First-person statements and talks"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"id": "twitter_x",
|
|
213
|
+
"query": "{query} site:x.com OR site:twitter.com",
|
|
214
|
+
"rationale": "Public statements and discourse"
|
|
215
|
+
}
|
|
216
|
+
],
|
|
217
|
+
"security": [
|
|
218
|
+
{
|
|
219
|
+
"id": "cve_nvd",
|
|
220
|
+
"query": "{query} CVE site:nvd.nist.gov",
|
|
221
|
+
"rationale": "National Vulnerability Database"
|
|
222
|
+
},
|
|
223
|
+
{
|
|
224
|
+
"id": "owasp",
|
|
225
|
+
"query": "{query} site:owasp.org",
|
|
226
|
+
"rationale": "AppSec standards and cheat sheets"
|
|
227
|
+
},
|
|
228
|
+
{
|
|
229
|
+
"id": "cwe",
|
|
230
|
+
"query": "{query} site:cwe.mitre.org",
|
|
231
|
+
"rationale": "Weakness taxonomy"
|
|
232
|
+
},
|
|
233
|
+
{
|
|
234
|
+
"id": "github_advisories",
|
|
235
|
+
"query": "{query} site:github.com/advisories OR dependabot",
|
|
236
|
+
"rationale": "Ecosystem security advisories"
|
|
237
|
+
},
|
|
238
|
+
{
|
|
239
|
+
"id": "snyk_blog",
|
|
240
|
+
"query": "{query} site:snyk.io/blog OR vulnerability",
|
|
241
|
+
"rationale": "Practitioner security writeups"
|
|
242
|
+
}
|
|
243
|
+
],
|
|
244
|
+
"default": [
|
|
245
|
+
{
|
|
246
|
+
"id": "technical",
|
|
247
|
+
"query": "{query} how it works architecture internals",
|
|
248
|
+
"rationale": "Mechanism and design"
|
|
249
|
+
},
|
|
250
|
+
{
|
|
251
|
+
"id": "criticism",
|
|
252
|
+
"query": "{query} limitations criticism drawbacks",
|
|
253
|
+
"rationale": "Counterpoints and failure modes"
|
|
254
|
+
},
|
|
255
|
+
{
|
|
256
|
+
"id": "wikipedia",
|
|
257
|
+
"query": "{query} site:en.wikipedia.org",
|
|
258
|
+
"rationale": "Structured overview"
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"id": "comparison",
|
|
262
|
+
"query": "{query} vs alternatives comparison benchmark",
|
|
263
|
+
"rationale": "Competitive landscape"
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
"id": "reddit",
|
|
267
|
+
"query": "{query} site:reddit.com",
|
|
268
|
+
"rationale": "Community experience reports"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"id": "hn_default",
|
|
272
|
+
"query": "{query} site:news.ycombinator.com",
|
|
273
|
+
"rationale": "Practitioner threads when category unknown"
|
|
274
|
+
}
|
|
275
|
+
]
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
# WRS emergency heuristic angles (--expand-heuristic / expandHeuristic:true).
|
|
2
|
+
# Package defaults (ultimate-pi). External projects: copy
|
|
3
|
+
# .pi/harness/examples/web-heuristic-angles.project.yaml to
|
|
4
|
+
# <your-project>/.pi/harness/web-heuristic-angles.yaml and edit.
|
|
5
|
+
#
|
|
6
|
+
# Placeholders: {query} → user search string
|
|
7
|
+
# Order matters: base angles run first, then category (deduped by id, capped at max_angles).
|
|
8
|
+
# JSON mirror (no PyYAML): run `node .pi/scripts/gen-web-heuristic-angles-json.mjs` after edits.
|
|
9
|
+
# Stdlib fallback: .pi/scripts/harness_web/heuristic_angles_shipped.py
|
|
10
|
+
|
|
11
|
+
version: 1
|
|
12
|
+
max_angles: 8
|
|
13
|
+
|
|
14
|
+
base:
|
|
15
|
+
- id: definitional
|
|
16
|
+
query: "{query}"
|
|
17
|
+
rationale: Core intent phrasing
|
|
18
|
+
- id: authoritative
|
|
19
|
+
query: "{query} official documentation OR specification OR RFC"
|
|
20
|
+
rationale: Primary specs and vendor docs
|
|
21
|
+
|
|
22
|
+
categories:
|
|
23
|
+
code:
|
|
24
|
+
- id: github
|
|
25
|
+
query: "{query} site:github.com"
|
|
26
|
+
rationale: Source, issues, discussions
|
|
27
|
+
- id: stackoverflow
|
|
28
|
+
query: "{query} site:stackoverflow.com"
|
|
29
|
+
rationale: Debugging and API usage Q&A
|
|
30
|
+
- id: stackexchange
|
|
31
|
+
query: "{query} site:stackexchange.com"
|
|
32
|
+
rationale: Broader SE network (Super User, Server Fault, etc.)
|
|
33
|
+
- id: readthedocs
|
|
34
|
+
query: "{query} site:readthedocs.io"
|
|
35
|
+
rationale: OSS library documentation
|
|
36
|
+
- id: mdn
|
|
37
|
+
query: "{query} site:developer.mozilla.org"
|
|
38
|
+
rationale: Web platform and browser APIs
|
|
39
|
+
- id: package_registries
|
|
40
|
+
query: "{query} site:npmjs.com OR site:pypi.org OR site:pkg.go.dev OR site:crates.io"
|
|
41
|
+
rationale: Package metadata across major ecosystems
|
|
42
|
+
- id: microsoft_learn
|
|
43
|
+
query: "{query} site:learn.microsoft.com"
|
|
44
|
+
rationale: .NET, Azure, Windows, and enterprise stacks
|
|
45
|
+
- id: hacker_news
|
|
46
|
+
query: "{query} site:news.ycombinator.com"
|
|
47
|
+
rationale: High-signal practitioner discussion
|
|
48
|
+
- id: gitlab
|
|
49
|
+
query: "{query} site:gitlab.com"
|
|
50
|
+
rationale: Alternate host and CI-visible code
|
|
51
|
+
- id: devto
|
|
52
|
+
query: "{query} site:dev.to OR site:medium.com"
|
|
53
|
+
rationale: Tutorials and implementation writeups
|
|
54
|
+
|
|
55
|
+
paper:
|
|
56
|
+
- id: arxiv
|
|
57
|
+
query: "{query} site:arxiv.org"
|
|
58
|
+
rationale: Preprints and latest ML/CS uploads
|
|
59
|
+
- id: semantic_scholar
|
|
60
|
+
query: "{query} site:semanticscholar.org"
|
|
61
|
+
rationale: Citations, influences, and PDF links
|
|
62
|
+
- id: google_scholar
|
|
63
|
+
query: "{query} site:scholar.google.com"
|
|
64
|
+
rationale: Broad academic discovery
|
|
65
|
+
- id: papers_with_code
|
|
66
|
+
query: "{query} site:paperswithcode.com"
|
|
67
|
+
rationale: Benchmarks tied to implementations
|
|
68
|
+
- id: openreview
|
|
69
|
+
query: "{query} site:openreview.net"
|
|
70
|
+
rationale: Peer reviews and ML conference submissions
|
|
71
|
+
- id: acl_anthology
|
|
72
|
+
query: "{query} site:aclanthology.org"
|
|
73
|
+
rationale: NLP and computational linguistics
|
|
74
|
+
- id: acm_dl
|
|
75
|
+
query: "{query} site:dl.acm.org"
|
|
76
|
+
rationale: ACM proceedings and journals
|
|
77
|
+
- id: pubmed
|
|
78
|
+
query: "{query} site:pubmed.ncbi.nlm.nih.gov"
|
|
79
|
+
rationale: Biomedical and life-sciences literature
|
|
80
|
+
|
|
81
|
+
news:
|
|
82
|
+
- id: recent
|
|
83
|
+
query: "{query} news 2025 2026"
|
|
84
|
+
rationale: Recency-biased open web
|
|
85
|
+
- id: wire_reuters
|
|
86
|
+
query: "{query} site:reuters.com"
|
|
87
|
+
rationale: Wire-service reporting
|
|
88
|
+
- id: wire_ap
|
|
89
|
+
query: "{query} site:apnews.com"
|
|
90
|
+
rationale: Associated Press coverage
|
|
91
|
+
- id: tech_press
|
|
92
|
+
query: "{query} site:techcrunch.com OR site:theverge.com OR site:arstechnica.com"
|
|
93
|
+
rationale: Technology industry news
|
|
94
|
+
- id: business_press
|
|
95
|
+
query: "{query} site:bloomberg.com OR site:ft.com OR site:wsj.com"
|
|
96
|
+
rationale: Markets and business context
|
|
97
|
+
- id: analysis
|
|
98
|
+
query: "{query} in-depth analysis explainer"
|
|
99
|
+
rationale: Long-form journalism and explainers
|
|
100
|
+
- id: bbc
|
|
101
|
+
query: "{query} site:bbc.com/news"
|
|
102
|
+
rationale: International general news desk
|
|
103
|
+
|
|
104
|
+
company:
|
|
105
|
+
- id: official_site
|
|
106
|
+
query: "{query} official website"
|
|
107
|
+
rationale: Company-controlled messaging
|
|
108
|
+
- id: crunchbase
|
|
109
|
+
query: "{query} site:crunchbase.com"
|
|
110
|
+
rationale: Funding, investors, and competitors
|
|
111
|
+
- id: linkedin_company
|
|
112
|
+
query: "{query} site:linkedin.com/company"
|
|
113
|
+
rationale: Headcount, hiring, and positioning
|
|
114
|
+
- id: sec_filings
|
|
115
|
+
query: "{query} site:sec.gov 10-K OR 10-Q OR S-1"
|
|
116
|
+
rationale: US public-company disclosures
|
|
117
|
+
- id: g2_reviews
|
|
118
|
+
query: "{query} site:g2.com OR site:capterra.com"
|
|
119
|
+
rationale: B2B software reviews and comparisons
|
|
120
|
+
- id: company_news
|
|
121
|
+
query: "{query} company announcement press release"
|
|
122
|
+
rationale: Launches, partnerships, and earnings
|
|
123
|
+
- id: glassdoor
|
|
124
|
+
query: "{query} site:glassdoor.com"
|
|
125
|
+
rationale: Employee sentiment and culture signals
|
|
126
|
+
|
|
127
|
+
people:
|
|
128
|
+
- id: linkedin
|
|
129
|
+
query: "{query} site:linkedin.com/in"
|
|
130
|
+
rationale: Professional profiles
|
|
131
|
+
- id: github_person
|
|
132
|
+
query: "{query} site:github.com"
|
|
133
|
+
rationale: Open-source footprint for builders
|
|
134
|
+
- id: wikipedia
|
|
135
|
+
query: "{query} site:en.wikipedia.org"
|
|
136
|
+
rationale: Neutral biographical baseline
|
|
137
|
+
- id: scholar_person
|
|
138
|
+
query: "{query} site:scholar.google.com"
|
|
139
|
+
rationale: Publication record for researchers
|
|
140
|
+
- id: interviews
|
|
141
|
+
query: "{query} interview podcast keynote"
|
|
142
|
+
rationale: First-person statements and talks
|
|
143
|
+
- id: twitter_x
|
|
144
|
+
query: "{query} site:x.com OR site:twitter.com"
|
|
145
|
+
rationale: Public statements and discourse
|
|
146
|
+
|
|
147
|
+
security:
|
|
148
|
+
- id: cve_nvd
|
|
149
|
+
query: "{query} CVE site:nvd.nist.gov"
|
|
150
|
+
rationale: National Vulnerability Database
|
|
151
|
+
- id: owasp
|
|
152
|
+
query: "{query} site:owasp.org"
|
|
153
|
+
rationale: AppSec standards and cheat sheets
|
|
154
|
+
- id: cwe
|
|
155
|
+
query: "{query} site:cwe.mitre.org"
|
|
156
|
+
rationale: Weakness taxonomy
|
|
157
|
+
- id: github_advisories
|
|
158
|
+
query: "{query} site:github.com/advisories OR dependabot"
|
|
159
|
+
rationale: Ecosystem security advisories
|
|
160
|
+
- id: snyk_blog
|
|
161
|
+
query: "{query} site:snyk.io/blog OR vulnerability"
|
|
162
|
+
rationale: Practitioner security writeups
|
|
163
|
+
|
|
164
|
+
default:
|
|
165
|
+
- id: technical
|
|
166
|
+
query: "{query} how it works architecture internals"
|
|
167
|
+
rationale: Mechanism and design
|
|
168
|
+
- id: criticism
|
|
169
|
+
query: "{query} limitations criticism drawbacks"
|
|
170
|
+
rationale: Counterpoints and failure modes
|
|
171
|
+
- id: wikipedia
|
|
172
|
+
query: "{query} site:en.wikipedia.org"
|
|
173
|
+
rationale: Structured overview
|
|
174
|
+
- id: comparison
|
|
175
|
+
query: "{query} vs alternatives comparison benchmark"
|
|
176
|
+
rationale: Competitive landscape
|
|
177
|
+
- id: reddit
|
|
178
|
+
query: "{query} site:reddit.com"
|
|
179
|
+
rationale: Community experience reports
|
|
180
|
+
- id: hn_default
|
|
181
|
+
query: "{query} site:news.ycombinator.com"
|
|
182
|
+
rationale: Practitioner threads when category unknown
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
export function packageAgentsPolicyPath(packageRoot: string): string;
|
|
2
|
+
export function projectAgentsPolicyPath(projectRoot: string): string;
|
|
3
|
+
export function projectPoliciesDir(projectRoot: string): string;
|
|
4
|
+
|
|
5
|
+
export interface AgentPolicySpec {
|
|
6
|
+
kind: string;
|
|
7
|
+
effectiveTools: string[];
|
|
8
|
+
extensionsOff: boolean;
|
|
9
|
+
readOnly: boolean;
|
|
10
|
+
maxTurns?: number;
|
|
11
|
+
thinking?: string;
|
|
12
|
+
submitTool?: string;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export interface AllowsAgentToolInput {
|
|
16
|
+
packageRoot: string;
|
|
17
|
+
projectRoot: string;
|
|
18
|
+
agentId: string;
|
|
19
|
+
toolName: string;
|
|
20
|
+
toolInput?: Record<string, unknown>;
|
|
21
|
+
isSubprocess?: boolean;
|
|
22
|
+
isParentOrchestrator?: boolean;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function loadAgentsPolicyMerged(
|
|
26
|
+
packageRoot: string,
|
|
27
|
+
projectRoot: string,
|
|
28
|
+
): {
|
|
29
|
+
schemaVersion: string;
|
|
30
|
+
kinds: Map<string, unknown>;
|
|
31
|
+
agents: Map<string, unknown>;
|
|
32
|
+
defaults: unknown;
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
export function resolveEffectiveTools(
|
|
36
|
+
agentId: string,
|
|
37
|
+
merged: ReturnType<typeof loadAgentsPolicyMerged>,
|
|
38
|
+
): AgentPolicySpec;
|
|
39
|
+
|
|
40
|
+
export function getAgentPolicySpec(
|
|
41
|
+
packageRoot: string,
|
|
42
|
+
projectRoot: string,
|
|
43
|
+
agentId: string,
|
|
44
|
+
): AgentPolicySpec | null;
|
|
45
|
+
|
|
46
|
+
export function getAgentKind(
|
|
47
|
+
packageRoot: string,
|
|
48
|
+
projectRoot: string,
|
|
49
|
+
agentId: string,
|
|
50
|
+
): string;
|
|
51
|
+
|
|
52
|
+
export function isHarnessPlanningAgent(agentId: string): boolean;
|
|
53
|
+
|
|
54
|
+
export function harnessSubagentPhaseHint(
|
|
55
|
+
packageRoot: string,
|
|
56
|
+
projectRoot: string,
|
|
57
|
+
agentId: string,
|
|
58
|
+
): string | null;
|
|
59
|
+
|
|
60
|
+
export function allowsAgentTool(input: AllowsAgentToolInput): boolean;
|
|
61
|
+
|
|
62
|
+
export function applyAgentPolicyToConfig<T extends { name: string }>(
|
|
63
|
+
agent: T,
|
|
64
|
+
packageRoot: string,
|
|
65
|
+
projectRoot: string,
|
|
66
|
+
): T;
|
|
67
|
+
|
|
68
|
+
export function findProjectRootFromAgentsDir(projectAgentsDir: string): string;
|
|
69
|
+
|
|
70
|
+
export function isAgtGovernanceActive(projectRoot: string): boolean;
|