@ramtinj95/opencode-tokenscope 1.4.1 → 1.5.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/README.md CHANGED
@@ -24,19 +24,18 @@ Track and optimize your token usage across system prompts, user messages, tool o
24
24
  ```
25
25
 
26
26
  3. **Create the `/tokenscope` command** by creating `~/.config/opencode/command/tokenscope.md`:
27
- ```bash
28
- mkdir -p ~/.config/opencode/command
29
- cat > ~/.config/opencode/command/tokenscope.md << 'EOF'
30
- ---
31
- description: Analyze token usage across the current session with detailed breakdowns by category
32
- ---
33
-
34
- Call the tokenscope tool directly without delegating to other agents.
35
- Then cat the token-usage-output.txt. DONT DO ANYTHING ELSE WITH THE OUTPUT.
36
- Call the two tools
37
- • Not add any additional text or formatting after that
38
- EOF
39
- ```
27
+
28
+ ```bash
29
+ mkdir -p ~/.config/opencode/command
30
+ cat > ~/.config/opencode/command/tokenscope.md << 'EOF'
31
+ ---
32
+ description: Analyze token usage across the current session with detailed breakdowns by category
33
+ ---
34
+
35
+ Call the tokenscope tool directly without delegating to other agents.
36
+ Then cat the token-usage-output.txt. DONT DO ANYTHING ELSE WITH THE OUTPUT.
37
+ EOF
38
+ ```
40
39
 
41
40
  4. **Restart OpenCode** and run `/tokenscope`
42
41
 
@@ -119,17 +118,17 @@ cat token-usage-output.txt
119
118
  - **Visual Charts**: Easy-to-read ASCII bar charts with percentages and token counts
120
119
  - **Smart Inference**: Automatically infers system prompts from API telemetry (since they're not exposed in session messages)
121
120
 
122
- ### Context Breakdown Analysis (New in v1.4.0)
121
+ ### Context Breakdown Analysis
123
122
  - **System Prompt Components**: See token distribution across base prompt, tool definitions, environment context, project tree, and custom instructions
124
123
  - **Automatic Estimation**: Estimates breakdown from `cache_write` tokens when system prompt content isn't directly available
125
124
  - **Tool Count**: Shows how many tools are loaded and their combined token cost
126
125
 
127
- ### Tool Definition Cost Estimates (New in v1.4.0)
126
+ ### Tool Definition Cost Estimates
128
127
  - **Per-Tool Estimates**: Lists all enabled tools with estimated schema token costs
129
128
  - **Argument Analysis**: Infers argument count and complexity from actual tool calls in the session
130
129
  - **Complexity Detection**: Distinguishes between simple arguments and complex ones (arrays/objects)
131
130
 
132
- ### Cache Efficiency Metrics (New in v1.4.0)
131
+ ### Cache Efficiency Metrics
133
132
  - **Cache Hit Rate**: Visual display of cache read vs fresh input token distribution
134
133
  - **Cost Savings**: Calculates actual savings from prompt caching
135
134
  - **Effective Rate**: Shows what you're actually paying per token vs standard rates
@@ -153,6 +152,54 @@ cat token-usage-output.txt
153
152
  - **Multi-Tokenizer Support**: Uses official tokenizers (tiktoken for OpenAI, transformers for others)
154
153
  - **Configurable Sections**: Enable/disable analysis features via `tokenscope-config.json`
155
154
 
155
+ ### Skill Analysis
156
+ - **Available Skills**: Shows all skills listed in the skill tool definition with their token cost
157
+ - **Loaded Skills**: Tracks skills loaded during the session with call counts
158
+ - **Cumulative Token Tracking**: Accurately counts token cost when skills are called multiple times
159
+
160
+ ## Understanding OpenCode Skill Behavior
161
+
162
+ This section explains how OpenCode handles skills and why the token counting works the way it does.
163
+
164
+ ### How Skills Work
165
+
166
+ Skills are on-demand instructions that agents can load via the `skill` tool. They have two token consumption points:
167
+
168
+ 1. **Available Skills List**: Skill names and descriptions are embedded in the `skill` tool's description as XML. This is part of the system prompt and costs tokens on **every API call**.
169
+
170
+ 2. **Loaded Skill Content**: When an agent calls `skill({ name: "my-skill" })`, the full SKILL.md content is loaded and returned as a tool result.
171
+
172
+ ### Why Multiple Skill Calls Multiply Token Cost
173
+
174
+ **Important**: OpenCode does **not** deduplicate skill content. Each time the same skill is called, the full content is added to context again as a new tool result.
175
+
176
+ This means if you call `skill({ name: "git-release" })` 3 times and it contains 500 tokens:
177
+ - Total context cost = 500 × 3 = **1,500 tokens**
178
+
179
+ This behavior is by design in OpenCode. You can verify this in the source code:
180
+
181
+ | Component | Source Link |
182
+ |-----------|-------------|
183
+ | Skill tool execution | [packages/opencode/src/tool/skill.ts](https://github.com/sst/opencode/blob/main/packages/opencode/src/tool/skill.ts) |
184
+ | Tool result handling | [packages/opencode/src/session/message-v2.ts](https://github.com/sst/opencode/blob/main/packages/opencode/src/session/message-v2.ts) |
185
+ | Skill pruning protection | [packages/opencode/src/session/compaction.ts](https://github.com/sst/opencode/blob/main/packages/opencode/src/session/compaction.ts) |
186
+
187
+ ### Skill Content is Protected from Pruning
188
+
189
+ OpenCode protects skill tool results from being pruned during context management. From the [compaction.ts source](https://github.com/sst/opencode/blob/main/packages/opencode/src/session/compaction.ts):
190
+
191
+ ```typescript
192
+ const PRUNE_PROTECTED_TOOLS = ["skill"]
193
+ ```
194
+
195
+ This means loaded skill content stays in context for the duration of the session (unless full session compaction/summarization occurs).
196
+
197
+ ### Recommendations
198
+
199
+ - **Call skills sparingly**: Since each call adds full content, avoid calling the same skill multiple times
200
+ - **Monitor skill token usage**: Use TokenScope to see which skills consume the most tokens
201
+ - **Consider skill size**: Large skills (1000+ tokens) can quickly inflate context when called repeatedly
202
+
156
203
  ## Example Output
157
204
 
158
205
  ```
