@osovv/vv-opencode 1.0.2 → 1.1.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.
Files changed (75) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.md +87 -19
  3. package/dist/cli.js +4 -1
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/completion.js +34 -6
  6. package/dist/commands/completion.js.map +1 -1
  7. package/dist/commands/doctor.js +7 -1
  8. package/dist/commands/doctor.js.map +1 -1
  9. package/dist/commands/init.js +14 -5
  10. package/dist/commands/init.js.map +1 -1
  11. package/dist/commands/install.js +6 -3
  12. package/dist/commands/install.js.map +1 -1
  13. package/dist/commands/launch.d.ts +1 -0
  14. package/dist/commands/launch.js +20 -8
  15. package/dist/commands/launch.js.map +1 -1
  16. package/dist/commands/orchestration.d.ts +25 -0
  17. package/dist/commands/orchestration.js +185 -0
  18. package/dist/commands/orchestration.js.map +1 -0
  19. package/dist/commands/patch-provider.d.ts +18 -29
  20. package/dist/commands/patch-provider.js +28 -31
  21. package/dist/commands/patch-provider.js.map +1 -1
  22. package/dist/commands/preset.d.ts +8 -1
  23. package/dist/commands/preset.js +49 -18
  24. package/dist/commands/preset.js.map +1 -1
  25. package/dist/commands/status.js +11 -3
  26. package/dist/commands/status.js.map +1 -1
  27. package/dist/commands/sync.js +6 -3
  28. package/dist/commands/sync.js.map +1 -1
  29. package/dist/lib/config-layers.d.ts +6 -0
  30. package/dist/lib/config-layers.js +65 -3
  31. package/dist/lib/config-layers.js.map +1 -1
  32. package/dist/lib/opencode.d.ts +20 -0
  33. package/dist/lib/opencode.js +157 -11
  34. package/dist/lib/opencode.js.map +1 -1
  35. package/dist/lib/orchestration.d.ts +21 -0
  36. package/dist/lib/orchestration.js +118 -0
  37. package/dist/lib/orchestration.js.map +1 -0
  38. package/dist/lib/plugin-toggle-config.d.ts +1 -1
  39. package/dist/lib/plugin-toggle-config.js +2 -0
  40. package/dist/lib/plugin-toggle-config.js.map +1 -1
  41. package/dist/lib/vvoc-config.d.ts +25 -0
  42. package/dist/lib/vvoc-config.js +24 -7
  43. package/dist/lib/vvoc-config.js.map +1 -1
  44. package/dist/lib/vvoc-preset-registry.d.ts +26 -8
  45. package/dist/lib/vvoc-preset-registry.js +18 -10
  46. package/dist/lib/vvoc-preset-registry.js.map +1 -1
  47. package/dist/plugins/system-context-injection/index.js +17 -38
  48. package/dist/plugins/system-context-injection/index.js.map +1 -1
  49. package/dist/plugins/workflow/index.js +42 -6
  50. package/dist/plugins/workflow/index.js.map +1 -1
  51. package/dist/tui/context/analyze.d.ts +4 -0
  52. package/dist/tui/context/analyze.js +256 -0
  53. package/dist/tui/context/analyze.js.map +1 -0
  54. package/dist/tui/context/collect.d.ts +3 -0
  55. package/dist/tui/context/collect.js +94 -0
  56. package/dist/tui/context/collect.js.map +1 -0
  57. package/dist/tui/context/estimate.d.ts +2 -0
  58. package/dist/tui/context/estimate.js +49 -0
  59. package/dist/tui/context/estimate.js.map +1 -0
  60. package/dist/tui/context/plugin.d.ts +10 -0
  61. package/dist/tui/context/plugin.js +91 -0
  62. package/dist/tui/context/plugin.js.map +1 -0
  63. package/dist/tui/context/types.d.ts +61 -0
  64. package/dist/tui/context/types.js +25 -0
  65. package/dist/tui/context/types.js.map +1 -0
  66. package/dist/tui/context/view.d.ts +3 -0
  67. package/dist/tui/context/view.js +45 -0
  68. package/dist/tui/context/view.js.map +1 -0
  69. package/dist/tui.d.ts +7 -0
  70. package/dist/tui.js +27 -0
  71. package/dist/tui.js.map +1 -0
  72. package/package.json +16 -4
  73. package/schemas/vvoc/v3.json +23 -1
  74. package/templates/agents/vv-controller.md +77 -111
  75. package/templates/skills/vv-execute/SKILL.md +1 -1
