@remixhq/claude-plugin 0.1.19 → 0.1.20

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.
@@ -35075,7 +35075,7 @@ async function clearPendingTurnState(sessionId) {
35075
35075
  // package.json
35076
35076
  var package_default = {
35077
35077
  name: "@remixhq/claude-plugin",
35078
- version: "0.1.19",
35078
+ version: "0.1.20",
35079
35079
  description: "Claude Code plugin for Remix collaboration workflows",
35080
35080
  homepage: "https://github.com/RemixDotOne/remix-claude-plugin",
35081
35081
  license: "MIT",
@@ -35102,10 +35102,6 @@ var package_default = {
35102
35102
  ".": {
35103
35103
  types: "./dist/index.d.ts",
35104
35104
  import: "./dist/index.js"
35105
- },
35106
- "./historical": {
35107
- types: "./dist/historical.d.ts",
35108
- import: "./dist/historical.js"
35109
35105
  }
35110
35106
  },
35111
35107
  scripts: {
@@ -35117,8 +35113,8 @@ var package_default = {
35117
35113
  prepack: "npm run build"
35118
35114
  },
35119
35115
  dependencies: {
35120
- "@remixhq/core": "^0.1.14",
35121
- "@remixhq/mcp": "^0.1.14"
35116
+ "@remixhq/core": "^0.1.15",
35117
+ "@remixhq/mcp": "^0.1.15"
35122
35118
  },
35123
35119
  devDependencies: {
35124
35120
  "@types/node": "^25.4.0",
@@ -35218,7 +35214,33 @@ async function appendHookDiagnosticsEvent(params) {
35218
35214
  }
35219
35215
  }
35220
35216
 
35221
- // src/usage/claudeCodeUsageHarvester.ts
35217
+ // node_modules/@remixhq/core/dist/history.js
35218
+ var import_promises21 = __toESM(require("fs/promises"), 1);
35219
+ async function readAndParseTranscript(transcriptPath) {
35220
+ let raw;
35221
+ try {
35222
+ raw = await import_promises21.default.readFile(transcriptPath, "utf8");
35223
+ } catch (err) {
35224
+ const code = err && typeof err === "object" && "code" in err ? err.code : null;
35225
+ if (code === "ENOENT") {
35226
+ return { ok: false, reason: "transcript_not_found" };
35227
+ }
35228
+ return { ok: false, reason: "transcript_unreadable" };
35229
+ }
35230
+ const events = [];
35231
+ for (const line of raw.split("\n")) {
35232
+ const trimmed = line.trim();
35233
+ if (!trimmed) continue;
35234
+ try {
35235
+ const parsed = JSON.parse(trimmed);
35236
+ if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
35237
+ events.push(parsed);
35238
+ }
35239
+ } catch {
35240
+ }
35241
+ }
35242
+ return { ok: true, events };
35243
+ }
35222
35244
  var BOUNDARY_TIMESTAMP_TOLERANCE_MS = 500;
35223
35245
  function parseTimestamp(value) {
35224
35246
  if (typeof value !== "string") return null;
@@ -35772,34 +35794,6 @@ function resolveClaudeCodeSession(hookPayload) {
35772
35794
  };
35773
35795
  }
35774
35796
 
35775
- // src/usage/claudeCodeTranscript.ts
35776
- var import_promises21 = __toESM(require("fs/promises"), 1);
35777
- async function readAndParseTranscript(transcriptPath) {
35778
- let raw;
35779
- try {
35780
- raw = await import_promises21.default.readFile(transcriptPath, "utf8");
35781
- } catch (err) {
35782
- const code = err && typeof err === "object" && "code" in err ? err.code : null;
35783
- if (code === "ENOENT") {
35784
- return { ok: false, reason: "transcript_not_found" };
35785
- }
35786
- return { ok: false, reason: "transcript_unreadable" };
35787
- }
35788
- const events = [];
35789
- for (const line of raw.split("\n")) {
35790
- const trimmed = line.trim();
35791
- if (!trimmed) continue;
35792
- try {
35793
- const parsed = JSON.parse(trimmed);
35794
- if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
35795
- events.push(parsed);
35796
- }
35797
- } catch {
35798
- }
35799
- }
35800
- return { ok: true, events };
35801
- }
35802
-
35803
35797
  // src/hook-utils.ts
35804
35798
  var import_promises22 = __toESM(require("fs/promises"), 1);
35805
35799
  var import_node_path9 = __toESM(require("path"), 1);