@tormentalabs/claude-code-wire-compat 0.1.0-rc.17 → 0.2.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.
Files changed (80) hide show
  1. package/CHANGELOG.md +101 -2
  2. package/README.md +67 -2
  3. package/dist/betas.d.ts +37 -0
  4. package/dist/betas.d.ts.map +1 -1
  5. package/dist/betas.js +55 -23
  6. package/dist/betas.js.map +1 -1
  7. package/dist/build-request.d.ts +11 -0
  8. package/dist/build-request.d.ts.map +1 -1
  9. package/dist/build-request.js +133 -11
  10. package/dist/build-request.js.map +1 -1
  11. package/dist/contracts.d.ts +53 -0
  12. package/dist/contracts.d.ts.map +1 -1
  13. package/dist/contracts.js.map +1 -1
  14. package/dist/fingerprint.d.ts +29 -2
  15. package/dist/fingerprint.d.ts.map +1 -1
  16. package/dist/fingerprint.js +60 -7
  17. package/dist/fingerprint.js.map +1 -1
  18. package/dist/headers.d.ts.map +1 -1
  19. package/dist/headers.js +12 -4
  20. package/dist/headers.js.map +1 -1
  21. package/dist/index.d.ts +1 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +1 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/model-capabilities.d.ts +31 -3
  26. package/dist/model-capabilities.d.ts.map +1 -1
  27. package/dist/model-capabilities.js +145 -12
  28. package/dist/model-capabilities.js.map +1 -1
  29. package/dist/models.d.ts.map +1 -1
  30. package/dist/models.js +8 -4
  31. package/dist/models.js.map +1 -1
  32. package/dist/profile-behaviors.d.ts +61 -0
  33. package/dist/profile-behaviors.d.ts.map +1 -0
  34. package/dist/profile-behaviors.js +53 -0
  35. package/dist/profile-behaviors.js.map +1 -0
  36. package/dist/profiles/beta-registry-2.1.233.d.ts +140 -0
  37. package/dist/profiles/beta-registry-2.1.233.d.ts.map +1 -0
  38. package/dist/profiles/beta-registry-2.1.233.js +183 -0
  39. package/dist/profiles/beta-registry-2.1.233.js.map +1 -0
  40. package/dist/profiles/claude-code-2.1.195.d.ts.map +1 -1
  41. package/dist/profiles/claude-code-2.1.195.js +14 -0
  42. package/dist/profiles/claude-code-2.1.195.js.map +1 -1
  43. package/dist/profiles/claude-code-2.1.233.d.ts +3 -0
  44. package/dist/profiles/claude-code-2.1.233.d.ts.map +1 -0
  45. package/dist/profiles/claude-code-2.1.233.js +235 -0
  46. package/dist/profiles/claude-code-2.1.233.js.map +1 -0
  47. package/dist/redaction.d.ts.map +1 -1
  48. package/dist/redaction.js +14 -1
  49. package/dist/redaction.js.map +1 -1
  50. package/dist/request-body.d.ts.map +1 -1
  51. package/dist/request-body.js +12 -10
  52. package/dist/request-body.js.map +1 -1
  53. package/dist/thinking.d.ts +33 -7
  54. package/dist/thinking.d.ts.map +1 -1
  55. package/dist/thinking.js +105 -36
  56. package/dist/thinking.js.map +1 -1
  57. package/package.json +10 -2
  58. package/src/anti-verbosity.ts +219 -0
  59. package/src/beta-registry.ts +140 -0
  60. package/src/betas.ts +302 -0
  61. package/src/build-request.ts +1799 -0
  62. package/src/contracts.ts +1286 -0
  63. package/src/count-tokens.ts +84 -0
  64. package/src/fingerprint.ts +155 -0
  65. package/src/headers.ts +448 -0
  66. package/src/index.ts +63 -0
  67. package/src/metadata.ts +331 -0
  68. package/src/model-capabilities.ts +453 -0
  69. package/src/model-identity.ts +45 -0
  70. package/src/models.ts +50 -0
  71. package/src/profile-behaviors.ts +114 -0
  72. package/src/profiles/beta-registry-2.1.233.ts +200 -0
  73. package/src/profiles/claude-code-2.1.195.ts +168 -0
  74. package/src/profiles/claude-code-2.1.233.ts +240 -0
  75. package/src/redaction.ts +536 -0
  76. package/src/request-body.ts +1931 -0
  77. package/src/sha256.ts +114 -0
  78. package/src/system-prompt.ts +222 -0
  79. package/src/thinking.ts +346 -0
  80. package/src/unicode.ts +24 -0