@@ -1,10 +1,10 @@
1
1
  // FILE: src/plugins/system-context-injection/index.ts
2
2
  // VERSION: 0.4.2
3
3
  // START_MODULE_CONTRACT
4
- // PURPOSE: Inject reusable vvoc system context into primary chat sessions without polluting known subagent prompts.
5
- // SCOPE: Main-session system instruction definitions, editing-workflow guidance, repository-memory lookup guidance, known subagent filtering, startup vvoc config snapshot use, config-aware custom subagent tracking, and chat.message system prompt injection.
6
- // DEPENDS: [@opencode-ai/plugin, src/lib/config-layers.ts, src/lib/managed-agents.ts, src/lib/vvoc-paths.ts]
7
- // LINKS: [M-PLUGIN-SYSTEM-CONTEXT-INJECTION, M-CLI-MANAGED-AGENTS]
4
+ // PURPOSE: Inject universal primary guidance and one startup-resolved concrete orchestration policy into vv-controller without polluting subagent prompts.
5
+ // SCOPE: Universal instructions, vv-controller policy selection, explore-worker guidance, known subagent filtering, startup vvoc snapshot use, custom subagent tracking, and chat.message injection.
6
+ // DEPENDS: [@opencode-ai/plugin, src/lib/config-layers.ts, src/lib/managed-agents.ts, src/lib/orchestration.ts, src/lib/vvoc-paths.ts]
7
+ // LINKS: [M-PLUGIN-SYSTEM-CONTEXT-INJECTION, M-ORCHESTRATION-PROFILES, M-CLI-MANAGED-AGENTS]
8
8
  // ROLE: RUNTIME
9
9
  // MAP_MODE: EXPORTS
10
10
  // END_MODULE_CONTRACT
@@ -26,9 +26,11 @@
26
26
  // LAST_CHANGE: [v0.3.0 - Added standard trajectories, working-state, reroute, semantic continuity, assumption discipline, anti-drift, and project-overlay guidance for primary sessions.]
27
27
  // LAST_CHANGE: [v0.2.0 - Expanded primary-session system guidance with task routing, execution stability, and loop-control rules while preserving subagent exclusion.]
28
28
  // LAST_CHANGE: [v0.1.0 - Added a reusable main-session system context injector with default proactive explore guidance.]
29
+ // LAST_CHANGE: [C-PRESET-ORCHESTRATION-PROFILES - Separated universal primary guidance from one concrete startup-resolved vv-controller policy.]
29
30
  // END_CHANGE_SUMMARY
30
31
  import { loadVvocConfig } from "../../lib/config-layers.js";
31
32
  import { MANAGED_SUBAGENT_NAMES } from "../../lib/managed-agents.js";
33
+ import { resolveOrchestrationPolicy, } from "../../lib/orchestration.js";
32
34
  import { isVvocPluginEnabled } from "../../lib/plugin-toggle-config.js";
33
35
  import { existsSync } from "node:fs";
34
36
  import { getGlobalOpencodeSkillsDir, getProjectVvocDir, getVvocSkillsDir, } from "../../lib/vvoc-paths.js";
@@ -37,21 +39,8 @@ const PLUGIN_MANAGED_SUBAGENTS = ["guardian"];
37
39
  const INTERNAL_PRIMARY_AGENTS = ["compaction", "title", "summary"];
38
40
  const SELF_SUFFICIENT_PRIMARY_AGENTS = [];
39
41
  const EXPLORE_SUBAGENT = "explore";
