{"record":{"id":"f442005dd66c45a7","repo":"rohitg00/agentmemory","slug":"wiring-name-no-adapter-available-skipped","errorCode":null,"errorMessage":"Wiring ${name}… no adapter available (skipped).","messagePattern":"Wiring (.+?)… no adapter available \\(skipped\\)\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"src/cli/onboarding.ts","lineNumber":328,"sourceCode":"    message: \"Run `agentmemory connect <agent>` for each selected agent now? [Y/n]\",\n    initialValue: true,\n  });\n\n  if (p.isCancel(confirmed) || confirmed === false) {\n    const cmds = agents.map((a) => `  agentmemory connect ${a}`);\n    p.note([\"Wire later with:\", ...cmds].join(\"\\n\"), \"later\");\n    return;\n  }\n\n  const wired: string[] = [];\n  const manual: { name: string; docs?: string }[] = [];\n  const failed: { name: string; reason: string }[] = [];\n\n  for (const name of agents) {\n    const adapter = resolveAdapter(name);\n    if (!adapter) {\n      failed.push({ name, reason: \"no adapter available\" });\n      p.log.warn(`Wiring ${name}… no adapter available (skipped).`);\n      continue;\n    }\n    p.log.step(`Wiring ${name}...`);\n    let result: ConnectResult;\n    try {\n      result = await runAdapter(adapter, { dryRun: false, force: false });\n    } catch (err) {\n      const reason = err instanceof Error ? err.message : String(err);\n      failed.push({ name, reason });\n      p.log.error(`${name}: ${reason}`);\n      continue;\n    }\n    switch (result.kind) {\n      case \"installed\":\n      case \"already-wired\":\n        wired.push(name);\n        break;\n      case \"stub\":","sourceCodeStart":310,"sourceCodeEnd":346,"githubUrl":"https://github.com/rohitg00/agentmemory/blob/e04ba88819c365c9acf9d6661ea802143e728bd6/src/cli/onboarding.ts#L310-L346","documentation":"During onboarding, each agent name the user selected is mapped to a wiring adapter via resolveAdapter(name). If no adapter exists for that agent, it is recorded as failed with reason 'no adapter available' and skipped with a warning; the rest of the wiring continues. It signals that this agent integration is unsupported or not installed in this build.","triggerScenarios":"wireSelectedAgents iterates the user-selected agent list and resolveAdapter(name) returns null/undefined for one of the names — e.g. a typo'd agent name or an agent flavor agentmemory has no adapter for.","commonSituations":"User picks an agent from a newer list than the installed agentmemory version supports; passing a custom agent name to non-interactive onboarding; misspelling an agent id like 'claude-code' or 'cursor'; plugin variant lacking certain adapters.","solutions":["Check the spelling of the agent name and re-run onboarding with a supported agent id.","Update agentmemory to the latest version to pick up new adapters (npm update agentmemory or equivalent).","Check the README for the list of supported agents/adapters.","Wire the agent manually by editing its MCP config to point at the agentmemory MCP server."],"exampleFix":"// before\nagentmemory onboarding --agents claude,codex-cli  // 'codex-cli' has no adapter\n// after\nagentmemory onboarding --agents claude,codex  // supported adapter names only","handlingStrategy":"validation","validationCode":"const supported = [\"claude\", \"cursor\", \"codex\", \"windsurf\"];\nconst invalid = agents.filter((a) => !supported.includes(a));\nif (invalid.length) throw new Error(`Unsupported agents: ${invalid.join(\", \")}`);","typeGuard":"function hasAdapter(name: string): boolean {\n  return resolveAdapter(name) !== null && resolveAdapter(name) !== undefined;\n}","tryCatchPattern":null,"preventionTips":["Validate agent names against the documented list before onboarding.","Keep agentmemory updated so new agent adapters are available.","Read onboarding output for 'skipped' warnings instead of assuming wiring succeeded."],"tags":["onboarding","adapter","configuration","unsupported-agent"],"backgroundTag":"no-adapter-registered","analyzedSha":"e04ba88819c365c9acf9d6661ea802143e728bd6","analyzedAt":"2026-08-30T01:07:40.754Z","schemaVersion":2},"datasetVersion":"2026-08-30T03:17:51.788Z"}