@ramtinj95/opencode-tokenscope 1.6.2 → 1.6.3

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
@@ -33,6 +33,7 @@ description: Analyze token usage across the current session with detailed breakd
33
33
  ---
34
34
 
35
35
  Call the tokenscope tool directly without delegating to other agents.
36
+ Leave sessionID unset unless the user explicitly asked to analyze a different session.
36
37
  Then cat the token-usage-output.txt. DONT DO ANYTHING ELSE WITH THE OUTPUT.
37
38
  EOF
38
39
  ```
@@ -62,7 +63,7 @@ Then restart OpenCode and run `/tokenscope`
62
63
  |---------------------------|----------|
63
64
  | `"@ramtinj95/opencode-tokenscope"` | Uses the version installed at install time. **Never auto-updates.** |
64
65
  | `"@ramtinj95/opencode-tokenscope@latest"` | Fetches latest version **every time OpenCode starts**. |
65
- | `"@ramtinj95/opencode-tokenscope@1.6.2"` | Pins to exact version 1.6.2. Never updates. |
66
+ | `"@ramtinj95/opencode-tokenscope@1.6.3"` | Pins to exact version 1.6.3. Never updates. |
66
67
 
67
68
  To manually update:
68
69
  ```bash
@@ -101,7 +102,7 @@ The plugin will:
101
102
 
102
103
  ### Options
103
104
 
104
- - **sessionID**: Analyze a specific session instead of the current one
105
+ - **sessionID**: Optional explicit session ID. Leave unset to analyze the current session; blank values are ignored
105
106
  - **limitMessages**: Limit entries shown per category (1-10, default: 3)
106
107
  - **includeSubagents**: Include subagent child session costs (default: true)
107
108
 
@@ -1,5 +1,6 @@
1
1
  import type { TokenizerSpec, ModelPricing, TokenscopeConfig } from "./types";
2
2
  export declare const DEFAULT_ENTRY_LIMIT = 3;
3
+ export declare function resolveBundledAssetPath(filename: string, moduleDir?: string): Promise<string>;
3
4
  export declare function loadModelPricing(): Promise<Record<string, ModelPricing>>;
4
5
  export declare const DEFAULT_TOKENSCOPE_CONFIG: TokenscopeConfig;
5
6
  export declare function loadTokenscopeConfig(): Promise<TokenscopeConfig>;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAQpC,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAY9E;AAID,eAAO,MAAM,yBAAyB,EAAE,gBAMvC,CAAA;AAaD,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAatE;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiBnD,CAAA;AAGD,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2BlE,CAAA;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAK3D,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../tokenscope-lib/config.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAE5E,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAKpC,wBAAsB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,SAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAkBvG;AAKD,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAY9E;AAID,eAAO,MAAM,yBAAyB,EAAE,gBAMvC,CAAA;AAaD,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CActE;AAGD,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiBnD,CAAA;AAGD,eAAO,MAAM,+BAA+B,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA2BlE,CAAA;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAK3D,CAAA"}
@@ -4,16 +4,34 @@ import fs from "fs/promises";
4
4
  import { homedir } from "os";
5
5
  import { fileURLToPath } from "url";
6
6
  export const DEFAULT_ENTRY_LIMIT = 3;
7
- const PACKAGE_ROOT = path.join(path.dirname(fileURLToPath(import.meta.url)), "..");
8
- const BUNDLED_TOKENSCOPE_CONFIG_PATH = path.join(PACKAGE_ROOT, "tokenscope-config.json");
7
+ const MODULE_DIR = path.dirname(fileURLToPath(import.meta.url));
9
8
  const USER_TOKENSCOPE_CONFIG_PATH = path.join(homedir(), ".config", "opencode", "tokenscope-config.json");
9
+ const BUNDLED_ASSET_PATH_CACHE = new Map();
10
+ export async function resolveBundledAssetPath(filename, moduleDir = MODULE_DIR) {
11
+ const cacheKey = `${moduleDir}:${filename}`;
12
+ const cached = BUNDLED_ASSET_PATH_CACHE.get(cacheKey);
13
+ if (cached)
14
+ return cached;
15
+ const candidates = [path.join(moduleDir, "..", filename), path.join(moduleDir, "../..", filename)];
16
+ for (const candidate of candidates) {
17
+ try {
18
+ await fs.access(candidate);
19
+ BUNDLED_ASSET_PATH_CACHE.set(cacheKey, candidate);
20
+ return candidate;
21
+ }
22
+ catch { }
23
+ }
24
+ const fallback = candidates[0];
25
+ BUNDLED_ASSET_PATH_CACHE.set(cacheKey, fallback);
26
+ return fallback;
27
+ }
10
28
  // Pricing cache
