deepseek-ai/deepseek-harness · error · Error
Ralph objective must be a non-empty string
Error message
Ralph objective must be a non-empty string
What it means
Error "Ralph objective must be a non-empty string" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/workflow/tool-ralph/src/index.ts:443
},
output: {
schema: {
type: 'object',
additionalProperties: false,
properties: RALPH_OUTPUT_PROPERTIES,
},
render: (_args, value) => [{
type: 'text',
text: renderResult(value.result as unknown as RalphRunResult, resolved.maxResultChars),
}],
},
async execute(args, exec) {
const parent = exec.agent
if (parent === undefined) {
throw new Error('Ralph tool requires a calling agent (exec.agent was undefined)')
}
const objective = args.objective.trim()
if (objective.length === 0) throw new Error('Ralph objective must be a non-empty string')
const maxRounds = resolveMaxRounds(args.maxRounds, resolved.maxRounds)
void requireFreshProvider(ctx, resolved.subagentProvider)
const run: WorkflowRun = ctx.workflowEngine.start({
script: RALPH_SCRIPT,
meta: RALPH_META,
args: { objective, maxRounds, maxHandoffChars: resolved.maxHandoffChars },
subagentProvider: resolved.subagentProvider,
maxTotalAgents: maxRounds,
parent,
signal: exec.signal,
})
const onAbort = (): void => { run.cancel('parent step aborted') }
exec.signal.addEventListener('abort', onAbort, { once: true })
if (exec.signal.aborted) run.cancel('parent step aborted')
try {
const settled = await run.resultView on GitHub (pinned to b150a551b8)
Solutions
- Pass a non-empty objective string to the Ralph tool.
When it happens
Trigger: Thrown at packages/workflow/tool-ralph/src/index.ts:443 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of deepseek-ai/deepseek-harness@b150a551b8 (2026-08-24).
Data as JSON: /api/errors/0fe1d073e5e0421e.
Report an issue: GitHub.