deepseek-ai/deepseek-harness · error · Error
invalid prompt variable name "${name}" (must match ${String(
Error message
invalid prompt variable name "${name}" (must match ${String(VARIABLE_NAME)}) What it means
Error "invalid prompt variable name "${name}" (must match ${String(VARIABLE_NAME)})" thrown in deepseek-ai/deepseek-harness.
Source
Thrown at packages/core/system-prompt/src/index.ts:448
tools(provider: (context: AssembleContext) => ToolProviderResult): () => void {
return this.layers.effect(
this.ctx,
layer => layer.toolProviders.append(provider),
{ label: 'systemPrompt.tools()' },
)
}
/**
* Register a prompt variable in the calling context's scope. Scoped values
* shadow globals; invalid or duplicate names throw. A provider may return
* `undefined`, but rendering a section that references that value then fails.
* @param name - the `[a-z][a-z0-9_]*` reference name.
* @param provider - evaluated for each assembly.
* @returns the exact Cordis effect disposer.
*/
variable(name: string, provider: (context: AssembleContext) => string | undefined): () => void {
if (!VARIABLE_NAME.test(name)) {
throw new Error(`invalid prompt variable name "${name}" (must match ${String(VARIABLE_NAME)})`)
}
return this.layers.effect(
this.ctx,
layer => layer.variables.insert(name, provider),
{ label: 'systemPrompt.variable()' },
)
}
/**
* Assemble global and scoped providers, detach tool parameters, apply
* canonical ordering, then run the assembly waterfall. Scoped sections and
* variables shadow globals. The returned waterfall value is authoritative
* except that an effective complete section is restored afterwards as the
* sole prompt section.
* @param context - the optional scope and plugin-defined assembly fields.
* @returns the post-waterfall assembly with any complete prompt enforced.
*/
// Keep configuration failures on the declared asynchronous error path.View on GitHub (pinned to b150a551b8)
When it happens
Trigger: Thrown at packages/core/system-prompt/src/index.ts:448 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/ab87cd6a7c2f6b3b.
Report an issue: GitHub.