11
29
  let PRICING_CACHE = null;
12
30
  export async function loadModelPricing() {
13
31
  if (PRICING_CACHE)
14
32
  return PRICING_CACHE;
15
33
  try {
16
- const modelsPath = path.join(PACKAGE_ROOT, "models.json");
34
+ const modelsPath = await resolveBundledAssetPath("models.json");
17
35
  const data = await fs.readFile(modelsPath, "utf8");
18
36
  PRICING_CACHE = JSON.parse(data);
19
37
  return PRICING_CACHE;
@@ -45,7 +63,8 @@ export async function loadTokenscopeConfig() {
45
63
  if (TOKENSCOPE_CONFIG_CACHE)
46
64
  return TOKENSCOPE_CONFIG_CACHE;
47
65
  const userConfig = await readTokenscopeConfigFile(USER_TOKENSCOPE_CONFIG_PATH);
48
- const bundledConfig = userConfig ? null : await readTokenscopeConfigFile(BUNDLED_TOKENSCOPE_CONFIG_PATH);
66
+ const bundledConfigPath = userConfig ? null : await resolveBundledAssetPath("tokenscope-config.json");
67
+ const bundledConfig = bundledConfigPath ? await readTokenscopeConfigFile(bundledConfigPath) : null;
49
68
  TOKENSCOPE_CONFIG_CACHE = {
50
69
  ...DEFAULT_TOKENSCOPE_CONFIG,
51
70
  ...(bundledConfig ?? {}),
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"tokenscope.d.ts","sourceRoot":"","sources":["../tokenscope.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA4DjD,eAAO,MAAM,mBAAmB,EAAE,MAuKjC,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;AAiEjD,eAAO,MAAM,mBAAmB,EAAE,MA0KjC,CAAA;AAGD,eAAe,mBAAmB,CAAA"}
@@ -50,6 +50,10 @@ function buildFailureReport(sessionID, warnings, fatalMessage) {
50
50
  lines.push("Try again after switching to a supported model or updating the plugin.");
51
51
  return lines.join("\n");
52
52
  }
53
+ function normalizeSessionID(sessionID) {
54
+ const normalized = sessionID?.trim();
55
+ return normalized ? normalized : undefined;
56
+ }
53
57
  export const TokenAnalyzerPlugin = async ({ client, serverUrl, directory }) => {
54
58
  const pricingData = await loadModelPricing();
55
59
  const config = await loadTokenscopeConfig();
@@ -62,7 +66,10 @@ export const TokenAnalyzerPlugin = async ({ client, serverUrl, directory }) => {
62
66
  description: "Analyze token usage across the current session with detailed breakdowns by category (system, user, assistant, tools, reasoning). " +
63
67
  "Provides visual charts, identifies top token consumers, and includes costs from subagent (Task tool) child sessions.",
64
68
  args: {
65
- sessionID: tool.schema.string().optional(),
69
+ sessionID: tool.schema
70
+ .string()
71
+ .optional()
72
+ .describe("Optional explicit session ID. Leave unset to analyze the current session."),
66
73
  limitMessages: tool.schema.number().int().min(1).max(10).optional(),
67
74
  includeSubagents: tool.schema
68
75
  .boolean()
@@ -79,7 +86,7 @@ export const TokenAnalyzerPlugin = async ({ client, serverUrl, directory }) => {
79
86
  const skillAnalyzer = new SkillAnalyzer(client, tokenizerManager, serverUrl, directory, warnings);
80
87
  const formatter = new OutputFormatter(costCalculator);
81
88
  formatter.setConfig(config);
82
- const sessionID = args.sessionID ?? context.sessionID;
89
+ const sessionID = normalizeSessionID(args.sessionID) ?? normalizeSessionID(context.sessionID);
83
90
  if (!sessionID) {
84
91
  const output = buildFailureReport(undefined, warnings.list(), "No session ID available for token analysis");
85
92
  const writeError = await writeReport(outputPath, output);
@@ -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.6.2",
4
+ "version": "1.6.3",
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",
@@ -9,6 +9,7 @@
9
9
  "scripts": {
10
10
  "clean": "rm -rf dist",
11
11
  "build": "npm run clean && tsc",
12
+ "test": "bun test",
12
13
  "prepublishOnly": "npm run build",
13
14
  "typecheck": "tsc --noEmit"
14
15
  },