@@ -7,6 +7,7 @@ import { buildOrderedHeaderPlan, buildOrderedHeaders } from "./headers.js";
7
7
  import { buildCorrelatedMetadata, validateRuntimeIdentity, } from "./metadata.js";
8
8
  import { resolveModel } from "./models.js";
9
9
  import { CLAUDE_CODE_2_1_195_PROFILE } from "./profiles/claude-code-2.1.195.js";
10
+ import { CLAUDE_CODE_2_1_233_PROFILE } from "./profiles/claude-code-2.1.233.js";
10
11
  import { buildRedactedEvidence, toSafeErrorDetails } from "./redaction.js";
11
12
  import { buildCanonicalBody, canonicalCountTokensLists, } from "./request-body.js";
12
13
  import { sha256Hex } from "./sha256.js";
@@ -60,6 +61,8 @@ const INPUT_KEYS = new Set([
60
61
  "metadataOverrides",
61
62
  "extraHeaders",
62
63
  "extraHeaderPolicy",
64
+ "previousRequestId",
65
+ "promptId",
63
66
  "crypto",
64
67
  ]);
65
68
  const BETA_OVERRIDE_KEYS = new Set(["use1MContext"]);
@@ -145,6 +148,7 @@ const MODEL_KEYS = new Set([
145
148
  "family",
146
149
  "context",
147
150
  "capabilities",
151
+ "maxOutputTokens",
148
152
  "defaultEffort",
149
153
  ]);
150
154
  const BETA_POLICY_KEYS = new Set([
@@ -275,8 +279,41 @@ function containsString(value, target) {
275
279
  ? containsString(ownValue(value, key), target)
276
280
  : false);
277
281
  }
282
+ /**
283
+ * The profiles this package will assemble a request for. Two entries: the
284
+ * 2.1.195 default and the 2.1.233 profile, which callers must pass
285
+ * explicitly. Admitting a profile is exactly this list -- `validateProfile`
286
+ * did not change to accept the second one.
287
+ *
288
+ * Membership is by REFERENCE, deliberately. A structural check would accept a
289
+ * caller-built object that merely looks like a pinned profile, and every wire
290
+ * guarantee this package makes -- the sealed golden fixtures, the packed
291
+ * consumer digests -- is a statement about the exact frozen singletons, not
292
+ * about anything shaped like them. `Set.prototype.has` uses SameValueZero, so
293
+ * `{ ...CLAUDE_CODE_2_1_195_PROFILE }` is rejected exactly as it was by the
294
+ * `!==` this replaced.
295
+ *
296
+ * Not exported and not frozen-with-teeth: `Object.freeze` on a `Set` blocks
297
+ * property assignment but NOT `add`, so freezing it would advertise a
298
+ * guarantee it cannot keep. Module scope is the real protection.
299
+ */
300
+ const ACCEPTED_PROFILES = new Set([
301
+ CLAUDE_CODE_2_1_195_PROFILE,
302
+ CLAUDE_CODE_2_1_233_PROFILE,
303
+ ]);
304
+ /**
305
+ * The profile every public entry point resolves to when the caller supplies
306
+ * none. Declared once so that the default is a single, greppable seam: a test
307
+ * that means "whatever the default is" reads THIS instead of naming a
308
+ * version, which keeps a default switch to a one-line diff and keeps tests
309
+ * that genuinely mean 2.1.195 honest about saying so.
310
+ *
311
+ * Exported for tests, which deep-import it. It is deliberately NOT re-exported
312
+ * from `src/index.ts`: the public runtime surface stays closed.
313
+ */
314
+ export const DEFAULT_PROFILE = CLAUDE_CODE_2_1_233_PROFILE;
278
315
  function validateProfile(profile) {
279
- if (profile !== CLAUDE_CODE_2_1_195_PROFILE)
316
+ if (!ACCEPTED_PROFILES.has(profile))
280
317
  fail();
281
318
  return profile;
282
319
  }
@@ -313,6 +350,32 @@ function parseCatalogueCapabilities(value) {
313
350
  }
314
351
  return Object.freeze([...value]);
315
352
  }
