@lovrabet/cli 1.3.4-beta.2 → 1.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/ai-setup/AISetupUI.js +1 -1
- package/lib/ai-setup/config.js +1 -1
- package/lib/api/api-doc-ui.js +1 -1
- package/lib/api/api-doc.js +1 -1
- package/lib/api/api-pull-ui.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/main.js +1 -1
- package/lib/api/pull-silent.js +1 -1
- package/lib/app-menu/app-menu-sync-ui.js +1 -1
- package/lib/app-menu/create-menu.js +1 -1
- package/lib/app-menu/get-local-pages.js +1 -1
- package/lib/app-menu/get-online-menu-list.js +1 -1
- package/lib/app-menu/use-get-online-menu-list.js +1 -1
- package/lib/app-menu/utils.js +1 -1
- package/lib/app-menu/valid-url.js +1 -1
- package/lib/app-menu-update-cdn/current-content.js +1 -1
- package/lib/app-menu-update-cdn/input-cdn-asset.js +1 -1
- package/lib/app-menu-update-cdn/main.js +1 -1
- package/lib/app-menu-update-cdn/update-menu-cdn-url.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/cmd/build-watch.js +1 -1
- package/lib/cmd/build.js +1 -1
- package/lib/cmd/logs.js +1 -1
- package/lib/cmd/preview.js +1 -1
- package/lib/cmd/start-execa.js +1 -1
- package/lib/cmd/start.js +1 -1
- package/lib/config/config-help.js +1 -1
- package/lib/config/main.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/create-app/enhanced-guided-create.js +1 -1
- package/lib/create-app/format-elapsed.js +1 -1
- package/lib/create-app/main.js +1 -1
- package/lib/create-app/non-interactive.js +1 -1
- package/lib/create-app/task-finished.js +1 -1
- package/lib/create-app/task-loading.js +1 -1
- package/lib/create-app/task-running.js +1 -1
- package/lib/create-app/task-time.js +1 -1
- package/lib/create-app/use-copy-project-template.js +1 -1
- package/lib/create-app/use-format-code.js +1 -1
- package/lib/create-app/use-install-dependencies.js +1 -1
- package/lib/help.js +1 -1
- package/lib/i18n/I18nProvider.js +1 -1
- package/lib/i18n/hooks.js +1 -1
- package/lib/i18n/index.js +1 -1
- package/lib/i18n/locales/en-US.js +1 -1
- package/lib/i18n/locales/zh-CN.js +1 -1
- package/lib/init/main.js +1 -1
- package/lib/mcp/McpInstallUI.js +1 -1
- package/lib/mcp/claude.js +1 -1
- package/lib/mcp/cursor.js +1 -1
- package/lib/mcp/main.js +1 -1
- package/lib/mcp/mcp-install-non-interactive.js +1 -1
- package/lib/mcp/mcp-installer.js +1 -1
- package/lib/skills/SkillInstallUI.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/skill-install-non-interactive.js +1 -1
- package/lib/skills/skill-installer.js +1 -1
- package/lib/ui/IDESelector.js +1 -1
- package/lib/ui/useIDESelection.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
function a55_0xb9f7(){var _0x5f40a6=['Failed\x20to\x20copy\x20agents.md\x20file','×\x20Invalid\x20file\x20prefix.\x20Only\x20letters,\x20numbers,\x20hyphens\x20and\x20underscores\x20allowed,\x20must\x20start\x20with\x20a\x20letter.','\x20\x20\x202.\x20Use\x20flag:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','Press\x20“q”\x20to\x20exit.','*\x20Lovrabet\x20CLI\x20logs:\x0a','Authentication','*\x20Processed\x20{{count}}\x20datasets','Generic\x20Template','Run\x20the\x20following\x20command\x20to\x20configure\x20Claude\x20Code\x20MCP:','Hint:\x20use\x20','Lovrabet\x20MCP\x20-\x20MCP\x20Server\x20Configuration\x20Tool','Specify\x20dataset\x20codes\x20for\x20doc\x20generation\x20(comma-separated,\x20doc\x20command\x20only)','\x0a{{count}}\x20datasets\x20to\x20generate\x20docs\x20for\x0a','Shared\x20skill\x20files\x20copied\x20successfully','\x20\x20\x20Current\x20CLI\x20version:\x20{{version}}','Previewing\x20project...','\x20\x20√\x20Project\x20template\x20created','Claude\x20Code','✓\x20Skills\x20installed\x20successfully!\x20{{count}}\x20directories\x20created','Installing\x20skills...','Usage','Project','\x20\x20\x20\x20→\x20Install\x20skills\x20with\x20Backend\x20Function\x20sync\x20workflow','[{{current}}/{{total}}]\x20Generating:\x20{{fileName}}.md\x20({{name}})','agents.md\x20already\x20exists,\x20skipping','Local','Project\x20Name','✓\x20MCP\x20server\x20configuration\x20completed:','\x20\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20Configure\x20Cursor\x20MCP\x20directly','Install\x20all\x20skills','Please\x20enter\x20App\x20Code:','\x20\x20-\x20Filter\x20query\x20building\x20spec\x20(10\x20common\x20error\x20comparisons)\x0a\x20\x20-\x20MCP\x20SQL\x20creation\x20workflow\x20(5-step\x20mandatory\x20process)\x0a\x20\x20-\x20AntD\x20UI\x20development\x20spec\x20(anti-AI-style)\x0a\x20\x20-\x20API\x20integration\x20guide\x20(lovrabet\x20api\x20pull\x20workflow)\x0a\x20\x20-\x20Menu\x20management\x20guide\x20(menu\x20sync/update\x20workflow)\x0a\x20\x20-\x20Backend\x20Function\x20script\x20spec\x20(permissions,\x20data\x20masking,\x20business\x20logic)\x0a\x20\x20-\x20Backend\x20Function\x20sync\x20workflow\x20(requires\x20--dangerously-bff-save)','Using\x20configured\x20AppCode:\x20{{appCode}}','Configuring\x20AI\x20assistant...','Menus\x20to\x20update:','\x20\x20✓\x20Created\x20{{path}}','√\x20{{label}}:\x20','Start\x20batch\x20menu\x20creation,\x20total\x20{{count}}','*\x20Select\x20IDEs\x20to\x20configure:','Skills\x20(engineering\x20guidelines)','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Configure\x20Cursor','\x20\x20•\x20MCP\x20Server:','*\x20Pulling\x20API\x20config\x20from\x20server...\x20(env:\x20{{env}})','\x20\x20Use\x20←→\x20to\x20revise\x20choice,\x20Enter\x20to\x20confirm\x20IDEs','2457080BiFmcd','\x20\x20\x20\x20→\x20Configure\x20Cursor\x20MCP\x20(writes\x20.cursor/mcp.json)','\x20\x20\x20Time:\x20{{time}}','Config\x20value\x20is\x20invalid\x20or\x20too\x20long','Failed\x20to\x20fetch\x20menu\x20list,\x20HTTP\x20status:\x20{{status}}','*\x20Enter\x20new\x20asset\x20URLs','Failed\x20to\x20pull\x20API\x20config:\x20{{error}}','📍\x20Login\x20URL:','\x0a✓\x20Cursor\x20MCP\x20configured\x20successfully!\x0a','\x20command\x20to\x20re-login','*\x20Press\x20Enter\x20to\x20start\x20login.','*\x20AppCode\x20','App\x20Code\x20identifies\x20your\x20project.\x20Only\x20letters,\x20numbers,\x20-\x20and\x20_\x20are\x20allowed','✗\x20Configuration\x20failed','Include\x20Backend\x20Function\x20sync\x20workflow','201Zsyrnp','×\x20Project\x20creation\x20failed:\x20{{error}}','Your\x20choice:\x20','*\x20JS\x20URL:\x20','CSS\x20URL:\x20','*\x20No\x20logs\x20found','√\x20Doc\x20generation\x20complete!\x20{{successCount}}\x20succeeded','\x20Fetching\x20online\x20menu\x20asset\x20links...','\x20\x20√\x20package.json\x20updated','Please\x20enter\x20a\x20valid\x20CSS\x20https\x20URL','\x0a📦\x20Configuring\x20{{name}}\x20MCP...\x0a','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','[N]\x20Skip,\x20configure\x20later','Dependency\x20installation\x20failed:\x20{{error}}','\x20Fetching\x20online\x20menu\x20list...','Use','Restart\x20Claude\x20Code\x20to\x20take\x20effect','Cursor\x20MCP\x20configuration\x20failed','Generating\x20{{fileName}}.md\x20({{current}}/{{total}})','env\x20value\x20must\x20be\x20\x22online\x22\x20or\x20\x22daily\x22','Developer\x20guides:\x20.lovrabet/skill/.shared/guides/','AppCode\x20can\x20only\x20contain\x20letters,\x20numbers,\x20hyphens\x20and\x20underscores,\x20and\x20must\x20start\x20with\x20a\x20letter\x20or\x20number','*\x20Logging\x20in,\x20please\x20complete\x20in\x20browser...','Enter\x20project\x20JS\x20asset\x20URL\x20(https://...)','Skill\x20contents\x20include:','JS\x20URL','*\x20Using\x20configured\x20AppCode:\x20{{appCode}}','•\x20MCP:\x20Allow\x20AI\x20to\x20access\x20Lovrabet\x20datasets\x20directly','*\x20Processing\x20{{count}}\x20datasets...','Install\x20all','Examples','*\x20Entered\x20asset\x20URLs','Error','MCP\x20Server\x20(AI\x20dataset\x20access)','\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor','Cancel\x20update','JS\x20URL:\x20','\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20IDE\x20selection','Global','View\x20Logs','Generate\x20docs\x20for\x20all\x20datasets','\x20\x20-\x20IDE-specific\x20config\x20files\x20(.cursorrules,\x20.windsurf/,\x20.claude/,\x20.cline/,\x20.codex/,\x20.opencode/,\x20.qoder/,\x20.codebuddy/,\x20.trae/)\x0a\x20\x20-\x20.lovrabet/skill/.shared/guides/\x20\x20-\x20Developer\x20skill\x20guides','Written\x20.cursor/mcp.json','√\x20Configuration\x20file\x20created,\x20AppCode:\x20{{appCode}}','Available\x20commands:','🚀\x20Next\x20Steps:','✗\x20Failed:\x20{{fileName}}.md\x20-\x20{{error}}','Using\x20specified\x20AppCode:\x20{{appCode}}','Unsupported\x20MCP\x20IDE:\x20{{ide}}','Login\x20Successful','Invalid\x20response\x20format\x20({{datasetCode}}):\x20missing\x20data.markdown\x20field','*\x20Creating\x20menus...','*\x20Configuring\x20AppCode\x20for\x20project\x20{{name}}:\x20{{appCode}}','\x0a📋\x20Run\x20the\x20following\x20command\x20to\x20configure\x20Claude\x20Code\x20MCP:\x0a','\x0aConfiguration\x20cancelled\x0a','Unknown\x20api\x20command','\x0aNo\x20IDE\x20selected,\x20installation\x20cancelled\x0a','to\x20view\x20available\x20commands.','!\x20No\x20valid\x20login\x20detected','\x20\x20\x202.\x20Use\x20flag:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>','Enter\x200\x20to\x20install\x20all\x20IDEs,\x20enter\x20q\x20to\x20cancel\x0a','Invalid\x20locale\x20value.\x20Supported:\x20zh,\x20en,\x20zh-CN,\x20en-US','Project\x20name\x20contains\x20invalid\x20characters.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','Options:','*\x20Creating\x20configuration\x20file\x20for\x20project\x20{{name}}','Failed\x20to\x20create\x20menu','Failed\x20to\x20copy\x20shared\x20skill\x20files','✓\x20Logged\x20out','Other\x20IDE\x20configuration\x20guide\x20displayed','Configuration:','Fetching\x20developer\x20guides\x20from\x20CDN...','Starting\x20development\x20server...','Menu\x20created\x20successfully:','Batch\x20menu\x20creation\x20completed,\x20total\x20{{count}}','Fetched\x20{{count}}\x20online\x20menus\x20successfully','Cursor\x20MCP\x20configured\x20successfully','💡\x20If\x20the\x20browser\x20does\x20not\x20open\x20automatically,\x20copy\x20the\x20login\x20URL\x20above\x20into\x20your\x20browser.','\x20\x20lovrabet\x20skill\x20install\x20<ide>\x20\x20\x20\x20\x20#\x20Install\x20for\x20specific\x20IDE','!\x20No\x20menu\x20asset\x20links\x20found','Configure\x20AI\x20assistant\x20as\x20well?\x20This\x20will:','{{count}}','Generate\x20doc\x20for\x20specific\x20dataset\x20only','\x0aSelect\x20IDEs\x20to\x20install\x20skills\x20(multi-select):\x0a','*\x20Pulling\x20API\x20configuration...','6qEceDJ','*\x20Filtered\x20{{count}}\x20matching\x20datasets\x20from\x20{{total}}\x20total','Info','\x20\x20\x20•\x20{{name}}.ts\x20-\x20Model\x20config\x20file','*\x20Configuring\x20Lovrabet\x20MCP\x20and\x20Skill...','Install\x20for\x20specific\x20IDE','Lovrabet\x20Platform','Configuration\x20methods:','Install\x20dependencies','✓\x20Skill\x20Installation\x20Complete:','44180TdfIvl','Unknown\x20error','*\x20Import\x20usage:','\x20\x20\x20\x20→\x20Use\x20↑↓\x20to\x20move,\x20Space\x20to\x20toggle,\x20Enter\x20to\x20confirm\x0a\x20\x20\x20\x20→\x20Press\x20a\x20to\x20select\x20all,\x20i/r\x20to\x20invert,\x20q\x20to\x20quit','↪\x20SDK\x20update\x20available','Fetching\x20daily\x20menu\x20list...\x20(appCode:\x20{{appCode}})','\x20\x20\x20Stable\x20version:\x20{{version}}','Failed\x20to\x20clean\x20up\x20project\x20directory','✓\x20MCP\x20Server\x20Configuration\x20Complete:','\x20\x20Restart\x20Claude\x20Code\x20to\x20take\x20effect\x0a','Please\x20select\x20at\x20least\x20one\x20IDE','Login\x20successful.\x20Please\x20return\x20to\x20the\x20CLI\x20to\x20continue.\x20This\x20window\x20will\x20close\x20in\x20{{seconds}}\x20seconds.','Specify\x20output\x20directory\x20(pull:\x20./src/api/,\x20doc:\x20./docs)','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Show\x20help\x0a','Configuration:\x20appcode={{appcode}},\x20env={{env}}','✓\x20Created\x20.lovrabet/skill-manifest.json','Unknown\x20IDE:\x20{{ide}}','Other','\x20\x20\x20\x20→\x20Install\x20all\x20IDE\x20skills','\x20\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20Configure\x20Claude\x20Code\x20MCP\x20directly','\x20\x20•\x20Skill:','Supported\x20IDEs:','Project\x20directory\x20{{name}}\x20already\x20exists,\x20please\x20use\x20a\x20different\x20name','Description','Pull\x20API\x20for\x20specified\x20environment','Project\x20name\x20cannot\x20exceed\x2050\x20characters','\x20\x20\x20Current\x20version:\x20{{package}}@{{version}}','Yes','Please\x20complete\x20login\x20in\x20your\x20browser.','\x0aSelect\x20IDE\x20to\x20configure\x20MCP:\x0a','Generate\x20docs\x20for\x20multiple\x20datasets','Invalid\x20project\x20name','\x20\x20\x201.\x20Specify\x20directly:\x20lovrabet\x20api\x20pull\x20<app-code>','√\x20Pulled\x20{{datasetCount}}\x20datasets,\x20generated\x20{{modelCount}}\x20models','Failed\x20to\x20copy\x20Cursor\x20Rules\x20file','Clear\x20Logs','Pull\x20API\x20config:\x20','3778LPNRpQ','√\x20Updated\x20successfully','Configuration\x20command\x20generated','[Y]\x20Yes,\x20configure\x20AI\x20assistant','\x20\x20✗\x20Failed\x20to\x20install\x20{{ide}}:\x20{{error}}','*\x20CSS\x20URL:\x20','⚠️\x20Some\x20configurations\x20require\x20manual\x20steps','\x20\x20$\x20lovrabet\x20mcp\x20install','App\x20Code','Lovrabet\x20Skill\x20-\x20Developer\x20Skill\x20Installation\x20Tool','Fetching\x20model\x20list\x20from\x20server...\x20(env:\x20{{env}})','CSS\x20URL\x20is\x20unreachable','{{name}}\x20skill\x20installed\x20successfully','Cursor\x20Rules\x20file\x20already\x20exists,\x20skipping','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Show\x20help','10548263gzprgs','*\x20Creating\x20project\x20{{name}}...','✓\x20Fetched\x20{{count}}\x20developer\x20guides','JS\x20URL\x20is\x20unreachable','!\x20Please\x20use\x20one\x20of\x20the\x20following:','Format\x20code','1740557eOvaan','228045WzDVBN','Configure\x20AppCode:','\x20\x20\x20\x20→\x20Enter\x20number\x20to\x20select\x20IDE','Please\x20select\x20at\x20least\x20one\x20item\x20to\x20configure','!\x20The\x20following\x20dataset\x20codes\x20do\x20not\x20exist:\x20{{codes}}','Install\x20Lovrabet\x20Skills\x20-\x20Select\x20IDE','Create\x20new\x20mcp.json\x20config','Selected\x20IDEs','Fetching\x20developer\x20guides\x20from\x20CDN\x20(with\x20extensions)...','Watch\x20Mode','login\x20again\x20and\x20retry','!\x20Please\x20specify\x20a\x20valid\x20command.','↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20q:\x20Quit\x20\x20Enter:\x20Confirm','Set\x20display\x20language\x20(zh/en)','*\x20Checking\x20login\x20status...','Directory\x20\x22{{name}}\x22\x20already\x20exists','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Configure\x20Claude\x20Code','Cancel','×\x20--params\x20is\x20not\x20valid\x20JSON\x20format','*\x20Select\x20menus\x20to\x20sync:','\x0a📦\x20Installing\x20{{name}}...\x0a','Server\x20returned\x20empty\x20menu\x20list','*\x20Configure\x20Lovrabet\x20MCP\x20and\x20Skill?','✓\x20MCP\x20configuration\x20completed!','Create','Environment:\x20{{env}}','Login\x20successful!','Project\x20name:\x20','Get\x20a\x20config\x20value','Configuring\x20MCP\x20server...','Start\x20project:','\x20\x20Include\x20BFF\x20sync\x20workflow\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Use\x20--dangerously-bff-save\x20flag','After\x20installation,\x20the\x20following\x20will\x20be\x20created\x20in\x20your\x20project:','√\x20Valid\x20session\x20detected,\x20no\x20login\x20required.','⚠️\x20\x20Unknown\x20platform:\x20{{ide}},\x20using\x20generic\x20template','All\x20specified\x20dataset\x20codes\x20do\x20not\x20exist:\x20{{codes}}','Pull\x20API\x20configuration:','\x20\x20.lovrabet/skill/.shared/guides/\x20-\x20Detailed\x20developer\x20guides\x0a','\x0a√\x20Project\x20{{name}}\x20created\x20successfully!','-\x20Client\x20instance\x20file','Update\x20existing\x20mcp.json\x20config','Invalid\x20AppCode','Configuration\x20guide\x20displayed','Menu\x20Name','No\x20AppCode\x20provided\x20and\x20no\x20default\x20configured','🔗\x20Please\x20copy\x20the\x20login\x20URL\x20into\x20your\x20browser:','AppCode','.lovrabetrc\x20file\x20already\x20exists\x20in\x20current\x20directory','Specify\x20environment\x20(e.g.\x20daily,\x20online)','\x20\x20√\x20Environment\x20configured','\x0aError:\x20Configuration\x20failed\x20-\x20{{error}}\x0a','Please\x20run:\x20{{command}}','Copy\x20project\x20files','Invalid\x20command.\x20Available\x20commands:','Failed\x20to\x20fetch\x20doc\x20({{datasetCode}}),\x20HTTP\x20status:\x20{{status}}','*\x20Creating\x20project...','*\x20Create\x20new\x20project','Please\x20use\x20the\x20--appcode\x20flag,\x20for\x20example:','Usage:','Logs','✓\x20Skill\x20installation\x20completed:','Login\x20status','Create\x20agents.md\x20file','Specify\x20app\x20code','Input\x20format:\x20Enter\x20numbers\x20separated\x20by\x20spaces\x20(e.g.\x201\x203\x205)','!\x20API\x20configuration\x20pull\x20error,\x20project\x20created,\x20you\x20can\x20manually\x20run:\x20lovrabet\x20api\x20pull','Failed\x20to\x20create\x20menu:\x20{{error}}','App\x20Code\x20cannot\x20be\x20empty','\x20\x20Environment:\x20{{env}}','Generate\x20docs\x20for\x20specified\x20environment','Error:\x20Unsupported\x20command:\x20{{cmd}}','{{count}}\x20IDEs','Previous','\x20Enter\x20project\x20CSS\x20asset\x20URL\x20(https://...)','*\x20Login\x20first\x20to\x20pull\x20API\x20config?','*\x20Project\x20name:\x20','Create\x20Cursor\x20Rules\x20file','-\x20Model\x20config\x20({{count}}\x20models)','\x20\x20\x20Interactive\x20selection\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Show\x20IDE\x20list\x20for\x20selection','Finish','\x20|\x20AppCode:\x20','Examples:','You\x20can\x20now\x20use\x20commands\x20like\x20\x27lovrabet\x20api\x20doc\x27\x20and\x20\x27lovrabet\x20api\x20pull\x27','Enter\x20a\x20number\x20to\x20select\x20IDE:\x0a','Update','Claude\x20Code\x20MCP\x20command\x20generated','Project\x20Configuration','85UXXtvK','266984MuDuVl','No\x20config\x20value\x20provided','Project\x20name\x20must\x20start\x20with\x20a\x20letter\x20or\x20number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','Please\x20enter\x20a\x20valid\x20JS\x20https\x20URL','1.\x20Configure\x20Lovrabet\x20MCP\x20and\x20Skill','√\x20Lovrabet\x20MCP\x20and\x20Skill\x20configuration\x20completed','\x0a📋\x20Other\x20IDE\x20MCP\x20configuration:\x0a','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20\x20--dangerously-bff-save\x20\x20\x20\x20Include\x20Backend\x20Function\x20sync\x20workflow\x20guide\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(requires\x20MCP\x20server\x20with\x20corresponding\x20tools\x20enabled)','\x20\x20Installing\x20dependencies...','Pull\x20API','Other\x20(generic\x20template)\x20(.agent/skills/)\x20-\x20Fallback','Specify\x20output\x20directory','Failed\x20to\x20fetch\x20menu\x20list:\x20{{error}}','Failed\x20to\x20update\x20menu\x20assets:\x20{{error}}','\x20\x20\x20Upgrade\x20command:\x20{{command}}','Next','Authentication\x20failed,\x20session\x20expired.\x20Please\x20use\x20lovrabet\x20auth\x20to\x20login\x20again','Developer\x20guides\x20location:','×\x20--datasetcode\x20cannot\x20be\x20empty','{{count}}\x20items\x20created','Failed\x20to\x20save\x20config','Please\x20configure\x20app\x20code\x20first\x20via\x20`lovrabet\x20config\x20set\x20app\x20<value>`','\x20\x20✗\x20Unknown\x20IDE:\x20{{ide}}','Asset\x20links\x20to\x20update:','{{count}}\x20directories\x20installed','\x20\x20\x20\x20→\x20Install\x20Cursor\x20and\x20Claude\x20Code\x20skills\x20directly','*\x20Generated\x20files:','Usage\x20examples:','API\x20Management','Project\x20name\x20cannot\x20be\x20empty','Logging\x20in...','!\x20API\x20configuration\x20pull\x20failed,\x20you\x20can\x20manually\x20run:\x20lovrabet\x20api\x20pull','Menu\x20assets\x20synced:\x20{{label}}','*\x20Output\x20directory:\x20','×\x20AppCode\x20not\x20configured','MCP\x20&\x20Skill','Use\x20specified\x20appcode','Sync\x20Menu','Login\x20failed','AppCode\x20cannot\x20exceed\x20100\x20characters','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20{{dir}}','⚠️\x20The\x20following\x20datasets\x20failed\x20to\x20generate:','Configuration\x20guide:','Detailed\x20guide:\x20https://help.yuntoo.com/mcp/config-guide','CSS\x20URL','App\x20Code\x20cannot\x20exceed\x20100\x20characters','\x0a✓\x20MCP\x20configuration\x20completed\x20({{successCount}}/{{totalCount}}\x20succeeded)','↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20Enter:\x20Confirm','List\x20all\x20config\x20values','63rMePDu','Loading...','Failed\x20to\x20fetch\x20datasets:\x20{{error}}','\x0aInvalid\x20choice.\x20Enter\x20a\x20number\x20between\x201\x20and\x20{{count}}\x0a','\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Interactive\x20MCP\x20configuration','*\x20Generating\x20API\x20config\x20files:','\x0a✗\x20{{ide}}\x20MCP\x20configuration\x20failed:\x20{{error}}'];a55_0xb9f7=function(){return _0x5f40a6;};return a55_0xb9f7();}var a55_0x45567b=a55_0x3b28;function a55_0x3b28(_0x4354e2,_0x2ac565){_0x4354e2=_0x4354e2-0x19b;var _0xb9f75f=a55_0xb9f7();var _0x3b282f=_0xb9f75f[_0x4354e2];return _0x3b282f;}(function(_0x5ddb47,_0x53712a){var _0x56ab5a=a55_0x3b28,_0x4e5141=_0x5ddb47();while(!![]){try{var _0x30196b=-parseInt(_0x56ab5a(0x20a))/0x1+parseInt(_0x56ab5a(0x1f4))/0x2*(-parseInt(_0x56ab5a(0x2d7))/0x3)+-parseInt(_0x56ab5a(0x1cf))/0x4*(parseInt(_0x56ab5a(0x261))/0x5)+-parseInt(_0x56ab5a(0x1c5))/0x6*(parseInt(_0x56ab5a(0x209))/0x7)+-parseInt(_0x56ab5a(0x262))/0x8*(parseInt(_0x56ab5a(0x294))/0x9)+parseInt(_0x56ab5a(0x2c8))/0xa+parseInt(_0x56ab5a(0x203))/0xb;if(_0x30196b===_0x53712a)break;else _0x4e5141['push'](_0x4e5141['shift']());}catch(_0x558de9){_0x4e5141['push'](_0x4e5141['shift']());}}}(a55_0xb9f7,0x2bf26));export default{'common':{'success':'Success','error':a55_0x45567b(0x2f7),'warning':'Warning','info':a55_0x45567b(0x1c7),'loading':a55_0x45567b(0x295),'cancel':a55_0x45567b(0x21b),'confirm':'Confirm','next':a55_0x45567b(0x272),'previous':a55_0x45567b(0x252),'finish':a55_0x45567b(0x259)},'help':{'invalidCommand':a55_0x45567b(0x215),'usageHint':a55_0x45567b(0x2e6),'viewCommands':a55_0x45567b(0x1aa)},'cli':{'usage':a55_0x45567b(0x2af),'examples':a55_0x45567b(0x2f5),'description':a55_0x45567b(0x1e6)},'init':{'inputAppCode':a55_0x45567b(0x2b9),'appCodeDesc':a55_0x45567b(0x2d4),'fileExists':a55_0x45567b(0x239),'creating':'Initializing\x20configuration\x20file...','success':'Successfully\x20initialized\x20.lovrabetrc\x20file\x20in\x20current\x20directory','appCodeLabel':a55_0x45567b(0x238),'nextSteps':a55_0x45567b(0x25c),'validation':{'required':a55_0x45567b(0x24d),'tooLong':a55_0x45567b(0x290),'invalidFormat':'App\x20Code\x20can\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','invalidCode':'Invalid\x20App\x20Code'}},'create':{'projectNameLabel':'Project\x20Name','appCodeLabel':'App\x20Code','validation':{'required':a55_0x45567b(0x280),'invalidChars':a55_0x45567b(0x1af),'tooLong':a55_0x45567b(0x2e2),'dirExists':a55_0x45567b(0x1e5),'noPermission':'Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','projectName':{'tooLong':a55_0x45567b(0x1e8),'invalidFormat':a55_0x45567b(0x264),'invalid':a55_0x45567b(0x1ee),'dirExistsShort':a55_0x45567b(0x219)},'appCode':{'tooLong':a55_0x45567b(0x28a),'invalidFormat':a55_0x45567b(0x2ec),'invalid':a55_0x45567b(0x233)},'ide':{'required':a55_0x45567b(0x1d9)}},'common':{'yes':a55_0x45567b(0x1ea),'no':'No','selectHint':'\x20\x20Use\x20←→\x20to\x20choose,\x20press\x20Enter\x20to\x20confirm'},'steps':{'pullingApi':a55_0x45567b(0x1c4),'apiPullSuccess':'√\x20API\x20configuration\x20pulled\x20successfully','apiPullFailed':a55_0x45567b(0x282),'apiPullError':a55_0x45567b(0x24b),'updatingPackage':a55_0x45567b(0x269),'packageUpdated':'√\x20package.json\x20updated:\x20name={{name}}','configuringAppCode':a55_0x45567b(0x1a5),'creatingConfig':'*\x20Creating\x20configuration\x20file\x20for\x20project\x20{{name}}','configCreatedWithAppCode':a55_0x45567b(0x19c),'configCreated':'√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27','configuringMcp':a55_0x45567b(0x1c9),'mcpConfigComplete':a55_0x45567b(0x267),'cleaningUp':a55_0x45567b(0x28b),'projectName':{'label':a55_0x45567b(0x2b5)},'appCode':{'label':a55_0x45567b(0x1fc),'notSet':'Not\x20set'},'apiPull':{'label':'Pull\x20API\x20config'},'lovrabetSetup':{'label':a55_0x45567b(0x286),'ideCount':a55_0x45567b(0x251)},'login':{'label':a55_0x45567b(0x247),'loggedIn':'Logged\x20in','failed':a55_0x45567b(0x289),'skipped':'Login\x20skipped'}},'title':a55_0x45567b(0x242),'completedStep':a55_0x45567b(0x2bf),'input':{'projectName':{'label':a55_0x45567b(0x255),'hint':'Press\x20Enter\x20to\x20confirm\x20or\x20type\x20a\x20custom\x20name'},'appCode':{'label':a55_0x45567b(0x2d3),'optional':'[optional]:\x20','hint':'Bind\x20AppCode\x20to\x20auto-configure\x20API,\x20e.g.\x20app-c4c89304\x20(press\x20Enter\x20to\x20skip)'}},'login':{'checking':a55_0x45567b(0x218),'checkingStatus':'\x20Checking...','valid':'√\x20Valid\x20login\x20detected','notDetected':a55_0x45567b(0x1ab),'prompt':a55_0x45567b(0x254),'inProgress':a55_0x45567b(0x2ed),'inProgressStatus':'\x20Logging\x20in...'},'apiPull':{'confirm':'*\x20Automatically\x20pull\x20API\x20config?','recommendation':'\x20\x20Recommended:\x20Yes,\x20to\x20auto-configure\x20API'},'lovrabetSetup':{'confirm':a55_0x45567b(0x220),'selectIdeHint':a55_0x45567b(0x2c7),'selectIdeTitle':'Select\x20IDEs\x20to\x20configure:','keyboardShortcuts':'↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20Enter:\x20Confirm','inProgress':'*\x20Configuring\x20Lovrabet\x20MCP\x20and\x20Skill...','mcpCompleted':a55_0x45567b(0x2b6),'skillCompleted':a55_0x45567b(0x246)},'creating':a55_0x45567b(0x241),'display':{'projectName':a55_0x45567b(0x225),'appCode':a55_0x45567b(0x25a)},'packageJson':{'updating':'*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','updated':'√\x20package.json\x20updated:\x20name={{name}}'},'config':{'configuringAppCode':'*\x20Configuring\x20AppCode\x20for\x20project\x20{{name}}:\x20{{appCode}}','creating':a55_0x45567b(0x1b1),'createdWithAppCode':a55_0x45567b(0x19c),'createdWithoutAppCode':'√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27'},'cleanup':{'inProgress':a55_0x45567b(0x28b)},'results':{'mcpComplete':a55_0x45567b(0x1d7),'skillComplete':a55_0x45567b(0x1ce),'nextSteps':a55_0x45567b(0x19e)},'nextSteps':{'configureMcpAndSkill':a55_0x45567b(0x266),'skill':a55_0x45567b(0x1e3),'mcp':a55_0x45567b(0x2c5),'startProject':a55_0x45567b(0x228),'pullApi':a55_0x45567b(0x22e),'configAppCode':a55_0x45567b(0x20b)},'errors':{'createFailed':a55_0x45567b(0x2d8),'cleanupFailed':a55_0x45567b(0x1d6),'depsInstallFailed':a55_0x45567b(0x2e4)},'nonInteractive':{'creating':a55_0x45567b(0x204),'templateCreated':a55_0x45567b(0x2ab),'packageJsonUpdated':a55_0x45567b(0x2df),'installingDeps':a55_0x45567b(0x26b),'depsSkipped':a55_0x45567b(0x2c3),'codeFormatted':'\x20\x20√\x20Code\x20formatted','envConfigured':a55_0x45567b(0x23b),'success':a55_0x45567b(0x230)},'tasks':{'copyFiles':a55_0x45567b(0x23e),'formatCode':'Format\x20code','installDependencies':a55_0x45567b(0x1cd),'formatCodeLabel':a55_0x45567b(0x208)},'nextStepsAlt':{'startProject':'Start\x20project:\x20','pullApi':a55_0x45567b(0x1f3),'configureLovrabet':a55_0x45567b(0x266)}},'config':{'title':a55_0x45567b(0x260),'help':{'invalidCommand':a55_0x45567b(0x23f),'examples':a55_0x45567b(0x25b),'set':'Set\x20a\x20config\x20value','get':a55_0x45567b(0x226),'list':a55_0x45567b(0x293),'exampleApp':'Set\x20App\x20Code\x20for\x20current\x20project','exampleEnv':'Set\x20environment\x20(online/daily)','exampleLocale':a55_0x45567b(0x217)},'validation':{'envInvalid':a55_0x45567b(0x2ea),'localeInvalid':a55_0x45567b(0x1ae),'valueInvalid':a55_0x45567b(0x2cb),'noValue':a55_0x45567b(0x263),'saveFailed':a55_0x45567b(0x277)},'success':{'envSet':'✓\x20{{scope}}\x20env\x20set\x20to:\x20{{value}}','localeSet':'✓\x20{{scope}}\x20locale\x20set\x20to:\x20{{value}}'},'scope':{'project':a55_0x45567b(0x2b0),'global':a55_0x45567b(0x2fd)}},'api':{'title':a55_0x45567b(0x27f),'pull':a55_0x45567b(0x26c),'doc':'Generate\x20Documentation','help':{'title':'lovrabet\x20api\x20-\x20API\x20Operations','usage':a55_0x45567b(0x244),'options':a55_0x45567b(0x1b0),'optAppcode':a55_0x45567b(0x249),'optOutput':a55_0x45567b(0x1db),'optEnv':a55_0x45567b(0x23a),'optDatasetcode':a55_0x45567b(0x2a6),'optHelp':'Show\x20this\x20help\x20message','examples':a55_0x45567b(0x25b),'pullDesc':'Pull\x20and\x20generate\x20API\x20config\x20files','pullAppcode':a55_0x45567b(0x287),'pullOutput':a55_0x45567b(0x26e),'pullEnv':a55_0x45567b(0x1e7),'docDesc':a55_0x45567b(0x2ff),'docAppcode':'Use\x20specified\x20appcode','docOutput':'Specify\x20doc\x20output\x20directory','docEnv':a55_0x45567b(0x24f),'docDataset':a55_0x45567b(0x1c2),'docDatasets':a55_0x45567b(0x1ed),'unknownCommand':a55_0x45567b(0x1a8),'availableCommands':a55_0x45567b(0x19d)},'common':{'noPositionalArgs':'❌\x20Error:\x20Positional\x20arguments\x20are\x20no\x20longer\x20supported','useAppcodeFlag':a55_0x45567b(0x243),'noAppCode':a55_0x45567b(0x285),'noAppCodeHint':a55_0x45567b(0x207),'noAppCodeOption1':'\x20\x20\x201.\x20Set\x20default:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','noAppCodeOption2Pull':a55_0x45567b(0x29d),'noAppCodeOption2Doc':a55_0x45567b(0x1ac),'usingConfigAppCode':a55_0x45567b(0x2f1),'usingConfigAppCodeHint':'\x20\x20(Note:\x20--appcode\x20flag\x20matches\x20config,\x20using\x20default\x20config)','usingSpecifiedAppCode':a55_0x45567b(0x1a0),'usingDefaultAppCode':a55_0x45567b(0x2bb),'noAppCodeDefault':a55_0x45567b(0x236),'paramsInvalidJson':'×\x20--params\x20must\x20be\x20a\x20valid\x20JSON\x20object','paramsNotJson':a55_0x45567b(0x21c),'paramsError':'\x20\x20Error:\x20{{error}}','datasetcodeEmpty':a55_0x45567b(0x275),'onlyGenerateDatasets':'*\x20Generating\x20docs\x20only\x20for\x20specified\x20datasets:\x20{{codes}}','authExpired':a55_0x45567b(0x273),'authRetry':a55_0x45567b(0x214),'unknownError':a55_0x45567b(0x1d0)},'pullUI':{'fetching':a55_0x45567b(0x2c6),'successPull':'√\x20Pulled\x20{{datasetCount}}\x20datasets,\x20generated\x20{{modelCount}}\x20models','duplicateInfo':'!\x20Original\x20{{originalCount}}\x20datasets,\x20filtered\x20{{duplicateCount}}\x20duplicates','generatedFiles':a55_0x45567b(0x27d),'modelFile':a55_0x45567b(0x257),'clientFile':a55_0x45567b(0x231),'importHint':a55_0x45567b(0x1d1),'pullFailed':a55_0x45567b(0x2ce)},'docUI':{'fetchingDatasets':'Fetching\x20dataset\x20list...','noDatasets':'No\x20datasets\x20found','datasetsNotFound':a55_0x45567b(0x20e),'allDatasetsNotFound':a55_0x45567b(0x22d),'filteredDatasets':a55_0x45567b(0x1c6),'generatingDocs':'Generating\x20docs\x20for\x20{{count}}\x20datasets...','generatingFile':a55_0x45567b(0x2e9),'docComplete':a55_0x45567b(0x2dd),'docFailed':',\x20{{failCount}}\x20failed','processedDatasets':a55_0x45567b(0x2a1),'outputDir':a55_0x45567b(0x284),'generatedDocs':'*\x20Generated\x20doc\x20files:','failedDatasets':a55_0x45567b(0x28c),'docGenerateFailed':'Doc\x20generation\x20failed:\x20{{error}}'},'fetchModel':{'fetching':a55_0x45567b(0x1fe),'httpError':'Failed\x20to\x20fetch\x20datasets,\x20HTTP\x20status:\x20{{status}}','fetchError':a55_0x45567b(0x296)},'generateFile':{'noAppCode':a55_0x45567b(0x278)},'docBatch':{'totalDatasets':a55_0x45567b(0x2a7),'generating':a55_0x45567b(0x2b2),'success':'✓\x20Generated:\x20{{fileName}}.md','failed':a55_0x45567b(0x19f),'waiting':'Waiting\x203\x20seconds...\x0a','docFormatError':a55_0x45567b(0x1a3),'httpError':a55_0x45567b(0x240)},'silent':{'invalidPrefix':a55_0x45567b(0x29c),'fetching':a55_0x45567b(0x2c6),'generating':a55_0x45567b(0x299),'modelFileName':a55_0x45567b(0x1c8),'clientFileName':'\x20\x20\x20•\x20{{name}}.ts\x20-\x20Client\x20instance\x20file','processing':a55_0x45567b(0x2f3),'success':a55_0x45567b(0x1f0),'error':'×\x20API\x20config\x20pull\x20failed:\x20{{error}}'}},'auth':{'title':a55_0x45567b(0x2a0),'login':{'success':{'title':a55_0x45567b(0x1a2),'message':a55_0x45567b(0x1da),'manualClose':'Unable\x20to\x20close\x20automatically.\x20Please\x20close\x20this\x20tab\x20or\x20window\x20manually.'},'successCli':a55_0x45567b(0x224),'inProgress':a55_0x45567b(0x281),'browserPrompt':a55_0x45567b(0x1eb),'pressEnter':a55_0x45567b(0x2d2),'pressQToExit':a55_0x45567b(0x29e)},'session':{'valid':a55_0x45567b(0x22b)},'server':{'starting':'🔐\x20Starting\x20login\x20service...','loginUrl':a55_0x45567b(0x2cf),'openingBrowser':'🌐\x20Attempting\x20to\x20open\x20browser\x20automatically...','manualOpenHint':a55_0x45567b(0x1bd),'browserOpened':'✅\x20Browser\x20opened.\x20Please\x20complete\x20login\x20in\x20the\x20browser.','browserOpenFailed':'⚠️\x20\x20Failed\x20to\x20open\x20browser\x20automatically','manualCopyUrl':a55_0x45567b(0x237)},'logout':{'success':a55_0x45567b(0x1b4),'notLoggedIn':'!\x20Not\x20logged\x20in'}},'menu':{'sync':a55_0x45567b(0x288),'update':'Update\x20Menu\x20CDN\x20Resources'},'mcp':{'cursor':'Cursor','claude':a55_0x45567b(0x2ac),'error':{'unsupportedCommand':a55_0x45567b(0x250),'missingAppcode':'No\x20appcode\x20found.\x20Run\x20\x27lovrabet\x20init\x27\x20to\x20initialize\x20project\x20config'},'help':{'title':a55_0x45567b(0x2a5),'availableCommands':'\x0aAvailable\x20commands:','command':{'install':'\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20MCP\x20configuration','help':a55_0x45567b(0x1dc)},'usage':{'help':a55_0x45567b(0x202),'install':a55_0x45567b(0x298),'installCursor':a55_0x45567b(0x2b7),'installClaude':a55_0x45567b(0x1e2)},'configMethods':a55_0x45567b(0x1cc),'configMethodsInteractive':a55_0x45567b(0x258),'configMethodsInteractiveHint':a55_0x45567b(0x20c),'configMethodsDirect':'\x20\x20Direct\x20IDE\x20config\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Use\x20--ide\x20flags','configMethodsDirectCursor':a55_0x45567b(0x2c4),'configMethodsDirectClaude':a55_0x45567b(0x21a),'supportedIDEs':a55_0x45567b(0x1e4),'examples':'Examples:','exampleInstall':a55_0x45567b(0x1fb),'exampleInstallHint':'\x20\x20\x20\x20→\x20Interactive\x20IDE\x20selection','exampleInstallCursor':a55_0x45567b(0x2f9),'exampleInstallCursorHint':a55_0x45567b(0x2c9),'configGuide':a55_0x45567b(0x28d)},'select':{'chooseIDE':a55_0x45567b(0x1ec),'cancel':'\x20\x20q.\x20Cancel\x0a','enterNumber':a55_0x45567b(0x25d),'prompt':a55_0x45567b(0x2d9),'cancelled':a55_0x45567b(0x1a7),'invalidChoice':a55_0x45567b(0x297)},'installFlow':{'configuring':a55_0x45567b(0x2e1),'error':'\x0aError:\x20Configuration\x20failed\x20-\x20{{error}}\x0a'},'cursorConfig':{'success':a55_0x45567b(0x2d0),'configInfo':a55_0x45567b(0x1b6),'usageHint':'You\x20can\x20now\x20use\x20Lovrabet\x20dataset\x20MCP\x20tools\x20in\x20Cursor.','restartRequired':'Please\x20restart\x20Cursor\x20to\x20load\x20the\x20new\x20MCP\x20config.','error':a55_0x45567b(0x23c),'rules':{'exists':a55_0x45567b(0x201),'created':a55_0x45567b(0x256),'copyFailed':'Failed\x20to\x20copy\x20Cursor\x20Rules\x20file'},'updateExisting':a55_0x45567b(0x232),'createNew':a55_0x45567b(0x210),'written':'Written\x20.cursor/mcp.json'},'claudeConfig':{'error':a55_0x45567b(0x23c),'agents':{'exists':a55_0x45567b(0x2b3),'created':a55_0x45567b(0x248),'copyFailed':a55_0x45567b(0x29b)},'manualCommand':a55_0x45567b(0x2a3),'configInfo':a55_0x45567b(0x1b6),'restartRequired':a55_0x45567b(0x2e7),'commandGenerated':a55_0x45567b(0x1f6)},'other':{'configInfo':a55_0x45567b(0x1dd),'configGuide':a55_0x45567b(0x28e),'guideShown':a55_0x45567b(0x1b5)},'config':{'env':a55_0x45567b(0x223)},'install':{'starting':'Start\x20configuring\x20MCP','unknownIDE':a55_0x45567b(0x1df),'otherIDE':'Other\x20IDE','success':'\x0a✓\x20{{ide}}\x20MCP\x20configured\x20successfully','failed':a55_0x45567b(0x29a),'completed':a55_0x45567b(0x291),'manualActionRequired':'\x0aNote:\x20Some\x20configurations\x20require\x20manual\x20commands,\x20please\x20follow\x20the\x20instructions\x20above'},'ui':{'otherIDE':'Other\x20IDE','otherIDEDescription':'Other\x20IDE\x20configuration\x20guide','selectAtLeastOne':a55_0x45567b(0x1d9),'selectedIDE':'Selected\x20IDEs','count':a55_0x45567b(0x1c1),'title':'Configure\x20Lovrabet\x20MCP\x20Server','configuring':a55_0x45567b(0x227),'completed':a55_0x45567b(0x221),'partialManual':a55_0x45567b(0x1fa),'failed':a55_0x45567b(0x2d5),'manualRequired':'⚠️\x20Configuration\x20requires\x20manual\x20steps','pressAnyKeyToExit':'Press\x20any\x20key\x20to\x20exit...','unsupportedIDE':'Unsupported\x20IDE:\x20{{ide}}'}},'aiSetup':{'error':{'missingAppcode':'Appcode\x20must\x20be\x20configured\x20first'},'mcp':{'cursor':{'success':a55_0x45567b(0x1bc),'written':a55_0x45567b(0x19b),'error':a55_0x45567b(0x2e8),'rules':{'created':'Create\x20Cursor\x20Rules\x20file','copyFailed':a55_0x45567b(0x1f1)}},'claude':{'commandGenerated':a55_0x45567b(0x25f),'manualCommand':a55_0x45567b(0x1a6),'configInfo':a55_0x45567b(0x1b6),'env':a55_0x45567b(0x24e),'restartRequired':a55_0x45567b(0x1d8),'manualExecute':a55_0x45567b(0x23d),'agents':{'created':a55_0x45567b(0x248),'copyFailed':a55_0x45567b(0x29b)}},'other':{'name':a55_0x45567b(0x1e0),'title':a55_0x45567b(0x268),'guideShown':a55_0x45567b(0x234)},'unsupportedIDE':a55_0x45567b(0x1a1)},'skill':{'unknownIDE':a55_0x45567b(0x1df),'installSuccess':a55_0x45567b(0x200),'itemsCreated':a55_0x45567b(0x276),'installFailed':'{{name}}\x20skill\x20installation\x20failed','sharedCopied':a55_0x45567b(0x2a8),'sharedCopyFailed':a55_0x45567b(0x1b3),'manifestCreated':'Skill\x20manifest\x20created'},'ui':{'selectAtLeastOne':a55_0x45567b(0x20d),'confirm':{'title':a55_0x45567b(0x1c0),'mcpDescription':a55_0x45567b(0x2f2),'skillDescription':'•\x20Skill:\x20Install\x20best\x20practices\x20and\x20Backend\x20Function\x20guidelines','yes':a55_0x45567b(0x1f7),'no':a55_0x45567b(0x2e3),'default':'Enter\x20default:\x20Yes'},'select':{'title':a55_0x45567b(0x2c1),'mcpSection':a55_0x45567b(0x2f8),'skillSection':a55_0x45567b(0x2c2),'controls':a55_0x45567b(0x216)},'installing':a55_0x45567b(0x2bc)}},'appMenu':{'error':{'missingAppCode':a55_0x45567b(0x236),'appCodeHint':{'title':a55_0x45567b(0x207),'option1':a55_0x45567b(0x1ef),'option2':'\x20\x20\x202.\x20Set\x20default:\x20lovrabet\x20config\x20set\x20app\x20<app-code>'},'authExpired':'Authentication\x20failed,\x20session\x20expired.\x20Please\x20use\x20lovrabet\x20auth\x20to\x20login\x20again','authValidationFailed':'Auth\x20validation\x20failed.\x20Please\x20use\x20lovrabet\x20auth\x20to\x20login\x20again','httpStatus':a55_0x45567b(0x2cc),'fetchFailed':a55_0x45567b(0x26f),'createHttpStatus':'Failed\x20to\x20create\x20menu,\x20HTTP\x20status:\x20{{status}}','createFailed':a55_0x45567b(0x24c)},'info':{'emptyMenuList':a55_0x45567b(0x21f)},'success':{'fetched':a55_0x45567b(0x1bb),'created':a55_0x45567b(0x1b9)},'fetching':{'online':'Fetching\x20online\x20menu\x20list...\x20(appCode:\x20{{appCode}})','daily':a55_0x45567b(0x1d4)},'creating':{'single':'Creating\x20menu:\x20{{label}}\x20({{path}})','batch':{'start':a55_0x45567b(0x2c0),'completed':a55_0x45567b(0x1ba)}},'sync':{'title':'*\x20Sync\x20menus\x20to\x20Lovrabet\x20platform','table':{'menuName':a55_0x45567b(0x235),'local':a55_0x45567b(0x2b4),'lovrabetPlatform':a55_0x45567b(0x1cb)},'error':{'noMenuSelected':'Please\x20select\x20at\x20least\x20one\x20menu','invalidJsUrl':a55_0x45567b(0x265),'jsUrlUnreachable':a55_0x45567b(0x206),'invalidCssUrl':a55_0x45567b(0x2e0),'cssUrlUnreachable':a55_0x45567b(0x1ff),'createMenuFailed':a55_0x45567b(0x1b2),'authHint':{'prefix':'Hint:\x20use\x20','suffix':'\x20command\x20to\x20re-login'},'noLocalPages':'!\x20No\x20local\x20pages\x20found,\x20please\x20create\x20pages\x20first'},'step':{'selectedMenus':'Selected\x20menus','selectedMenusCount':'{{count}}\x20items','jsUrl':a55_0x45567b(0x2f0),'cssUrl':a55_0x45567b(0x28f),'selectMenus':a55_0x45567b(0x21d),'creating':a55_0x45567b(0x1a4),'completed':'√\x20Menu\x20creation\x20completed'},'operation':{'update':a55_0x45567b(0x25e),'create':a55_0x45567b(0x222)},'loading':{'fetchingMenuList':a55_0x45567b(0x2e5)},'hotkeys':a55_0x45567b(0x292),'input':{'jsUrl':{'label':a55_0x45567b(0x2da),'placeholder':'\x20Enter\x20project\x20JS\x20asset\x20URL\x20(https://...)'},'cssUrl':{'label':a55_0x45567b(0x1f9),'placeholder':a55_0x45567b(0x253)}}},'updateCdn':{'title':a55_0x45567b(0x2cd),'error':{'invalidJsUrl':a55_0x45567b(0x265),'jsUrlUnreachable':a55_0x45567b(0x206),'invalidCssUrl':'Please\x20enter\x20a\x20valid\x20CSS\x20https\x20URL','cssUrlUnreachable':a55_0x45567b(0x1ff),'authHint':{'prefix':a55_0x45567b(0x2a4),'suffix':a55_0x45567b(0x2d1)},'noCdnLinks':a55_0x45567b(0x1bf),'updateFailed':a55_0x45567b(0x270)},'loading':{'fetching':a55_0x45567b(0x2de),'syncing':'\x20Assets\x20are\x20syncing...'},'action':{'continue':'Continue\x20update','cancel':a55_0x45567b(0x2fa)},'success':{'updated':a55_0x45567b(0x1f5),'synced':a55_0x45567b(0x283)},'updating':'Updating\x20menu\x20asset\x20links:\x20{{label}}\x20({{path}})','preview':{'title':'*\x20Menus\x20and\x20asset\x20links\x20to\x20update','menuList':a55_0x45567b(0x2bd),'resourceLinks':a55_0x45567b(0x27a)},'input':{'title':a55_0x45567b(0x2f6),'jsUrl':{'label':a55_0x45567b(0x2fb),'placeholder':a55_0x45567b(0x2ee)},'cssUrl':{'label':a55_0x45567b(0x2db),'placeholder':'Enter\x20project\x20CSS\x20asset\x20URL\x20(https://...)'}}}},'skill':{'install':'Install\x20Skills','error':{'unsupportedCommand':a55_0x45567b(0x250),'installFailed':a55_0x45567b(0x1f8),'unknownPlatform':a55_0x45567b(0x22c),'unknownIDE':a55_0x45567b(0x279),'noValidIDE':'\x0aNo\x20valid\x20IDE\x20to\x20install\x0a','selectAtLeastOne':'Please\x20select\x20at\x20least\x20one\x20IDE'},'errorHint':{'availableCommands':'\x0aAvailable\x20commands:','installInteractive':'\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20skill\x20installation','installDirect':a55_0x45567b(0x1be),'showHelp':'\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Show\x20help\x0a','usageExamples':a55_0x45567b(0x27e),'exampleInteractive':a55_0x45567b(0x2fc),'exampleDirect':'\x20\x20lovrabet\x20skill\x20install\x20cursor\x20\x20\x20\x20#\x20Install\x20Cursor\x20skill\x20directly\x0a'},'select':{'title':a55_0x45567b(0x1c3),'installAll':a55_0x45567b(0x2f4),'cancel':'Cancel','inputFormat':a55_0x45567b(0x24a),'inputHint':a55_0x45567b(0x1ad),'prompt':a55_0x45567b(0x2d9),'cancelled':'\x0aInstallation\x20cancelled\x0a','noneSelected':a55_0x45567b(0x1a9),'selectedIDE':a55_0x45567b(0x211),'count':a55_0x45567b(0x1c1)},'cdn':{'fetching':a55_0x45567b(0x1b7),'fetchingExtend':a55_0x45567b(0x212),'fetchSuccess':a55_0x45567b(0x205),'fetchFailed':'\x20\x20!\x20CDN\x20fetch\x20failed,\x20skipping\x20guide\x20installation:\x20{{error}}'},'installing':{'title':a55_0x45567b(0x20f),'progress':a55_0x45567b(0x2ae),'ide':a55_0x45567b(0x21e),'installed':a55_0x45567b(0x27b),'created':a55_0x45567b(0x2be),'createdDir':'\x20\x20✓\x20Created\x20{{path}}/','createdManifest':a55_0x45567b(0x1de)},'done':{'success':'\x0a✓\x20Skills\x20installed\x20successfully!\x20{{count}}\x20directories\x20created\x0a','successInline':a55_0x45567b(0x2ad),'guidesLocation':a55_0x45567b(0x274),'guidesPath':a55_0x45567b(0x22f),'guidesPathInline':a55_0x45567b(0x2eb),'pressAnyKey':'Press\x20any\x20key\x20to\x20exit...'},'generic':a55_0x45567b(0x2a2),'help':{'title':a55_0x45567b(0x1fd),'usage':a55_0x45567b(0x244),'showHelp':'Show\x20help','installInteractive':'Interactive\x20skill\x20installation','installDirect':a55_0x45567b(0x1ca),'installAll':a55_0x45567b(0x2b8),'installWithBff':a55_0x45567b(0x2d6),'installMethods':'Installation\x20methods:','interactiveSelect':'\x20\x20Interactive\x20selection\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Show\x20IDE\x20list\x20for\x20selection,\x20multi-select\x20supported','interactiveKeys':a55_0x45567b(0x1d2),'directInstall':'\x20\x20Direct\x20install\x20(multiple\x20IDEs)\x20\x20\x20\x20\x20-\x20Use\x20--ide\x20flags\x20to\x20install\x20directly','bffWorkflow':a55_0x45567b(0x229),'supportedIDEs':a55_0x45567b(0x1e4),'agentDesc':a55_0x45567b(0x26d),'allDesc':'Install\x20all\x20IDE\x20skills\x20(including\x20generic\x20template)','options':a55_0x45567b(0x1b0),'bffOption':a55_0x45567b(0x26a),'skillContents':a55_0x45567b(0x2ef),'skillContentsList':a55_0x45567b(0x2ba),'examples':a55_0x45567b(0x25b),'exampleInteractive':'\x20\x20\x20\x20→\x20Interactive\x20IDE\x20selection','exampleDirectDesc':a55_0x45567b(0x27c),'exampleBffDesc':a55_0x45567b(0x2b1),'exampleAllDesc':a55_0x45567b(0x1e1),'afterInstall':a55_0x45567b(0x22a),'afterInstallList':a55_0x45567b(0x300),'guidesLocationTitle':a55_0x45567b(0x274)}},'logs':{'title':a55_0x45567b(0x245),'view':a55_0x45567b(0x2fe),'clear':a55_0x45567b(0x1f2),'noLogs':a55_0x45567b(0x2dc),'header':a55_0x45567b(0x29f),'time':a55_0x45567b(0x2ca),'duration':'\x20\x20\x20Duration:\x20{{duration}}ms','details':'\x20\x20\x20Details:\x20{{details}}','cleared':'*\x20Logs\x20cleared'},'start':{'starting':a55_0x45567b(0x1b8)},'build':{'building':'Building\x20project...'},'preview':{'previewing':a55_0x45567b(0x2aa),'watchMode':a55_0x45567b(0x213)},'ui':{'ideSelector':{'title':'Select\x20IDEs\x20to\x20configure:','hotkeys':'↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20q:\x20Quit\x20\x20Enter:\x20Confirm'}},'upgrade':{'cli':{'title':'↪\x20New\x20version\x20available','current':a55_0x45567b(0x2a9),'stable':a55_0x45567b(0x1d5),'command':'\x20\x20\x20Upgrade\x20command:\x20{{command}}'},'sdk':{'title':a55_0x45567b(0x1d3),'current':a55_0x45567b(0x1e9),'stable':a55_0x45567b(0x1d5),'command':a55_0x45567b(0x271)}}};
|
|
1
|
+
var a55_0x3d2dc3=a55_0x420e;function a55_0x420e(_0x4f6764,_0x5a51a3){_0x4f6764=_0x4f6764-0x9c;var _0x1e3430=a55_0x1e34();var _0x420ebd=_0x1e3430[_0x4f6764];return _0x420ebd;}(function(_0x4f3a59,_0x5132e2){var _0x1b3e7c=a55_0x420e,_0xfd4cc3=_0x4f3a59();while(!![]){try{var _0x1da4a9=parseInt(_0x1b3e7c(0x10c))/0x1*(parseInt(_0x1b3e7c(0x107))/0x2)+parseInt(_0x1b3e7c(0x109))/0x3+-parseInt(_0x1b3e7c(0x16b))/0x4*(-parseInt(_0x1b3e7c(0x1fb))/0x5)+-parseInt(_0x1b3e7c(0x1df))/0x6*(-parseInt(_0x1b3e7c(0x1d8))/0x7)+-parseInt(_0x1b3e7c(0x1a6))/0x8+-parseInt(_0x1b3e7c(0xfc))/0x9*(parseInt(_0x1b3e7c(0x1c9))/0xa)+parseInt(_0x1b3e7c(0x20d))/0xb;if(_0x1da4a9===_0x5132e2)break;else _0xfd4cc3['push'](_0xfd4cc3['shift']());}catch(_0x570546){_0xfd4cc3['push'](_0xfd4cc3['shift']());}}}(a55_0x1e34,0x4e991));function a55_0x1e34(){var _0x50c942=['Developer\x20guides\x20location:','\x20\x20\x20\x20→\x20Enter\x20number\x20to\x20select\x20IDE','Configuring\x20AI\x20assistant...','\x20\x20•\x20Skill:','Cursor\x20MCP\x20configuration\x20failed','Failed\x20to\x20copy\x20agents.md\x20file','↪\x20New\x20version\x20available','*\x20JS\x20URL:\x20','Show\x20this\x20help\x20message','Input\x20format:\x20Enter\x20numbers\x20separated\x20by\x20spaces\x20(e.g.\x201\x203\x205)','agents.md\x20already\x20exists,\x20skipping','↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20q:\x20Quit\x20\x20Enter:\x20Confirm','Bind\x20AppCode\x20to\x20auto-configure\x20API,\x20e.g.\x20app-c4c89304\x20(press\x20Enter\x20to\x20skip)','Pull\x20and\x20generate\x20API\x20config\x20files','\x20\x20Interactive\x20selection\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Show\x20IDE\x20list\x20for\x20selection,\x20multi-select\x20supported','\x0aInstallation\x20cancelled\x0a','*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20{{dir}}','✗\x20Failed:\x20{{fileName}}.md\x20-\x20{{error}}','Cannot\x20create\x20project\x20in\x20current\x20directory,\x20please\x20check\x20directory\x20permissions','Menus\x20to\x20update:','Update\x20existing\x20mcp.json\x20config','Logging\x20in...','Configuration\x20methods:','Waiting\x203\x20seconds...\x0a','lovrabet\x20api\x20-\x20API\x20Operations','\x20\x20✗\x20Unknown\x20IDE:\x20{{ide}}','↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20q:\x20Quit\x20\x20Enter:\x20Confirm','Batch\x20menu\x20creation\x20completed,\x20total\x20{{count}}','Failed\x20to\x20fetch\x20menu\x20list,\x20HTTP\x20status:\x20{{status}}','\x0aError:\x20Configuration\x20failed\x20-\x20{{error}}\x0a','×\x20API\x20config\x20pull\x20failed:\x20{{error}}','\x20\x20Direct\x20install\x20(multiple\x20IDEs)\x20\x20\x20\x20\x20-\x20Use\x20--ide\x20flags\x20to\x20install\x20directly','Configuration\x20guide\x20displayed','App\x20Code','4077288tvioYD','Written\x20.cursor/mcp.json','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Configure\x20Cursor','\x20\x20Direct\x20IDE\x20config\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Use\x20--ide\x20flags','\x0a✓\x20Cursor\x20MCP\x20configured\x20successfully!\x0a','Using\x20specified\x20AppCode:\x20{{appCode}}','No\x20appcode\x20found.\x20Run\x20\x27lovrabet\x20init\x27\x20to\x20initialize\x20project\x20config','Login\x20failed','\x20\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20Configure\x20Cursor\x20MCP\x20directly','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Configure\x20Claude\x20Code','Lovrabet\x20MCP\x20-\x20MCP\x20Server\x20Configuration\x20Tool','✓\x20Fetched\x20{{count}}\x20developer\x20guides','List\x20all\x20config\x20values','Set\x20a\x20config\x20value','*\x20Pulling\x20API\x20config\x20from\x20server...\x20(env:\x20{{env}})','Create\x20Cursor\x20Rules\x20file','Set\x20environment\x20(online/daily)','√\x20{{label}}:\x20','Configure\x20AI\x20assistant\x20as\x20well?\x20This\x20will:','√\x20package.json\x20updated:\x20name={{name}}','\x20\x20Recommended:\x20Yes,\x20to\x20auto-configure\x20API','Install\x20Lovrabet\x20Skills\x20-\x20Select\x20IDE','Install\x20all\x20skills','Cursor\x20MCP\x20configured\x20successfully','Fetching\x20dataset\x20list...','Enter\x20default:\x20Yes','Loading...','×\x20--params\x20is\x20not\x20valid\x20JSON\x20format','\x20\x20\x201.\x20Set\x20default:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','\x20\x20Installing\x20dependencies...','❌\x20Error:\x20Positional\x20arguments\x20are\x20no\x20longer\x20supported','\x0a✓\x20MCP\x20configuration\x20completed\x20({{successCount}}/{{totalCount}}\x20succeeded)','Pull\x20API\x20config','*\x20Generated\x20doc\x20files:','!\x20API\x20configuration\x20pull\x20failed,\x20you\x20can\x20manually\x20run:\x20lovrabet\x20api\x20pull','4138110Xeocvf','⚠️\x20Some\x20configurations\x20require\x20manual\x20steps','Other','Clear\x20Logs','Enter\x20a\x20number\x20to\x20select\x20IDE:\x0a','!\x20No\x20local\x20pages\x20found,\x20please\x20create\x20pages\x20first','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Show\x20help','Server\x20returned\x20empty\x20menu\x20list','*\x20Using\x20configured\x20AppCode:\x20{{appCode}}','Create\x20new\x20mcp.json\x20config','!\x20Please\x20specify\x20a\x20valid\x20command.','Please\x20enter\x20App\x20Code:','JS\x20URL\x20is\x20unreachable','\x20\x20Include\x20BFF\x20sync\x20workflow\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Use\x20--dangerously-bff-save\x20flag','√\x20Pulled\x20{{datasetCount}}\x20datasets,\x20generated\x20{{modelCount}}\x20models','938329rfmCUU','\x20\x20-\x20IDE-specific\x20config\x20files\x20(.cursorrules,\x20.windsurf/,\x20.claude/,\x20.cline/,\x20.codex/,\x20.opencode/,\x20.qoder/,\x20.codebuddy/,\x20.trae/)\x0a\x20\x20-\x20.lovrabet/skill/.shared/guides/\x20\x20-\x20Developer\x20skill\x20guides','\x20\x20✓\x20Created\x20{{path}}/','*\x20Generating\x20API\x20config\x20files:','Generate\x20docs\x20for\x20multiple\x20datasets','Failed\x20to\x20pull\x20API\x20config:\x20{{error}}','*\x20Generated\x20files:','12tQBZWo','Please\x20enter\x20a\x20valid\x20JS\x20https\x20URL','*\x20Output\x20directory:\x20','\x20\x20-\x20Filter\x20query\x20building\x20spec\x20(10\x20common\x20error\x20comparisons)\x0a\x20\x20-\x20MCP\x20SQL\x20creation\x20workflow\x20(5-step\x20mandatory\x20process)\x0a\x20\x20-\x20AntD\x20UI\x20development\x20spec\x20(anti-AI-style)\x0a\x20\x20-\x20API\x20integration\x20guide\x20(lovrabet\x20api\x20pull\x20workflow)\x0a\x20\x20-\x20Menu\x20management\x20guide\x20(menu\x20sync/update\x20workflow)\x0a\x20\x20-\x20Backend\x20Function\x20script\x20spec\x20(permissions,\x20data\x20masking,\x20business\x20logic)\x0a\x20\x20-\x20Backend\x20Function\x20sync\x20workflow\x20(requires\x20--dangerously-bff-save)','Directory\x20\x22{{name}}\x22\x20already\x20exists','Skill\x20manifest\x20created','Please\x20restart\x20Cursor\x20to\x20load\x20the\x20new\x20MCP\x20config.','Include\x20Backend\x20Function\x20sync\x20workflow','√\x20Valid\x20session\x20detected,\x20no\x20login\x20required.','\x20command\x20to\x20re-login','\x20\x20Error:\x20{{error}}','Pull\x20API\x20configuration:','\x20\x20\x20\x20→\x20Use\x20↑↓\x20to\x20move,\x20Space\x20to\x20toggle,\x20Enter\x20to\x20confirm\x0a\x20\x20\x20\x20→\x20Press\x20a\x20to\x20select\x20all,\x20i/r\x20to\x20invert,\x20q\x20to\x20quit','Configuration:\x20appcode={{appcode}},\x20env={{env}}','Next','Building\x20project...','Other\x20IDE\x20configuration\x20guide','Usage','AppCode','Invalid\x20project\x20name','Auth\x20validation\x20failed.\x20Please\x20use\x20lovrabet\x20auth\x20to\x20login\x20again','Failed\x20to\x20fetch\x20menu\x20list:\x20{{error}}','√\x20Configuration\x20file\x20created,\x20AppCode:\x20{{appCode}}','✓\x20Skill\x20Installation\x20Complete:','\x20\x20\x20\x20→\x20Install\x20all\x20IDE\x20skills','You\x20can\x20now\x20use\x20commands\x20like\x20\x27lovrabet\x20api\x20doc\x27\x20and\x20\x27lovrabet\x20api\x20pull\x27',',\x20{{failCount}}\x20failed','Sync\x20Menu','354065auCgGL','\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20skill\x20installation','Project\x20name\x20is\x20too\x20long,\x20maximum\x20100\x20characters','✅\x20Browser\x20opened.\x20Please\x20complete\x20login\x20in\x20the\x20browser.','\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Interactive\x20MCP\x20configuration','Specify\x20output\x20directory\x20(pull:\x20./src/api/,\x20doc:\x20./docs)','Run\x20the\x20following\x20command\x20to\x20configure\x20Claude\x20Code\x20MCP:','*\x20Logs\x20cleared','Failed\x20to\x20fetch\x20doc\x20({{datasetCode}}),\x20HTTP\x20status:\x20{{status}}','Fetching\x20developer\x20guides\x20from\x20CDN\x20(with\x20extensions)...','Dependency\x20installation\x20failed:\x20{{error}}','Invalid\x20App\x20Code','\x20\x20\x20\x20→\x20Install\x20Cursor\x20and\x20Claude\x20Code\x20skills\x20directly','Install\x20all','\x20\x20Environment:\x20{{env}}','Project\x20Name','AppCode\x20can\x20only\x20contain\x20letters,\x20numbers,\x20hyphens\x20and\x20underscores,\x20and\x20must\x20start\x20with\x20a\x20letter\x20or\x20number','Continue\x20update','2552550lRuVEL','Please\x20select\x20at\x20least\x20one\x20item\x20to\x20configure','Specify\x20environment\x20(e.g.\x20daily,\x20online)','Failed\x20to\x20clean\x20up\x20project\x20directory','Press\x20“q”\x20to\x20exit.','*\x20Lovrabet\x20CLI\x20logs:\x0a','Set\x20display\x20language\x20(zh/en)','Error:\x20Unsupported\x20command:\x20{{cmd}}','\x20\x20\x20\x20→\x20Interactive\x20IDE\x20selection','*\x20Creating\x20project...','\x20\x20\x202.\x20Use\x20flag:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>','Login\x20successful.\x20Please\x20return\x20to\x20the\x20CLI\x20to\x20continue.\x20This\x20window\x20will\x20close\x20in\x20{{seconds}}\x20seconds.','Lovrabet\x20Platform','!\x20API\x20configuration\x20pull\x20error,\x20project\x20created,\x20you\x20can\x20manually\x20run:\x20lovrabet\x20api\x20pull','API\x20Management','env\x20value\x20must\x20be\x20\x22online\x22\x20or\x20\x22daily\x22','\x20\x20lovrabet\x20skill\x20install\x20cursor\x20\x20\x20\x20#\x20Install\x20Cursor\x20skill\x20directly\x0a','🌐\x20Attempting\x20to\x20open\x20browser\x20automatically...','Initializing\x20configuration\x20file...','Enter\x200\x20to\x20install\x20all\x20IDEs,\x20enter\x20q\x20to\x20cancel\x0a','\x20\x20\x201.\x20Specify\x20directly:\x20lovrabet\x20api\x20pull\x20<app-code>','\x20\x20!\x20CDN\x20fetch\x20failed,\x20skipping\x20guide\x20installation:\x20{{error}}','login\x20again\x20and\x20retry','\x20\x20(Note:\x20--appcode\x20flag\x20matches\x20config,\x20using\x20default\x20config)','*\x20Creating\x20project\x20{{name}}...','Detailed\x20guide:\x20https://help.yuntoo.com/mcp/config-guide','Update\x20Menu\x20CDN\x20Resources','Not\x20set','Previous','Failed\x20to\x20copy\x20Cursor\x20Rules\x20file','*\x20Automatically\x20pull\x20API\x20config?','Cancel','\x0aNote:\x20Some\x20configurations\x20require\x20manual\x20commands,\x20please\x20follow\x20the\x20instructions\x20above','Examples:','Starting\x20development\x20server...','\x20Logging\x20in...','\x20\x20\x20Upgrade\x20command:\x20{{command}}','\x20\x20√\x20Project\x20template\x20created','Generate\x20Documentation','Install\x20for\x20specific\x20IDE','×\x20--params\x20must\x20be\x20a\x20valid\x20JSON\x20object','Confirm','✓\x20MCP\x20configuration\x20completed!','\x20\x20•\x20MCP\x20Server:','×\x20AppCode\x20not\x20configured','Options:','Specify\x20output\x20directory','Fetching\x20model\x20list\x20from\x20server...\x20(env:\x20{{env}})','Claude\x20Code\x20MCP\x20command\x20generated','Failed\x20to\x20create\x20menu:\x20{{error}}','Generic\x20Template','√\x20Updated\x20successfully','*\x20Select\x20IDEs\x20to\x20configure:','[N]\x20Skip,\x20configure\x20later','Project\x20name\x20must\x20start\x20with\x20a\x20letter\x20or\x20number\x20and\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','\x20|\x20AppCode:\x20','Use\x20specified\x20appcode','Please\x20enter\x20a\x20valid\x20CSS\x20https\x20URL','Menu\x20created\x20successfully:','Unknown\x20api\x20command','•\x20Skill:\x20Install\x20best\x20practices\x20and\x20Backend\x20Function\x20guidelines','Fetched\x20{{count}}\x20online\x20menus\x20successfully','Authentication\x20failed,\x20session\x20expired.\x20Please\x20use\x20lovrabet\x20auth\x20to\x20login\x20again','\x20\x20√\x20package.json\x20updated','Generating\x20docs\x20for\x20{{count}}\x20datasets...','↪\x20SDK\x20update\x20available','Project\x20name\x20cannot\x20exceed\x2050\x20characters','✓\x20MCP\x20Server\x20Configuration\x20Complete:','*\x20CSS\x20URL:\x20','Unknown\x20IDE:\x20{{ide}}','No\x20AppCode\x20provided\x20and\x20no\x20default\x20configured','\x20\x20Use\x20←→\x20to\x20choose,\x20press\x20Enter\x20to\x20confirm','√\x20Configuration\x20file\x20created,\x20you\x20can\x20configure\x20later\x20with\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27','*\x20Configuring\x20Lovrabet\x20MCP\x20and\x20Skill...','\x20\x20✓\x20Created\x20{{path}}','Enter\x20project\x20CSS\x20asset\x20URL\x20(https://...)','Start\x20project:\x20','Asset\x20links\x20to\x20update:','No\x20datasets\x20found','Environment:\x20{{env}}','\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20MCP\x20configuration','Config\x20value\x20is\x20invalid\x20or\x20too\x20long','\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Show\x20help\x0a','Failed\x20to\x20copy\x20shared\x20skill\x20files','\x20\x20√\x20Dependency\x20install\x20skipped\x20(non-interactive)','\x20\x20--dangerously-bff-save\x20\x20\x20\x20Include\x20Backend\x20Function\x20sync\x20workflow\x20guide\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(requires\x20MCP\x20server\x20with\x20corresponding\x20tools\x20enabled)','Lovrabet\x20Skill\x20-\x20Developer\x20Skill\x20Installation\x20Tool','*\x20Project\x20name:\x20','📍\x20Login\x20URL:','✓\x20Skill\x20installation\x20completed:','\x20\x20\x20Interactive\x20selection\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Show\x20IDE\x20list\x20for\x20selection','\x20\x20\x202.\x20Use\x20flag:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','\x20Checking...','✓\x20Created\x20.lovrabet/skill-manifest.json','{{count}}\x20items\x20created','\x20\x20\x20Time:\x20{{time}}','No\x20config\x20value\x20provided','You\x20can\x20now\x20use\x20Lovrabet\x20dataset\x20MCP\x20tools\x20in\x20Cursor.','✓\x20Logged\x20out','Global','App\x20Code\x20cannot\x20exceed\x20100\x20characters','JS\x20URL','Press\x20Enter\x20to\x20confirm\x20or\x20type\x20a\x20custom\x20name','Update','Specify\x20doc\x20output\x20directory','Start\x20batch\x20menu\x20creation,\x20total\x20{{count}}','*\x20Processing\x20{{count}}\x20datasets...','Install\x20Skills','9bUiKAg','{{count}}','Logged\x20in','↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20Enter:\x20Confirm','*\x20No\x20logs\x20found','*\x20Configure\x20Lovrabet\x20MCP\x20and\x20Skill?','to\x20view\x20available\x20commands.','Please\x20select\x20at\x20least\x20one\x20menu','Hint:\x20use\x20','Install\x20all\x20IDE\x20skills\x20(including\x20generic\x20template)','Project\x20Configuration','52wLeYYG','Info','1165044dIrnzs','Please\x20use\x20the\x20--appcode\x20flag,\x20for\x20example:','\x0aAvailable\x20commands:','11004ijxqOe','Failed\x20to\x20save\x20config','Cancel\x20update','✓\x20Skills\x20installed\x20successfully!\x20{{count}}\x20directories\x20created','Login\x20successful!','Please\x20select\x20at\x20least\x20one\x20IDE','Other\x20(generic\x20template)\x20(.agent/skills/)\x20-\x20Fallback','Failed\x20to\x20create\x20menu,\x20HTTP\x20status:\x20{{status}}','Creating\x20menu:\x20{{label}}\x20({{path}})','\x20\x20\x20Stable\x20version:\x20{{version}}','Error','√\x20API\x20configuration\x20pulled\x20successfully','Examples','\x20\x20\x20Current\x20version:\x20{{package}}@{{version}}','🚀\x20Next\x20Steps:','Select\x20IDEs\x20to\x20configure:','Generate\x20docs\x20for\x20specified\x20environment','×\x20Invalid\x20file\x20prefix.\x20Only\x20letters,\x20numbers,\x20hyphens\x20and\x20underscores\x20allowed,\x20must\x20start\x20with\x20a\x20letter.','Menu\x20Name','\x20\x20$\x20lovrabet\x20mcp\x20install','\x20\x20\x202.\x20Set\x20default:\x20lovrabet\x20config\x20set\x20app\x20<app-code>','*\x20Login\x20first\x20to\x20pull\x20API\x20config?','\x20Fetching\x20online\x20menu\x20list...','Interactive\x20skill\x20installation','!\x20Please\x20use\x20one\x20of\x20the\x20following:','App\x20Code\x20identifies\x20your\x20project.\x20Only\x20letters,\x20numbers,\x20-\x20and\x20_\x20are\x20allowed','\x20\x20\x20\x20→\x20Configure\x20Cursor\x20MCP\x20(writes\x20.cursor/mcp.json)','Your\x20choice:\x20','\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor','×\x20Project\x20creation\x20failed:\x20{{error}}','{{name}}\x20skill\x20installed\x20successfully','Warning','Set\x20App\x20Code\x20for\x20current\x20project','Developer\x20guides:\x20.lovrabet/skill/.shared/guides/','Unable\x20to\x20close\x20automatically.\x20Please\x20close\x20this\x20tab\x20or\x20window\x20manually.','Other\x20IDE','Doc\x20generation\x20failed:\x20{{error}}','Menu\x20assets\x20synced:\x20{{label}}','Logs','*\x20AppCode\x20','Usage:','1.\x20Configure\x20Lovrabet\x20MCP\x20and\x20Skill','*\x20Creating\x20configuration\x20file\x20for\x20project\x20{{name}}','Other\x20IDE\x20configuration\x20guide\x20displayed','Format\x20code','✓\x20{{scope}}\x20env\x20set\x20to:\x20{{value}}','\x20Fetching\x20online\x20menu\x20asset\x20links...','App\x20Code\x20cannot\x20be\x20empty','[{{current}}/{{total}}]\x20Generating:\x20{{fileName}}.md\x20({{name}})','Fetching\x20developer\x20guides\x20from\x20CDN...','√\x20Valid\x20login\x20detected','Installation\x20methods:','⚠️\x20\x20Failed\x20to\x20open\x20browser\x20automatically','\x0a📋\x20Run\x20the\x20following\x20command\x20to\x20configure\x20Claude\x20Code\x20MCP:\x0a','CSS\x20URL\x20is\x20unreachable','-\x20Model\x20config\x20({{count}}\x20models)','Supported\x20IDEs:','Start\x20configuring\x20MCP','Yes','*\x20Menus\x20and\x20asset\x20links\x20to\x20update','Enter\x20project\x20JS\x20asset\x20URL\x20(https://...)','\x20\x20\x20•\x20{{name}}.ts\x20-\x20Model\x20config\x20file','Failed\x20to\x20fetch\x20datasets,\x20HTTP\x20status:\x20{{status}}','Specify\x20app\x20code','{{count}}\x20IDEs','\x20\x20\x20Details:\x20{{details}}','Copy\x20project\x20files','Restart\x20Claude\x20Code\x20to\x20take\x20effect','Cursor','Invalid\x20response\x20format\x20({{datasetCode}}):\x20missing\x20data.markdown\x20field','\x0a✓\x20{{ide}}\x20MCP\x20configured\x20successfully','{{count}}\x20items','Configuration:','Generate\x20doc\x20for\x20specific\x20dataset\x20only','⚠️\x20Configuration\x20requires\x20manual\x20steps','Successfully\x20initialized\x20.lovrabetrc\x20file\x20in\x20current\x20directory','Project\x20name\x20contains\x20invalid\x20characters.\x20Not\x20allowed:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20and\x20control\x20characters','Press\x20any\x20key\x20to\x20exit...','!\x20The\x20following\x20dataset\x20codes\x20do\x20not\x20exist:\x20{{codes}}','Failed\x20to\x20create\x20menu','Skills\x20(engineering\x20guidelines)','*\x20Updating\x20package.json\x20name\x20and\x20description\x20fields','\x20\x20✗\x20Failed\x20to\x20install\x20{{ide}}:\x20{{error}}','Login\x20status','Use','Installing\x20skills...','Create\x20agents.md\x20file','\x20\x20q.\x20Cancel\x0a','\x20Enter\x20project\x20JS\x20asset\x20URL\x20(https://...)','*\x20Configuring\x20AppCode\x20for\x20project\x20{{name}}:\x20{{appCode}}','Selected\x20IDEs','\x20Assets\x20are\x20syncing...','*\x20Press\x20Enter\x20to\x20start\x20login.','\x0aConfiguration\x20cancelled\x0a','\x0aNo\x20IDE\x20selected,\x20installation\x20cancelled\x0a','4ZKJbUQ','*\x20Filtered\x20{{count}}\x20matching\x20datasets\x20from\x20{{total}}\x20total','Previewing\x20project...','💡\x20If\x20the\x20browser\x20does\x20not\x20open\x20automatically,\x20copy\x20the\x20login\x20URL\x20above\x20into\x20your\x20browser.','Success','\x0a📋\x20Other\x20IDE\x20MCP\x20configuration:\x0a','\x0a√\x20Project\x20{{name}}\x20created\x20successfully!','\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Interactive\x20IDE\x20selection','Specify\x20dataset\x20codes\x20for\x20doc\x20generation\x20(comma-separated,\x20doc\x20command\x20only)','Configuration\x20command\x20generated','{{count}}\x20directories\x20installed','Selected\x20menus','🔗\x20Please\x20copy\x20the\x20login\x20URL\x20into\x20your\x20browser:','Cursor\x20Rules\x20file\x20already\x20exists,\x20skipping','Pull\x20API\x20for\x20specified\x20environment','[optional]:\x20','×\x20--datasetcode\x20cannot\x20be\x20empty','-\x20Client\x20instance\x20file','*\x20Import\x20usage:','!\x20Not\x20logged\x20in','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20Show\x20help\x0a','!\x20No\x20valid\x20login\x20detected','After\x20installation,\x20the\x20following\x20will\x20be\x20created\x20in\x20your\x20project:','*\x20Select\x20menus\x20to\x20sync:','MCP\x20Server\x20(AI\x20dataset\x20access)'];a55_0x1e34=function(){return _0x50c942;};return a55_0x1e34();}export default{'common':{'success':a55_0x3d2dc3(0x16f),'error':a55_0x3d2dc3(0x116),'warning':a55_0x3d2dc3(0x12b),'info':a55_0x3d2dc3(0x108),'loading':a55_0x3d2dc3(0x1c0),'cancel':a55_0x3d2dc3(0xaf),'confirm':a55_0x3d2dc3(0xb9),'next':a55_0x3d2dc3(0x1ed),'previous':a55_0x3d2dc3(0xac),'finish':'Finish'},'help':{'invalidCommand':a55_0x3d2dc3(0x1d3),'usageHint':a55_0x3d2dc3(0x160),'viewCommands':a55_0x3d2dc3(0x102)},'cli':{'usage':a55_0x3d2dc3(0x1f0),'examples':a55_0x3d2dc3(0x118),'description':'Description'},'init':{'inputAppCode':a55_0x3d2dc3(0x1d4),'appCodeDesc':a55_0x3d2dc3(0x125),'fileExists':'.lovrabetrc\x20file\x20already\x20exists\x20in\x20current\x20directory','creating':a55_0x3d2dc3(0xa2),'success':a55_0x3d2dc3(0x157),'appCodeLabel':a55_0x3d2dc3(0x1f1),'nextSteps':a55_0x3d2dc3(0x1f8),'validation':{'required':a55_0x3d2dc3(0x13b),'tooLong':a55_0x3d2dc3(0xf4),'invalidFormat':'App\x20Code\x20can\x20only\x20contain\x20letters,\x20numbers,\x20-\x20and\x20_','invalidCode':a55_0x3d2dc3(0x206)}},'create':{'projectNameLabel':'Project\x20Name','appCodeLabel':a55_0x3d2dc3(0x1a5),'validation':{'required':'Project\x20name\x20cannot\x20be\x20empty','invalidChars':a55_0x3d2dc3(0x158),'tooLong':a55_0x3d2dc3(0x1fd),'dirExists':'Project\x20directory\x20{{name}}\x20already\x20exists,\x20please\x20use\x20a\x20different\x20name','noPermission':a55_0x3d2dc3(0x196),'projectName':{'tooLong':a55_0x3d2dc3(0xd2),'invalidFormat':a55_0x3d2dc3(0xc6),'invalid':a55_0x3d2dc3(0x1f2),'dirExistsShort':a55_0x3d2dc3(0x1e3)},'appCode':{'tooLong':'AppCode\x20cannot\x20exceed\x20100\x20characters','invalidFormat':a55_0x3d2dc3(0x20b),'invalid':'Invalid\x20AppCode'},'ide':{'required':a55_0x3d2dc3(0x111)}},'common':{'yes':a55_0x3d2dc3(0x146),'no':'No','selectHint':a55_0x3d2dc3(0xd7)},'steps':{'pullingApi':'*\x20Pulling\x20API\x20configuration...','apiPullSuccess':a55_0x3d2dc3(0x117),'apiPullFailed':a55_0x3d2dc3(0x1c8),'apiPullError':a55_0x3d2dc3(0x9d),'updatingPackage':a55_0x3d2dc3(0x15d),'packageUpdated':a55_0x3d2dc3(0x1b9),'configuringAppCode':a55_0x3d2dc3(0x165),'creatingConfig':a55_0x3d2dc3(0x136),'configCreatedWithAppCode':a55_0x3d2dc3(0x1f5),'configCreated':a55_0x3d2dc3(0xd8),'configuringMcp':a55_0x3d2dc3(0xd9),'mcpConfigComplete':'√\x20Lovrabet\x20MCP\x20and\x20Skill\x20configuration\x20completed','cleaningUp':'*\x20Cleaning\x20up\x20failed\x20project\x20directory:\x20{{dir}}','projectName':{'label':a55_0x3d2dc3(0x20a)},'appCode':{'label':a55_0x3d2dc3(0x1a5),'notSet':a55_0x3d2dc3(0xab)},'apiPull':{'label':a55_0x3d2dc3(0x1c6)},'lovrabetSetup':{'label':'MCP\x20&\x20Skill','ideCount':a55_0x3d2dc3(0x14c)},'login':{'label':a55_0x3d2dc3(0x15f),'loggedIn':a55_0x3d2dc3(0xfe),'failed':a55_0x3d2dc3(0x1ad),'skipped':'Login\x20skipped'}},'title':'*\x20Create\x20new\x20project','completedStep':a55_0x3d2dc3(0x1b7),'input':{'projectName':{'label':a55_0x3d2dc3(0xe7),'hint':a55_0x3d2dc3(0xf6)},'appCode':{'label':a55_0x3d2dc3(0x133),'optional':a55_0x3d2dc3(0x17a),'hint':a55_0x3d2dc3(0x190)}},'login':{'checking':'*\x20Checking\x20login\x20status...','checkingStatus':a55_0x3d2dc3(0xec),'valid':a55_0x3d2dc3(0x13e),'notDetected':a55_0x3d2dc3(0x180),'prompt':a55_0x3d2dc3(0x121),'inProgress':'*\x20Logging\x20in,\x20please\x20complete\x20in\x20browser...','inProgressStatus':a55_0x3d2dc3(0xb3)},'apiPull':{'confirm':a55_0x3d2dc3(0xae),'recommendation':a55_0x3d2dc3(0x1ba)},'lovrabetSetup':{'confirm':a55_0x3d2dc3(0x101),'selectIdeHint':'\x20\x20Use\x20←→\x20to\x20revise\x20choice,\x20Enter\x20to\x20confirm\x20IDEs','selectIdeTitle':a55_0x3d2dc3(0x11b),'keyboardShortcuts':a55_0x3d2dc3(0xff),'inProgress':'*\x20Configuring\x20Lovrabet\x20MCP\x20and\x20Skill...','mcpCompleted':'✓\x20MCP\x20server\x20configuration\x20completed:','skillCompleted':a55_0x3d2dc3(0xe9)},'creating':a55_0x3d2dc3(0x216),'display':{'projectName':'Project\x20name:\x20','appCode':a55_0x3d2dc3(0xc7)},'packageJson':{'updating':a55_0x3d2dc3(0x15d),'updated':a55_0x3d2dc3(0x1b9)},'config':{'configuringAppCode':'*\x20Configuring\x20AppCode\x20for\x20project\x20{{name}}:\x20{{appCode}}','creating':a55_0x3d2dc3(0x136),'createdWithAppCode':a55_0x3d2dc3(0x1f5),'createdWithoutAppCode':a55_0x3d2dc3(0xd8)},'cleanup':{'inProgress':a55_0x3d2dc3(0x194)},'results':{'mcpComplete':a55_0x3d2dc3(0xd3),'skillComplete':a55_0x3d2dc3(0x1f6),'nextSteps':a55_0x3d2dc3(0x11a)},'nextSteps':{'configureMcpAndSkill':a55_0x3d2dc3(0x135),'skill':a55_0x3d2dc3(0x187),'mcp':a55_0x3d2dc3(0xbb),'startProject':'Start\x20project:','pullApi':a55_0x3d2dc3(0x1ea),'configAppCode':'Configure\x20AppCode:'},'errors':{'createFailed':a55_0x3d2dc3(0x129),'cleanupFailed':a55_0x3d2dc3(0x210),'depsInstallFailed':a55_0x3d2dc3(0x205)},'nonInteractive':{'creating':a55_0x3d2dc3(0xa8),'templateCreated':a55_0x3d2dc3(0xb5),'packageJsonUpdated':a55_0x3d2dc3(0xcf),'installingDeps':a55_0x3d2dc3(0x1c3),'depsSkipped':a55_0x3d2dc3(0xe4),'codeFormatted':'\x20\x20√\x20Code\x20formatted','envConfigured':'\x20\x20√\x20Environment\x20configured','success':a55_0x3d2dc3(0x171)},'tasks':{'copyFiles':a55_0x3d2dc3(0x14e),'formatCode':a55_0x3d2dc3(0x138),'installDependencies':'Install\x20dependencies','formatCodeLabel':a55_0x3d2dc3(0x138)},'nextStepsAlt':{'startProject':a55_0x3d2dc3(0xdc),'pullApi':'Pull\x20API\x20config:\x20','configureLovrabet':a55_0x3d2dc3(0x135)}},'config':{'title':a55_0x3d2dc3(0x106),'help':{'invalidCommand':'Invalid\x20command.\x20Available\x20commands:','examples':a55_0x3d2dc3(0xb1),'set':a55_0x3d2dc3(0x1b3),'get':'Get\x20a\x20config\x20value','list':a55_0x3d2dc3(0x1b2),'exampleApp':a55_0x3d2dc3(0x12c),'exampleEnv':a55_0x3d2dc3(0x1b6),'exampleLocale':a55_0x3d2dc3(0x213)},'validation':{'envInvalid':a55_0x3d2dc3(0x9f),'localeInvalid':'Invalid\x20locale\x20value.\x20Supported:\x20zh,\x20en,\x20zh-CN,\x20en-US','valueInvalid':a55_0x3d2dc3(0xe1),'noValue':a55_0x3d2dc3(0xf0),'saveFailed':a55_0x3d2dc3(0x10d)},'success':{'envSet':a55_0x3d2dc3(0x139),'localeSet':'✓\x20{{scope}}\x20locale\x20set\x20to:\x20{{value}}'},'scope':{'project':'Project','global':a55_0x3d2dc3(0xf3)}},'api':{'title':a55_0x3d2dc3(0x9e),'pull':'Pull\x20API','doc':a55_0x3d2dc3(0xb6),'help':{'title':a55_0x3d2dc3(0x19c),'usage':a55_0x3d2dc3(0x134),'options':a55_0x3d2dc3(0xbd),'optAppcode':a55_0x3d2dc3(0x14b),'optOutput':a55_0x3d2dc3(0x200),'optEnv':a55_0x3d2dc3(0x20f),'optDatasetcode':a55_0x3d2dc3(0x173),'optHelp':a55_0x3d2dc3(0x18c),'examples':a55_0x3d2dc3(0xb1),'pullDesc':a55_0x3d2dc3(0x191),'pullAppcode':a55_0x3d2dc3(0xc8),'pullOutput':a55_0x3d2dc3(0xbe),'pullEnv':a55_0x3d2dc3(0x179),'docDesc':'Generate\x20docs\x20for\x20all\x20datasets','docAppcode':a55_0x3d2dc3(0xc8),'docOutput':a55_0x3d2dc3(0xf8),'docEnv':a55_0x3d2dc3(0x11c),'docDataset':a55_0x3d2dc3(0x155),'docDatasets':a55_0x3d2dc3(0x1dc),'unknownCommand':a55_0x3d2dc3(0xcb),'availableCommands':'Available\x20commands:'},'common':{'noPositionalArgs':a55_0x3d2dc3(0x1c4),'useAppcodeFlag':a55_0x3d2dc3(0x10a),'noAppCode':a55_0x3d2dc3(0xbc),'noAppCodeHint':a55_0x3d2dc3(0x124),'noAppCodeOption1':a55_0x3d2dc3(0x1c2),'noAppCodeOption2Pull':a55_0x3d2dc3(0xeb),'noAppCodeOption2Doc':a55_0x3d2dc3(0x217),'usingConfigAppCode':a55_0x3d2dc3(0x1d1),'usingConfigAppCodeHint':a55_0x3d2dc3(0xa7),'usingSpecifiedAppCode':a55_0x3d2dc3(0x1ab),'usingDefaultAppCode':'Using\x20configured\x20AppCode:\x20{{appCode}}','noAppCodeDefault':a55_0x3d2dc3(0xd6),'paramsInvalidJson':a55_0x3d2dc3(0xb8),'paramsNotJson':a55_0x3d2dc3(0x1c1),'paramsError':a55_0x3d2dc3(0x1e9),'datasetcodeEmpty':a55_0x3d2dc3(0x17b),'onlyGenerateDatasets':'*\x20Generating\x20docs\x20only\x20for\x20specified\x20datasets:\x20{{codes}}','authExpired':a55_0x3d2dc3(0xce),'authRetry':a55_0x3d2dc3(0xa6),'unknownError':'Unknown\x20error'},'pullUI':{'fetching':a55_0x3d2dc3(0x1b4),'successPull':a55_0x3d2dc3(0x1d7),'duplicateInfo':'!\x20Original\x20{{originalCount}}\x20datasets,\x20filtered\x20{{duplicateCount}}\x20duplicates','generatedFiles':a55_0x3d2dc3(0x1de),'modelFile':a55_0x3d2dc3(0x143),'clientFile':a55_0x3d2dc3(0x17c),'importHint':a55_0x3d2dc3(0x17d),'pullFailed':a55_0x3d2dc3(0x1dd)},'docUI':{'fetchingDatasets':a55_0x3d2dc3(0x1be),'noDatasets':a55_0x3d2dc3(0xde),'datasetsNotFound':a55_0x3d2dc3(0x15a),'allDatasetsNotFound':'All\x20specified\x20dataset\x20codes\x20do\x20not\x20exist:\x20{{codes}}','filteredDatasets':a55_0x3d2dc3(0x16c),'generatingDocs':a55_0x3d2dc3(0xd0),'generatingFile':'Generating\x20{{fileName}}.md\x20({{current}}/{{total}})','docComplete':'√\x20Doc\x20generation\x20complete!\x20{{successCount}}\x20succeeded','docFailed':a55_0x3d2dc3(0x1f9),'processedDatasets':'*\x20Processed\x20{{count}}\x20datasets','outputDir':a55_0x3d2dc3(0x1e1),'generatedDocs':a55_0x3d2dc3(0x1c7),'failedDatasets':'⚠️\x20The\x20following\x20datasets\x20failed\x20to\x20generate:','docGenerateFailed':a55_0x3d2dc3(0x130)},'fetchModel':{'fetching':a55_0x3d2dc3(0xbf),'httpError':a55_0x3d2dc3(0x14a),'fetchError':'Failed\x20to\x20fetch\x20datasets:\x20{{error}}'},'generateFile':{'noAppCode':'Please\x20configure\x20app\x20code\x20first\x20via\x20`lovrabet\x20config\x20set\x20app\x20<value>`'},'docBatch':{'totalDatasets':'\x0a{{count}}\x20datasets\x20to\x20generate\x20docs\x20for\x0a','generating':a55_0x3d2dc3(0x13c),'success':'✓\x20Generated:\x20{{fileName}}.md','failed':a55_0x3d2dc3(0x195),'waiting':a55_0x3d2dc3(0x19b),'docFormatError':a55_0x3d2dc3(0x151),'httpError':a55_0x3d2dc3(0x203)},'silent':{'invalidPrefix':a55_0x3d2dc3(0x11d),'fetching':a55_0x3d2dc3(0x1b4),'generating':a55_0x3d2dc3(0x1db),'modelFileName':a55_0x3d2dc3(0x149),'clientFileName':'\x20\x20\x20•\x20{{name}}.ts\x20-\x20Client\x20instance\x20file','processing':a55_0x3d2dc3(0xfa),'success':'√\x20Pulled\x20{{datasetCount}}\x20datasets,\x20generated\x20{{modelCount}}\x20models','error':a55_0x3d2dc3(0x1a2)}},'auth':{'title':'Authentication','login':{'success':{'title':'Login\x20Successful','message':a55_0x3d2dc3(0x218),'manualClose':a55_0x3d2dc3(0x12e)},'successCli':a55_0x3d2dc3(0x110),'inProgress':a55_0x3d2dc3(0x199),'browserPrompt':'Please\x20complete\x20login\x20in\x20your\x20browser.','pressEnter':a55_0x3d2dc3(0x168),'pressQToExit':a55_0x3d2dc3(0x211)},'session':{'valid':a55_0x3d2dc3(0x1e7)},'server':{'starting':'🔐\x20Starting\x20login\x20service...','loginUrl':a55_0x3d2dc3(0xe8),'openingBrowser':a55_0x3d2dc3(0xa1),'manualOpenHint':a55_0x3d2dc3(0x16e),'browserOpened':a55_0x3d2dc3(0x1fe),'browserOpenFailed':a55_0x3d2dc3(0x140),'manualCopyUrl':a55_0x3d2dc3(0x177)},'logout':{'success':a55_0x3d2dc3(0xf2),'notLoggedIn':a55_0x3d2dc3(0x17e)}},'menu':{'sync':a55_0x3d2dc3(0x1fa),'update':a55_0x3d2dc3(0xaa)},'mcp':{'cursor':a55_0x3d2dc3(0x150),'claude':'Claude\x20Code','error':{'unsupportedCommand':a55_0x3d2dc3(0x214),'missingAppcode':a55_0x3d2dc3(0x1ac)},'help':{'title':a55_0x3d2dc3(0x1b0),'availableCommands':a55_0x3d2dc3(0x10b),'command':{'install':a55_0x3d2dc3(0xe0),'help':a55_0x3d2dc3(0x17f)},'usage':{'help':a55_0x3d2dc3(0x1cf),'install':a55_0x3d2dc3(0x1ff),'installCursor':a55_0x3d2dc3(0x1ae),'installClaude':'\x20\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20Configure\x20Claude\x20Code\x20MCP\x20directly'},'configMethods':a55_0x3d2dc3(0x19a),'configMethodsInteractive':a55_0x3d2dc3(0xea),'configMethodsInteractiveHint':a55_0x3d2dc3(0x185),'configMethodsDirect':a55_0x3d2dc3(0x1a9),'configMethodsDirectCursor':a55_0x3d2dc3(0x1a8),'configMethodsDirectClaude':a55_0x3d2dc3(0x1af),'supportedIDEs':a55_0x3d2dc3(0x144),'examples':a55_0x3d2dc3(0xb1),'exampleInstall':a55_0x3d2dc3(0x11f),'exampleInstallHint':a55_0x3d2dc3(0x215),'exampleInstallCursor':a55_0x3d2dc3(0x128),'exampleInstallCursorHint':a55_0x3d2dc3(0x126),'configGuide':'Configuration\x20guide:'},'select':{'chooseIDE':'\x0aSelect\x20IDE\x20to\x20configure\x20MCP:\x0a','cancel':a55_0x3d2dc3(0x163),'enterNumber':a55_0x3d2dc3(0x1cd),'prompt':a55_0x3d2dc3(0x127),'cancelled':a55_0x3d2dc3(0x169),'invalidChoice':'\x0aInvalid\x20choice.\x20Enter\x20a\x20number\x20between\x201\x20and\x20{{count}}\x0a'},'installFlow':{'configuring':'\x0a📦\x20Configuring\x20{{name}}\x20MCP...\x0a','error':a55_0x3d2dc3(0x1a1)},'cursorConfig':{'success':a55_0x3d2dc3(0x1aa),'configInfo':'Configuration:','usageHint':a55_0x3d2dc3(0xf1),'restartRequired':a55_0x3d2dc3(0x1e5),'error':a55_0x3d2dc3(0x1a1),'rules':{'exists':a55_0x3d2dc3(0x178),'created':'Create\x20Cursor\x20Rules\x20file','copyFailed':a55_0x3d2dc3(0xad)},'updateExisting':a55_0x3d2dc3(0x198),'createNew':a55_0x3d2dc3(0x1d2),'written':a55_0x3d2dc3(0x1a7)},'claudeConfig':{'error':a55_0x3d2dc3(0x1a1),'agents':{'exists':a55_0x3d2dc3(0x18e),'created':a55_0x3d2dc3(0x162),'copyFailed':a55_0x3d2dc3(0x189)},'manualCommand':a55_0x3d2dc3(0x201),'configInfo':'Configuration:','restartRequired':a55_0x3d2dc3(0x14f),'commandGenerated':a55_0x3d2dc3(0x174)},'other':{'configInfo':a55_0x3d2dc3(0x1ec),'configGuide':a55_0x3d2dc3(0xa9),'guideShown':a55_0x3d2dc3(0x137)},'config':{'env':a55_0x3d2dc3(0xdf)},'install':{'starting':a55_0x3d2dc3(0x145),'unknownIDE':a55_0x3d2dc3(0xd5),'otherIDE':a55_0x3d2dc3(0x12f),'success':a55_0x3d2dc3(0x152),'failed':'\x0a✗\x20{{ide}}\x20MCP\x20configuration\x20failed:\x20{{error}}','completed':a55_0x3d2dc3(0x1c5),'manualActionRequired':a55_0x3d2dc3(0xb0)},'ui':{'otherIDE':a55_0x3d2dc3(0x12f),'otherIDEDescription':a55_0x3d2dc3(0x1ef),'selectAtLeastOne':'Please\x20select\x20at\x20least\x20one\x20IDE','selectedIDE':'Selected\x20IDEs','count':a55_0x3d2dc3(0xfd),'title':'Configure\x20Lovrabet\x20MCP\x20Server','configuring':'Configuring\x20MCP\x20server...','completed':a55_0x3d2dc3(0xba),'partialManual':a55_0x3d2dc3(0x1ca),'failed':'✗\x20Configuration\x20failed','manualRequired':a55_0x3d2dc3(0x156),'pressAnyKeyToExit':a55_0x3d2dc3(0x159),'unsupportedIDE':'Unsupported\x20IDE:\x20{{ide}}'}},'aiSetup':{'error':{'missingAppcode':'Appcode\x20must\x20be\x20configured\x20first'},'mcp':{'cursor':{'success':a55_0x3d2dc3(0x1bd),'written':'Written\x20.cursor/mcp.json','error':a55_0x3d2dc3(0x188),'rules':{'created':a55_0x3d2dc3(0x1b5),'copyFailed':'Failed\x20to\x20copy\x20Cursor\x20Rules\x20file'}},'claude':{'commandGenerated':a55_0x3d2dc3(0xc0),'manualCommand':a55_0x3d2dc3(0x141),'configInfo':a55_0x3d2dc3(0x154),'env':a55_0x3d2dc3(0x209),'restartRequired':'\x20\x20Restart\x20Claude\x20Code\x20to\x20take\x20effect\x0a','manualExecute':'Please\x20run:\x20{{command}}','agents':{'created':a55_0x3d2dc3(0x162),'copyFailed':a55_0x3d2dc3(0x189)}},'other':{'name':a55_0x3d2dc3(0x1cb),'title':a55_0x3d2dc3(0x170),'guideShown':a55_0x3d2dc3(0x1a4)},'unsupportedIDE':'Unsupported\x20MCP\x20IDE:\x20{{ide}}'},'skill':{'unknownIDE':a55_0x3d2dc3(0xd5),'installSuccess':a55_0x3d2dc3(0x12a),'itemsCreated':a55_0x3d2dc3(0xee),'installFailed':'{{name}}\x20skill\x20installation\x20failed','sharedCopied':'Shared\x20skill\x20files\x20copied\x20successfully','sharedCopyFailed':a55_0x3d2dc3(0xe3),'manifestCreated':a55_0x3d2dc3(0x1e4)},'ui':{'selectAtLeastOne':a55_0x3d2dc3(0x20e),'confirm':{'title':a55_0x3d2dc3(0x1b8),'mcpDescription':'•\x20MCP:\x20Allow\x20AI\x20to\x20access\x20Lovrabet\x20datasets\x20directly','skillDescription':a55_0x3d2dc3(0xcc),'yes':'[Y]\x20Yes,\x20configure\x20AI\x20assistant','no':a55_0x3d2dc3(0xc5),'default':a55_0x3d2dc3(0x1bf)},'select':{'title':a55_0x3d2dc3(0xc4),'mcpSection':a55_0x3d2dc3(0x183),'skillSection':a55_0x3d2dc3(0x15c),'controls':a55_0x3d2dc3(0x19e)},'installing':a55_0x3d2dc3(0x186)}},'appMenu':{'error':{'missingAppCode':a55_0x3d2dc3(0xd6),'appCodeHint':{'title':a55_0x3d2dc3(0x124),'option1':a55_0x3d2dc3(0xa4),'option2':a55_0x3d2dc3(0x120)},'authExpired':a55_0x3d2dc3(0xce),'authValidationFailed':a55_0x3d2dc3(0x1f3),'httpStatus':a55_0x3d2dc3(0x1a0),'fetchFailed':a55_0x3d2dc3(0x1f4),'createHttpStatus':a55_0x3d2dc3(0x113),'createFailed':a55_0x3d2dc3(0xc1)},'info':{'emptyMenuList':a55_0x3d2dc3(0x1d0)},'success':{'fetched':a55_0x3d2dc3(0xcd),'created':a55_0x3d2dc3(0xca)},'fetching':{'online':'Fetching\x20online\x20menu\x20list...\x20(appCode:\x20{{appCode}})','daily':'Fetching\x20daily\x20menu\x20list...\x20(appCode:\x20{{appCode}})'},'creating':{'single':a55_0x3d2dc3(0x114),'batch':{'start':a55_0x3d2dc3(0xf9),'completed':a55_0x3d2dc3(0x19f)}},'sync':{'title':'*\x20Sync\x20menus\x20to\x20Lovrabet\x20platform','table':{'menuName':a55_0x3d2dc3(0x11e),'local':'Local','lovrabetPlatform':a55_0x3d2dc3(0x9c)},'error':{'noMenuSelected':a55_0x3d2dc3(0x103),'invalidJsUrl':a55_0x3d2dc3(0x1e0),'jsUrlUnreachable':a55_0x3d2dc3(0x1d5),'invalidCssUrl':'Please\x20enter\x20a\x20valid\x20CSS\x20https\x20URL','cssUrlUnreachable':a55_0x3d2dc3(0x142),'createMenuFailed':a55_0x3d2dc3(0x15b),'authHint':{'prefix':a55_0x3d2dc3(0x104),'suffix':'\x20command\x20to\x20re-login'},'noLocalPages':a55_0x3d2dc3(0x1ce)},'step':{'selectedMenus':a55_0x3d2dc3(0x176),'selectedMenusCount':a55_0x3d2dc3(0x153),'jsUrl':a55_0x3d2dc3(0xf5),'cssUrl':'CSS\x20URL','selectMenus':a55_0x3d2dc3(0x182),'creating':'*\x20Creating\x20menus...','completed':'√\x20Menu\x20creation\x20completed'},'operation':{'update':a55_0x3d2dc3(0xf7),'create':'Create'},'loading':{'fetchingMenuList':a55_0x3d2dc3(0x122)},'hotkeys':'↑/↓:\x20Move\x20\x20Space:\x20Toggle\x20\x20a:\x20All\x20\x20i/r:\x20Invert\x20\x20Enter:\x20Confirm','input':{'jsUrl':{'label':a55_0x3d2dc3(0x18b),'placeholder':a55_0x3d2dc3(0x164)},'cssUrl':{'label':a55_0x3d2dc3(0xd4),'placeholder':'\x20Enter\x20project\x20CSS\x20asset\x20URL\x20(https://...)'}}},'updateCdn':{'title':'*\x20Enter\x20new\x20asset\x20URLs','error':{'invalidJsUrl':a55_0x3d2dc3(0x1e0),'jsUrlUnreachable':a55_0x3d2dc3(0x1d5),'invalidCssUrl':a55_0x3d2dc3(0xc9),'cssUrlUnreachable':a55_0x3d2dc3(0x142),'authHint':{'prefix':'Hint:\x20use\x20','suffix':a55_0x3d2dc3(0x1e8)},'noCdnLinks':'!\x20No\x20menu\x20asset\x20links\x20found','updateFailed':'Failed\x20to\x20update\x20menu\x20assets:\x20{{error}}'},'loading':{'fetching':a55_0x3d2dc3(0x13a),'syncing':a55_0x3d2dc3(0x167)},'action':{'continue':a55_0x3d2dc3(0x20c),'cancel':a55_0x3d2dc3(0x10e)},'success':{'updated':a55_0x3d2dc3(0xc3),'synced':a55_0x3d2dc3(0x131)},'updating':'Updating\x20menu\x20asset\x20links:\x20{{label}}\x20({{path}})','preview':{'title':a55_0x3d2dc3(0x147),'menuList':a55_0x3d2dc3(0x197),'resourceLinks':a55_0x3d2dc3(0xdd)},'input':{'title':'*\x20Entered\x20asset\x20URLs','jsUrl':{'label':'JS\x20URL:\x20','placeholder':a55_0x3d2dc3(0x148)},'cssUrl':{'label':'CSS\x20URL:\x20','placeholder':a55_0x3d2dc3(0xdb)}}}},'skill':{'install':a55_0x3d2dc3(0xfb),'error':{'unsupportedCommand':a55_0x3d2dc3(0x214),'installFailed':a55_0x3d2dc3(0x15e),'unknownPlatform':'⚠️\x20\x20Unknown\x20platform:\x20{{ide}},\x20using\x20generic\x20template','unknownIDE':a55_0x3d2dc3(0x19d),'noValidIDE':'\x0aNo\x20valid\x20IDE\x20to\x20install\x0a','selectAtLeastOne':a55_0x3d2dc3(0x111)},'errorHint':{'availableCommands':a55_0x3d2dc3(0x10b),'installInteractive':a55_0x3d2dc3(0x1fc),'installDirect':'\x20\x20lovrabet\x20skill\x20install\x20<ide>\x20\x20\x20\x20\x20#\x20Install\x20for\x20specific\x20IDE','showHelp':a55_0x3d2dc3(0xe2),'usageExamples':'Usage\x20examples:','exampleInteractive':a55_0x3d2dc3(0x172),'exampleDirect':a55_0x3d2dc3(0xa0)},'select':{'title':'\x0aSelect\x20IDEs\x20to\x20install\x20skills\x20(multi-select):\x0a','installAll':a55_0x3d2dc3(0x208),'cancel':a55_0x3d2dc3(0xaf),'inputFormat':a55_0x3d2dc3(0x18d),'inputHint':a55_0x3d2dc3(0xa3),'prompt':'Your\x20choice:\x20','cancelled':a55_0x3d2dc3(0x193),'noneSelected':a55_0x3d2dc3(0x16a),'selectedIDE':a55_0x3d2dc3(0x166),'count':'{{count}}'},'cdn':{'fetching':a55_0x3d2dc3(0x13d),'fetchingExtend':a55_0x3d2dc3(0x204),'fetchSuccess':a55_0x3d2dc3(0x1b1),'fetchFailed':a55_0x3d2dc3(0xa5)},'installing':{'title':a55_0x3d2dc3(0x1bb),'progress':a55_0x3d2dc3(0x161),'ide':'\x0a📦\x20Installing\x20{{name}}...\x0a','installed':a55_0x3d2dc3(0x175),'created':a55_0x3d2dc3(0xda),'createdDir':a55_0x3d2dc3(0x1da),'createdManifest':a55_0x3d2dc3(0xed)},'done':{'success':'\x0a✓\x20Skills\x20installed\x20successfully!\x20{{count}}\x20directories\x20created\x0a','successInline':a55_0x3d2dc3(0x10f),'guidesLocation':'Developer\x20guides\x20location:','guidesPath':'\x20\x20.lovrabet/skill/.shared/guides/\x20-\x20Detailed\x20developer\x20guides\x0a','guidesPathInline':a55_0x3d2dc3(0x12d),'pressAnyKey':a55_0x3d2dc3(0x159)},'generic':a55_0x3d2dc3(0xc2),'help':{'title':a55_0x3d2dc3(0xe6),'usage':a55_0x3d2dc3(0x134),'showHelp':'Show\x20help','installInteractive':a55_0x3d2dc3(0x123),'installDirect':a55_0x3d2dc3(0xb7),'installAll':a55_0x3d2dc3(0x1bc),'installWithBff':a55_0x3d2dc3(0x1e6),'installMethods':a55_0x3d2dc3(0x13f),'interactiveSelect':a55_0x3d2dc3(0x192),'interactiveKeys':a55_0x3d2dc3(0x1eb),'directInstall':a55_0x3d2dc3(0x1a3),'bffWorkflow':a55_0x3d2dc3(0x1d6),'supportedIDEs':'Supported\x20IDEs:','agentDesc':a55_0x3d2dc3(0x112),'allDesc':a55_0x3d2dc3(0x105),'options':a55_0x3d2dc3(0xbd),'bffOption':a55_0x3d2dc3(0xe5),'skillContents':'Skill\x20contents\x20include:','skillContentsList':a55_0x3d2dc3(0x1e2),'examples':a55_0x3d2dc3(0xb1),'exampleInteractive':'\x20\x20\x20\x20→\x20Interactive\x20IDE\x20selection','exampleDirectDesc':a55_0x3d2dc3(0x207),'exampleBffDesc':'\x20\x20\x20\x20→\x20Install\x20skills\x20with\x20Backend\x20Function\x20sync\x20workflow','exampleAllDesc':a55_0x3d2dc3(0x1f7),'afterInstall':a55_0x3d2dc3(0x181),'afterInstallList':a55_0x3d2dc3(0x1d9),'guidesLocationTitle':a55_0x3d2dc3(0x184)}},'logs':{'title':a55_0x3d2dc3(0x132),'view':'View\x20Logs','clear':a55_0x3d2dc3(0x1cc),'noLogs':a55_0x3d2dc3(0x100),'header':a55_0x3d2dc3(0x212),'time':a55_0x3d2dc3(0xef),'duration':'\x20\x20\x20Duration:\x20{{duration}}ms','details':a55_0x3d2dc3(0x14d),'cleared':a55_0x3d2dc3(0x202)},'start':{'starting':a55_0x3d2dc3(0xb2)},'build':{'building':a55_0x3d2dc3(0x1ee)},'preview':{'previewing':a55_0x3d2dc3(0x16d),'watchMode':'Watch\x20Mode'},'ui':{'ideSelector':{'title':a55_0x3d2dc3(0x11b),'hotkeys':a55_0x3d2dc3(0x18f)}},'upgrade':{'cli':{'title':a55_0x3d2dc3(0x18a),'current':'\x20\x20\x20Current\x20CLI\x20version:\x20{{version}}','stable':a55_0x3d2dc3(0x115),'command':a55_0x3d2dc3(0xb4)},'sdk':{'title':a55_0x3d2dc3(0xd1),'current':a55_0x3d2dc3(0x119),'stable':a55_0x3d2dc3(0x115),'command':a55_0x3d2dc3(0xb4)}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var a56_0x4eefa6=a56_0x5331;function a56_0x1d2e(){var _0x2ee167=['\x0a请选择要配置\x20MCP\x20的\x20IDE:\x0a','17624FMXzzH','正在获取线上菜单列表...\x20(appCode:\x20{{appCode}})','*\x20正在处理\x20{{count}}\x20个数据集...','获取菜单列表失败,HTTP状态码:\x20{{status}}','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>','\x20\x20√\x20环境配置完成','*\x20按回车开始登录。','*\x20正在为项目\x20{{name}}\x20配置应用AppCode:\x20{{appCode}}','只生成指定数据集的文档','[N]\x20跳过,稍后手动配置','菜单名称','创建技能包\x20manifest','!\x20API\x20配置拉取异常,项目已创建,可稍后手动执行:\x20lovrabet\x20api\x20pull','启动项目:\x20','↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20q:\x20退出\x20Enter:\x20确认','生成多个数据集的文档','按任意键退出...','使用示例:','请手动执行:\x20{{command}}','*\x20是否要自动拉取\x20API\x20配置?','\x20\x20√\x20项目模板已创建','*\x20正在创建菜单...','MCP\x20和\x20Skill','正在从\x20CDN\x20拉取开发者指南(含扩展)...','\x20正在获取线上菜单资源链接...','正在获取日常菜单列表...\x20(appCode:\x20{{appCode}})','跳过登录','拉取API配置:','!\x20未找到本地页面,请先创建页面','正在配置\x20MCP\x20服务器...','API\x20管理','请先通过\x20`lovrabet\x20config\x20set\x20app\x20<value>`\x20配置应用\x20Code','Claude\x20Code','已创建\x20{{count}}\x20项','登录失败','2190qfQWQh','[可选]:\x20','安装后会在项目中创建:','设置配置项','11874PRghBI','\x20\x20(注:\x20--appcode\x20参数与配置一致,将使用默认配置)','重启\x20Claude\x20Code\x20后生效','应用AppCode','×\x20项目创建失败:\x20{{error}}','未知的\x20IDE:\x20{{ide}}','已选择\x20IDE','↪\x20新版本可用','应用代码不能为空','请前往浏览器完成登录。','指定环境拉取\x20API','🔗\x20请手动复制登录地址到浏览器:','环境:\x20{{env}}','未提供应用AppCode,且配置中也没有默认值','拉取\x20API\x20配置失败:\x20{{error}}','\x20检查中...','创建\x20Cursor\x20Rules\x20文件','\x0a✓\x20MCP\x20配置完成\x20({{successCount}}/{{totalCount}}\x20成功)','是否同时配置\x20AI\x20助手?这将:','创建菜单失败','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20显示帮助信息\x0a','配置信息:\x20appcode={{appcode}},\x20env={{env}}','\x20\x20\x202.\x20配置默认值:\x20lovrabet\x20config\x20set\x20app\x20<app-code>','现在您可以在\x20Cursor\x20中使用\x20Lovrabet\x20数据集\x20MCP\x20工具了。','*\x20正在创建项目...','更新菜单\x20CDN\x20资源','\x20\x20错误:\x20{{error}}','🔐\x20正在启动登录服务...','获取文档失败\x20({{datasetCode}}),HTTP状态码:\x20{{status}}','\x20\x20推荐选择\x20Yes,可自动配置\x20API\x20接口','拉取\x20API','\x20\x20\x20当前\x20CLI\x20版本:\x20{{version}}','项目名长度不能超过\x2050\x20个字符','\x0a✓\x20技能包安装成功!共安装\x20{{count}}\x20个目录\x0a','\x20\x20\x20交互式选择\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20显示\x20IDE\x20列表供选择','🚀\x20接下来:','\x20\x20√\x20package.json\x20已更新','9041242fviHCY','指定文档输出目录','应用代码长度不能超过\x20100\x20个字符','选项:','\x20\x20!\x20CDN\x20拉取失败,跳过指南安装:\x20{{error}}','JS\x20链接:\x20','√\x20API\x20配置拉取完成','项目名只能以字母或数字开头,且只包含字母、数字、-\x20和\x20_','创建菜单失败:\x20{{error}}','配置\x20Lovrabet\x20MCP\x20服务器','技能包\x20(研发规范指南)','监听模式','\x20\x20\x201.\x20直接指定:\x20lovrabet\x20api\x20pull\x20<app-code>','\x0a可用命令:','配置信息:','获取配置项','请至少选择一个配置项','请输入有效的\x20CSS\x20https\x20链接','*\x20JS\x20链接:\x20','指定的数据集代码都不存在:\x20{{codes}}','请选择:\x20','正在登录...','安装方式:','未知错误','*\x20是否要先登录以便拉取\x20API\x20配置?','✗\x20失败:\x20{{fileName}}.md\x20-\x20{{error}}','*\x20暂无日志记录','×\x20API\x20配置拉取异常:\x20{{error}}','支持的\x20IDE:','详细配置指南:\x20https://help.yuntoo.com/mcp/config-guide','项目名','√\x20package.json\x20已更新:\x20name={{name}}','配置当前项目的\x20App\x20Code','菜单创建成功:','直接安装指定\x20IDE\x20的技能包','无法在当前目录创建项目,请检查目录权限','登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20显示帮助信息\x0a','目录\x20\x22{{name}}\x22\x20已存在','登录认证','\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','\x0a📦\x20正在安装\x20{{name}}...\x0a','×\x20--datasetcode\x20参数不能为空','!\x20以下数据集代码不存在:\x20{{codes}}','Lovrabet平台','\x20\x20使用\x20←→\x20返回修改选择,回车确认\x20IDE','应用代码用于标识您的项目,只能包含字母、数字、-\x20和\x20_','!\x20原始数据集\x20{{originalCount}}\x20个,过滤重复\x20{{duplicateCount}}\x20个','CSS\x20链接','*\x20输出目录:\x20','\x20\x20lovrabet\x20skill\x20install\x20cursor\x20\x20\x20\x20#\x20直接安装\x20Cursor\x20技能包\x0a','正在生成\x20{{count}}\x20个数据集的文档...','\x0a已取消安装\x0a','\x20直接回车确认,或输入自定义名称','创建\x20agents.md\x20文件','💡\x20如果浏览器没有自动打开,请手动复制上面的登录地址到浏览器中打开','未知的\x20api\x20命令','\x20\x20--dangerously-bff-save\x20\x20\x20\x20包含\x20Backend\x20Function\x20同步工作流指南\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(需要\x20MCP\x20服务器启用相应\x20tools)','项目配置','\x0a✗\x20{{ide}}\x20MCP\x20配置失败:\x20{{error}}','\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择\x20IDE','未找到\x20appcode\x20配置,请先运行\x20\x27lovrabet\x20init\x27\x20初始化项目配置','使用指定的\x20appcode','✓\x20MCP\x20配置完成!','JS\x20链接','更新现有\x20mcp.json\x20配置','创建菜单失败,HTTP状态码:\x20{{status}}','\x20\x20\x20升级命令:\x20{{command}}','*\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20{{env}})','\x0a✓\x20Cursor\x20MCP\x20配置成功!\x0a','现在您可以使用\x20lovrabet\x20api\x20doc\x20和\x20lovrabet\x20api\x20pull\x20等命令了','\x20\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20直接配置\x20Claude\x20Code\x20MCP','\x20\x20包含\x20Backend\x20Function\x20同步工作流\x20\x20\x20-\x20使用\x20--dangerously-bff-save\x20标志','生成所有数据集的文档','项目名称','*\x20生成的文档文件:','未提供配置值','✓\x20MCP\x20服务器配置完成:','安装技能包','待更新的资源链接:','CSS\x20链接无法访问','*\x20请输入新的资源链接','\x0a无效的选择,请输入\x201-{{count}}\x20之间的数字\x0a','!\x20请指定一个有效的命令。','*\x20已输入的资源资源','\x20\x20正在安装依赖...','文档生成失败:\x20{{error}}','685789eiORWt','包含\x20Backend\x20Function\x20同步工作流','其他\x20IDE\x20配置指引','指定要生成文档的数据集代码(多个用逗号分隔,仅\x20doc\x20命令)','共享技能文件复制成功','\x20\x20•\x20Skill:','-\x20客户端实例文件','*\x20共处理\x20{{count}}\x20个数据集','\x20\x20lovrabet\x20skill\x20install\x20<ide>\x20\x20\x20\x20\x20#\x20直接安装指定\x20IDE\x20的技能包','\x0a已取消配置\x0a','✓\x20拉取\x20{{count}}\x20个开发者指南','复制\x20agents.md\x20文件失败','60973gszGYs','√\x20配置文件已创建,应用AppCode:\x20{{appCode}}','{{count}}\x20个\x20IDE','正在生成\x20{{fileName}}.md\x20({{current}}/{{total}})','\x20\x20✗\x20安装\x20{{ide}}\x20失败:\x20{{error}}','正在获取数据集列表...','按\x20“q”\x20退出。','agents.md\x20文件已存在,跳过','[Y]\x20是,配置\x20AI\x20助手','生成文档','*\x20导入方式:','{{name}}\x20技能包安装失败','项目目录\x20{{name}}\x20已存在,请使用其他项目名','请选择要配置的\x20IDE:','!\x20未找到菜单资源链接','\x0a√\x20项目\x20{{name}}\x20创建成功!','\x0a注意:部分配置需要手动执行命令,请按照上述说明操作','*\x20仅生成指定数据集的文档:\x20{{codes}}','\x20输入项目的\x20JS\x20资源链接(https://...)','JS\x20链接无法访问','配置指南:','无效的命令,可用命令如下:','配置方式:','应用AppCode只能包含字母、数字、连字符和下划线,且必须以字母或数字开头','√\x20{{label}}:\x20','\x20\x20\x20\x20→\x20直接配置\x20Cursor\x20MCP\x20(写入\x20.cursor/mcp.json)','\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor','Cursor\x20MCP\x20配置成功','当前目录已存在\x20.lovrabetrc\x20文件','列出所有配置项','输入\x200\x20安装所有\x20IDE,输入\x20q\x20取消\x0a','Cursor\x20MCP\x20配置失败','\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20交互式选择并配置\x20MCP','格式化代码','选择要配置的\x20IDE:','使用指定的应用AppCode:\x20{{appCode}}','开发者指南位置:\x20.lovrabet/skill/.shared/guides/','安装\x20Lovrabet\x20技能包\x20-\x20选择\x20IDE','请输入有效的\x20JS\x20https\x20链接','✓\x20已退出登录','\x0a错误:\x20配置失败\x20-\x20{{error}}\x0a','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','\x20\x20\x20稳定版本:\x20{{version}}','⚠️\x20\x20无法自动打开浏览器','\x20输入项目的\x20CSS\x20资源链接(https://...)','\x0a未选择任何\x20IDE,安装取消\x0a','√\x20成功拉取\x20{{datasetCount}}\x20个数据集,生成\x20{{modelCount}}\x20个模型','需要先配置\x20appcode','\x20\x20使用\x20←→\x20选择,回车确认','不支持的\x20MCP\x20IDE:\x20{{ide}}','同步菜单','应用代码不合法','\x20\x20\x20•\x20{{name}}.ts\x20-\x20模型配置文件','90THWCmW','开始批量创建菜单,共\x20{{count}}\x20个','{{name}}\x20技能包安装成功','项目名称:\x20','成功获取\x20{{count}}\x20个线上菜单','清空日志','✓\x20Skill\x20安装完成:','正在配置\x20AI\x20助手...','正在创建菜单:\x20{{label}}\x20({{path}})',',\x20失败\x20{{failCount}}\x20个','•\x20MCP:\x20让\x20AI\x20直接访问\x20Lovrabet\x20数据集','获取菜单列表失败:\x20{{error}}','\x20\x20\x20耗时:\x20{{duration}}ms','1.\x20配置\x20Lovrabet\x20MCP\x20和\x20Skill','*\x20日志已清空','62ZFjfiE','*\x20项目名:\x20','菜单资源同步成功:\x20{{label}}','•\x20Skill:\x20安装研发最佳实践、Backend\x20Function\x20规范','\x20\x20\x20\x20→\x20安装所有\x20IDE\x20技能包','已写入\x20.cursor/mcp.json','\x0a请选择要安装技能包的\x20IDE\x20(可多选):\x0a','绑定应用AppCode可自动配置\x20API,如:\x20app-c4c89304\x20(直接回车跳过)','*\x20清理失败的项目目录:\x20{{dir}}','√\x20Lovrabet\x20MCP\x20和\x20Skill\x20配置完成','\x20\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20直接配置\x20Cursor\x20MCP','选项:','项目名不能为空','\x20\x20q.\x20取消\x0a','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20配置\x20Claude\x20Code','依赖安装失败:\x20{{error}}','共享技能文件复制失败','!\x20未检测到有效登录','CSS\x20链接:\x20','开始配置\x20MCP','技能包内容包括:','Lovrabet\x20MCP\x20-\x20MCP\x20服务器配置工具','登录态校验失败,请使用\x20lovrabet\x20auth\x20重新登录','!\x20请使用以下方式之一:','1746SoXWfo','✓\x20创建\x20.lovrabet/skill-manifest.json','获取数据集失败,HTTP状态码:\x20{{status}}','*\x20从\x20{{total}}\x20个数据集中筛选出\x20{{count}}\x20个匹配的数据集','-\x20模型配置文件\x20({{count}}\x20个模型)','输入格式:\x20输入编号,用空格分隔\x20(例如:\x201\x203\x205)','更新菜单资源失败:\x20{{error}}','应用代码只能包含字母、数字、-\x20和\x20_','取消更新','登录成功,请返回命令行继续操作。当前窗口将在\x20{{seconds}}\x20秒内关闭。','响应数据格式错误\x20({{datasetCode}}):缺少\x20data.markdown\x20字段','*\x20正在为项目\x20{{name}}\x20创建配置文件','\x20\x20$\x20lovrabet\x20mcp\x20install','\x20\x20\x20•\x20{{name}}.ts\x20-\x20客户端实例文件','安装所有技能包','*\x20正在配置\x20Lovrabet\x20MCP\x20和\x20Skill...','\x20\x20\x20时间:\x20{{time}}','\x20\x20\x20\x20→\x20交互式选择\x20IDE','重新登录后再试','Cursor','\x20正在获取线上菜单列表...','正在安装技能包...','应用AppCode不合法','复制\x20Cursor\x20Rules\x20文件失败','拉取并生成\x20API\x20配置文件','\x20|\x20应用AppCode:\x20','√\x20当前为有效会话,无需重新登录。','🌐\x20正在尝试自动打开浏览器...','\x20命令重新登录','\x20\x20重启\x20Claude\x20Code\x20后生效\x0a','\x20\x20\x20详情:\x20{{details}}','↑/↓:\x20移动\x20空格:\x20切换\x20a:\x20全选\x20q:\x20退出\x20Enter:\x20确认','显示帮助信息','AppCode','正在构建项目...','请输入编号选择\x20IDE:\x0a','已安装\x20{{count}}\x20个目录','{{count}}\x20个','\x20\x20直接配置指定\x20IDE\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20使用\x20--ide\x20标志直接配置','请输入应用代码\x20(AppCode):','查看可用命令。','\x20\x20✓\x20创建\x20{{path}}/','正在从服务器拉取模型列表...\x20(环境:\x20{{env}})','218245DYqLRe','提示:使用\x20','请执行以下命令配置\x20Claude\x20Code\x20MCP:','\x20\x20-\x20Filter\x20查询构建规范\x20(10\x20种常见错误对照)\x0a\x20\x20-\x20MCP\x20SQL\x20创建工作流\x20(5\x20步强制流程)\x0a\x20\x20-\x20AntD\x20UI\x20开发规范\x20(禁止\x20AI\x20味道)\x0a\x20\x20-\x20API\x20集成指南\x20(lovrabet\x20api\x20pull\x20流程)\x0a\x20\x20-\x20菜单管理指南\x20(menu\x20sync/update\x20流程)\x0a\x20\x20-\x20Backend\x20Function\x20脚本编写规范\x20(权限过滤、数据脱敏、业务逻辑)\x0a\x20\x20-\x20Backend\x20Function\x20同步工作流\x20(需\x20--dangerously-bff-save\x20启用)','用法:','安装依赖','\x0a没有有效的\x20IDE\x20需要安装\x0a','配置值无效或过长','MCP\x20服务器\x20(AI\x20访问数据集)','项目名不合法','上一步','正在启动开发服务器...','*\x20开始生成\x20API\x20配置文件:','\x20\x20交互式选择\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20显示\x20IDE\x20列表供选择,支持多选','拉取API配置','登录状态','请至少选择一个菜单','创建新的\x20mcp.json\x20配置','√\x20更新成功','已选择菜单','项目名过长,最多支持\x20100\x20个字符','设置环境\x20(online/daily)','交互式选择并安装技能包','环境配置值只能是\x20\x22online\x22\x20或\x20\x22daily\x22','✓\x20{{scope}}环境配置已设置为:\x20{{value}}','⚠️\x20配置需要手动完成','✓\x20成功生成:\x20{{fileName}}.md','配置AppCode:','请至少选择一个\x20IDE','应用AppCode长度不能超过\x20100\x20个字符','示例:','4737528pmfPMa','无法自动关闭窗口,请手动关闭此标签页或窗口。','⚠️\x20\x20未知的平台:\x20{{ide}},使用通用模板','请使用\x20--appcode\x20参数,例如:','*\x20正在检查登录状态...','输入项目的\x20JS\x20资源链接(https://...)','未找到任何数据集','安装所有\x20IDE\x20技能包(包括通用模板)','\x20\x20.lovrabet/skill/.shared/guides/\x20-\x20详细开发指南\x0a','✓\x20{{scope}}语言配置已设置为:\x20{{value}}','⚠️\x20部分配置需要手动完成','正在初始化配置文件...'];a56_0x1d2e=function(){return _0x2ee167;};return a56_0x1d2e();}function a56_0x5331(_0x510e47,_0x32e8be){_0x510e47=_0x510e47-0xe7;var _0x1d2e45=a56_0x1d2e();var _0x533164=_0x1d2e45[_0x510e47];return _0x533164;}(function(_0x5958ba,_0x37f9b7){var _0x586d82=a56_0x5331,_0x51b1e0=_0x5958ba();while(!![]){try{var _0x3680cf=parseInt(_0x586d82(0x148))/0x1+-parseInt(_0x586d82(0x198))/0x2*(parseInt(_0x586d82(0x22e))/0x3)+-parseInt(_0x586d82(0x1fa))/0x4+parseInt(_0x586d82(0x1db))/0x5*(-parseInt(_0x586d82(0x189))/0x6)+parseInt(_0x586d82(0xf1))/0x7+parseInt(_0x586d82(0x207))/0x8*(-parseInt(_0x586d82(0x1b0))/0x9)+parseInt(_0x586d82(0x22a))/0xa*(parseInt(_0x586d82(0x154))/0xb);if(_0x3680cf===_0x37f9b7)break;else _0x51b1e0['push'](_0x51b1e0['shift']());}catch(_0x3e683d){_0x51b1e0['push'](_0x51b1e0['shift']());}}}(a56_0x1d2e,0xc3d43));export default{'common':{'success':'成功','error':'错误','warning':'警告','info':'信息','loading':'加载中...','cancel':'取消','confirm':'确认','next':'下一步','previous':a56_0x4eefa6(0x1e5),'finish':'完成'},'help':{'invalidCommand':a56_0x4eefa6(0x144),'usageHint':'使用','viewCommands':a56_0x4eefa6(0x1d8)},'cli':{'usage':'使用','examples':'示例','description':'描述'},'init':{'inputAppCode':a56_0x4eefa6(0x1d7),'appCodeDesc':a56_0x4eefa6(0x11f),'fileExists':a56_0x4eefa6(0x170),'creating':a56_0x4eefa6(0x205),'success':'成功在当前目录初始化\x20.lovrabetrc\x20文件','appCodeLabel':a56_0x4eefa6(0x1d1),'nextSteps':a56_0x4eefa6(0x137),'validation':{'required':a56_0x4eefa6(0x236),'tooLong':a56_0x4eefa6(0xf3),'invalidFormat':a56_0x4eefa6(0x1b7),'invalidCode':a56_0x4eefa6(0x187)}},'create':{'projectNameLabel':a56_0x4eefa6(0x13b),'appCodeLabel':a56_0x4eefa6(0x231),'validation':{'required':a56_0x4eefa6(0x1a4),'invalidChars':'项目名包含非法字符,不允许使用:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20及控制字符','tooLong':a56_0x4eefa6(0x1ef),'dirExists':a56_0x4eefa6(0x160),'noPermission':a56_0x4eefa6(0x114),'projectName':{'tooLong':a56_0x4eefa6(0xec),'invalidFormat':a56_0x4eefa6(0xf8),'invalid':a56_0x4eefa6(0x1e4),'dirExistsShort':a56_0x4eefa6(0x117)},'appCode':{'tooLong':a56_0x4eefa6(0x1f8),'invalidFormat':a56_0x4eefa6(0x16b),'invalid':a56_0x4eefa6(0x1c6)},'ide':{'required':'请至少选择一个\x20IDE'}},'common':{'yes':'是','no':'否','selectHint':a56_0x4eefa6(0x184)},'steps':{'pullingApi':'*\x20正在拉取\x20API\x20配置...','apiPullSuccess':a56_0x4eefa6(0xf7),'apiPullFailed':'!\x20API\x20配置拉取失败,可稍后手动执行:\x20lovrabet\x20api\x20pull','apiPullError':a56_0x4eefa6(0x213),'updatingPackage':'*\x20正在更新\x20package.json\x20的\x20name\x20和\x20description\x20字段','packageUpdated':'√\x20package.json\x20已更新:\x20name={{name}}','configuringAppCode':'*\x20正在为项目\x20{{name}}\x20配置应用AppCode:\x20{{appCode}}','creatingConfig':a56_0x4eefa6(0x1bb),'configCreatedWithAppCode':a56_0x4eefa6(0x155),'configCreated':'√\x20配置文件已创建,可稍后使用\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27\x20配置','configuringMcp':a56_0x4eefa6(0x1bf),'mcpConfigComplete':a56_0x4eefa6(0x1a1),'cleaningUp':a56_0x4eefa6(0x1a0),'projectName':{'label':a56_0x4eefa6(0x10f)},'appCode':{'label':a56_0x4eefa6(0x231),'notSet':'未设置'},'apiPull':{'label':a56_0x4eefa6(0x1e9)},'lovrabetSetup':{'label':a56_0x4eefa6(0x21d),'ideCount':a56_0x4eefa6(0x156)},'login':{'label':a56_0x4eefa6(0x1ea),'loggedIn':'已登录','failed':a56_0x4eefa6(0x229),'skipped':a56_0x4eefa6(0x221)}},'title':'*\x20创建新项目','completedStep':a56_0x4eefa6(0x16c),'input':{'projectName':{'label':a56_0x4eefa6(0x199),'hint':a56_0x4eefa6(0x126)},'appCode':{'label':'*\x20应用AppCode\x20','optional':a56_0x4eefa6(0x22b),'hint':a56_0x4eefa6(0x19f)}},'login':{'checking':a56_0x4eefa6(0x1fe),'checkingStatus':a56_0x4eefa6(0x23d),'valid':'√\x20检测到有效登录状态','notDetected':a56_0x4eefa6(0x1a9),'prompt':a56_0x4eefa6(0x109),'inProgress':'*\x20正在登录,请前往浏览器完成登录...','inProgressStatus':'\x20登录中...'},'apiPull':{'confirm':a56_0x4eefa6(0x21a),'recommendation':a56_0x4eefa6(0xe9)},'lovrabetSetup':{'confirm':'*\x20是否配置\x20Lovrabet\x20MCP\x20和\x20Skill?','selectIdeHint':a56_0x4eefa6(0x11e),'selectIdeTitle':a56_0x4eefa6(0x176),'keyboardShortcuts':'↑/↓:\x20移动\x20空格:\x20切换\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认','inProgress':'*\x20正在配置\x20Lovrabet\x20MCP\x20和\x20Skill...','mcpCompleted':'✓\x20MCP\x20服务器配置完成:','skillCompleted':a56_0x4eefa6(0x18f)},'creating':a56_0x4eefa6(0x246),'display':{'projectName':a56_0x4eefa6(0x18c),'appCode':a56_0x4eefa6(0x1c9)},'packageJson':{'updating':'*\x20正在更新\x20package.json\x20的\x20name\x20和\x20description\x20字段','updated':a56_0x4eefa6(0x110)},'config':{'configuringAppCode':a56_0x4eefa6(0x20e),'creating':a56_0x4eefa6(0x1bb),'createdWithAppCode':a56_0x4eefa6(0x155),'createdWithoutAppCode':'√\x20配置文件已创建,可稍后使用\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27\x20配置'},'cleanup':{'inProgress':a56_0x4eefa6(0x1a0)},'results':{'mcpComplete':a56_0x4eefa6(0x13e),'skillComplete':a56_0x4eefa6(0x18f),'nextSteps':a56_0x4eefa6(0xef)},'nextSteps':{'configureMcpAndSkill':'1.\x20配置\x20Lovrabet\x20MCP\x20和\x20Skill','skill':a56_0x4eefa6(0x14d),'mcp':'\x20\x20•\x20MCP\x20服务器:','startProject':'启动项目:','pullApi':a56_0x4eefa6(0x222),'configAppCode':a56_0x4eefa6(0x1f6)},'errors':{'createFailed':a56_0x4eefa6(0x232),'cleanupFailed':'清理项目目录失败','depsInstallFailed':a56_0x4eefa6(0x1a7)},'nonInteractive':{'creating':'*\x20正在创建项目\x20{{name}}...','templateCreated':a56_0x4eefa6(0x21b),'packageJsonUpdated':a56_0x4eefa6(0xf0),'installingDeps':a56_0x4eefa6(0x146),'depsSkipped':'\x20\x20√\x20依赖安装跳过(非交互模式)','codeFormatted':'\x20\x20√\x20代码已格式化','envConfigured':a56_0x4eefa6(0x20c),'success':a56_0x4eefa6(0x163)},'tasks':{'copyFiles':'复制项目文件','formatCode':a56_0x4eefa6(0x175),'installDependencies':a56_0x4eefa6(0x1e0)},'nextStepsAlt':{'startProject':a56_0x4eefa6(0x214),'pullApi':'拉取API配置:\x20','configureLovrabet':a56_0x4eefa6(0x196)}},'config':{'title':a56_0x4eefa6(0x12b),'help':{'invalidCommand':a56_0x4eefa6(0x169),'examples':'配置示例:','set':a56_0x4eefa6(0x22d),'get':a56_0x4eefa6(0x100),'list':a56_0x4eefa6(0x171),'exampleApp':a56_0x4eefa6(0x111),'exampleEnv':a56_0x4eefa6(0x1f0),'exampleLocale':'设置显示语言\x20(zh/en)'},'validation':{'envInvalid':a56_0x4eefa6(0x1f2),'localeInvalid':'locale\x20配置值无效,支持的值:\x20zh,\x20en,\x20zh-CN,\x20en-US','valueInvalid':a56_0x4eefa6(0x1e2),'noValue':a56_0x4eefa6(0x13d),'saveFailed':'保存配置失败'},'success':{'envSet':a56_0x4eefa6(0x1f3),'localeSet':a56_0x4eefa6(0x203)},'scope':{'project':'项目','global':'全局'}},'api':{'title':a56_0x4eefa6(0x225),'pull':a56_0x4eefa6(0xea),'doc':a56_0x4eefa6(0x15d),'help':{'title':'lovrabet\x20api\x20-\x20API\x20相关操作','usage':a56_0x4eefa6(0x1df),'options':a56_0x4eefa6(0x1a3),'optAppcode':'指定应用代码','optOutput':'指定输出目录(pull:\x20./src/api/,doc:\x20./docs)','optEnv':'指定环境(如:daily、online)','optDatasetcode':a56_0x4eefa6(0x14b),'optHelp':'显示此帮助信息','examples':'示例:','pullDesc':a56_0x4eefa6(0x1c8),'pullAppcode':a56_0x4eefa6(0x12f),'pullOutput':'指定输出目录','pullEnv':a56_0x4eefa6(0x238),'docDesc':a56_0x4eefa6(0x13a),'docAppcode':a56_0x4eefa6(0x12f),'docOutput':a56_0x4eefa6(0xf2),'docEnv':'指定环境生成文档','docDataset':a56_0x4eefa6(0x20f),'docDatasets':a56_0x4eefa6(0x216),'unknownCommand':a56_0x4eefa6(0x129),'availableCommands':'可用命令:'},'common':{'noPositionalArgs':'❌\x20错误:不再支持位置参数方式','useAppcodeFlag':a56_0x4eefa6(0x1fd),'noAppCode':'×\x20未配置\x20AppCode','noAppCodeHint':a56_0x4eefa6(0x1af),'noAppCodeOption1':a56_0x4eefa6(0x119),'noAppCodeOption2Pull':a56_0x4eefa6(0x17d),'noAppCodeOption2Doc':a56_0x4eefa6(0x20b),'usingConfigAppCode':'*\x20使用配置的应用AppCode:\x20{{appCode}}','usingConfigAppCodeHint':a56_0x4eefa6(0x22f),'usingSpecifiedAppCode':a56_0x4eefa6(0x177),'usingDefaultAppCode':'使用配置的应用AppCode:\x20{{appCode}}','noAppCodeDefault':a56_0x4eefa6(0x23b),'paramsInvalidJson':'×\x20--params\x20参数必须是一个有效的\x20JSON\x20对象','paramsNotJson':'×\x20--params\x20参数不是有效的\x20JSON\x20格式','paramsError':a56_0x4eefa6(0x248),'datasetcodeEmpty':a56_0x4eefa6(0x11b),'onlyGenerateDatasets':a56_0x4eefa6(0x165),'authExpired':a56_0x4eefa6(0x115),'authRetry':a56_0x4eefa6(0x1c2),'unknownError':a56_0x4eefa6(0x108)},'pullUI':{'fetching':a56_0x4eefa6(0x135),'successPull':a56_0x4eefa6(0x182),'duplicateInfo':a56_0x4eefa6(0x120),'generatedFiles':'*\x20已生成文件:','modelFile':a56_0x4eefa6(0x1b4),'clientFile':a56_0x4eefa6(0x14e),'importHint':a56_0x4eefa6(0x15e),'pullFailed':a56_0x4eefa6(0x23c)},'docUI':{'fetchingDatasets':a56_0x4eefa6(0x159),'noDatasets':a56_0x4eefa6(0x200),'datasetsNotFound':a56_0x4eefa6(0x11c),'allDatasetsNotFound':a56_0x4eefa6(0x104),'filteredDatasets':a56_0x4eefa6(0x1b3),'generatingDocs':a56_0x4eefa6(0x124),'generatingFile':a56_0x4eefa6(0x157),'docComplete':'√\x20文档生成完成!成功\x20{{successCount}}\x20个','docFailed':a56_0x4eefa6(0x192),'processedDatasets':a56_0x4eefa6(0x14f),'outputDir':a56_0x4eefa6(0x122),'generatedDocs':a56_0x4eefa6(0x13c),'failedDatasets':'⚠️\x20以下数据集生成失败:','docGenerateFailed':a56_0x4eefa6(0x147)},'fetchModel':{'fetching':a56_0x4eefa6(0x1da),'httpError':a56_0x4eefa6(0x1b2),'fetchError':'获取数据集失败:\x20{{error}}'},'generateFile':{'noAppCode':a56_0x4eefa6(0x226)},'docBatch':{'totalDatasets':'\x0a共有\x20{{count}}\x20个数据集需要生成文档\x0a','generating':'[{{current}}/{{total}}]\x20正在生成:\x20{{fileName}}.md\x20({{name}})','success':a56_0x4eefa6(0x1f5),'failed':a56_0x4eefa6(0x10a),'waiting':'等待\x203\x20秒...\x0a','docFormatError':a56_0x4eefa6(0x1ba),'httpError':a56_0x4eefa6(0xe8)},'silent':{'invalidPrefix':'×\x20文件前缀格式不正确。只能包含字母、数字、连字符和下划线,且必须以字母开头。','fetching':a56_0x4eefa6(0x135),'generating':a56_0x4eefa6(0x1e7),'modelFileName':a56_0x4eefa6(0x188),'clientFileName':a56_0x4eefa6(0x1bd),'processing':a56_0x4eefa6(0x209),'success':a56_0x4eefa6(0x182),'error':a56_0x4eefa6(0x10c)}},'auth':{'title':a56_0x4eefa6(0x118),'login':{'success':{'title':'登录成功','message':a56_0x4eefa6(0x1b9),'manualClose':a56_0x4eefa6(0x1fb)},'successCli':'登录成功!','inProgress':a56_0x4eefa6(0x106),'browserPrompt':a56_0x4eefa6(0x237),'pressEnter':a56_0x4eefa6(0x20d),'pressQToExit':a56_0x4eefa6(0x15a)},'session':{'valid':a56_0x4eefa6(0x1ca)},'server':{'starting':a56_0x4eefa6(0xe7),'loginUrl':'📍\x20登录地址:','openingBrowser':a56_0x4eefa6(0x1cb),'manualOpenHint':a56_0x4eefa6(0x128),'browserOpened':'✅\x20浏览器已自动打开,请在浏览器中完成登录','browserOpenFailed':a56_0x4eefa6(0x17f),'manualCopyUrl':a56_0x4eefa6(0x239)},'logout':{'success':a56_0x4eefa6(0x17b),'notLoggedIn':'!\x20当前未登录'}},'menu':{'sync':a56_0x4eefa6(0x186),'update':a56_0x4eefa6(0x247)},'mcp':{'cursor':a56_0x4eefa6(0x1c3),'claude':a56_0x4eefa6(0x227),'error':{'unsupportedCommand':'错误:\x20不支持的命令:\x20{{cmd}}','missingAppcode':a56_0x4eefa6(0x12e)},'help':{'title':a56_0x4eefa6(0x1ad),'availableCommands':a56_0x4eefa6(0xfe),'command':{'install':'\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择并配置\x20MCP','help':a56_0x4eefa6(0x242)},'usage':{'help':'\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20显示帮助信息','install':a56_0x4eefa6(0x174),'installCursor':a56_0x4eefa6(0x1a2),'installClaude':a56_0x4eefa6(0x138)},'configMethods':a56_0x4eefa6(0x16a),'configMethodsInteractive':a56_0x4eefa6(0xee),'configMethodsInteractiveHint':'\x20\x20\x20\x20→\x20输入编号选择\x20IDE','configMethodsDirect':a56_0x4eefa6(0x1d6),'configMethodsDirectCursor':'\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20配置\x20Cursor','configMethodsDirectClaude':a56_0x4eefa6(0x1a6),'supportedIDEs':'支持的\x20IDE:','examples':a56_0x4eefa6(0x1f9),'exampleInstall':a56_0x4eefa6(0x1bc),'exampleInstallHint':a56_0x4eefa6(0x1c1),'exampleInstallCursor':a56_0x4eefa6(0x16e),'exampleInstallCursorHint':a56_0x4eefa6(0x16d),'configGuide':a56_0x4eefa6(0x168)},'select':{'chooseIDE':a56_0x4eefa6(0x206),'cancel':a56_0x4eefa6(0x1a5),'enterNumber':a56_0x4eefa6(0x1d3),'prompt':'请选择:\x20','cancelled':a56_0x4eefa6(0x151),'invalidChoice':a56_0x4eefa6(0x143)},'installFlow':{'configuring':'\x0a📦\x20正在配置\x20{{name}}\x20MCP...\x0a','error':a56_0x4eefa6(0x17c)},'cursorConfig':{'success':a56_0x4eefa6(0x136),'configInfo':a56_0x4eefa6(0xff),'usageHint':a56_0x4eefa6(0x245),'restartRequired':'请重启\x20Cursor\x20以加载新的\x20MCP\x20配置。','error':a56_0x4eefa6(0x17c),'rules':{'exists':'Cursor\x20Rules\x20文件已存在,跳过','created':a56_0x4eefa6(0x23e),'copyFailed':'复制\x20Cursor\x20Rules\x20文件失败'},'updateExisting':a56_0x4eefa6(0x132),'createNew':a56_0x4eefa6(0x1ec),'written':'已写入\x20.cursor/mcp.json'},'claudeConfig':{'error':a56_0x4eefa6(0x17c),'agents':{'exists':a56_0x4eefa6(0x15b),'created':a56_0x4eefa6(0x127),'copyFailed':a56_0x4eefa6(0x153)},'manualCommand':a56_0x4eefa6(0x1dd),'configInfo':a56_0x4eefa6(0xff),'restartRequired':a56_0x4eefa6(0x230),'commandGenerated':'生成配置命令'},'other':{'configInfo':a56_0x4eefa6(0x243),'configGuide':a56_0x4eefa6(0x10e),'guideShown':'其他\x20IDE\x20配置指引已显示'},'config':{'env':a56_0x4eefa6(0x23a)},'install':{'starting':a56_0x4eefa6(0x1ab),'unknownIDE':a56_0x4eefa6(0x233),'otherIDE':'其他\x20IDE','success':'\x0a✓\x20{{ide}}\x20MCP\x20配置成功','failed':a56_0x4eefa6(0x12c),'completed':a56_0x4eefa6(0x23f),'manualActionRequired':a56_0x4eefa6(0x164)},'ui':{'otherIDE':'其他\x20IDE','otherIDEDescription':a56_0x4eefa6(0x14a),'selectAtLeastOne':a56_0x4eefa6(0x1f7),'selectedIDE':a56_0x4eefa6(0x234),'count':a56_0x4eefa6(0x1d5),'title':a56_0x4eefa6(0xfa),'configuring':a56_0x4eefa6(0x224),'completed':a56_0x4eefa6(0x130),'partialManual':a56_0x4eefa6(0x204),'failed':'✗\x20配置失败','manualRequired':a56_0x4eefa6(0x1f4),'pressAnyKeyToExit':a56_0x4eefa6(0x217),'unsupportedIDE':'不支持的\x20IDE:\x20{{ide}}'}},'aiSetup':{'error':{'missingAppcode':a56_0x4eefa6(0x183)},'mcp':{'cursor':{'success':a56_0x4eefa6(0x16f),'written':a56_0x4eefa6(0x19d),'error':a56_0x4eefa6(0x173),'rules':{'created':a56_0x4eefa6(0x23e),'copyFailed':a56_0x4eefa6(0x1c7)}},'claude':{'commandGenerated':'Claude\x20Code\x20MCP\x20命令已生成','manualCommand':'\x0a📋\x20请执行以下命令配置\x20Claude\x20Code\x20MCP:\x0a','configInfo':a56_0x4eefa6(0xff),'env':'\x20\x20环境:\x20{{env}}','restartRequired':a56_0x4eefa6(0x1cd),'manualExecute':a56_0x4eefa6(0x219),'agents':{'created':a56_0x4eefa6(0x127),'copyFailed':a56_0x4eefa6(0x153)}},'other':{'name':'其他','title':'\x0a📋\x20其他\x20IDE\x20MCP\x20配置:\x0a','guideShown':'配置指引已显示'},'unsupportedIDE':a56_0x4eefa6(0x185)},'skill':{'unknownIDE':'未知的\x20IDE:\x20{{ide}}','installSuccess':a56_0x4eefa6(0x18b),'itemsCreated':a56_0x4eefa6(0x228),'installFailed':a56_0x4eefa6(0x15f),'sharedCopied':a56_0x4eefa6(0x14c),'sharedCopyFailed':a56_0x4eefa6(0x1a8),'manifestCreated':a56_0x4eefa6(0x212)},'ui':{'selectAtLeastOne':a56_0x4eefa6(0x101),'confirm':{'title':a56_0x4eefa6(0x240),'mcpDescription':a56_0x4eefa6(0x193),'skillDescription':a56_0x4eefa6(0x19b),'yes':a56_0x4eefa6(0x15c),'no':a56_0x4eefa6(0x210),'default':'Enter\x20默认:\x20是'},'select':{'title':'*\x20选择要配置的\x20IDE:','mcpSection':a56_0x4eefa6(0x1e3),'skillSection':a56_0x4eefa6(0xfb),'controls':a56_0x4eefa6(0x1cf)},'installing':a56_0x4eefa6(0x190)}},'appMenu':{'error':{'missingAppCode':a56_0x4eefa6(0x23b),'appCodeHint':{'title':a56_0x4eefa6(0x1af),'option1':a56_0x4eefa6(0xfd),'option2':a56_0x4eefa6(0x244)},'authExpired':a56_0x4eefa6(0x115),'authValidationFailed':a56_0x4eefa6(0x1ae),'httpStatus':a56_0x4eefa6(0x20a),'fetchFailed':a56_0x4eefa6(0x194),'createHttpStatus':a56_0x4eefa6(0x133),'createFailed':a56_0x4eefa6(0xf9)},'info':{'emptyMenuList':'服务端返回空菜单列表'},'success':{'fetched':a56_0x4eefa6(0x18d),'created':a56_0x4eefa6(0x112)},'fetching':{'online':a56_0x4eefa6(0x208),'daily':a56_0x4eefa6(0x220)},'creating':{'single':a56_0x4eefa6(0x191),'batch':{'start':a56_0x4eefa6(0x18a),'completed':'批量创建菜单完成,共\x20{{count}}\x20个'}},'sync':{'title':'*\x20同步菜单到\x20Lovrabet\x20平台','table':{'menuName':a56_0x4eefa6(0x211),'local':'本地','lovrabetPlatform':a56_0x4eefa6(0x11d)},'error':{'noMenuSelected':a56_0x4eefa6(0x1eb),'invalidJsUrl':'请输入有效的\x20JS\x20https\x20链接','jsUrlUnreachable':a56_0x4eefa6(0x167),'invalidCssUrl':a56_0x4eefa6(0x102),'cssUrlUnreachable':a56_0x4eefa6(0x141),'createMenuFailed':a56_0x4eefa6(0x241),'authHint':{'prefix':'提示:使用\x20','suffix':a56_0x4eefa6(0x1cc)},'noLocalPages':a56_0x4eefa6(0x223)},'step':{'selectedMenus':a56_0x4eefa6(0x1ee),'selectedMenusCount':'{{count}}\x20个','jsUrl':a56_0x4eefa6(0x131),'cssUrl':a56_0x4eefa6(0x121),'selectMenus':'*\x20请选择要同步的菜单:','creating':a56_0x4eefa6(0x21c),'completed':'√\x20菜单创建完成'},'operation':{'update':'更新','create':'新建'},'loading':{'fetchingMenuList':a56_0x4eefa6(0x1c4)},'hotkeys':'↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认','input':{'jsUrl':{'label':a56_0x4eefa6(0x103),'placeholder':a56_0x4eefa6(0x166)},'cssUrl':{'label':'*\x20CSS\x20链接:\x20','placeholder':a56_0x4eefa6(0x180)}}},'updateCdn':{'title':a56_0x4eefa6(0x142),'error':{'invalidJsUrl':a56_0x4eefa6(0x17a),'jsUrlUnreachable':'JS\x20链接无法访问','invalidCssUrl':'请输入有效的\x20CSS\x20https\x20链接','cssUrlUnreachable':'CSS\x20链接无法访问','authHint':{'prefix':a56_0x4eefa6(0x1dc),'suffix':a56_0x4eefa6(0x1cc)},'noCdnLinks':a56_0x4eefa6(0x162),'updateFailed':a56_0x4eefa6(0x1b6)},'loading':{'fetching':a56_0x4eefa6(0x21f),'syncing':'\x20资源正在同步中...'},'action':{'continue':'继续更新','cancel':a56_0x4eefa6(0x1b8)},'success':{'updated':a56_0x4eefa6(0x1ed),'synced':a56_0x4eefa6(0x19a)},'updating':'正在更新菜单资源链接:\x20{{label}}\x20({{path}})','preview':{'title':'*\x20待更新的菜单&资源链接','menuList':'待更新的菜单列表:','resourceLinks':a56_0x4eefa6(0x140)},'input':{'title':a56_0x4eefa6(0x145),'jsUrl':{'label':a56_0x4eefa6(0xf6),'placeholder':a56_0x4eefa6(0x1ff)},'cssUrl':{'label':a56_0x4eefa6(0x1aa),'placeholder':'输入项目的\x20CSS\x20资源链接(https://...)'}}}},'skill':{'install':a56_0x4eefa6(0x13f),'error':{'unsupportedCommand':'错误:\x20不支持的命令:\x20{{cmd}}','installFailed':a56_0x4eefa6(0x158),'unknownPlatform':a56_0x4eefa6(0x1fc),'unknownIDE':'\x20\x20✗\x20未知的\x20IDE:\x20{{ide}}','noValidIDE':a56_0x4eefa6(0x1e1),'selectAtLeastOne':a56_0x4eefa6(0x1f7)},'errorHint':{'availableCommands':a56_0x4eefa6(0xfe),'installInteractive':'\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择并安装技能包','installDirect':a56_0x4eefa6(0x150),'showHelp':a56_0x4eefa6(0x116),'usageExamples':a56_0x4eefa6(0x218),'exampleInteractive':a56_0x4eefa6(0x12d),'exampleDirect':a56_0x4eefa6(0x123)},'select':{'title':a56_0x4eefa6(0x19e),'installAll':'全部安装','cancel':'取消','inputFormat':a56_0x4eefa6(0x1b5),'inputHint':a56_0x4eefa6(0x172),'prompt':a56_0x4eefa6(0x105),'cancelled':a56_0x4eefa6(0x125),'noneSelected':a56_0x4eefa6(0x181),'selectedIDE':a56_0x4eefa6(0x234),'count':'{{count}}\x20个'},'cdn':{'fetching':'正在从\x20CDN\x20拉取开发者指南...','fetchingExtend':a56_0x4eefa6(0x21e),'fetchSuccess':a56_0x4eefa6(0x152),'fetchFailed':a56_0x4eefa6(0xf5)},'installing':{'title':a56_0x4eefa6(0x179),'progress':a56_0x4eefa6(0x1c5),'ide':a56_0x4eefa6(0x11a),'installed':a56_0x4eefa6(0x1d4),'created':'\x20\x20✓\x20创建\x20{{path}}','createdDir':a56_0x4eefa6(0x1d9),'createdManifest':a56_0x4eefa6(0x1b1)},'done':{'success':a56_0x4eefa6(0xed),'successInline':'✓\x20技能包安装成功!共安装\x20{{count}}\x20个目录','guidesLocation':'开发者指南位置:','guidesPath':a56_0x4eefa6(0x202),'guidesPathInline':a56_0x4eefa6(0x178),'pressAnyKey':a56_0x4eefa6(0x217)},'generic':'通用模板','help':{'title':'Lovrabet\x20Skill\x20-\x20开发者技能包安装工具','usage':'用法:','showHelp':a56_0x4eefa6(0x1d0),'installInteractive':a56_0x4eefa6(0x1f1),'installDirect':a56_0x4eefa6(0x113),'installAll':a56_0x4eefa6(0x1be),'installWithBff':a56_0x4eefa6(0x149),'installMethods':a56_0x4eefa6(0x107),'interactiveSelect':a56_0x4eefa6(0x1e8),'interactiveKeys':'\x20\x20\x20\x20→\x20使用\x20↑↓\x20移动光标,空格选中/取消,Enter\x20确认\x0a\x20\x20\x20\x20→\x20按\x20a\x20全选,按\x20i/r\x20反选,按\x20q\x20退出','directInstall':'\x20\x20直接安装指定\x20IDE\x20(支持多个)\x20\x20\x20\x20\x20\x20\x20-\x20使用\x20--ide\x20标志直接安装','bffWorkflow':a56_0x4eefa6(0x139),'supportedIDEs':a56_0x4eefa6(0x10d),'agentDesc':'其他\x20(通用模板)\x20(.agent/skills/)\x20-\x20兜底方案','allDesc':a56_0x4eefa6(0x201),'options':a56_0x4eefa6(0xf4),'bffOption':a56_0x4eefa6(0x12a),'skillContents':a56_0x4eefa6(0x1ac),'skillContentsList':a56_0x4eefa6(0x1de),'examples':'示例:','exampleInteractive':a56_0x4eefa6(0x1c1),'exampleDirectDesc':'\x20\x20\x20\x20→\x20直接安装\x20Cursor\x20和\x20claude\x20code\x20技能包','exampleBffDesc':'\x20\x20\x20\x20→\x20安装技能包并包含\x20Backend\x20Function\x20同步工作流','exampleAllDesc':a56_0x4eefa6(0x19c),'afterInstall':a56_0x4eefa6(0x22c),'afterInstallList':'\x20\x20-\x20IDE\x20特定配置文件\x20(.cursorrules,\x20.windsurf/,\x20.claude/,\x20.cline/,\x20.codex/,\x20.opencode/,\x20.qoder/,\x20.codebuddy/,\x20.trae/)\x0a\x20\x20-\x20.lovrabet/skill/.shared/guides/\x20\x20-\x20开发者技能指南','guidesLocationTitle':'开发者指南位置:'}},'logs':{'title':'日志','view':'查看日志','clear':a56_0x4eefa6(0x18e),'noLogs':a56_0x4eefa6(0x10b),'header':'*\x20Lovrabet\x20CLI\x20日志记录:\x0a','time':a56_0x4eefa6(0x1c0),'duration':a56_0x4eefa6(0x195),'details':a56_0x4eefa6(0x1ce),'cleared':a56_0x4eefa6(0x197)},'start':{'starting':a56_0x4eefa6(0x1e6)},'build':{'building':a56_0x4eefa6(0x1d2)},'preview':{'previewing':'正在预览项目...','watchMode':a56_0x4eefa6(0xfc)},'ui':{'ideSelector':{'title':a56_0x4eefa6(0x161),'hotkeys':a56_0x4eefa6(0x215)}},'upgrade':{'cli':{'title':a56_0x4eefa6(0x235),'current':a56_0x4eefa6(0xeb),'stable':'\x20\x20\x20稳定版本:\x20{{version}}','command':'\x20\x20\x20升级命令:\x20{{command}}'},'sdk':{'title':'↪\x20SDK\x20版本更新','current':'\x20\x20\x20当前版本:\x20{{package}}@{{version}}','stable':a56_0x4eefa6(0x17e),'command':a56_0x4eefa6(0x134)}}};
|
|
1
|
+
function a56_0x3fb4(_0xcc60cd,_0x487786){_0xcc60cd=_0xcc60cd-0x18f;var _0xec6eeb=a56_0xec6e();var _0x3fb42e=_0xec6eeb[_0xcc60cd];return _0x3fb42e;}var a56_0x5cc0a0=a56_0x3fb4;(function(_0x39b3ba,_0x249ba4){var _0x35bda8=a56_0x3fb4,_0x316f19=_0x39b3ba();while(!![]){try{var _0x4ab09f=parseInt(_0x35bda8(0x273))/0x1*(parseInt(_0x35bda8(0x220))/0x2)+-parseInt(_0x35bda8(0x2da))/0x3*(parseInt(_0x35bda8(0x26d))/0x4)+parseInt(_0x35bda8(0x272))/0x5+-parseInt(_0x35bda8(0x2e0))/0x6+-parseInt(_0x35bda8(0x25a))/0x7*(parseInt(_0x35bda8(0x28f))/0x8)+parseInt(_0x35bda8(0x279))/0x9*(-parseInt(_0x35bda8(0x1fb))/0xa)+-parseInt(_0x35bda8(0x20b))/0xb*(-parseInt(_0x35bda8(0x298))/0xc);if(_0x4ab09f===_0x249ba4)break;else _0x316f19['push'](_0x316f19['shift']());}catch(_0x5b3c99){_0x316f19['push'](_0x316f19['shift']());}}}(a56_0xec6e,0xbcaa4));export default{'common':{'success':'成功','error':'错误','warning':'警告','info':'信息','loading':'加载中...','cancel':'取消','confirm':'确认','next':a56_0x5cc0a0(0x22f),'previous':'上一步','finish':'完成'},'help':{'invalidCommand':a56_0x5cc0a0(0x1da),'usageHint':'使用','viewCommands':a56_0x5cc0a0(0x2f9)},'cli':{'usage':'使用','examples':'示例','description':'描述'},'init':{'inputAppCode':'请输入应用代码\x20(AppCode):','appCodeDesc':a56_0x5cc0a0(0x1c9),'fileExists':a56_0x5cc0a0(0x2a4),'creating':a56_0x5cc0a0(0x27c),'success':a56_0x5cc0a0(0x2e5),'appCodeLabel':a56_0x5cc0a0(0x235),'nextSteps':a56_0x5cc0a0(0x2be),'validation':{'required':a56_0x5cc0a0(0x2b7),'tooLong':a56_0x5cc0a0(0x1b6),'invalidFormat':a56_0x5cc0a0(0x261),'invalidCode':a56_0x5cc0a0(0x299)}},'create':{'projectNameLabel':a56_0x5cc0a0(0x21b),'appCodeLabel':a56_0x5cc0a0(0x270),'validation':{'required':a56_0x5cc0a0(0x1d2),'invalidChars':a56_0x5cc0a0(0x1d3),'tooLong':a56_0x5cc0a0(0x2cf),'dirExists':a56_0x5cc0a0(0x240),'noPermission':a56_0x5cc0a0(0x1ce),'projectName':{'tooLong':a56_0x5cc0a0(0x1a9),'invalidFormat':'项目名只能以字母或数字开头,且只包含字母、数字、-\x20和\x20_','invalid':a56_0x5cc0a0(0x1d4),'dirExistsShort':a56_0x5cc0a0(0x291)},'appCode':{'tooLong':a56_0x5cc0a0(0x24c),'invalidFormat':a56_0x5cc0a0(0x1d8),'invalid':a56_0x5cc0a0(0x20a)},'ide':{'required':'请至少选择一个\x20IDE'}},'common':{'yes':'是','no':'否','selectHint':a56_0x5cc0a0(0x2f5)},'steps':{'pullingApi':a56_0x5cc0a0(0x24e),'apiPullSuccess':a56_0x5cc0a0(0x20f),'apiPullFailed':a56_0x5cc0a0(0x2fe),'apiPullError':a56_0x5cc0a0(0x267),'updatingPackage':'*\x20正在更新\x20package.json\x20的\x20name\x20和\x20description\x20字段','packageUpdated':a56_0x5cc0a0(0x1e7),'configuringAppCode':a56_0x5cc0a0(0x2a7),'creatingConfig':'*\x20正在为项目\x20{{name}}\x20创建配置文件','configCreatedWithAppCode':a56_0x5cc0a0(0x2ef),'configCreated':a56_0x5cc0a0(0x19d),'configuringMcp':a56_0x5cc0a0(0x2c1),'mcpConfigComplete':a56_0x5cc0a0(0x1e5),'cleaningUp':'*\x20清理失败的项目目录:\x20{{dir}}','projectName':{'label':a56_0x5cc0a0(0x1c8)},'appCode':{'label':a56_0x5cc0a0(0x270),'notSet':a56_0x5cc0a0(0x294)},'apiPull':{'label':a56_0x5cc0a0(0x25e)},'lovrabetSetup':{'label':a56_0x5cc0a0(0x282),'ideCount':a56_0x5cc0a0(0x2a1)},'login':{'label':a56_0x5cc0a0(0x1e8),'loggedIn':a56_0x5cc0a0(0x265),'failed':a56_0x5cc0a0(0x1bf),'skipped':a56_0x5cc0a0(0x232)}},'title':a56_0x5cc0a0(0x2ab),'completedStep':a56_0x5cc0a0(0x213),'input':{'projectName':{'label':a56_0x5cc0a0(0x21c),'hint':a56_0x5cc0a0(0x1ca)},'appCode':{'label':a56_0x5cc0a0(0x1e2),'optional':a56_0x5cc0a0(0x1db),'hint':'绑定应用AppCode可自动配置\x20API,如:\x20app-c4c89304\x20(直接回车跳过)'}},'login':{'checking':a56_0x5cc0a0(0x230),'checkingStatus':'\x20检查中...','valid':'√\x20检测到有效登录状态','notDetected':a56_0x5cc0a0(0x243),'prompt':a56_0x5cc0a0(0x22b),'inProgress':a56_0x5cc0a0(0x1a8),'inProgressStatus':a56_0x5cc0a0(0x281)},'apiPull':{'confirm':a56_0x5cc0a0(0x2c2),'recommendation':a56_0x5cc0a0(0x1d1)},'lovrabetSetup':{'confirm':a56_0x5cc0a0(0x2d7),'selectIdeHint':'\x20\x20使用\x20←→\x20返回修改选择,回车确认\x20IDE','selectIdeTitle':'选择要配置的\x20IDE:','keyboardShortcuts':a56_0x5cc0a0(0x218),'inProgress':a56_0x5cc0a0(0x2c1),'mcpCompleted':a56_0x5cc0a0(0x1ec),'skillCompleted':a56_0x5cc0a0(0x219)},'creating':a56_0x5cc0a0(0x1fe),'display':{'projectName':a56_0x5cc0a0(0x239),'appCode':a56_0x5cc0a0(0x205)},'packageJson':{'updating':a56_0x5cc0a0(0x225),'updated':a56_0x5cc0a0(0x1e7)},'config':{'configuringAppCode':a56_0x5cc0a0(0x2a7),'creating':'*\x20正在为项目\x20{{name}}\x20创建配置文件','createdWithAppCode':a56_0x5cc0a0(0x2ef),'createdWithoutAppCode':a56_0x5cc0a0(0x19d)},'cleanup':{'inProgress':a56_0x5cc0a0(0x2ce)},'results':{'mcpComplete':a56_0x5cc0a0(0x1ec),'skillComplete':'✓\x20Skill\x20安装完成:','nextSteps':a56_0x5cc0a0(0x1e4)},'nextSteps':{'configureMcpAndSkill':a56_0x5cc0a0(0x2fb),'skill':a56_0x5cc0a0(0x2ed),'mcp':a56_0x5cc0a0(0x264),'startProject':'启动项目:','pullApi':a56_0x5cc0a0(0x26c),'configAppCode':'配置AppCode:'},'errors':{'createFailed':'×\x20项目创建失败:\x20{{error}}','cleanupFailed':a56_0x5cc0a0(0x2df),'depsInstallFailed':a56_0x5cc0a0(0x238)},'nonInteractive':{'creating':'*\x20正在创建项目\x20{{name}}...','templateCreated':a56_0x5cc0a0(0x192),'packageJsonUpdated':a56_0x5cc0a0(0x21e),'installingDeps':'\x20\x20正在安装依赖...','depsSkipped':a56_0x5cc0a0(0x27b),'codeFormatted':a56_0x5cc0a0(0x19f),'envConfigured':a56_0x5cc0a0(0x2f3),'success':'\x0a√\x20项目\x20{{name}}\x20创建成功!'},'tasks':{'copyFiles':a56_0x5cc0a0(0x1c7),'formatCode':a56_0x5cc0a0(0x229),'installDependencies':a56_0x5cc0a0(0x251)},'nextStepsAlt':{'startProject':a56_0x5cc0a0(0x210),'pullApi':a56_0x5cc0a0(0x25d),'configureLovrabet':a56_0x5cc0a0(0x2fb)}},'config':{'title':'项目配置','help':{'invalidCommand':'无效的命令,可用命令如下:','examples':'配置示例:','set':a56_0x5cc0a0(0x27a),'get':a56_0x5cc0a0(0x2db),'list':a56_0x5cc0a0(0x1ba),'exampleApp':'配置当前项目的\x20App\x20Code','exampleEnv':a56_0x5cc0a0(0x2f6),'exampleLocale':'设置显示语言\x20(zh/en)'},'validation':{'envInvalid':a56_0x5cc0a0(0x23a),'localeInvalid':a56_0x5cc0a0(0x1b5),'valueInvalid':a56_0x5cc0a0(0x292),'noValue':a56_0x5cc0a0(0x1f6),'saveFailed':a56_0x5cc0a0(0x24a)},'success':{'envSet':'✓\x20{{scope}}环境配置已设置为:\x20{{value}}','localeSet':a56_0x5cc0a0(0x297)},'scope':{'project':'项目','global':'全局'}},'api':{'title':a56_0x5cc0a0(0x2a5),'pull':a56_0x5cc0a0(0x216),'doc':a56_0x5cc0a0(0x268),'help':{'title':'lovrabet\x20api\x20-\x20API\x20相关操作','usage':'用法:','options':'选项:','optAppcode':a56_0x5cc0a0(0x195),'optOutput':a56_0x5cc0a0(0x274),'optEnv':a56_0x5cc0a0(0x256),'optDatasetcode':'指定要生成文档的数据集代码(多个用逗号分隔,仅\x20doc\x20命令)','optHelp':a56_0x5cc0a0(0x1e0),'examples':a56_0x5cc0a0(0x221),'pullDesc':'拉取并生成\x20API\x20配置文件','pullAppcode':a56_0x5cc0a0(0x2b3),'pullOutput':a56_0x5cc0a0(0x2fa),'pullEnv':a56_0x5cc0a0(0x2f8),'docDesc':a56_0x5cc0a0(0x1d7),'docAppcode':a56_0x5cc0a0(0x2b3),'docOutput':a56_0x5cc0a0(0x1f9),'docEnv':a56_0x5cc0a0(0x2f0),'docDataset':a56_0x5cc0a0(0x1f1),'docDatasets':a56_0x5cc0a0(0x2d2),'unknownCommand':a56_0x5cc0a0(0x29d),'availableCommands':a56_0x5cc0a0(0x2dc)},'common':{'noPositionalArgs':a56_0x5cc0a0(0x18f),'useAppcodeFlag':'请使用\x20--appcode\x20参数,例如:','noAppCode':a56_0x5cc0a0(0x2b2),'noAppCodeHint':a56_0x5cc0a0(0x237),'noAppCodeOption1':'\x20\x20\x201.\x20配置默认值:\x20lovrabet\x20config\x20set\x20appcode\x20<app-code>','noAppCodeOption2Pull':a56_0x5cc0a0(0x1c3),'noAppCodeOption2Doc':'\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20doc\x20--appcode\x20<app-code>','usingConfigAppCode':a56_0x5cc0a0(0x21d),'usingConfigAppCodeHint':a56_0x5cc0a0(0x1b4),'usingSpecifiedAppCode':a56_0x5cc0a0(0x1ad),'usingDefaultAppCode':a56_0x5cc0a0(0x2e9),'noAppCodeDefault':a56_0x5cc0a0(0x22c),'paramsInvalidJson':a56_0x5cc0a0(0x2cd),'paramsNotJson':a56_0x5cc0a0(0x212),'paramsError':a56_0x5cc0a0(0x28a),'datasetcodeEmpty':a56_0x5cc0a0(0x2c7),'onlyGenerateDatasets':a56_0x5cc0a0(0x242),'authExpired':a56_0x5cc0a0(0x254),'authRetry':'重新登录后再试','unknownError':'未知错误'},'pullUI':{'fetching':a56_0x5cc0a0(0x2b8),'successPull':a56_0x5cc0a0(0x23f),'duplicateInfo':a56_0x5cc0a0(0x1c2),'generatedFiles':a56_0x5cc0a0(0x1eb),'modelFile':a56_0x5cc0a0(0x2eb),'clientFile':'-\x20客户端实例文件','importHint':a56_0x5cc0a0(0x1a1),'pullFailed':a56_0x5cc0a0(0x2f2)},'docUI':{'fetchingDatasets':'正在获取数据集列表...','noDatasets':a56_0x5cc0a0(0x1d6),'datasetsNotFound':a56_0x5cc0a0(0x24d),'allDatasetsNotFound':a56_0x5cc0a0(0x197),'filteredDatasets':'*\x20从\x20{{total}}\x20个数据集中筛选出\x20{{count}}\x20个匹配的数据集','generatingDocs':a56_0x5cc0a0(0x1ed),'generatingFile':'正在生成\x20{{fileName}}.md\x20({{current}}/{{total}})','docComplete':a56_0x5cc0a0(0x1e3),'docFailed':a56_0x5cc0a0(0x2e2),'processedDatasets':a56_0x5cc0a0(0x255),'outputDir':a56_0x5cc0a0(0x1a7),'generatedDocs':'*\x20生成的文档文件:','failedDatasets':a56_0x5cc0a0(0x2e3),'docGenerateFailed':a56_0x5cc0a0(0x263)},'fetchModel':{'fetching':'正在从服务器拉取模型列表...\x20(环境:\x20{{env}})','httpError':'获取数据集失败,HTTP状态码:\x20{{status}}','fetchError':'获取数据集失败:\x20{{error}}'},'generateFile':{'noAppCode':a56_0x5cc0a0(0x2bd)},'docBatch':{'totalDatasets':a56_0x5cc0a0(0x211),'generating':a56_0x5cc0a0(0x1ea),'success':a56_0x5cc0a0(0x27d),'failed':a56_0x5cc0a0(0x2e1),'waiting':a56_0x5cc0a0(0x1f0),'docFormatError':'响应数据格式错误\x20({{datasetCode}}):缺少\x20data.markdown\x20字段','httpError':a56_0x5cc0a0(0x2c0)},'silent':{'invalidPrefix':a56_0x5cc0a0(0x1fa),'fetching':a56_0x5cc0a0(0x2b8),'generating':'*\x20开始生成\x20API\x20配置文件:','modelFileName':'\x20\x20\x20•\x20{{name}}.ts\x20-\x20模型配置文件','clientFileName':a56_0x5cc0a0(0x1e1),'processing':'*\x20正在处理\x20{{count}}\x20个数据集...','success':a56_0x5cc0a0(0x23f),'error':a56_0x5cc0a0(0x21f)}},'auth':{'title':'登录认证','login':{'success':{'title':a56_0x5cc0a0(0x1cb),'message':a56_0x5cc0a0(0x1a4),'manualClose':'无法自动关闭窗口,请手动关闭此标签页或窗口。'},'successCli':a56_0x5cc0a0(0x2ba),'inProgress':a56_0x5cc0a0(0x2cb),'browserPrompt':a56_0x5cc0a0(0x1b7),'pressEnter':'*\x20按回车开始登录。','pressQToExit':a56_0x5cc0a0(0x2ea)},'session':{'valid':a56_0x5cc0a0(0x29a)},'server':{'starting':a56_0x5cc0a0(0x246),'loginUrl':a56_0x5cc0a0(0x2ae),'openingBrowser':a56_0x5cc0a0(0x2bf),'manualOpenHint':'💡\x20如果浏览器没有自动打开,请手动复制上面的登录地址到浏览器中打开','browserOpened':a56_0x5cc0a0(0x204),'browserOpenFailed':'⚠️\x20\x20无法自动打开浏览器','manualCopyUrl':'🔗\x20请手动复制登录地址到浏览器:'},'logout':{'success':a56_0x5cc0a0(0x200),'notLoggedIn':'!\x20当前未登录'}},'menu':{'sync':a56_0x5cc0a0(0x26a),'update':a56_0x5cc0a0(0x1f7)},'mcp':{'cursor':a56_0x5cc0a0(0x2a2),'claude':'Claude\x20Code','error':{'unsupportedCommand':a56_0x5cc0a0(0x1b3),'missingAppcode':a56_0x5cc0a0(0x2e8)},'help':{'title':a56_0x5cc0a0(0x193),'availableCommands':a56_0x5cc0a0(0x1de),'command':{'install':a56_0x5cc0a0(0x1fc),'help':a56_0x5cc0a0(0x227)},'usage':{'help':a56_0x5cc0a0(0x22d),'install':'\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20交互式选择并配置\x20MCP','installCursor':a56_0x5cc0a0(0x28c),'installClaude':a56_0x5cc0a0(0x22a)},'configMethods':'配置方式:','configMethodsInteractive':a56_0x5cc0a0(0x20d),'configMethodsInteractiveHint':a56_0x5cc0a0(0x1ff),'configMethodsDirect':'\x20\x20直接配置指定\x20IDE\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20使用\x20--ide\x20标志直接配置','configMethodsDirectCursor':a56_0x5cc0a0(0x22e),'configMethodsDirectClaude':a56_0x5cc0a0(0x1f2),'supportedIDEs':a56_0x5cc0a0(0x27f),'examples':a56_0x5cc0a0(0x1b8),'exampleInstall':a56_0x5cc0a0(0x1cd),'exampleInstallHint':'\x20\x20\x20\x20→\x20交互式选择\x20IDE','exampleInstallCursor':a56_0x5cc0a0(0x207),'exampleInstallCursorHint':a56_0x5cc0a0(0x25c),'configGuide':'配置指南:'},'select':{'chooseIDE':'\x0a请选择要配置\x20MCP\x20的\x20IDE:\x0a','cancel':a56_0x5cc0a0(0x217),'enterNumber':a56_0x5cc0a0(0x295),'prompt':'请选择:\x20','cancelled':a56_0x5cc0a0(0x286),'invalidChoice':'\x0a无效的选择,请输入\x201-{{count}}\x20之间的数字\x0a'},'installFlow':{'configuring':a56_0x5cc0a0(0x2b6),'error':a56_0x5cc0a0(0x260)},'cursorConfig':{'success':a56_0x5cc0a0(0x1e9),'configInfo':a56_0x5cc0a0(0x1b2),'usageHint':a56_0x5cc0a0(0x1f4),'restartRequired':'请重启\x20Cursor\x20以加载新的\x20MCP\x20配置。','error':'\x0a错误:\x20配置失败\x20-\x20{{error}}\x0a','rules':{'exists':'Cursor\x20Rules\x20文件已存在,跳过','created':a56_0x5cc0a0(0x293),'copyFailed':a56_0x5cc0a0(0x28d)},'updateExisting':a56_0x5cc0a0(0x2b5),'createNew':'创建新的\x20mcp.json\x20配置','written':a56_0x5cc0a0(0x289)},'claudeConfig':{'error':'\x0a错误:\x20配置失败\x20-\x20{{error}}\x0a','agents':{'exists':a56_0x5cc0a0(0x2e4),'created':a56_0x5cc0a0(0x1cc),'copyFailed':a56_0x5cc0a0(0x19a)},'manualCommand':a56_0x5cc0a0(0x199),'configInfo':a56_0x5cc0a0(0x1b2),'restartRequired':a56_0x5cc0a0(0x1a3),'commandGenerated':a56_0x5cc0a0(0x19e)},'other':{'configInfo':a56_0x5cc0a0(0x2ac),'configGuide':'详细配置指南:\x20https://help.yuntoo.com/mcp/config-guide','guideShown':a56_0x5cc0a0(0x2a0)},'config':{'env':a56_0x5cc0a0(0x29f)},'install':{'starting':a56_0x5cc0a0(0x228),'unknownIDE':a56_0x5cc0a0(0x1a6),'otherIDE':a56_0x5cc0a0(0x1bb),'success':'\x0a✓\x20{{ide}}\x20MCP\x20配置成功','failed':a56_0x5cc0a0(0x247),'completed':a56_0x5cc0a0(0x271),'manualActionRequired':a56_0x5cc0a0(0x258)},'ui':{'otherIDE':a56_0x5cc0a0(0x1bb),'otherIDEDescription':a56_0x5cc0a0(0x23c),'selectAtLeastOne':'请至少选择一个\x20IDE','selectedIDE':a56_0x5cc0a0(0x1f8),'count':a56_0x5cc0a0(0x202),'title':a56_0x5cc0a0(0x25f),'configuring':a56_0x5cc0a0(0x2a6),'completed':a56_0x5cc0a0(0x2b4),'partialManual':'⚠️\x20部分配置需要手动完成','failed':a56_0x5cc0a0(0x2a8),'manualRequired':'⚠️\x20配置需要手动完成','pressAnyKeyToExit':a56_0x5cc0a0(0x2b0),'unsupportedIDE':a56_0x5cc0a0(0x2c4)}},'aiSetup':{'error':{'missingAppcode':'需要先配置\x20appcode'},'mcp':{'cursor':{'success':'Cursor\x20MCP\x20配置成功','written':a56_0x5cc0a0(0x289),'error':a56_0x5cc0a0(0x215),'rules':{'created':a56_0x5cc0a0(0x293),'copyFailed':a56_0x5cc0a0(0x28d)}},'claude':{'commandGenerated':a56_0x5cc0a0(0x2fc),'manualCommand':a56_0x5cc0a0(0x28b),'configInfo':a56_0x5cc0a0(0x1b2),'env':a56_0x5cc0a0(0x20c),'restartRequired':a56_0x5cc0a0(0x253),'manualExecute':a56_0x5cc0a0(0x1d0),'agents':{'created':a56_0x5cc0a0(0x1cc),'copyFailed':a56_0x5cc0a0(0x19a)}},'other':{'name':'其他','title':a56_0x5cc0a0(0x2b1),'guideShown':a56_0x5cc0a0(0x2d3)},'unsupportedIDE':a56_0x5cc0a0(0x244)},'skill':{'unknownIDE':a56_0x5cc0a0(0x1a6),'installSuccess':'{{name}}\x20技能包安装成功','itemsCreated':a56_0x5cc0a0(0x241),'installFailed':a56_0x5cc0a0(0x2f4),'sharedCopied':a56_0x5cc0a0(0x284),'sharedCopyFailed':a56_0x5cc0a0(0x2c9),'manifestCreated':a56_0x5cc0a0(0x278)},'ui':{'selectAtLeastOne':a56_0x5cc0a0(0x2dd),'confirm':{'title':a56_0x5cc0a0(0x1dc),'mcpDescription':'•\x20MCP:\x20让\x20AI\x20直接访问\x20Lovrabet\x20数据集','skillDescription':'•\x20Skill:\x20安装研发最佳实践、Backend\x20Function\x20规范','yes':a56_0x5cc0a0(0x2b9),'no':a56_0x5cc0a0(0x250),'default':a56_0x5cc0a0(0x191)},'select':{'title':a56_0x5cc0a0(0x288),'mcpSection':a56_0x5cc0a0(0x1fd),'skillSection':a56_0x5cc0a0(0x2d5),'controls':a56_0x5cc0a0(0x198)},'installing':a56_0x5cc0a0(0x20e)}},'appMenu':{'error':{'missingAppCode':a56_0x5cc0a0(0x22c),'appCodeHint':{'title':a56_0x5cc0a0(0x237),'option1':a56_0x5cc0a0(0x252),'option2':'\x20\x20\x202.\x20配置默认值:\x20lovrabet\x20config\x20set\x20app\x20<app-code>'},'authExpired':a56_0x5cc0a0(0x254),'authValidationFailed':a56_0x5cc0a0(0x1dd),'httpStatus':a56_0x5cc0a0(0x224),'fetchFailed':a56_0x5cc0a0(0x201),'createHttpStatus':a56_0x5cc0a0(0x285),'createFailed':a56_0x5cc0a0(0x259)},'info':{'emptyMenuList':a56_0x5cc0a0(0x2ee)},'success':{'fetched':a56_0x5cc0a0(0x2bc),'created':a56_0x5cc0a0(0x257)},'fetching':{'online':a56_0x5cc0a0(0x2af),'daily':a56_0x5cc0a0(0x194)},'creating':{'single':a56_0x5cc0a0(0x29b),'batch':{'start':a56_0x5cc0a0(0x2ca),'completed':a56_0x5cc0a0(0x1a0)}},'sync':{'title':a56_0x5cc0a0(0x1c6),'table':{'menuName':a56_0x5cc0a0(0x248),'local':'本地','lovrabetPlatform':a56_0x5cc0a0(0x1f5)},'error':{'noMenuSelected':a56_0x5cc0a0(0x21a),'invalidJsUrl':a56_0x5cc0a0(0x226),'jsUrlUnreachable':a56_0x5cc0a0(0x1aa),'invalidCssUrl':a56_0x5cc0a0(0x280),'cssUrlUnreachable':a56_0x5cc0a0(0x28e),'createMenuFailed':'创建菜单失败','authHint':{'prefix':a56_0x5cc0a0(0x2c8),'suffix':a56_0x5cc0a0(0x2de)},'noLocalPages':'!\x20未找到本地页面,请先创建页面'},'step':{'selectedMenus':a56_0x5cc0a0(0x287),'selectedMenusCount':a56_0x5cc0a0(0x202),'jsUrl':a56_0x5cc0a0(0x2f1),'cssUrl':a56_0x5cc0a0(0x231),'selectMenus':a56_0x5cc0a0(0x2c3),'creating':a56_0x5cc0a0(0x222),'completed':a56_0x5cc0a0(0x206)},'operation':{'update':'更新','create':'新建'},'loading':{'fetchingMenuList':a56_0x5cc0a0(0x208)},'hotkeys':a56_0x5cc0a0(0x2e7),'input':{'jsUrl':{'label':a56_0x5cc0a0(0x2bb),'placeholder':'\x20输入项目的\x20JS\x20资源链接(https://...)'},'cssUrl':{'label':a56_0x5cc0a0(0x275),'placeholder':a56_0x5cc0a0(0x2e6)}}},'updateCdn':{'title':a56_0x5cc0a0(0x2d9),'error':{'invalidJsUrl':a56_0x5cc0a0(0x226),'jsUrlUnreachable':'JS\x20链接无法访问','invalidCssUrl':a56_0x5cc0a0(0x280),'cssUrlUnreachable':a56_0x5cc0a0(0x28e),'authHint':{'prefix':a56_0x5cc0a0(0x2c8),'suffix':a56_0x5cc0a0(0x2de)},'noCdnLinks':a56_0x5cc0a0(0x276),'updateFailed':a56_0x5cc0a0(0x236)},'loading':{'fetching':a56_0x5cc0a0(0x2d8),'syncing':'\x20资源正在同步中...'},'action':{'continue':'继续更新','cancel':a56_0x5cc0a0(0x1a5)},'success':{'updated':a56_0x5cc0a0(0x29e),'synced':a56_0x5cc0a0(0x2d6)},'updating':'正在更新菜单资源链接:\x20{{label}}\x20({{path}})','preview':{'title':a56_0x5cc0a0(0x190),'menuList':'待更新的菜单列表:','resourceLinks':a56_0x5cc0a0(0x234)},'input':{'title':a56_0x5cc0a0(0x203),'jsUrl':{'label':a56_0x5cc0a0(0x24b),'placeholder':'输入项目的\x20JS\x20资源链接(https://...)'},'cssUrl':{'label':a56_0x5cc0a0(0x283),'placeholder':a56_0x5cc0a0(0x209)}}}},'skill':{'install':'安装技能包','error':{'unsupportedCommand':'错误:\x20不支持的命令:\x20{{cmd}}','installFailed':a56_0x5cc0a0(0x196),'unknownPlatform':a56_0x5cc0a0(0x1be),'unknownIDE':'\x20\x20✗\x20未知的\x20IDE:\x20{{ide}}','noValidIDE':a56_0x5cc0a0(0x26e),'selectAtLeastOne':a56_0x5cc0a0(0x296)},'errorHint':{'availableCommands':a56_0x5cc0a0(0x1de),'installInteractive':'\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择并安装技能包','installDirect':'\x20\x20lovrabet\x20skill\x20install\x20<ide>\x20\x20\x20\x20\x20#\x20直接安装指定\x20IDE\x20的技能包','showHelp':'\x20\x20lovrabet\x20skill\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20显示帮助信息\x0a','usageExamples':a56_0x5cc0a0(0x19b),'exampleInteractive':a56_0x5cc0a0(0x214),'exampleDirect':a56_0x5cc0a0(0x2f7)},'select':{'title':a56_0x5cc0a0(0x1c4),'installAll':a56_0x5cc0a0(0x233),'cancel':'取消','inputFormat':a56_0x5cc0a0(0x2d0),'inputHint':a56_0x5cc0a0(0x1ef),'prompt':'请选择:\x20','cancelled':'\x0a已取消安装\x0a','noneSelected':'\x0a未选择任何\x20IDE,安装取消\x0a','selectedIDE':a56_0x5cc0a0(0x1f8),'count':a56_0x5cc0a0(0x202)},'cdn':{'fetching':a56_0x5cc0a0(0x1b1),'fetchingExtend':'正在从\x20CDN\x20拉取开发者指南(含扩展)...','fetchSuccess':'✓\x20拉取\x20{{count}}\x20个开发者指南','fetchFailed':a56_0x5cc0a0(0x1bd)},'installing':{'title':a56_0x5cc0a0(0x1bc),'progress':'正在安装技能包...','ide':a56_0x5cc0a0(0x2ec),'installed':a56_0x5cc0a0(0x25b),'created':a56_0x5cc0a0(0x2d1),'createdDir':a56_0x5cc0a0(0x29c),'createdManifest':a56_0x5cc0a0(0x23b)},'done':{'success':a56_0x5cc0a0(0x1ac),'successInline':a56_0x5cc0a0(0x1d5),'guidesLocation':'开发者指南位置:','guidesPath':a56_0x5cc0a0(0x1ab),'guidesPathInline':a56_0x5cc0a0(0x290),'pressAnyKey':a56_0x5cc0a0(0x2b0)},'generic':a56_0x5cc0a0(0x249),'help':{'title':'Lovrabet\x20Skill\x20-\x20开发者技能包安装工具','usage':a56_0x5cc0a0(0x269),'showHelp':'显示帮助信息','installInteractive':a56_0x5cc0a0(0x1f3),'installDirect':a56_0x5cc0a0(0x1df),'installAll':a56_0x5cc0a0(0x1e6),'installWithBff':a56_0x5cc0a0(0x1ae),'installMethods':a56_0x5cc0a0(0x277),'interactiveSelect':a56_0x5cc0a0(0x245),'interactiveKeys':a56_0x5cc0a0(0x23d),'directInstall':'\x20\x20直接安装指定\x20IDE\x20(支持多个)\x20\x20\x20\x20\x20\x20\x20-\x20使用\x20--ide\x20标志直接安装','bffWorkflow':a56_0x5cc0a0(0x1cf),'supportedIDEs':a56_0x5cc0a0(0x27f),'agentDesc':'其他\x20(通用模板)\x20(.agent/skills/)\x20-\x20兜底方案','allDesc':a56_0x5cc0a0(0x24f),'options':a56_0x5cc0a0(0x23e),'bffOption':a56_0x5cc0a0(0x1b0),'skillContents':a56_0x5cc0a0(0x1b9),'skillContentsList':a56_0x5cc0a0(0x2cc),'examples':a56_0x5cc0a0(0x1b8),'exampleInteractive':a56_0x5cc0a0(0x1c0),'exampleDirectDesc':a56_0x5cc0a0(0x26b),'exampleBffDesc':a56_0x5cc0a0(0x1c1),'exampleAllDesc':a56_0x5cc0a0(0x27e),'afterInstall':a56_0x5cc0a0(0x2aa),'afterInstallList':'\x20\x20-\x20IDE\x20特定配置文件\x20(.cursorrules,\x20.windsurf/,\x20.claude/,\x20.cline/,\x20.codex/,\x20.opencode/,\x20.qoder/,\x20.codebuddy/,\x20.trae/)\x0a\x20\x20-\x20.lovrabet/skill/.shared/guides/\x20\x20-\x20开发者技能指南','guidesLocationTitle':a56_0x5cc0a0(0x223)}},'logs':{'title':'日志','view':a56_0x5cc0a0(0x1d9),'clear':a56_0x5cc0a0(0x26f),'noLogs':'*\x20暂无日志记录','header':a56_0x5cc0a0(0x2ad),'time':a56_0x5cc0a0(0x266),'duration':a56_0x5cc0a0(0x1a2),'details':a56_0x5cc0a0(0x262),'cleared':a56_0x5cc0a0(0x1ee)},'start':{'starting':a56_0x5cc0a0(0x1c5)},'build':{'building':a56_0x5cc0a0(0x2c5)},'preview':{'previewing':a56_0x5cc0a0(0x2a3),'watchMode':a56_0x5cc0a0(0x2a9)},'ui':{'ideSelector':{'title':a56_0x5cc0a0(0x2c6),'hotkeys':a56_0x5cc0a0(0x2d4)}},'upgrade':{'cli':{'title':'↪\x20新版本可用','current':a56_0x5cc0a0(0x19c),'stable':a56_0x5cc0a0(0x2fd),'command':a56_0x5cc0a0(0x1af)},'sdk':{'title':'↪\x20SDK\x20版本更新','current':'\x20\x20\x20当前版本:\x20{{package}}@{{version}}','stable':a56_0x5cc0a0(0x2fd),'command':'\x20\x20\x20升级命令:\x20{{command}}'}}};function a56_0xec6e(){var _0x3cc118=['\x20\x20q.\x20取消\x0a','↑/↓:\x20移动\x20空格:\x20切换\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认','✓\x20Skill\x20安装完成:','请至少选择一个菜单','项目名称','*\x20项目名:\x20','*\x20使用配置的应用AppCode:\x20{{appCode}}','\x20\x20√\x20package.json\x20已更新','×\x20API\x20配置拉取异常:\x20{{error}}','2YsPSWv','示例:','*\x20正在创建菜单...','开发者指南位置:','获取菜单列表失败,HTTP状态码:\x20{{status}}','*\x20正在更新\x20package.json\x20的\x20name\x20和\x20description\x20字段','请输入有效的\x20JS\x20https\x20链接','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20显示帮助信息\x0a','开始配置\x20MCP','格式化代码','\x20\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20直接配置\x20Claude\x20Code\x20MCP','*\x20是否要先登录以便拉取\x20API\x20配置?','未提供应用AppCode,且配置中也没有默认值','\x20\x20lovrabet\x20mcp\x20--help\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20显示帮助信息','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20配置\x20Cursor','下一步','*\x20正在检查登录状态...','CSS\x20链接','跳过登录','全部安装','待更新的资源链接:','AppCode','更新菜单资源失败:\x20{{error}}','!\x20请使用以下方式之一:','依赖安装失败:\x20{{error}}','项目名称:\x20','环境配置值只能是\x20\x22online\x22\x20或\x20\x22daily\x22','✓\x20创建\x20.lovrabet/skill-manifest.json','其他\x20IDE\x20配置指引','\x20\x20\x20\x20→\x20使用\x20↑↓\x20移动光标,空格选中/取消,Enter\x20确认\x0a\x20\x20\x20\x20→\x20按\x20a\x20全选,按\x20i/r\x20反选,按\x20q\x20退出','选项:','√\x20成功拉取\x20{{datasetCount}}\x20个数据集,生成\x20{{modelCount}}\x20个模型','项目目录\x20{{name}}\x20已存在,请使用其他项目名','已创建\x20{{count}}\x20项','*\x20仅生成指定数据集的文档:\x20{{codes}}','!\x20未检测到有效登录','不支持的\x20MCP\x20IDE:\x20{{ide}}','\x20\x20交互式选择\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20显示\x20IDE\x20列表供选择,支持多选','🔐\x20正在启动登录服务...','\x0a✗\x20{{ide}}\x20MCP\x20配置失败:\x20{{error}}','菜单名称','通用模板','保存配置失败','JS\x20链接:\x20','应用AppCode长度不能超过\x20100\x20个字符','!\x20以下数据集代码不存在:\x20{{codes}}','*\x20正在拉取\x20API\x20配置...','安装所有\x20IDE\x20技能包(包括通用模板)','[N]\x20跳过,稍后手动配置','安装依赖','\x20\x20\x201.\x20直接指定:\x20lovrabet\x20api\x20pull\x20<app-code>','\x20\x20重启\x20Claude\x20Code\x20后生效\x0a','登录鉴权失败,登录已过期,请使用\x20lovrabet\x20auth\x20重新登录','*\x20共处理\x20{{count}}\x20个数据集','指定环境(如:daily、online)','菜单创建成功:','\x0a注意:部分配置需要手动执行命令,请按照上述说明操作','创建菜单失败:\x20{{error}}','10269bMfRDR','已安装\x20{{count}}\x20个目录','\x20\x20\x20\x20→\x20直接配置\x20Cursor\x20MCP\x20(写入\x20.cursor/mcp.json)','拉取API配置:\x20','拉取API配置','配置\x20Lovrabet\x20MCP\x20服务器','\x0a错误:\x20配置失败\x20-\x20{{error}}\x0a','应用代码只能包含字母、数字、-\x20和\x20_','\x20\x20\x20详情:\x20{{details}}','文档生成失败:\x20{{error}}','\x20\x20•\x20MCP\x20服务器:','已登录','\x20\x20\x20时间:\x20{{time}}','!\x20API\x20配置拉取异常,项目已创建,可稍后手动执行:\x20lovrabet\x20api\x20pull','生成文档','用法:','同步菜单','\x20\x20\x20\x20→\x20直接安装\x20Cursor\x20和\x20claude\x20code\x20技能包','拉取API配置:','755916EISDxL','\x0a没有有效的\x20IDE\x20需要安装\x0a','清空日志','应用AppCode','\x0a✓\x20MCP\x20配置完成\x20({{successCount}}/{{totalCount}}\x20成功)','139075aoopks','1163207HrAsLX','指定输出目录(pull:\x20./src/api/,doc:\x20./docs)','*\x20CSS\x20链接:\x20','!\x20未找到菜单资源链接','安装方式:','创建技能包\x20manifest','531QwWfaN','设置配置项','\x20\x20√\x20依赖安装跳过(非交互模式)','正在初始化配置文件...','✓\x20成功生成:\x20{{fileName}}.md','\x20\x20\x20\x20→\x20安装所有\x20IDE\x20技能包','支持的\x20IDE:','请输入有效的\x20CSS\x20https\x20链接','\x20登录中...','MCP\x20和\x20Skill','CSS\x20链接:\x20','共享技能文件复制成功','创建菜单失败,HTTP状态码:\x20{{status}}','\x0a已取消配置\x0a','已选择菜单','*\x20选择要配置的\x20IDE:','已写入\x20.cursor/mcp.json','\x20\x20错误:\x20{{error}}','\x0a📋\x20请执行以下命令配置\x20Claude\x20Code\x20MCP:\x0a','\x20\x20lovrabet\x20mcp\x20install\x20--cursor\x20\x20\x20\x20直接配置\x20Cursor\x20MCP','复制\x20Cursor\x20Rules\x20文件失败','CSS\x20链接无法访问','2192WiQiBZ','开发者指南位置:\x20.lovrabet/skill/.shared/guides/','目录\x20\x22{{name}}\x22\x20已存在','配置值无效或过长','创建\x20Cursor\x20Rules\x20文件','未设置','请输入编号选择\x20IDE:\x0a','请至少选择一个\x20IDE','✓\x20{{scope}}语言配置已设置为:\x20{{value}}','1360008okRhwu','应用代码不合法','√\x20当前为有效会话,无需重新登录。','正在创建菜单:\x20{{label}}\x20({{path}})','\x20\x20✓\x20创建\x20{{path}}/','未知的\x20api\x20命令','√\x20更新成功','环境:\x20{{env}}','其他\x20IDE\x20配置指引已显示','{{count}}\x20个\x20IDE','Cursor','正在预览项目...','当前目录已存在\x20.lovrabetrc\x20文件','API\x20管理','正在配置\x20MCP\x20服务器...','*\x20正在为项目\x20{{name}}\x20配置应用AppCode:\x20{{appCode}}','✗\x20配置失败','监听模式','安装后会在项目中创建:','*\x20创建新项目','配置信息:\x20appcode={{appcode}},\x20env={{env}}','*\x20Lovrabet\x20CLI\x20日志记录:\x0a','📍\x20登录地址:','正在获取线上菜单列表...\x20(appCode:\x20{{appCode}})','按任意键退出...','\x0a📋\x20其他\x20IDE\x20MCP\x20配置:\x0a','×\x20未配置\x20AppCode','使用指定的\x20appcode','✓\x20MCP\x20配置完成!','更新现有\x20mcp.json\x20配置','\x0a📦\x20正在配置\x20{{name}}\x20MCP...\x0a','应用代码不能为空','*\x20正在从服务器拉取\x20API\x20配置...\x20(环境:\x20{{env}})','[Y]\x20是,配置\x20AI\x20助手','登录成功!','*\x20JS\x20链接:\x20','成功获取\x20{{count}}\x20个线上菜单','请先通过\x20`lovrabet\x20config\x20set\x20app\x20<value>`\x20配置应用\x20Code','现在您可以使用\x20lovrabet\x20api\x20doc\x20和\x20lovrabet\x20api\x20pull\x20等命令了','🌐\x20正在尝试自动打开浏览器...','获取文档失败\x20({{datasetCode}}),HTTP状态码:\x20{{status}}','*\x20正在配置\x20Lovrabet\x20MCP\x20和\x20Skill...','*\x20是否要自动拉取\x20API\x20配置?','*\x20请选择要同步的菜单:','不支持的\x20IDE:\x20{{ide}}','正在构建项目...','请选择要配置的\x20IDE:','×\x20--datasetcode\x20参数不能为空','提示:使用\x20','共享技能文件复制失败','开始批量创建菜单,共\x20{{count}}\x20个','正在登录...','\x20\x20-\x20Filter\x20查询构建规范\x20(10\x20种常见错误对照)\x0a\x20\x20-\x20MCP\x20SQL\x20创建工作流\x20(5\x20步强制流程)\x0a\x20\x20-\x20AntD\x20UI\x20开发规范\x20(禁止\x20AI\x20味道)\x0a\x20\x20-\x20API\x20集成指南\x20(lovrabet\x20api\x20pull\x20流程)\x0a\x20\x20-\x20菜单管理指南\x20(menu\x20sync/update\x20流程)\x0a\x20\x20-\x20Backend\x20Function\x20脚本编写规范\x20(权限过滤、数据脱敏、业务逻辑)\x0a\x20\x20-\x20Backend\x20Function\x20同步工作流\x20(需\x20--dangerously-bff-save\x20启用)','×\x20--params\x20参数必须是一个有效的\x20JSON\x20对象','*\x20清理失败的项目目录:\x20{{dir}}','项目名过长,最多支持\x20100\x20个字符','输入格式:\x20输入编号,用空格分隔\x20(例如:\x201\x203\x205)','\x20\x20✓\x20创建\x20{{path}}','生成多个数据集的文档','配置指引已显示','↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20q:\x20退出\x20Enter:\x20确认','技能包\x20(研发规范指南)','菜单资源同步成功:\x20{{label}}','*\x20是否配置\x20Lovrabet\x20MCP\x20和\x20Skill?','\x20正在获取线上菜单资源链接...','*\x20请输入新的资源链接','3tikmwk','获取配置项','可用命令:','请至少选择一个配置项','\x20命令重新登录','清理项目目录失败','2335932JrAGUH','✗\x20失败:\x20{{fileName}}.md\x20-\x20{{error}}',',\x20失败\x20{{failCount}}\x20个','⚠️\x20以下数据集生成失败:','agents.md\x20文件已存在,跳过','成功在当前目录初始化\x20.lovrabetrc\x20文件','\x20输入项目的\x20CSS\x20资源链接(https://...)','↑/↓:\x20移动光标\x20空格:\x20切换选中\x20a:\x20全选\x20i/r:\x20反选\x20Enter:\x20确认','未找到\x20appcode\x20配置,请先运行\x20\x27lovrabet\x20init\x27\x20初始化项目配置','使用配置的应用AppCode:\x20{{appCode}}','按\x20“q”\x20退出。','-\x20模型配置文件\x20({{count}}\x20个模型)','\x0a📦\x20正在安装\x20{{name}}...\x0a','\x20\x20•\x20Skill:','服务端返回空菜单列表','√\x20配置文件已创建,应用AppCode:\x20{{appCode}}','指定环境生成文档','JS\x20链接','拉取\x20API\x20配置失败:\x20{{error}}','\x20\x20√\x20环境配置完成','{{name}}\x20技能包安装失败','\x20\x20使用\x20←→\x20选择,回车确认','设置环境\x20(online/daily)','\x20\x20lovrabet\x20skill\x20install\x20cursor\x20\x20\x20\x20#\x20直接安装\x20Cursor\x20技能包\x0a','指定环境拉取\x20API','查看可用命令。','指定输出目录','1.\x20配置\x20Lovrabet\x20MCP\x20和\x20Skill','Claude\x20Code\x20MCP\x20命令已生成','\x20\x20\x20稳定版本:\x20{{version}}','!\x20API\x20配置拉取失败,可稍后手动执行:\x20lovrabet\x20api\x20pull','❌\x20错误:不再支持位置参数方式','*\x20待更新的菜单&资源链接','Enter\x20默认:\x20是','\x20\x20√\x20项目模板已创建','Lovrabet\x20MCP\x20-\x20MCP\x20服务器配置工具','正在获取日常菜单列表...\x20(appCode:\x20{{appCode}})','指定应用代码','\x20\x20✗\x20安装\x20{{ide}}\x20失败:\x20{{error}}','指定的数据集代码都不存在:\x20{{codes}}','↑/↓:\x20移动\x20空格:\x20切换\x20a:\x20全选\x20q:\x20退出\x20Enter:\x20确认','请执行以下命令配置\x20Claude\x20Code\x20MCP:','复制\x20agents.md\x20文件失败','使用示例:','\x20\x20\x20当前\x20CLI\x20版本:\x20{{version}}','√\x20配置文件已创建,可稍后使用\x20\x27lovrabet\x20config\x20set\x20appcode\x20<app-code>\x27\x20配置','生成配置命令','\x20\x20√\x20代码已格式化','批量创建菜单完成,共\x20{{count}}\x20个','*\x20导入方式:','\x20\x20\x20耗时:\x20{{duration}}ms','重启\x20Claude\x20Code\x20后生效','登录成功,请返回命令行继续操作。当前窗口将在\x20{{seconds}}\x20秒内关闭。','取消更新','未知的\x20IDE:\x20{{ide}}','*\x20输出目录:\x20','*\x20正在登录,请前往浏览器完成登录...','项目名长度不能超过\x2050\x20个字符','JS\x20链接无法访问','\x20\x20.lovrabet/skill/.shared/guides/\x20-\x20详细开发指南\x0a','\x0a✓\x20技能包安装成功!共安装\x20{{count}}\x20个目录\x0a','使用指定的应用AppCode:\x20{{appCode}}','包含\x20Backend\x20Function\x20同步工作流','\x20\x20\x20升级命令:\x20{{command}}','\x20\x20--dangerously-bff-save\x20\x20\x20\x20包含\x20Backend\x20Function\x20同步工作流指南\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20(需要\x20MCP\x20服务器启用相应\x20tools)','正在从\x20CDN\x20拉取开发者指南...','配置信息:','错误:\x20不支持的命令:\x20{{cmd}}','\x20\x20(注:\x20--appcode\x20参数与配置一致,将使用默认配置)','locale\x20配置值无效,支持的值:\x20zh,\x20en,\x20zh-CN,\x20en-US','应用代码长度不能超过\x20100\x20个字符','请前往浏览器完成登录。','示例:','技能包内容包括:','列出所有配置项','其他\x20IDE','安装\x20Lovrabet\x20技能包\x20-\x20选择\x20IDE','\x20\x20!\x20CDN\x20拉取失败,跳过指南安装:\x20{{error}}','⚠️\x20\x20未知的平台:\x20{{ide}},使用通用模板','登录失败','\x20\x20\x20\x20→\x20交互式选择\x20IDE','\x20\x20\x20\x20→\x20安装技能包并包含\x20Backend\x20Function\x20同步工作流','!\x20原始数据集\x20{{originalCount}}\x20个,过滤重复\x20{{duplicateCount}}\x20个','\x20\x20\x202.\x20使用参数:\x20lovrabet\x20api\x20pull\x20--appcode\x20<app-code>','\x0a请选择要安装技能包的\x20IDE\x20(可多选):\x0a','正在启动开发服务器...','*\x20同步菜单到\x20Lovrabet\x20平台','复制项目文件','项目名','应用代码用于标识您的项目,只能包含字母、数字、-\x20和\x20_','\x20直接回车确认,或输入自定义名称','登录成功','创建\x20agents.md\x20文件','\x20\x20$\x20lovrabet\x20mcp\x20install','无法在当前目录创建项目,请检查目录权限','\x20\x20包含\x20Backend\x20Function\x20同步工作流\x20\x20\x20-\x20使用\x20--dangerously-bff-save\x20标志','请手动执行:\x20{{command}}','\x20\x20推荐选择\x20Yes,可自动配置\x20API\x20接口','项目名不能为空','项目名包含非法字符,不允许使用:\x20<\x20>\x20:\x20\x22\x20|\x20?\x20*\x20及控制字符','项目名不合法','✓\x20技能包安装成功!共安装\x20{{count}}\x20个目录','未找到任何数据集','生成所有数据集的文档','应用AppCode只能包含字母、数字、连字符和下划线,且必须以字母或数字开头','查看日志','!\x20请指定一个有效的命令。','[可选]:\x20','是否同时配置\x20AI\x20助手?这将:','登录态校验失败,请使用\x20lovrabet\x20auth\x20重新登录','\x0a可用命令:','直接安装指定\x20IDE\x20的技能包','显示此帮助信息','\x20\x20\x20•\x20{{name}}.ts\x20-\x20客户端实例文件','*\x20应用AppCode\x20','√\x20文档生成完成!成功\x20{{successCount}}\x20个','🚀\x20接下来:','√\x20Lovrabet\x20MCP\x20和\x20Skill\x20配置完成','安装所有技能包','√\x20package.json\x20已更新:\x20name={{name}}','登录状态','\x0a✓\x20Cursor\x20MCP\x20配置成功!\x0a','[{{current}}/{{total}}]\x20正在生成:\x20{{fileName}}.md\x20({{name}})','*\x20已生成文件:','✓\x20MCP\x20服务器配置完成:','正在生成\x20{{count}}\x20个数据集的文档...','*\x20日志已清空','输入\x200\x20安装所有\x20IDE,输入\x20q\x20取消\x0a','等待\x203\x20秒...\x0a','只生成指定数据集的文档','\x20\x20\x20\x20$\x20lovrabet\x20mcp\x20install\x20--claude\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20配置\x20Claude\x20Code','交互式选择并安装技能包','现在您可以在\x20Cursor\x20中使用\x20Lovrabet\x20数据集\x20MCP\x20工具了。','Lovrabet平台','未提供配置值','更新菜单\x20CDN\x20资源','已选择\x20IDE','指定文档输出目录','×\x20文件前缀格式不正确。只能包含字母、数字、连字符和下划线,且必须以字母开头。','790okEbsn','\x20\x20lovrabet\x20mcp\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择并配置\x20MCP','MCP\x20服务器\x20(AI\x20访问数据集)','*\x20正在创建项目...','\x20\x20\x20\x20→\x20输入编号选择\x20IDE','✓\x20已退出登录','获取菜单列表失败:\x20{{error}}','{{count}}\x20个','*\x20已输入的资源资源','✅\x20浏览器已自动打开,请在浏览器中完成登录','\x20|\x20应用AppCode:\x20','√\x20菜单创建完成','\x20\x20$\x20lovrabet\x20mcp\x20install\x20--cursor','\x20正在获取线上菜单列表...','输入项目的\x20CSS\x20资源链接(https://...)','应用AppCode不合法','55BCRdPm','\x20\x20环境:\x20{{env}}','\x20\x20\x20交互式选择\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20显示\x20IDE\x20列表供选择','正在配置\x20AI\x20助手...','√\x20API\x20配置拉取完成','启动项目:\x20','\x0a共有\x20{{count}}\x20个数据集需要生成文档\x0a','×\x20--params\x20参数不是有效的\x20JSON\x20格式','√\x20{{label}}:\x20','\x20\x20lovrabet\x20skill\x20install\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20交互式选择\x20IDE','Cursor\x20MCP\x20配置失败','拉取\x20API'];a56_0xec6e=function(){return _0x3cc118;};return a56_0xec6e();}
|
package/lib/init/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4a5ee9,_0x3f2d27){const _0x29db1d=a57_0x5424,_0x3fa55e=_0x4a5ee9();while(!![]){try{const _0x3ebbef=parseInt(_0x29db1d(0x1ad))/0x1*(parseInt(_0x29db1d(0x1ab))/0x2)+parseInt(_0x29db1d(0x1b0))/0x3+-parseInt(_0x29db1d(0x189))/0x4*(parseInt(_0x29db1d(0x18d))/0x5)+parseInt(_0x29db1d(0x197))/0x6+-parseInt(_0x29db1d(0x193))/0x7*(-parseInt(_0x29db1d(0x19f))/0x8)+parseInt(_0x29db1d(0x18e))/0x9*(-parseInt(_0x29db1d(0x190))/0xa)+-parseInt(_0x29db1d(0x19a))/0xb;if(_0x3ebbef===_0x3f2d27)break;else _0x3fa55e['push'](_0x3fa55e['shift']());}catch(_0x492200){_0x3fa55e['push'](_0x3fa55e['shift']());}}}(a57_0x4c52,0x7c1d1));import{jsxs as a57_0x3c3900,jsx as a57_0xcc2859}from'react/jsx-runtime';import{useState,useEffect}from'react';import{Box,Text,useInput}from'ink';import{existsSync,writeFileSync,readFileSync}from'node:fs';import{resolve,join,dirname}from'node:path';function a57_0x5424(_0x37e61f,_0x5678a9){_0x37e61f=_0x37e61f-0x188;const _0x4c52f0=a57_0x4c52();let _0x542416=_0x4c52f0[_0x37e61f];return _0x542416;}import{fileURLToPath}from'node:url';import{logger}from'../utils/logger.js';import{readConfig}from'../utils/config.js';import{useI18n}from'../i18n/hooks.js';function a57_0x4c52(){const _0x543a8f=['init.appCodeDesc','1jIgLSf','stringify','test','2268918XqoZfr','init.validation.required','\x20←\x20','column','1.0.0','init.appCodeLabel','init.success','init.nextSteps','978224myYpUp','init.inputAppCode','package.json','cwd','10uOSEkc','81XWrdLz','length','149270ZRZuYS','init.validation.tooLong','init','1267IOVSCH','init.creating','toLocaleString','init.validation.invalidCode','3073518ussPyw','backspace','ctrl','14621673xBgZKc','cyan','env','red','gray','26888Jdgqik','message','exit','error','string','setLogPath','init.validation.invalidFormat','.lovrabetrc','utf8','green','init.fileExists','version','1168334tfxMBU'];a57_0x4c52=function(){return _0x543a8f;};return a57_0x4c52();}export function Init({appcode:_0x36a300,env:_0x1e9ef8}){const _0x201412=a57_0x5424,{t:_0x19c59b}=useI18n(),[_0x486592,_0x20fd0f]=useState(null),[_0xdb2532,_0xe46c0e]=useState(![]),[_0x41fabe,_0x522a97]=useState(!_0x36a300),[_0xc216e7,_0x19ed27]=useState(''),[_0x5f3d9d,_0x284ed1]=useState(''),[_0x26f6df,_0x13cdc3]=useState(_0x36a300||''),[_0x2fdd8e]=useState(_0x1e9ef8);function _0x38e2c9(_0x918247){const _0xdab361=a57_0x5424;if(_0x918247[_0xdab361(0x18f)]===0x0)return{'valid':![],'message':''};if(_0x918247[_0xdab361(0x18f)]>0x64)return{'valid':![],'message':_0x19c59b(_0xdab361(0x191))};const _0xa6ddfc=/^[A-Za-z0-9_-]+$/;if(!_0xa6ddfc[_0xdab361(0x1af)](_0x918247))return{'valid':![],'message':_0x19c59b(_0xdab361(0x1a5))};return{'valid':!![]};}useInput((_0x34bbf9,_0x42b69c)=>{const _0x2326bb=a57_0x5424;if(!_0x41fabe)return;if(_0x42b69c['return']){if(_0x5f3d9d||!_0xc216e7['trim']()){_0x284ed1(_0x19c59b(_0x2326bb(0x1b1)));return;}const _0xa32ad1=_0xc216e7['trim'](),{valid:_0x1a5da8,message:_0x22555f}=_0x38e2c9(_0xa32ad1);if(!_0x1a5da8){_0x284ed1(_0x22555f||_0x19c59b('init.validation.invalidCode'));return;}_0x13cdc3(_0xa32ad1),_0x522a97(![]);}else{if(_0x42b69c[_0x2326bb(0x198)]||_0x42b69c['delete'])_0x19ed27(_0x361150=>{const _0x554894=_0x2326bb,_0x30385b=_0x361150['slice'](0x0,-0x1);if(_0x30385b[_0x554894(0x18f)]===0x0)_0x284ed1('');else{const {valid:_0x109ffb,message:_0x484571}=_0x38e2c9(_0x30385b);_0x284ed1(_0x109ffb?'':_0x484571||_0x19c59b(_0x554894(0x196)));}return _0x30385b;});else _0x42b69c[_0x2326bb(0x199)]&&_0x34bbf9==='c'?process[_0x2326bb(0x1a1)](0x0):_0x19ed27(_0x514b64=>{const _0x24ab42=_0x2326bb,_0x3d43fa=_0x514b64+_0x34bbf9,{valid:_0x1f4644,message:_0x3dd21e}=_0x38e2c9(_0x3d43fa);return _0x284ed1(_0x1f4644?'':_0x3dd21e||_0x19c59b(_0x24ab42(0x196))),_0x3d43fa;});}},{'isActive':_0x41fabe}),useEffect(()=>{const _0x17eabc=a57_0x5424;if(!_0x26f6df||_0x41fabe)return;const _0x5c2b41=resolve(process[_0x17eabc(0x18c)](),_0x17eabc(0x1a6));if(existsSync(_0x5c2b41)){_0x20fd0f(_0x19c59b(_0x17eabc(0x1a9))),setTimeout(()=>process['exit'](0x1),0x64);return;}try{const _0x1684fc=fileURLToPath(import.meta.url),_0x1bdac0=resolve(dirname(_0x1684fc),'../..'),_0x4ef14a=join(_0x1bdac0,_0x17eabc(0x18b));let _0x4d44cf=_0x17eabc(0x1b4);try{const _0x21dd7b=JSON['parse'](readFileSync(_0x4ef14a,'utf8'));_0x4d44cf=_0x21dd7b[_0x17eabc(0x1aa)]||'1.0.0';}catch(_0x3360ab){}const _0x1a3f27=readConfig(),_0x11f27c=typeof _0x1a3f27['env']===_0x17eabc(0x1a3)?_0x1a3f27['env']:undefined,{app:_0xe61208,appcode:_0x2520db,..._0x493ad0}=_0x1a3f27,_0x5614da={..._0x493ad0,'appcode':_0x26f6df,'env':_0x2fdd8e||_0x11f27c||'online','createdAt':new Date()[_0x17eabc(0x195)](),'version':_0x4d44cf};writeFileSync(_0x5c2b41,JSON[_0x17eabc(0x1ae)](_0x5614da,null,0x2),{'encoding':_0x17eabc(0x1a7),'mode':0x180}),logger[_0x17eabc(0x1a4)](process[_0x17eabc(0x18c)]()),logger['info'](_0x17eabc(0x192),'初始化项目配置文件成功',{'appcode':_0x26f6df,'env':_0x5614da[_0x17eabc(0x19c)],'version':_0x5614da[_0x17eabc(0x1aa)],'configPath':_0x5c2b41}),_0xe46c0e(!![]),setTimeout(()=>process[_0x17eabc(0x1a1)](0x0),0x64);}catch(_0x387458){logger[_0x17eabc(0x1a2)]('init','创建配置文件失败',{'error':_0x387458 instanceof Error?_0x387458[_0x17eabc(0x1a0)]:String(_0x387458)}),_0x20fd0f(_0x19c59b('common.error')+':\x20'+(_0x387458 instanceof Error?_0x387458['message']:String(_0x387458))),setTimeout(()=>process[_0x17eabc(0x1a1)](0x1),0x64);}},[_0x26f6df,_0x41fabe,_0x2fdd8e]);if(_0x486592)return a57_0xcc2859(Box,{'flexDirection':_0x201412(0x1b3),'children':a57_0x3c3900(Text,{'color':_0x201412(0x19d),'children':['✗\x20',_0x486592]})});if(_0x41fabe)return a57_0x3c3900(Box,{'flexDirection':_0x201412(0x1b3),'children':[a57_0x3c3900(Box,{'children':[a57_0x3c3900(Text,{'color':_0x201412(0x19b),'children':[_0x19c59b(_0x201412(0x18a)),'\x20']}),_0xc216e7?a57_0xcc2859(Text,{'color':_0x201412(0x1a8),'children':_0xc216e7}):a57_0xcc2859(Text,{'color':_0x201412(0x19e),'children':'_'}),_0x5f3d9d&&a57_0x3c3900(Text,{'color':_0x201412(0x19d),'children':[_0x201412(0x1b2),_0x5f3d9d]})]}),!_0x5f3d9d&&!_0xc216e7&&a57_0xcc2859(Box,{'children':a57_0xcc2859(Text,{'color':_0x201412(0x19e),'children':_0x19c59b(_0x201412(0x1ac))})})]});if(_0xdb2532)return a57_0x3c3900(Box,{'flexDirection':_0x201412(0x1b3),'children':[a57_0x3c3900(Text,{'color':'green','children':['✓\x20',_0x19c59b(_0x201412(0x1b6))]}),a57_0x3c3900(Text,{'color':_0x201412(0x19b),'children':[_0x19c59b(_0x201412(0x1b5)),':\x20',_0x26f6df]}),a57_0xcc2859(Text,{'children':_0x19c59b(_0x201412(0x188))})]});return a57_0xcc2859(Box,{'children':a57_0xcc2859(Text,{'children':_0x19c59b(_0x201412(0x194))})});}
|