{"record":{"id":"082988d4402953ba","repo":"NousResearch/hermes-agent","slug":"icon-not-found-icon","errorCode":null,"errorMessage":"icon not found: ${icon}","messagePattern":"icon not found: (.+?)","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"apps/desktop/scripts/set-exe-identity.mjs","lineNumber":56,"sourceCode":"import { resolve, join } from 'node:path'\nimport { existsSync } from 'node:fs'\n\nimport { rcedit } from 'rcedit'\n\nimport { isMain } from './utils.mjs'\n\n// Stamp the Hermes icon + identity onto `exe`. Resolves on success, throws on\n// failure. `desktopRoot` defaults to this script's package root so the icon and\n// the rcedit dependency resolve regardless of cwd.\nasync function stampExeIdentity(exe, desktopRoot = resolve(import.meta.dirname, '..')) {\n  if (!exe || !existsSync(exe)) {\n    throw new Error(`target exe not found: ${exe}`)\n  }\n\n  // Icon lives at apps/desktop/assets/icon.ico\n  const icon = join(desktopRoot, 'assets', 'icon.ico')\n  if (!existsSync(icon)) {\n    throw new Error(`icon not found: ${icon}`)\n  }\n\n  console.log(`[set-exe-identity] stamping ${exe}`)\n  console.log(`[set-exe-identity] icon: ${icon}`)\n\n  await rcedit(exe, {\n    icon,\n    'version-string': {\n      ProductName: 'Hermes',\n      FileDescription: 'Hermes',\n      CompanyName: 'Nous Research',\n      LegalCopyright: 'Copyright (c) 2026 Nous Research'\n    }\n  })\n\n  console.log('[set-exe-identity] done — Hermes icon + identity stamped')\n}\n","sourceCodeStart":38,"sourceCodeEnd":74,"githubUrl":"https://github.com/NousResearch/hermes-agent/blob/c896c09c42910c584c4c7d2325b58c14713ea42c/apps/desktop/scripts/set-exe-identity.mjs#L38-L74","documentation":"Error \"icon not found: ${icon}\" thrown in NousResearch/hermes-agent.","triggerScenarios":"Thrown at apps/desktop/scripts/set-exe-identity.mjs:56 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Provide an icon file at the expected path or pass the correct icon path.","Regenerate the app icons before running the identity script."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"c896c09c42910c584c4c7d2325b58c14713ea42c","analyzedAt":"2026-08-14T17:18:01.089Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}