353
+ /**
354
+ * Validates a catalogue entry's `maxOutputTokens`. Both fields are required
355
+ * when the object is present: a half-populated entry would silently fall back
356
+ * to the legacy limit table for the missing half, which is exactly the drift
357
+ * `modelOutputTokenLimits` is structured to prevent.
358
+ */
359
+ function parseCatalogueMaxOutputTokens(value) {
360
+ if (value === null || typeof value !== "object" || Array.isArray(value)) {
361
+ throw new ClaudeCodeWireError("INVALID_INPUT");
362
+ }
363
+ const keys = Reflect.ownKeys(value);
364
+ if (keys.some((key) => typeof key !== "string" || (key !== "default" && key !== "upper"))) {
365
+ throw new ClaudeCodeWireError("INVALID_INPUT");
366
+ }
367
+ const defaultLimit = Reflect.get(value, "default");
368
+ const upper = Reflect.get(value, "upper");
369
+ if (typeof defaultLimit !== "number" ||
370
+ !Number.isSafeInteger(defaultLimit) ||
371
+ defaultLimit <= 0 ||
372
+ typeof upper !== "number" ||
373
+ !Number.isSafeInteger(upper) ||
374
+ upper <= 0) {
375
+ throw new ClaudeCodeWireError("INVALID_INPUT");
376
+ }
377
+ return Object.freeze({ default: defaultLimit, upper });
378
+ }
316
379
  function parseCatalogueContext(value) {
317
380
  if (value === null || typeof value !== "object" || Array.isArray(value)) {
318
381
  throw new ClaudeCodeWireError("INVALID_INPUT");
@@ -399,6 +462,11 @@ function parseSupportedModels(value) {
399
462
  ? { context: parseCatalogueContext(ownValue(model, "context")) }
400
463
  : {}),
401
464
  capabilities: parseCatalogueCapabilities(ownValue(model, "capabilities")),
465
+ ...(Object.hasOwn(model, "maxOutputTokens")
466
+ ? {
467
+ maxOutputTokens: parseCatalogueMaxOutputTokens(ownValue(model, "maxOutputTokens")),
468
+ }
469
+ : {}),
402
470
  ...(Object.hasOwn(model, "defaultEffort")
403
471
  ? {
404
472
  defaultEffort: parseDefaultEffort(ownValue(model, "defaultEffort")),
@@ -609,6 +677,12 @@ function validateInput(input) {
609
677
  const preserveThinkingBlockCacheControl = Object.hasOwn(input, "preserveThinkingBlockCacheControl")
610
678
  ? validatePreserveThinkingBlockCacheControl(ownValue(input, "preserveThinkingBlockCacheControl"))
611
679
  : false;
680
+ const previousRequestId = Object.hasOwn(input, "previousRequestId")
681
+ ? validateBillingChainId(ownValue(input, "previousRequestId"))
682
+ : undefined;
683
+ const promptId = Object.hasOwn(input, "promptId")
684
+ ? validateBillingChainId(ownValue(input, "promptId"))
685
+ : undefined;
612
686
  return {
613
687
  source: input,
614
688
  clientRequestId,
@@ -619,8 +693,30 @@ function validateInput(input) {
619
693
  suppressBillingBlock,
620
694
  suppressIdentityBlock,
621
695
  preserveThinkingBlockCacheControl,
696
+ previousRequestId,
697
+ promptId,
622
698
  };
623
699
  }
700
+ /**
701
+ * Type check only. The FORMAT of these two ids is deliberately not checked
702
+ * here: upstream guards them at the point of emission and drops a value it
703
+ * cannot vouch for, silently, so rejecting one here would make this package
704
+ * fail where the genuine client succeeds. `createBillingBlock` owns the
705
+ * patterns. A non-string is still a caller bug and fails like every other
706
+ * mistyped field.
707
+ *
708
+ * There is deliberately no `undefined` arm: `inspectGraph` has already rejected
709
+ * an explicitly-undefined value for every key but `crypto` by the time this
710
+ * runs, so such an arm would be unreachable. An explicitly-undefined id is
711
+ * therefore `INVALID_INPUT` here, as it is for every other field, and is NOT
712
+ * equivalent to omitting the key — unlike at the `createBillingBlock` seam,
713
+ * which does treat the two alike. `billing-prev-req.test.ts` pins both halves.
714
+ */
715
+ function validateBillingChainId(value) {
716
+ if (typeof value !== "string")
717
+ fail();
718
+ return value;
719
+ }
624
720
  function validateCountTokensInput(input) {
625
721
  if (!isRecord(input))
626
722
  fail();
@@ -797,7 +893,16 @@ function parseCapabilityDecisions(value) {
797
893
  rejectsDisabledThinking: readBoolean("rejectsDisabledThinking"),
798
894
  };
799
895
  }
800
- function parseEvidence(value) {
896
+ /**
897
+ * Validates evidence against the profile the request was parsed under, not
898
+ * against a hardcoded singleton. `parseBuiltClaudeCodeRequest` already
899
+ * validates `url` against `pinnedProfile.endpoint`; the profile id is the one
900
+ * remaining field where the two pinned profiles differ, so it has to follow
901
+ * the same source or a request built with a non-default profile could never
902
+ * be re-parsed. Still fail-closed: the profile reaching here has already
903
+ * passed `validateProfile`.
904
+ */
905
+ function parseEvidence(value, pinnedProfile) {
801
906
  if (!isRecord(value))
802
907
  fail();
803
908
  assertExactKeys(value, EVIDENCE_KEYS);
@@ -814,8 +919,8 @@ function parseEvidence(value) {
814
919
  const bodyByteLength = ownValue(value, "bodyByteLength");
815
920
  const messageCount = ownValue(value, "messageCount");
816
921
  const systemBlockCount = ownValue(value, "systemBlockCount");
817
- if (ownValue(value, "profileId") !== CLAUDE_CODE_2_1_195_PROFILE.id ||
818
- ownValue(value, "url") !== CLAUDE_CODE_2_1_195_PROFILE.endpoint ||
922
+ if (ownValue(value, "profileId") !== pinnedProfile.id ||
923
+ ownValue(value, "url") !== pinnedProfile.endpoint ||
819
924
  ownValue(value, "method") !== METHOD ||
820
925
  typeof bodySha256 !== "string" ||
821
926
  !/^[0-9a-f]{64}$/u.test(bodySha256) ||
@@ -828,8 +933,8 @@ function parseEvidence(value) {
828
933
  fail();
829
934
  }
830
935
  return {
831
- profileId: CLAUDE_CODE_2_1_195_PROFILE.id,
832
- url: CLAUDE_CODE_2_1_195_PROFILE.endpoint,
936
+ profileId: pinnedProfile.id,
937
+ url: pinnedProfile.endpoint,
833
938
  method: METHOD,
834
939
  modelFamily,
835
940
  logicalHeaderNames: parseStringArray(ownValue(value, "logicalHeaderNames")),
@@ -1073,7 +1178,7 @@ function countTokensEvidenceRequest(input, capabilities) {
1073
1178
  };
1074
1179
  }
1075
1180
  /** Builds a canonical Claude Code count-tokens request. */
1076
- export async function buildClaudeCodeCountTokensRequest(input, profile = CLAUDE_CODE_2_1_195_PROFILE) {
1181
+ export async function buildClaudeCodeCountTokensRequest(input, profile = DEFAULT_PROFILE) {
1077
1182
  try {
1078
1183
  const pinnedProfile = validateProfile(profile);
1079
1184
  const validated = validateCountTokensInput(input);
@@ -1135,7 +1240,7 @@ export async function buildClaudeCodeCountTokensRequest(input, profile = CLAUDE_
1135
1240
  * `INVALID_INPUT`. This deliberate fail-closed behaviour prevents callers from
1136
1241
  * substituting an unpinned protocol profile.
1137
1242
  */
1138
- export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_195_PROFILE) {
1243
+ export async function buildClaudeCodeRequest(input, profile = DEFAULT_PROFILE) {
1139
1244
  try {
1140
1245
  const pinnedProfile = validateProfile(profile);
1141
1246
  const validated = validateInput(input);
@@ -1147,7 +1252,24 @@ export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_19
1147
1252
  ...resolvedModel,
1148
1253
  capabilities,
1149
1254
  });
1150
- const billing = await createBillingBlock(fingerprintText(validated.source), effectiveProfile.cliVersion, validated.crypto);
1255
+ /*
1256
+ * The previous turn's request id is the CALLER's to supply. Upstream
1257
+ * derives it by scanning the conversation for the last assistant message
1258
+ * and reading a `requestId` it stored alongside it — a field of the
1259
+ * client's own transcript, not of the Messages API wire format. Modelling
1260
+ * that would mean adding a non-wire property to `Message` and having this
1261
+ * package infer conversation state it does not own. A documented
1262
+ * divergence of convenience: the value is the same, the plumbing is the
1263
+ * consumer's.
1264
+ */
1265
+ const billing = await createBillingBlock(fingerprintText(validated.source), effectiveProfile, validated.crypto, {
1266
+ ...(validated.previousRequestId !== undefined && {
1267
+ previousRequestId: validated.previousRequestId,
1268
+ }),
1269
+ ...(validated.promptId !== undefined && {
1270
+ promptId: validated.promptId,
1271
+ }),
1272
+ });
1151
1273
  const metadata = buildCorrelatedMetadata(identity, validated.source.metadata, validated.source.metadataOverrides);
1152
1274
  const system = buildCanonicalSystem(validated.source.system, billing, identity, validated.suppressBillingBlock, validated.suppressIdentityBlock);
1153
1275
  const canonicalBody = buildCanonicalBody(evidenceRequest(validated.source, validated.source.model), effectiveModel, system, metadata, effectiveProfile);
@@ -1260,7 +1382,7 @@ export async function buildClaudeCodeRequest(input, profile = CLAUDE_CODE_2_1_19
1260
1382
  * `INVALID_INPUT`. This deliberate fail-closed behaviour prevents callers from
1261
1383
  * substituting an unpinned protocol profile.
1262
1384
  */
1263
- export function parseBuiltClaudeCodeRequest(value, profile = CLAUDE_CODE_2_1_195_PROFILE) {
1385
+ export function parseBuiltClaudeCodeRequest(value, profile = DEFAULT_PROFILE) {
1264
1386
  try {
1265
1387
  const pinnedProfile = validateProfile(profile);
1266
1388
  inspectGraph(value);
@@ -1276,7 +1398,7 @@ export function parseBuiltClaudeCodeRequest(value, profile = CLAUDE_CODE_2_1_195
1276
1398
  fail();
1277
1399
  const parsedBody = parseBody(body);
1278
1400
  const headers = parseHeaders(ownValue(value, "headers"));
1279
- const evidence = parseEvidence(ownValue(value, "evidence"));
1401
+ const evidence = parseEvidence(ownValue(value, "evidence"), pinnedProfile);
1280
1402
  // Reading evidence is not trusting evidence. A claim that the seam
1281
1403
  // preserved a marker is confirmed against the body, and it is confirmed
1282
1404
  // HERE — before the byte-length and digest checks — so that a forgery which
@@ -1 +1 @@
1
- {"version":3,"file":"build-request.js","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-request.js","sourceRoot":"","sources":["../src/build-request.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,22 @@ export interface ClaudeCodeCatalogueEntry {
24
24
  }>;
25
25
  /** Verbatim upstream capability keys; compared by the ported predicates. */
26
26
  readonly capabilities: readonly string[];
27
+ /**
28
+ * Per-model output token limits. `default` caps the emitted `max_tokens`;
29
+ * `upper` seeds the thinking budget when the caller supplies none. The
30
+ * field names mirror the upstream 2.1.222 catalogue, where these limits
31
+ * became catalogue data; `modelOutputTokenLimits` keeps returning
32
+ * `{ default, upperLimit }`, so the `upper` -> `upperLimit` rename happens
33
+ * at that one call site in `thinking.ts`.
34
+ *
35
+ * Optional on the type because profiles ported from clients that predate
36
+ * the catalogue limits cannot supply it. Every entry of the 2.1.195
37
+ * catalogue does supply it, and a test enforces that.
38
+ */
39
+ readonly maxOutputTokens?: Readonly<{
40
+ readonly default: number;
41
+ readonly upper: number;
42
+ }>;
27
43
  readonly defaultEffort?: ClaudeCodeEffort;
28
44
  }
29
45
  export type HeaderPair = readonly [name: string, value: string];
@@ -886,6 +902,43 @@ export interface ClaudeCodeRequestInput {
886
902
  * `"dropConflicting"`.
887
903
  */
888
904
  readonly extraHeaderPolicy?: ClaudeCodeExtraHeaderPolicy;
905
+ /**
906
+ * Supplies the `cc_prev_req` segment of the canonical billing block.
907
+ *
908
+ * This is the value of the `request-id` RESPONSE header the API returned for
909
+ * the PREVIOUS turn of this conversation — not this request's
910
+ * `clientRequestId`, and not anything derivable from `messages`. The genuine
911
+ * 2.1.233 client carries it forward so that a multi-turn conversation is
912
+ * linked request to request on the billing header.
913
+ *
914
+ * OMITTING IT IS OBSERVABLE. On the 2.1.233 profile, a second or later turn
915
+ * built without this field emits a billing block that the genuine client
916
+ * would not emit, and the request is therefore distinguishable from real CLI
917
+ * traffic from the second turn onward. The first turn has no previous
918
+ * request, so omitting it there is correct.
919
+ *
920
+ * Ignored entirely by the 2.1.195 profile, which has no such segment.
921
+ *
922
+ * A value that does not match `/^req_[A-Za-z0-9_-]{1,36}$/` is SILENTLY
923
+ * omitted from the block rather than rejected, mirroring upstream: the
924
+ * genuine client guards the segment and drops a value it cannot vouch for.
925
+ * A non-string value is still `INVALID_INPUT`, like every other field here.
926
+ */
927
+ readonly previousRequestId?: string;
928
+ /**
929
+ * Supplies the `cc_prompt_id` segment of the canonical billing block.
930
+ *
931
+ * A host-supplied prompt UUID. This package cannot derive one — upstream
932
+ * reads it from host state — so it is the caller's to provide, and omitting
933
+ * it is the modelled default for a session that has none.
934
+ *
935
+ * Ignored entirely by the 2.1.195 profile, which has no such segment.
936
+ *
937
+ * A value that does not match the canonical 8-4-4-4-12 hexadecimal UUID shape
938
+ * (case-insensitive) is SILENTLY omitted from the block rather than rejected,
939
+ * mirroring upstream. A non-string value is still `INVALID_INPUT`.
940
+ */
941
+ readonly promptId?: string;
889
942
  /** Injects the Web Crypto provider used to hash the request body. */
890
943
  readonly crypto?: Pick<Crypto, "subtle">;
891
944
  }