define(function(require,exports,module){let _shells=[],_defaultShell=null;async function init(nodeConnector){try{const result=await nodeConnector.execPeer("getDefaultShells",{});_shells=result.shells||[],_defaultShell=_shells.find(s=>s.isDefault)||_shells[0]||null}catch(e){console.error("Terminal: Failed to detect shells:",e),_shells=[],_defaultShell=null}}function getShells(){return _shells}function getDefaultShell(){return _defaultShell}function getShellByName(name){return _shells.find(s=>s.name===name)||null}function setDefaultShell(name){const shell=_shells.find(s=>s.name===name);if(shell){for(const s of _shells)s.isDefault=!1;shell.isDefault=!0,_defaultShell=shell}}exports.init=init,exports.getShells=getShells,exports.getDefaultShell=getDefaultShell,exports.getShellByName=getShellByName,exports.setDefaultShell=setDefaultShell});