40
- const MAIN_SESSION_SYSTEM_CONTEXTS = [
41
- [
42
- "<proactive_context_gathering>",
43
- "Before answering questions about the codebase or making changes, gather the context you need whenever the task depends on unfamiliar code, unclear scope, or multiple candidate implementation areas.",
44
- "When delegation is available, proactively use the explore subagent for repository search and discovery.",
45
- "Treat the explore subagent as a grep/glob/fuzzy-search worker: use it to find relevant files, symbols, call sites, tests, config entries, and useful line ranges.",
46
- "Do not ask explore to return exact file contents, large pasted excerpts, or rewrite proposals. If full contents are needed, have explore return file paths plus the most relevant line ranges or anchors, then read the file directly in the parent session.",
47
- "Keep explore handoffs compact: a short summary and a small set of relevant file references with brief explanations.",
48
- "Use short quoted snippets only when needed to disambiguate a match or support a finding.",
49
- "Skip explore when the target file is already known and one or two direct reads are enough.",
50
- "Gather evidence before acting on unfamiliar code.",
51
- "If the task is already localized and the required context is already in view, work directly.",
52
- "If the current agent cannot delegate, work with the context already in view.",
53
- "</proactive_context_gathering>",
54
- ].join("\n"),
42
+ const VV_CONTROLLER_AGENT = "vv-controller";
43
+ const UNIVERSAL_PRIMARY_SYSTEM_CONTEXTS = [
55
44
  [
56
45
  "<semantic_continuity>",
57
46
  "Reuse stable domain terms from the user request and the repository.",
@@ -68,21 +57,6 @@ const MAIN_SESSION_SYSTEM_CONTEXTS = [
68
57
  "If a material assumption later becomes false, stop and reroute.",
69
58
  "</assumption_discipline>",
70
59
  ].join("\n"),
71
- [
72
- "<standard_trajectories>",
73
- "Prefer known trajectories over ad-hoc behavior.",
74
- "Default trajectories: localized explicit change -> direct_change; bug, regression, or failure -> investigate_first; ambiguous or multi-file change -> change_with_review; explicit review request -> review directly; unclear request -> clarify or proceed with explicit assumptions, then route.",
75
- "Prefer existing project patterns, existing libraries, and established repository structure over novel approaches.",
76
- "</standard_trajectories>",
77
- ].join("\n"),
78
- [
79
- "<task_routing>",
80
- "Before acting on a non-trivial request, classify it as one of: direct_change, investigate_first, or change_with_review.",
81
- "Use the lightest safe path.",
82
- "Start subagents only after goal, acceptance criteria, and verification are stable.",
83
- "If the current agent cannot delegate, reason through the routing mentally.",
84
- "</task_routing>",
85
- ].join("\n"),
86
60
  [
87
61
  "<working_state>",
88
62
  "For non-trivial work, stabilize a compact working state before acting: goal, current route, constraints, non-goals when relevant, assumptions, verification target, current unknown, and reroute if.",
@@ -100,7 +74,7 @@ const MAIN_SESSION_SYSTEM_CONTEXTS = [
100
74
  [
101
75
  "<reroute_on_evidence>",
102
76
  "When new evidence invalidates the current route, stop and reroute.",
103
- "Reroute triggers: direct_change -> investigate_first when root cause, failure path, or expected behavior is still unclear; direct_change -> change_with_review when the scope expands across multiple modules or architectural boundaries; investigate_first -> direct_change when the failure is bounded and the fix path is now clear; any route -> needs_context when requirement ambiguity blocks safe progress.",
77
+ "Reroute when root cause or expected behavior remains unclear, scope crosses an unexpected boundary, or requirement ambiguity blocks safe progress.",
104
78
  "When rerouting, state the current route, the trigger, the next route, and why the previous route is no longer safe.",
105
79
  "</reroute_on_evidence>",
106
80
  ].join("\n"),
@@ -167,11 +141,15 @@ function shouldInjectForAgent(agentName, knownSubagents) {
167
141
  }
168
142
  return true;
169
143
  }
170
- function getSystemContextsForAgent(agentName) {
144
+ /** Returns universal primary guidance and, only for vv-controller, one concrete policy. */
145
+ function getSystemContextsForAgent(agentName, policy) {
171
146
  if (agentName === EXPLORE_SUBAGENT) {
172
147
  return EXPLORE_SYSTEM_CONTEXTS;
173
148
  }
174
- return MAIN_SESSION_SYSTEM_CONTEXTS;
149
+ if (agentName === VV_CONTROLLER_AGENT) {
150
+ return [...UNIVERSAL_PRIMARY_SYSTEM_CONTEXTS, policy.controllerSystemContext];
151
+ }
152
+ return UNIVERSAL_PRIMARY_SYSTEM_CONTEXTS;
175
153
  }
176
154
  // END_BLOCK_AGENT_FILTERS
177
155
  // START_BLOCK_SYSTEM_CONTEXT_FORMATTING
@@ -196,6 +174,7 @@ export const SystemContextInjectionPlugin = async ({ directory }) => {
196
174
  const vvoc = await loadVvocConfig({ cwd: directory });
197
175
  if (!isVvocPluginEnabled(vvoc.config, "system-context-injection"))
198
176
  return {};
177
+ const policy = resolveOrchestrationPolicy(vvoc.config);
199
178
  const knownSubagents = createKnownSubagentSet();
200
179
  const projectRoot = vvoc.source.rootDir ?? directory;
201
180
  return {
@@ -227,7 +206,7 @@ export const SystemContextInjectionPlugin = async ({ directory }) => {
227
206
  if (!shouldInjectForAgent(output.message.agent, knownSubagents)) {
228
207
  return;
229
208
  }
230
- output.message.system = appendSystemContexts(output.message.system, getSystemContextsForAgent(output.message.agent));
209
+ output.message.system = appendSystemContexts(output.message.system, getSystemContextsForAgent(output.message.agent, policy));
231
210
  },
232
211
  };
233
212
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/system-context-injection/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/system-context-injection/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  // FILE: src/plugins/workflow/index.ts
2
2
  // VERSION: 0.3.0
3
3
  // START_MODULE_CONTRACT
4
- // PURPOSE: Register workflow work-item tools, tracked task launch/result hooks, recovery excerpt propagation, and primary-session workflow guidance injection.
5
- // SCOPE: work_item_open/list/close tool registration, explicit tracked launch validation on task tool, OpenCode task-result wrapper normalization, one-shot resumable result repair, tracked result parsing/round aggregation with bounded excerpts, implementation-mode round-limit gating, and chat.message guidance injection with subagent filtering.
6
- // DEPENDS: [@opencode-ai/plugin, src/lib/config-layers.ts, src/lib/managed-agents.ts, src/lib/plugin-toggle-config.ts, src/plugins/workflow/protocol.ts, src/plugins/workflow/repair.ts, src/plugins/workflow/state.ts, src/plugins/workflow/transitions.ts, src/plugins/workflow/tooling.ts]
7
- // LINKS: [M-PLUGIN-WORKFLOW, M-WORKFLOW-PROTOCOL, M-WORKFLOW-REPAIR, M-WORKFLOW-STATE, M-WORKFLOW-TRANSITIONS, M-WORKFLOW-TOOLING]
4
+ // PURPOSE: Register workflow tools and enforcement while injecting only startup-profile-compatible vv-controller guidance.
5
+ // SCOPE: work_item_open/list/close registration, tracked launch validation, result normalization and repair, round aggregation with bounded excerpts, implementation round limits, persistence, and profile-selected chat.message guidance.
6
+ // DEPENDS: [@opencode-ai/plugin, src/lib/config-layers.ts, src/lib/orchestration.ts, src/lib/plugin-toggle-config.ts, src/plugins/workflow/protocol.ts, src/plugins/workflow/repair.ts, src/plugins/workflow/state.ts, src/plugins/workflow/transitions.ts, src/plugins/workflow/tooling.ts]
7
+ // LINKS: [M-PLUGIN-WORKFLOW, M-ORCHESTRATION-PROFILES, M-WORKFLOW-PROTOCOL, M-WORKFLOW-REPAIR, M-WORKFLOW-STATE, M-WORKFLOW-TRANSITIONS, M-WORKFLOW-TOOLING]
8
8
  // ROLE: RUNTIME
9
9
  // MAP_MODE: EXPORTS
10
10
  // END_MODULE_CONTRACT
@@ -26,6 +26,7 @@
26
26
  // LAST_CHANGE: [v0.2.0 - Used transition-policy checks so fresh work items can start with reviewer subagents for review-only workflows.]
27
27
  // LAST_CHANGE: [v0.1.1 - Excluded helper primary agents like enhancer from workflow guidance injection because they cannot participate in tracked workflow tooling.]
28
28
  // LAST_CHANGE: [v0.1.0 - Added workflow plugin integration with tool wiring, tracked launch/result hooks, loop-gate enforcement, and primary-session guidance injection.]
29
+ // LAST_CHANGE: [C-PRESET-ORCHESTRATION-PROFILES - Selected reviewer-only, selective, or full tracked guidance from the startup orchestration policy.]
29
30
  // END_CHANGE_SUMMARY
30
31
  import { tool } from "@opencode-ai/plugin";
31
32
  import { attemptTrackedResultRepair, isTrackedResultRepairEligible, unwrapResumableTaskResult, } from "./repair.js";
@@ -35,6 +36,7 @@ import { getAllowedNextAgents, getAttemptedImplementationRound, shouldBlockRound
35
36
  import { createWorkItemCloseTool, createWorkItemListTool, createWorkItemOpenTool, } from "./tooling.js";
36
37
  import workflowSystemInstructionTemplate from "./system-instruction.md?raw";
37
38
  import { loadVvocConfig } from "../../lib/config-layers.js";
39
+ import { resolveOrchestrationPolicy, } from "../../lib/orchestration.js";
38
40
  import { isVvocPluginEnabled } from "../../lib/plugin-toggle-config.js";
39
41
  import { deleteWorkflowSessionDir, hydrateWorkflowState, snapshotWorkflowState, } from "./persistence.js";
40
42
  const z = tool.schema;
@@ -42,7 +44,40 @@ const TRACKED_SUBAGENT_SET = new Set(TRACKED_SUBAGENT_NAMES);
42
44
  const WORK_ITEM_MISSING_MARKER = "__VVOC" + "_SECRET_BEARER_TOKEN_a6f582092f05__";
43
45
  const INVALID_NEXT_AGENT_MARKER = "__VVOC" + "_SECRET_BEARER_TOKEN_513fa2de603d__";
44
46
  const WORKFLOW_CONTROLLER_AGENT = "vv-controller";
45
- const WORKFLOW_SYSTEM_INSTRUCTION = workflowSystemInstructionTemplate.trim();
47
+ const REVIEW_ONLY_WORKFLOW_SYSTEM_INSTRUCTION = `
48
+ <workflow_protocol>
49
+ Tracked review-only mechanics are available when independent evaluation is explicitly requested or
50
+ materially useful. Open one work item with mode "review_only" and the required reviewer roles,
51
+ launch only reviewers with the returned VVOC_WORK_ITEM_ID, and collect the complete review round.
52
+ Use one review round by default and personally validate every finding. Reviewer FAIL is a completed
53
+ finding result, not a route to vv-implementer. For an explicit review-only request, report findings
54
+ and stop before fixes; during active implementation, apply confirmed fixes directly and run fresh
55
+ verification. Treat BLOCKED and NEEDS_CONTEXT as hard stops and close the work item when ready.
56
+ </workflow_protocol>
57
+ `.trim();
58
+ const SELECTIVE_WORKFLOW_SYSTEM_INSTRUCTION = `
59
+ <workflow_protocol>
60
+ Selective delegation is available but never mandatory. Keep critical reasoning and final synthesis
61
+ in vv-controller; use bounded explore for search, investigator for an isolated failure, a mechanical
62
+ vv-implementer for a settled task, or reviewers for independent evaluation only when useful. Open
63
+ the matching work item with work_item_open, explicit mode, and requiredReviewers before tracked
64
+ implementer or reviewer launches, then preserve its VVOC_WORK_ITEM_ID. Do not create automatic
65
+ implementation or reviewer loops. Review-only FAIL
66
+ results are findings and do not route to an implementer. Treat BLOCKED and NEEDS_CONTEXT as hard
67
+ stops, validate delegated results yourself, run fresh verification, and close completed work items.
68
+ </workflow_protocol>
69
+ `.trim();
70
+ /** Returns the exact workflow instruction compatible with one resolved policy. */
71
+ function getWorkflowSystemInstruction(policy) {
72
+ switch (policy.workflowGuidance) {
73
+ case "review-only":
74
+ return REVIEW_ONLY_WORKFLOW_SYSTEM_INSTRUCTION;
75
+ case "selective":
76
+ return SELECTIVE_WORKFLOW_SYSTEM_INSTRUCTION;
77
+ case "tracked":
78
+ return workflowSystemInstructionTemplate.trim();
79
+ }
80
+ }
46
81
  function isTrackedSubagent(value) {
47
82
  return typeof value === "string" && TRACKED_SUBAGENT_SET.has(value);
48
83
  }
@@ -159,6 +194,7 @@ export const WorkflowPlugin = async ({ client, directory }) => {
159
194
  const vvoc = await loadVvocConfig({ cwd: directory });
160
195
  if (!isVvocPluginEnabled(vvoc.config, "workflow"))
161
196
  return {};
197
+ const workflowSystemInstruction = getWorkflowSystemInstruction(resolveOrchestrationPolicy(vvoc.config));
162
198
  // START_BLOCK_PERSISTENCE_SETUP
163
199
  // Each session (main or subagent) gets its own isolated store.
164
200
  // This prevents subagent tool calls from interfering with the main session's work items.
@@ -558,7 +594,7 @@ export const WorkflowPlugin = async ({ client, directory }) => {
558
594
  if (!shouldInjectForAgent(output.message.agent)) {
559
595
  return;
560
596
  }
561
- output.message.system = appendSystemInstruction(output.message.system, WORKFLOW_SYSTEM_INSTRUCTION);
597
+ output.message.system = appendSystemInstruction(output.message.system, workflowSystemInstruction);
562
598
  },
563
599
  event: async (input) => {
564
600
  const eventType = input.event.type;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/workflow/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/workflow/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { Message } from "@opencode-ai/sdk/v2";
2
+ import type { ContextAnalysis, ContextAnalysisInput } from "./types.js";
3
+ export declare function analyzeContext(input: ContextAnalysisInput): ContextAnalysis;
4
+ export declare function selectActiveMessages(messages: readonly Message[]): readonly Message[];
@@ -0,0 +1,256 @@
1
+ // FILE: src/tui/context/analyze.ts
2
+ // VERSION: 1.0.0
3
+ // START_MODULE_CONTRACT
4
+ // PURPOSE: Derive a measured-versus-estimated active context breakdown from observable OpenCode session data.
5
+ // SCOPE: Compaction cutoff, provider usage baseline, model capacity, skill/tool/message categorization, residual unknown context, and MCP summary preservation.
6
+ // DEPENDS: [@opencode-ai/sdk/v2, src/tui/context/estimate.ts, src/tui/context/types.ts]
7
+ // LINKS: [M-PLUGIN-CONTEXT-TUI, DF-CONTEXT-INSPECTION, V-M-PLUGIN-CONTEXT-TUI]
8
+ // ROLE: CORE_LOGIC
9
+ // MAP_MODE: EXPORTS
10
+ // END_MODULE_CONTRACT
11
+ //
12
+ // START_MODULE_MAP
13
+ // analyzeContext - Produce the complete context analysis rendered by the TUI plugin.
14
+ // selectActiveMessages - Keep only the latest compaction summary and subsequent turns.
15
+ // END_MODULE_MAP
16
+ //
17
+ // START_CHANGE_SUMMARY
18
+ // LAST_CHANGE: [C-CONTEXT-TUI-PLUGIN - Added honest active-context categorization and provider residual accounting.]
19
+ // END_CHANGE_SUMMARY
20
+ import { estimateTextTokens, estimateValueTokens } from "./estimate.js";
21
+ const BUILTIN_TOOL_IDS = new Set([
22
+ "bash",
23
+ "glob",
24
+ "grep",
25
+ "list",
26
+ "read",
27
+ "question",
28
+ "skill",
29
+ "task",
30
+ "todowrite",
31
+ "webfetch",
32
+ "write",
33
+ ]);
34
+ const VVOC_TOOL_IDS = new Set(["edit", "work_item_open", "work_item_list", "work_item_close"]);
35
+ const CATEGORY_LABELS = {
36
+ system: "Agent/system instructions",
37
+ "skill-catalog": "Skill catalog",
38
+ "loaded-skills": "Loaded skill results",
39
+ "builtin-tool-schemas": "Built-in tool schemas",
40
+ "vvoc-tool-schemas": "vvoc tool schemas",
41
+ "external-tool-schemas": "External/plugin/MCP schemas",
42
+ "user-messages": "User messages",
43
+ "assistant-messages": "Assistant messages",
44
+ "tool-results": "Tool calls and results",
45
+ files: "Files and attachments",
46
+ "compacted-summary": "Compacted summary",
47
+ "provider-only": "Unknown/provider-only",
48
+ };
49
+ // START_BLOCK_CONTEXT_ANALYSIS
50
+ export function analyzeContext(input) {
51
+ const activeMessages = selectActiveMessages(input.messages);
52
+ const activeMessageIDs = new Set(activeMessages.map((message) => message.id));
53
+ const activeParts = input.parts.filter((part) => activeMessageIDs.has(part.messageID));
54
+ const latestAssistant = findLatestAssistant(activeMessages);
55
+ const latestUser = findLatestUser(activeMessages);
56
+ const currentAgent = latestAssistant?.agent ?? latestUser?.agent;
57
+ const counters = createCategoryCounter();
58
+ const agentPrompt = input.agents.find((agent) => agent.name === currentAgent)?.prompt;
59
+ counters.system += estimateTextTokens(agentPrompt);
60
+ counters.system += estimateTextTokens(latestUser?.system);
61
+ for (const skill of input.skills) {
62
+ counters["skill-catalog"] += estimateValueTokens({
63
+ name: skill.name,
64
+ description: skill.description,
65
+ location: skill.location,
66
+ });
67
+ }
68
+ for (const tool of input.tools) {
69
+ counters[classifyToolSchema(tool)] += estimateValueTokens({
70
+ id: tool.id,
71
+ description: tool.description,
72
+ parameters: tool.parameters,
73
+ });
74
+ }
75
+ const messageByID = new Map(activeMessages.map((message) => [message.id, message]));
76
+ for (const part of activeParts) {
77
+ countPart(part, messageByID.get(part.messageID), counters);
78
+ }
79
+ const categories = buildKnownCategories(counters);
80
+ const estimatedKnownTokens = categories.reduce((total, category) => total + category.estimatedTokens, 0);
81
+ const measured = latestAssistant
82
+ ? createMeasuredUsage(latestAssistant, input.model?.contextLimit)
83
+ : undefined;
84
+ const providerOnlyTokens = measured ? Math.max(0, measured.usedTokens - estimatedKnownTokens) : 0;
85
+ const estimationDriftTokens = measured
86
+ ? Math.max(0, estimatedKnownTokens - measured.usedTokens)
87
+ : 0;
88
+ if (providerOnlyTokens > 0) {
89
+ categories.push({
90
+ id: "provider-only",
91
+ label: CATEGORY_LABELS["provider-only"],
92
+ estimatedTokens: providerOnlyTokens,
93
+ detail: "Measured provider usage not attributable through public TUI/SDK data",
94
+ source: "provider-residual",
95
+ });
96
+ }
97
+ return {
98
+ sessionID: input.sessionID,
99
+ agent: currentAgent,
100
+ model: input.model,
101
+ measured,
102
+ categories,
103
+ estimatedKnownTokens,
104
+ estimatedTotalTokens: estimatedKnownTokens + providerOnlyTokens,
105
+ estimationDriftTokens,
106
+ compacted: activeMessages.length < input.messages.length,
107
+ activeMessageCount: activeMessages.length,
108
+ mcpServers: [...input.mcpServers],
109
+ warnings: [...(input.warnings ?? [])],
110
+ };
111
+ }
112
+ export function selectActiveMessages(messages) {
113
+ let summaryIndex = -1;
114
+ for (let index = messages.length - 1; index >= 0; index -= 1) {
115
+ const message = messages[index];
116
+ if (message?.role === "assistant" && message.summary === true) {
117
+ summaryIndex = index;
118
+ break;
119
+ }
120
+ }
121
+ return summaryIndex >= 0 ? messages.slice(summaryIndex) : messages;
122
+ }
123
+ // END_BLOCK_CONTEXT_ANALYSIS
124
+ // START_BLOCK_CATEGORY_COUNTING
125
+ function createCategoryCounter() {
126
+ return {
127
+ system: 0,
128
+ "skill-catalog": 0,
129
+ "loaded-skills": 0,
130
+ "builtin-tool-schemas": 0,
131
+ "vvoc-tool-schemas": 0,
132
+ "external-tool-schemas": 0,
133
+ "user-messages": 0,
134
+ "assistant-messages": 0,
135
+ "tool-results": 0,
136
+ files: 0,
137
+ "compacted-summary": 0,
138
+ };
139
+ }
140
+ function classifyToolSchema(tool) {
141
+ if (VVOC_TOOL_IDS.has(tool.id))
142
+ return "vvoc-tool-schemas";
143
+ if (BUILTIN_TOOL_IDS.has(tool.id))
144
+ return "builtin-tool-schemas";
145
+ return "external-tool-schemas";
146
+ }
147
+ function countPart(part, message, counters) {
148
+ switch (part.type) {
149
+ case "text": {
150
+ if (part.ignored)
151
+ return;
152
+ if (message?.role === "user") {
153
+ counters["user-messages"] += estimateTextTokens(part.text);
154
+ }
155
+ else if (message?.role === "assistant" && message.summary) {
156
+ counters["compacted-summary"] += estimateTextTokens(part.text);
157
+ }
158
+ else {
159
+ counters["assistant-messages"] += estimateTextTokens(part.text);
160
+ }
161
+ return;
162
+ }
163
+ case "reasoning":
164
+ counters["assistant-messages"] += estimateTextTokens(part.text);
165
+ return;
166
+ case "subtask":
167
+ counters["assistant-messages"] += estimateValueTokens({
168
+ prompt: part.prompt,
169
+ description: part.description,
170
+ agent: part.agent,
171
+ });
172
+ return;
173
+ case "agent":
174
+ counters["user-messages"] += estimateValueTokens({
175
+ name: part.name,
176
+ source: part.source?.value,
177
+ });
178
+ return;
179
+ case "file":
180
+ counters.files += estimateValueTokens({
181
+ filename: part.filename,
182
+ mime: part.mime,
183
+ source: part.source?.text.value,
184
+ url: part.url.startsWith("data:") ? undefined : part.url,
185
+ });
186
+ return;
187
+ case "tool":
188
+ countToolPart(part, counters);
189
+ return;
190
+ default:
191
+ return;
192
+ }
193
+ }
194
+ function countToolPart(part, counters) {
195
+ const state = part.state;
196
+ const payload = {
197
+ tool: part.tool,
198
+ input: state.input,
199
+ output: state.status === "completed" ? state.output : undefined,
200
+ error: state.status === "error" ? state.error : undefined,
201
+ };
202
+ const target = part.tool === "skill" ? "loaded-skills" : "tool-results";
203
+ counters[target] += estimateValueTokens(payload);
204
+ if (state.status === "completed") {
205
+ for (const attachment of state.attachments ?? []) {
206
+ counters.files += estimateValueTokens({
207
+ filename: attachment.filename,
208
+ mime: attachment.mime,
209
+ source: attachment.source?.text.value,
210
+ });
211
+ }
212
+ }
213
+ }
214
+ function buildKnownCategories(counters) {
215
+ return Object.entries(counters)
216
+ .filter(([, estimatedTokens]) => estimatedTokens > 0)
217
+ .map(([id, estimatedTokens]) => ({
218
+ id,
219
+ label: CATEGORY_LABELS[id],
220
+ estimatedTokens,
221
+ source: "estimated",
222
+ }));
223
+ }
224
+ // END_BLOCK_CATEGORY_COUNTING
225
+ // START_BLOCK_MEASURED_USAGE
226
+ function createMeasuredUsage(message, contextLimit) {
227
+ const usedTokens = message.tokens.input + message.tokens.cache.read + message.tokens.output;
228
+ const normalizedLimit = contextLimit && contextLimit > 0 ? contextLimit : undefined;
229
+ return {
230
+ usedTokens,
231
+ contextLimit: normalizedLimit,
232
+ remainingTokens: normalizedLimit === undefined ? undefined : Math.max(0, normalizedLimit - usedTokens),
233
+ percentUsed: normalizedLimit === undefined ? undefined : (usedTokens / normalizedLimit) * 100,
234
+ inputTokens: message.tokens.input,
235
+ cacheReadTokens: message.tokens.cache.read,
236
+ outputTokens: message.tokens.output,
237
+ };
238
+ }
239
+ function findLatestAssistant(messages) {
240
+ for (let index = messages.length - 1; index >= 0; index -= 1) {
241
+ const message = messages[index];
242
+ if (message?.role === "assistant")
243
+ return message;
244
+ }
245
+ return undefined;
246
+ }
247
+ function findLatestUser(messages) {
248
+ for (let index = messages.length - 1; index >= 0; index -= 1) {
249
+ const message = messages[index];
250
+ if (message?.role === "user")
251
+ return message;
252
+ }
253
+ return undefined;
254
+ }
255
+ // END_BLOCK_MEASURED_USAGE
256
+ //# sourceMappingURL=analyze.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../../src/tui/context/analyze.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { TuiPluginApi } from "@opencode-ai/plugin/tui";
2
+ import type { ContextAnalysis } from "./types.js";
3
+ export declare function collectContextAnalysis(api: TuiPluginApi, sessionID: string): Promise<ContextAnalysis>;