paperclipai/paperclip · error

runtimeConfig must be an object

Error message

runtimeConfig must be an object

What it means

Shape guard on PATCH /agents/:id: the request supplies a 'runtimeConfig' that is not a plain object. Runtime config must be a keyed map (heartbeat, budget, etc.), so the update aborts with 400 rather than writing a malformed config.

Source

Thrown at server/src/routes/agents.ts:4280

          },
          decisionNote: null,
          decidedByUserId: null,
          decidedAt: null,
          updatedAt: new Date(),
        });

        if (sourceIssueIds.length > 0) {
          await issueApprovalsSvc.linkManyForApproval(approval.id, sourceIssueIds, {
            agentId: actor.actorType === "agent" ? actor.actorId : null,
            userId: actor.actorType === "user" ? actor.actorId : null,
          });
        }
      }

      await logActivity(db, {
        companyId,
        actorType: actor.actorType,
        actorId: actor.actorId,
        agentId: actor.agentId,
        runId: actor.runId,
        agentApiKeyId: actor.agentApiKeyId,
        action: "agent.hire_created",
        entityType: "agent",
        entityId: agent.id,
        details: {
          name: agent.name,
          role: agent.role,
          requiresApproval,
          approvalId: approval?.id ?? null,
          issueIds: sourceIssueIds,
          desiredSkills: desiredSkillAssignment.desiredSkills,
          hireFingerprint: requestFingerprint,
        },
      });
      const telemetryClient = getTelemetryClient();
      if (telemetryClient) {

View on GitHub (pinned to 01ad858492)

Solutions

  1. Send runtimeConfig as a JSON object in the request body.
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at server/src/routes/agents.ts:3794 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-08-18). Data as JSON: /api/errors/efeed4c170c9a38c. Report an issue: GitHub.