@claudexor/harness-cursor 3.8.0 → 3.8.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAS7C;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,+EAA+E;AAC/E,wBAAsB,qBAAqB,CACzC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAC/C,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,OAAO,UAAuB,GACtC,OAAO,CAAC,uBAAuB,CAAC,CA+BlC;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpF;AA6BD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,uBAAuB,GAAG,OAAO,CAE5F;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,uBAAuB,GAAG,MAAM,GAAG,IAAI,CAI1F;AAED,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,uBAAuB,GACnC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAI1B;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,eAAe,GAAG,aAAa,CAAC;AAE1E,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;CACrB,GAAG,eAAe,CAOlB;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAEV;AAED,sEAAsE;AACtE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,GAAG,OAAO,CAIV;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE;IACP,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,EACD,OAAO,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAoB,GACtD;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,GAAG,gBAAgB,CAAA;CAAE,CAmBnF"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAW7C;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GACzC;IAAE,IAAI,EAAE,WAAW,CAAA;CAAE,GACrB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAExC,+EAA+E;AAC/E,wBAAsB,qBAAqB,CACzC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAC/C,WAAW,CAAC,EAAE,WAAW,EACzB,OAAO,GAAE,OAAO,UAAuB,GACtC,OAAO,CAAC,uBAAuB,CAAC,CAyElC;AAuCD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpF;AA6BD,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,uBAAuB,GAAG,OAAO,CAE5F;AAED,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,uBAAuB,GAAG,MAAM,GAAG,IAAI,CAI1F;AAED,wBAAgB,yBAAyB,CACvC,WAAW,EAAE,uBAAuB,GACnC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAI1B;AAED,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,eAAe,GAAG,aAAa,CAAC;AAE1E,yEAAyE;AACzE,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;CACrB,GAAG,eAAe,CAOlB;AAED,wBAAgB,gCAAgC,CAAC,KAAK,EAAE;IACtD,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,eAAe,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;CACvB,GAAG,OAAO,CAEV;AAED,sEAAsE;AACtE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,MAAM,EAAE,OAAO,CAAC;IAChB,cAAc,EAAE,cAAc,CAAC;IAC/B,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,GAAG,OAAO,CAIV;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE;IACP,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,EACD,OAAO,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAoB,GACtD;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,eAAe,GAAG,gBAAgB,CAAA;CAAE,CAmBnF"}
package/dist/auth.js CHANGED
@@ -3,11 +3,13 @@ import { runCapture } from "@claudexor/core";
3
3
  import { redactSecrets } from "@claudexor/util";
4
4
  const BIN = process.env.CLAUDEXOR_CURSOR_BIN || "cursor-agent";
5
5
  const CURSOR_LOGGED_OUT = /not logged in|not authenticated|unauthenticated|authentication required|no account|account\s*:\s*(?:none|unknown|not configured|-)(?:\s|$)|authenticated\s*:\s*(?:false|no|none|0)|logged in\s*:\s*(?:false|no|none|0)/i;
6
+ const CURSOR_JSON_STATUS_UNSUPPORTED = /(?:unknown|unrecognized|unsupported|invalid|unimplemented)\s+(?:option|flag|argument)[^\n]*--format|--format[^\n]*(?:unknown|unrecognized|unsupported|invalid|unimplemented)\s+(?:option|flag|argument)|(?:unknown|unrecognized|unsupported|invalid|unimplemented)[^\n]*(?:--format|json status)/i;
6
7
  const MAX_CURSOR_ACCOUNT_EMAIL_LENGTH = 320;
7
8
  /** Probe only Cursor's vendor-owned native session in the supplied run env. */
