{"record":{"id":"8e65aeba365d3c06","repo":"paperclipai/paperclip","slug":"company-is-required-for-agent-profiles","errorCode":null,"errorMessage":"Company is required for agent profiles","messagePattern":"Company is required for agent profiles","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"cli/src/commands/client/connect.ts","lineNumber":126,"sourceCode":"      tokenCreatedAt: key.createdAt,\n    }, opts.context);\n    setCurrentProfile(profileName, opts.context);\n    p.outro(pc.green(`Connected profile '${profileName}' as board.`));\n    return {\n      ok: true,\n      profile: profileName,\n      persona: \"board\",\n      apiBase,\n      companyId: company?.id ?? null,\n      key: publicKeyResult(key),\n      exports: buildExports({ apiBase, companyId: company?.id, agentId: undefined, envName: apiKeyEnvVarName, token: key.token }),\n    };\n  }\n\n  const company = await chooseCompany(companies, opts.companyId ?? resolvedProfile.profile.companyId, {\n    optional: false,\n  });\n  if (!company) throw new Error(\"Company is required for agent profiles\");\n  const agents = (await boardApi.get<Agent[]>(apiPath`/api/companies/${company.id}/agents`)) ?? [];\n  if (agents.length === 0) throw new Error(`Company '${company.name}' has no agents to connect.`);\n  const agent = await chooseAgent(agents, resolvedProfile.profile.agentId);\n  const tokenName = opts.tokenName?.trim() || `cli-agent-${new Date().toISOString()}`;\n  const key = await boardApi.post<CreatedAgentKey>(apiPath`/api/agents/${agent.id}/keys`, createAgentKeySchema.parse({ name: tokenName }));\n  if (!key) throw new Error(\"Failed to create agent token\");\n  upsertProfile(profileName, {\n    apiBase,\n    companyId: company.id,\n    persona: \"agent\",\n    agentId: agent.id,\n    agentName: agent.name,\n    apiKeyEnvVarName,\n    tokenName: key.name,\n    tokenId: key.id,\n    tokenCreatedAt: key.createdAt,\n  }, opts.context);\n  setCurrentProfile(profileName, opts.context);","sourceCodeStart":108,"sourceCodeEnd":144,"githubUrl":"https://github.com/paperclipai/paperclip/blob/120ae5428fa29bee300bcf806491cd4d965fbb7c/cli/src/commands/client/connect.ts#L108-L144","documentation":"The agent-persona branch of connectWizard requires a company to scope the profile, and chooseCompany with optional=false returned null, so no company context exists for the agent.","triggerScenarios":"Thrown at cli/src/commands/client/connect.ts:126 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass --company-id or set a context default company for agent profiles."],"exampleFix":null,"handlingStrategy":"validation","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-23T08:17:48.524Z"}