|
1 | | -import type { DirectorPackage } from "../types.js"; |
2 | | -import { REVIEW_TOOLS } from "../tool-sets.js"; |
3 | | - |
4 | 1 | /** |
5 | 2 | * Prober worker (CL-7656). |
6 | 3 | * Measure-only latency/behavior prober — report distributions per |
7 | 4 | * family/model; never ship product code, never tune prompts or policy. |
| 5 | + * |
| 6 | + * Ships as the @corbits/agent-prober workspace package: the tool allowlist |
| 7 | + * lives here so the package stays importable without the app. Drift against |
| 8 | + * the app build surface fails src/agent/directors/prober/package.test.ts. |
8 | 9 | */ |
9 | | -export const proberPackage: DirectorPackage = { |
| 10 | +export type AgentPackage = { |
| 11 | + readonly id: "prober"; |
| 12 | + readonly primaryIntent: string; |
| 13 | + readonly outOfLane: readonly string[]; |
| 14 | + readonly description: string; |
| 15 | + readonly systemPrompt: string; |
| 16 | + /** Unset — prober never attaches skill bodies at spawn. */ |
| 17 | + readonly attachedSkills?: readonly string[]; |
| 18 | + /** Unset — prober declares no skill scope. */ |
| 19 | + readonly optionalSkills?: readonly string[]; |
| 20 | + readonly tools: { |
| 21 | + readonly allow: readonly string[]; |
| 22 | + }; |
| 23 | + readonly spawn: { |
| 24 | + readonly maySpawn: false; |
| 25 | + }; |
| 26 | + readonly modelRole: "test"; |
| 27 | + readonly tier: "leaf"; |
| 28 | +}; |
| 29 | + |
| 30 | +const PROBER_TOOLS = [ |
| 31 | + "read_file", |
| 32 | + "grep", |
| 33 | + "search_files", |
| 34 | + "list_dir", |
| 35 | + "lsp", |
| 36 | + "run_shell", |
| 37 | + "web_fetch", |
| 38 | + "web_search", |
| 39 | + "skill_search", |
| 40 | + "use_skill", |
| 41 | + "write_file", |
| 42 | + "edit_file", |
| 43 | + "delete_file", |
| 44 | +] as const; |
| 45 | + |
| 46 | +export const proberPackage: AgentPackage = { |
10 | 47 | id: "prober", |
11 | 48 | primaryIntent: |
12 | 49 | "Measure latency and behavior distributions per family/model; never ship product code, never tune prompts or policy", |
@@ -68,7 +105,7 @@ retunes, or orchestration. |
68 | 105 | OUT OF LANE: shipping product code, tuning prompts or model-family |
69 | 106 | policy (route to follow-up tickets), building a new harness, fleet |
70 | 107 | orchestration, architecture essays without measurements.`, |
71 | | - tools: { allow: REVIEW_TOOLS }, |
| 108 | + tools: { allow: [...PROBER_TOOLS] }, |
72 | 109 | spawn: { maySpawn: false }, |
73 | 110 | tier: "leaf", |
74 | 111 | modelRole: "test", |
|
0 commit comments