@codemem/core 0.34.0 → 0.35.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/dist/claude-hooks.d.ts +8 -0
- package/dist/claude-hooks.d.ts.map +1 -1
- package/dist/codex-hooks.d.ts +36 -0
- package/dist/codex-hooks.d.ts.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3809 -3442
- package/dist/index.js.map +1 -1
- package/dist/observer-client.d.ts +51 -0
- package/dist/observer-client.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -39,6 +39,7 @@ export interface ObserverConfig {
|
|
|
39
39
|
observerAuthTimeoutMs: number;
|
|
40
40
|
observerAuthCacheTtlS: number;
|
|
41
41
|
claudeCommand?: string[];
|
|
42
|
+
codexCommand?: string[];
|
|
42
43
|
observerExplicitConfigKeys?: string[];
|
|
43
44
|
}
|
|
44
45
|
export interface ObserverResponse {
|
|
@@ -71,6 +72,23 @@ export interface ObserverStatus {
|
|
|
71
72
|
message: string;
|
|
72
73
|
} | null;
|
|
73
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Decide whether to auto-select the codex_sidecar runtime. Pure/testable: the
|
|
77
|
+
* caller supplies the filesystem/PATH-derived facts. Auto-selection must not
|
|
78
|
+
* override an explicit runtime, available API keys, the OpenCode OAuth cache,
|
|
79
|
+
* or an explicitly configured file/command auth source (those feed api_http and
|
|
80
|
+
* would otherwise be silently ignored once the sidecar skips provider init).
|
|
81
|
+
*/
|
|
82
|
+
export declare function shouldAutoSelectCodexSidecar(opts: {
|
|
83
|
+
observerRuntime: string | null;
|
|
84
|
+
hasAnyApiKey: boolean;
|
|
85
|
+
observerAuthSource: string | null;
|
|
86
|
+
observerAuthFile: string | null;
|
|
87
|
+
observerAuthCommand: string[] | null;
|
|
88
|
+
hasUsableOpenCodeCache: boolean;
|
|
89
|
+
codexAvailable: boolean;
|
|
90
|
+
codexAuthExists: boolean;
|
|
91
|
+
}): boolean;
|
|
74
92
|
/**
|
|
75
93
|
* Load observer config from `~/.config/codemem/config.json{c}`.
|
|
76
94
|
*
|
|
@@ -91,6 +109,20 @@ export declare function isSidecarModelError(message: string): boolean;
|
|
|
91
109
|
* Preserves the Python implementation's broad phrase matching.
|
|
92
110
|
*/
|
|
93
111
|
export declare function isSidecarAuthError(message: string): boolean;
|
|
112
|
+
/**
|
|
113
|
+
* Detect model-related errors from `codex exec` output.
|
|
114
|
+
* Mirrors the generous matching strategy of isSidecarModelError but tuned for
|
|
115
|
+
* Codex CLI phrasings (unknown/unsupported/invalid model).
|
|
116
|
+
*/
|
|
117
|
+
export declare function isCodexSidecarModelError(message: string): boolean;
|
|
118
|
+
/**
|
|
119
|
+
* Detect auth-related errors from `codex exec` output.
|
|
120
|
+
*
|
|
121
|
+
* Uses anchored phrases rather than bare substrings: codex stderr streams
|
|
122
|
+
* operational logs (paths, URLs, byte offsets) that would otherwise trip loose
|
|
123
|
+
* tokens like "login", "401", or "403" and surface a spurious auth failure.
|
|
124
|
+
*/
|
|
125
|
+
export declare function isCodexSidecarAuthError(message: string): boolean;
|
|
94
126
|
/**
|
|
95
127
|
* LLM client for analyzing coding session transcripts and extracting memories.
|
|
96
128
|
*
|
|
@@ -133,6 +165,8 @@ export declare class ObserverClient {
|
|
|
133
165
|
private readonly _apiKey;
|
|
134
166
|
private readonly _claudeCommand;
|
|
135
167
|
private readonly _sidecarModel;
|
|
168
|
+
private readonly _codexCommand;
|
|
169
|
+
private readonly _codexSidecarModel;
|
|
136
170
|
private _codexAccess;
|
|
137
171
|
private _codexAccountId;
|
|
138
172
|
private _anthropicOAuthAccess;
|
|
@@ -142,6 +176,8 @@ export declare class ObserverClient {
|
|
|
142
176
|
private _lastResolvedModel;
|
|
143
177
|
private _sidecarModelFallbackApplied;
|
|
144
178
|
private _sidecarModelFallbackReason;
|
|
179
|
+
private _codexSidecarModelFallbackApplied;
|
|
180
|
+
private _codexSidecarModelFallbackReason;
|
|
145
181
|
constructor(config?: ObserverConfig);
|
|
146
182
|
toConfig(): ObserverConfig;
|
|
147
183
|
/** Return the resolved runtime state of this observer client. */
|
|
@@ -155,6 +191,8 @@ export declare class ObserverClient {
|
|
|
155
191
|
* This is the main entry point. On auth errors, attempts one refresh + retry.
|
|
156
192
|
*/
|
|
157
193
|
observe(systemPrompt: string, userPrompt: string): Promise<ObserverResponse>;
|
|
194
|
+
/** Model string to report for a result, accounting for sidecar fallback. */
|
|
195
|
+
private _resolvedResultModel;
|
|
158
196
|
/**
|
|
159
197
|
* Request structured JSON output when the current provider/runtime supports it.
|
|
160
198
|
* Falls back to plain `observe()` + caller-side parsing for unsupported paths.
|
|
@@ -169,6 +207,19 @@ export declare class ObserverClient {
|
|
|
169
207
|
private _buildSidecarCommand;
|
|
170
208
|
private _invokeSidecar;
|
|
171
209
|
private _callSidecar;
|
|
210
|
+
/**
|
|
211
|
+
* Build the `codex exec` argv. The final agent message is captured via the
|
|
212
|
+
* `-o/--output-last-message <FILE>` flag (caller supplies the tmp path) and
|
|
213
|
+
* the prompt is read from stdin (trailing `-`).
|
|
214
|
+
*/
|
|
215
|
+
private _buildCodexSidecarCommand;
|
|
216
|
+
private _invokeCodexSidecar;
|
|
217
|
+
/**
|
|
218
|
+
* Spawn the codex CLI, write the prompt to stdin, and collect stdout/stderr.
|
|
219
|
+
* Enforces a timeout and a stdout buffer cap mirroring _invokeSidecar.
|
|
220
|
+
*/
|
|
221
|
+
private _spawnCodex;
|
|
222
|
+
private _callCodexSidecar;
|
|
172
223
|
private _fetchJSON;
|
|
173
224
|
private _fetchSSE;
|
|
174
225
|
private _handleHttpError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer-client.d.ts","sourceRoot":"","sources":["../src/observer-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"observer-client.d.ts","sourceRoot":"","sources":["../src/observer-client.ts"],"names":[],"mappings":"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"}
|