selfDiagnostics: {
enabled: true,
// Copy the SDK defaults, then customize as needed:
signals: {
missing_context: {
description:
"You cannot complete the task because critical information, credentials, or access is missing and the user cannot provide it. " +
"Do NOT report this for normal clarifying questions — only when you are blocked.",
sentiment: "NEGATIVE",
},
repeatedly_broken_tool: {
description:
"A tool has failed or not returned the expected response on multiple distinct attempts in this conversation, preventing task completion. " +
"A single tool error is NOT enough — the tool must be persistently broken or aberrantly behaving across retries.",
sentiment: "NEGATIVE",
},
capability_gap: {
description:
"The task requires a tool, permission, or capability that you do not have. " +
"For example, the user asks you to perform an action but no suitable tool exists, or you lack the necessary access. " +
"Do NOT report this if you simply need more information from the user — only when the gap is in your own capabilities.",
sentiment: "NEGATIVE",
},
complete_task_failure: {
description:
"You were unable to accomplish what the user asked despite making genuine attempts. This might be things like, you genuinely do not have the capabilities the user is asking for. You have tried but run into a persistent bug in the environment etc. " +
"This is NOT a refusal or policy block — you tried and failed to deliver the result.",
sentiment: "NEGATIVE",
},
},
}