tokensniff 0.1.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/LICENSE +21 -0
- package/README.md +809 -0
- package/bin/tokensniff-status.js +8 -0
- package/bin/tokensniff.js +8 -0
- package/dist/cli/run.d.ts +64 -0
- package/dist/cli/run.d.ts.map +1 -0
- package/dist/cli.js +2206 -0
- package/dist/cli.js.map +1 -0
- package/dist/collector/config.d.ts +43 -0
- package/dist/collector/config.d.ts.map +1 -0
- package/dist/collector/index.d.ts +14 -0
- package/dist/collector/index.d.ts.map +1 -0
- package/dist/collector/parse.d.ts +42 -0
- package/dist/collector/parse.d.ts.map +1 -0
- package/dist/collector/store.d.ts +76 -0
- package/dist/collector/store.d.ts.map +1 -0
- package/dist/dashboard/heatmap.d.ts +34 -0
- package/dist/dashboard/heatmap.d.ts.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2474 -0
- package/dist/index.js.map +1 -0
- package/dist/pricing.js +145 -0
- package/dist/pricing.js.map +1 -0
- package/dist/proxy.js +1744 -0
- package/dist/proxy.js.map +1 -0
- package/dist/renderer/format.d.ts +33 -0
- package/dist/renderer/format.d.ts.map +1 -0
- package/dist/renderer/index.d.ts +42 -0
- package/dist/renderer/index.d.ts.map +1 -0
- package/dist/schema.js +90 -0
- package/dist/schema.js.map +1 -0
- package/dist/shared/pricing.d.ts +60 -0
- package/dist/shared/pricing.d.ts.map +1 -0
- package/dist/shared/schema.d.ts +122 -0
- package/dist/shared/schema.d.ts.map +1 -0
- package/dist/status.js +521 -0
- package/dist/status.js.map +1 -0
- package/package.json +105 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../src/collector/store.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5D,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC;CAClC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,CAKrD;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,GAAE,IAAiB,GAAG,MAAM,CAK/D;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAS1C;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQ3C;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,SAAI,GAAG,IAAI,CAkChF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,SAAI,GAAG,IAAI,CAuBjF;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,gBAAgB,GAC9B,IAAI,CAcN;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,WAAW,EAAE,MAAM,GAClB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAoBxB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAehF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,IAAI,CAsBtF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,UAAU,GAAE,MAA6B,GACxC,MAAM,CAgCR;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAwBpF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tokensniff — Spend Calendar Heatmap Engine (v1 Production)
|
|
3
|
+
*
|
|
4
|
+
* Compiles historical turn telemetry into day-by-day aggregates and renders a
|
|
5
|
+
* standalone, zero-dependency calendar heatmap with an obsidian & emerald aesthetic.
|
|
6
|
+
*/
|
|
7
|
+
export interface DayBucket {
|
|
8
|
+
readonly date: string;
|
|
9
|
+
tokens: number;
|
|
10
|
+
cost: number;
|
|
11
|
+
cacheRead: number;
|
|
12
|
+
thinkingTokens: number;
|
|
13
|
+
turns: number;
|
|
14
|
+
readonly models: Record<string, number>;
|
|
15
|
+
readonly hourlyTurns: number[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Parses history.ndjson into an aggregated day-by-day record map.
|
|
19
|
+
* Recovers cleanly from truncated or malformed trailing records.
|
|
20
|
+
*/
|
|
21
|
+
export declare function loadDailyRollup(statusDirs: readonly string[]): Record<string, DayBucket>;
|
|
22
|
+
/**
|
|
23
|
+
* Ingests external raw HTTP probe captures and imports them into history.ndjson.
|
|
24
|
+
*/
|
|
25
|
+
export declare function importCapturesDirectory(sourceDir: string, targetStatusDirs: readonly string[]): {
|
|
26
|
+
imported: number;
|
|
27
|
+
skipped: number;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Renders the pure, production-grade HTML heatmap dashboard.
|
|
31
|
+
* Zero external web assets or font dependencies; 100% self-contained.
|
|
32
|
+
*/
|
|
33
|
+
export declare function renderHeatmapHtml(dailyMap: Record<string, DayBucket>, targetYear?: number): string;
|
|
34
|
+
//# sourceMappingURL=heatmap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"heatmap.d.ts","sourceRoot":"","sources":["../../src/dashboard/heatmap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC;CAChC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAiExF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,SAAS,MAAM,EAAE,GAClC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkGvC;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,EACnC,UAAU,GAAE,MAAiC,GAC5C,MAAM,CA+kBR"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* tokensniff — Public Library API Entrypoint (v1 Production)
|
|
3
|
+
*
|
|
4
|
+
* Re-exports the complete public telemetry API contract:
|
|
5
|
+
* - Telemetry schemas, interfaces, and runtime validation guards
|
|
6
|
+
* - Dynamic OpenRouter pricing and context capacity engine
|
|
7
|
+
* - Telemetry reverse proxy server lifecycle hooks
|
|
8
|
+
* - Statusline rendering and compact number formatting
|
|
9
|
+
* - Calendar spend analytics and heatmap generators
|
|
10
|
+
* - Multi-terminal active session reference counting
|
|
11
|
+
*/
|
|
12
|
+
export { countActiveSessions, getSessionsDir, isPortActive, isProcessAlive, main as runCli, printClaudeInstructions, type RunDependencies, registerSession, waitForTcp, writeInitFile, } from './cli/run.js';
|
|
13
|
+
export { getGlobalConfigPath, getGlobalDir, loadConfig, type TokenSniffConfig, } from './collector/config.js';
|
|
14
|
+
export { start as startProxy } from './collector/index.js';
|
|
15
|
+
export { type DayBucket, importCapturesDirectory, loadDailyRollup, renderHeatmapHtml, } from './dashboard/heatmap.js';
|
|
16
|
+
export { type FormatOptions, formatStatus, formatTokenCount, formatToolSegment, } from './renderer/format.js';
|
|
17
|
+
export { extractModel, main as runStatusRenderer, pickLatest, readStdin, type StatusRunnerOptions, type StdinPayload, } from './renderer/index.js';
|
|
18
|
+
export { costFor, type ModelPricingOverrides, type ModelRates, normalizeModelName, ratesFor, resolveModelRates, syncOpenRouterCatalog, } from './shared/pricing.js';
|
|
19
|
+
export { buildLatest, extractCleanLabel, type HistoryEntry, isTokenSniffLatest, type QuotaSnapshot, SCHEMA_VERSION, type TokenSniffLatest, type ToolCallItem, type ToolSummaryItem, type TurnKind, type TurnMetrics, } from './shared/schema.js';
|
|
20
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,cAAc,EACd,IAAI,IAAI,MAAM,EACd,uBAAuB,EACvB,KAAK,eAAe,EACpB,eAAe,EACf,UAAU,EACV,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAG3D,OAAO,EACL,KAAK,SAAS,EACd,uBAAuB,EACvB,eAAe,EACf,iBAAiB,GAClB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,KAAK,aAAa,EAClB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,YAAY,EACZ,IAAI,IAAI,iBAAiB,EACzB,UAAU,EACV,SAAS,EACT,KAAK,mBAAmB,EACxB,KAAK,YAAY,GAClB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,OAAO,EACP,KAAK,qBAAqB,EAC1B,KAAK,UAAU,EACf,kBAAkB,EAClB,QAAQ,EACR,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,KAAK,YAAY,EACjB,kBAAkB,EAClB,KAAK,aAAa,EAClB,cAAc,EACd,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,WAAW,GACjB,MAAM,oBAAoB,CAAC"}
|