deepseek-ai/deepseek-harness · error

command "${command}": command/done append failed: ${renderTh

Error message

command "${command}": command/done append failed: ${renderThrown(appendError)}

What it means

Error "command "${command}": command/done append failed: ${renderThrown(appendError)}" thrown in deepseek-ai/deepseek-harness.

Source

Thrown at packages/interaction/commands/src/index.ts:406

    try {
      const output = command.definition.handler(invocation)
      result = normalizeResult(parsed.name, await withAbort(Promise.resolve(output), signal))
    } catch (error: unknown) {
      this.settleThrown(agent.session, parsed.name, commandId, error)
      throw error
    }
    return settle(result)
  }

  /** Contained `command/done` error append for a thrown handler or admission failure. */
  private settleThrown(session: Session, command: string, commandId: CommandId, error: unknown): void {
    try {
      this.appendLifecycle(session, 'command/done', {
        commandId, kind: 'error',
        text: error instanceof Error ? error.message : renderThrown(error),
      })
    } catch (appendError: unknown) {
      this.ctx.logger.warn(`command "${command}": command/done append failed: ${renderThrown(appendError)}`)
    }
  }

  /** Mint the next pairing id (monotonic; instance-token-prefixed so a resumed log never repeats one). */
  private mintCommandId(): CommandId {
    this.commandSeq += 1
    return CommandId(`cmd-${this.instanceToken}-${this.commandSeq}`)
  }

  /**
   * Append one log-only lifecycle event directly: no turn is opened for it and
   * no flush is forced — persistence observes the eager `session/event` path
   * and drains at ordinary checkpoints and teardown, like every other
   * standalone plugin event.
   */
  private appendLifecycle<T extends 'command/run' | 'command/done'>(
    session: Session,
    type: T,

View on GitHub (pinned to b150a551b8)

Solutions

  1. Check that the command history store is writable; fix storage and retry the command or restart the session.

When it happens

Trigger: Thrown at packages/interaction/commands/src/index.ts:406 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/a41a9bb3857d515a. Report an issue: GitHub.