Sorry for necroposting, but I have same issue with steam-tradeoffer-manager 2.9.2 (nodejs 8), when bots starts from rc.local
path.js:28
throw new TypeError('Path must be a string. Received ' + inspect(path));
^
TypeError: Path must be a string. Received undefined
at assertPath (path.js:28:11)
at Object.join (path.js:1251:7)
at userData (/var/jc/node/bots_refactor/node_modules/appdirectory/lib/appdirectory.js:21:29)
at AppDirectory._setTemplates (/var/jc/node/bots_refactor/node_modules/appdirectory/lib/appdirectory.js:134:34)
at new AppDirectory (/var/jc/node/bots_refactor/node_modules/appdirectory/lib/appdirectory.js:129:10)
at new TradeOfferManager (/var/jc/node/bots_refactor/node_modules/steam-tradeoffer-manager/lib/index.js:56:29)
at new BotManager (/var/jc/node/bots_refactor/lib/BotManager.js:56:15)
at start (/var/jc/node/bots_refactor/bot_start.js:38:24)
at Object.<anonymous> (/var/jc/node/bots_refactor/starters/bot_3.js:2:40)
at Module._compile (module.js:635:30)