@@ -342,7 +389,8 @@ The plugin includes a `tokenscope-config.json` file with these defaults:
342
389
  "enableContextBreakdown": true,
343
390
  "enableToolSchemaEstimation": true,
344
391
  "enableCacheEfficiency": true,
345
- "enableSubagentAnalysis": true
392
+ "enableSubagentAnalysis": true,
393
+ "enableSkillAnalysis": true
346
394
  }
347
395
  ```
348
396
 
@@ -1,6 +1,12 @@
1
1
  import type { SessionMessage, TokenModel, TokenAnalysis, CategoryEntrySource } from "./types";
2
2
  import { TokenizerManager } from "./tokenizer";
3
+ export interface ModelAndProvider {
4
+ model: TokenModel;
5
+ providerID: string;
6
+ modelID: string;
7
+ }
3
8
  export declare class ModelResolver {
9
+ resolveModelAndProvider(messages: SessionMessage[]): ModelAndProvider;
4
10
  resolveTokenModel(messages: SessionMessage[]): TokenModel;
5
11
  private resolveOpenAIModel;
6
12
  private resolveTransformersModel;
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EAEd,UAAU,EACV,aAAa,EACb,mBAAmB,EAMpB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAI9C,qBAAa,aAAa;IACxB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,UAAU;IAezD,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,wBAAwB;IAgChC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,YAAY;CAGrB;AAID,qBAAa,gBAAgB;IAC3B,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAuBvE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,mBAAmB,EAAE;IAgBlG,kBAAkB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAwBrE,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAiBtE,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE;IAI3D,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAmBxE,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,UAAU;CAInB;AAID,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,gBAAgB;gBADhB,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB;IAGtC,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc,EAAE,EAC1B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,aAAa,CAAC;YA6CX,aAAa;IAsB3B,OAAO,CAAC,yBAAyB;CAsFlC"}
1
+ {"version":3,"file":"analyzer.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/analyzer.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EAEd,UAAU,EACV,aAAa,EACb,mBAAmB,EAMpB,MAAM,SAAS,CAAA;AAGhB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAI9C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,UAAU,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,aAAa;IACxB,uBAAuB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,gBAAgB;IAyBrE,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,UAAU;IAezD,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,wBAAwB;IAgChC,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,YAAY;CAGrB;AAID,qBAAa,gBAAgB;IAC3B,oBAAoB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAuBvE,mBAAmB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,mBAAmB,EAAE;IAgBlG,kBAAkB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAwBrE,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAiBtE,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE;IAI3D,qBAAqB,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,mBAAmB,EAAE;IAmBxE,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,UAAU;CAInB;AAID,qBAAa,mBAAmB;IAE5B,OAAO,CAAC,gBAAgB;IACxB,OAAO,CAAC,gBAAgB;gBADhB,gBAAgB,EAAE,gBAAgB,EAClC,gBAAgB,EAAE,gBAAgB;IAGtC,OAAO,CACX,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,cAAc,EAAE,EAC1B,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,aAAa,CAAC;YA6CX,aAAa;IAsB3B,OAAO,CAAC,yBAAyB;CAsFlC"}
@@ -1,8 +1,28 @@
1
1
  // Analysis classes - ModelResolver, ContentCollector, TokenAnalysisEngine
2
2
  import { isToolPart as toolGuard, isReasoningPart as reasoningGuard, isTextPart as textGuard } from "./types";
3
3
  import { OPENAI_MODEL_MAP, TRANSFORMERS_MODEL_MAP, PROVIDER_DEFAULTS } from "./config";
4
- // Model Resolution
5
4
  export class ModelResolver {
5
+ resolveModelAndProvider(messages) {
6
+ let detectedProviderID = "anthropic";
7
+ let detectedModelID = "claude-sonnet-4-20250514";
8
+ for (const message of [...messages].reverse()) {
9
+ if (message.info.providerID) {
10
+ detectedProviderID = this.canonicalize(message.info.providerID) || detectedProviderID;
11
+ }
12
+ if (message.info.modelID) {
13
+ detectedModelID = message.info.modelID;
14
+ }
15
+ if (message.info.providerID && message.info.modelID) {
16
+ break;
17
+ }
18
+ }
19
+ const model = this.resolveTokenModel(messages);
20
+ return {
21
+ model,
22
+ providerID: detectedProviderID,
23
+ modelID: detectedModelID,
24
+ };
25
+ }
6
26
  resolveTokenModel(messages) {
7
27
  for (const message of [...messages].reverse()) {
8
28
  const modelID = this.canonicalize(message.info.modelID);
@@ -1 +1 @@
1
- {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../tokenscope-lib/analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analyzer.js","sourceRoot":"","sources":["../../tokenscope-lib/analyzer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC,eAAO,MAAM,WAAW,QAA0F,CAAA;AAKlH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAY9E;AAID,eAAO,MAAM,yBAAyB,EAAE,gBAKvC,CAAA;AAID,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAatE;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiBnD,CAAA;AAGD,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2BzD,CAAA;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAM3D,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC,eAAO,MAAM,WAAW,QAA0F,CAAA;AAKlH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAY9E;AAID,eAAO,MAAM,yBAAyB,EAAE,gBAMvC,CAAA;AAID,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAatE;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiBnD,CAAA;AAGD,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2BzD,CAAA;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAM3D,CAAA"}
@@ -26,6 +26,7 @@ export const DEFAULT_TOKENSCOPE_CONFIG = {
26
26
  enableToolSchemaEstimation: true,
27
27
  enableCacheEfficiency: true,
28
28
  enableSubagentAnalysis: true,
29
+ enableSkillAnalysis: true,
29
30
  };
30
31
  let TOKENSCOPE_CONFIG_CACHE = null;
31
32
  export async function loadTokenscopeConfig() {
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export declare class OutputFormatter {
9
9
  private readonly TOP_CONTRIBUTOR_LABEL_WIDTH;
10
10
  private readonly CONTEXT_LABEL_WIDTH;
11
11
  private readonly TOOL_ESTIMATE_LABEL_WIDTH;
12
+ private readonly SKILL_NAME_WIDTH;
13
+ private readonly SKILL_DESC_WIDTH;
12
14
  private config;
13
15
  constructor(costCalculator: CostCalculator);
14
16
  setConfig(config: TokenscopeConfig): void;
@@ -20,6 +22,8 @@ export declare class OutputFormatter {
20
22
  private formatToolEstimates;
21
23
  private formatCacheEfficiency;
22
24
  private formatEfficiencyBar;
25
+ private formatAvailableSkills;
26
+ private formatLoadedSkills;
23
27
  private collectTopEntries;
24
28
  private formatNumber;
25
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAOb,gBAAgB,EACjB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAEvC,qBAAa,eAAe;IAWd,OAAO,CAAC,cAAc;IAVlC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAK;IACnC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAI;IACzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAK;IACtC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAK;IACjD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAK;IACzC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAK;IAE/C,OAAO,CAAC,MAAM,CAAgC;gBAE1B,cAAc,EAAE,cAAc;IAElD,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAIzC,OAAO,CAAC,iBAAiB;IA2BzB,MAAM,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM;IAqDvC,OAAO,CAAC,kBAAkB;IAiR1B,OAAO,CAAC,sBAAsB;IAwE9B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,qBAAqB;IA4C7B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,YAAY;CAGrB"}
1
+ {"version":3,"file":"formatter.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,aAAa,EAOb,gBAAgB,EAEjB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAEvC,qBAAa,eAAe;IAad,OAAO,CAAC,cAAc;IAZlC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAK;IAC/B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAK;IACnC,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAI;IACzC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAK;IACtC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAK;IACjD,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAK;IACzC,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAK;IAC/C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAK;IACtC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAK;IAEtC,OAAO,CAAC,MAAM,CAAgC;gBAE1B,cAAc,EAAE,cAAc;IAElD,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI;IAIzC,OAAO,CAAC,iBAAiB;IA2BzB,MAAM,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM;IAsDvC,OAAO,CAAC,kBAAkB;IA4R1B,OAAO,CAAC,sBAAsB;IAwE9B,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,qBAAqB;IA4C7B,OAAO,CAAC,mBAAmB;IAM3B,OAAO,CAAC,qBAAqB;IA+C7B,OAAO,CAAC,kBAAkB;IAwC1B,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,YAAY;CAGrB"}
@@ -8,6 +8,8 @@ export class OutputFormatter {
8
8
  TOP_CONTRIBUTOR_LABEL_WIDTH = 30;
9
9
  CONTEXT_LABEL_WIDTH = 22;
10
10
  TOOL_ESTIMATE_LABEL_WIDTH = 18;
11
+ SKILL_NAME_WIDTH = 22;
12
+ SKILL_DESC_WIDTH = 45;
11
13
  config = null;
12
14
  constructor(costCalculator) {
13
15
  this.costCalculator = costCalculator;
@@ -56,9 +58,9 @@ export class OutputFormatter {
56
58
  .map(([label, stats]) => ({ label, tokens: stats.tokens, calls: stats.calls }))
57
59
  .sort((a, b) => b.tokens - a.tokens);
58
60
  const costEstimate = this.costCalculator.calculateCost(analysis);
59
- return this.formatVisualOutput(analysis.sessionID, analysis.model.name, analysis.totalTokens, analysis.inputTokens, analysis.outputTokens, analysis.reasoningTokens, analysis.cacheReadTokens, analysis.cacheWriteTokens, analysis.assistantMessageCount, analysis.mostRecentInput, analysis.mostRecentOutput, analysis.mostRecentReasoning, analysis.mostRecentCacheRead, analysis.mostRecentCacheWrite, inputCategories, outputCategories, topEntries, toolEntries, costEstimate, analysis.subagentAnalysis, analysis.contextBreakdown, analysis.toolEstimates, analysis.cacheEfficiency);
61
+ return this.formatVisualOutput(analysis.sessionID, analysis.model.name, analysis.totalTokens, analysis.inputTokens, analysis.outputTokens, analysis.reasoningTokens, analysis.cacheReadTokens, analysis.cacheWriteTokens, analysis.assistantMessageCount, analysis.mostRecentInput, analysis.mostRecentOutput, analysis.mostRecentReasoning, analysis.mostRecentCacheRead, analysis.mostRecentCacheWrite, inputCategories, outputCategories, topEntries, toolEntries, costEstimate, analysis.subagentAnalysis, analysis.contextBreakdown, analysis.toolEstimates, analysis.cacheEfficiency, analysis.skillAnalysis);
60
62
  }
61
- formatVisualOutput(sessionID, modelName, totalTokens, inputTokens, outputTokens, reasoningTokens, cacheReadTokens, cacheWriteTokens, assistantMessageCount, mostRecentInput, mostRecentOutput, mostRecentReasoning, mostRecentCacheRead, mostRecentCacheWrite, inputCategories, outputCategories, topEntries, toolEntries, cost, subagentAnalysis, contextBreakdown, toolEstimates, cacheEfficiency) {
63
+ formatVisualOutput(sessionID, modelName, totalTokens, inputTokens, outputTokens, reasoningTokens, cacheReadTokens, cacheWriteTokens, assistantMessageCount, mostRecentInput, mostRecentOutput, mostRecentReasoning, mostRecentCacheRead, mostRecentCacheWrite, inputCategories, outputCategories, topEntries, toolEntries, cost, subagentAnalysis, contextBreakdown, toolEstimates, cacheEfficiency, skillAnalysis) {
62
64
  const lines = [];
63
65
  const sessionTotal = inputTokens + cacheReadTokens + cacheWriteTokens + outputTokens + reasoningTokens;
64
66
  const mainCost = cost.isSubscription ? cost.estimatedSessionCost : cost.apiSessionCost;
@@ -211,6 +213,15 @@ export class OutputFormatter {
211
213
  if (this.config?.enableContextBreakdown && contextBreakdown && contextBreakdown.totalCachedContext > 0) {
212
214
  lines.push(...this.formatContextBreakdown(contextBreakdown));
213
215
  }
216
+ // 7.5 SKILLS ANALYSIS (if enabled and available)
217
+ if (this.config?.enableSkillAnalysis && skillAnalysis) {
218
+ if (skillAnalysis.availableSkills.length > 0) {
219
+ lines.push(...this.formatAvailableSkills(skillAnalysis));
220
+ }
221
+ if (skillAnalysis.loadedSkills.length > 0) {
222
+ lines.push(...this.formatLoadedSkills(skillAnalysis));
223
+ }
224
+ }
214
225
  // 8. TOOL DEFINITION COSTS (if enabled and available)
215
226
  if (this.config?.enableToolSchemaEstimation && toolEstimates && toolEstimates.length > 0) {
216
227
  lines.push(...this.formatToolEstimates(toolEstimates));
@@ -396,6 +407,68 @@ export class OutputFormatter {
396
407
  const barWidth = Math.round((percentage / 100) * this.BAR_WIDTH);
397
408
  return "\u2588".repeat(barWidth) + "\u2591".repeat(Math.max(0, this.BAR_WIDTH - barWidth));
398
409
  }
410
+ formatAvailableSkills(analysis) {
411
+ const lines = [];
412
+ const total = analysis.totalAvailableTokens;
413
+ lines.push(``);
414
+ lines.push(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`);
415
+ lines.push(`AVAILABLE SKILLS (in tool definitions)`);
416
+ lines.push(`\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
417
+ lines.push(``);
418
+ lines.push(`These skills are listed in the skill tool description and consume tokens on every API call.`);
419
+ lines.push(``);
420
+ // Header
421
+ const nameHeader = "Skill".padEnd(this.SKILL_NAME_WIDTH);
422
+ const descHeader = "Description".padEnd(this.SKILL_DESC_WIDTH);
423
+ lines.push(` ${nameHeader} ${descHeader} Tokens`);
424
+ lines.push(` \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
425
+ // Sort by tokens descending
426
+ const sortedSkills = [...analysis.availableSkills].sort((a, b) => b.tokens - a.tokens);
427
+ for (const skill of sortedSkills) {
428
+ const name = skill.name.length > this.SKILL_NAME_WIDTH
429
+ ? skill.name.substring(0, this.SKILL_NAME_WIDTH - 1) + "\u2026"
430
+ : skill.name.padEnd(this.SKILL_NAME_WIDTH);
431
+ const desc = skill.description.length > this.SKILL_DESC_WIDTH
432
+ ? skill.description.substring(0, this.SKILL_DESC_WIDTH - 1) + "\u2026"
433
+ : skill.description.padEnd(this.SKILL_DESC_WIDTH);
434
+ const tokens = `~${this.formatNumber(skill.tokens)}`.padStart(7);
435
+ lines.push(` ${name} ${desc} ${tokens}`);
436
+ }
437
+ lines.push(` \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
438
+ lines.push(` Total: ~${this.formatNumber(total)} tokens (${analysis.availableSkills.length} skills available)`);
439
+ lines.push(``);
440
+ lines.push(` Note: Full skill tool description is ~${this.formatNumber(analysis.skillToolDescriptionTokens)} tokens (includes boilerplate).`);
441
+ return lines;
442
+ }
443
+ formatLoadedSkills(analysis) {
444
+ const lines = [];
445
+ const total = analysis.totalLoadedTokens;
446
+ lines.push(``);
447
+ lines.push(`\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550`);
448
+ lines.push(`LOADED SKILLS (on-demand content)`);
449
+ lines.push(`\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
450
+ lines.push(``);
451
+ lines.push(`Skills loaded during this session via the skill tool.`);
452
+ lines.push(``);
453
+ // Header
454
+ const nameHeader = "Skill".padEnd(this.SKILL_NAME_WIDTH);
455
+ lines.push(` ${nameHeader} Message # Tokens Calls`);
456
+ lines.push(` \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
457
+ for (const skill of analysis.loadedSkills) {
458
+ const name = skill.name.length > this.SKILL_NAME_WIDTH
459
+ ? skill.name.substring(0, this.SKILL_NAME_WIDTH - 1) + "\u2026"
460
+ : skill.name.padEnd(this.SKILL_NAME_WIDTH);
461
+ const msgNum = `#${skill.firstMessageIndex}`.padStart(10);
462
+ const tokens = this.formatNumber(skill.totalTokens).padStart(10);
463
+ const calls = `${skill.callCount}x`.padStart(9);
464
+ lines.push(` ${name} ${msgNum} ${tokens} ${calls}`);
465
+ }
466
+ lines.push(` \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500`);
467
+ lines.push(` Total: ${this.formatNumber(total)} tokens (${analysis.loadedSkills.length} skill${analysis.loadedSkills.length !== 1 ? "s" : ""} loaded)`);
468
+ lines.push(``);
469
+ lines.push(` Note: Loaded skill content stays in context (protected from pruning).`);
470
+ return lines;
471
+ }
399
472
  collectTopEntries(analysis, limit) {
400
473
  const pool = [
401
474
  ...analysis.categories.system.allEntries,
@@ -1 +1 @@
1
- {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"formatter.js","sourceRoot":"","sources":["../../tokenscope-lib/formatter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type { SessionMessage, SkillAnalysis, TokenModel, TokenscopeConfig } from "./types";
2
+ import { TokenizerManager } from "./tokenizer";
3
+ export declare class SkillAnalyzer {
4
+ private client;
5
+ private tokenizerManager;
6
+ constructor(client: any, tokenizerManager: TokenizerManager);
7
+ /**
8
+ * Main entry point - analyzes skill usage in a session
9
+ */
10
+ analyze(messages: SessionMessage[], providerID: string, modelID: string, tokenModel: TokenModel, config: TokenscopeConfig): Promise<SkillAnalysis | undefined>;
11
+ /**
12
+ * Fetch available skills from the tool.list() API and parse them
13
+ */
14
+ private getAvailableSkills;
15
+ /**
16
+ * Parse the <available_skills> XML from skill tool description
17
+ */
18
+ private parseAvailableSkillsXml;
19
+ /**
20
+ * Collect loaded skills from session messages with call count tracking
21
+ */
22
+ private getLoadedSkills;
23
+ /**
24
+ * Extract skill name from tool state
25
+ */
26
+ private extractSkillName;
27
+ }
28
+ //# sourceMappingURL=skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/skill.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EAGb,UAAU,EACV,gBAAgB,EACjB,MAAM,SAAS,CAAA;AAEhB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,qBAAa,aAAa;IAEtB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,gBAAgB;gBADhB,MAAM,EAAE,GAAG,EACX,gBAAgB,EAAE,gBAAgB;IAG5C;;OAEG;IACG,OAAO,CACX,QAAQ,EAAE,cAAc,EAAE,EAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,gBAAgB,GACvB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;IA+BrC;;OAEG;YACW,kBAAkB;IAoDhC;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAyB/B;;OAEG;YACW,eAAe;IAmF7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAqBzB"}
@@ -0,0 +1,197 @@
1
+ // SkillAnalyzer - analyzes skill usage and token consumption
2
+ import { isToolPart } from "./types";
3
+ export class SkillAnalyzer {
4
+ client;
5
+ tokenizerManager;
6
+ constructor(client, tokenizerManager) {
7
+ this.client = client;
8
+ this.tokenizerManager = tokenizerManager;
9
+ }
10
+ /**
11
+ * Main entry point - analyzes skill usage in a session
12
+ */
13
+ async analyze(messages, providerID, modelID, tokenModel, config) {
14
+ if (!config.enableSkillAnalysis) {
15
+ return undefined;
16
+ }
17
+ const result = {
18
+ availableSkills: [],
19
+ loadedSkills: [],
20
+ totalAvailableTokens: 0,
21
+ totalLoadedTokens: 0,
22
+ skillToolDescriptionTokens: 0,
23
+ };
24
+ try {
25
+ // 1. Get available skills from tool.list() API
26
+ const availableResult = await this.getAvailableSkills(providerID, modelID, tokenModel);
27
+ result.availableSkills = availableResult.skills;
28
+ result.totalAvailableTokens = availableResult.totalTokens;
29
+ result.skillToolDescriptionTokens = availableResult.descriptionTokens;
30
+ // 2. Get loaded skills from session messages
31
+ const loadedResult = await this.getLoadedSkills(messages, tokenModel);
32
+ result.loadedSkills = loadedResult.skills;
33
+ result.totalLoadedTokens = loadedResult.totalTokens;
34
+ }
35
+ catch (error) {
36
+ console.error("Skill analysis failed:", error);
37
+ }
38
+ return result;
39
+ }
40
+ /**
41
+ * Fetch available skills from the tool.list() API and parse them
42
+ */
43
+ async getAvailableSkills(providerID, modelID, tokenModel) {
44
+ const skills = [];
45
+ let totalTokens = 0;
46
+ let descriptionTokens = 0;
47
+ try {
48
+ // Call the experimental tool list API
49
+ const response = await this.client.tool.list({
50
+ query: {
51
+ provider: providerID,
52
+ model: modelID,
53
+ },
54
+ });
55
+ const tools = response?.data ?? response ?? [];
56
+ // Find the skill tool
57
+ const skillTool = tools.find((t) => t.id === "skill");
58
+ if (!skillTool || !skillTool.description) {
59
+ return { skills, totalTokens, descriptionTokens };
60
+ }
61
+ // Tokenize the full skill tool description
62
+ descriptionTokens = await this.tokenizerManager.countTokens(skillTool.description, tokenModel);
63
+ // Parse the <available_skills> XML from the description
64
+ const parsedSkills = this.parseAvailableSkillsXml(skillTool.description);
65
+ // Tokenize each skill's contribution
66
+ for (const skill of parsedSkills) {
67
+ // Reconstruct the XML for this skill to get accurate token count
68
+ const skillXml = ` <skill> <name>${skill.name}</name> <description>${skill.description}</description> </skill>`;
69
+ const tokens = await this.tokenizerManager.countTokens(skillXml, tokenModel);
70
+ skills.push({
71
+ name: skill.name,
72
+ description: skill.description,
73
+ tokens,
74
+ });
75
+ totalTokens += tokens;
76
+ }
77
+ }
78
+ catch (error) {
79
+ console.error("Failed to fetch available skills:", error);
80
+ }
81
+ return { skills, totalTokens, descriptionTokens };
82
+ }
83
+ /**
84
+ * Parse the <available_skills> XML from skill tool description
85
+ */
86
+ parseAvailableSkillsXml(description) {
87
+ const skills = [];
88
+ // Find the <available_skills> section
89
+ const availableSkillsMatch = description.match(/<available_skills>([\s\S]*?)<\/available_skills>/i);
90
+ if (!availableSkillsMatch) {
91
+ return skills;
92
+ }
93
+ const xmlContent = availableSkillsMatch[1];
94
+ // Parse each <skill> entry
95
+ const skillRegex = /<skill>\s*<name>([^<]+)<\/name>\s*<description>([^<]*)<\/description>\s*<\/skill>/gi;
96
+ let match;
97
+ while ((match = skillRegex.exec(xmlContent)) !== null) {
98
+ skills.push({
99
+ name: match[1].trim(),
100
+ description: match[2].trim(),
101
+ });
102
+ }
103
+ return skills;
104
+ }
105
+ /**
106
+ * Collect loaded skills from session messages with call count tracking
107
+ */
108
+ async getLoadedSkills(messages, tokenModel) {
109
+ // Track skills by name to aggregate call counts
110
+ const skillMap = new Map();
111
+ let totalTokens = 0;
112
+ let messageIndex = 0;
113
+ for (const message of messages) {
114
+ // Track message index for user/assistant messages
115
+ if (message.info.role === "user" || message.info.role === "assistant") {
116
+ messageIndex++;
117
+ }
118
+ for (const part of message.parts) {
119
+ if (!isToolPart(part))
120
+ continue;
121
+ if (part.tool !== "skill")
122
+ continue;
123
+ if (part.state.status !== "completed")
124
+ continue;
125
+ // Extract skill name from input or metadata
126
+ const skillName = this.extractSkillName(part.state);
127
+ if (!skillName)
128
+ continue;
129
+ // Get the output content
130
+ const content = (part.state.output ?? "").toString().trim();
131
+ if (!content)
132
+ continue;
133
+ // Check if we've seen this skill before
134
+ const existing = skillMap.get(skillName);
135
+ if (existing) {
136
+ // Increment call count for existing skill
137
+ existing.callCount++;
138
+ }
139
+ else {
140
+ // Tokenize the loaded content (only once per unique skill)
141
+ const tokens = await this.tokenizerManager.countTokens(content, tokenModel);
142
+ skillMap.set(skillName, {
143
+ name: skillName,
144
+ callCount: 1,
145
+ firstMessageIndex: messageIndex,
146
+ tokens,
147
+ content: content.length > 500 ? content.substring(0, 500) + "..." : content,
148
+ });
149
+ }
150
+ }
151
+ }
152
+ // Convert map to array and calculate totals
153
+ // Note: We multiply tokens by callCount because OpenCode does NOT deduplicate
154
+ // skill content. Each call to the skill tool adds the full content to context
155
+ // as a new tool result. See OpenCode source:
156
+ // - Skill tool execution: https://github.com/sst/opencode/blob/main/packages/opencode/src/tool/skill.ts
157
+ // - Tool result handling: https://github.com/sst/opencode/blob/main/packages/opencode/src/session/message-v2.ts
158
+ const skills = [];
159
+ for (const [, skillData] of skillMap) {
160
+ const totalSkillTokens = skillData.tokens * skillData.callCount;
161
+ skills.push({
162
+ name: skillData.name,
163
+ callCount: skillData.callCount,
164
+ firstMessageIndex: skillData.firstMessageIndex,
165
+ tokens: skillData.tokens,
166
+ totalTokens: totalSkillTokens,
167
+ content: skillData.content,
168
+ });
169
+ totalTokens += totalSkillTokens;
170
+ }
171
+ // Sort by total tokens descending
172
+ skills.sort((a, b) => b.totalTokens - a.totalTokens);
173
+ return { skills, totalTokens };
174
+ }
175
+ /**
176
+ * Extract skill name from tool state
177
+ */
178
+ extractSkillName(state) {
179
+ // Try input.name first
180
+ if (state.input && typeof state.input === "object" && state.input.name) {
181
+ return String(state.input.name);
182
+ }
183
+ // Try metadata.name
184
+ if (state.metadata && typeof state.metadata === "object" && state.metadata.name) {
185
+ return String(state.metadata.name);
186
+ }
187
+ // Try parsing from title "Loaded skill: {name}"
188
+ if (state.title && typeof state.title === "string") {
189
+ const match = state.title.match(/Loaded skill:\s*(.+)/i);
190
+ if (match) {
191
+ return match[1].trim();
192
+ }
193
+ }
194
+ return undefined;
195
+ }
196
+ }
197
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../tokenscope-lib/skill.ts"],"names":[],"mappings":"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"}
@@ -37,7 +37,10 @@ export type SessionMessagePart = {
37
37
  };
38
38
  export interface ToolState {
39
39
  status: "pending" | "running" | "completed" | "error";
40
+ input?: Record<string, unknown>;
40
41
  output?: string;
42
+ title?: string;
43
+ metadata?: Record<string, unknown>;
41
44
  }
42
45
  export interface CategoryEntry {
43
46
  label: string;
@@ -79,6 +82,7 @@ export interface TokenAnalysis {
79
82
  contextBreakdown?: ContextBreakdown;
80
83
  toolEstimates?: ToolSchemaEstimate[];
81
84
  cacheEfficiency?: CacheEfficiency;
85
+ skillAnalysis?: SkillAnalysis;
82
86
  }
83
87
  export interface TokenModel {
84
88
  name: string;
@@ -169,6 +173,26 @@ export interface ToolSchemaEstimate {
169
173
  argumentCount: number;
170
174
  hasComplexArgs: boolean;
171
175
  }
176
+ export interface AvailableSkill {
177
+ name: string;
178
+ description: string;
179
+ tokens: number;
180
+ }
181
+ export interface LoadedSkill {
182
+ name: string;
183
+ callCount: number;
184
+ firstMessageIndex: number;
185
+ tokens: number;
186
+ totalTokens: number;
187
+ content: string;
188
+ }
189
+ export interface SkillAnalysis {
190
+ availableSkills: AvailableSkill[];
191
+ loadedSkills: LoadedSkill[];
192
+ totalAvailableTokens: number;
193
+ totalLoadedTokens: number;
194
+ skillToolDescriptionTokens: number;
195
+ }
172
196
  export interface CacheEfficiency {
173
197
  cacheReadTokens: number;
174
198
  freshInputTokens: number;
@@ -218,6 +242,7 @@ export interface TokenscopeConfig {
218
242
  enableToolSchemaEstimation: boolean;
219
243
  enableCacheEfficiency: boolean;
220
244
  enableSubagentAnalysis: boolean;
245
+ enableSkillAnalysis: boolean;
221
246
  }
222
247
  export interface ContextAnalysisResult {
223
248
  contextBreakdown?: ContextBreakdown;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../tokenscope-lib/types.ts"],"names":[],"mappings":"AAAA,iDAAiD;AAgQjD,cAAc;AAEd,MAAM,UAAU,UAAU,CAAC,IAAwB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAwB;IACtD,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAwB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7B,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../tokenscope-lib/types.ts"],"names":[],"mappings":"AAAA,iDAAiD;AA8RjD,cAAc;AAEd,MAAM,UAAU,UAAU,CAAC,IAAwB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAwB;IACtD,OAAO,IAAI,CAAC,IAAI,KAAK,WAAW,CAAA;AAClC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAwB;IACjD,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAA;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokenscope.d.ts","sourceRoot":"","sources":["../tokenscope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAcjD,eAAO,MAAM,mBAAmB,EAAE,MAyGjC,CAAA;AAGD,eAAe,mBAAmB,CAAA"}
1
+ {"version":3,"file":"tokenscope.d.ts","sourceRoot":"","sources":["../tokenscope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAejD,eAAO,MAAM,mBAAmB,EAAE,MAqHjC,CAAA;AAGD,eAAe,mBAAmB,CAAA"}
@@ -9,6 +9,7 @@ import { CostCalculator } from "./tokenscope-lib/cost";
9
9
  import { SubagentAnalyzer } from "./tokenscope-lib/subagent";
10
10
  import { OutputFormatter } from "./tokenscope-lib/formatter";
11
11
  import { ContextAnalyzer } from "./tokenscope-lib/context";
12
+ import { SkillAnalyzer } from "./tokenscope-lib/skill";
12
13
  export const TokenAnalyzerPlugin = async ({ client }) => {
13
14
  const pricingData = await loadModelPricing();
14
15
  const config = await loadTokenscopeConfig();
@@ -19,6 +20,7 @@ export const TokenAnalyzerPlugin = async ({ client }) => {
19
20
  const costCalculator = new CostCalculator(pricingData);
20
21
  const subagentAnalyzer = new SubagentAnalyzer(client, costCalculator, pricingData);
21
22
  const contextAnalyzer = new ContextAnalyzer(tokenizerManager);
23
+ const skillAnalyzer = new SkillAnalyzer(client, tokenizerManager);
22
24
  const formatter = new OutputFormatter(costCalculator);
23
25
  // Set config on formatter to control section rendering
24
26
  formatter.setConfig(config);
@@ -45,7 +47,7 @@ export const TokenAnalyzerPlugin = async ({ client }) => {
45
47
  if (!Array.isArray(messages) || messages.length === 0) {
46
48
  return `Session ${sessionID} has no messages yet.`;
47
49
  }
48
- const tokenModel = modelResolver.resolveTokenModel(messages);
50
+ const { model: tokenModel, providerID, modelID } = modelResolver.resolveModelAndProvider(messages);
49
51
  const analysis = await analysisEngine.analyze(sessionID, messages, tokenModel, args.limitMessages ?? DEFAULT_ENTRY_LIMIT);
50
52
  // Subagent analysis (respects config)
51
53
  const shouldIncludeSubagents = args.includeSubagents !== false && config.enableSubagentAnalysis;
@@ -65,6 +67,10 @@ export const TokenAnalyzerPlugin = async ({ client }) => {
65
67
  if (contextResult.cacheEfficiency) {
66
68
  analysis.cacheEfficiency = contextResult.cacheEfficiency;
67
69
  }
70
+ // Skill analysis (respects config)
71
+ if (config.enableSkillAnalysis) {
72
+ analysis.skillAnalysis = await skillAnalyzer.analyze(messages, providerID, modelID, tokenModel, config);
73
+ }
68
74
  const output = formatter.format(analysis);
69
75
  const outputPath = path.join(process.cwd(), "token-usage-output.txt");
70
76
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"tokenscope.js","sourceRoot":"","sources":["../tokenscope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenscope.js","sourceRoot":"","sources":["../tokenscope.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "@ramtinj95/opencode-tokenscope",
4
- "version": "1.4.1",
4
+ "version": "1.5.0",
5
5
  "description": "OpenCode plugin for detailed token usage analysis with breakdowns by category, visual charts, and subagent cost tracking",
6
6
  "type": "module",
7
7
  "main": "./dist/tokenscope.js",
@@ -2,5 +2,6 @@
2
2
  "enableContextBreakdown": true,
3
3
  "enableToolSchemaEstimation": true,
4
4
  "enableCacheEfficiency": true,
5
- "enableSubagentAnalysis": true
5
+ "enableSubagentAnalysis": true,
6
+ "enableSkillAnalysis": true
6
7
  }