tryassay 0.28.0 → 0.28.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.
package/dist/lib/llm-provider.js
CHANGED
|
@@ -44,9 +44,20 @@ export class AnthropicApiProvider {
|
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
// ── Claude CLI Provider ──────────────────────────────────────
|
|
47
|
+
/**
|
|
48
|
+
* Check if we're running inside a Claude Code session.
|
|
49
|
+
* Spawning claude -p from within Claude Code causes a deadlock.
|
|
50
|
+
*/
|
|
51
|
+
function isInsideClaudeCode() {
|
|
52
|
+
return !!(process.env.CLAUDECODE || process.env.CLAUDE_CODE_ENTRY);
|
|
53
|
+
}
|
|
47
54
|
export class ClaudeCliProvider {
|
|
48
55
|
type = 'cli';
|
|
49
56
|
async complete(opts) {
|
|
57
|
+
if (isInsideClaudeCode()) {
|
|
58
|
+
throw new Error('CLI provider cannot be used from within a Claude Code session (deadlock).\n' +
|
|
59
|
+
'Set ANTHROPIC_API_KEY to use the API provider instead, or run Assay from a regular terminal.');
|
|
60
|
+
}
|
|
50
61
|
const start = Date.now();
|
|
51
62
|
// Pipe user prompt via stdin to avoid OS ARG_MAX limits on large prompts.
|
|
52
63
|
// The claude CLI reads piped stdin as the prompt in non-interactive mode.
|
|
@@ -54,13 +65,12 @@ export class ClaudeCliProvider {
|
|
|
54
65
|
'-p',
|
|
55
66
|
'--output-format', 'json',
|
|
56
67
|
'--model', opts.model,
|
|
57
|
-
'--max-turns', '
|
|
58
|
-
'--
|
|
68
|
+
'--max-turns', '1',
|
|
69
|
+
'--disallowedTools', 'Bash,Read,Write,Edit,Grep,Glob,WebFetch,WebSearch,NotebookEdit',
|
|
59
70
|
'--no-session-persistence',
|
|
60
71
|
'--system-prompt', opts.systemPrompt,
|
|
61
72
|
], opts.userPrompt, {
|
|
62
|
-
timeout:
|
|
63
|
-
// Unset CLAUDECODE to allow spawning from within Claude Code sessions
|
|
73
|
+
timeout: 5 * 60 * 1000,
|
|
64
74
|
env: { ...process.env, CLAUDECODE: '' },
|
|
65
75
|
});
|
|
66
76
|
if (result.exitCode !== 0) {
|
|
@@ -134,6 +144,10 @@ export function getProvider() {
|
|
|
134
144
|
return cachedProvider;
|
|
135
145
|
const explicit = process.env.ASSAY_LLM_PROVIDER;
|
|
136
146
|
if (explicit === 'cli') {
|
|
147
|
+
if (isInsideClaudeCode()) {
|
|
148
|
+
throw new Error('ASSAY_LLM_PROVIDER=cli but running inside Claude Code (deadlock).\n' +
|
|
149
|
+
'Set ANTHROPIC_API_KEY and use ASSAY_LLM_PROVIDER=api, or run from a regular terminal.');
|
|
150
|
+
}
|
|
137
151
|
cachedProvider = new ClaudeCliProvider();
|
|
138
152
|
}
|
|
139
153
|
else if (explicit === 'api') {
|
|
@@ -141,9 +155,15 @@ export function getProvider() {
|
|
|
141
155
|
}
|
|
142
156
|
else {
|
|
143
157
|
// Auto-detect: use API if key is available, otherwise CLI
|
|
158
|
+
// Never auto-select CLI when inside Claude Code (causes deadlock)
|
|
144
159
|
if (process.env.ANTHROPIC_API_KEY) {
|
|
145
160
|
cachedProvider = new AnthropicApiProvider();
|
|
146
161
|
}
|
|
162
|
+
else if (isInsideClaudeCode()) {
|
|
163
|
+
throw new Error('No ANTHROPIC_API_KEY set and running inside Claude Code.\n' +
|
|
164
|
+
'The CLI provider deadlocks when spawned from Claude Code.\n' +
|
|
165
|
+
'Export ANTHROPIC_API_KEY or run Assay from a regular terminal.');
|
|
166
|
+
}
|
|
147
167
|
else {
|
|
148
168
|
cachedProvider = new ClaudeCliProvider();
|
|
149
169
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llm-provider.js","sourceRoot":"","sources":["../../src/lib/llm-provider.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,+DAA+D;AAC/D,wDAAwD;AACxD,+DAA+D;AAE/D,OAAO,SAAS,MAAM,mBAAmB,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,gEAAgE;AAEhE,MAAM,OAAO,oBAAoB;IACtB,IAAI,GAAoB,KAAK,CAAC;IACtB,MAAM,CAAS;IACf,OAAO,CAAS;IAEjC,YAAY,MAAe,EAAE,OAAgB;QAC3C,MAAM,GAAG,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;QACpD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,MAAM,IAAI,KAAK,CACb,sDAAsD;gBACtD,iEAAiE;gBACjE,wEAAwE,CACzE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,IAA0B;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAE7E,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,UAAU,EAAE,IAAI,CAAC,SAAS,IAAI,MAAM;YACpC,MAAM,EAAE,IAAI,CAAC,YAAY;YACzB,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;YACtD,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;SACzE,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,OAAO,IAAI,IAAI,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,YAAY,EAAE,CAAC;QAEjD,OAAO;YACL,OAAO;YACP,WAAW,EAAE,YAAY,CAAC,KAAK,CAAC,YAAY;YAC5C,YAAY,EAAE,YAAY,CAAC,KAAK,CAAC,aAAa;YAC9C,QAAQ,EAAE,KAAK;YACf,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC/B,CAAC;IACJ,CAAC;CACF;AAED,gEAAgE;AAEhE,MAAM,OAAO,iBAAiB;IACnB,IAAI,GAAoB,KAAK,CAAC;IAEvC,KAAK,CAAC,QAAQ,CAAC,IAA0B;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEzB,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,QAAQ,EAAE;YAC/C,IAAI;YACJ,iBAAiB,EAAE,MAAM;YACzB,SAAS,EAAE,IAAI,CAAC,KAAK;YACrB,aAAa,EAAE,GAAG;YAClB,
|
|
1
|
+
{"version":3,"file":"llm-provider.js","sourceRoot":"","sources":["../../src/lib/llm-provider.ts"],"names":[],"mappings":"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"}
|