Merge pull request #19 from madhura68/feat/configurable-claude-output-format
feat(worker): configureerbare Claude --output-format, default stream-json (IDEA-064)
This commit is contained in:
commit
1a87bee280
2 changed files with 15 additions and 1 deletions
|
|
@ -108,3 +108,9 @@ AGENT_BACKOFF_MAX=300
|
||||||
AGENT_LOG_GZIP_AFTER_HOURS=24
|
AGENT_LOG_GZIP_AFTER_HOURS=24
|
||||||
# Hoeveel dagen ge-gzipte logs bewaren voor we ze verwijderen.
|
# Hoeveel dagen ge-gzipte logs bewaren voor we ze verwijderen.
|
||||||
AGENT_LOG_DELETE_AFTER_DAYS=30
|
AGENT_LOG_DELETE_AFTER_DAYS=30
|
||||||
|
|
||||||
|
# Claude CLI --output-format. Default 'stream-json' streamt de volledige
|
||||||
|
# event-stream (tool-calls, berichten) live naar de run-log; 'text' geeft
|
||||||
|
# alleen Claude's eind-samenvatting (terser, maar geen live-meekijken).
|
||||||
|
# stream-json maakt de run-log JSONL — gebruik jq of een viewer.
|
||||||
|
AGENT_CLAUDE_OUTPUT_FORMAT=stream-json
|
||||||
|
|
|
||||||
|
|
@ -292,6 +292,13 @@ async function main(): Promise<number> {
|
||||||
|
|
||||||
// 7. Build CLI args.
|
// 7. Build CLI args.
|
||||||
const promptText = getKindPromptText(ctx.kind).replace('$PAYLOAD_PATH', payloadPath)
|
const promptText = getKindPromptText(ctx.kind).replace('$PAYLOAD_PATH', payloadPath)
|
||||||
|
// --output-format is configureerbaar via env. Default 'stream-json' geeft
|
||||||
|
// de volledige event-stream (elke tool-call, elk bericht) live in de
|
||||||
|
// run-log, i.p.v. alleen Claude's eind-samenvatting. stream-json vereist
|
||||||
|
// --verbose in print-mode. Zet AGENT_CLAUDE_OUTPUT_FORMAT=text terug voor
|
||||||
|
// de oude terse output. TOKEN_EXPIRED-detectie werkt ongewijzigd: de
|
||||||
|
// auth-error-strings staan ook binnen de JSON-events.
|
||||||
|
const outputFormat = process.env.AGENT_CLAUDE_OUTPUT_FORMAT ?? 'stream-json'
|
||||||
const args: string[] = [
|
const args: string[] = [
|
||||||
'-p',
|
'-p',
|
||||||
promptText,
|
promptText,
|
||||||
|
|
@ -306,8 +313,9 @@ async function main(): Promise<number> {
|
||||||
'--add-dir',
|
'--add-dir',
|
||||||
'/opt/agent',
|
'/opt/agent',
|
||||||
'--output-format',
|
'--output-format',
|
||||||
'text',
|
outputFormat,
|
||||||
]
|
]
|
||||||
|
if (outputFormat === 'stream-json') args.push('--verbose')
|
||||||
if (effort) args.push('--effort', effort)
|
if (effort) args.push('--effort', effort)
|
||||||
|
|
||||||
const cwd = worktreePath ?? '/opt/agent'
|
const cwd = worktreePath ?? '/opt/agent'
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue