{"record":{"id":"1d1c5f3ba3ea4fb6","repo":"paperclipai/paperclip","slug":"comment-requires-body-or-body-file","errorCode":null,"errorMessage":"comment requires --body or --body-file","messagePattern":"comment requires --body or --body-file","errorType":"validation","errorClass":"UsageError","httpStatus":null,"severity":"error","filePath":"packages/adapters/hermes/skills/paperclip-task-bridge/paperclip-task.mjs","lineNumber":287,"sourceCode":"  ]) {\n    const value = readStringFlag(args, flag);\n    if (value) body[field] = value;\n  }\n  const status = readStringFlag(args, \"status\");\n  if (status) body.status = validateEnum(status, STATUSES, \"status\");\n\n  const issue = await apiFetch(config, `/companies/${encodeURIComponent(identity.companyId)}/issues`, {\n    method: \"POST\",\n    mutating: true,\n    body,\n  });\n  printJson({ command: \"create-task\", issue: issueSummary(issue) });\n}\n\nasync function comment(config, args) {\n  const issueRef = requireStringFlag(args, \"issue\");\n  const bodyText = await readBody(args, \"body\", \"body-file\");\n  if (!bodyText || bodyText.trim().length === 0) throw new UsageError(\"comment requires --body or --body-file\");\n  const commentBody = {\n    body: bodyText,\n    ...(boolFlag(args, \"resume\") ? { resume: true } : {}),\n    ...(boolFlag(args, \"reopen\") ? { reopen: true } : {}),\n  };\n  const created = await apiFetch(config, `/issues/${encodeURIComponent(issueRef)}/comments`, {\n    method: \"POST\",\n    mutating: true,\n    body: commentBody,\n  });\n  printJson({ command: \"comment\", issue: issueRef, comment: commentSummary(created) });\n}\n\nasync function updateStatus(config, args) {\n  const issueRef = requireStringFlag(args, \"issue\");\n  const status = validateEnum(requireStringFlag(args, \"status\"), STATUSES, \"status\");\n  const commentText = await readBody(args, \"comment\", \"comment-file\");\n  const body = {","sourceCodeStart":269,"sourceCodeEnd":305,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/packages/adapters/hermes/skills/paperclip-task-bridge/paperclip-task.mjs#L269-L305","documentation":"Error \"comment requires --body or --body-file\" thrown in paperclipai/paperclip.","triggerScenarios":"Thrown at packages/adapters/hermes/skills/paperclip-task-bridge/paperclip-task.mjs:287 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide the comment text via --body or a file via --body-file."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"120ae5428fa29bee300bcf806491cd4d965fbb7c","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}