MCPcopy Create free account
hub / github.com/cortexkit/magic-context / extractAssistantUsage

Function extractAssistantUsage

packages/pi-plugin/src/pi-pressure.ts:53–68  ·  view source on GitHub ↗
(
	message: unknown,
)

Source from the content-addressed store, hash-verified

51 * usage data (aborted/error messages have no usage).
52 */
53export function extractAssistantUsage(
54 message: unknown,
55): PiAssistantUsage | null {
56 if (!message || typeof message !== "object") return null;
57 const m = message as { role?: unknown; usage?: unknown };
58 if (m.role !== "assistant") return null;
59 if (!m.usage || typeof m.usage !== "object") return null;
60 const u = m.usage as Record<string, unknown>;
61 const result: PiAssistantUsage = {};
62 if (typeof u.input === "number") result.input = u.input;
63 if (typeof u.output === "number") result.output = u.output;
64 if (typeof u.cacheRead === "number") result.cacheRead = u.cacheRead;
65 if (typeof u.cacheWrite === "number") result.cacheWrite = u.cacheWrite;
66 if (typeof u.totalTokens === "number") result.totalTokens = u.totalTokens;
67 return result;
68}
69
70/**
71 * Compute OpenCode-equivalent pressure from a Pi usage payload + the

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected