woozlit 2.1.4 → 2.2.0

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.
Files changed (64) hide show
  1. package/README.md +28 -0
  2. package/dist/auth/login.js +1 -1
  3. package/dist/browser/index.js +1 -1
  4. package/dist/browser/server.js +1 -1
  5. package/dist/browser/tools.js +1 -1
  6. package/dist/chat/agent.js +1 -1
  7. package/dist/config/mcp.js +1 -1
  8. package/dist/config/settings.js +1 -1
  9. package/dist/discord/client.js +1 -1
  10. package/dist/discord/config.js +1 -1
  11. package/dist/discord/index.js +1 -1
  12. package/dist/discord/setup.js +1 -1
  13. package/dist/email/config.js +1 -1
  14. package/dist/email/index.js +1 -1
  15. package/dist/email/service.js +1 -1
  16. package/dist/email/setup.js +1 -1
  17. package/dist/github/api.js +1 -1
  18. package/dist/github/auth.js +1 -1
  19. package/dist/github/auto-setup.js +1 -1
  20. package/dist/github/index.js +1 -1
  21. package/dist/github/manual-setup.js +1 -1
  22. package/dist/index.js +1 -1
  23. package/dist/mcp-servers/computer-use.js +1 -1
  24. package/dist/services/bot-manager.js +1 -1
  25. package/dist/services/notifications.js +1 -1
  26. package/dist/services/voice-agent.js +1 -1
  27. package/dist/telegram/bot.js +1 -1
  28. package/dist/telegram/config.js +1 -1
  29. package/dist/telegram/index.js +1 -1
  30. package/dist/telegram/reminders.js +1 -1
  31. package/dist/telegram/setup.js +1 -1
  32. package/dist/tools/command.js +1 -1
  33. package/dist/tools/file.d.ts +8 -0
  34. package/dist/tools/file.js +1 -1
  35. package/dist/tools/git.js +1 -1
  36. package/dist/tools/index.d.ts +1 -1
  37. package/dist/tools/index.js +1 -1
  38. package/dist/tools/knowledge.d.ts +4 -0
  39. package/dist/tools/knowledge.js +1 -0
  40. package/dist/tools/mcp.js +1 -1
  41. package/dist/tools/network.js +1 -1
  42. package/dist/tools/project.js +1 -1
  43. package/dist/tools/rollback.js +1 -1
  44. package/dist/tools/rules.js +1 -1
  45. package/dist/tools/system.js +1 -1
  46. package/dist/twilio/config.js +1 -1
  47. package/dist/twilio/index.js +1 -1
  48. package/dist/twilio/server.js +1 -1
  49. package/dist/twilio/setup.js +1 -1
  50. package/dist/ui/output.js +1 -1
  51. package/dist/ui/select.js +1 -1
  52. package/dist/ui/themes.js +1 -1
  53. package/dist/utils/api.d.ts +1 -1
  54. package/dist/utils/api.js +1 -1
  55. package/dist/utils/chat-history.js +1 -1
  56. package/dist/utils/history.js +1 -1
  57. package/dist/utils/mcp-installer.js +1 -1
  58. package/dist/utils/platform.js +1 -1
  59. package/dist/utils/storage.d.ts +3 -0
  60. package/dist/utils/storage.js +1 -1
  61. package/dist/utils/update-check.js +1 -1
  62. package/dist/utils/updater.js +1 -1
  63. package/dist/verify_repro.js +1 -1
  64. package/package.json +1 -1
package/README.md CHANGED
@@ -14,7 +14,10 @@ npm install -g woozlit
14
14
  - **Agentic AI**: Executes complex tasks (coding, testing, deployment) autonomously without stopping to ask permission.
15
15
  - **Modern Minimalist UI**: Sleek, Claude-Code inspired terminal aesthetics with spinner branches and concise one-line action summaries (`└ Read 58 lines`).
16
16
  - **Global Theming**: Switch the entire CLI's color palette on the fly (`/theme`). Supports: Woozlit Blue, Classic Purple, Hacker Green, Sunset Orange, Dracula Pink, and Monochrome Silver.
17
+ - **Knowledge Presets**: Easily define custom instructions or framework stacks (e.g., Next.js conventions) that the AI automatically injects into its system prompt.
18
+ - **Vision & Image Pasting**: Direct support for analyzing local images. Just paste an absolute file path into the chat prompt.
17
19
  - **Browser Automation**: The CLI can automatically spin up a headless/headed browser session to read documentation, debug web apps, and take screenshots using `browser_*` tools.
20
+ - **Context & Process Safety**: Includes an automatic contextual summarizer for extremely long conversations to prevent token overflow, and an anti-spam monitor to stop duplicate dev servers.
18
21
  - **Telegram Remote**: Start the CLI on your desktop, leave it running, and text it complex coding tasks from your phone via Telegram.
19
22
  - **MCP Protocol**: Deep integration with Model Context Protocol to hook into external servers.
20
23
  - **Auto-Correction**: Automatically detects, reads `stderr`, and attempts to fix errors during execution loops.
@@ -34,6 +37,31 @@ woozlit theme
34
37
  ```
35
38
  Brings up an interactive prompt to switch color themes.
36
39
 
40
+ ### Knowledge Presets
41
+ Inject project-specific rules or context into the agent's system prompt (e.g. enforce architectural styles or point to specific docs).
42
+
43
+ ```bash
44
+ # List current knowledge presets
45
+ woozlit knowledge list
46
+
47
+ # Add a new piece of knowledge (Here is the built-in default Next.js preset)
48
+ woozlit knowledge add "You are an expert Next.js 15, React 19, and Tailwind CSS developer."
49
+ woozlit knowledge add "Use the App Router (app/ directory) exclusively. Avoid the pages/ directory."
50
+ woozlit knowledge add "Default to Server Components. Only add 'use client' when hooks (useState, useEffect) or DOM event listeners are strictly necessary."
51
+ woozlit knowledge add "Use Server Actions for data mutations and fetching. Avoid traditional API routes unless building external standard REST endpoints."
52
+ woozlit knowledge add "Follow mobile-first responsive design patterns. Build clean, minimal UI components using Tailwind CSS."
53
+
54
+ # Clear all presets
55
+ woozlit knowledge clear
56
+ ```
57
+
58
+ ### Vision & Images
59
+ You can ask the AI about local images directly in the chat interface by simply pasting their absolute paths alongside your prompt:
60
+
61
+ ```text
62
+ > C:\Users\docs\mockup.png Make this exact UI using React and Tailwind.
63
+ ```
64
+
37
65
  ### Chat Commands
38
66
 
39
67
  Inside a chat session, you can use:
@@ -1 +1 @@
1
- function a0_0x5b2f(){const _0x3965fa=['searchParams','126840GSYnMu','end','/callback','close','1500443zVYDhS','listen','get','email','pathname','2727052gofJeL','displayName','writeHead','4487451SlRbnv','7421250QQOENJ','text/html','userId','http://localhost:','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!DOCTYPE\x20html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<title>Woozlit\x20CLI</title>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<style>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20body\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20system-ui,\x20-apple-system,\x20sans-serif;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20align-items:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20justify-content:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100vh;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20#0a0a0a;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20#fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.container\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x202rem;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20h1\x20{\x20color:\x20#10b981;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20p\x20{\x20color:\x20#9ca3af;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</style>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22container\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h1>Login\x20Successful</h1>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','4303910lvlGSO','url','9077019CrfWIO'];a0_0x5b2f=function(){return _0x3965fa;};return a0_0x5b2f();}(function(_0x51678b,_0x33bcff){const _0x3e4549=a0_0x3605,_0x2c07ef=_0x51678b();while(!![]){try{const _0x462362=parseInt(_0x3e4549(0x1cd))/0x1+parseInt(_0x3e4549(0x1d2))/0x2+parseInt(_0x3e4549(0x1d5))/0x3+parseInt(_0x3e4549(0x1c9))/0x4+-parseInt(_0x3e4549(0x1db))/0x5+-parseInt(_0x3e4549(0x1d6))/0x6+-parseInt(_0x3e4549(0x1c7))/0x7;if(_0x462362===_0x33bcff)break;else _0x2c07ef['push'](_0x2c07ef['shift']());}catch(_0x477ed3){_0x2c07ef['push'](_0x2c07ef['shift']());}}}(a0_0x5b2f,0xf3702));import a0_0x15c413 from'open';import{createServer}from'http';import{getApiUrl}from'../config/settings.js';import{setToken,setUser,isLoggedIn,logout as a0_0x230ff6}from'../utils/storage.js';export async function login(){const _0x1b3c77=getApiUrl(),_0x2f67bd=0x2694;return new Promise(_0x1fc115=>{const _0x23173a=a0_0x3605,_0x4e337b=createServer(async(_0x10aea2,_0x147ef5)=>{const _0x3b2aea=a0_0x3605,_0x1032c2=new URL(_0x10aea2[_0x3b2aea(0x1dc)]||'',_0x3b2aea(0x1d9)+_0x2f67bd);if(_0x1032c2[_0x3b2aea(0x1d1)]===_0x3b2aea(0x1cb)){const _0x261d0a=_0x1032c2[_0x3b2aea(0x1c8)][_0x3b2aea(0x1cf)]('token'),_0x3bab9d=_0x1032c2[_0x3b2aea(0x1c8)][_0x3b2aea(0x1cf)](_0x3b2aea(0x1d8)),_0x33cebf=_0x1032c2[_0x3b2aea(0x1c8)]['get'](_0x3b2aea(0x1d0)),_0x2e7662=_0x1032c2[_0x3b2aea(0x1c8)][_0x3b2aea(0x1cf)](_0x3b2aea(0x1d3));_0x261d0a&&_0x3bab9d?(setToken(_0x261d0a),setUser(_0x3bab9d,_0x33cebf||'',_0x2e7662||''),_0x147ef5[_0x3b2aea(0x1d4)](0xc8,{'Content-Type':_0x3b2aea(0x1d7)}),_0x147ef5[_0x3b2aea(0x1ca)](_0x3b2aea(0x1da)),_0x4e337b[_0x3b2aea(0x1cc)](),_0x1fc115(!![])):(_0x147ef5[_0x3b2aea(0x1d4)](0x190,{'Content-Type':'text/html'}),_0x147ef5[_0x3b2aea(0x1ca)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!DOCTYPE\x20html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<head><title>Woozlit\x20CLI</title></head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<body\x20style=\x22font-family:\x20sans-serif;\x20text-align:\x20center;\x20padding:\x202rem;\x20background:\x20#0a0a0a;\x20color:\x20#fff;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h1\x20style=\x22color:\x20#ef4444;\x22>Login\x20Failed</h1>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>Missing\x20authentication\x20data.\x20Please\x20try\x20again.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0x4e337b[_0x3b2aea(0x1cc)](),_0x1fc115(![]));}});_0x4e337b[_0x23173a(0x1ce)](_0x2f67bd,()=>{const _0x4d1e3b=_0x23173a,_0x2a13bb=_0x1b3c77+'/auth/cli?callback=http://localhost:'+_0x2f67bd+_0x4d1e3b(0x1cb);a0_0x15c413(_0x2a13bb);}),setTimeout(()=>{const _0x5d6f68=_0x23173a;_0x4e337b[_0x5d6f68(0x1cc)](),_0x1fc115(![]);},0x1d4c0);});}export function logout(){a0_0x230ff6();}function a0_0x3605(_0x5915f5,_0xb0356b){_0x5915f5=_0x5915f5-0x1c7;const _0x5b2f2d=a0_0x5b2f();let _0x36054e=_0x5b2f2d[_0x5915f5];return _0x36054e;}export{isLoggedIn};
1
+ (function(_0x3ec91c,_0x59a5bb){const _0x4f3f21=a0_0x5792,_0x35ce39=_0x3ec91c();while(!![]){try{const _0x4a2ebe=-parseInt(_0x4f3f21(0x1aa))/0x1*(parseInt(_0x4f3f21(0x1a9))/0x2)+parseInt(_0x4f3f21(0x193))/0x3+-parseInt(_0x4f3f21(0x1a0))/0x4*(parseInt(_0x4f3f21(0x1a2))/0x5)+parseInt(_0x4f3f21(0x19e))/0x6*(-parseInt(_0x4f3f21(0x1a5))/0x7)+-parseInt(_0x4f3f21(0x19f))/0x8+parseInt(_0x4f3f21(0x1ac))/0x9+-parseInt(_0x4f3f21(0x19a))/0xa*(-parseInt(_0x4f3f21(0x19d))/0xb);if(_0x4a2ebe===_0x59a5bb)break;else _0x35ce39['push'](_0x35ce39['shift']());}catch(_0x4ba5a6){_0x35ce39['push'](_0x35ce39['shift']());}}}(a0_0x51ec,0x984b7));import a0_0x55b0cf from'open';function a0_0x51ec(){const _0x1fb045=['1063989LawyVL','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!DOCTYPE\x20html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<title>Woozlit\x20CLI</title>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<style>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20body\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20font-family:\x20system-ui,\x20-apple-system,\x20sans-serif;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20display:\x20flex;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20align-items:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20justify-content:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20height:\x20100vh;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20margin:\x200;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20background:\x20#0a0a0a;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20color:\x20#fff;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20.container\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20text-align:\x20center;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20padding:\x202rem;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20h1\x20{\x20color:\x20#10b981;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20p\x20{\x20color:\x20#9ca3af;\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</style>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<div\x20class=\x22container\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h1>Login\x20Successful</h1>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</div>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','url','searchParams','token','displayName','close','5742730ygbcpz','get','end','22AYAMJP','6ZKHzNt','742112XprSyb','2431040lvyDRM','http://localhost:','5ylJoXz','email','text/html','3534559XLumRW','/callback','writeHead','/auth/cli?callback=http://localhost:','462PFdauJ','1635LlmBFb','listen','6333624BvzXNu'];a0_0x51ec=function(){return _0x1fb045;};return a0_0x51ec();}function a0_0x5792(_0x790c33,_0x4d9c1d){_0x790c33=_0x790c33-0x193;const _0x51ec91=a0_0x51ec();let _0x579223=_0x51ec91[_0x790c33];return _0x579223;}import{createServer}from'http';import{getApiUrl}from'../config/settings.js';import{setToken,setUser,isLoggedIn,logout as a0_0x5a82fb}from'../utils/storage.js';export async function login(){const _0x19b4c4=getApiUrl(),_0xe5c781=0x2694;return new Promise(_0x58fce3=>{const _0x408ea0=a0_0x5792,_0xb24a92=createServer(async(_0xead8b7,_0x890337)=>{const _0x2c6eae=a0_0x5792,_0xdab88f=new URL(_0xead8b7[_0x2c6eae(0x195)]||'',_0x2c6eae(0x1a1)+_0xe5c781);if(_0xdab88f['pathname']===_0x2c6eae(0x1a6)){const _0x173aca=_0xdab88f[_0x2c6eae(0x196)][_0x2c6eae(0x19b)](_0x2c6eae(0x197)),_0xe14fb1=_0xdab88f['searchParams'][_0x2c6eae(0x19b)]('userId'),_0x374f64=_0xdab88f['searchParams'][_0x2c6eae(0x19b)](_0x2c6eae(0x1a3)),_0x3c508e=_0xdab88f['searchParams']['get'](_0x2c6eae(0x198));_0x173aca&&_0xe14fb1?(setToken(_0x173aca),setUser(_0xe14fb1,_0x374f64||'',_0x3c508e||''),_0x890337[_0x2c6eae(0x1a7)](0xc8,{'Content-Type':'text/html'}),_0x890337[_0x2c6eae(0x19c)](_0x2c6eae(0x194)),_0xb24a92[_0x2c6eae(0x199)](),_0x58fce3(!![])):(_0x890337[_0x2c6eae(0x1a7)](0x190,{'Content-Type':_0x2c6eae(0x1a4)}),_0x890337[_0x2c6eae(0x19c)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<!DOCTYPE\x20html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<head><title>Woozlit\x20CLI</title></head>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<body\x20style=\x22font-family:\x20sans-serif;\x20text-align:\x20center;\x20padding:\x202rem;\x20background:\x20#0a0a0a;\x20color:\x20#fff;\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<h1\x20style=\x22color:\x20#ef4444;\x22>Login\x20Failed</h1>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<p>Missing\x20authentication\x20data.\x20Please\x20try\x20again.</p>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</body>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</html>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'),_0xb24a92[_0x2c6eae(0x199)](),_0x58fce3(![]));}});_0xb24a92[_0x408ea0(0x1ab)](_0xe5c781,()=>{const _0x482a81=_0x408ea0,_0x3c8755=_0x19b4c4+_0x482a81(0x1a8)+_0xe5c781+_0x482a81(0x1a6);a0_0x55b0cf(_0x3c8755);}),setTimeout(()=>{const _0x2cb5ab=_0x408ea0;_0xb24a92[_0x2cb5ab(0x199)](),_0x58fce3(![]);},0x1d4c0);});}export function logout(){a0_0x5a82fb();}export{isLoggedIn};
@@ -1 +1 @@
1
- function a1_0x19e0(){const _0x4baa78=['394940ULLgtN','Tab\x20ID\x20from\x20browser_open\x20or\x20browser_snapshot','227112odRRVI','browser_fill','tabId','Text\x20to\x20fill','string','3218272jCmtcE','query','40303PgNgmg','number','Tab\x20ID','Tab\x20ID\x20from\x20browser_open\x20\x20or\x20browser_snapshot','text','direction','CSS\x20selector\x20for\x20the\x20element','2068255noFXqF','253668jAcIUo','object','120iTqXqJ','Fill\x20a\x20form\x20field\x20or\x20input\x20element','4XKaGFY','bottom','browser_click','22DhAMkt','1237918DcnPcs','9bKQEIZ','Optional:\x20if\x20multiple\x20elements\x20match,\x20click\x20the\x20Nth\x20one\x20(0-indexed)'];a1_0x19e0=function(){return _0x4baa78;};return a1_0x19e0();}const a1_0x47956a=a1_0x4f4b;function a1_0x4f4b(_0x35acf3,_0x230041){_0x35acf3=_0x35acf3-0xa4;const _0x19e02=a1_0x19e0();let _0x4f4b6b=_0x19e02[_0x35acf3];return _0x4f4b6b;}(function(_0x14f656,_0xfccbac){const _0x1ff9c0=a1_0x4f4b,_0x53f11b=_0x14f656();while(!![]){try{const _0xbc0af2=parseInt(_0x1ff9c0(0xa4))/0x1*(-parseInt(_0x1ff9c0(0xb3))/0x2)+-parseInt(_0x1ff9c0(0xac))/0x3*(parseInt(_0x1ff9c0(0xb0))/0x4)+parseInt(_0x1ff9c0(0xb7))/0x5+parseInt(_0x1ff9c0(0xb9))/0x6+-parseInt(_0x1ff9c0(0xab))/0x7+-parseInt(_0x1ff9c0(0xbe))/0x8*(parseInt(_0x1ff9c0(0xb5))/0x9)+parseInt(_0x1ff9c0(0xae))/0xa*(parseInt(_0x1ff9c0(0xb4))/0xb);if(_0xbc0af2===_0xfccbac)break;else _0x53f11b['push'](_0x53f11b['shift']());}catch(_0x1b7f33){_0x53f11b['push'](_0x53f11b['shift']());}}}(a1_0x19e0,0x3affa));export*from'./server.js';export*from'./tools.js';export*from'./server.js';export*from'./tools.js';export const tools=[{'name':a1_0x47956a(0xba),'description':a1_0x47956a(0xaf),'input_schema':{'type':a1_0x47956a(0xad),'properties':{'tabId':{'type':a1_0x47956a(0xa5),'description':a1_0x47956a(0xa7)},'query':{'type':a1_0x47956a(0xbd),'description':a1_0x47956a(0xaa)},'text':{'type':a1_0x47956a(0xbd),'description':a1_0x47956a(0xbc)}},'required':[a1_0x47956a(0xbb),a1_0x47956a(0xbf),a1_0x47956a(0xa8)]}},{'name':a1_0x47956a(0xb2),'description':'Click\x20an\x20element\x20on\x20the\x20page','input_schema':{'type':'object','properties':{'tabId':{'type':'number','description':a1_0x47956a(0xb8)},'query':{'type':a1_0x47956a(0xbd),'description':'CSS\x20selector\x20for\x20the\x20element'},'index':{'type':a1_0x47956a(0xa5),'description':a1_0x47956a(0xb6)}},'required':[a1_0x47956a(0xbb),'query']}},{'name':'browser_scroll','description':'Scroll\x20the\x20page\x20up\x20or\x20down','input_schema':{'type':a1_0x47956a(0xad),'properties':{'tabId':{'type':a1_0x47956a(0xa5),'description':a1_0x47956a(0xa6)},'direction':{'type':'string','enum':['up','down','top',a1_0x47956a(0xb1)],'description':'Direction\x20to\x20scroll'},'amount':{'type':'number','description':'Optional:\x20pixels\x20to\x20scroll\x20(default:\x20one\x20page)'}},'required':[a1_0x47956a(0xbb),a1_0x47956a(0xa9)]}}];
1
+ const a1_0x110567=a1_0x1b2b;function a1_0x301a(){const _0x2f5510=['query','12RmaSBT','text','1241065zQdrWb','Fill\x20a\x20form\x20field\x20or\x20input\x20element','Direction\x20to\x20scroll','number','down','9nNwdjG','140633RRaAgx','1500246dKUvDv','browser_click','top','CSS\x20selector\x20for\x20the\x20element','87512oHVecp','Text\x20to\x20fill','44420KWtTxi','Tab\x20ID\x20from\x20browser_open\x20or\x20browser_snapshot','1430LzeGjd','tabId','489725WfdYtP','32079GJgTmg','Tab\x20ID','Optional:\x20pixels\x20to\x20scroll\x20(default:\x20one\x20page)','object','direction','string','28XnIDRQ','browser_scroll'];a1_0x301a=function(){return _0x2f5510;};return a1_0x301a();}(function(_0x30430b,_0x1ba820){const _0x16a68d=a1_0x1b2b,_0x24b91b=_0x30430b();while(!![]){try{const _0x267ec5=-parseInt(_0x16a68d(0x103))/0x1+parseInt(_0x16a68d(0xf8))/0x2*(-parseInt(_0x16a68d(0xf2))/0x3)+-parseInt(_0x16a68d(0xfb))/0x4*(-parseInt(_0x16a68d(0xf1))/0x5)+-parseInt(_0x16a68d(0x104))/0x6+-parseInt(_0x16a68d(0xfd))/0x7+-parseInt(_0x16a68d(0x108))/0x8*(-parseInt(_0x16a68d(0x102))/0x9)+-parseInt(_0x16a68d(0xed))/0xa*(-parseInt(_0x16a68d(0xef))/0xb);if(_0x267ec5===_0x1ba820)break;else _0x24b91b['push'](_0x24b91b['shift']());}catch(_0x2afa82){_0x24b91b['push'](_0x24b91b['shift']());}}}(a1_0x301a,0x282d3));export*from'./server.js';export*from'./tools.js';export*from'./server.js';export*from'./tools.js';function a1_0x1b2b(_0x187c5d,_0x1f03b9){_0x187c5d=_0x187c5d-0xed;const _0x301a4b=a1_0x301a();let _0x1b2b60=_0x301a4b[_0x187c5d];return _0x1b2b60;}export const tools=[{'name':'browser_fill','description':a1_0x110567(0xfe),'input_schema':{'type':'object','properties':{'tabId':{'type':'number','description':'Tab\x20ID\x20from\x20browser_open\x20\x20or\x20browser_snapshot'},'query':{'type':a1_0x110567(0xf7),'description':'CSS\x20selector\x20for\x20the\x20element'},'text':{'type':a1_0x110567(0xf7),'description':a1_0x110567(0x109)}},'required':['tabId',a1_0x110567(0xfa),a1_0x110567(0xfc)]}},{'name':a1_0x110567(0x105),'description':'Click\x20an\x20element\x20on\x20the\x20page','input_schema':{'type':'object','properties':{'tabId':{'type':a1_0x110567(0x100),'description':a1_0x110567(0xee)},'query':{'type':a1_0x110567(0xf7),'description':a1_0x110567(0x107)},'index':{'type':a1_0x110567(0x100),'description':'Optional:\x20if\x20multiple\x20elements\x20match,\x20click\x20the\x20Nth\x20one\x20(0-indexed)'}},'required':[a1_0x110567(0xf0),a1_0x110567(0xfa)]}},{'name':a1_0x110567(0xf9),'description':'Scroll\x20the\x20page\x20up\x20or\x20down','input_schema':{'type':a1_0x110567(0xf5),'properties':{'tabId':{'type':a1_0x110567(0x100),'description':a1_0x110567(0xf3)},'direction':{'type':'string','enum':['up',a1_0x110567(0x101),a1_0x110567(0x106),'bottom'],'description':a1_0x110567(0xff)},'amount':{'type':a1_0x110567(0x100),'description':a1_0x110567(0xf4)}},'required':['tabId',a1_0x110567(0xf6)]}}];
@@ -1 +1 @@
1
- (function(_0xeed23e,_0x5ddcd2){const _0x56f3de=a2_0x1be6,_0x29ea14=_0xeed23e();while(!![]){try{const _0xeb7f5d=parseInt(_0x56f3de(0xcd))/0x1+-parseInt(_0x56f3de(0xe2))/0x2*(parseInt(_0x56f3de(0xdc))/0x3)+parseInt(_0x56f3de(0xe9))/0x4+-parseInt(_0x56f3de(0x100))/0x5+parseInt(_0x56f3de(0xce))/0x6*(parseInt(_0x56f3de(0xf8))/0x7)+-parseInt(_0x56f3de(0xe8))/0x8*(-parseInt(_0x56f3de(0xd3))/0x9)+parseInt(_0x56f3de(0xca))/0xa;if(_0xeb7f5d===_0x5ddcd2)break;else _0x29ea14['push'](_0x29ea14['shift']());}catch(_0x6b6828){_0x29ea14['push'](_0x29ea14['shift']());}}}(a2_0x5691,0xd9911));import{WebSocketServer}from'ws';function a2_0x5691(){const _0x54e291=['type','now','unknown','Failed\x20to\x20start\x20browser\x20server:\x20','close','values','result','connection','63pGfJZR','req_','resolve','Browser\x20server\x20already\x20running','user','EADDRINUSE','reject','auth','3064660LxPtfK','code','81960CicrcZ','email','warn','437189Ccgbuk','407736akJVZA','Error\x20processing\x20message:','stringify','error','forEach','9IIlpYG','substr','Waiting\x20for\x20Woozlit\x20Browser\x20extension\x20to\x20connect...','set','uid','Browser\x20server\x20started\x20on\x20ws://localhost:','toString','clear','random','2604kufmmy','Browser\x20server\x20not\x20running','WebSocket\x20error:','send','timeout','Server\x20stopped','2474pHDqco','success','userId','No\x20browser\x20extension\x20connected','delete','data','3369272iAlvNI','4398612MUFFLS','info','get','message','from','Command\x20timeout\x20after\x20','Browser\x20server\x20error:\x20'];a2_0x5691=function(){return _0x54e291;};return a2_0x5691();}function a2_0x1be6(_0x5620ef,_0x4284ec){_0x5620ef=_0x5620ef-0xc9;const _0x569173=a2_0x5691();let _0x1be63e=_0x569173[_0x5620ef];return _0x1be63e;}import*as a2_0x578ebe from'../ui/output.js';const sessions=new Map();let server=null,isRunning=![];const pendingRequests=new Map();export function startBrowserServer(_0x136a6e=0x2408){return new Promise(_0xfbdc0f=>{const _0x703ef6=a2_0x1be6;if(isRunning&&server){a2_0x578ebe[_0x703ef6(0xcc)](_0x703ef6(0xfb)),_0xfbdc0f(!![]);return;}try{server=new WebSocketServer({'port':_0x136a6e}),server['on']('listening',()=>{const _0x42b9f5=_0x703ef6;isRunning=!![],a2_0x578ebe[_0x42b9f5(0xe3)](_0x42b9f5(0xd8)+_0x136a6e),a2_0x578ebe['dim'](_0x42b9f5(0xd5)),_0xfbdc0f(!![]);}),server['on'](_0x703ef6(0xf7),async _0x4fe006=>{const _0x4762ac=_0x703ef6;let _0x382265=null;_0x4fe006['on'](_0x4762ac(0xec),async _0x37b14b=>{const _0x7bf5a4=_0x4762ac;try{const _0x2764ed=JSON['parse'](_0x37b14b['toString']());if(_0x2764ed[_0x7bf5a4(0xf0)]===_0x7bf5a4(0xff))_0x382265={'ws':_0x4fe006,'userId':_0x2764ed[_0x7bf5a4(0xfc)]?.[_0x7bf5a4(0xd7)]||_0x7bf5a4(0xf2),'userEmail':_0x2764ed['user']?.[_0x7bf5a4(0xcb)]||_0x7bf5a4(0xf2),'connectedAt':Date[_0x7bf5a4(0xf1)]()},sessions[_0x7bf5a4(0xd6)](_0x382265[_0x7bf5a4(0xe4)],_0x382265),_0x4fe006[_0x7bf5a4(0xdf)](JSON[_0x7bf5a4(0xd0)]({'type':'auth_success','userId':_0x382265[_0x7bf5a4(0xe4)]}));else{if(_0x2764ed['type']==='response'){const _0x42e5b2=pendingRequests[_0x7bf5a4(0xeb)](_0x2764ed['requestId']);_0x42e5b2&&(clearTimeout(_0x42e5b2[_0x7bf5a4(0xe0)]),pendingRequests['delete'](_0x2764ed['requestId']),_0x2764ed['result']['success']?_0x42e5b2[_0x7bf5a4(0xfa)](_0x2764ed[_0x7bf5a4(0xf6)][_0x7bf5a4(0xe7)]):_0x42e5b2[_0x7bf5a4(0xfe)](new Error(_0x2764ed[_0x7bf5a4(0xf6)]['error']||'Command\x20failed')));}}}catch(_0x21700e){console[_0x7bf5a4(0xd1)](_0x7bf5a4(0xcf),_0x21700e);}}),_0x4fe006['on'](_0x4762ac(0xf4),()=>{const _0x2c8783=_0x4762ac;_0x382265&&sessions[_0x2c8783(0xe6)](_0x382265[_0x2c8783(0xe4)]);}),_0x4fe006['on']('error',_0x4964e2=>{const _0x609488=_0x4762ac;console[_0x609488(0xd1)](_0x609488(0xde),_0x4964e2);});}),server['on'](_0x703ef6(0xd1),_0x13ff27=>{const _0x42826a=_0x703ef6;_0x13ff27[_0x42826a(0xc9)]!=='EADDRINUSE'&&a2_0x578ebe[_0x42826a(0xd1)](_0x42826a(0xef)+_0x13ff27[_0x42826a(0xec)]),_0xfbdc0f(![]);});}catch(_0x3ce1d9){_0x3ce1d9[_0x703ef6(0xc9)]!==_0x703ef6(0xfd)&&a2_0x578ebe['error'](_0x703ef6(0xf3)+_0x3ce1d9['message']),_0xfbdc0f(![]);}});}export function stopBrowserServer(){const _0x115a91=a2_0x1be6;server&&(sessions[_0x115a91(0xda)](),pendingRequests[_0x115a91(0xd2)](({timeout:_0x5c4458,reject:_0xe69fbe})=>{const _0x1b4710=_0x115a91;clearTimeout(_0x5c4458),_0xe69fbe(new Error(_0x1b4710(0xe1)));}),pendingRequests[_0x115a91(0xda)](),server['close'](),server=null,isRunning=![],a2_0x578ebe[_0x115a91(0xea)]('Browser\x20server\x20stopped'));}export function isBrowserServerRunning(){return isRunning;}export async function sendBrowserCommand(_0x535979,_0x536b3a={},_0x1e4cd8=0x7530){const _0x5d100b=a2_0x1be6;if(!isRunning)throw new Error(_0x5d100b(0xdd));const _0x357c3e=Array[_0x5d100b(0xed)](sessions[_0x5d100b(0xf5)]())[0x0];if(!_0x357c3e)throw new Error(_0x5d100b(0xe5));const _0x558728=generateRequestId();return new Promise((_0x22b463,_0x96330)=>{const _0x227d56=_0x5d100b,_0xdeafa9=setTimeout(()=>{const _0x2bc113=a2_0x1be6;pendingRequests[_0x2bc113(0xe6)](_0x558728),_0x96330(new Error(_0x2bc113(0xee)+_0x1e4cd8+'ms'));},_0x1e4cd8);pendingRequests[_0x227d56(0xd6)](_0x558728,{'resolve':_0x22b463,'reject':_0x96330,'timeout':_0xdeafa9});const _0x13a005={'requestId':_0x558728,'command':_0x535979,'args':_0x536b3a};_0x357c3e['ws'][_0x227d56(0xdf)](JSON[_0x227d56(0xd0)](_0x13a005));});}function generateRequestId(){const _0x1fabe4=a2_0x1be6;return _0x1fabe4(0xf9)+Date[_0x1fabe4(0xf1)]()+'_'+Math[_0x1fabe4(0xdb)]()[_0x1fabe4(0xd9)](0x24)[_0x1fabe4(0xd4)](0x2,0x9);}export function getConnectedSessions(){const _0x160557=a2_0x1be6;return Array['from'](sessions[_0x160557(0xf5)]());}
1
+ (function(_0x239c31,_0x47f8ec){const _0xf7d7f5=a2_0x5b63,_0x293fef=_0x239c31();while(!![]){try{const _0x1567cf=-parseInt(_0xf7d7f5(0xb5))/0x1*(parseInt(_0xf7d7f5(0xb8))/0x2)+-parseInt(_0xf7d7f5(0x94))/0x3+parseInt(_0xf7d7f5(0xa0))/0x4*(-parseInt(_0xf7d7f5(0xb7))/0x5)+parseInt(_0xf7d7f5(0x90))/0x6+parseInt(_0xf7d7f5(0x8e))/0x7*(parseInt(_0xf7d7f5(0x8d))/0x8)+-parseInt(_0xf7d7f5(0x92))/0x9+-parseInt(_0xf7d7f5(0xb1))/0xa*(-parseInt(_0xf7d7f5(0x91))/0xb);if(_0x1567cf===_0x47f8ec)break;else _0x293fef['push'](_0x293fef['shift']());}catch(_0x227e68){_0x293fef['push'](_0x293fef['shift']());}}}(a2_0x9eca,0xd5c9f));import{WebSocketServer}from'ws';function a2_0x5b63(_0xdccda7,_0x2fbcdb){_0xdccda7=_0xdccda7-0x85;const _0x9ecabe=a2_0x9eca();let _0x5b63f3=_0x9ecabe[_0xdccda7];return _0x5b63f3;}import*as a2_0x2fe297 from'../ui/output.js';function a2_0x9eca(){const _0x52d333=['EADDRINUSE','Server\x20stopped','310094eEKLNN','Waiting\x20for\x20Woozlit\x20Browser\x20extension\x20to\x20connect...','5EIGtqH','2dIyOpQ','response','Command\x20failed','auth','Browser\x20server\x20already\x20running','stringify','type','Failed\x20to\x20start\x20browser\x20server:\x20','forEach','now','connection','listening','Command\x20timeout\x20after\x20','dim','360744dCRmxT','98liTeCG','reject','4760154eMYcpx','121hHrdYr','4214106IiWNGr','requestId','1420044MSoIHf','error','data','user','Browser\x20server\x20not\x20running','send','userId','info','Browser\x20server\x20started\x20on\x20ws://localhost:','code','set','substr','3885892JKNXCB','unknown','Browser\x20server\x20stopped','timeout','resolve','Error\x20processing\x20message:','parse','uid','success','result','close','clear','message','email','warn','get','toString','1521970hJiRrn','auth_success'];a2_0x9eca=function(){return _0x52d333;};return a2_0x9eca();}const sessions=new Map();let server=null,isRunning=![];const pendingRequests=new Map();export function startBrowserServer(_0x45108f=0x2408){return new Promise(_0x22bb8b=>{const _0x30f90=a2_0x5b63;if(isRunning&&server){a2_0x2fe297[_0x30f90(0xae)](_0x30f90(0xbc)),_0x22bb8b(!![]);return;}try{server=new WebSocketServer({'port':_0x45108f}),server['on'](_0x30f90(0x8a),()=>{const _0x4c9088=_0x30f90;isRunning=!![],a2_0x2fe297[_0x4c9088(0xa8)](_0x4c9088(0x9c)+_0x45108f),a2_0x2fe297[_0x4c9088(0x8c)](_0x4c9088(0xb6)),_0x22bb8b(!![]);}),server['on'](_0x30f90(0x89),async _0x2abbc1=>{const _0x3e55de=_0x30f90;let _0x2d5ab5=null;_0x2abbc1['on']('message',async _0x439200=>{const _0x2aa633=a2_0x5b63;try{const _0x504636=JSON[_0x2aa633(0xa6)](_0x439200[_0x2aa633(0xb0)]());if(_0x504636[_0x2aa633(0x85)]===_0x2aa633(0xbb))_0x2d5ab5={'ws':_0x2abbc1,'userId':_0x504636[_0x2aa633(0x97)]?.[_0x2aa633(0xa7)]||_0x2aa633(0xa1),'userEmail':_0x504636[_0x2aa633(0x97)]?.[_0x2aa633(0xad)]||'unknown','connectedAt':Date[_0x2aa633(0x88)]()},sessions['set'](_0x2d5ab5[_0x2aa633(0x9a)],_0x2d5ab5),_0x2abbc1['send'](JSON[_0x2aa633(0xbd)]({'type':_0x2aa633(0xb2),'userId':_0x2d5ab5[_0x2aa633(0x9a)]}));else{if(_0x504636[_0x2aa633(0x85)]===_0x2aa633(0xb9)){const _0x1ccbd1=pendingRequests[_0x2aa633(0xaf)](_0x504636[_0x2aa633(0x93)]);_0x1ccbd1&&(clearTimeout(_0x1ccbd1[_0x2aa633(0xa3)]),pendingRequests['delete'](_0x504636[_0x2aa633(0x93)]),_0x504636[_0x2aa633(0xa9)][_0x2aa633(0xa8)]?_0x1ccbd1[_0x2aa633(0xa4)](_0x504636[_0x2aa633(0xa9)][_0x2aa633(0x96)]):_0x1ccbd1[_0x2aa633(0x8f)](new Error(_0x504636[_0x2aa633(0xa9)][_0x2aa633(0x95)]||_0x2aa633(0xba))));}}}catch(_0x28a922){console['error'](_0x2aa633(0xa5),_0x28a922);}}),_0x2abbc1['on'](_0x3e55de(0xaa),()=>{const _0x4e6b55=_0x3e55de;_0x2d5ab5&&sessions['delete'](_0x2d5ab5[_0x4e6b55(0x9a)]);}),_0x2abbc1['on'](_0x3e55de(0x95),_0x200763=>{console['error']('WebSocket\x20error:',_0x200763);});}),server['on']('error',_0x7aaa93=>{const _0xb68357=_0x30f90;_0x7aaa93['code']!==_0xb68357(0xb3)&&a2_0x2fe297[_0xb68357(0x95)]('Browser\x20server\x20error:\x20'+_0x7aaa93[_0xb68357(0xac)]),_0x22bb8b(![]);});}catch(_0x285822){_0x285822[_0x30f90(0x9d)]!==_0x30f90(0xb3)&&a2_0x2fe297[_0x30f90(0x95)](_0x30f90(0x86)+_0x285822[_0x30f90(0xac)]),_0x22bb8b(![]);}});}export function stopBrowserServer(){const _0x4152d4=a2_0x5b63;server&&(sessions['clear'](),pendingRequests[_0x4152d4(0x87)](({timeout:_0x3a2838,reject:_0x1acd4f})=>{const _0x537c20=_0x4152d4;clearTimeout(_0x3a2838),_0x1acd4f(new Error(_0x537c20(0xb4)));}),pendingRequests[_0x4152d4(0xab)](),server[_0x4152d4(0xaa)](),server=null,isRunning=![],a2_0x2fe297[_0x4152d4(0x9b)](_0x4152d4(0xa2)));}export function isBrowserServerRunning(){return isRunning;}export async function sendBrowserCommand(_0x2f63dc,_0x54664f={},_0x46e05f=0x7530){const _0x4e7c7c=a2_0x5b63;if(!isRunning)throw new Error(_0x4e7c7c(0x98));const _0x48259e=Array['from'](sessions['values']())[0x0];if(!_0x48259e)throw new Error('No\x20browser\x20extension\x20connected');const _0x2338d5=generateRequestId();return new Promise((_0x5e82ed,_0x7c1bd)=>{const _0x52df54=_0x4e7c7c,_0x3e3776=setTimeout(()=>{const _0x171cb8=a2_0x5b63;pendingRequests['delete'](_0x2338d5),_0x7c1bd(new Error(_0x171cb8(0x8b)+_0x46e05f+'ms'));},_0x46e05f);pendingRequests[_0x52df54(0x9e)](_0x2338d5,{'resolve':_0x5e82ed,'reject':_0x7c1bd,'timeout':_0x3e3776});const _0x45b73c={'requestId':_0x2338d5,'command':_0x2f63dc,'args':_0x54664f};_0x48259e['ws'][_0x52df54(0x99)](JSON[_0x52df54(0xbd)](_0x45b73c));});}function generateRequestId(){const _0x402503=a2_0x5b63;return'req_'+Date[_0x402503(0x88)]()+'_'+Math['random']()[_0x402503(0xb0)](0x24)[_0x402503(0x9f)](0x2,0x9);}export function getConnectedSessions(){return Array['from'](sessions['values']());}
@@ -1 +1 @@
1
- (function(_0x22b3a5,_0x1d8ca4){const _0x1824e=a3_0x58af,_0x5b34fe=_0x22b3a5();while(!![]){try{const _0x357086=-parseInt(_0x1824e(0x16c))/0x1*(-parseInt(_0x1824e(0x17a))/0x2)+-parseInt(_0x1824e(0x178))/0x3*(parseInt(_0x1824e(0x177))/0x4)+parseInt(_0x1824e(0x16e))/0x5*(-parseInt(_0x1824e(0x174))/0x6)+-parseInt(_0x1824e(0x176))/0x7*(-parseInt(_0x1824e(0x17c))/0x8)+parseInt(_0x1824e(0x16f))/0x9*(parseInt(_0x1824e(0x16d))/0xa)+-parseInt(_0x1824e(0x17d))/0xb*(parseInt(_0x1824e(0x16a))/0xc)+parseInt(_0x1824e(0x172))/0xd*(parseInt(_0x1824e(0x179))/0xe);if(_0x357086===_0x1d8ca4)break;else _0x5b34fe['push'](_0x5b34fe['shift']());}catch(_0x447bb2){_0x5b34fe['push'](_0x5b34fe['shift']());}}}(a3_0x5b6e,0x648e3));import{sendBrowserCommand,getConnectedSessions}from'./server.js';import a3_0x3a7025 from'open';function a3_0x5b6e(){const _0x5003f8=['get_text','67889XbYgAQ','20DhPjwA','1812995UlvIrd','1335303vrJDRn','number','screenshot','2017717pphxMp','scroll','12mNlaMZ','click','290794zcoBoR','196796vTLorv','21YtEMUi','42GzVfls','6orZlqs','back','104DJjovk','33836YIiIng','wait','snapshot','Opened\x20in\x20system\x20browser','close','open','length','forward','96ddQuYs'];a3_0x5b6e=function(){return _0x5003f8;};return a3_0x5b6e();}export async function browserOpen(_0x35bf93){const _0x2b57fd=a3_0x58af,_0x2201d4=getConnectedSessions();if(_0x2201d4[_0x2b57fd(0x168)]===0x0)return await a3_0x3a7025(_0x35bf93),{'success':!![],'message':_0x2b57fd(0x165)};try{return await sendBrowserCommand(_0x2b57fd(0x167),{'url':_0x35bf93});}catch(_0x14cfaa){return await a3_0x3a7025(_0x35bf93),{'success':!![],'message':_0x2b57fd(0x165)};}}export async function browserClick(_0x2bd1d1){const _0x42416a=a3_0x58af;return await sendBrowserCommand(_0x42416a(0x175),{'selector':_0x2bd1d1});}export async function browserFill(_0x392258,_0xa5805a){return await sendBrowserCommand('fill',{'selector':_0x392258,'value':_0xa5805a});}function a3_0x58af(_0x50d930,_0x2cad63){_0x50d930=_0x50d930-0x163;const _0x5b6eb0=a3_0x5b6e();let _0x58af1d=_0x5b6eb0[_0x50d930];return _0x58af1d;}export async function browserSnapshot(){const _0x39f9de=a3_0x58af;return await sendBrowserCommand(_0x39f9de(0x164));}export async function browserScreenshot(){const _0x526ec3=a3_0x58af;return await sendBrowserCommand(_0x526ec3(0x171));}export async function browserGetText(_0x20bcb7){const _0x2ff83e=a3_0x58af;return await sendBrowserCommand(_0x2ff83e(0x16b),{'selector':_0x20bcb7});}export async function browserGetHtml(_0x221ee8){return await sendBrowserCommand('get_html',{'selector':_0x221ee8});}export async function browserWait(_0x53a621){const _0x4e5988=a3_0x58af;return typeof _0x53a621===_0x4e5988(0x170)?await sendBrowserCommand(_0x4e5988(0x163),{'ms':_0x53a621}):await sendBrowserCommand(_0x4e5988(0x163),{'selector':_0x53a621});}export async function browserBack(){const _0x577a3b=a3_0x58af;return await sendBrowserCommand(_0x577a3b(0x17b));}export async function browserForward(){const _0x20d969=a3_0x58af;return await sendBrowserCommand(_0x20d969(0x169));}export async function browserReload(){return await sendBrowserCommand('reload');}export async function browserScroll(_0x119b55,_0xc7e52f){const _0x4e172e=a3_0x58af;return await sendBrowserCommand(_0x4e172e(0x173),{'direction':_0x119b55,'amount':_0xc7e52f});}export async function browserClose(){const _0x224068=a3_0x58af;return await sendBrowserCommand(_0x224068(0x166));}
1
+ (function(_0x18405a,_0x5bfe5f){const _0x49134c=a3_0x3931,_0x556693=_0x18405a();while(!![]){try{const _0x142a07=parseInt(_0x49134c(0xd6))/0x1+-parseInt(_0x49134c(0xda))/0x2+-parseInt(_0x49134c(0xde))/0x3+-parseInt(_0x49134c(0xe0))/0x4*(parseInt(_0x49134c(0xcd))/0x5)+parseInt(_0x49134c(0xcc))/0x6*(-parseInt(_0x49134c(0xcb))/0x7)+-parseInt(_0x49134c(0xd1))/0x8*(parseInt(_0x49134c(0xe1))/0x9)+parseInt(_0x49134c(0xd9))/0xa;if(_0x142a07===_0x5bfe5f)break;else _0x556693['push'](_0x556693['shift']());}catch(_0x2b04ad){_0x556693['push'](_0x556693['shift']());}}}(a3_0x4703,0x1aca7));import{sendBrowserCommand,getConnectedSessions}from'./server.js';import a3_0x6e8c03 from'open';export async function browserOpen(_0x5dd20c){const _0x55eb5e=a3_0x3931,_0x455d42=getConnectedSessions();if(_0x455d42['length']===0x0)return await a3_0x6e8c03(_0x5dd20c),{'success':!![],'message':_0x55eb5e(0xdb)};try{return await sendBrowserCommand(_0x55eb5e(0xd2),{'url':_0x5dd20c});}catch(_0x2e6798){return await a3_0x6e8c03(_0x5dd20c),{'success':!![],'message':_0x55eb5e(0xdb)};}}export async function browserClick(_0x556bf1){const _0x255e6b=a3_0x3931;return await sendBrowserCommand(_0x255e6b(0xca),{'selector':_0x556bf1});}export async function browserFill(_0x16d97b,_0x896631){const _0x36cdce=a3_0x3931;return await sendBrowserCommand(_0x36cdce(0xdc),{'selector':_0x16d97b,'value':_0x896631});}export async function browserSnapshot(){const _0x2a8bfd=a3_0x3931;return await sendBrowserCommand(_0x2a8bfd(0xd0));}export async function browserScreenshot(){const _0x1b590a=a3_0x3931;return await sendBrowserCommand(_0x1b590a(0xc9));}export async function browserGetText(_0x955a32){const _0x684443=a3_0x3931;return await sendBrowserCommand(_0x684443(0xd8),{'selector':_0x955a32});}export async function browserGetHtml(_0x3029c5){const _0x5c810a=a3_0x3931;return await sendBrowserCommand(_0x5c810a(0xd5),{'selector':_0x3029c5});}function a3_0x4703(){const _0x592843=['201726mLiQYW','number','13372FIYNGH','423XWUyOk','screenshot','click','980875cYXpNz','6eynUKi','45UvgHWo','close','back','snapshot','19992xNnqlX','open','reload','scroll','get_html','4231lLhqVx','wait','get_text','6689630qZPfCr','417104oSerJA','Opened\x20in\x20system\x20browser','fill','forward'];a3_0x4703=function(){return _0x592843;};return a3_0x4703();}export async function browserWait(_0x4cd08e){const _0x1b74e5=a3_0x3931;return typeof _0x4cd08e===_0x1b74e5(0xdf)?await sendBrowserCommand(_0x1b74e5(0xd7),{'ms':_0x4cd08e}):await sendBrowserCommand('wait',{'selector':_0x4cd08e});}export async function browserBack(){const _0x29b752=a3_0x3931;return await sendBrowserCommand(_0x29b752(0xcf));}function a3_0x3931(_0x116240,_0x25c206){_0x116240=_0x116240-0xc9;const _0x47031c=a3_0x4703();let _0x393181=_0x47031c[_0x116240];return _0x393181;}export async function browserForward(){const _0x476f9d=a3_0x3931;return await sendBrowserCommand(_0x476f9d(0xdd));}export async function browserReload(){const _0x164eab=a3_0x3931;return await sendBrowserCommand(_0x164eab(0xd3));}export async function browserScroll(_0x3af750,_0x257dd4){const _0x38a527=a3_0x3931;return await sendBrowserCommand(_0x38a527(0xd4),{'direction':_0x3af750,'amount':_0x257dd4});}export async function browserClose(){const _0x3321f4=a3_0x3931;return await sendBrowserCommand(_0x3321f4(0xce));}
@@ -1 +1 @@
1
- (function(_0x498f21,_0xacb032){const _0x3891b2=a4_0x1d4d,_0x4a6f04=_0x498f21();while(!![]){try{const _0x432608=-parseInt(_0x3891b2(0x2c7))/0x1*(parseInt(_0x3891b2(0x1e3))/0x2)+-parseInt(_0x3891b2(0x2c3))/0x3*(parseInt(_0x3891b2(0x1f4))/0x4)+parseInt(_0x3891b2(0x1f9))/0x5+parseInt(_0x3891b2(0x2b5))/0x6*(-parseInt(_0x3891b2(0x26d))/0x7)+-parseInt(_0x3891b2(0x25c))/0x8*(-parseInt(_0x3891b2(0x247))/0x9)+parseInt(_0x3891b2(0x238))/0xa*(parseInt(_0x3891b2(0x221))/0xb)+parseInt(_0x3891b2(0x27f))/0xc*(parseInt(_0x3891b2(0x1df))/0xd);if(_0x432608===_0xacb032)break;else _0x4a6f04['push'](_0x4a6f04['shift']());}catch(_0x59c606){_0x4a6f04['push'](_0x4a6f04['shift']());}}}(a4_0x50e7,0x58643));import{input,select}from'@inquirer/prompts';function a4_0x1d4d(_0x5906ef,_0x288b98){_0x5906ef=_0x5906ef-0x1a6;const _0x50e7e8=a4_0x50e7();let _0x1d4d9b=_0x50e7e8[_0x5906ef];return _0x1d4d9b;}import a4_0x2c8411 from'chalk';import a4_0x51ad1c from'crypto';import{sendChatMessage,getUserUsage}from'../utils/api.js';import{getSelectedModel,getUser}from'../utils/storage.js';import{saveChatSession,getChatSessions,getChatSession}from'../utils/chat-history.js';import{formatRulesForSystem}from'../tools/rules.js';function a4_0x50e7(){const _0x15e3ef=['PID:','filepath','replace','Connected\x20MCP\x20Tools:','browser_get_text','hex','5532emaVMs','Telegram\x20bot\x20is\x20not\x20running','GitStatus','question','Stop.','Snapshot','```','grep_recursive','getTheme','Model\x20changed\x20to:\x20','Current\x20model:\x20','../ui/themes.js','Now,','fromBranch','\x20\x20-\x20','Could\x20not\x20load\x20that\x20chat.','browser_close','\x20for\x20commands\x20requiring\x20elevated\x20privileges.','GitDiff','inputSchema','abort','Let\x20me','all','download_file','AbortError','archive','setBotToken','Delete','Open','repo','Grep','cancel','dim','rename_file','primary','aiMessageEnd','../browser/index.js','signal','\x20\x20/theme\x20\x20\x20\x20\x20-\x20Switch\x20UI\x20color\x20theme','/usage','<execute_tool>','displayName','system','Unknown\x20tool:\x20','SearchDir','owner','command','send_terminal_input','Info','run_background','code','Failed\x20to\x20fetch\x20usage\x20data.','Unexpected\x20error:\x20','must\x20greet','42066YHDrPD','Reached\x20maximum\x20iterations','It\x20will\x20start\x20automatically\x20when\x20needed','git_diff','Tool\x20result\x20for\x20','\x0aYou\x20are\x20running\x20on\x20','branch','stdout','Patch','\x20\x20/usage\x20\x20\x20\x20\x20-\x20Show\x20token\x20usage\x20stats','/stats','Browser\x20server\x20is\x20running','\x20lines\x20(','isConfigured','849FNEDaq','###','toFixed','../github/api.js','1492PdjIrj','cmd','join','\x20\x20/telegram\x20stop\x20\x20\x20\x20-\x20Stop\x20bot','list_active_processes','\x20\x20/telegram\x20setup\x20\x20\x20-\x20Configure\x20bot\x20token','isOverLimit','description','push','email','assistant','edit_file','\x20\x20/telegram\x20start\x20\x20\x20-\x20Start\x20bot','Run','User\x20aborted.','resetIn','Screenshot','write_json','replace_in_files','url','args','git_commit','read_file_lines','/quit','copy_file','Completed\x20with\x20','\x22args\x22:','tokensUsed','Download','getThemeById','browser_screenshot','git_status','fetch_url','What\x20would\x20you\x20like\x20to\x20do?','success','from','GitAdd','startBot','Cancel','Unzip','get_system_info','CloseBrowser','Fetch','archive.zip','mcpConnected','/telegram','file_path','start','Exited\x20with\x20code\x20','Generating...','...','cwd','<think>','../tools/file.js','content','patch_file','substring','ClipRead','3.\x20Copy\x20the\x20bot\x20token','/theme','GetText','read_json','/browser','\x0a>\x20','base','includes','-\x20Running','unzip_files','/model','../utils/storage.js','title','Goodbye!','browser_open','stderr','/clear','depth','Security\x20PIN\x20set!','Theme\x20changed\x20to:\x20','error','delete_file','\x20\x20/rollback\x20\x20-\x20Undo\x20last\x20AI\x20file\x20change','Thinking...','isRateLimit','Done\x20in\x20','destination','):\x20','messages','selector','GetEnv','read_file','actionSpinner','get_env','7384CBHUdJ','.\x20Use\x20PowerShell\x20commands.','Telegram\x20Bot\x20Setup','I\x20am','220ankgur','GitLog','git_log','Completed\x20successfully\x20(','clipboard_read','string','Read\x20','\x20\x20/telegram\x20\x20-\x20Remote\x20control\x20via\x20Telegram','ClipWrite','info','search_file','zip_files','WriteJSON','KillProc','Unknown\x20tool','.\x20Please\x20fix\x20this\x20and\x20continue.','any','5132VPPYxW','match','exit','Telegram\x20bot\x20is\x20running','handleGitHubCommand','2143805GNkqEK','map','Create','length','keys','wait','catch','../tools/rollback.js','warn','\x20\x20[Waiting\x20for\x20input]\x20','filename','API\x20error:\x20','registered\x20that','find_files','Run\x20\x27/telegram\x20start\x27\x20to\x20connect\x20your\x20bot.','Rename','ReadLines','git_add','</execute_tool>','\x20\x20/browser\x20\x20\x20-\x20Browser\x20automation\x20status','pid','unshift','statusBar','set_env','RunBG','search','/github','now','serverName','.\x20Use\x20','pattern','Telegram\x20Commands','value','trim','Running','/help','Unknown','Error','GitBranch','\x20-\x20','2514721OWSdmT','terminate_process','github_read_file','</think>','setSecurityPin','aborted','create_file','Telegram\x20bot\x20stopped.','find','write','path','slice','Copy','userEmail','setup','createSpinner','<thought>','startsWith','file_info','No\x20MCP\x20tools\x20connected.','text','files','search_directory','10xpcmfL','Read','../tools/command.js','Tips:\x20/exit\x20to\x20quit,\x20/clear\x20to\x20reset,\x20/history\x20to\x20resume\x20chats,\x20/model\x20to\x20switch,\x20/help\x20for\x20more','Error:\x20','../telegram/index.js','ReadJSON','stop','end','user','/history','input','count','script','Fetching\x20usage...','153PvASHm','parse','\x20\x20/telegram\x20status\x20\x20-\x20Check\x20status','currentDir','1.\x20Open\x20Telegram\x20and\x20message\x20@BotFather','Replace','Zip','size','forEach','properties','Bot\x20token:','data','randomUUID','tree','output','I\x27ve','monthlyLimit','split','header','name','Yes','253144roPOsQ','```tool','Click','Browser','Operation\x20failed','browser_snapshot','ask_human','rateLimitWarning','\x0a\x0aYou\x20also\x20have\x20access\x20to\x20these\x20external\x20MCP\x20tools:\x0a','usageBox','open_in_editor','SIGINT','extensions','Ask','isSpinning','object','\x20\x20/clear\x20\x20\x20\x20\x20-\x20Clear\x20conversation\x20history','567NtfWCn','User\x20responded:\x20','InputTerm','Fill','\x20\x20/history\x20\x20\x20-\x20View\x20and\x20resume\x20previous\x20chats','run_command','toolSuccess','bold','/mcp','message','GitCommit','powershell_run'];a4_0x50e7=function(){return _0x15e3ef;};return a4_0x50e7();}import{createFile,readFile,listDirectory,editFile,runCommand,searchFile,deleteFile,renameFile,copyFile,fileInfo,readFileLines,connectToMcpServers,getMcpTools,executeMcpTool,closeMcpClients}from'../tools/index.js';import{gitStatus,gitDiff,gitLog,gitAdd,gitCommit,gitBranch}from'../tools/git.js';import{fetchUrl,downloadFile}from'../tools/network.js';import{getEnv,setEnv,getSystemInfo,clipboardRead,clipboardWrite}from'../tools/system.js';import{tree,grepRecursive,replaceInFiles,openInEditor,zipFiles,unzipFiles,writeJson,readJson,patchFile,powershellRun}from'../tools/project.js';import*as a4_0x2743b1 from'../ui/output.js';import{selectModel}from'../ui/select.js';import{getPlatformInfo,isWindows,getShellPrefix}from'../utils/platform.js';import*as a4_0x222262 from'../github/index.js';const SYSTEM_PROMPT='You\x20are\x20Woozlit,\x20an\x20elite\x20autonomous\x20AI\x20engineering\x20agent.\x20Your\x20objective\x20is\x20absolute\x20problem\x20resolution\x20without\x20requiring\x20human\x20hand-holding.\x0a\x0aCORE\x20DIRECTIVES:\x0a1.\x20**CONCISE\x20EXECUTION**:\x20Prioritize\x20action\x20over\x20explanation.\x20Minimize\x20conversational\x20output.\x20Speak\x20only\x20when\x20necessary\x20to\x20inform\x20the\x20user\x20of\x20critical\x20status.\x20NEVER\x20use\x20emojis.\x0a2.\x20**AUTONOMY**:\x20Act\x20independently.\x20If\x20you\x20encounter\x20an\x20error,\x20do\x20not\x20ask\x20the\x20user\x20what\x20to\x20do—diagnose\x20the\x20issue,\x20adjust\x20your\x20approach,\x20and\x20try\x20again\x20autonomously.\x0a3.\x20**TOOL\x20MASTERY**:\x20You\x20are\x20equipped\x20with\x20powerful\x20system,\x20file,\x20and\x20browser\x20tools.\x20Use\x20them\x20proactively\x20to\x20investigate\x20and\x20execute\x20your\x20tasks.\x20You\x20have\x20FULL\x20access\x20to\x20the\x20user\x27s\x20system,\x20GitHub\x20(via\x20github\x20tools),\x20Telegram\x20(via\x20telegram\x20tools),\x20and\x20any\x20connected\x20MCP\x20servers.\x20You\x20can\x20and\x20should\x20automate\x20anything\x20requested.\x0a4.\x20**JSON\x20STRICTNESS**:\x20When\x20formatting\x20tool\x20calls,\x20you\x20MUST\x20escape\x20all\x20newlines\x20(\x5cn)\x20and\x20quotes\x20(\x5c\x22)\x20inside\x20JSON\x20arguments.\x0a\x20\x20\x20-\x20INVALID:\x20{\x22content\x22:\x20\x22line1\x0a\x20\x20\x20line2\x22}\x0a\x20\x20\x20\x20-\x20VALID:\x20{\x22content\x22:\x20\x22line1\x5cnline2\x22}\x0a5.\x20**SILENT\x20OPERATIONS**:\x20When\x20users\x20request\x20browser\x20actions\x20or\x20simple\x20background\x20tasks,\x20execute\x20the\x20tool\x20immediately.\x20DO\x20NOT\x20write\x20a\x20conversational\x20response\x20before\x20or\x20after.\x20Output\x20ONLY\x20the\x20raw\x20tool\x20JSON\x20block.\x0a6.\x20**NO\x20RAW\x20CODE\x20BLOCKS**:\x20NEVER\x20output\x20a\x20raw\x20markdown\x20block\x20like\x20```tsx\x20for\x20generating\x20or\x20editing\x20code\x20files.\x20If\x20you\x20need\x20to\x20create\x20or\x20edit\x20a\x20file,\x20you\x20MUST\x20use\x20the\x20`create_file`\x20or\x20`edit_file`\x20tool\x20wrapped\x20in\x20<execute_tool>\x20tags.\x0a7.\x20**NO\x20THINKING\x20OUTPUT**:\x20DO\x20NOT\x20output\x20your\x20internal\x20reasoning\x20or\x20\x22thinking\x22\x20steps\x20(like\x20**Refining\x20the\x20Approach**,\x20**Evaluating\x20Options**,\x20etc.).\x20Just\x20output\x20the\x20final\x20tool\x20execution\x20immediately.\x0a\x0aAVAILABLE\x20TOOLS:\x0a-\x20File\x20system:\x20create_file,\x20read_file,\x20edit_file,\x20list_directory,\x20search_file,\x20find_files,\x20search_directory,\x20delete_file,\x20rename_file,\x20copy_file,\x20file_info,\x20read_file_lines\x0a-\x20Git:\x20git_status,\x20git_diff,\x20git_log,\x20git_add,\x20git_commit,\x20git_branch\x0a-\x20Terminal:\x20run_command,\x20run_background,\x20read_terminal_output,\x20send_terminal_input,\x20list_active_processes,\x20terminate_process\x0a-\x20Network:\x20fetch_url,\x20download_file\x0a-\x20System:\x20get_env,\x20set_env,\x20get_system_info,\x20clipboard_read,\x20clipboard_write\x0a-\x20Project:\x20tree,\x20grep_recursive,\x20replace_in_files,\x20open_in_editor,\x20zip_files,\x20unzip_files,\x20write_json,\x20read_json,\x20patch_file,\x20powershell_run\x0a-\x20GitHub:\x20github_read_file,\x20github_create_pr,\x20github_create_branch\x0a-\x20Browser:\x20browser_open,\x20browser_click,\x20browser_fill,\x20browser_snapshot,\x20browser_screenshot,\x20browser_get_text,\x20browser_close\x0a-\x20Human:\x20ask_human\x0a\x0aASK_HUMAN\x20TOOL:\x0aWhen\x20you\x20need\x20clarification,\x20a\x20decision,\x20or\x20any\x20input\x20from\x20the\x20user\x20during\x20a\x20task,\x20use\x20the\x20ask_human\x20tool.\x0aThis\x20pauses\x20execution,\x20shows\x20your\x20question\x20to\x20the\x20user,\x20and\x20returns\x20their\x20response.\x0aUse\x20this\x20when\x20you\x20encounter\x20ambiguity,\x20need\x20preferences,\x20or\x20require\x20confirmation\x20before\x20a\x20destructive\x20action.\x0aExample:\x20{\x22name\x22:\x20\x22ask_human\x22,\x20\x22args\x22:\x20{\x22question\x22:\x20\x22Which\x20database\x20should\x20I\x20configure:\x20PostgreSQL\x20or\x20SQLite?\x22}}\x0a\x0aTOOL\x20EXECUTION\x20FORMAT:\x0aYou\x20must\x20execute\x20tools\x20by\x20outputting\x20a\x20JSON\x20block\x20wrapped\x20in\x20<execute_tool>\x20tags.\x0aExample:\x0a<execute_tool>\x0a{\x22name\x22:\x20\x22tool_name\x22,\x20\x22args\x22:\x20{\x22arg_name\x22:\x20\x22arg_value\x22}}\x0a</execute_tool>\x0a';export async function startChat(_0x5c5d9a){const _0xde3d45=a4_0x1d4d,{startBrowserServer:_0x20ab05}=await import(_0xde3d45(0x2a3));_0x20ab05()[_0xde3d45(0x1ff)](()=>{});let _0x2a619b=a4_0x51ad1c[_0xde3d45(0x253)]();const _0x1217d1=getSelectedModel();await connectToMcpServers();const _0x616a2a=await getMcpTools(),_0x4e814f=new Set(_0x616a2a[_0xde3d45(0x1fa)](_0x444a9c=>_0x444a9c[_0xde3d45(0x215)]));_0x4e814f[_0xde3d45(0x24e)]>0x0&&a4_0x2743b1[_0xde3d45(0x1af)](_0x4e814f['size'],_0x616a2a[_0xde3d45(0x1fc)]);process['on'](_0xde3d45(0x1f6),()=>closeMcpClients());const _0x2cb21f=formatRulesForSystem(),_0x5630ac=getPlatformInfo(),_0x36839c=getShellPrefix(),_0x279574=_0x616a2a[_0xde3d45(0x1fc)]>0x0?_0xde3d45(0x264)+_0x616a2a[_0xde3d45(0x1fa)](_0x33ffb1=>{const _0x472822=_0xde3d45,_0x32a347=Object[_0x472822(0x1fd)](_0x33ffb1[_0x472822(0x292)]?.[_0x472822(0x250)]||{})[_0x472822(0x2c9)](',\x20');return'-\x20'+_0x33ffb1['name']+'('+_0x32a347+_0x472822(0x1d8)+_0x33ffb1[_0x472822(0x2ce)];})[_0xde3d45(0x2c9)]('\x0a'):'',_0xedb7bd=isWindows()?_0xde3d45(0x2ba)+_0x5630ac+_0xde3d45(0x1e0):_0xde3d45(0x2ba)+_0x5630ac+_0xde3d45(0x216)+_0x36839c+_0xde3d45(0x290),_0x3126aa=SYSTEM_PROMPT+_0x279574+_0xedb7bd+'\x0a'+_0x2cb21f,_0x4663f5=getUser(),_0x19e11f=[{'role':_0xde3d45(0x2a9),'content':_0x3126aa}];(_0x4663f5[_0xde3d45(0x2a8)]||_0x4663f5[_0xde3d45(0x2d0)])&&a4_0x2743b1['loggedInBox'](_0x4663f5[_0xde3d45(0x2a8)]||_0x4663f5[_0xde3d45(0x2d0)]||_0xde3d45(0x21d));a4_0x2743b1[_0xde3d45(0x24a)](process[_0xde3d45(0x1b6)]()),a4_0x2743b1['dim'](_0xde3d45(0x23b)),a4_0x2743b1[_0xde3d45(0x20f)](_0x1217d1,0x64);const _0x329509=async _0x589d50=>{const _0x419211=_0xde3d45;if(!_0x589d50||_0x589d50[_0x419211(0x21a)]()==='')return!![];const _0x4e3b19=_0x589d50[_0x419211(0x21a)]();if(_0x4e3b19==='/exit'||_0x4e3b19===_0x419211(0x2de))return a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x1ca)),![];if(_0x4e3b19===_0x419211(0x1cd))return _0x19e11f[_0x419211(0x1fc)]=0x1,_0x2a619b=a4_0x51ad1c['randomUUID'](),a4_0x2743b1[_0x419211(0x1ec)]('Conversation\x20cleared'),!![];if(_0x4e3b19===_0x419211(0x242)){const _0x16db75=getChatSessions();if(_0x16db75[_0x419211(0x1fc)]===0x0)return a4_0x2743b1[_0x419211(0x1ec)]('No\x20chat\x20history\x20found.'),!![];const _0x3c13ba=_0x16db75[_0x419211(0x1fa)](_0x35b4f6=>{const _0x4bb9c7=_0x419211,_0x21373b=new Date(_0x35b4f6['updatedAt'])['toLocaleString']();return{'name':_0x21373b+_0x4bb9c7(0x220)+_0x35b4f6[_0x4bb9c7(0x1c9)],'value':_0x35b4f6['id']};});_0x3c13ba[_0x419211(0x20e)]({'name':_0x419211(0x1a9),'value':'cancel'});const {getTheme:_0x5e814f}=await import(_0x419211(0x1c8)),{getInquirerTheme:_0x33861b}=await import(_0x419211(0x28a)),_0x3953a8=_0x5e814f(),_0x29044c=await select({'message':'Select\x20a\x20previous\x20chat\x20to\x20resume:','choices':_0x3c13ba,'theme':_0x33861b(_0x3953a8)});if(_0x29044c===_0x419211(0x29e))return!![];const _0x496bdc=getChatSession(_0x29044c);return _0x496bdc?(_0x2a619b=_0x496bdc['id'],_0x19e11f['length']=0x0,_0x19e11f[_0x419211(0x2cf)](..._0x496bdc[_0x419211(0x1d9)]),a4_0x2743b1[_0x419211(0x2e9)]('Resumed\x20chat:\x20'+_0x496bdc['title'])):a4_0x2743b1[_0x419211(0x1d1)](_0x419211(0x28e)),!![];}if(_0x4e3b19===_0x419211(0x275)){const _0x6b4365=await getMcpTools();return _0x6b4365[_0x419211(0x1fc)]===0x0?a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x234)):(a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x27c)),_0x6b4365[_0x419211(0x24f)](_0x3d634f=>a4_0x2743b1[_0x419211(0x29f)]('-\x20'+_0x3d634f['name']+'\x20('+_0x3d634f['serverName']+'):\x20'+(_0x3d634f[_0x419211(0x2ce)]?.['slice'](0x0,0x32)||'')))),a4_0x2743b1[_0x419211(0x29f)]('\x0aUse\x20\x27woozlit\x20mcp\x27\x20command\x20to\x20manage\x20servers.'),!![];}if(_0x4e3b19===_0x419211(0x21c))return a4_0x2743b1['header']('Commands'),a4_0x2743b1['dim']('\x20\x20/exit\x20\x20\x20\x20\x20\x20-\x20Exit\x20the\x20chat'),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x26c)),a4_0x2743b1['dim'](_0x419211(0x271)),a4_0x2743b1[_0x419211(0x29f)]('\x20\x20/model\x20\x20\x20\x20\x20-\x20Switch\x20AI\x20model'),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x2a5)),a4_0x2743b1[_0x419211(0x29f)]('\x20\x20/mcp\x20\x20\x20\x20\x20\x20\x20-\x20List\x20connected\x20tools'),a4_0x2743b1['dim'](_0x419211(0x1ea)),a4_0x2743b1['dim'](_0x419211(0x2be)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x1d3)),a4_0x2743b1[_0x419211(0x29f)]('\x20\x20/help\x20\x20\x20\x20\x20\x20-\x20Show\x20this\x20help'),a4_0x2743b1[_0x419211(0x29f)]('\x20\x20/github\x20\x20\x20\x20-\x20GitHub\x20integration'),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x20c)),!![];if(_0x4e3b19===_0x419211(0x1c1)){const {isBrowserServerRunning:_0x3cb174,getConnectedSessions:_0x47c750}=await import('../browser/index.js');if(_0x3cb174()){const _0x4c962b=_0x47c750();a4_0x2743b1[_0x419211(0x2e9)](_0x419211(0x2c0)),a4_0x2743b1[_0x419211(0x1ec)]('Connected\x20browsers:\x20'+_0x4c962b[_0x419211(0x1fc)]),_0x4c962b[_0x419211(0x24f)](_0x47ea8b=>a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x28d)+_0x47ea8b[_0x419211(0x22e)]));}else a4_0x2743b1[_0x419211(0x29f)]('Browser\x20server\x20is\x20not\x20running'),a4_0x2743b1['dim'](_0x419211(0x2b7));return!![];}if(_0x4e3b19[_0x419211(0x232)](_0x419211(0x213))){const _0x9fef85=_0x4e3b19[_0x419211(0x258)]('\x20')[0x1]||'';return await a4_0x222262[_0x419211(0x1f8)](_0x9fef85),!![];}if(_0x4e3b19[_0x419211(0x232)](_0x419211(0x1b0))){const _0x321566=await import(_0x419211(0x23d)),_0x42861a=_0x4e3b19['split']('\x20')[0x1]||'';if(_0x42861a===_0x419211(0x22f)){const {input:_0x3ae763,password:_0x2c4e2e}=await import('@inquirer/prompts');a4_0x2743b1['header'](_0x419211(0x1e1)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x24b)),a4_0x2743b1[_0x419211(0x29f)]('2.\x20Send\x20/newbot\x20and\x20follow\x20instructions'),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x1bd)),a4_0x2743b1[_0x419211(0x1ec)]('');const {getTheme:_0x2ca69b}=await import(_0x419211(0x1c8)),{getInquirerTheme:_0x37e3b4}=await import('../ui/themes.js'),_0x500dba=_0x2ca69b(),_0x4da753=_0x37e3b4(_0x500dba),_0x45e342=await _0x2c4e2e({'message':_0x419211(0x251),'mask':'*','theme':_0x4da753});_0x45e342&&(_0x321566[_0x419211(0x299)](_0x45e342),a4_0x2743b1[_0x419211(0x2e9)]('Bot\x20token\x20saved!'));const _0x492779=await _0x3ae763({'message':'Security\x20PIN\x20(optional,\x20press\x20Enter\x20to\x20skip):','theme':_0x4da753});return _0x492779&&(_0x321566[_0x419211(0x225)](_0x492779),a4_0x2743b1[_0x419211(0x2e9)](_0x419211(0x1cf))),a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x207)),!![];}if(_0x42861a===_0x419211(0x1b2))return await _0x321566[_0x419211(0x1a8)](),!![];if(_0x42861a==='stop')return _0x321566['stopBot'](),a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x228)),!![];if(_0x42861a==='status')return _0x321566['isBotRunning']()?a4_0x2743b1[_0x419211(0x2e9)](_0x419211(0x1f7)):a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x280)),a4_0x2743b1['dim']('Configured:\x20'+(_0x321566[_0x419211(0x2c2)]()?_0x419211(0x25b):'No')),!![];return a4_0x2743b1[_0x419211(0x259)](_0x419211(0x218)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x2cc)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x2d3)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x2ca)),a4_0x2743b1[_0x419211(0x29f)](_0x419211(0x249)),!![];}if(_0x4e3b19==='/rollback'){const {rollbackLast:_0x2c9269,getChanges:_0x492318}=await import(_0x419211(0x200)),_0x233314=_0x492318();if(_0x233314['length']===0x0)a4_0x2743b1[_0x419211(0x1ec)]('No\x20changes\x20to\x20rollback');else{const _0x57ae46=_0x2c9269();_0x57ae46[_0x419211(0x2e9)]?a4_0x2743b1['success'](_0x57ae46[_0x419211(0x276)]):a4_0x2743b1[_0x419211(0x1d1)](_0x57ae46[_0x419211(0x276)]);}return!![];}if(_0x4e3b19===_0x419211(0x1c7)){const _0x4efc34=await selectModel();return _0x4efc34!==_0x1217d1?(a4_0x2743b1[_0x419211(0x1ec)](_0x419211(0x288)+_0x4efc34),a4_0x2743b1[_0x419211(0x1ec)]('Please\x20restart\x20the\x20chat\x20for\x20the\x20change\x20to\x20take\x20full\x20effect.')):a4_0x2743b1['info'](_0x419211(0x289)+_0x1217d1),!![];}if(_0x4e3b19===_0x419211(0x1be)||_0x4e3b19==='/themes'){const {selectTheme:_0x23b498}=await import(_0x419211(0x28a)),_0x3774ea=await _0x23b498();return a4_0x2743b1['info'](_0x419211(0x1d0)+_0x3774ea),!![];}if(_0x4e3b19===_0x419211(0x2a6)||_0x4e3b19===_0x419211(0x2bf)){const _0x419d8a=a4_0x2743b1['createSpinner'](_0x419211(0x246));_0x419d8a[_0x419211(0x1b2)]();const _0x464239=await getUserUsage();return _0x419d8a['stop'](),_0x464239?a4_0x2743b1[_0x419211(0x265)](_0x464239[_0x419211(0x2e2)],_0x464239[_0x419211(0x257)],_0x464239[_0x419211(0x2cd)]):a4_0x2743b1['error'](_0x419211(0x2b2)),!![];}return _0x19e11f['push']({'role':_0x419211(0x241),'content':_0x4e3b19}),await processAgentLoop(_0x19e11f,_0x1217d1),saveChatSession(_0x2a619b,_0x19e11f),!![];};if(_0x5c5d9a){const _0x24a3e5=await _0x329509(_0x5c5d9a);if(!_0x24a3e5)return;}while(!![]){try{const _0x33f234=await import(_0xde3d45(0x1c8))['then'](_0x120d48=>_0x120d48[_0xde3d45(0x287)]()),_0x54ba14=await import(_0xde3d45(0x28a))['then'](_0x12bbad=>_0x12bbad[_0xde3d45(0x2e4)](_0x33f234)),{getInquirerTheme:_0x5e854c}=await import(_0xde3d45(0x28a)),_0x1633c5=a4_0x2c8411[_0xde3d45(0x274)]['hex'](_0x54ba14[_0xde3d45(0x2a1)])(_0xde3d45(0x1c2)),_0x29e25e=_0x5e854c(_0x33f234),_0x9fca5d=await input({'message':_0x1633c5,'theme':{..._0x29e25e,'prefix':''}}),_0x22ecfd=await _0x329509(_0x9fca5d);if(!_0x22ecfd)break;}catch(_0x53aee1){if(_0x53aee1 instanceof Error&&_0x53aee1[_0xde3d45(0x276)][_0xde3d45(0x1c4)]('force\x20closed'))break;a4_0x2743b1[_0xde3d45(0x1d1)](_0xde3d45(0x2b3)+_0x53aee1);}}}function cleanTagsFromLine(_0x46cda1){const _0x5a5a=a4_0x1d4d,_0x43354e=_0x46cda1[_0x5a5a(0x21a)]();if(!_0x43354e)return'';if(_0x43354e[_0x5a5a(0x232)]('**'))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x2c4)))return'';if(_0x43354e[_0x5a5a(0x232)]('---'))return'';if(_0x43354e[_0x5a5a(0x232)]('```'))return'';if(_0x43354e[_0x5a5a(0x1c4)]('\x22name\x22:')&&_0x43354e[_0x5a5a(0x1c4)](_0x5a5a(0x2e1)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x21b)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x1c5)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x256)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x1e2)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x28b)))return'';if(_0x43354e[_0x5a5a(0x232)](_0x5a5a(0x294)))return'';if(_0x43354e[_0x5a5a(0x1c4)](_0x5a5a(0x2b4)))return'';if(_0x43354e['includes'](_0x5a5a(0x205)))return'';return _0x46cda1['replace'](/<text>/g,'')['replace'](/<\/text>/g,'')['replace'](/<\/text>/g,'')['replace'](/<reasoning>/g,'')[_0x5a5a(0x27b)](/<\/reasoning>/g,'')[_0x5a5a(0x27b)](/\*\*(.+?)\*\*/g,'$1');}async function processAgentLoop(_0x2cf203,_0x41582a){const _0x2b5108=a4_0x1d4d;let _0x45686e=0x0;const _0xed341c=0x3e8,_0x15c6b4=![];while(_0x45686e<_0xed341c){_0x45686e++;const _0x352965=a4_0x2743b1[_0x2b5108(0x230)](_0x2b5108(0x1d4));_0x352965[_0x2b5108(0x1b2)]();let _0x53e49a='',_0x26be1f=![],_0x349acc=![],_0x2b6cc4='';const _0x4b97cd=new AbortController(),_0x5e7cee=()=>{const _0x51d783=_0x2b5108;_0x4b97cd[_0x51d783(0x293)](),a4_0x2743b1['info']('\x0aAborting...');};process['on'](_0x2b5108(0x267),_0x5e7cee);let _0x10f11b=null;try{const _0x2dc717=await sendChatMessage(_0x41582a,_0x2cf203,_0x3de536=>{const _0x4d0a4c=_0x2b5108;_0x352965[_0x4d0a4c(0x26a)]&&_0x352965[_0x4d0a4c(0x23f)]();_0x53e49a+=_0x3de536;for(const _0x56cc77 of _0x3de536){_0x2b6cc4+=_0x56cc77;if(_0x56cc77==='\x0a'){_0x2b6cc4['includes'](_0x4d0a4c(0x1b7))&&(_0x349acc=!![]);_0x2b6cc4[_0x4d0a4c(0x1c4)](_0x4d0a4c(0x231))&&(_0x349acc=!![]);let _0x392540=!![];if(_0x349acc&&_0x15c6b4){_0x2b6cc4[_0x4d0a4c(0x1c4)](_0x4d0a4c(0x224))&&(_0x349acc=![]);_0x2b6cc4[_0x4d0a4c(0x1c4)]('</thought>')&&(_0x349acc=![]);if(!_0x26be1f){if(_0x2b6cc4['includes'](_0x4d0a4c(0x2a7))||_0x2b6cc4[_0x4d0a4c(0x232)](_0x4d0a4c(0x25d))){_0x26be1f=!![],_0x2b6cc4='';!_0x10f11b&&(_0x10f11b=a4_0x2743b1[_0x4d0a4c(0x1dd)](_0x4d0a4c(0x1b4)),_0x10f11b[_0x4d0a4c(0x1b2)]());continue;}let _0x4e5851=_0x2b6cc4[_0x4d0a4c(0x27b)](/<text>/g,'')[_0x4d0a4c(0x27b)](/<\/text>/g,'')['replace'](/<reasoning.*?>/g,'')[_0x4d0a4c(0x27b)](/<\/reasoning>/g,'');if(_0x392540){if(_0x349acc||_0x4e5851[_0x4d0a4c(0x1c4)](_0x4d0a4c(0x1b7))||_0x4e5851[_0x4d0a4c(0x1c4)](_0x4d0a4c(0x231)))process[_0x4d0a4c(0x2bc)]['write'](a4_0x2c8411[_0x4d0a4c(0x29f)]('│\x20'+_0x4e5851));else{if(_0x4e5851[_0x4d0a4c(0x232)](_0x4d0a4c(0x285))&&!_0x4e5851[_0x4d0a4c(0x232)]('```tool'))process[_0x4d0a4c(0x2bc)]['write'](_0x4d0a4c(0x285)+_0x4e5851[_0x4d0a4c(0x22c)](0x3));else(_0x4e5851[_0x4d0a4c(0x21a)]()||_0x4e5851==='\x0a'||_0x4e5851==='\x0d\x0a')&&process[_0x4d0a4c(0x2bc)][_0x4d0a4c(0x22a)](_0x4e5851);}}}else(_0x2b6cc4[_0x4d0a4c(0x1c4)](_0x4d0a4c(0x20b))||_0x2b6cc4[_0x4d0a4c(0x21a)]()===_0x4d0a4c(0x285))&&(_0x26be1f=![],_0x10f11b&&(_0x10f11b[_0x4d0a4c(0x23f)](),_0x10f11b=null));_0x2b6cc4='';}}}},_0x4b97cd[_0x2b5108(0x2a4)]);_0x10f11b&&(_0x10f11b['stop'](),_0x10f11b=null);if(_0x2b6cc4&&!_0x26be1f&&!_0x2b6cc4[_0x2b5108(0x1c4)](_0x2b5108(0x2a7))){let _0x2c87b6=_0x2b6cc4[_0x2b5108(0x27b)](/<text>/g,'')['replace'](/<\/text>/g,'')['replace'](/<reasoning.*?>/g,'')[_0x2b5108(0x27b)](/<\/reasoning>/g,''),_0x3383fa=!![];_0x2c87b6[_0x2b5108(0x1c4)](_0x2b5108(0x224))&&(_0x349acc=![]),_0x2c87b6['includes']('</thought>')&&(_0x349acc=![]),_0x3383fa&&_0x2c87b6[_0x2b5108(0x21a)]()&&(_0x349acc||_0x2c87b6[_0x2b5108(0x1c4)](_0x2b5108(0x1b7))||_0x2c87b6['includes'](_0x2b5108(0x231))?process[_0x2b5108(0x2bc)]['write'](a4_0x2c8411[_0x2b5108(0x29f)]('│\x20'+_0x2c87b6)):process[_0x2b5108(0x2bc)]['write'](_0x2c87b6));}_0x53e49a=_0x2dc717[_0x2b5108(0x1b9)];}catch(_0x419420){_0x352965[_0x2b5108(0x23f)](),process['removeListener'](_0x2b5108(0x267),_0x5e7cee);if(_0x419420[_0x2b5108(0x25a)]===_0x2b5108(0x297)||_0x419420[_0x2b5108(0x276)][_0x2b5108(0x1c4)](_0x2b5108(0x226))){a4_0x2743b1[_0x2b5108(0x201)](_0x2b5108(0x2d5)),_0x2cf203[_0x2b5108(0x2cf)]({'role':_0x2b5108(0x2d1),'content':_0x53e49a+'\x20[Aborted]'}),_0x2cf203[_0x2b5108(0x2cf)]({'role':_0x2b5108(0x241),'content':_0x2b5108(0x283)});break;}if(_0x419420[_0x2b5108(0x1d5)]){a4_0x2743b1[_0x2b5108(0x263)](_0x419420[_0x2b5108(0x2d6)]||0x3c);return;}a4_0x2743b1['error'](_0x2b5108(0x204)+_0x419420);return;}finally{process['removeListener'](_0x2b5108(0x267),_0x5e7cee);}_0x352965['isSpinning']&&_0x352965['stop']();a4_0x2743b1[_0x2b5108(0x2a2)](),_0x2cf203[_0x2b5108(0x2cf)]({'role':_0x2b5108(0x2d1),'content':_0x53e49a});let _0x47671=_0x53e49a[_0x2b5108(0x1f5)](/<execute_tool>\s*([\s\S]*?)<\/execute_tool>/);!_0x47671&&(_0x47671=_0x53e49a[_0x2b5108(0x1f5)](/```tool\s*([\s\S]*?)```/));!_0x47671&&(_0x47671=_0x53e49a[_0x2b5108(0x1f5)](/```json\s*(\{[\s\S]*?"name"\s*:[\s\S]*?\})\s*```/));if(!_0x47671){const _0x52e3da=_0x53e49a['match'](/\{[\s\S]*?"name"\s*:[\s\S]*?"args"\s*:[\s\S]*?\}/);if(_0x52e3da)_0x47671=[_0x52e3da[0x0],_0x52e3da[0x0]];}if(!_0x47671)break;function _0x5f3a8d(_0x556a0b){const _0x4c9ca3=_0x2b5108,_0x151c7b=_0x556a0b[_0x4c9ca3(0x21a)]();try{return JSON[_0x4c9ca3(0x248)](_0x151c7b);}catch(_0x1c30f2){try{let _0x537750='',_0x358991=![];for(let _0x10f13e=0x0;_0x10f13e<_0x151c7b['length'];_0x10f13e++){const _0x338907=_0x151c7b[_0x10f13e];if(_0x338907==='\x22'&&_0x151c7b[_0x10f13e-0x1]!=='\x5c')_0x358991=!_0x358991;if(_0x358991&&_0x338907==='\x0a')_0x537750+='\x5cn';else _0x537750+=_0x338907;}return JSON['parse'](_0x537750);}catch(_0x20be0c){try{return new Function('return\x20'+_0x151c7b)();}catch(_0x8183d3){throw new Error('Invalid\x20JSON\x20output\x20from\x20model:\x20'+_0x1c30f2['message']);}}}}try{const _0x3a99fa=_0x5f3a8d(_0x47671[0x1]),_0x1e2e6c={'write_file':_0x2b5108(0x227),'write':_0x2b5108(0x227),'create':_0x2b5108(0x227),'read':'read_file','read_text_file':_0x2b5108(0x1dc),'search':_0x2b5108(0x1ed),'list':'list_directory','ls':'list_directory','execute':'run_command','cmd':'run_command','remove_file':_0x2b5108(0x1d2),'rm':_0x2b5108(0x1d2),'unlink':'delete_file','move_file':_0x2b5108(0x2a0),'mv':_0x2b5108(0x2a0),'cp':_0x2b5108(0x2df),'stat':'file_info','head':_0x2b5108(0x2dd),'wget':_0x2b5108(0x296),'curl':_0x2b5108(0x2e7),'http_get':'fetch_url','env':_0x2b5108(0x1de),'sysinfo':_0x2b5108(0x1ab),'paste':_0x2b5108(0x1e7),'ask':_0x2b5108(0x262),'prompt_user':_0x2b5108(0x262),'request_input':'ask_human','dir_tree':_0x2b5108(0x254),'show_tree':'tree','grep':_0x2b5108(0x286),'find_in_files':_0x2b5108(0x286),'search_all':_0x2b5108(0x286),'find_replace':_0x2b5108(0x2d9),'sed':'replace_in_files','open':_0x2b5108(0x266),'vscode':_0x2b5108(0x266),'compress':_0x2b5108(0x1ee),'archive':_0x2b5108(0x1ee),'extract':'unzip_files','decompress':_0x2b5108(0x1c6),'ps':_0x2b5108(0x278),'pwsh':_0x2b5108(0x278)};_0x1e2e6c[_0x3a99fa[_0x2b5108(0x25a)]]&&(_0x3a99fa[_0x2b5108(0x25a)]=_0x1e2e6c[_0x3a99fa[_0x2b5108(0x25a)]]);_0x3a99fa[_0x2b5108(0x2db)]&&(!_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x22b)]&&(_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x22b)]=_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x1b1)]||_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x27a)]||_0x3a99fa[_0x2b5108(0x2db)]['file']||_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x203)]),!_0x3a99fa['args'][_0x2b5108(0x1b9)]&&(_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x1b9)]=_0x3a99fa['args'][_0x2b5108(0x235)]||_0x3a99fa['args'][_0x2b5108(0x2b1)]||_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x252)]||_0x3a99fa[_0x2b5108(0x2db)]['source']),!_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x2ad)]&&(_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x2ad)]=_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x2c8)]||_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x245)]));const _0x3e295d={'create_file':_0x2b5108(0x1fb),'read_file':_0x2b5108(0x239),'edit_file':'Update','list_directory':'List','search_file':'Search','find_files':'Find','search_directory':_0x2b5108(0x2ab),'delete_file':_0x2b5108(0x29a),'rename_file':_0x2b5108(0x208),'copy_file':_0x2b5108(0x22d),'file_info':_0x2b5108(0x2af),'read_file_lines':_0x2b5108(0x209),'run_command':_0x2b5108(0x2d4),'run_background':_0x2b5108(0x211),'read_terminal_output':'ReadTerm','send_terminal_input':_0x2b5108(0x26f),'list_active_processes':'ListProcs','terminate_process':_0x2b5108(0x1f0),'git_status':_0x2b5108(0x281),'git_diff':_0x2b5108(0x291),'git_log':_0x2b5108(0x1e4),'git_add':_0x2b5108(0x1a7),'git_commit':_0x2b5108(0x277),'git_branch':_0x2b5108(0x21f),'fetch_url':_0x2b5108(0x1ad),'download_file':_0x2b5108(0x2e3),'get_env':_0x2b5108(0x1db),'set_env':'SetEnv','get_system_info':'SysInfo','clipboard_read':_0x2b5108(0x1bc),'clipboard_write':_0x2b5108(0x1eb),'ask_human':_0x2b5108(0x269),'tree':'Tree','grep_recursive':_0x2b5108(0x29d),'replace_in_files':_0x2b5108(0x24c),'open_in_editor':_0x2b5108(0x29b),'zip_files':_0x2b5108(0x24d),'unzip_files':_0x2b5108(0x1aa),'write_json':_0x2b5108(0x1ef),'read_json':_0x2b5108(0x23e),'patch_file':_0x2b5108(0x2bd),'powershell_run':'PS','browser_open':_0x2b5108(0x25f),'browser_click':_0x2b5108(0x25e),'browser_fill':_0x2b5108(0x270),'browser_snapshot':_0x2b5108(0x284),'browser_screenshot':_0x2b5108(0x2d7),'browser_get_text':_0x2b5108(0x1bf),'browser_close':_0x2b5108(0x1ac)},_0x4246d7=_0x3e295d[_0x3a99fa[_0x2b5108(0x25a)]]||_0x3a99fa[_0x2b5108(0x25a)];let _0x161ef8='';if(_0x3a99fa['name']===_0x2b5108(0x272)&&_0x3a99fa['args']['command'])_0x161ef8=_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x2ad)];else{if(_0x3a99fa[_0x2b5108(0x25a)]===_0x2b5108(0x2ae))_0x161ef8=_0x2b5108(0x279)+(_0x3a99fa['args'][_0x2b5108(0x20d)]||_0x2b5108(0x1f3));else{if(_0x3a99fa[_0x2b5108(0x25a)]==='read_terminal_output'||_0x3a99fa[_0x2b5108(0x25a)]==='terminate_process')_0x161ef8=_0x2b5108(0x279)+(_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x20d)]||_0x2b5108(0x1f3));else{if(_0x3a99fa[_0x2b5108(0x25a)]===_0x2b5108(0x2cb))_0x161ef8=_0x2b5108(0x295);else{if(_0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x22b)])_0x161ef8=_0x3a99fa[_0x2b5108(0x2db)]['path'];else{if(_0x3a99fa[_0x2b5108(0x2db)]['pattern'])_0x161ef8='\x22'+_0x3a99fa[_0x2b5108(0x2db)]['pattern']+'\x22';else _0x3a99fa[_0x2b5108(0x2db)][_0x2b5108(0x2da)]?_0x161ef8=_0x3a99fa['args'][_0x2b5108(0x2da)]:_0x161ef8=Object['values'](_0x3a99fa[_0x2b5108(0x2db)])[0x0]||'';}}}}}const _0x977bc0=_0x161ef8[_0x2b5108(0x1fc)]>0x32?_0x161ef8[_0x2b5108(0x22c)](0x0,0x2f)+_0x2b5108(0x1b5):_0x161ef8,_0x458ca3=a4_0x2743b1[_0x2b5108(0x1dd)](_0x4246d7+'('+_0x977bc0+')');_0x458ca3[_0x2b5108(0x1b2)]();const _0x501771=performance[_0x2b5108(0x214)]();let _0x367ab9;try{_0x367ab9=await executeToolCall(_0x3a99fa['name'],_0x3a99fa['args']);}catch(_0x40b3ff){if(_0x40b3ff['message']&&_0x40b3ff[_0x2b5108(0x276)]['includes'](_0x2b5108(0x1f1))){const _0x94bc55=await getMcpTools(),_0x114428=_0x94bc55[_0x2b5108(0x229)](_0x589621=>_0x589621[_0x2b5108(0x25a)]===_0x3a99fa[_0x2b5108(0x25a)]);if(_0x114428)try{_0x367ab9=await executeMcpTool(_0x114428['serverName'],_0x114428[_0x2b5108(0x25a)],_0x3a99fa[_0x2b5108(0x2db)]);}catch(_0x603f00){throw new Error('MCP\x20Tool\x20error:\x20'+_0x603f00);}else throw _0x40b3ff;}else throw _0x40b3ff;}const _0x3d7fa7=((performance['now']()-_0x501771)/0x3e8)[_0x2b5108(0x2c5)](0x1);_0x458ca3['stop']();let _0x329628=_0x2b5108(0x1d6)+_0x3d7fa7+'s',_0x2bd2d3=![];const _0x3042ec=_0x367ab9;if(_0x3042ec&&typeof _0x3042ec===_0x2b5108(0x26b)){if(_0x3a99fa[_0x2b5108(0x25a)]==='run_command'){if(_0x3042ec['exitCode']===0x0&&_0x3042ec[_0x2b5108(0x2e9)]!==![]){const _0x4f8152=_0x3042ec[_0x2b5108(0x2bc)]?_0x3042ec[_0x2b5108(0x2bc)]['split']('\x0a')[_0x2b5108(0x1fc)]:0x0;_0x329628=_0x2b5108(0x2e0)+_0x4f8152+'\x20lines\x20of\x20output\x20('+_0x3d7fa7+'s)';}else{_0x2bd2d3=!![],_0x329628=_0x2b5108(0x1b3)+_0x3042ec['exitCode'];const _0x3bce41=_0x3042ec[_0x2b5108(0x1cc)]||_0x3042ec[_0x2b5108(0x2bc)]||_0x3042ec[_0x2b5108(0x276)]||'Operation\x20failed';_0x3bce41&&(_0x329628+=':\x20'+_0x3bce41[_0x2b5108(0x258)]('\x0a')[0x0][_0x2b5108(0x1bb)](0x0,0x64));}}else{if(_0x3042ec['success']===![])_0x2bd2d3=!![],_0x329628=_0x2b5108(0x23c)+(_0x3042ec['message']||_0x3042ec['error']||_0x2b5108(0x260));else{if(_0x3042ec[_0x2b5108(0x1d1)])_0x2bd2d3=!![],_0x329628=_0x2b5108(0x23c)+_0x3042ec[_0x2b5108(0x1d1)];else{if(_0x3a99fa['name']===_0x2b5108(0x1dc)&&typeof _0x3042ec[_0x2b5108(0x1b9)]===_0x2b5108(0x1e8)){const _0x4e2d91=_0x3042ec[_0x2b5108(0x1b9)][_0x2b5108(0x258)]('\x0a')[_0x2b5108(0x1fc)];_0x329628=_0x2b5108(0x1e9)+_0x4e2d91+_0x2b5108(0x2c1)+_0x3d7fa7+'s)';}else(_0x3a99fa[_0x2b5108(0x25a)]===_0x2b5108(0x2d2)||_0x3a99fa[_0x2b5108(0x25a)]==='create_file')&&(_0x329628=_0x2b5108(0x1e6)+_0x3d7fa7+'s)');}}}}a4_0x2743b1[_0x2b5108(0x273)](_0x4246d7,_0x977bc0,_0x329628,_0x2bd2d3);let _0x228799=_0x367ab9;_0x3a99fa[_0x2b5108(0x25a)]===_0x2b5108(0x272)&&_0x3042ec&&(_0x228799={'exitCode':_0x3042ec['exitCode'],'stdout':_0x3042ec['stdout'],'stderr':_0x3042ec['stderr'],'error':_0x3042ec[_0x2b5108(0x1d1)]}),_0x2cf203[_0x2b5108(0x2cf)]({'role':'user','content':_0x2b5108(0x2b9)+_0x3a99fa[_0x2b5108(0x25a)]+':\x0a'+JSON['stringify'](_0x228799,null,0x2)}),await new Promise(_0xd83dd5=>setTimeout(_0xd83dd5,0x1f4));}catch(_0x5d164f){a4_0x2743b1['toolSuccess'](_0x2b5108(0x21e),'tool\x20execution\x20failed',_0x5d164f[_0x2b5108(0x276)]||String(_0x5d164f),!![]),_0x2cf203['push']({'role':_0x2b5108(0x241),'content':'Tool\x20error\x20occurred:\x20'+_0x5d164f+_0x2b5108(0x1f2)});}}_0x45686e>=_0xed341c&&a4_0x2743b1[_0x2b5108(0x201)](_0x2b5108(0x2b6));}async function executeToolCall(_0x376805,_0x14599e){const _0x185ad3=a4_0x1d4d;switch(_0x376805){case _0x185ad3(0x227):return createFile(_0x14599e[_0x185ad3(0x22b)],_0x14599e['content']);case _0x185ad3(0x1dc):return readFile(_0x14599e[_0x185ad3(0x22b)]);case'list_directory':return listDirectory(_0x14599e[_0x185ad3(0x22b)]||'.');case'edit_file':return editFile(_0x14599e[_0x185ad3(0x22b)],_0x14599e[_0x185ad3(0x212)],_0x14599e[_0x185ad3(0x27b)]);case _0x185ad3(0x1ed):return searchFile(_0x14599e[_0x185ad3(0x22b)],_0x14599e[_0x185ad3(0x217)]);case'run_command':const {command:_0x1bf303,background:_0x3c122a,wait:_0x576e22}=_0x14599e,_0xb9b4d2=await runCommand(_0x1bf303,undefined,_0x3c122a,_0x576e22);return _0xb9b4d2;case'read_terminal_output':{const {readTerminalOutput:_0x23f809}=await import(_0x185ad3(0x23a));return _0x23f809(_0x14599e[_0x185ad3(0x20d)]);}case'send_terminal_input':{const {sendTerminalInput:_0x328a6f}=await import('../tools/command.js');return _0x328a6f(_0x14599e[_0x185ad3(0x243)],_0x14599e['pid']);}case'list_active_processes':{const {getActiveProcesses:_0x1783f4}=await import('../tools/command.js');return{'pids':_0x1783f4(),'message':'Active\x20processes:\x20'+_0x1783f4()['length']};}case _0x185ad3(0x222):{const {terminateProcess:_0x5d81f9}=await import(_0x185ad3(0x23a));return _0x5d81f9(_0x14599e[_0x185ad3(0x20d)]);}case _0x185ad3(0x206):{const {findFiles:_0x55c486}=await import(_0x185ad3(0x1b8));return _0x55c486(_0x14599e[_0x185ad3(0x22b)]||'.',_0x14599e[_0x185ad3(0x217)]);}case _0x185ad3(0x237):{const {searchDirectory:_0x5d9654}=await import('../tools/file.js');return _0x5d9654(_0x14599e[_0x185ad3(0x22b)]||'.',_0x14599e[_0x185ad3(0x217)]);}case _0x185ad3(0x223):{const {readFile:_0x4a2e05}=await import(_0x185ad3(0x2c6));return _0x4a2e05(_0x14599e['owner'],_0x14599e[_0x185ad3(0x29c)],_0x14599e[_0x185ad3(0x22b)],_0x14599e[_0x185ad3(0x2bb)]);}case'github_create_pr':{const {createPullRequest:_0x30ac0d}=await import(_0x185ad3(0x2c6));return _0x30ac0d(_0x14599e[_0x185ad3(0x2ac)],_0x14599e[_0x185ad3(0x29c)],_0x14599e[_0x185ad3(0x1c9)],_0x14599e['head'],_0x14599e[_0x185ad3(0x1c3)],_0x14599e['body']);}case'github_create_branch':{const {createBranch:_0x4b8d1d}=await import(_0x185ad3(0x2c6));return _0x4b8d1d(_0x14599e['owner'],_0x14599e[_0x185ad3(0x29c)],_0x14599e['branchName'],_0x14599e[_0x185ad3(0x28c)]);}case _0x185ad3(0x1cb):{const {browserOpen:_0x3645b3,startBrowserServer:_0x39d973,isBrowserServerRunning:_0x54075b}=await import(_0x185ad3(0x2a3));return!_0x54075b()&&await _0x39d973(),_0x3645b3(_0x14599e[_0x185ad3(0x2da)]);}case'browser_click':{const {browserClick:_0x294bf6}=await import(_0x185ad3(0x2a3));return _0x294bf6(_0x14599e[_0x185ad3(0x1da)]);}case'browser_fill':{const {browserFill:_0x3f89e8}=await import(_0x185ad3(0x2a3));return _0x3f89e8(_0x14599e[_0x185ad3(0x1da)],_0x14599e[_0x185ad3(0x219)]);}case _0x185ad3(0x261):{const {browserSnapshot:_0x4baf28}=await import('../browser/index.js');return _0x4baf28();}case _0x185ad3(0x2e5):{const {browserScreenshot:_0x40c4e4}=await import(_0x185ad3(0x2a3));return _0x40c4e4();}case _0x185ad3(0x27d):{const {browserGetText:_0x4b3de3}=await import(_0x185ad3(0x2a3));return _0x4b3de3(_0x14599e[_0x185ad3(0x1da)]);}case _0x185ad3(0x28f):{const {browserClose:_0x39a6ec}=await import(_0x185ad3(0x2a3));return _0x39a6ec();}case _0x185ad3(0x1d2):return deleteFile(_0x14599e[_0x185ad3(0x22b)]);case _0x185ad3(0x2a0):return renameFile(_0x14599e['from']||_0x14599e[_0x185ad3(0x22b)],_0x14599e['to']||_0x14599e[_0x185ad3(0x1d7)]);case _0x185ad3(0x2df):return copyFile(_0x14599e[_0x185ad3(0x1a6)]||_0x14599e[_0x185ad3(0x22b)],_0x14599e['to']||_0x14599e['destination']);case _0x185ad3(0x233):return fileInfo(_0x14599e[_0x185ad3(0x22b)]);case _0x185ad3(0x2dd):return readFileLines(_0x14599e[_0x185ad3(0x22b)],_0x14599e[_0x185ad3(0x1b2)]||0x1,_0x14599e[_0x185ad3(0x240)]||0x32);case _0x185ad3(0x2b0):{const _0x30fe9b=await runCommand(_0x14599e[_0x185ad3(0x2ad)],undefined,!![],_0x14599e[_0x185ad3(0x1fe)]||0x1388);return _0x30fe9b;}case _0x185ad3(0x2e6):return gitStatus();case _0x185ad3(0x2b8):return gitDiff(_0x14599e[_0x185ad3(0x22b)]);case _0x185ad3(0x1e5):return gitLog(_0x14599e[_0x185ad3(0x244)]||0xa);case _0x185ad3(0x20a):return gitAdd(_0x14599e['path']||'.');case _0x185ad3(0x2dc):return gitCommit(_0x14599e[_0x185ad3(0x276)]);case'git_branch':return gitBranch();case _0x185ad3(0x2e7):return fetchUrl(_0x14599e[_0x185ad3(0x2da)]);case'download_file':return downloadFile(_0x14599e['url'],_0x14599e[_0x185ad3(0x22b)]);case'get_env':return getEnv(_0x14599e[_0x185ad3(0x25a)]);case _0x185ad3(0x210):return setEnv(_0x14599e[_0x185ad3(0x25a)],_0x14599e[_0x185ad3(0x219)]);case _0x185ad3(0x1ab):return getSystemInfo();case _0x185ad3(0x1e7):return clipboardRead();case'clipboard_write':return clipboardWrite(_0x14599e[_0x185ad3(0x235)]||_0x14599e['content']);case _0x185ad3(0x262):{const _0x2a5b79=_0x14599e[_0x185ad3(0x282)]||_0x14599e[_0x185ad3(0x276)]||_0x185ad3(0x2e8);a4_0x2743b1[_0x185ad3(0x2a2)]();const _0x2e0011=await input({'message':a4_0x2c8411[_0x185ad3(0x27e)]('#3b82f6')(_0x185ad3(0x202))+_0x2a5b79+'\x0a','theme':{'prefix':''}});return{'success':!![],'response':_0x2e0011,'message':_0x185ad3(0x26e)+_0x2e0011};}case _0x185ad3(0x254):return tree(_0x14599e['path']||'.',_0x14599e[_0x185ad3(0x1ce)]||0x3);case _0x185ad3(0x286):return grepRecursive(_0x14599e['path']||'.',_0x14599e[_0x185ad3(0x217)],_0x14599e[_0x185ad3(0x268)]);case _0x185ad3(0x2d9):return replaceInFiles(_0x14599e[_0x185ad3(0x22b)]||'.',_0x14599e[_0x185ad3(0x212)],_0x14599e[_0x185ad3(0x27b)],_0x14599e[_0x185ad3(0x268)]);case _0x185ad3(0x266):return openInEditor(_0x14599e[_0x185ad3(0x22b)]);case _0x185ad3(0x1ee):return zipFiles(_0x14599e[_0x185ad3(0x236)]||[_0x14599e['path']],_0x14599e[_0x185ad3(0x255)]||_0x185ad3(0x1ae));case _0x185ad3(0x1c6):return unzipFiles(_0x14599e[_0x185ad3(0x22b)]||_0x14599e[_0x185ad3(0x298)],_0x14599e['output']||'.');case _0x185ad3(0x2d8):return writeJson(_0x14599e[_0x185ad3(0x22b)],_0x14599e[_0x185ad3(0x252)]||_0x14599e['content']);case _0x185ad3(0x1c0):return readJson(_0x14599e[_0x185ad3(0x22b)]);case _0x185ad3(0x1ba):return patchFile(_0x14599e[_0x185ad3(0x22b)],_0x14599e['patches']);case _0x185ad3(0x278):return powershellRun(_0x14599e[_0x185ad3(0x245)]||_0x14599e[_0x185ad3(0x2ad)]);default:return{'error':_0x185ad3(0x2aa)+_0x376805};}}
1
+ const a4_0x59ac23=a4_0x5c61;(function(_0x1ce045,_0x2161cf){const _0x12afbb=a4_0x5c61,_0x51107b=_0x1ce045();while(!![]){try{const _0x79e22b=-parseInt(_0x12afbb(0x290))/0x1*(-parseInt(_0x12afbb(0x28b))/0x2)+parseInt(_0x12afbb(0x2f0))/0x3*(-parseInt(_0x12afbb(0x310))/0x4)+-parseInt(_0x12afbb(0x1cc))/0x5+parseInt(_0x12afbb(0x1e9))/0x6+-parseInt(_0x12afbb(0x2f9))/0x7*(parseInt(_0x12afbb(0x229))/0x8)+-parseInt(_0x12afbb(0x277))/0x9+-parseInt(_0x12afbb(0x317))/0xa*(-parseInt(_0x12afbb(0x2c7))/0xb);if(_0x79e22b===_0x2161cf)break;else _0x51107b['push'](_0x51107b['shift']());}catch(_0x2d52cb){_0x51107b['push'](_0x51107b['shift']());}}}(a4_0x4563,0x8c7f7));import{input,select}from'@inquirer/prompts';import a4_0x5233f9 from'chalk';import a4_0x2538c8 from'crypto';import{sendChatMessage,getUserUsage}from'../utils/api.js';import{getSelectedModel,getUser}from'../utils/storage.js';import{saveChatSession,getChatSessions,getChatSession}from'../utils/chat-history.js';import a4_0x5a751c from'fs';import{formatRulesForSystem}from'../tools/rules.js';function a4_0x5c61(_0x265db4,_0x367206){_0x265db4=_0x265db4-0x1c9;const _0x45637c=a4_0x4563();let _0x5c6158=_0x45637c[_0x265db4];return _0x5c6158;}import{formatKnowledgeForSystem}from'../tools/knowledge.js';import{createFile,readFile,listDirectory,editFile,runCommand,searchFile,deleteFile,renameFile,copyFile,fileInfo,readFileLines,connectToMcpServers,getMcpTools,executeMcpTool,closeMcpClients}from'../tools/index.js';import{gitStatus,gitDiff,gitLog,gitAdd,gitCommit,gitBranch}from'../tools/git.js';import{fetchUrl,downloadFile}from'../tools/network.js';import{getEnv,setEnv,getSystemInfo,clipboardRead,clipboardWrite}from'../tools/system.js';import{tree,grepRecursive,replaceInFiles,openInEditor,zipFiles,unzipFiles,writeJson,readJson,patchFile,powershellRun}from'../tools/project.js';import*as a4_0x5a0cb9 from'../ui/output.js';import{selectModel}from'../ui/select.js';import{getPlatformInfo,isWindows,getShellPrefix}from'../utils/platform.js';function a4_0x4563(){const _0x4757fc=['success','archive','/theme','\x20\x20/telegram\x20start\x20\x20\x20-\x20Start\x20bot','Browser\x20server\x20is\x20not\x20running','Fill','file','fetch_url','Read\x20','randomUUID','replace','user','toString','/telegram','selector','repo','stdout','owner','GetText','tokensUsed','Unknown\x20tool:\x20','map','/github','list_directory','GitDiff','No\x20MCP\x20tools\x20connected.','git_commit','No\x20changes\x20to\x20rollback','###','Tips:\x20/exit\x20to\x20quit,\x20/clear\x20to\x20reset,\x20/history\x20to\x20resume\x20chats,\x20/model\x20to\x20switch,\x20/help\x20for\x20more','browser_screenshot','Yes','count','stop','command','../ui/themes.js','toLowerCase','pattern','title','append_file','file_path','getThemeById','set_env','MCP\x20Tool\x20error:\x20','list_active_processes','statusBar','15704645zAECeY','):\x20','Completed\x20successfully\x20(','API\x20error:\x20','grep_recursive','\x0aAborting...','Operation\x20failed','output','github_create_pr','\x22name\x22:','base','Telegram\x20bot\x20stopped.','send_terminal_input','Tree','description','Connected\x20browsers:\x20','Grep','Invalid\x20JSON\x20output\x20from\x20model:\x20','1.\x20Open\x20Telegram\x20and\x20message\x20@BotFather','includes','assign','git_branch','You\x20are\x20Woozlit,\x20an\x20elite\x20autonomous\x20AI\x20engineering\x20agent.\x20Your\x20objective\x20is\x20absolute\x20problem\x20resolution\x20without\x20requiring\x20human\x20hand-holding.\x0a\x0aCORE\x20DIRECTIVES:\x0a1.\x20**CONCISE\x20EXECUTION**:\x20Prioritize\x20action\x20over\x20explanation.\x20Minimize\x20conversational\x20output.\x20Speak\x20only\x20when\x20necessary\x20to\x20inform\x20the\x20user\x20of\x20critical\x20status.\x20NEVER\x20use\x20emojis.\x0a2.\x20**AUTONOMY**:\x20Act\x20independently.\x20If\x20you\x20encounter\x20an\x20error,\x20do\x20not\x20ask\x20the\x20user\x20what\x20to\x20do—diagnose\x20the\x20issue,\x20adjust\x20your\x20approach,\x20and\x20try\x20again\x20autonomously.\x0a3.\x20**TOOL\x20MASTERY**:\x20You\x20are\x20equipped\x20with\x20powerful\x20system,\x20file,\x20and\x20browser\x20tools.\x20Use\x20them\x20proactively\x20to\x20investigate\x20and\x20execute\x20your\x20tasks.\x0a4.\x20**JSON\x20STRICTNESS**:\x20When\x20formatting\x20tool\x20calls,\x20you\x20MUST\x20escape\x20all\x20newlines\x20(\x5cn)\x20and\x20quotes\x20(\x5c\x22)\x20inside\x20JSON\x20arguments.\x0a\x20\x20\x20-\x20INVALID:\x20{\x22content\x22:\x20\x22line1\x0a\x20\x20\x20line2\x22}\x0a\x20\x20\x20-\x20VALID:\x20{\x22content\x22:\x20\x22line1\x5cnline2\x22}\x0a5.\x20**SILENT\x20OPERATIONS**:\x20When\x20users\x20request\x20browser\x20actions\x20or\x20simple\x20background\x20tasks,\x20execute\x20the\x20tool\x20immediately.\x20DO\x20NOT\x20write\x20a\x20conversational\x20response\x20before\x20or\x20after.\x20Output\x20ONLY\x20the\x20raw\x20tool\x20JSON\x20block.\x0a6.\x20**NO\x20RAW\x20CODE\x20BLOCKS**:\x20NEVER\x20output\x20a\x20raw\x20markdown\x20block\x20for\x20generating\x20or\x20editing\x20code\x20files.\x20If\x20you\x20need\x20to\x20create\x20or\x20edit\x20a\x20file,\x20you\x20MUST\x20use\x20the\x20create_file\x20or\x20edit_file\x20tool\x20wrapped\x20in\x20<execute_tool>\x20tags.\x0a7.\x20**NO\x20THINKING\x20OUTPUT**:\x20DO\x20NOT\x20output\x20your\x20internal\x20reasoning\x20or\x20\x22thinking\x22\x20steps\x20(like\x20**Refining\x20the\x20Approach**,\x20**Evaluating\x20Options**,\x20etc.).\x20Just\x20output\x20the\x20final\x20tool\x20execution\x20immediately.\x0a8.\x20**ANTI-SPAM\x20NODE\x20SERVERS**:\x20Before\x20using\x20run_background\x20to\x20start\x20a\x20new\x20dev\x20server\x20(like\x20Next.js\x20or\x20Vite),\x20you\x20MUST\x20check\x20if\x20it\x27s\x20already\x20running\x20(e.g.,\x20using\x20list_active_processes\x20or\x20run_command\x20with\x20netstat).\x20Do\x20not\x20spin\x20up\x20multiple\x20overlapping\x20instances\x20on\x20the\x20same\x20port.\x0a\x0aAVAILABLE\x20TOOLS:\x0a-\x20File\x20system:\x20create_file,\x20read_file,\x20edit_file,\x20update_file,\x20append_file,\x20list_directory,\x20search_file,\x20find_files,\x20search_directory,\x20delete_file,\x20rename_file,\x20copy_file,\x20file_info,\x20read_file_lines\x0a-\x20Git:\x20git_status,\x20git_diff,\x20git_log,\x20git_add,\x20git_commit,\x20git_branch\x0a-\x20Terminal:\x20run_command,\x20run_background,\x20read_terminal_output,\x20send_terminal_input,\x20list_active_processes,\x20terminate_process\x0a-\x20Network:\x20fetch_url,\x20download_file\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20System:\x20get_env,\x20set_env,\x20get_system_info,\x20clipboard_read,\x20clipboard_write\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20-\x20Project:\x20tree,\x20grep_recursive,\x20replace_in_files,\x20open_in_editor,\x20zip_files,\x20unzip_files,\x20write_json,\x20read_json,\x20patch_file,\x20powershell_run\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-\x20GitHub:\x20github_read_file,\x20github_create_pr,\x20github_create_branch\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\x20-\x20Browser:\x20browser_open,\x20browser_click,\x20browser_fill,\x20browser_snapshot,\x20browser_screenshot,\x20browser_get_text,\x20browser_close\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\x20\x20\x20\x20\x20-\x20Human:\x20ask_human\x0a\x0aASK_HUMAN\x20TOOL:\x0aWhen\x20you\x20need\x20clarification,\x20a\x20decision,\x20or\x20any\x20input\x20from\x20the\x20user\x20during\x20a\x20task,\x20use\x20the\x20ask_human\x20tool.\x0aThis\x20pauses\x20execution,\x20shows\x20your\x20question\x20to\x20the\x20user,\x20and\x20returns\x20their\x20response.\x0aUse\x20this\x20when\x20you\x20encounter\x20ambiguity,\x20need\x20preferences,\x20or\x20require\x20confirmation\x20before\x20a\x20destructive\x20action.\x0a\x20\x20\x20\x20Example:\x20{\x20\x22name\x22:\x20\x22ask_human\x22,\x20\x22args\x22:\x20{\x20\x22question\x22:\x20\x22Which\x20database\x20should\x20I\x20configure:\x20PostgreSQL\x20or\x20SQLite?\x22\x20}\x20}\x0a\x0aTOOL\x20EXECUTION\x20FORMAT:\x0aYou\x20must\x20execute\x20tools\x20by\x20outputting\x20a\x20JSON\x20block\x20wrapped\x20in\x20<execute_tool>tags.\x0a\x20\x20\x20\x20Example:\x0a<execute_tool>\x0a\x20\x20\x20\x20{\x20\x22name\x22:\x20\x22tool_name\x22,\x20\x22args\x22:\x20{\x20\x22arg_name\x22:\x20\x22arg_value\x22\x20}\x20}\x0a\x20\x20\x20\x20</execute_tool>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','git_diff','Fetching\x20usage...','serverName','Telegram\x20Commands','AbortError','Conversation\x20cleared','Search','error','startBot','existsSync','resetIn','../telegram/index.js','content','data','Cancel','GitAdd','Info','GetEnv','466737JiFmfq','Bot\x20token:','\x0aUse\x20\x27woozlit\x20mcp\x27\x20command\x20to\x20manage\x20servers.','isRateLimit','exitCode','join','values','\x20\x20/telegram\x20setup\x20\x20\x20-\x20Configure\x20bot\x20token','copy_file','238fLvVxI','\x20\x20/mcp\x20\x20\x20\x20\x20\x20\x20-\x20List\x20connected\x20tools','message','extensions','Current\x20model:\x20','Error:\x20','matchAll','value','monthlyLimit','inputSchema','.\x20Please\x20fix\x20this\x20and\x20continue.','url','ClipRead','warn','base64','Read','unshift','length','jpg','git_add','Copy','archive.zip','browser_get_text','4MWAgfh','keys','run_command','depth','Run','branch','email','10uQdUaQ','\x20\x20/browser\x20\x20\x20-\x20Browser\x20automation\x20status','isSpinning','search','substring','5266870BsYJDz','then','name','3.\x20Copy\x20the\x20bot\x20token','\x22args\x22:','powershell_run','data:','ListProcs','GitStatus','Unzip','\x20\x20/telegram\x20\x20-\x20Remote\x20control\x20via\x20Telegram','Could\x20not\x20load\x20that\x20chat.','setup','system','/mcp','SIGINT','\x20\x20/telegram\x20stop\x20\x20\x20\x20-\x20Stop\x20bot','pid','Goodbye!','It\x20will\x20start\x20automatically\x20when\x20needed','GitBranch','\x20for\x20commands\x20requiring\x20elevated\x20privileges.','\x20\x20/theme\x20\x20\x20\x20\x20-\x20Switch\x20UI\x20color\x20theme','tree','\x0aYou\x20are\x20running\x20on\x20','slice','Let\x20me','actionSpinner','file_info','4289994oBzKcu','branchName','\x20\x20/history\x20\x20\x20-\x20View\x20and\x20resume\x20previous\x20chats','/help','Model\x20changed\x20to:\x20','Bot\x20token\x20saved!','dim','List','write','read_terminal_output','primary','update_file','info','```','createSpinner','stringify','signal','tool\x20execution\x20failed','github_create_branch','assistant','body','\x20\x20/rollback\x20\x20-\x20Undo\x20last\x20AI\x20file\x20change','pop','header','filename','getTheme','zip_files','../tools/command.js','source','\x20[Aborted]','force\x20closed','/browser','patch_file','\x20\x20/exit\x20\x20\x20\x20\x20\x20-\x20Exit\x20the\x20chat','displayName','Fetch','Telegram\x20Bot\x20Setup','/stats','create_file','/themes','```tool','browser_fill','toLocaleString','Download','/exit','\x20\x20[Waiting\x20for\x20input]\x20','browser_click','setSecurityPin','Open','Connected\x20MCP\x20Tools:','delete_file','browser_snapshot','Configured:\x20','terminate_process','fromBranch','---','-\x20Running','/rollback','Completed\x20with\x20','catch','mcpConnected','text','../utils/storage.js','now','7704egtXsc','Browser\x20server\x20is\x20running','clipboard_read','What\x20is\x20in\x20this\x20image?','image\x20/\x20','Theme\x20changed\x20to:\x20','messages','Failed\x20to\x20read\x20image\x20at\x20','run_background','match','</execute_tool>','userEmail','hex','all','args','start','Active\x20processes:\x20','RunBG','Error','Patch','path','setBotToken','patches','splice','github_read_file','Screenshot','\x20image(s)','../tools/rollback.js','git_status','browser_close','../browser/index.js','ask_human','Running','split','from','Security\x20PIN\x20set!','ReadJSON','PID:','wait','files','get_system_info','size','I\x27ve','read_file','rename_file','replace_in_files','You\x20are\x20a\x20concise\x20summarizer.\x20Summarize\x20the\x20user\x27s\x20progress\x20and\x20the\x20context\x20of\x20the\x20conversation\x20so\x20far\x20in\x20a\x20few\x20detailed\x20paragraphs.\x20Omit\x20exact\x20code,\x20focus\x20on\x20decisions,\x20completed\x20tasks,\x20and\x20current\x20state.','Done\x20in\x20','Context\x20is\x20growing\x20large.\x20Summarizing\x20chat\x20history\x20to\x20preserve\x20memory...','Append','get_env','[System\x20Memory:\x20Chat\x20Summarized]\x0a','What\x20would\x20you\x20like\x20to\x20do?','User\x20responded:\x20','User\x20aborted.','Telegram\x20bot\x20is\x20not\x20running','/usage','return\x20','png','InputTerm','.\x20Use\x20','properties','readFileSync','removeListener','Security\x20PIN\x20(optional,\x20press\x20Enter\x20to\x20skip):','\x20\x20/help\x20\x20\x20\x20\x20\x20-\x20Show\x20this\x20help','ClipWrite','../github/api.js','Zip','exit','string','push','script','read_file_lines','find','isOverLimit','Rename','toolSuccess','3762486nLyLiZ','\x0a\x0aYou\x20also\x20have\x20access\x20to\x20these\x20external\x20MCP\x20tools:\x0a','SearchDir','/clear','bold','download_file','currentDir','git_log','Summarization\x20failed\x20to\x20run.','startsWith','Click','head','toFixed','Tool\x20error\x20occurred:\x20','Unknown','any','trim','cancel','isConfigured','KillProc','2Zehmra','Resumed\x20chat:\x20','Failed\x20to\x20fetch\x20usage\x20data.','\x20-\x20','Find','92534QIpJrV','Update','Unexpected\x20error:\x20','Run\x20\x27/telegram\x20start\x27\x20to\x20connect\x20your\x20bot.','\x0a>\x20','No\x20chat\x20history\x20found.','parse','Telegram\x20bot\x20is\x20running','open_in_editor'];a4_0x4563=function(){return _0x4757fc;};return a4_0x4563();}import*as a4_0x24b33e from'../github/index.js';const SYSTEM_PROMPT=a4_0x59ac23(0x2dd);export async function startChat(_0x68872e){const _0x1cebf5=a4_0x59ac23,{startBrowserServer:_0x3d0401}=await import(_0x1cebf5(0x247));_0x3d0401()[_0x1cebf5(0x224)](()=>{});let _0xe9b1f4=a4_0x2538c8[_0x1cebf5(0x2a2)]();const _0x5a1d13=getSelectedModel();await connectToMcpServers();const _0x279dd3=await getMcpTools(),_0x55d61b=new Set(_0x279dd3[_0x1cebf5(0x2ae)](_0x144a10=>_0x144a10[_0x1cebf5(0x2e0)]));_0x55d61b['size']>0x0&&a4_0x5a0cb9[_0x1cebf5(0x225)](_0x55d61b[_0x1cebf5(0x252)],_0x279dd3[_0x1cebf5(0x30a)]);process['on'](_0x1cebf5(0x26e),()=>closeMcpClients());const _0xfccc4b=formatRulesForSystem(),_0x17839d=formatKnowledgeForSystem(),_0x14a3cb=getPlatformInfo(),_0x3f30b5=getShellPrefix(),_0x4110c3=_0x279dd3[_0x1cebf5(0x30a)]>0x0?_0x1cebf5(0x278)+_0x279dd3[_0x1cebf5(0x2ae)](_0x14ffa7=>{const _0x53460b=_0x1cebf5,_0x4f3d09=Object[_0x53460b(0x311)](_0x14ffa7[_0x53460b(0x302)]?.[_0x53460b(0x266)]||{})['join'](',\x20');return'-\x20'+_0x14ffa7['name']+'\x20('+_0x4f3d09+_0x53460b(0x2c8)+_0x14ffa7[_0x53460b(0x2d5)]+'\x20';})[_0x1cebf5(0x2f5)]('\x0a'):'',_0x2b773e=isWindows()?_0x1cebf5(0x1e4)+_0x14a3cb+'.\x20Use\x20PowerShell\x20commands.':'\x0aYou\x20are\x20running\x20on\x20'+_0x14a3cb+_0x1cebf5(0x265)+_0x3f30b5+_0x1cebf5(0x1e1),_0x1369a1=SYSTEM_PROMPT+_0x4110c3+_0x2b773e+'\x0a'+_0xfccc4b+_0x17839d,_0x959ccf=getUser(),_0x2db451=[{'role':_0x1cebf5(0x1d9),'content':_0x1369a1}];(_0x959ccf[_0x1cebf5(0x20b)]||_0x959ccf[_0x1cebf5(0x316)])&&a4_0x5a0cb9['loggedInBox'](_0x959ccf[_0x1cebf5(0x20b)]||_0x959ccf[_0x1cebf5(0x316)]||_0x1cebf5(0x285));a4_0x5a0cb9[_0x1cebf5(0x27d)](process['cwd']()),a4_0x5a0cb9[_0x1cebf5(0x1ef)](_0x1cebf5(0x2b6)),a4_0x5a0cb9[_0x1cebf5(0x2c6)](_0x5a1d13,0x64);const _0xfc3475=async _0x1b4a44=>{const _0x37242c=_0x1cebf5;if(!_0x1b4a44||_0x1b4a44[_0x37242c(0x287)]()==='')return!![];const _0x29866f=_0x1b4a44['trim']();if(_0x29866f===_0x37242c(0x215)||_0x29866f==='/quit')return a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x1de)),![];if(_0x29866f===_0x37242c(0x27a))return _0x2db451['length']=0x1,_0xe9b1f4=a4_0x2538c8[_0x37242c(0x2a2)](),a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x2e3)),!![];if(_0x29866f==='/history'){const _0x29e3fa=getChatSessions();if(_0x29e3fa['length']===0x0)return a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x295)),!![];const _0x179a98=_0x29e3fa['map'](_0x3ef2ba=>{const _0x4b5fc7=_0x37242c,_0x8c6e67=new Date(_0x3ef2ba['updatedAt'])[_0x4b5fc7(0x213)]();return{'name':_0x8c6e67+_0x4b5fc7(0x28e)+_0x3ef2ba['title']+'\x20','value':_0x3ef2ba['id']};});_0x179a98['unshift']({'name':_0x37242c(0x2ec),'value':_0x37242c(0x288)});const _0x1c2fb2=await select({'message':'Select\x20a\x20previous\x20chat\x20to\x20resume:','choices':_0x179a98});if(_0x1c2fb2==='cancel')return!![];const _0x16be70=getChatSession(_0x1c2fb2);return _0x16be70?(_0xe9b1f4=_0x16be70['id'],_0x2db451[_0x37242c(0x30a)]=0x0,_0x2db451[_0x37242c(0x270)](..._0x16be70[_0x37242c(0x22f)]),a4_0x5a0cb9['success'](_0x37242c(0x28c)+_0x16be70['title']+'\x20')):a4_0x5a0cb9[_0x37242c(0x2e5)](_0x37242c(0x1d7)),!![];}if(_0x29866f===_0x37242c(0x1da)){const _0x5c549e=await getMcpTools();return _0x5c549e['length']===0x0?a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x2b2)):(a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x21a)),_0x5c549e['forEach'](_0x511d86=>a4_0x5a0cb9[_0x37242c(0x1ef)]('-\x20'+_0x511d86[_0x37242c(0x1ce)]+'\x20('+_0x511d86[_0x37242c(0x2e0)]+_0x37242c(0x2c8)+(_0x511d86[_0x37242c(0x2d5)]?.[_0x37242c(0x1e5)](0x0,0x32)||'')+'\x20'))),a4_0x5a0cb9['dim'](_0x37242c(0x2f2)),!![];}if(_0x29866f===_0x37242c(0x1ec))return a4_0x5a0cb9[_0x37242c(0x200)]('Commands'),a4_0x5a0cb9['dim'](_0x37242c(0x20a)),a4_0x5a0cb9['dim']('\x20\x20/clear\x20\x20\x20\x20\x20-\x20Clear\x20conversation\x20history'),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x1eb)),a4_0x5a0cb9[_0x37242c(0x1ef)]('\x20\x20/model\x20\x20\x20\x20\x20-\x20Switch\x20AI\x20model'),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x1e2)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x2fa)),a4_0x5a0cb9['dim'](_0x37242c(0x1d6)),a4_0x5a0cb9[_0x37242c(0x1ef)]('\x20\x20/usage\x20\x20\x20\x20\x20-\x20Show\x20token\x20usage\x20stats'),a4_0x5a0cb9['dim'](_0x37242c(0x1fe)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x26a)),a4_0x5a0cb9[_0x37242c(0x1ef)]('\x20\x20/github\x20\x20\x20\x20-\x20GitHub\x20integration'),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x318)),!![];if(_0x29866f===_0x37242c(0x208)){const {isBrowserServerRunning:_0x234a28,getConnectedSessions:_0x4c1288}=await import('../browser/index.js');if(_0x234a28()){const _0x24efac=_0x4c1288();a4_0x5a0cb9[_0x37242c(0x299)](_0x37242c(0x22a)),a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x2d6)+_0x24efac[_0x37242c(0x30a)]+'\x20'),_0x24efac['forEach'](_0x5c8b12=>a4_0x5a0cb9[_0x37242c(0x1ef)]('\x20\x20-\x20'+_0x5c8b12[_0x37242c(0x234)]+'\x20'));}else a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x29d)),a4_0x5a0cb9['dim'](_0x37242c(0x1df));return!![];}if(_0x29866f['startsWith'](_0x37242c(0x2af))){const _0x4a0605=_0x29866f['split']('\x20')[0x1]||'';return await a4_0x24b33e['handleGitHubCommand'](_0x4a0605),!![];}if(_0x29866f[_0x37242c(0x280)](_0x37242c(0x2a6))){const _0x24f438=await import(_0x37242c(0x2e9)),_0x23817f=_0x29866f[_0x37242c(0x24a)]('\x20')[0x1]||'';if(_0x23817f===_0x37242c(0x1d8)){const {input:_0x95d22,password:_0x3d607e}=await import('@inquirer/prompts');a4_0x5a0cb9[_0x37242c(0x200)](_0x37242c(0x20d)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x2d9)),a4_0x5a0cb9[_0x37242c(0x1ef)]('2.\x20Send\x20/newbot\x20and\x20follow\x20instructions'),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x1cf)),a4_0x5a0cb9[_0x37242c(0x1f5)]('');const _0x43593f=await _0x3d607e({'message':_0x37242c(0x2f1),'mask':'*'});_0x43593f&&(_0x24f438[_0x37242c(0x23e)](_0x43593f),a4_0x5a0cb9[_0x37242c(0x299)](_0x37242c(0x1ee)));const _0x1ec6b2=await _0x95d22({'message':_0x37242c(0x269)});return _0x1ec6b2&&(_0x24f438[_0x37242c(0x218)](_0x1ec6b2),a4_0x5a0cb9['success'](_0x37242c(0x24c))),a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x293)),!![];}if(_0x23817f===_0x37242c(0x238))return await _0x24f438[_0x37242c(0x2e6)](),!![];if(_0x23817f===_0x37242c(0x2ba))return _0x24f438['stopBot'](),a4_0x5a0cb9['info'](_0x37242c(0x2d2)),!![];if(_0x23817f==='status')return _0x24f438['isBotRunning']()?a4_0x5a0cb9[_0x37242c(0x299)](_0x37242c(0x297)):a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x260)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x21d)+(_0x24f438[_0x37242c(0x289)]()?_0x37242c(0x2b8):'No')+'\x20'),!![];return a4_0x5a0cb9[_0x37242c(0x200)](_0x37242c(0x2e1)),a4_0x5a0cb9['dim'](_0x37242c(0x2f7)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x29c)),a4_0x5a0cb9[_0x37242c(0x1ef)](_0x37242c(0x1dc)),a4_0x5a0cb9['dim']('\x20\x20/telegram\x20status\x20\x20-\x20Check\x20status'),!![];}if(_0x29866f===_0x37242c(0x222)){const {rollbackLast:_0x5e4fd6,getChanges:_0x78f479}=await import(_0x37242c(0x244)),_0x445464=_0x78f479();if(_0x445464[_0x37242c(0x30a)]===0x0)a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x2b4));else{const _0x356fb5=_0x5e4fd6();_0x356fb5[_0x37242c(0x299)]?a4_0x5a0cb9[_0x37242c(0x299)](_0x356fb5[_0x37242c(0x2fb)]):a4_0x5a0cb9[_0x37242c(0x2e5)](_0x356fb5['message']);}return!![];}if(_0x29866f==='/model'){const _0x32a70c=await selectModel();return _0x32a70c!==_0x5a1d13?(a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x1ed)+_0x32a70c+'\x20'),a4_0x5a0cb9[_0x37242c(0x1f5)]('Please\x20restart\x20the\x20chat\x20for\x20the\x20change\x20to\x20take\x20full\x20effect.')):a4_0x5a0cb9['info'](_0x37242c(0x2fd)+_0x5a1d13+'\x20'),!![];}if(_0x29866f===_0x37242c(0x29b)||_0x29866f===_0x37242c(0x210)){const {selectTheme:_0x3270ba}=await import(_0x37242c(0x2bc)),_0x2ceb78=await _0x3270ba();return a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x22e)+_0x2ceb78+'\x20'),!![];}if(_0x29866f===_0x37242c(0x261)||_0x29866f===_0x37242c(0x20e)){const _0x3c82bf=a4_0x5a0cb9['createSpinner'](_0x37242c(0x2df));_0x3c82bf[_0x37242c(0x238)]();const _0x4bba32=await getUserUsage();return _0x3c82bf['stop'](),_0x4bba32?a4_0x5a0cb9['usageBox'](_0x4bba32[_0x37242c(0x2ac)],_0x4bba32[_0x37242c(0x301)],_0x4bba32[_0x37242c(0x274)]):a4_0x5a0cb9[_0x37242c(0x2e5)](_0x37242c(0x28d)),!![];}const _0x30f2c7=/(?:[a-zA-Z]:\\[^:<>"|?*]+?\.(?:png|jpg|jpeg|gif|webp))|(?:\/[^:<>"|?*]+?\.(?:png|jpg|jpeg|gif|webp))/gi,_0x102e91=[..._0x29866f[_0x37242c(0x2ff)](_0x30f2c7)]['map'](_0x31d6f4=>_0x31d6f4[0x0]);if(_0x102e91['length']>0x0){const _0x4c7411=[];let _0x1fdac4=_0x29866f;for(const _0x1dfd46 of _0x102e91){_0x1fdac4=_0x1fdac4[_0x37242c(0x2a3)](_0x1dfd46,'')[_0x37242c(0x287)]();try{if(a4_0x5a751c[_0x37242c(0x2e7)](_0x1dfd46)){const _0x368f44=_0x1dfd46[_0x37242c(0x24a)]('.')[_0x37242c(0x1ff)]()?.[_0x37242c(0x2bd)]()||_0x37242c(0x263);let _0x5c36c8=_0x37242c(0x22d)+_0x368f44+'\x20';if(_0x368f44===_0x37242c(0x30b))_0x5c36c8='image/jpeg';const _0x282c18=a4_0x5a751c[_0x37242c(0x267)](_0x1dfd46)[_0x37242c(0x2a5)](_0x37242c(0x307));_0x4c7411[_0x37242c(0x270)]({'type':'image_url','image_url':{'url':_0x37242c(0x1d2)+_0x5c36c8+';\x20base64,\x20'+_0x282c18+'\x20'}});}}catch(_0x46e610){a4_0x5a0cb9[_0x37242c(0x306)](_0x37242c(0x230)+_0x1dfd46+':\x20'+_0x46e610+'\x20');}}if(_0x1fdac4)_0x4c7411[_0x37242c(0x309)]({'type':_0x37242c(0x226),'text':_0x1fdac4});else _0x4c7411[_0x37242c(0x30a)]>0x0&&_0x4c7411[_0x37242c(0x309)]({'type':_0x37242c(0x226),'text':_0x37242c(0x22c)});_0x4c7411[_0x37242c(0x30a)]>0x0?(_0x2db451[_0x37242c(0x270)]({'role':_0x37242c(0x2a4),'content':_0x4c7411}),a4_0x5a0cb9['info']('Attached\x20'+(_0x4c7411[_0x37242c(0x30a)]-(_0x1fdac4?0x1:0x1))+_0x37242c(0x243))):_0x2db451[_0x37242c(0x270)]({'role':_0x37242c(0x2a4),'content':_0x29866f});}else _0x2db451[_0x37242c(0x270)]({'role':'user','content':_0x29866f});await processAgentLoop(_0x2db451,_0x5a1d13);const _0x2d8924=JSON['stringify'](_0x2db451)[_0x37242c(0x30a)]/0x4;if(_0x2d8924>0xc350&&_0x2db451[_0x37242c(0x30a)]>0xa){a4_0x5a0cb9[_0x37242c(0x1f5)](_0x37242c(0x259));const _0x473613=Object[_0x37242c(0x2db)]([],_0x2db451[_0x37242c(0x1e5)](0x1,_0x2db451[_0x37242c(0x30a)]-0x4));try{const _0x1786c3=[{'role':_0x37242c(0x1d9),'content':_0x37242c(0x257)},{'role':_0x37242c(0x2a4),'content':JSON[_0x37242c(0x1f8)](_0x473613)}],_0x1ad86c=await sendChatMessage(_0x5a1d13,_0x1786c3),_0x5a0fc3=_0x1ad86c[_0x37242c(0x2ea)];_0x2db451[_0x37242c(0x240)](0x1,_0x2db451[_0x37242c(0x30a)]-0x5,{'role':'assistant','content':_0x37242c(0x25c)+_0x5a0fc3+'\x20'}),_0xe9b1f4=a4_0x2538c8['randomUUID']();}catch(_0x469c1d){a4_0x5a0cb9['warn'](_0x37242c(0x27f));}}return saveChatSession(_0xe9b1f4,_0x2db451),!![];};if(_0x68872e){const _0x4c2981=await _0xfc3475(_0x68872e);if(!_0x4c2981)return;}while(!![]){try{const _0x10443c=await import(_0x1cebf5(0x227))[_0x1cebf5(0x1cd)](_0x428452=>_0x428452[_0x1cebf5(0x202)]()),_0x46bea0=await import(_0x1cebf5(0x2bc))[_0x1cebf5(0x1cd)](_0x207900=>_0x207900[_0x1cebf5(0x2c2)](_0x10443c)),_0x80c0dd=a4_0x5233f9[_0x1cebf5(0x27b)][_0x1cebf5(0x235)](_0x46bea0[_0x1cebf5(0x1f3)])(_0x1cebf5(0x294)),_0x1c80bf=await input({'message':_0x80c0dd,'theme':{'prefix':''}}),_0x11d86d=await _0xfc3475(_0x1c80bf);if(!_0x11d86d)break;}catch(_0x422395){if(_0x422395 instanceof Error&&_0x422395[_0x1cebf5(0x2fb)][_0x1cebf5(0x2da)](_0x1cebf5(0x207)))break;a4_0x5a0cb9[_0x1cebf5(0x2e5)](_0x1cebf5(0x292)+_0x422395+'\x20');}}}function cleanTagsFromLine(_0x4853d1){const _0x246e0a=a4_0x59ac23,_0x313d06=_0x4853d1[_0x246e0a(0x287)]();if(!_0x313d06)return'';if(_0x313d06[_0x246e0a(0x280)]('**'))return'';if(_0x313d06['startsWith'](_0x246e0a(0x2b5)))return'';if(_0x313d06[_0x246e0a(0x280)](_0x246e0a(0x220)))return'';if(_0x313d06[_0x246e0a(0x280)](_0x246e0a(0x1f6)))return'';if(_0x313d06[_0x246e0a(0x2da)](_0x246e0a(0x2d0))&&_0x313d06[_0x246e0a(0x2da)](_0x246e0a(0x1d0)))return'';if(_0x313d06[_0x246e0a(0x280)](_0x246e0a(0x249)))return'';if(_0x313d06['startsWith'](_0x246e0a(0x221)))return'';if(_0x313d06['startsWith'](_0x246e0a(0x253)))return'';if(_0x313d06[_0x246e0a(0x280)]('I\x20am'))return'';if(_0x313d06[_0x246e0a(0x280)]('Now,'))return'';if(_0x313d06[_0x246e0a(0x280)](_0x246e0a(0x1e6)))return'';if(_0x313d06[_0x246e0a(0x2da)]('must\x20greet'))return'';if(_0x313d06['includes']('registered\x20that'))return'';return _0x4853d1[_0x246e0a(0x2a3)](/<text>/g,'')[_0x246e0a(0x2a3)](/<\/text>/g,'')[_0x246e0a(0x2a3)](/<\/text>/g,'')['replace'](/<reasoning>/g,'')['replace'](/<\/reasoning>/g,'')['replace'](/\*\*(.+?)\*\*/g,'$1');}async function processAgentLoop(_0x5aa585,_0x20f31b){const _0x304661=a4_0x59ac23;let _0x17a44e=0x0;const _0xf405ca=0x3e8;while(_0x17a44e<_0xf405ca){_0x17a44e++;const _0x33f5b1=a4_0x5a0cb9[_0x304661(0x1f7)]('Thinking...');_0x33f5b1[_0x304661(0x238)]();let _0x5593a='',_0x2e407=![],_0x762e6c='';const _0x41269f=new AbortController(),_0x55370a=()=>{const _0x4a50eb=_0x304661;_0x41269f['abort'](),a4_0x5a0cb9[_0x4a50eb(0x1f5)](_0x4a50eb(0x2cc));};process['on']('SIGINT',_0x55370a);let _0x3b4563=null;try{const _0xea5daf=await sendChatMessage(_0x20f31b,_0x5aa585,_0x5f154c=>{const _0x4c1c30=_0x304661;_0x33f5b1[_0x4c1c30(0x1c9)]&&_0x33f5b1[_0x4c1c30(0x2ba)]();_0x5593a+=_0x5f154c;for(const _0x307355 of _0x5f154c){_0x762e6c+=_0x307355;if(_0x307355==='\x0a'){if(!_0x2e407){if(_0x762e6c[_0x4c1c30(0x2da)]('<execute_tool>')||_0x762e6c['startsWith'](_0x4c1c30(0x211))){_0x2e407=!![],_0x762e6c='';!_0x3b4563&&(_0x3b4563=a4_0x5a0cb9[_0x4c1c30(0x1e7)]('Generating...'),_0x3b4563[_0x4c1c30(0x238)]());continue;}let _0x403161=_0x762e6c[_0x4c1c30(0x2a3)](/<text>/g,'')[_0x4c1c30(0x2a3)](/<\/text>/g,'')[_0x4c1c30(0x2a3)](/<reasoning.*?>/g,'')['replace'](/<\/reasoning>/g,'');if(_0x403161[_0x4c1c30(0x280)](_0x4c1c30(0x1f6))&&!_0x403161[_0x4c1c30(0x280)](_0x4c1c30(0x211)))process[_0x4c1c30(0x2a9)][_0x4c1c30(0x1f1)](_0x4c1c30(0x1f6)+_0x403161[_0x4c1c30(0x1e5)](0x3));else(_0x403161[_0x4c1c30(0x287)]()||_0x403161==='\x0a'||_0x403161==='\x0d\x0a')&&process[_0x4c1c30(0x2a9)]['write'](_0x403161);}else(_0x762e6c[_0x4c1c30(0x2da)](_0x4c1c30(0x233))||_0x762e6c[_0x4c1c30(0x287)]()===_0x4c1c30(0x1f6))&&(_0x2e407=![],_0x3b4563&&(_0x3b4563['stop'](),_0x3b4563=null));_0x762e6c='';}}},_0x41269f[_0x304661(0x1f9)]);_0x3b4563&&(_0x3b4563[_0x304661(0x2ba)](),_0x3b4563=null);if(_0x762e6c&&!_0x2e407&&!_0x762e6c['includes']('<execute_tool>')){let _0x37b5bc=_0x762e6c[_0x304661(0x2a3)](/<text>/g,'')[_0x304661(0x2a3)](/<\/text>/g,'')['replace'](/<reasoning.*?>/g,'')[_0x304661(0x2a3)](/<\/reasoning>/g,'');if(_0x37b5bc[_0x304661(0x287)]())process[_0x304661(0x2a9)][_0x304661(0x1f1)](_0x37b5bc);}_0x5593a=_0xea5daf[_0x304661(0x2ea)];}catch(_0x46273b){_0x33f5b1[_0x304661(0x2ba)](),process[_0x304661(0x268)](_0x304661(0x1db),_0x55370a);if(_0x46273b[_0x304661(0x1ce)]===_0x304661(0x2e2)||_0x46273b[_0x304661(0x2fb)]['includes']('aborted')){a4_0x5a0cb9['warn'](_0x304661(0x25f)),_0x5aa585[_0x304661(0x270)]({'role':_0x304661(0x1fc),'content':_0x5593a+_0x304661(0x206)}),_0x5aa585[_0x304661(0x270)]({'role':_0x304661(0x2a4),'content':'Stop.'});break;}if(_0x46273b[_0x304661(0x2f3)]){a4_0x5a0cb9['rateLimitWarning'](_0x46273b[_0x304661(0x2e8)]||0x3c);return;}a4_0x5a0cb9['error'](_0x304661(0x2ca)+_0x46273b);return;}finally{process['removeListener']('SIGINT',_0x55370a);}_0x33f5b1[_0x304661(0x1c9)]&&_0x33f5b1[_0x304661(0x2ba)]();a4_0x5a0cb9['aiMessageEnd'](),_0x5aa585['push']({'role':'assistant','content':_0x5593a});let _0xbdac45=_0x5593a['match'](/<execute_tool>\s*([\s\S]*?)<\/execute_tool>/);!_0xbdac45&&(_0xbdac45=_0x5593a['match'](/```tool\s*([\s\S]*?)```/));!_0xbdac45&&(_0xbdac45=_0x5593a[_0x304661(0x232)](/```json\s*(\{[\s\S]*?"name"\s*:[\s\S]*?\})\s*```/));if(!_0xbdac45)break;function _0x1a2ae6(_0x50b118){const _0x552854=_0x304661,_0x57248c=_0x50b118[_0x552854(0x287)]();try{return JSON[_0x552854(0x296)](_0x57248c);}catch(_0x4fc488){try{let _0x488d50='',_0x345ed7=![];for(let _0x37f2ed=0x0;_0x37f2ed<_0x57248c[_0x552854(0x30a)];_0x37f2ed++){const _0x1e2f10=_0x57248c[_0x37f2ed];if(_0x1e2f10==='\x22'&&_0x57248c[_0x37f2ed-0x1]!=='\x5c')_0x345ed7=!_0x345ed7;if(_0x345ed7&&_0x1e2f10==='\x0a')_0x488d50+='\x5cn';else _0x488d50+=_0x1e2f10;}return JSON[_0x552854(0x296)](_0x488d50);}catch(_0x2a7879){try{return new Function(_0x552854(0x262)+_0x57248c)();}catch(_0x2d9b48){throw new Error(_0x552854(0x2d8)+_0x4fc488[_0x552854(0x2fb)]);}}}}try{const _0x8fb83f=_0x1a2ae6(_0xbdac45[0x1]),_0x33a08b={'write_file':_0x304661(0x20f),'write':_0x304661(0x20f),'create':'create_file','read':'read_file','read_text_file':_0x304661(0x254),'search':'search_file','list':'list_directory','ls':'list_directory','update':_0x304661(0x1f4),'append':_0x304661(0x2c0),'execute':'run_command','cmd':_0x304661(0x312),'remove_file':_0x304661(0x21b),'rm':_0x304661(0x21b),'unlink':_0x304661(0x21b),'move_file':'rename_file','mv':'rename_file','cp':_0x304661(0x2f8),'stat':_0x304661(0x1e8),'head':'read_file_lines','wget':_0x304661(0x27c),'curl':'fetch_url','http_get':_0x304661(0x2a0),'env':_0x304661(0x25b),'sysinfo':'get_system_info','paste':_0x304661(0x22b),'ask':_0x304661(0x248),'prompt_user':_0x304661(0x248),'request_input':_0x304661(0x248),'dir_tree':_0x304661(0x1e3),'show_tree':_0x304661(0x1e3),'grep':_0x304661(0x2cb),'find_in_files':_0x304661(0x2cb),'search_all':'grep_recursive','find_replace':_0x304661(0x256),'sed':'replace_in_files','open':_0x304661(0x298),'vscode':'open_in_editor','compress':_0x304661(0x203),'archive':_0x304661(0x203),'extract':'unzip_files','decompress':'unzip_files','ps':_0x304661(0x1d1),'pwsh':_0x304661(0x1d1)};_0x33a08b[_0x8fb83f['name']]&&(_0x8fb83f['name']=_0x33a08b[_0x8fb83f['name']]);_0x8fb83f[_0x304661(0x237)]&&(!_0x8fb83f[_0x304661(0x237)][_0x304661(0x23d)]&&(_0x8fb83f[_0x304661(0x237)]['path']=_0x8fb83f[_0x304661(0x237)][_0x304661(0x2c1)]||_0x8fb83f['args']['filepath']||_0x8fb83f[_0x304661(0x237)][_0x304661(0x29f)]||_0x8fb83f['args'][_0x304661(0x201)]),!_0x8fb83f[_0x304661(0x237)][_0x304661(0x2ea)]&&(_0x8fb83f[_0x304661(0x237)][_0x304661(0x2ea)]=_0x8fb83f['args'][_0x304661(0x226)]||_0x8fb83f[_0x304661(0x237)]['code']||_0x8fb83f['args']['data']||_0x8fb83f[_0x304661(0x237)][_0x304661(0x205)]),!_0x8fb83f[_0x304661(0x237)]['command']&&(_0x8fb83f[_0x304661(0x237)][_0x304661(0x2bb)]=_0x8fb83f[_0x304661(0x237)]['cmd']||_0x8fb83f[_0x304661(0x237)][_0x304661(0x271)]));const _0x3b0e1f={'create_file':'Create','read_file':_0x304661(0x308),'edit_file':'Edit','update_file':_0x304661(0x291),'append_file':_0x304661(0x25a),'list_directory':_0x304661(0x1f0),'search_file':_0x304661(0x2e4),'find_files':_0x304661(0x28f),'search_directory':_0x304661(0x279),'delete_file':'Delete','rename_file':_0x304661(0x275),'copy_file':_0x304661(0x30d),'file_info':_0x304661(0x2ee),'read_file_lines':'ReadLines','run_command':_0x304661(0x314),'run_background':_0x304661(0x23a),'read_terminal_output':'ReadTerm','send_terminal_input':_0x304661(0x264),'list_active_processes':_0x304661(0x1d3),'terminate_process':_0x304661(0x28a),'git_status':_0x304661(0x1d4),'git_diff':_0x304661(0x2b1),'git_log':'GitLog','git_add':_0x304661(0x2ed),'git_commit':'GitCommit','git_branch':_0x304661(0x1e0),'fetch_url':_0x304661(0x20c),'download_file':_0x304661(0x214),'get_env':_0x304661(0x2ef),'set_env':'SetEnv','get_system_info':'SysInfo','clipboard_read':_0x304661(0x305),'clipboard_write':_0x304661(0x26b),'ask_human':'Ask','tree':_0x304661(0x2d4),'grep_recursive':_0x304661(0x2d7),'replace_in_files':'Replace','open_in_editor':_0x304661(0x219),'zip_files':_0x304661(0x26d),'unzip_files':_0x304661(0x1d5),'write_json':'WriteJSON','read_json':_0x304661(0x24d),'patch_file':_0x304661(0x23c),'powershell_run':'PS','browser_open':'Browser','browser_click':_0x304661(0x281),'browser_fill':_0x304661(0x29e),'browser_snapshot':'Snapshot','browser_screenshot':_0x304661(0x242),'browser_get_text':_0x304661(0x2ab),'browser_close':'CloseBrowser'},_0x13eca9=_0x3b0e1f[_0x8fb83f[_0x304661(0x1ce)]]||_0x8fb83f[_0x304661(0x1ce)];let _0x4fe66e='';if(_0x8fb83f[_0x304661(0x1ce)]===_0x304661(0x312)&&_0x8fb83f[_0x304661(0x237)]['command'])_0x4fe66e=_0x8fb83f[_0x304661(0x237)]['command'];else{if(_0x8fb83f[_0x304661(0x1ce)]===_0x304661(0x2d3))_0x4fe66e=_0x304661(0x24e)+(_0x8fb83f[_0x304661(0x237)][_0x304661(0x1dd)]||_0x304661(0x286));else{if(_0x8fb83f[_0x304661(0x1ce)]==='read_terminal_output'||_0x8fb83f[_0x304661(0x1ce)]==='terminate_process')_0x4fe66e='PID:'+(_0x8fb83f['args'][_0x304661(0x1dd)]||'any');else{if(_0x8fb83f[_0x304661(0x1ce)]===_0x304661(0x2c5))_0x4fe66e=_0x304661(0x236);else{if(_0x8fb83f[_0x304661(0x237)][_0x304661(0x23d)])_0x4fe66e=_0x8fb83f[_0x304661(0x237)][_0x304661(0x23d)];else{if(_0x8fb83f[_0x304661(0x237)][_0x304661(0x2be)])_0x4fe66e='\x22'+_0x8fb83f[_0x304661(0x237)]['pattern']+'\x22';else _0x8fb83f['args']['url']?_0x4fe66e=_0x8fb83f[_0x304661(0x237)][_0x304661(0x304)]:_0x4fe66e=Object[_0x304661(0x2f6)](_0x8fb83f[_0x304661(0x237)])[0x0]||'';}}}}}const _0x1cdc1c=_0x4fe66e['length']>0x32?_0x4fe66e['slice'](0x0,0x2f)+'...':_0x4fe66e,_0x2567a7=a4_0x5a0cb9[_0x304661(0x1e7)](_0x13eca9+'('+_0x1cdc1c+')');_0x2567a7[_0x304661(0x238)]();const _0x27ea7b=performance[_0x304661(0x228)]();let _0x181356;try{_0x181356=await executeToolCall(_0x8fb83f[_0x304661(0x1ce)],_0x8fb83f[_0x304661(0x237)]);}catch(_0x57847c){if(_0x57847c[_0x304661(0x2fb)]&&_0x57847c[_0x304661(0x2fb)][_0x304661(0x2da)]('Unknown\x20tool')){const _0x7d0e2d=await getMcpTools(),_0x27e5a3=_0x7d0e2d[_0x304661(0x273)](_0x176b36=>_0x176b36[_0x304661(0x1ce)]===_0x8fb83f[_0x304661(0x1ce)]);if(_0x27e5a3)try{_0x181356=await executeMcpTool(_0x27e5a3['serverName'],_0x27e5a3[_0x304661(0x1ce)],_0x8fb83f[_0x304661(0x237)]);}catch(_0x150223){throw new Error(_0x304661(0x2c4)+_0x150223);}else throw _0x57847c;}else throw _0x57847c;}const _0x444402=((performance[_0x304661(0x228)]()-_0x27ea7b)/0x3e8)[_0x304661(0x283)](0x1);_0x2567a7[_0x304661(0x2ba)]();let _0x1d9a21=_0x304661(0x258)+_0x444402+'s',_0x2789f8=![];const _0x5d7b15=_0x181356;if(_0x5d7b15&&typeof _0x5d7b15==='object'){if(_0x8fb83f['name']===_0x304661(0x312)){if(_0x5d7b15[_0x304661(0x2f4)]===0x0&&_0x5d7b15[_0x304661(0x299)]!==![]){const _0x17c7f7=_0x5d7b15[_0x304661(0x2a9)]?_0x5d7b15[_0x304661(0x2a9)][_0x304661(0x24a)]('\x0a')[_0x304661(0x30a)]:0x0;_0x1d9a21=_0x304661(0x223)+_0x17c7f7+'\x20lines\x20of\x20output\x20('+_0x444402+'s)';}else{_0x2789f8=!![],_0x1d9a21='Exited\x20with\x20code\x20'+_0x5d7b15[_0x304661(0x2f4)];const _0x3fa9a4=_0x5d7b15['stderr']||_0x5d7b15['stdout']||_0x5d7b15[_0x304661(0x2fb)]||_0x304661(0x2cd);_0x3fa9a4&&(_0x1d9a21+=':\x20'+_0x3fa9a4[_0x304661(0x24a)]('\x0a')[0x0][_0x304661(0x1cb)](0x0,0x64));}}else{if(_0x5d7b15[_0x304661(0x299)]===![])_0x2789f8=!![],_0x1d9a21=_0x304661(0x2fe)+(_0x5d7b15[_0x304661(0x2fb)]||_0x5d7b15[_0x304661(0x2e5)]||_0x304661(0x2cd));else{if(_0x5d7b15[_0x304661(0x2e5)])_0x2789f8=!![],_0x1d9a21=_0x304661(0x2fe)+_0x5d7b15[_0x304661(0x2e5)];else{if(_0x8fb83f[_0x304661(0x1ce)]===_0x304661(0x254)&&typeof _0x5d7b15[_0x304661(0x2ea)]===_0x304661(0x26f)){const _0x17fe86=_0x5d7b15[_0x304661(0x2ea)]['split']('\x0a')[_0x304661(0x30a)];_0x1d9a21=_0x304661(0x2a1)+_0x17fe86+'\x20lines\x20('+_0x444402+'s)';}else(_0x8fb83f[_0x304661(0x1ce)]==='edit_file'||_0x8fb83f['name']===_0x304661(0x20f))&&(_0x1d9a21=_0x304661(0x2c9)+_0x444402+'s)');}}}}a4_0x5a0cb9['toolSuccess'](_0x13eca9,_0x1cdc1c,_0x1d9a21,_0x2789f8);let _0x33fe74=_0x181356;_0x8fb83f[_0x304661(0x1ce)]==='run_command'&&_0x5d7b15&&(_0x33fe74={'exitCode':_0x5d7b15[_0x304661(0x2f4)],'stdout':_0x5d7b15[_0x304661(0x2a9)],'stderr':_0x5d7b15['stderr'],'error':_0x5d7b15['error']}),_0x5aa585[_0x304661(0x270)]({'role':'user','content':'Tool\x20result\x20for\x20'+_0x8fb83f[_0x304661(0x1ce)]+':\x0a'+JSON[_0x304661(0x1f8)](_0x33fe74,null,0x2)}),await new Promise(_0x1a16f4=>setTimeout(_0x1a16f4,0x1f4));}catch(_0x4be06c){a4_0x5a0cb9[_0x304661(0x276)](_0x304661(0x23b),_0x304661(0x1fa),_0x4be06c[_0x304661(0x2fb)]||String(_0x4be06c),!![]),_0x5aa585[_0x304661(0x270)]({'role':'user','content':_0x304661(0x284)+_0x4be06c+_0x304661(0x303)});}}_0x17a44e>=_0xf405ca&&a4_0x5a0cb9[_0x304661(0x306)]('Reached\x20maximum\x20iterations');}async function executeToolCall(_0x46e838,_0x487ee0){const _0x3b69e7=a4_0x59ac23;switch(_0x46e838){case'create_file':return createFile(_0x487ee0['path'],_0x487ee0['content']);case _0x3b69e7(0x254):return readFile(_0x487ee0[_0x3b69e7(0x23d)]);case _0x3b69e7(0x2b0):return listDirectory(_0x487ee0[_0x3b69e7(0x23d)]||'.');case'edit_file':return editFile(_0x487ee0[_0x3b69e7(0x23d)],_0x487ee0[_0x3b69e7(0x1ca)],_0x487ee0['replace']);case'search_file':return searchFile(_0x487ee0['path'],_0x487ee0[_0x3b69e7(0x2be)]);case _0x3b69e7(0x312):const {command:_0x123082,background:_0x1e2204,wait:_0x4e5fe0}=_0x487ee0,_0xc3e1f6=await runCommand(_0x123082,undefined,_0x1e2204,_0x4e5fe0);return _0xc3e1f6;case _0x3b69e7(0x1f2):{const {readTerminalOutput:_0x5b43a9}=await import('../tools/command.js');return _0x5b43a9(_0x487ee0[_0x3b69e7(0x1dd)]);}case'send_terminal_input':{const {sendTerminalInput:_0x19863d}=await import(_0x3b69e7(0x204));return _0x19863d(_0x487ee0['input'],_0x487ee0[_0x3b69e7(0x1dd)]);}case'list_active_processes':{const {getActiveProcesses:_0x22ee78}=await import('../tools/command.js');return{'pids':_0x22ee78(),'message':_0x3b69e7(0x239)+_0x22ee78()[_0x3b69e7(0x30a)]};}case _0x3b69e7(0x21e):{const {terminateProcess:_0x4f482a}=await import(_0x3b69e7(0x204));return _0x4f482a(_0x487ee0[_0x3b69e7(0x1dd)]);}case'find_files':{const {findFiles:_0x3748e3}=await import('../tools/file.js');return _0x3748e3(_0x487ee0[_0x3b69e7(0x23d)]||'.',_0x487ee0['pattern']);}case'search_directory':{const {searchDirectory:_0x16fcb7}=await import('../tools/file.js');return _0x16fcb7(_0x487ee0[_0x3b69e7(0x23d)]||'.',_0x487ee0['pattern']);}case _0x3b69e7(0x241):{const {readFile:_0x3b4859}=await import(_0x3b69e7(0x26c));return _0x3b4859(_0x487ee0['owner'],_0x487ee0[_0x3b69e7(0x2a8)],_0x487ee0[_0x3b69e7(0x23d)],_0x487ee0[_0x3b69e7(0x315)]);}case _0x3b69e7(0x2cf):{const {createPullRequest:_0x1f32fe}=await import(_0x3b69e7(0x26c));return _0x1f32fe(_0x487ee0[_0x3b69e7(0x2aa)],_0x487ee0[_0x3b69e7(0x2a8)],_0x487ee0[_0x3b69e7(0x2bf)],_0x487ee0[_0x3b69e7(0x282)],_0x487ee0[_0x3b69e7(0x2d1)],_0x487ee0[_0x3b69e7(0x1fd)]);}case _0x3b69e7(0x1fb):{const {createBranch:_0x4f8879}=await import('../github/api.js');return _0x4f8879(_0x487ee0[_0x3b69e7(0x2aa)],_0x487ee0['repo'],_0x487ee0[_0x3b69e7(0x1ea)],_0x487ee0[_0x3b69e7(0x21f)]);}case'browser_open':{const {browserOpen:_0x550c22,startBrowserServer:_0x58d361,isBrowserServerRunning:_0x1ff5e0}=await import(_0x3b69e7(0x247));return!_0x1ff5e0()&&await _0x58d361(),_0x550c22(_0x487ee0[_0x3b69e7(0x304)]);}case _0x3b69e7(0x217):{const {browserClick:_0x524501}=await import(_0x3b69e7(0x247));return _0x524501(_0x487ee0[_0x3b69e7(0x2a7)]);}case _0x3b69e7(0x212):{const {browserFill:_0x30f791}=await import(_0x3b69e7(0x247));return _0x30f791(_0x487ee0[_0x3b69e7(0x2a7)],_0x487ee0['value']);}case _0x3b69e7(0x21c):{const {browserSnapshot:_0x316c05}=await import(_0x3b69e7(0x247));return _0x316c05();}case _0x3b69e7(0x2b7):{const {browserScreenshot:_0x5077f3}=await import(_0x3b69e7(0x247));return _0x5077f3();}case _0x3b69e7(0x30f):{const {browserGetText:_0x8eaee3}=await import(_0x3b69e7(0x247));return _0x8eaee3(_0x487ee0['selector']);}case _0x3b69e7(0x246):{const {browserClose:_0x375c78}=await import(_0x3b69e7(0x247));return _0x375c78();}case _0x3b69e7(0x21b):return deleteFile(_0x487ee0[_0x3b69e7(0x23d)]);case _0x3b69e7(0x255):return renameFile(_0x487ee0[_0x3b69e7(0x24b)]||_0x487ee0['path'],_0x487ee0['to']||_0x487ee0['destination']);case _0x3b69e7(0x2f8):return copyFile(_0x487ee0['from']||_0x487ee0['path'],_0x487ee0['to']||_0x487ee0['destination']);case _0x3b69e7(0x1e8):return fileInfo(_0x487ee0[_0x3b69e7(0x23d)]);case _0x3b69e7(0x272):return readFileLines(_0x487ee0[_0x3b69e7(0x23d)],_0x487ee0[_0x3b69e7(0x238)]||0x1,_0x487ee0['end']||0x32);case _0x3b69e7(0x231):{const _0x48ad66=await runCommand(_0x487ee0[_0x3b69e7(0x2bb)],undefined,!![],_0x487ee0[_0x3b69e7(0x24f)]||0x1388);return _0x48ad66;}case _0x3b69e7(0x245):return gitStatus();case _0x3b69e7(0x2de):return gitDiff(_0x487ee0['path']);case _0x3b69e7(0x27e):return gitLog(_0x487ee0[_0x3b69e7(0x2b9)]||0xa);case _0x3b69e7(0x30c):return gitAdd(_0x487ee0[_0x3b69e7(0x23d)]||'.');case _0x3b69e7(0x2b3):return gitCommit(_0x487ee0[_0x3b69e7(0x2fb)]);case _0x3b69e7(0x2dc):return gitBranch();case'fetch_url':return fetchUrl(_0x487ee0[_0x3b69e7(0x304)]);case _0x3b69e7(0x27c):return downloadFile(_0x487ee0['url'],_0x487ee0['path']);case _0x3b69e7(0x25b):return getEnv(_0x487ee0[_0x3b69e7(0x1ce)]);case _0x3b69e7(0x2c3):return setEnv(_0x487ee0[_0x3b69e7(0x1ce)],_0x487ee0[_0x3b69e7(0x300)]);case _0x3b69e7(0x251):return getSystemInfo();case'clipboard_read':return clipboardRead();case'clipboard_write':return clipboardWrite(_0x487ee0[_0x3b69e7(0x226)]||_0x487ee0[_0x3b69e7(0x2ea)]);case _0x3b69e7(0x248):{const _0x29f9f5=_0x487ee0['question']||_0x487ee0[_0x3b69e7(0x2fb)]||_0x3b69e7(0x25d);a4_0x5a0cb9['aiMessageEnd']();const _0x5b5250=await input({'message':a4_0x5233f9[_0x3b69e7(0x235)]('#3b82f6')(_0x3b69e7(0x216))+_0x29f9f5+'\x0a','theme':{'prefix':''}});return{'success':!![],'response':_0x5b5250,'message':_0x3b69e7(0x25e)+_0x5b5250};}case'tree':return tree(_0x487ee0[_0x3b69e7(0x23d)]||'.',_0x487ee0[_0x3b69e7(0x313)]||0x3);case _0x3b69e7(0x2cb):return grepRecursive(_0x487ee0[_0x3b69e7(0x23d)]||'.',_0x487ee0[_0x3b69e7(0x2be)],_0x487ee0[_0x3b69e7(0x2fc)]);case _0x3b69e7(0x256):return replaceInFiles(_0x487ee0[_0x3b69e7(0x23d)]||'.',_0x487ee0[_0x3b69e7(0x1ca)],_0x487ee0[_0x3b69e7(0x2a3)],_0x487ee0['extensions']);case'open_in_editor':return openInEditor(_0x487ee0['path']);case'zip_files':return zipFiles(_0x487ee0[_0x3b69e7(0x250)]||[_0x487ee0[_0x3b69e7(0x23d)]],_0x487ee0['output']||_0x3b69e7(0x30e));case'unzip_files':return unzipFiles(_0x487ee0['path']||_0x487ee0[_0x3b69e7(0x29a)],_0x487ee0[_0x3b69e7(0x2ce)]||'.');case'write_json':return writeJson(_0x487ee0['path'],_0x487ee0[_0x3b69e7(0x2eb)]||_0x487ee0[_0x3b69e7(0x2ea)]);case'read_json':return readJson(_0x487ee0['path']);case _0x3b69e7(0x209):return patchFile(_0x487ee0[_0x3b69e7(0x23d)],_0x487ee0[_0x3b69e7(0x23f)]);case _0x3b69e7(0x1d1):return powershellRun(_0x487ee0['script']||_0x487ee0[_0x3b69e7(0x2bb)]);default:return{'error':_0x3b69e7(0x2ad)+_0x46e838};}}
@@ -1 +1 @@
1
- const a5_0x40f58d=a5_0x1809;(function(_0x6543da,_0x33c4ff){const _0x3d97cd=a5_0x1809,_0x4758e8=_0x6543da();while(!![]){try{const _0x5574a1=parseInt(_0x3d97cd(0xcb))/0x1*(-parseInt(_0x3d97cd(0xa9))/0x2)+parseInt(_0x3d97cd(0xaa))/0x3+parseInt(_0x3d97cd(0xc6))/0x4*(parseInt(_0x3d97cd(0xc1))/0x5)+-parseInt(_0x3d97cd(0xbb))/0x6*(-parseInt(_0x3d97cd(0xb3))/0x7)+-parseInt(_0x3d97cd(0xc0))/0x8+-parseInt(_0x3d97cd(0xc2))/0x9+parseInt(_0x3d97cd(0xa5))/0xa*(parseInt(_0x3d97cd(0xc7))/0xb);if(_0x5574a1===_0x33c4ff)break;else _0x4758e8['push'](_0x4758e8['shift']());}catch(_0x4050e7){_0x4758e8['push'](_0x4758e8['shift']());}}}(a5_0x1e98,0xd5926));import a5_0x5fa34 from'conf';import a5_0x97de45 from'path';import a5_0x32ced7 from'fs';import{fileURLToPath}from'url';const config=new a5_0x5fa34({'projectName':a5_0x40f58d(0xca),'defaults':{'mcpServers':{}}});export function getMcpServers(){const _0xe68cfc=a5_0x40f58d,_0x1e7977=config[_0xe68cfc(0xb2)](_0xe68cfc(0xab)),_0x273168=loadMcpConfigFile();return{..._0x1e7977,..._0x273168};}export function addMcpServer(_0x3d78ae,_0x314ebb,_0x2af0ea=[],_0x944843){const _0x2ccd7e=a5_0x40f58d,_0x1b6b6e=config[_0x2ccd7e(0xb2)](_0x2ccd7e(0xab));_0x1b6b6e[_0x3d78ae]={'type':_0x2ccd7e(0xa2),'command':_0x314ebb,'args':_0x2af0ea,'env':_0x944843},config[_0x2ccd7e(0xc8)](_0x2ccd7e(0xab),_0x1b6b6e);}export function addMcpHttpServer(_0x24cb67,_0xa2255a){const _0x1b07bf=a5_0x40f58d,_0x35d216=config[_0x1b07bf(0xb2)](_0x1b07bf(0xab));_0x35d216[_0x24cb67]={'type':_0x1b07bf(0xb5),'url':_0xa2255a},config[_0x1b07bf(0xc8)]('mcpServers',_0x35d216);}export function removeMcpServer(_0x25be11){const _0x3ca1be=a5_0x40f58d,_0x144054=config[_0x3ca1be(0xb2)](_0x3ca1be(0xab));if(_0x144054[_0x25be11])return delete _0x144054[_0x25be11],config[_0x3ca1be(0xc8)]('mcpServers',_0x144054),!![];return![];}function a5_0x1e98(){const _0x1bf4c4=['12946qWioCe','3110472avouGA','mcpServers','USERPROFILE','tsx','uvx','computer-use.ts','windows-mcp','@modelcontextprotocol/server-filesystem','get','7BOOvmH','mcp-servers','streamable-http','cwd','parse','object','includes','.woozlit','7405386OfzHDT','readFileSync','dist','command','src','7720560KsGSyo','221405xdVQla','15587586ELhfBj','mcp.json','join','utf-8','36pTvlha','44kCtoIU','set','env','woozlit-cli','114XVilOJ','stdio','dirname','C:\x5cUsers','4100380dLNiPw','npx','.js','endsWith'];a5_0x1e98=function(){return _0x1bf4c4;};return a5_0x1e98();}export function clearMcpServers(){const _0x4f1cd0=a5_0x40f58d;config['set'](_0x4f1cd0(0xab),{});}export function getMcpServer(_0x465a9b){return getMcpServers()[_0x465a9b];}function loadMcpConfigFile(){const _0x560c50=a5_0x40f58d,_0x4b8e0d=[a5_0x97de45[_0x560c50(0xc4)](process[_0x560c50(0xb6)](),_0x560c50(0xc3)),a5_0x97de45[_0x560c50(0xc4)](process[_0x560c50(0xb6)](),'.woozlit',_0x560c50(0xc3)),a5_0x97de45[_0x560c50(0xc4)](process[_0x560c50(0xc9)]['HOME']||process[_0x560c50(0xc9)][_0x560c50(0xac)]||'',_0x560c50(0xba),_0x560c50(0xc3))];for(const _0x249e13 of _0x4b8e0d){try{if(a5_0x32ced7['existsSync'](_0x249e13)){const _0x57f016=a5_0x32ced7[_0x560c50(0xbc)](_0x249e13,_0x560c50(0xc5)),_0x5a2d31=JSON[_0x560c50(0xb7)](_0x57f016);if(_0x5a2d31[_0x560c50(0xab)]&&typeof _0x5a2d31[_0x560c50(0xab)]===_0x560c50(0xb8))return _0x5a2d31[_0x560c50(0xab)];}}catch{}}return{};}export function ensureDefaultServers(){const _0x2bbb4e=a5_0x40f58d,_0x358b98=config[_0x2bbb4e(0xb2)](_0x2bbb4e(0xab)),_0x535153=fileURLToPath(import.meta.url),_0x5c5ace=a5_0x97de45[_0x2bbb4e(0xa3)](_0x535153),_0xd5d8c8=_0x5c5ace[_0x2bbb4e(0xb9)](_0x2bbb4e(0xbd))||_0x535153[_0x2bbb4e(0xa8)](_0x2bbb4e(0xa7)),_0x168c50=_0xd5d8c8?a5_0x97de45['join'](_0x5c5ace,'..',_0x2bbb4e(0xb4),'computer-use.js'):a5_0x97de45[_0x2bbb4e(0xc4)](_0x5c5ace,'..','..',_0x2bbb4e(0xbf),_0x2bbb4e(0xb4),_0x2bbb4e(0xaf)),_0x376159=_0xd5d8c8?'node':_0x2bbb4e(0xad);_0x358b98['computer-use']={'type':_0x2bbb4e(0xa2),'command':_0x376159,'args':[_0x168c50],'env':{}},(!_0x358b98[_0x2bbb4e(0xb0)]||_0x358b98['windows-mcp'][_0x2bbb4e(0xbe)]===_0x2bbb4e(0xae))&&(_0x358b98[_0x2bbb4e(0xb0)]={'type':_0x2bbb4e(0xa2),'command':_0x2bbb4e(0xa6),'args':['-y',_0x2bbb4e(0xb1),_0x2bbb4e(0xa4)],'env':{}}),config[_0x2bbb4e(0xc8)](_0x2bbb4e(0xab),_0x358b98);}function a5_0x1809(_0x329c8d,_0xcb7ef2){_0x329c8d=_0x329c8d-0xa2;const _0x1e98ce=a5_0x1e98();let _0x180910=_0x1e98ce[_0x329c8d];return _0x180910;}export function getConfigFilePath(){return config['path'];}
1
+ function a5_0x570c(_0xb82668,_0x3e7a30){_0xb82668=_0xb82668-0x8e;const _0x45f7c6=a5_0x45f7();let _0x570cb2=_0x45f7c6[_0xb82668];return _0x570cb2;}(function(_0x14c531,_0x512987){const _0xbf3a20=a5_0x570c,_0x3511eb=_0x14c531();while(!![]){try{const _0xc3f845=parseInt(_0xbf3a20(0x90))/0x1+-parseInt(_0xbf3a20(0x8f))/0x2*(-parseInt(_0xbf3a20(0x9e))/0x3)+-parseInt(_0xbf3a20(0x97))/0x4*(parseInt(_0xbf3a20(0xa6))/0x5)+parseInt(_0xbf3a20(0xaf))/0x6*(parseInt(_0xbf3a20(0xb5))/0x7)+-parseInt(_0xbf3a20(0x99))/0x8+parseInt(_0xbf3a20(0xac))/0x9*(parseInt(_0xbf3a20(0x96))/0xa)+-parseInt(_0xbf3a20(0xb2))/0xb*(parseInt(_0xbf3a20(0xa8))/0xc);if(_0xc3f845===_0x512987)break;else _0x3511eb['push'](_0x3511eb['shift']());}catch(_0x4ffe1a){_0x3511eb['push'](_0x3511eb['shift']());}}}(a5_0x45f7,0x5710d));import a5_0x1d90f2 from'conf';import a5_0x436f4c from'path';import a5_0x51318c from'fs';import{fileURLToPath}from'url';function a5_0x45f7(){const _0x564478=['utf-8','dirname','2599630IzfQgY','129308wDfdcN','USERPROFILE','2532024NEovXP','set','computer-use.js','.js','get','68316JmAeFr','env','tsx','stdio','includes','windows-mcp','C:\x5cUsers','object','65QLJiYc','dist','24deJGAB','join','node','mcpServers','9fsapid','mcp.json','mcp-servers','1916802XHEZcN','.woozlit','endsWith','2668402MsJwcm','HOME','command','14wskrhR','cwd','26gEfStz','383606mCuZaz','path','@modelcontextprotocol/server-filesystem','computer-use'];a5_0x45f7=function(){return _0x564478;};return a5_0x45f7();}const config=new a5_0x1d90f2({'projectName':'woozlit-cli','defaults':{'mcpServers':{}}});export function getMcpServers(){const _0x560f41=a5_0x570c,_0x2c2fe0=config[_0x560f41(0x9d)](_0x560f41(0xab)),_0x266b32=loadMcpConfigFile();return{..._0x2c2fe0,..._0x266b32};}export function addMcpServer(_0x562bdc,_0x4d13df,_0xde87a=[],_0x408e65){const _0x9a6768=a5_0x570c,_0x11d8cb=config['get'](_0x9a6768(0xab));_0x11d8cb[_0x562bdc]={'type':_0x9a6768(0xa1),'command':_0x4d13df,'args':_0xde87a,'env':_0x408e65},config['set'](_0x9a6768(0xab),_0x11d8cb);}export function addMcpHttpServer(_0x264930,_0x5a4154){const _0x30be30=a5_0x570c,_0x3b6efe=config[_0x30be30(0x9d)]('mcpServers');_0x3b6efe[_0x264930]={'type':'streamable-http','url':_0x5a4154},config[_0x30be30(0x9a)](_0x30be30(0xab),_0x3b6efe);}export function removeMcpServer(_0x103887){const _0x192a4c=a5_0x570c,_0x25466b=config[_0x192a4c(0x9d)](_0x192a4c(0xab));if(_0x25466b[_0x103887])return delete _0x25466b[_0x103887],config['set'](_0x192a4c(0xab),_0x25466b),!![];return![];}export function clearMcpServers(){const _0x2b6cbb=a5_0x570c;config[_0x2b6cbb(0x9a)](_0x2b6cbb(0xab),{});}export function getMcpServer(_0x5959d7){return getMcpServers()[_0x5959d7];}function loadMcpConfigFile(){const _0x314a3d=a5_0x570c,_0x222140=[a5_0x436f4c['join'](process[_0x314a3d(0x8e)](),_0x314a3d(0xad)),a5_0x436f4c[_0x314a3d(0xa9)](process[_0x314a3d(0x8e)](),_0x314a3d(0xb0),_0x314a3d(0xad)),a5_0x436f4c[_0x314a3d(0xa9)](process[_0x314a3d(0x9f)][_0x314a3d(0xb3)]||process[_0x314a3d(0x9f)][_0x314a3d(0x98)]||'',_0x314a3d(0xb0),'mcp.json')];for(const _0x2b117f of _0x222140){try{if(a5_0x51318c['existsSync'](_0x2b117f)){const _0x5b1439=a5_0x51318c['readFileSync'](_0x2b117f,_0x314a3d(0x94)),_0x5eff47=JSON['parse'](_0x5b1439);if(_0x5eff47[_0x314a3d(0xab)]&&typeof _0x5eff47[_0x314a3d(0xab)]===_0x314a3d(0xa5))return _0x5eff47['mcpServers'];}}catch{}}return{};}export function ensureDefaultServers(){const _0x332334=a5_0x570c,_0x2fb183=config[_0x332334(0x9d)]('mcpServers'),_0x4d63cf=fileURLToPath(import.meta.url),_0x1251fb=a5_0x436f4c[_0x332334(0x95)](_0x4d63cf),_0x210bf5=_0x1251fb[_0x332334(0xa2)](_0x332334(0xa7))||_0x4d63cf[_0x332334(0xb1)](_0x332334(0x9c)),_0x55fe43=_0x210bf5?a5_0x436f4c['join'](_0x1251fb,'..',_0x332334(0xae),_0x332334(0x9b)):a5_0x436f4c[_0x332334(0xa9)](_0x1251fb,'..','..','src','mcp-servers','computer-use.ts'),_0x2cb99d=_0x210bf5?_0x332334(0xaa):_0x332334(0xa0);_0x2fb183[_0x332334(0x93)]={'type':_0x332334(0xa1),'command':_0x2cb99d,'args':[_0x55fe43],'env':{}},(!_0x2fb183['windows-mcp']||_0x2fb183[_0x332334(0xa3)][_0x332334(0xb4)]==='uvx')&&(_0x2fb183[_0x332334(0xa3)]={'type':'stdio','command':'npx','args':['-y',_0x332334(0x92),_0x332334(0xa4)],'env':{}}),config[_0x332334(0x9a)]('mcpServers',_0x2fb183);}export function getConfigFilePath(){const _0x4b7be2=a5_0x570c;return config[_0x4b7be2(0x91)];}
@@ -1 +1 @@
1
- const a6_0x9f23d5=a6_0x5577;function a6_0x5577(_0x515f5f,_0x2e294e){_0x515f5f=_0x515f5f-0xf3;const _0x404c9e=a6_0x404c();let _0x5577e3=_0x404c9e[_0x515f5f];return _0x5577e3;}(function(_0x1f9660,_0x24f897){const _0x280810=a6_0x5577,_0x58d2ac=_0x1f9660();while(!![]){try{const _0x3ef897=parseInt(_0x280810(0x116))/0x1+parseInt(_0x280810(0x108))/0x2+-parseInt(_0x280810(0x111))/0x3+parseInt(_0x280810(0xfa))/0x4+parseInt(_0x280810(0x113))/0x5+-parseInt(_0x280810(0x10b))/0x6*(parseInt(_0x280810(0xfd))/0x7)+parseInt(_0x280810(0xf9))/0x8;if(_0x3ef897===_0x24f897)break;else _0x58d2ac['push'](_0x58d2ac['shift']());}catch(_0x483bd2){_0x58d2ac['push'](_0x58d2ac['shift']());}}}(a6_0x404c,0x4ade3));function a6_0x404c(){const _0x237231=['deepseek/deepseek-chat','206808SzyQBw','Gemini\x203\x20Pro','Alibaba\x27s\x20largest','6OxkTuB','Llama\x204\x20Maverick','meta-llama/llama-3.3-70b-instruct:free','gemini-3-pro-preview','Latest\x20Gemini\x20with\x20deep\x20thinking','Xiaomi\x27s\x20fast\x20AI\x20model','1488522wlRHwT','Coding\x20specialist','2645835BQKmqf','Qwen3\x20Coder','Devstral\x20Small','297575fyydDE','mistralai/devstral-small','qwen/qwen3-235b-a22b:free','DeepSeek\x20V3','gemini-2.5-flash','Llama\x203.3\x2070B','NVIDIA\x20vision','Woozie','WOOZLIT_API_URL','MiMo\x20V2','DeepSeek\x27s\x20latest\x20V3','Meta\x27s\x20latest','DeepSeek\x20R1','qwen/qwen3-coder:free','deepseek/deepseek-r1','1953656sdZhFv','264052rLTzOm','Fast\x20and\x20capable\x20(Default)','meta-llama/llama-4-maverick','3062731cFBayD','mistralai/mistral-small-3.2-24b-instruct','Advanced\x20reasoning','moonshotai/kimi-k2','gemini-3.1-pro-preview','Most\x20powerful\x20Gemini','Meta\x27s\x20powerful\x20model','Developer-focused','https://woozlit.com','Gemini\x203.1\x20Pro'];a6_0x404c=function(){return _0x237231;};return a6_0x404c();}const API_URL=process['env'][a6_0x9f23d5(0x11e)]||a6_0x9f23d5(0x105),PROD_URL=a6_0x9f23d5(0x105);export function getApiUrl(){return API_URL;}export function getProdUrl(){return PROD_URL;}export function isProduction(){return API_URL===PROD_URL;}export const MODELS=[{'id':a6_0x9f23d5(0x11a),'name':a6_0x9f23d5(0x11d),'description':a6_0x9f23d5(0xfb),'xp':0x1},{'id':'gemini-3-flash-preview','name':'Gemini\x203\x20Flash','description':'Latest\x20Gemini\x203\x20model','xp':0x5},{'id':a6_0x9f23d5(0x10e),'name':a6_0x9f23d5(0x109),'description':a6_0x9f23d5(0x102),'xp':0x5},{'id':a6_0x9f23d5(0x101),'name':a6_0x9f23d5(0x106),'description':a6_0x9f23d5(0x10f),'xp':0x8},{'id':'xiaomi/mimo-v2-flash:free','name':a6_0x9f23d5(0xf3),'description':a6_0x9f23d5(0x110),'xp':0x1},{'id':a6_0x9f23d5(0x118),'name':'Qwen3\x20235B','description':a6_0x9f23d5(0x10a),'xp':0x2},{'id':a6_0x9f23d5(0xf7),'name':a6_0x9f23d5(0x114),'description':a6_0x9f23d5(0x112),'xp':0x2},{'id':a6_0x9f23d5(0x10d),'name':a6_0x9f23d5(0x11b),'description':a6_0x9f23d5(0x103),'xp':0x2},{'id':a6_0x9f23d5(0xfc),'name':a6_0x9f23d5(0x10c),'description':a6_0x9f23d5(0xf5),'xp':0x3},{'id':a6_0x9f23d5(0x117),'name':a6_0x9f23d5(0x115),'description':a6_0x9f23d5(0x104),'xp':0x2},{'id':a6_0x9f23d5(0xfe),'name':'Mistral\x20Small\x203.2','description':'Latest\x20Mistral','xp':0x2},{'id':'nvidia/nemotron-nano-12b-v2-vl:free','name':'Nemotron\x20Nano\x2012B','description':a6_0x9f23d5(0x11c),'xp':0x1},{'id':a6_0x9f23d5(0x100),'name':'Kimi\x20K2','description':'Reasoning\x20model','xp':0x3},{'id':a6_0x9f23d5(0x107),'name':a6_0x9f23d5(0x119),'description':a6_0x9f23d5(0xf4),'xp':0x2},{'id':a6_0x9f23d5(0xf8),'name':a6_0x9f23d5(0xf6),'description':a6_0x9f23d5(0xff),'xp':0x3}];export const DEFAULT_MODEL='gemini-2.5-flash';
1
+ const a6_0x470b01=a6_0x4a3d;function a6_0x4a3d(_0x24b758,_0xc4cf09){_0x24b758=_0x24b758-0x187;const _0x5c324b=a6_0x5c32();let _0x4a3dc1=_0x5c324b[_0x24b758];return _0x4a3dc1;}(function(_0x1651b5,_0x4ae72b){const _0x55116d=a6_0x4a3d,_0x53b2ee=_0x1651b5();while(!![]){try{const _0x2c4479=-parseInt(_0x55116d(0x1a2))/0x1*(-parseInt(_0x55116d(0x18c))/0x2)+parseInt(_0x55116d(0x189))/0x3+-parseInt(_0x55116d(0x18a))/0x4*(-parseInt(_0x55116d(0x1a0))/0x5)+-parseInt(_0x55116d(0x1af))/0x6*(-parseInt(_0x55116d(0x1b4))/0x7)+parseInt(_0x55116d(0x1a9))/0x8*(-parseInt(_0x55116d(0x199))/0x9)+parseInt(_0x55116d(0x18e))/0xa+-parseInt(_0x55116d(0x192))/0xb*(parseInt(_0x55116d(0x1b0))/0xc);if(_0x2c4479===_0x4ae72b)break;else _0x53b2ee['push'](_0x53b2ee['shift']());}catch(_0x26e6cc){_0x53b2ee['push'](_0x53b2ee['shift']());}}}(a6_0x5c32,0xda282));const API_URL=process[a6_0x470b01(0x1a4)][a6_0x470b01(0x1a6)]||a6_0x470b01(0x1aa),PROD_URL='https://woozlit.com';function a6_0x5c32(){const _0xb886ec=['gemini-2.5-flash','Latest\x20Gemini\x20with\x20deep\x20thinking','Kimi\x20K2','150eVURsF','NVIDIA\x20vision','68RQYPLE','Qwen3\x20Coder','env','gemini-3-flash-preview','WOOZLIT_API_URL','Developer-focused','Qwen3\x20235B','48KcBOJj','https://woozlit.com','Fast\x20and\x20capable\x20(Default)','DeepSeek\x20V3','Meta\x27s\x20latest','mistralai/mistral-small-3.2-24b-instruct','2748666QOMkQP','1368vvptvn','Meta\x27s\x20powerful\x20model','qwen/qwen3-coder:free','Woozie','7GyTcdK','deepseek/deepseek-r1','deepseek/deepseek-chat','nvidia/nemotron-nano-12b-v2-vl:free','Advanced\x20reasoning','MiMo\x20V2','mistralai/devstral-small','Latest\x20Gemini\x203\x20model','68049YavGoB','95892zDaUbx','Most\x20powerful\x20Gemini','49612deSlSX','qwen/qwen3-235b-a22b:free','13146560DnWdNC','Llama\x204\x20Maverick','Devstral\x20Small','DeepSeek\x20R1','286924hJfCmT','xiaomi/mimo-v2-flash:free','Alibaba\x27s\x20largest','Xiaomi\x27s\x20fast\x20AI\x20model','moonshotai/kimi-k2','DeepSeek\x27s\x20latest\x20V3','Coding\x20specialist','501453OfCCDU','Llama\x203.3\x2070B','Gemini\x203\x20Flash','gemini-3.1-pro-preview'];a6_0x5c32=function(){return _0xb886ec;};return a6_0x5c32();}export function getApiUrl(){return API_URL;}export function getProdUrl(){return PROD_URL;}export function isProduction(){return API_URL===PROD_URL;}export const MODELS=[{'id':'gemini-2.5-flash','name':a6_0x470b01(0x1b3),'description':a6_0x470b01(0x1ab),'xp':0x1},{'id':a6_0x470b01(0x1a5),'name':a6_0x470b01(0x19b),'description':a6_0x470b01(0x188),'xp':0x5},{'id':'gemini-3-pro-preview','name':'Gemini\x203\x20Pro','description':a6_0x470b01(0x18b),'xp':0x5},{'id':a6_0x470b01(0x19c),'name':'Gemini\x203.1\x20Pro','description':a6_0x470b01(0x19e),'xp':0x8},{'id':a6_0x470b01(0x193),'name':a6_0x470b01(0x1b9),'description':a6_0x470b01(0x195),'xp':0x1},{'id':a6_0x470b01(0x18d),'name':a6_0x470b01(0x1a8),'description':a6_0x470b01(0x194),'xp':0x2},{'id':a6_0x470b01(0x1b2),'name':a6_0x470b01(0x1a3),'description':a6_0x470b01(0x198),'xp':0x2},{'id':'meta-llama/llama-3.3-70b-instruct:free','name':a6_0x470b01(0x19a),'description':a6_0x470b01(0x1b1),'xp':0x2},{'id':'meta-llama/llama-4-maverick','name':a6_0x470b01(0x18f),'description':a6_0x470b01(0x1ad),'xp':0x3},{'id':a6_0x470b01(0x187),'name':a6_0x470b01(0x190),'description':a6_0x470b01(0x1a7),'xp':0x2},{'id':a6_0x470b01(0x1ae),'name':'Mistral\x20Small\x203.2','description':'Latest\x20Mistral','xp':0x2},{'id':a6_0x470b01(0x1b7),'name':'Nemotron\x20Nano\x2012B','description':a6_0x470b01(0x1a1),'xp':0x1},{'id':a6_0x470b01(0x196),'name':a6_0x470b01(0x19f),'description':'Reasoning\x20model','xp':0x3},{'id':a6_0x470b01(0x1b6),'name':a6_0x470b01(0x1ac),'description':a6_0x470b01(0x197),'xp':0x2},{'id':a6_0x470b01(0x1b5),'name':a6_0x470b01(0x191),'description':a6_0x470b01(0x1b8),'xp':0x3}];export const DEFAULT_MODEL=a6_0x470b01(0x19d);