8
9
  export async function probeCursorNativeAuth(env, abortSignal, capture = runCapture) {
9
10
  try {
10
- const result = await capture(BIN, ["status"], {
11
+ const profileScoped = Boolean(env?.["AGENT_CLI_CREDENTIAL_STORE"] || env?.["CURSOR_CONFIG_DIR"]);
12
+ const result = await capture(BIN, profileScoped ? ["status", "--format", "json"] : ["status"], {
11
13
  env,
12
14
  timeoutMs: 10_000,
13
15
  abortSignal,
@@ -16,11 +18,51 @@ export async function probeCursorNativeAuth(env, abortSignal, capture = runCaptu
16
18
  });
17
19
  const text = `${result.stdout}\n${result.stderr}`;
18
20
  if (result.code !== 0) {
21
+ // Older Cursor binaries may reject the JSON status flag. One bounded
22
+ // text retry preserves profile-scoped readiness without treating a
23
+ // failed JSON probe as proof that the account is logged out. A signal,
24
+ // timeout, or an unrelated non-zero status is unknown transport
25
+ // evidence, not a capability/format negotiation result.
26
+ if (profileScoped &&
27
+ result.signal === null &&
28
+ typeof result.code === "number" &&
29
+ result.code !== 0 &&
30
+ cursorJsonStatusUnsupported(text)) {
31
+ const fallback = await capture(BIN, ["status"], {
32
+ env,
33
+ timeoutMs: 10_000,
34
+ abortSignal,
35
+ cancelSignal: "SIGTERM",
36
+ cancelKillDelayMs: 0,
37
+ });
38
+ const fallbackText = `${fallback.stdout}\n${fallback.stderr}`;
39
+ if (fallback.code === 0 && fallback.signal === null) {
40
+ const observed = cursorAuthenticatedObservation(fallbackText);
41
+ if (observed)
42
+ return observed;
43
+ if (cursorStatusLoggedOut(fallbackText))
44
+ return { kind: "loggedOut" };
45
+ }
46
+ }
19
47
  return {
20
48
  kind: "unknown",
21
49
  error: `cursor-agent status failed (${result.code ?? result.signal ?? "unknown result"})`,
22
50
  };
23
51
  }
52
+ if (profileScoped) {
53
+ const jsonObservation = cursorJsonStatusObservation(result.stdout);
54
+ if (jsonObservation)
55
+ return jsonObservation;
56
+ // A successful JSON-capable probe owns the profile-scoped evidence. If
57
+ // its output is malformed or an unknown shape, do not reinterpret stdout
58
+ // or stderr through the legacy text grammar: diagnostics can mention an
59
+ // unrelated host account. Text parsing is reached only through the
60
+ // explicit unsupported-JSON fallback above.
61
+ return {
62
+ kind: "unknown",
63
+ error: `cursor-agent status returned unrecognized JSON output (${result.code})`,
64
+ };
65
+ }
24
66
  const authenticated = cursorAuthenticatedObservation(text);
25
67
  if (authenticated)
26
68
  return authenticated;
@@ -40,6 +82,40 @@ export async function probeCursorNativeAuth(env, abortSignal, capture = runCaptu
40
82
  };
41
83
  }
42
84
  }
85
+ function cursorJsonStatusUnsupported(text) {
86
+ return CURSOR_JSON_STATUS_UNSUPPORTED.test(text);
87
+ }
88
+ /**
89
+ * Profile-scoped Cursor status supports a machine-readable form. Keep the
90
+ * parser deliberately allowlisted: a successful JSON blob with an unfamiliar
91
+ * shape is still unknown evidence, never an authenticated account.
92
+ */
93
+ function cursorJsonStatusObservation(text) {
94
+ let value;
95
+ try {
96
+ value = JSON.parse(text.trim());
97
+ }
98
+ catch {
99
+ return null;
100
+ }
101
+ if (!value || typeof value !== "object" || Array.isArray(value))
102
+ return null;
103
+ const record = value;
104
+ const verdict = ["authenticated", "isAuthenticated", "loggedIn", "logged_in"].find((key) => typeof record[key] === "boolean");
105
+ if (!verdict)
106
+ return null;
107
+ if (record[verdict] !== true)
108
+ return { kind: "loggedOut" };
109
+ const candidates = [
110
+ record.email,
111
+ record.account?.email,
112
+ record.user?.email,
113
+ ];
114
+ const email = candidates.find((candidate) => typeof candidate === "string" &&
115
+ candidate.length <= MAX_CURSOR_ACCOUNT_EMAIL_LENGTH &&
116
+ /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(candidate));
117
+ return email ? { kind: "authenticated", email } : { kind: "authenticated" };
118
+ }
43
119
  export function cursorStatusAuthenticated(code, text) {
44
120
  return code === 0 && cursorAuthenticatedObservation(text) !== null;
45
121
  }
package/dist/auth.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,11 @@
1
- import type { HarnessCapabilityProfile, HarnessModel } from "@claudexor/schema";
1
+ import type { HarnessCapabilityProfile } from "@claudexor/schema";
2
2
  import type { HarnessAdapter } from "@claudexor/core";
3
3
  import { runCliHarness as runCliHarnessDefault } from "@claudexor/core";
4
4
  export { parseCursorModelList } from "./parse.js";
5
5
  import { probeCursorNativeAuth } from "./auth.js";
6
6
  export { canonicalCursorProfileHome, cursorProfilePathEnv } from "./profile.js";
7
7
  import { smokeIsolatedApiKey, type CursorApiSmokeResult } from "./smoke.js";
8
+ import { type CursorModelLister } from "./models.js";
8
9
  export { cleanupCursorSmokeBase, cursorApiSmokeFinalText, cursorApiSmokePassed, smokeIsolatedApiKey, } from "./smoke.js";
9
10
  export { cursorStatusAuthenticated, cursorStatusLoggedOut, selectCursorAuthRoute, shouldDiscloseCursorAutoApiRoute, } from "./auth.js";
10
11
  export declare const BIN: string;
@@ -15,7 +16,6 @@ export declare const CURSOR_MANAGED_LOGIN: {
15
16
  export declare const CURSOR_CAPABILITY_PROFILE: HarnessCapabilityProfile;
16
17
  declare function detectVersion(abortSignal?: AbortSignal): Promise<string | null>;
17
18
  declare function cursorApiKey(env?: Record<string, string | null | undefined>): string | null;
18
- type EnvMap = Record<string, string | null | undefined>;
19
19
  type CursorApiSmokeCacheEntry = {
20
20
  result: CursorApiSmokeResult;
21
21
  expiresAtMs: number;
@@ -24,7 +24,7 @@ type CursorRuntimeDeps = {
24
24
  detectVersion: typeof detectVersion;
25
25
  nativeAuthOk: typeof probeCursorNativeAuth;
26
26
  cursorApiKey: typeof cursorApiKey;
27
- listCursorModels: typeof listCursorModels;
27
+ listCursorModels: CursorModelLister;
28
28
  smokeIsolatedApiKey: typeof smokeIsolatedApiKey;
29
29
  apiSmokeCache: Map<string, CursorApiSmokeCacheEntry>;
30
30
  apiSmokeCacheTtlMs: number;
@@ -34,6 +34,5 @@ type CursorRuntimeDeps = {
34
34
  /** INV-062: profile secrets are resolved transiently, never logged. */
35
35
  resolveProfileSecret: (ref: string) => string | null;
36
36
  };
37
- declare function listCursorModels(env?: EnvMap, cwd?: string): Promise<HarnessModel[]>;
38
37
  export declare function createCursorAdapter(deps?: Partial<CursorRuntimeDeps>): HarnessAdapter;
39
38
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAIV,wBAAwB,EAGxB,YAAY,EAEb,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAc,cAAc,EAAoB,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAML,aAAa,IAAI,oBAAoB,EACtC,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAGL,qBAAqB,EAMtB,MAAM,WAAW,CAAC;AAQnB,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAoB,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,gCAAgC,GACjC,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,GAAG,QAAqD,CAAC;AAMtE,4EAA4E;AAC5E,eAAO,MAAM,oBAAoB;aAAK,KAAK,EAAE,MAAM;CAAW,CAAC;AAE/D,eAAO,MAAM,yBAAyB,EAAE,wBA0BpC,CAAC;AAoBL,iBAAe,aAAa,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAY9E;AAED,iBAAS,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,CAWpF;AAED,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AACxD,KAAK,wBAAwB,GAAG;IAAE,MAAM,EAAE,oBAAoB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AACtF,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,YAAY,EAAE,OAAO,qBAAqB,CAAC;IAC3C,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACrD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yBAAyB,EAAE,MAAM,CAAC;IAClC,KAAK,EAAE,MAAM,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,oBAAoB,CAAC;IAC3C,uEAAuE;IACvE,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACtD,CAAC;AAsBF,iBAAe,gBAAgB,CAC7B,GAAG,GAAE,MAAkC,EACvC,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,EAAE,CAAC,CAYzB;AAwID,wBAAgB,mBAAmB,CAAC,IAAI,GAAE,OAAO,CAAC,iBAAiB,CAAM,GAAG,cAAc,CA0HzF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAGV,wBAAwB,EAKzB,MAAM,mBAAmB,CAAC;AAK3B,OAAO,KAAK,EAAc,cAAc,EAAoB,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAML,aAAa,IAAI,oBAAoB,EACtC,MAAM,iBAAiB,CAAC;AAIzB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAGL,qBAAqB,EAMtB,MAAM,WAAW,CAAC;AAQnB,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAChF,OAAO,EAAE,mBAAmB,EAAoB,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAC9F,OAAO,EAIL,KAAK,iBAAiB,EACvB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,gCAAgC,GACjC,MAAM,WAAW,CAAC;AAEnB,eAAO,MAAM,GAAG,QAAqD,CAAC;AAMtE,4EAA4E;AAC5E,eAAO,MAAM,oBAAoB;aAAK,KAAK,EAAE,MAAM;CAAW,CAAC;AAE/D,eAAO,MAAM,yBAAyB,EAAE,wBA0BpC,CAAC;AAoBL,iBAAe,aAAa,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAY9E;AAED,iBAAS,YAAY,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,CAWpF;AAED,KAAK,wBAAwB,GAAG;IAAE,MAAM,EAAE,oBAAoB,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AACtF,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,OAAO,aAAa,CAAC;IACpC,YAAY,EAAE,OAAO,qBAAqB,CAAC;IAC3C,YAAY,EAAE,OAAO,YAAY,CAAC;IAClC,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,mBAAmB,EAAE,OAAO,mBAAmB,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;IACrD,kBAAkB,EAAE,MAAM,CAAC;IAC3B,yBAAyB,EAAE,MAAM,CAAC;IAClC,KAAK,EAAE,MAAM,MAAM,CAAC;IACpB,aAAa,EAAE,OAAO,oBAAoB,CAAC;IAC3C,uEAAuE;IACvE,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;CACtD,CAAC;AA8EF,wBAAgB,mBAAmB,CAAC,IAAI,GAAE,OAAO,CAAC,iBAAiB,CAAM,GAAG,cAAc,CAuHzF"}
package/dist/index.js CHANGED
@@ -3,13 +3,14 @@ import { HarnessCapabilityProfile as HarnessCapabilityProfileSchema, HarnessMani
3
3
  import { abortSignalFromSpec, HarnessUnavailableError, promptWithInstructions, providerScrubEnv, runCapture, runCliHarness as runCliHarnessDefault, } from "@claudexor/core";
4
4
  import { resolveSecret } from "@claudexor/secrets";
5
5
  import { CLAUDEXOR_VERSION, nowIso, redactSecrets } from "@claudexor/util";
6
- import { createCursorParser, parseCursorModelList, parseCursorStderrFailure } from "./parse.js";
6
+ import { createCursorParser, parseCursorStderrFailure } from "./parse.js";
7
7
  export { parseCursorModelList } from "./parse.js";
8
8
  import { cursorObservationAuthenticated, cursorObservationError, probeCursorNativeAuth, selectCursorAuthRoute, shouldDiscloseCursorAutoApiRoute, shouldSmokeCursorApiKey, } from "./auth.js";
9
9
  import { probeCursorDoctorForAccounts } from "./doctor.js";
10
10
  import { probeCursorCredentialAccount, probeCursorCredentialProfile, resolveCursorRunRoute, stampCursorProfileEvents, } from "./profile.js";
11
11
  export { canonicalCursorProfileHome, cursorProfilePathEnv } from "./profile.js";
12
12
  import { smokeIsolatedApiKey, unsmokedApiSmoke } from "./smoke.js";
13
+ import { listCursorModelsFromReadyRoute, queryCursorModels, } from "./models.js";
13
14
  export { cleanupCursorSmokeBase, cursorApiSmokeFinalText, cursorApiSmokePassed, smokeIsolatedApiKey, } from "./smoke.js";
14
15
  export { cursorStatusAuthenticated, cursorStatusLoggedOut, selectCursorAuthRoute, shouldDiscloseCursorAutoApiRoute, } from "./auth.js";
15
16
  export const BIN = process.env.CLAUDEXOR_CURSOR_BIN || "cursor-agent";
@@ -104,21 +105,6 @@ async function smokeCursorApiKey(deps, key, fresh = false) {
104
105
  deps.apiSmokeCache.set(cacheKey, { result, expiresAtMs: now + ttlMs });
105
106
  return result;
106
107
  }
107
- async function listCursorModels(env = { ...providerScrubEnv() }, cwd) {
108
- try {
109
- const r = await runCapture(BIN, ["--list-models"], {
110
- env,
111
- ...(cwd ? { cwd } : {}),
112
- timeoutMs: 30_000,
113
- });
114
- if (r.code !== 0)
115
- return [];
116
- return parseCursorModelList(r.stdout);
117
- }
118
- catch {
119
- return [];
120
- }
121
- }
122
108
  function cursorBaseEnv(env) {
123
109
  return { ...(env ?? {}), ...providerScrubEnv() };
124
110
  }
@@ -156,81 +142,12 @@ async function resolveCursorAuthRoute(deps, input) {
156
142
  });
157
143
  return { route, env, key, nativeAuthed, scopedHome };
158
144
  }
159
- /**
160
- * A PINNED profile owns its own inventory. `resolveCursorAuthRoute` below is
161
- * the engine-default ladder, which under D-U3 can only ever find the API-key
162
- * route — so asking it about a named native account returns an empty list and
163
- * the strict model gate then refuses a model the account really offers. The run
164
- * path resolves a pinned profile through `resolveCursorRunRoute`; enumeration
165
- * must go through the SAME seam, or preflight and spawn are asking two
166
- * different accounts.
167
- */
168
- async function listCursorModelsForProfile(deps, spec) {
169
- const resolved = await resolveCursorRunRoute({
170
- credential_profile: spec.credentialProfile,
171
- env: spec.env ?? {},
172
- auth_preference: spec.authPreference ?? "auto",
173
- }, deps, ({ cursorApiKey, ...input }) => resolveCursorAuthRoute(cursorApiKey ? { ...deps, cursorApiKey } : deps, input), spec.abortSignal);
174
- if ("refusal" in resolved)
175
- return [];
176
- if (resolved.route === "local_session")
177
- return deps.listCursorModels({ ...resolved.env, CURSOR_API_KEY: null }, spec.cwd);
178
- if (resolved.route === "api_key" && resolved.key)
179
- return deps.listCursorModels({ ...resolved.env, CURSOR_API_KEY: resolved.key }, spec.cwd);
180
- return [];
181
- }
182
- async function listCursorModelsFromReadyRoute(deps, spec) {
183
- if (spec?.credentialProfile)
184
- return listCursorModelsForProfile(deps, {
185
- ...spec,
186
- credentialProfile: spec.credentialProfile,
187
- });
188
- // ONE seam for every enumeration below: the inventory must run in the same
189
- // working directory the eventual run will use, because cursor-agent resolves
190
- // account/workspace state relative to it.
191
- const modelsFrom = (env) => deps.listCursorModels(env, spec?.cwd);
192
- const catalogOnly = () => modelsFrom({ ...providerScrubEnv(), CURSOR_API_KEY: deps.cursorApiKey(spec?.env) ?? null });
193
- if (spec?.env || spec?.authPreference || spec?.fresh) {
194
- const authPreference = spec.authPreference ?? "auto";
195
- const resolved = await resolveCursorAuthRoute(deps, {
196
- env: spec.env,
197
- authPreference,
198
- fresh: spec?.fresh,
199
- abortSignal: spec?.abortSignal,
200
- });
201
- if (resolved.route === "local_session") {
202
- const models = await modelsFrom({ ...resolved.env, CURSOR_API_KEY: null });
203
- if (models.length > 0)
204
- return models;
205
- if (authPreference === "subscription")
206
- return [];
207
- }
208
- if (resolved.route === "api_key" && resolved.key) {
209
- const models = await modelsFrom({ ...resolved.env, CURSOR_API_KEY: resolved.key });
210
- if (models.length > 0)
211
- return models;
212
- }
213
- return [];
214
- }
215
- // No default native session exists to list models from (D-U3: the host
216
- // Keychain is never probed); the key route and the static catalog remain.
217
- const key = deps.cursorApiKey();
218
- if (!key)
219
- return catalogOnly();
220
- const apiSmoke = await smokeCursorApiKey(deps, key, spec?.fresh === true);
221
- if (apiSmoke.ok) {
222
- const models = await modelsFrom({ ...providerScrubEnv(), CURSOR_API_KEY: key });
223
- if (models.length > 0)
224
- return models;
225
- }
226
- return catalogOnly();
227
- }
228
145
  export function createCursorAdapter(deps = {}) {
229
146
  const runtime = {
230
147
  detectVersion,
231
148
  nativeAuthOk: probeCursorNativeAuth,
232
149
  cursorApiKey,
233
- listCursorModels,
150
+ listCursorModels: (env, cwd) => queryCursorModels(BIN, env, cwd),
234
151
  smokeIsolatedApiKey,
235
152
  apiSmokeCache: new Map(),
236
153
  apiSmokeCacheTtlMs: CURSOR_API_SMOKE_CACHE_TTL_MS,
@@ -304,16 +221,7 @@ export function createCursorAdapter(deps = {}) {
304
221
  ...(nativeAuthed ? ["local_session"] : []),
305
222
  ...(apiKey ? ["api_key"] : []),
306
223
  ],
307
- // external_sandbox_full: cursor's own sandbox stands down (--force
308
- // --sandbox disabled), mirroring codex/claude; the engine applies its
309
- // own OS boundary only on delegated runs. Bare `full` stays
310
- // undeclared/refused (no boundary, not proven).
311
- access_profiles_supported: [
312
- "readonly",
313
- "workspace_write",
314
- "external_sandbox_full",
315
- "inherit_native",
316
- ],
224
+ access_profiles_supported: ["readonly", "workspace_write", "full", "inherit_native"],
317
225
  });
318
226
  },
319
227
  async doctor(spec) {
@@ -327,7 +235,7 @@ export function createCursorAdapter(deps = {}) {
327
235
  return runCursor(spec, runtime);
328
236
  },
329
237
  async models(spec) {
330
- return listCursorModelsFromReadyRoute(runtime, spec);
238
+ return listCursorModelsFromReadyRoute(runtime, spec, ({ cursorApiKey, ...input }) => resolveCursorAuthRoute(cursorApiKey ? { ...runtime, cursorApiKey } : runtime, input), (key, fresh) => smokeCursorApiKey(runtime, key, fresh));
331
239
  },
332
240
  async probeCredentialProfile(profile, abortSignal) {
333
241
  return probeCursorCredentialProfile(profile, runtime, abortSignal);
@@ -338,22 +246,6 @@ export function createCursorAdapter(deps = {}) {
338
246
  };
339
247
  }
340
248
  async function* runCursor(spec, deps) {
341
- // Bare `full` claims NO boundary at all and stays refused (unproven).
342
- // `external_sandbox_full` stands cursor's weaker sandbox down (`--force
343
- // --sandbox disabled` via accessArgs) — the same mapping codex
344
- // (danger-full-access) and claude (bypassPermissions) implement. The engine
345
- // applies its OWN OS boundary only on delegated runs; requested directly,
346
- // this profile runs unrestricted (and is not behind the trust allow).
347
- if (spec.access === "full") {
348
- yield {
349
- type: "error",
350
- session_id: spec.session_id,
351
- ts: nowIso(),
352
- error: "cursor full access is not conformance-proven; use workspace_write, or external_sandbox_full (cursor's sandbox stands down; the engine applies its own boundary only on delegated runs — otherwise unrestricted)",
353
- };
354
- yield { type: "completed", session_id: spec.session_id, ts: nowIso() };
355
- return;
356
- }
357
249
  const args = ["-p", "--output-format", "stream-json", ...accessArgs(spec)];
358
250
  // Native Plan's createPlan schema cannot carry D-16 WorkReport; native read-only
359
251
  // Ask preserves prompt-owned plan intent and the model-authored final report.
@@ -374,7 +266,9 @@ async function* runCursor(spec, deps) {
374
266
  args.push("--resume", spec.resume_session_id);
375
267
  // Cursor has no native system-prompt flag; layer instructions as a delimited
376
268
  // prompt prefix (the engine already withheld them from synthesis/reviewers).
377
- args.push(promptWithInstructions(spec));
269
+ // Its headless CLI reads a piped prompt when no positional prompt is present;
270
+ // keeping the bytes off argv avoids the platform command-size ceiling.
271
+ const input = promptWithInstructions(spec);
378
272
  // INV-135 strict profile routing lives in profile.ts; the callback resolves
379
273
  // the engine-default credential ladder for profile-less (or API-key) runs.
380
274
  const profile = spec.credential_profile;
@@ -429,6 +323,7 @@ async function* runCursor(spec, deps) {
429
323
  bin: BIN,
430
324
  args,
431
325
  spec,
326
+ input,
432
327
  env,
433
328
  label: "cursor-agent",
434
329
  redact: redactSecrets,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { HarnessModelSpec } from "@claudexor/core";
2
+ import type { HarnessModel } from "@claudexor/schema";
3
+ import type { CursorApiSmokeResult } from "./smoke.js";
4
+ import { type CursorDefaultRouteInput, type CursorProfileRuntimeDeps, type CursorRunRoute } from "./profile.js";
5
+ export type CursorEnvMap = Record<string, string | null | undefined>;
6
+ export type CursorModelLister = (env?: CursorEnvMap, cwd?: string) => Promise<HarnessModel[]>;
7
+ type CursorModelRuntimeDeps = CursorProfileRuntimeDeps & {
8
+ cursorApiKey: (env?: CursorEnvMap) => string | null;
9
+ listCursorModels: CursorModelLister;
10
+ };
11
+ type CursorModelAuthInput = Omit<CursorDefaultRouteInput, "env"> & {
12
+ env?: CursorEnvMap;
13
+ fresh?: boolean;
14
+ };
15
+ type ResolveCursorAuthRoute = (input: CursorModelAuthInput) => Promise<CursorRunRoute>;
16
+ type SmokeCursorApiKey = (key: string, fresh?: boolean) => Promise<CursorApiSmokeResult>;
17
+ /** Query the vendor's model inventory in the exact environment used by a run. */
18
+ export declare function queryCursorModels(bin: string, env?: CursorEnvMap, cwd?: string): Promise<HarnessModel[]>;
19
+ /** Resolve model inventory through the same ready credential route as a run. */
20
+ export declare function listCursorModelsFromReadyRoute(deps: CursorModelRuntimeDeps, spec: HarnessModelSpec | undefined, resolveAuthRoute: ResolveCursorAuthRoute, smokeApiKey: SmokeCursorApiKey): Promise<HarnessModel[]>;
21
+ export {};
22
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvD,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACpB,MAAM,cAAc,CAAC;AAEtB,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC;AACrE,MAAM,MAAM,iBAAiB,GAAG,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;AAE9F,KAAK,sBAAsB,GAAG,wBAAwB,GAAG;IACvD,YAAY,EAAE,CAAC,GAAG,CAAC,EAAE,YAAY,KAAK,MAAM,GAAG,IAAI,CAAC;IACpD,gBAAgB,EAAE,iBAAiB,CAAC;CACrC,CAAC;AAEF,KAAK,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,EAAE,KAAK,CAAC,GAAG;IACjE,GAAG,CAAC,EAAE,YAAY,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,KAAK,sBAAsB,GAAG,CAAC,KAAK,EAAE,oBAAoB,KAAK,OAAO,CAAC,cAAc,CAAC,CAAC;AACvF,KAAK,iBAAiB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEzF,iFAAiF;AACjF,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,YAAwC,EAC7C,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,YAAY,EAAE,CAAC,CAYzB;AA8BD,gFAAgF;AAChF,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,sBAAsB,EAC5B,IAAI,EAAE,gBAAgB,GAAG,SAAS,EAClC,gBAAgB,EAAE,sBAAsB,EACxC,WAAW,EAAE,iBAAiB,GAC7B,OAAO,CAAC,YAAY,EAAE,CAAC,CA2CzB"}
package/dist/models.js ADDED
@@ -0,0 +1,82 @@
1
+ import { providerScrubEnv, runCapture } from "@claudexor/core";
2
+ import { parseCursorModelList } from "./parse.js";
3
+ import { resolveCursorRunRoute, } from "./profile.js";
4
+ /** Query the vendor's model inventory in the exact environment used by a run. */
5
+ export async function queryCursorModels(bin, env = { ...providerScrubEnv() }, cwd) {
6
+ try {
7
+ const r = await runCapture(bin, ["--list-models"], {
8
+ env,
9
+ ...(cwd ? { cwd } : {}),
10
+ timeoutMs: 30_000,
11
+ });
12
+ if (r.code !== 0)
13
+ return [];
14
+ return parseCursorModelList(r.stdout);
15
+ }
16
+ catch {
17
+ return [];
18
+ }
19
+ }
20
+ /**
21
+ * A PINNED profile owns its own inventory. The engine-default auth ladder can
22
+ * only find an API-key route under D-U3, so named native accounts must resolve
23
+ * through the same strict profile seam as the eventual run.
24
+ */
25
+ async function listCursorModelsForProfile(deps, spec, resolveAuthRoute) {
26
+ const resolved = await resolveCursorRunRoute({
27
+ credential_profile: spec.credentialProfile,
28
+ env: spec.env ?? {},
29
+ auth_preference: spec.authPreference ?? "auto",
30
+ }, deps, resolveAuthRoute, spec.abortSignal);
31
+ if ("refusal" in resolved)
32
+ return [];
33
+ if (resolved.route === "local_session")
34
+ return deps.listCursorModels({ ...resolved.env, CURSOR_API_KEY: null }, spec.cwd);
35
+ if (resolved.route === "api_key" && resolved.key)
36
+ return deps.listCursorModels({ ...resolved.env, CURSOR_API_KEY: resolved.key }, spec.cwd);
37
+ return [];
38
+ }
39
+ /** Resolve model inventory through the same ready credential route as a run. */
40
+ export async function listCursorModelsFromReadyRoute(deps, spec, resolveAuthRoute, smokeApiKey) {
41
+ if (spec?.credentialProfile)
42
+ return listCursorModelsForProfile(deps, { ...spec, credentialProfile: spec.credentialProfile }, resolveAuthRoute);
43
+ // The inventory must run in the eventual run's working directory because
44
+ // cursor-agent resolves account/workspace state relative to it.
45
+ const modelsFrom = (env) => deps.listCursorModels(env, spec?.cwd);
46
+ const catalogOnly = () => modelsFrom({ ...providerScrubEnv(), CURSOR_API_KEY: deps.cursorApiKey(spec?.env) ?? null });
47
+ if (spec?.env || spec?.authPreference || spec?.fresh) {
48
+ const authPreference = spec.authPreference ?? "auto";
49
+ const resolved = await resolveAuthRoute({
50
+ env: spec.env,
51
+ authPreference,
52
+ fresh: spec.fresh,
53
+ abortSignal: spec.abortSignal,
54
+ });
55
+ if (resolved.route === "local_session") {
56
+ const models = await modelsFrom({ ...resolved.env, CURSOR_API_KEY: null });
57
+ if (models.length > 0)
58
+ return models;
59
+ if (authPreference === "subscription")
60
+ return [];
61
+ }
62
+ if (resolved.route === "api_key" && resolved.key) {
63
+ const models = await modelsFrom({ ...resolved.env, CURSOR_API_KEY: resolved.key });
64
+ if (models.length > 0)
65
+ return models;
66
+ }
67
+ return [];
68
+ }
69
+ // No default native session exists to list models from (D-U3: the host
70
+ // Keychain is never probed); the key route and the static catalog remain.
71
+ const key = deps.cursorApiKey();
72
+ if (!key)
73
+ return catalogOnly();
74
+ const apiSmoke = await smokeApiKey(key, spec?.fresh === true);
75
+ if (apiSmoke.ok) {
76
+ const models = await modelsFrom({ ...providerScrubEnv(), CURSOR_API_KEY: key });
77
+ if (models.length > 0)
78
+ return models;
79
+ }
80
+ return catalogOnly();
81
+ }
82
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAElD,OAAO,EACL,qBAAqB,GAItB,MAAM,cAAc,CAAC;AAiBtB,iFAAiF;AACjF,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,GAAG,GAAiB,EAAE,GAAG,gBAAgB,EAAE,EAAE,EAC7C,GAAY;IAEZ,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,EAAE;YACjD,GAAG;YACH,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvB,SAAS,EAAE,MAAM;SAClB,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAC5B,OAAO,oBAAoB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,0BAA0B,CACvC,IAA4B,EAC5B,IAAiE,EACjE,gBAAwC;IAExC,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAC1C;QACE,kBAAkB,EAAE,IAAI,CAAC,iBAAiB;QAC1C,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,EAAE;QACnB,eAAe,EAAE,IAAI,CAAC,cAAc,IAAI,MAAM;KAC/C,EACD,IAAI,EACJ,gBAAgB,EAChB,IAAI,CAAC,WAAW,CACjB,CAAC;IACF,IAAI,SAAS,IAAI,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrC,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe;QACpC,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACpF,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG;QAC9C,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAC5F,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,IAA4B,EAC5B,IAAkC,EAClC,gBAAwC,EACxC,WAA8B;IAE9B,IAAI,IAAI,EAAE,iBAAiB;QACzB,OAAO,0BAA0B,CAC/B,IAAI,EACJ,EAAE,GAAG,IAAI,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,EACtD,gBAAgB,CACjB,CAAC;IAEJ,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,UAAU,GAAG,CAAC,GAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAChF,MAAM,WAAW,GAAG,GAAG,EAAE,CACvB,UAAU,CAAC,EAAE,GAAG,gBAAgB,EAAE,EAAE,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC9F,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,cAAc,IAAI,IAAI,EAAE,KAAK,EAAE,CAAC;QACrD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,MAAM,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC;YACtC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,cAAc;YACd,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,MAAM,CAAC;YACrC,IAAI,cAAc,KAAK,cAAc;gBAAE,OAAO,EAAE,CAAC;QACnD,CAAC;QACD,IAAI,QAAQ,CAAC,KAAK,KAAK,SAAS,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YACjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;YACnF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,MAAM,CAAC;QACvC,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,uEAAuE;IACvE,0EAA0E;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IAChC,IAAI,CAAC,GAAG;QAAE,OAAO,WAAW,EAAE,CAAC;IAC/B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,IAAI,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;IAC9D,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,EAAE,GAAG,gBAAgB,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;QAChF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,MAAM,CAAC;IACvC,CAAC;IACD,OAAO,WAAW,EAAE,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@claudexor/harness-cursor",
3
- "version": "3.8.0",
3
+ "version": "3.8.2",
4
4
  "license": "MIT",
5
5
  "description": "Cursor CLI adapter (cursor-agent -p --output-format stream-json).",
6
6
  "type": "module",
@@ -16,10 +16,10 @@
16
16
  "dist"
17
17
  ],
18
18
  "dependencies": {
19
- "@claudexor/schema": "3.8.0",
20
- "@claudexor/util": "3.8.0",
21
- "@claudexor/secrets": "3.8.0",
22
- "@claudexor/core": "3.8.0"
19
+ "@claudexor/core": "3.8.2",
20
+ "@claudexor/schema": "3.8.2",
21
+ "@claudexor/secrets": "3.8.2",
22
+ "@claudexor/util": "3.8.2"
23
23
  },
24
24
  "repository": {
25
25
  "type": "git",