paperclipai/paperclip · error · Error
current CapabilityLiveSessionService requires collaboration-
Error message
current CapabilityLiveSessionService requires collaboration-mode instructions
What it means
The current CapabilityLiveSessionService always injects collaboration-mode instructions, so it cannot honor a request that explicitly opts out. parseEvalSessionRequest throws when input.includeCollaborationModeInstructions is exactly false; undefined (absent) is accepted, but a deliberate false is refused fail-closed.
Source
Thrown at packages/paperclip-runner/src/cli/eval-session-contract.ts:275
const managedProfile = provider === "claude_managed"
? parseManagedProfile(managedProfileInput)
: undefined;
const agentCoreProfile = provider === "aws_agentcore"
? parseAgentCoreProfile(agentCoreProfileInput)
: undefined;
if (provider !== "claude_managed" && managedProfileInput !== undefined) {
throw new Error("eval-session managedProfile requires provider claude_managed");
}
if (provider !== "aws_agentcore" && agentCoreProfileInput !== undefined) {
throw new Error("eval-session agentCoreProfile requires provider aws_agentcore");
}
if (input.nativeResume !== undefined) {
throw new Error(
"eval-session nativeResume requires a retained live-session checkpoint",
);
}
if (input.includeCollaborationModeInstructions === false) {
throw new Error(
"current CapabilityLiveSessionService requires collaboration-mode instructions",
);
}
const runnerd = object(input.runnerd, "request.runnerd");
const digest = text(runnerd.sha256, "request.runnerd.sha256");
if (!/^(?:sha256:)?[a-f0-9]{64}$/i.test(digest)) {
throw new Error("request.runnerd.sha256 must be a SHA-256 digest");
}
const limits = object(input.limits, "request.limits");
const sessionInput = object(input.session, "request.session");
const session = sessionInput as unknown as CreateCapabilityLiveSessionInput;
const model = text(input.model, "request.model");
if (provider === "claude_managed" && model !== "claude-sonnet-5") {
throw new Error("Claude Managed evals require exact model claude-sonnet-5");
}
if (
provider === "aws_agentcore" &&View on GitHub (pinned to 01ad858492)
Solutions
- Remove includeCollaborationModeInstructions or set it to true (or just omit it).
- If the goal is fewer instructions, achieve it outside the eval-session contract; this service does not support opting out.
- If opt-out should exist, extend CapabilityLiveSessionService itself, not just the request.
Example fix
// before
{ "provider": "codex", "includeCollaborationModeInstructions": false, ... }
// after
{ "provider": "codex", ... } Defensive patterns
Strategy: validation
Validate before calling
function allowsCollaborationOptOut(input) { return input.includeCollaborationModeInstructions !== false; }
if (!allowsCollaborationOptOut(req)) throw new Error("collaboration-mode instructions are mandatory for this service"); Type guard
function acceptsOptOut(input) { return input.includeCollaborationModeInstructions !== false; } Try / catch
try { return parseEvalSessionRequest(raw); } catch (e) { if (String(e.message).includes("requires collaboration-mode instructions")) { delete raw.includeCollaborationModeInstructions; return parseEvalSessionRequest(raw); } throw e; } Prevention
- Only send includeCollaborationModeInstructions when the target service supports opting out.
- Centralize request construction so the opt-out flag cannot leak into eval-session calls.
- Assert flags against a supported-options list in tests.
When it happens
Trigger: Calling parseEvalSessionRequest with includeCollaborationModeInstructions: false in the eval-session request body for any provider.
Common situations: A generic harness/config builder that serializes an opt-out flag it supports elsewhere but this service does not; trying to slim prompts by disabling collaboration instructions in eval runs; porting a request shape from a different session service that allows the opt-out.
Related errors
- eval-session nativeResume requires a retained live-session c
- request.runnerd.sha256 must be a SHA-256 digest
- The Pi ACPX profile is not available
- eval-session agentCoreProfile requires provider aws_agentcor
- Invalid status '${String(rawStatus)}'. Must be one of: ${PLU
AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-09-02).
Data as JSON: /api/errors/bd8f99f072f1a883.
Report an issue: GitHub.