/** * bootstrap.js — 代理到 @mas/plugin-bootstrap * * openclawRoot 统一指向 @mas/openclaw-dist 包 * * 注意: resolveOpenclawDist 延迟到 bootstrapPlugins() 被真正调用时才执行, * 避免在未安装 @mas/openclaw-dist 时导致服务器启动崩溃。 */ let _bootstrap = null; let _resolveOpenclawDist = null; let _openclawRoot = null; function ensureLoaded() { if (_bootstrap) return; const pkg = require('@mas/plugin-bootstrap'); _bootstrap = pkg.bootstrapPlugins; _resolveOpenclawDist = pkg.resolveOpenclawDist; } async function bootstrapPlugins(config) { ensureLoaded(); if (!_openclawRoot && !config.openclawRoot) { _openclawRoot = _resolveOpenclawDist(__dirname); } return _bootstrap({ ...config, openclawRoot: config.openclawRoot || _openclawRoot, }); } module.exports = { bootstrapPlugins };