colana 1.0.0-beta.84 → 1.0.0-beta.87

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/bin/admin.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const a0_0x551569=a0_0x55d7;(function(_0xf7bc23,_0x48688b){const _0x4c8b63=a0_0x55d7,_0x3ae8ab=_0xf7bc23();while(!![]){try{const _0x36b0ed=-parseInt(_0x4c8b63(0x121))/0x1*(-parseInt(_0x4c8b63(0x139))/0x2)+parseInt(_0x4c8b63(0x226))/0x3*(parseInt(_0x4c8b63(0x1b2))/0x4)+parseInt(_0x4c8b63(0x25c))/0x5+parseInt(_0x4c8b63(0x186))/0x6+-parseInt(_0x4c8b63(0x189))/0x7+parseInt(_0x4c8b63(0x1d9))/0x8+-parseInt(_0x4c8b63(0x1ba))/0x9;if(_0x36b0ed===_0x48688b)break;else _0x3ae8ab['push'](_0x3ae8ab['shift']());}catch(_0x2b58d6){_0x3ae8ab['push'](_0x3ae8ab['shift']());}}}(a0_0x41a3,0x7afd5));var __defProp=Object['defineProperty'],__getOwnPropNames=Object['getOwnPropertyNames'],__esm=(_0x5e5ef4,_0x5e569e)=>function _0xde9280(){const _0x2622c1=a0_0x55d7,_0x199e1b={'pnucQ':function(_0x7cd229,_0x3f1b17){return _0x7cd229(_0x3f1b17);}};return _0x5e5ef4&&(_0x5e569e=(0x0,_0x5e5ef4[_0x199e1b[_0x2622c1(0x212)](__getOwnPropNames,_0x5e5ef4)[0x0]])(_0x5e5ef4=0x0)),_0x5e569e;},__export=(_0x19e665,_0x228046)=>{const _0xe209b2={'rfroe':function(_0x2390fa,_0x4799d3,_0xd1d1f0,_0x329dba){return _0x2390fa(_0x4799d3,_0xd1d1f0,_0x329dba);}};for(var _0x362011 in _0x228046)_0xe209b2['rfroe'](__defProp,_0x19e665,_0x362011,{'get':_0x228046[_0x362011],'enumerable':!![]});};import a0_0x1b047d from'crypto';import a0_0x1ee087 from'fs';import a0_0x4276dc from'os';import a0_0x5eac4c from'path';import{fileURLToPath}from'url';function envInt(_0x19e1b6,_0x1b9aef){const _0x27b76b=parseInt(_0x19e1b6,0xa);return Number['isNaN'](_0x27b76b)?_0x1b9aef:_0x27b76b;}function resolveEncryptionKey(){const _0x3895c4=a0_0x55d7,_0x126ada={'QBLgL':'utf-8'};if(process['env']['ENCRYPTION_KEY'])return process['env'][_0x3895c4(0x20b)];const _0x17d8f1=a0_0x5eac4c['join'](dataDir,KEY_FILENAME),_0x255591=a0_0x5eac4c['join'](dataDir,'dashboard.db');if(a0_0x1ee087['existsSync'](_0x17d8f1))try{const _0x4cdf57=a0_0x1ee087[_0x3895c4(0x24e)](_0x17d8f1,_0x126ada['QBLgL']),_0x3c7796=_0x4cdf57['split']('\x0a')[_0x3895c4(0x257)](_0x4af9a2=>!_0x4af9a2['startsWith']('#'))[_0x3895c4(0x17f)]('')[_0x3895c4(0x254)]();if(_0x3c7796['length']>=0x20)return _0x3c7796;console['error'](_0x3895c4(0x19b)+_0x3c7796[_0x3895c4(0x24b)]+'\x20chars).\x20Regenerating.');}catch(_0x51a42a){console['error'](_0x3895c4(0x190)+_0x51a42a[_0x3895c4(0x100)]);}if(!a0_0x1ee087[_0x3895c4(0x221)](_0x255591))return generateAndWriteKeyFile(_0x17d8f1);return LEGACY_DEFAULT_KEY;}function generateAndWriteKeyFile(_0xac77f4){const _0x306ff4=a0_0x55d7,_0x2edc42={'vbxlH':_0x306ff4(0x14e),'zGRAx':'#\x20Without\x20this\x20key,\x20all\x20encrypted\x20settings\x20(API\x20keys,\x20tokens)\x20are\x20unrecoverable.','JHucu':'utf-8','VUjDH':_0x306ff4(0x217)},_0x4b0590=a0_0x1b047d['randomBytes'](0x20)['toString'](_0x2edc42['vbxlH']);try{const _0x5706b6=a0_0x5eac4c[_0x306ff4(0x12b)](_0xac77f4);if(!a0_0x1ee087['existsSync'](_0x5706b6))a0_0x1ee087['mkdirSync'](_0x5706b6,{'recursive':!![]});const _0x1a044b=['#\x20Auto-generated\x20by\x20Colana.\x20Do\x20not\x20share\x20or\x20delete.',_0x2edc42['zGRAx'],_0x306ff4(0x1ec),_0x4b0590,''][_0x306ff4(0x17f)]('\x0a');a0_0x1ee087['writeFileSync'](_0xac77f4,_0x1a044b,{'encoding':_0x2edc42['JHucu'],'mode':0x180}),console['log'](_0x2edc42[_0x306ff4(0x179)]);}catch(_0x5ac63d){console['error']('[security]\x20WARNING:\x20Could\x20not\x20write\x20encryption\x20key\x20file:\x20'+_0x5ac63d[_0x306ff4(0x100)]),console['error']('[security]\x20Encryption\x20key\x20is\x20in-memory\x20only.\x20Restart\x20will\x20generate\x20a\x20new\x20key.');}return _0x4b0590;}function getReleaseChannel(){const _0x2c1f1d=a0_0x55d7;try{const _0x329926=a0_0x5eac4c[_0x2c1f1d(0x17f)](__dirname,'..',_0x2c1f1d(0x1e6)),_0x27d1da=JSON['parse'](a0_0x1ee087[_0x2c1f1d(0x24e)](_0x329926,'utf-8')),_0x2f321c=_0x27d1da['version']||'';if(_0x2f321c['includes']('-beta'))return'beta';}catch{}return'stable';}var __dirname,dataDir,LEGACY_DEFAULT_KEY,KEY_FILENAME,config,config_default,init_config=__esm({'server/config.js'(){const _0x4daf96=a0_0x55d7,_0x10f05a={'EzMAb':'sha256','VQPDe':_0x4daf96(0x14e),'pPOKO':function(_0x5b7960,_0x285556){return _0x5b7960(_0x285556);},'XjlbS':_0x4daf96(0x15c),'olxYj':'claude','NsSBO':'@anthropic-ai/claude-code','obavk':_0x4daf96(0x210),'RQkKX':_0x4daf96(0x225),'HEqMI':_0x4daf96(0x19c),'FcRYq':_0x4daf96(0x132),'NoDqv':'npm','OqvrC':_0x4daf96(0x143),'hbTHj':_0x4daf96(0x14c),'MmoUN':_0x4daf96(0x25d),'bqchw':'--resume','dcHkO':'npm\x20install\x20-g\x20@google/gemini-cli','asTQJ':_0x4daf96(0x11a),'CdBvU':'copilot','FkQvU':'--restore-chat-history','yfBQt':'pipx\x20install\x20aider-chat','dtOQx':_0x4daf96(0x197),'kXLcX':'python3','UySSp':'pipx','qJKdX':'LLM\x20API\x20key\x20required','IPArW':_0x4daf96(0x123),'QtStx':_0x4daf96(0x1e4),'PCLYf':'npm\x20install\x20-g\x20openclaw','lVLQe':'User-configured\x20model\x20keys\x20(Anthropic,\x20OpenAI,\x20Ollama,\x20etc.)','mddiW':'https://colana.ai','LGvIu':function(_0x31a59f,_0x1ab806){return _0x31a59f*_0x1ab806;},'uzzSt':function(_0xad954,_0x50a9b9){return _0xad954*_0x50a9b9;},'szDbX':function(_0x472397,_0x2e9156,_0x7c3958){return _0x472397(_0x2e9156,_0x7c3958);},'ogoBD':'127.0.0.1','aJVYT':_0x4daf96(0x1fa),'eMUmo':function(_0x31ed0d,_0x53dc38,_0x123740){return _0x31ed0d(_0x53dc38,_0x123740);},'dfcKU':function(_0x350478,_0x8abf9f,_0x5d498e){return _0x350478(_0x8abf9f,_0x5d498e);},'IGbPc':function(_0x3f8849,_0x198078){return _0x3f8849*_0x198078;},'amZBi':function(_0x275383,_0x6a869e){return _0x275383*_0x6a869e;},'hVbKL':function(_0x2dc5a2,_0x540f9c,_0x4585c5){return _0x2dc5a2(_0x540f9c,_0x4585c5);},'xjoRo':_0x4daf96(0x173),'gWzXF':'Bash','wBOGU':_0x4daf96(0x1bb),'NfHVk':'WebFetch','BPUCW':_0x4daf96(0x15f),'VvIFr':function(_0x252968,_0x39313d){return _0x252968*_0x39313d;},'rKpPZ':_0x4daf96(0x1f7),'ejzeH':'--include-partial-messages','TykHI':'--verbose','hOfpG':_0x4daf96(0x159),'obsSk':_0x4daf96(0x20d),'RriKE':_0x4daf96(0x237),'TsMsA':'acceptEdits','hgalo':_0x4daf96(0x150),'hcdKf':_0x4daf96(0x101),'ZnisM':'Grep','YDxTu':function(_0x37d508){return _0x37d508();}};__dirname=a0_0x5eac4c['dirname'](_0x10f05a['pPOKO'](fileURLToPath,import.meta.url)),dataDir=process[_0x4daf96(0x117)][_0x4daf96(0x1d8)]?a0_0x5eac4c[_0x4daf96(0x264)](process[_0x4daf96(0x117)]['DATA_DIR']):a0_0x5eac4c['join'](__dirname,'..',_0x4daf96(0x16c)),LEGACY_DEFAULT_KEY=_0x4daf96(0x120),KEY_FILENAME=_0x10f05a['XjlbS'],config={'providers':{'claude':{'label':'Claude\x20Code','binary':_0x10f05a['olxYj'],'npmPackage':_0x10f05a['NsSBO'],'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x4daf96(0x1c8),'resumeFlag':'--resume','installCmd':_0x4daf96(0x109),'runtime':'npm','authNote':_0x10f05a['obavk']},'codex':{'label':_0x10f05a[_0x4daf96(0x141)],'binary':_0x10f05a[_0x4daf96(0x138)],'npmPackage':'@openai/codex','models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x10f05a[_0x4daf96(0x124)],'resumeSubcmd':_0x4daf96(0x154),'installCmd':_0x4daf96(0x1b8),'runtime':_0x10f05a[_0x4daf96(0x103)],'authNote':_0x4daf96(0x14a)},'gemini':{'label':_0x10f05a[_0x4daf96(0x25f)],'binary':_0x10f05a['hbTHj'],'npmPackage':_0x10f05a[_0x4daf96(0x1de)],'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':'flag','resumeFlag':_0x10f05a[_0x4daf96(0x145)],'installCmd':_0x10f05a[_0x4daf96(0x152)],'runtime':_0x4daf96(0x165),'authNote':_0x4daf96(0x1eb),'recommended':!![]},'copilot':{'label':_0x10f05a[_0x4daf96(0x155)],'binary':_0x4daf96(0x112),'fallbackBinary':'gh','fallbackBinaryArgs':[_0x10f05a['CdBvU']],'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x4daf96(0x1c8),'resumeFlag':_0x10f05a['bqchw'],'installCmd':'gh\x20copilot\x20--version','installFallbackCmd':_0x4daf96(0x222),'runtime':_0x10f05a['NoDqv'],'authNote':_0x4daf96(0x1c2)},'aider':{'label':_0x4daf96(0x105),'binary':_0x4daf96(0x1c3),'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x4daf96(0x1c8),'resumeFlag':_0x10f05a[_0x4daf96(0x1f0)],'noSessionId':!![],'installCmd':_0x10f05a[_0x4daf96(0x110)],'installFallbackCmd':_0x10f05a['dtOQx'],'installPrereq':_0x10f05a[_0x4daf96(0x1ed)],'runtime':_0x10f05a['UySSp'],'authNote':_0x10f05a['qJKdX']},'openclaw':{'label':_0x10f05a['IPArW'],'binary':_0x10f05a[_0x4daf96(0x114)],'models':[],'supportsResume':![],'supportsPty':!![],'supportsInteractive':!![],'supportsHeadless':![],'installCmd':_0x10f05a[_0x4daf96(0x1da)],'runtime':_0x4daf96(0x165),'authNote':_0x10f05a['lVLQe'],'gatewayPort':0x4965,'isPersonal':!![]}},'defaultModel':process['env'][_0x4daf96(0x24f)]||null,'polar':{'organizationId':process['env']['POLAR_ORG_ID']||'','accessToken':process[_0x4daf96(0x117)]['POLAR_ACCESS_TOKEN']||'','productId':process[_0x4daf96(0x117)]['POLAR_PRODUCT_ID']||'','checkoutUrl':process['env'][_0x4daf96(0x196)]||_0x4daf96(0x20c),'customerPortalUrl':process[_0x4daf96(0x117)][_0x4daf96(0x1a4)]||'','webhookSecret':process[_0x4daf96(0x117)][_0x4daf96(0x256)]||'','apiUrl':process[_0x4daf96(0x117)]['POLAR_API_URL']||_0x4daf96(0x25e),'blueprintCloudUrl':process[_0x4daf96(0x117)]['BLUEPRINT_CLOUD_URL']||_0x10f05a['mddiW'],'cacheTtlMs':envInt(process[_0x4daf96(0x117)][_0x4daf96(0x13a)],0x7*0x18*0x3c*0x3c*0x3e8),'revalidationIntervalMs':envInt(process[_0x4daf96(0x117)]['LICENSE_REVALIDATION_INTERVAL_MS'],_0x10f05a[_0x4daf96(0x26a)](_0x10f05a[_0x4daf96(0x209)](0x6,0x3c),0x3c)*0x3e8),'staffKeys':(process['env']['STAFF_KEYS']||'')['split'](',')['map'](_0x437ca8=>_0x437ca8['trim']())[_0x4daf96(0x257)](Boolean),'adminKeys':(process['env']['ADMIN_KEYS']||'')[_0x4daf96(0x137)](',')['map'](_0x578cd0=>_0x578cd0['trim']())['filter'](Boolean)},'freeMaxSessions':_0x10f05a['szDbX'](envInt,process['env'][_0x4daf96(0x267)],0x2),'dataDir':dataDir,'dbFilename':process['env']['DB_FILENAME']||'dashboard.db','homePath':a0_0x4276dc['homedir'](),'startPort':_0x10f05a['szDbX'](envInt,process['env']['START_PORT'],0x2694),'maxPortAttempts':envInt(process[_0x4daf96(0x117)]['MAX_PORT_ATTEMPTS'],0x64),'bindAddress':process['env']['BIND_ADDRESS']||_0x10f05a['ogoBD'],'encryptionKey':resolveEncryptionKey(),'encryptionKeyIsLegacyDefault':![],'defaultEditorCommand':_0x10f05a['aJVYT'],'permissionTimeoutMs':envInt(process[_0x4daf96(0x117)][_0x4daf96(0x1e7)],0x1d4c0),'permissionClientMs':envInt(process['env']['PERMISSION_CLIENT_MS'],0x249f0),'agentGracePeriodMs':envInt(process[_0x4daf96(0x117)][_0x4daf96(0x1c6)],0x1388),'shutdownTimeoutMs':envInt(process[_0x4daf96(0x117)]['SHUTDOWN_TIMEOUT_MS'],0x2710),'defaultLogLimit':envInt(process['env'][_0x4daf96(0x10e)],0x3e8),'defaultSessionLimit':envInt(process[_0x4daf96(0x117)]['DEFAULT_SESSION_LIMIT'],0x14),'gitDiffMaxBuffer':_0x10f05a[_0x4daf96(0x1df)](envInt,process[_0x4daf96(0x117)]['GIT_DIFF_MAX_BUFFER'],_0x10f05a['uzzSt'](0xa*0x400,0x400)),'toolResultPreviewLen':envInt(process['env']['TOOL_RESULT_PREVIEW_LEN'],0x1f4),'maxResumableSessions':_0x10f05a['dfcKU'](envInt,process['env']['MAX_RESUMABLE_SESSIONS'],0x5),'updateCheckIntervalMs':envInt(process['env'][_0x4daf96(0x163)],_0x10f05a[_0x4daf96(0x209)](0x6,0x3c)*0x3c*0x3e8),'logRetentionDays':envInt(process['env'][_0x4daf96(0x23c)],0x0),'logRetentionIntervalMs':_0x10f05a[_0x4daf96(0x20f)](envInt,process['env']['LOG_RETENTION_INTERVAL_MS'],_0x10f05a['IGbPc'](_0x10f05a['amZBi'](0x18,0x3c),0x3c)*0x3e8),'logRetentionBatchSize':_0x10f05a['hVbKL'](envInt,process['env'][_0x4daf96(0x240)],0x7d0),'logRetentionMaxBatches':envInt(process[_0x4daf96(0x117)]['LOG_RETENTION_MAX_BATCHES'],0xa),'logArchiveMode':(process['env']['LOG_ARCHIVE_MODE']||'db')[_0x4daf96(0x13d)](),'allowedTools':[_0x4daf96(0x178),'Edit',_0x10f05a[_0x4daf96(0x1d5)],'Glob','Grep',_0x10f05a['gWzXF'],_0x10f05a[_0x4daf96(0x127)],_0x10f05a['NfHVk']],'maxTurnsOptions':[0x0,0xa,0x19,0x32,0x64],'fontSizes':[0xc,0xe,0x10,0x12],'ptyBufferSize':envInt(process[_0x4daf96(0x117)][_0x4daf96(0x125)],0x100*0x400),'ptyDefaultCols':_0x10f05a[_0x4daf96(0x1df)](envInt,process[_0x4daf96(0x117)][_0x4daf96(0x164)],0x78),'ptyDefaultRows':envInt(process['env']['PTY_DEFAULT_ROWS'],0x1e),'worktreesDir':a0_0x5eac4c[_0x4daf96(0x17f)](dataDir,_0x10f05a['BPUCW']),'worktreeMaxPerProject':0xa,'worktreeStaleAfterDays':0x4,'worktreeCleanupIntervalMs':_0x10f05a[_0x4daf96(0x21b)](0x18,0x3c)*0x3c*0x3e8,'worktreeGitTimeoutMs':0x7530,'worktreeGitQuickTimeoutMs':0x1388,'cliFlags':['--print','--output-format','stream-json',_0x10f05a[_0x4daf96(0x251)],'stream-json',_0x10f05a[_0x4daf96(0x1bd)],_0x10f05a['TykHI']],'permissionToolName':'mcp__dashboard_permissions__permission_prompt','permissionModes':[_0x10f05a[_0x4daf96(0x10c)],'acceptEdits',_0x10f05a[_0x4daf96(0x184)],_0x10f05a['RriKE'],_0x4daf96(0x1fd),'delegate'],'contextWindows':{'opus':0x30d40,'sonnet':0x30d40,'haiku':0x30d40,'claude-opus-4-6-20260214':0x30d40,'claude-opus-4-5-20251101':0x30d40,'claude-sonnet-4-5-20250929':0x30d40,'claude-sonnet-4-20250514':0x30d40,'claude-3-5-sonnet-20241022':0x30d40,'claude-3-5-haiku-20241022':0x30d40,'default':0x30d40},'client':{'wsReconnectBaseMs':0x3e8,'wsReconnectMaxMs':0x7530,'toastDurationMs':0xfa0,'toolOutputTruncation':0x12c,'taskPreviewLen':0x23,'terminalTaskLen':0x32,'popoutWidth':0x320,'popoutHeight':0x258,'maxResumableSessions':envInt(process['env'][_0x4daf96(0x19a)],0x5),'permissionModes':[_0x10f05a['hOfpG'],_0x10f05a['TsMsA'],_0x10f05a[_0x4daf96(0x184)],_0x4daf96(0x237),'dontAsk',_0x10f05a['hgalo']],'defaultContextWindow':0x30d40,'contextWindows':{'opus':0x30d40,'sonnet':0x30d40,'haiku':0x30d40,'claude-opus-4-6-20260214':0x30d40,'claude-opus-4-5-20251101':0x30d40,'claude-sonnet-4-5-20250929':0x30d40,'claude-sonnet-4-20250514':0x30d40,'claude-3-5-sonnet-20241022':0x30d40,'claude-3-5-haiku-20241022':0x30d40,'default':0x30d40},'allowedTools':[_0x4daf96(0x178),_0x10f05a['hcdKf'],_0x10f05a[_0x4daf96(0x1d5)],_0x4daf96(0x181),_0x10f05a[_0x4daf96(0x17d)],'Bash',_0x10f05a[_0x4daf96(0x127)],_0x10f05a['NfHVk']],'maxTurnsOptions':[0x0,0xa,0x19,0x32,0x64],'fontSizes':[0xc,0xe,0x10,0x12]}},config['encryptionKeyIsLegacyDefault']=config[_0x4daf96(0x243)]===LEGACY_DEFAULT_KEY,config[_0x4daf96(0x1c7)]=LEGACY_DEFAULT_KEY,config[_0x4daf96(0x252)]=KEY_FILENAME,config[_0x4daf96(0x266)]=function(){const _0xab21bb=_0x4daf96;return a0_0x1b047d[_0xab21bb(0x1ca)](_0x10f05a[_0xab21bb(0x1c1)])['update'](_0xab21bb(0x162)+config['encryptionKey'])[_0xab21bb(0x18a)](_0x10f05a[_0xab21bb(0x12f)])['slice'](0x0,0x20);},config['releaseChannel']=_0x10f05a['YDxTu'](getReleaseChannel),config['client'][_0x4daf96(0x18d)]=Object[_0x4daf96(0x160)](Object[_0x4daf96(0x218)](config['providers'])[_0x4daf96(0x153)](([_0x33fb4e,_0xc43328])=>[_0x33fb4e,{'label':_0xc43328['label'],'models':_0xc43328[_0x4daf96(0x1a2)],'supportsResume':_0xc43328[_0x4daf96(0x17e)],'supportsPty':_0xc43328['supportsPty'],'supportsInteractive':_0xc43328['supportsInteractive'],'supportsHeadless':_0xc43328[_0x4daf96(0x18f)]!==![],'runtime':_0xc43328[_0x4daf96(0x1b1)],'authNote':_0xc43328[_0x4daf96(0x1dc)],'recommended':_0xc43328['recommended']||![],'isPersonal':_0xc43328['isPersonal']||![]}])),config_default=config;}}),db_exports={};__export(db_exports,{'checkDbIntegrity':()=>checkDbIntegrity,'closeDb':()=>closeDb,'default':()=>db_default,'getDb':()=>getDb,'getSchemaVersion':()=>getSchemaVersion,'queryAll':()=>queryAll,'queryOne':()=>queryOne,'run':()=>run,'runImmediate':()=>runImmediate,'save':()=>save});import a0_0x4a7f47 from'sql.js';import a0_0x15b81d from'path';import a0_0x2567aa from'fs';function a0_0x41a3(){const _0x3ca2f6=['flag','push','createHash','nOWec','exec','Key\x20generation\x20returned\x20an\x20unexpected\x20response.','\x20\x20To\x20add/remove\x20keys,\x20update\x20the\x20STAFF_KEYS\x20or\x20ADMIN_KEYS\x20environment\x20variable.\x0a','YjhjF','IMPORTANT:\x20Copy\x20this\x20key\x20now.\x20It\x20cannot\x20be\x20retrieved\x20later.','heading','ID:','\x0a\x20\x20\x20\x20--\x20Sessions\x20table\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20sessions\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20claude_session_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20task\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27starting\x27,\x0a\x20\x20\x20\x20\x20\x20model\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20started_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20ended_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20parent_session_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE,\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(parent_session_id)\x20REFERENCES\x20sessions(id)\x0a\x20\x20\x20\x20)\x0a\x20\x20','Usage:','xjoRo','allowed_tools','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_archive_session_id\x20ON\x20logs_archive(session_id)','DATA_DIR','4770400nHrUfz','PCLYf','fts5','authNote','fts4','MmoUN','eMUmo','qbzgb','update','[db]\x20Database\x20may\x20be\x20in\x20an\x20inconsistent\x20state.\x20Contact\x20support.','OwELh','openclaw','Database\x20not\x20initialized.\x20Call\x20initializeDatabase()\x20first.','package.json','PERMISSION_TIMEOUT_MS','kgtAD','colana\x20admin\x20staff-keys','\x20\x20\x20\x20\x20\x20\x20\x20Revoke\x20a\x20DB-stored\x20license\x20key\x0a\x0a\x20\x20','Free\x20or\x20paid\x20Google\x20account','#\x20Back\x20up\x20this\x20file\x20alongside\x20your\x20database.','kXLcX','JdHWU','\x0a\x20\x20\x20\x20','FkQvU','catch','\x20\x20\x20\x20','qBTTC','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_audit_log_created\x20ON\x20audit_log(created_at)','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Filter\x20by\x20type\x0a\x20\x20\x20\x20\x20\x20','error','--input-format','limit','\x20has\x20been\x20revoked.\x0a','code','wbxZk','UPDATE\x20sessions\x20SET\x20provider_session_id\x20=\x20claude_session_id\x20WHERE\x20provider\x20=\x20\x27claude\x27\x20AND\x20claude_session_id\x20IS\x20NOT\x20NULL\x20AND\x20provider_session_id\x20IS\x20NULL','dontAsk','no\x20such\x20module:\x20fts5','\x0a\x20\x20\x20\x20--\x20Settings\x20table\x20(key-value\x20store)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20settings\x20(\x0a\x20\x20\x20\x20\x20\x20key\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20value\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20','col_','OiBZZ','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_project_blueprints_project\x20ON\x20project_blueprints(project_id)','pigLJ','Invalid\x20key\x20type:\x20','\x1b[33m','zuVUW','LwLWF','ERROR:\x20--name\x20is\x20required.','uzzSt','Database','ENCRYPTION_KEY','https://buy.polar.sh/colana','plan','staff-keys','szDbX','Anthropic\x20subscription\x20or\x20API\x20key','DoScg','pnucQ','getTime','FQcuH','zVWHk','exit','[security]\x20Generated\x20new\x20encryption\x20key\x20file.','entries','LCtqq','timeout','VvIFr','gwhag','Mhnxc','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20isolation_mode\x20TEXT\x20DEFAULT\x20\x27local\x27','FORCE_COLOR','SELECT\x20COUNT(*)\x20as\x20cnt\x20FROM\x20schema_version','existsSync','gh\x20extension\x20install\x20github/gh-copilot','stdout','OFDPH','Codex\x20CLI','3162BUOHpv','Total:\x20','log','qbTIT','/api/admin/keys/','0|1|2|5|4|3','Database\x20initialized\x20at:','(Created\x20via\x20running\x20server)','SELECT\x20id,\x20name,\x20type,\x20status,\x20email,\x20expires_at,\x20created_at,\x20revoked_at\x20FROM\x20license_keys\x20WHERE\x201=1','iJYfL','NWzJo','type','function','email','set','json','\x20\x20\x20\x20\x20','bypassPermissions','font_size','includes','\x0a\x20\x20No\x20keys\x20found.\x0a','uiJvc','LOG_RETENTION_DAYS','MlvSJ','\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_ai\x20AFTER\x20INSERT\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(new.id,\x20new.content,\x20new.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20','isTTY','LOG_RETENTION_BATCH_SIZE','toString','\x0a\x20\x20\x20\x20--\x20Usage\x20table\x20(token/cost\x20tracking)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20usage\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cost_estimate\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20recorded_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','encryptionKey','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20List\x20DB-stored\x20license\x20keys\x0a\x20\x20\x20\x20\x20\x20','aEFdN','dataDir','\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_au\x20AFTER\x20UPDATE\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(logs_fts,\x20rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(\x27delete\x27,\x20old.id,\x20old.content,\x20old.session_id);\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(new.id,\x20new.content,\x20new.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20','revoked_at','Expires','keys','length','aapwR','info','readFileSync','DEFAULT_MODEL','id,name,type,status,email,expires_at,created_at,revoked_at','rKpPZ','KEY_FILENAME','\x0a\x20\x20','trim','\x0a\x20\x20\x20\x20--\x20Logs\x20table\x20(stores\x20streaming\x20output)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20timestamp\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','POLAR_WEBHOOK_SECRET','filter','expiry','argv','colana\x20admin\x20revoke-key\x20<id>','then','3774420fiVNDD','@google/gemini-cli','https://api.polar.sh/v1','OqvrC','\x1b[1;37m','lana','PRAGMA\x20integrity_check','mkdirSync','resolve','vCmtt','deriveGogKeyringPassword','FREE_MAX_SESSIONS','expires_at','Admin\x20Keys:','LGvIu','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_path\x20TEXT','colana\x20admin\x20create-key','message','Edit','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Generate\x20a\x20new\x20license\x20key\x20(stored\x20in\x20DB)\x0a\x20\x20\x20\x20\x20\x20','NoDqv','slice','Aider','pJUUj','\x1b[36m','fJDme','npm\x20install\x20-g\x20@anthropic-ai/claude-code','dnXug','name','hOfpG','\x0a\x0a\x20\x20','DEFAULT_LOG_LIMIT','version','yfBQt','ALTER\x20TABLE\x20projects\x20ADD\x20COLUMN\x20permission_preset\x20TEXT\x20DEFAULT\x20\x27default\x27','copilot','/api/admin/keys','QtStx','\x1b[37m','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_merged\x20INTEGER\x20DEFAULT\x200','env','IfXKL','KGCYp','Copilot\x20CLI','pJimA','jLrvk','vinII','success','http://127.0.0.1:','colana-default-encryption-key32','217bUbcUS','STAFF_KEYS','OpenClaw','FcRYq','PTY_BUFFER_SIZE','Obkmv','wBOGU','\x1b[90m','staff','\x0a\x20\x20\x20\x20CREATE\x20VIRTUAL\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs_fts\x0a\x20\x20\x20\x20USING\x20','dirname','\x20\x20(STAFF_KEYS)','RNmZW','.\x20Must\x20be\x20one\x20of:\x20','VQPDe','(\x0a\x20\x20\x20\x20\x20\x20content,\x0a\x20\x20\x20\x20\x20\x20session_id\x20UNINDEXED,\x0a\x20\x20\x20\x20\x20\x20content=\x27logs\x27\x0a\x20\x20\x20\x20)\x0a\x20\x20','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20auth_mode\x20TEXT\x20DEFAULT\x20NULL','subcommand','CdoLD','Gfdtr','iBPTf','\x20\x20(ADMIN_KEYS)','split','HEqMI','3284zUyaDv','LICENSE_CACHE_TTL_MS','DDFVR','sHEeN','toLowerCase','status','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20num_turns\x20INTEGER','theme','RQkKX','admin','Gemini\x20CLI','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_audit_log_action\x20ON\x20audit_log(action)','bqchw','bmOic','SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27revoked\x27','full','revoke-key','OpenAI\x20API\x20key\x20(pay-per-use)','\x20Unknown\x20command:\x20','gemini','getAsObject','hex','--status\x20active|revoked','delegate','nABLT','dcHkO','map','resume','asTQJ','HTTP\x20','--expires\x202026-12-31','SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27active\x27','default','SELECT\x20id,\x20name,\x20type,\x20status,\x20email,\x20expires_at,\x20created_at,\x20revoked_at\x20FROM\x20license_keys\x20ORDER\x20BY\x20created_at\x20DESC','DZBqN','encryption.key','Server\x20responded\x20with\x20','PRAGMA\x20foreign_keys\x20=\x20ON','worktrees','fromEntries','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20duration_ms\x20INTEGER','colana:gog-keyring:','UPDATE_CHECK_INTERVAL_MS','PTY_DEFAULT_COLS','npm','\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20OR\x20REPLACE\x20INTO\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20input_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20output_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_read_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_write_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20total_cost,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cli_cost,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20models_used,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(input_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(output_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cache_read_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cache_write_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cost_estimate),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(CASE\x20WHEN\x20cost_source\x20IN\x20(\x27cli_reported\x27,\x27terminal_parsed\x27)\x20THEN\x20cost_estimate\x20ELSE\x200\x20END),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GROUP_CONCAT(DISTINCT\x20model),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20datetime(\x27now\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20usage\x0a\x20\x20\x20\x20\x20\x20\x20\x20GROUP\x20BY\x20session_id\x0a\x20\x20\x20\x20\x20\x20','SGpEb','create-key','now','lrmdu','hNPVg','data','hQAnx','randomUUID','--type\x20staff|admin|beta','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_checkpoints_session\x20ON\x20session_checkpoints(session_id)','AGZfl','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20analytics_events\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20event_type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20event_category\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20properties\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','Write','\x20Key\x20','default_provider','run','ldBda','Read','VUjDH','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20analytics_snapshots\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20snapshot_type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20period_start\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20period_end\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20metrics\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','sha256','beta','ZnisM','supportsResume','join','Database\x20not\x20initialized','Glob','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_type\x20ON\x20analytics_events(event_type)','ZHxnV','obsSk','INSERT\x20INTO\x20schema_version\x20(version)\x20VALUES\x20(?)','3413376ZSoZeV','POST','WxgcP','5454722PLbJqF','digest','\x1b[32m','UPDATE\x20sessions\x20SET\x20auth_mode\x20=\x20\x27subscription\x27\x20WHERE\x20auth_mode\x20IS\x20NULL','providers','Admin\x20CLI','supportsHeadless','[security]\x20Failed\x20to\x20read\x20encryption\x20key\x20file:\x20','ALTER\x20TABLE\x20usage\x20ADD\x20COLUMN\x20model\x20TEXT\x20DEFAULT\x20NULL','SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys','\x0a\x20\x20Run\x20\x27colana\x20doctor\x27\x20for\x20system\x20diagnostics.\x0a','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20license_keys\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key_hash\x20TEXT\x20NOT\x20NULL\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27staff\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20email\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27active\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expires_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20revoked_at\x20TEXT\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','DELETE','POLAR_CHECKOUT_URL','pip\x20install\x20aider-chat','Name:','cxMaG','MAX_RESUMABLE_SESSIONS','[security]\x20Encryption\x20key\x20file\x20is\x20invalid\x20(','codex','padEnd','DQpCD','default_model','true','fail','models','warn','POLAR_CUSTOMER_PORTAL_URL','License\x20Keys:','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_usage_session_id\x20ON\x20usage(session_id)','reset','repeat','muted','count','Polar.sh\x20key\x20management:','pass','\x1b[31m','https://dashboard.polar.sh','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_checkpoints\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20git_sha\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20is_dirty\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20dirty_summary\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20restored_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','FLDXA','runtime','3112swnAQw','yhNNu','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Email\x20(optional)\x0a\x20\x20\x20\x20\x20\x20','value','randomBytes','cmd','npm\x20install\x20-g\x20@openai/codex','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_session_id\x20ON\x20logs(session_id)','16320555tOtISY','WebSearch','Key:','ejzeH','ePRrz','values','created_at','EzMAb','GitHub\x20Copilot\x20subscription','aider','Key\x20ID\x20is\x20required','RPiOB','AGENT_GRACE_PERIOD_MS','LEGACY_DEFAULT_KEY'];a0_0x41a3=function(){return _0x3ca2f6;};return a0_0x41a3();}function saveDatabaseNow(){if(db){const _0x3aa223=db['export'](),_0xac091c=Buffer['from'](_0x3aa223);a0_0x2567aa['writeFileSync'](DB_PATH,_0xac091c);}}function saveDatabase(){const _0x419d9d=a0_0x55d7,_0x7acde1={'yhNNu':function(_0x177a21,_0x4a5297,_0x1cc9ae){return _0x177a21(_0x4a5297,_0x1cc9ae);}};if(_saveTimer)return;_saveTimer=_0x7acde1[_0x419d9d(0x1b3)](setTimeout,()=>{_saveTimer=null,saveDatabaseNow();},0x3e8);}async function initializeDatabase(){const _0x3c324e=a0_0x55d7,_0xf9d9d4={'WWWCi':function(_0x47e41b,_0x19819a){return _0x47e41b>_0x19819a;},'mLflw':'INSERT\x20INTO\x20schema_version\x20(version)\x20VALUES\x20(?)','dPhEz':function(_0x191ede){return _0x191ede();},'LeNcB':'subscription','DZBqN':_0x3c324e(0x140),'CdoLD':'dark','BtpAj':'Write','WyVWk':'max_turns','fJDme':'editor_command','HXtnb':'auto_resume_on_restart'};!a0_0x2567aa['existsSync'](DATA_DIR)&&a0_0x2567aa[_0x3c324e(0x263)](DATA_DIR,{'recursive':!![]});SQL=await a0_0x4a7f47();if(a0_0x2567aa['existsSync'](DB_PATH)){const _0x5e6054=a0_0x2567aa['readFileSync'](DB_PATH);db=new SQL[(_0x3c324e(0x20a))](_0x5e6054);}else db=new SQL['Database']();db[_0x3c324e(0x176)](_0x3c324e(0x15e)),db[_0x3c324e(0x176)]('\x0a\x20\x20\x20\x20--\x20Projects\x20table\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20projects\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20path\x20TEXT\x20NOT\x20NULL\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20description\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run'](_0x3c324e(0x1d3)),db['run'](_0x3c324e(0x255)),db[_0x3c324e(0x176)](_0x3c324e(0x242)),db[_0x3c324e(0x176)]('\x0a\x20\x20\x20\x20--\x20Session\x20usage\x20summary\x20table\x20(pre-aggregated\x20for\x20session\x20list)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20total_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cli_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20models_used\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run'](_0x3c324e(0x1ff)),db[_0x3c324e(0x176)]('\x0a\x20\x20\x20\x20--\x20Templates\x20table\x20(task\x20prompt\x20templates)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20templates\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20category\x20TEXT\x20DEFAULT\x20\x27general\x27,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run']('\x0a\x20\x20\x20\x20--\x20Snippets\x20table\x20(clipboard/reusable\x20commands)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20snippets\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20usage_count\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db[_0x3c324e(0x176)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_project_id\x20ON\x20sessions(project_id)'),db['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_status\x20ON\x20sessions(status)'),db[_0x3c324e(0x176)](_0x3c324e(0x1b9)),db[_0x3c324e(0x176)](_0x3c324e(0x1a6));try{db[_0x3c324e(0x176)]('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20permission_mode\x20TEXT\x20DEFAULT\x20\x27default\x27');}catch(_0x2728c3){}try{db[_0x3c324e(0x176)](_0x3c324e(0x161));}catch(_0x2ea382){}try{db[_0x3c324e(0x176)](_0x3c324e(0x13f));}catch(_0x16d05c){}try{db['run']('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20total_cost_usd\x20REAL');}catch(_0x4c0591){}try{db['run']('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20mode\x20TEXT\x20DEFAULT\x20\x27legacy\x27');}catch(_0x3b92c3){}try{db[_0x3c324e(0x176)]('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20provider\x20TEXT\x20DEFAULT\x20\x27claude\x27');}catch(_0x48a1f2){}db[_0x3c324e(0x176)]('\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20schema_version\x20(\x0a\x20\x20\x20\x20\x20\x20version\x20INTEGER\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20applied_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20');const _0x33f070=db[_0x3c324e(0x1cc)](_0x3c324e(0x220)),_0x309333=_0xf9d9d4['WWWCi'](_0x33f070[_0x3c324e(0x24b)],0x0)?_0x33f070[0x0]['values'][0x0][0x0]:0x0;_0x309333===0x0&&db['run'](_0xf9d9d4['mLflw'],[0x1]);_0xf9d9d4['dPhEz'](runMigrations);const _0x5cf518=[['auth_mode',_0xf9d9d4['LeNcB']],[_0x3c324e(0x175),_0x3c324e(0x14c)],[_0x3c324e(0x19f),config_default['defaultModel']],[_0xf9d9d4[_0x3c324e(0x15b)],_0xf9d9d4[_0x3c324e(0x133)]],[_0x3c324e(0x1d6),JSON['stringify'](['Read','Edit',_0xf9d9d4['BtpAj'],'Glob','Grep'])],[_0xf9d9d4['WyVWk'],'0'],[_0x3c324e(0x238),'14'],[_0xf9d9d4[_0x3c324e(0x108)],_0x3c324e(0x1fa)],[_0xf9d9d4['HXtnb'],_0x3c324e(0x1a0)]];for(const [_0x1b7841,_0x37396c]of _0x5cf518){db['run']('INSERT\x20OR\x20IGNORE\x20INTO\x20settings\x20(key,\x20value)\x20VALUES\x20(?,\x20?)',[_0x1b7841,_0x37396c]);}return saveDatabaseNow(),console[_0x3c324e(0x228)](_0x3c324e(0x22c),DB_PATH),db;}function isFtsMissingError(_0x504bf1){const _0x35f4e7=a0_0x55d7,_0x4fd762={'TJPhM':'no\x20such\x20module:\x20fts4','ePRrz':'fts4'};if(!_0x504bf1)return![];const _0x1f0aa7=String(_0x504bf1[_0x35f4e7(0x100)]||_0x504bf1);return _0x1f0aa7['includes'](_0x35f4e7(0x1fe))||_0x1f0aa7[_0x35f4e7(0x239)](_0x4fd762['TJPhM'])||_0x1f0aa7['includes'](_0x35f4e7(0x1db))||_0x1f0aa7[_0x35f4e7(0x239)](_0x4fd762[_0x35f4e7(0x1be)]);}function createLogsFts(_0x4c8466,_0x5c0961){const _0x4be6a1=a0_0x55d7;_0x4c8466['run'](_0x4be6a1(0x12a)+_0x5c0961+_0x4be6a1(0x130)),_0x4c8466[_0x4be6a1(0x176)](_0x4be6a1(0x23e)),_0x4c8466['run']('\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_ad\x20AFTER\x20DELETE\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(logs_fts,\x20rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(\x27delete\x27,\x20old.id,\x20old.content,\x20old.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20'),_0x4c8466[_0x4be6a1(0x176)](_0x4be6a1(0x247)),_0x4c8466['run']('INSERT\x20INTO\x20logs_fts(logs_fts)\x20VALUES(\x27rebuild\x27)');}function setupLogsFts(_0x48cb31){const _0x43c590=a0_0x55d7,_0xa52234={'hQAnx':function(_0x217b38,_0x4b8b99,_0xcc7012){return _0x217b38(_0x4b8b99,_0xcc7012);},'lrmdu':function(_0x49543d,_0x3f4464){return _0x49543d(_0x3f4464);}};try{createLogsFts(_0x48cb31,'fts5');return;}catch(_0x253f96){if(!isFtsMissingError(_0x253f96))throw _0x253f96;}try{_0xa52234[_0x43c590(0x16d)](createLogsFts,_0x48cb31,_0x43c590(0x1dd));return;}catch(_0x31b9b6){if(!_0xa52234[_0x43c590(0x16a)](isFtsMissingError,_0x31b9b6))throw _0x31b9b6;}console[_0x43c590(0x1a3)]('[db]\x20FTS\x20unavailable;\x20log\x20search\x20will\x20fall\x20back\x20to\x20LIKE.');}function runMigrations(){const _0x57067f=a0_0x55d7,_0x170e0a={'sToFC':'SELECT\x20MAX(version)\x20as\x20v\x20FROM\x20schema_version','DDFVR':function(_0x3d1be4,_0x25fc0d){return _0x3d1be4>_0x25fc0d;},'iYJax':function(_0x1b2a73,_0x37c90c){return _0x1b2a73!=_0x37c90c;}},_0x26c068=db[_0x57067f(0x1cc)](_0x170e0a['sToFC']),_0x3d8364=_0x170e0a[_0x57067f(0x13b)](_0x26c068[_0x57067f(0x24b)],0x0)&&_0x170e0a['iYJax'](_0x26c068[0x0]['values'][0x0][0x0],null)?_0x26c068[0x0]['values'][0x0][0x0]:0x0;for(const _0x53ed3f of migrations){if(_0x170e0a[_0x57067f(0x13b)](_0x53ed3f[_0x57067f(0x10f)],_0x3d8364))try{typeof _0x53ed3f['up']===_0x57067f(0x232)?_0x53ed3f['up'](db):db[_0x57067f(0x176)](_0x53ed3f['sql']),db[_0x57067f(0x176)](_0x57067f(0x185),[_0x53ed3f['version']]),console[_0x57067f(0x228)]('[db]\x20Applied\x20migration\x20v'+_0x53ed3f['version']);}catch(_0x13bca8){console[_0x57067f(0x1f6)]('[db]\x20FATAL:\x20Migration\x20v'+_0x53ed3f[_0x57067f(0x10f)]+'\x20failed:\x20'+_0x13bca8['message']),console['error'](_0x57067f(0x1e2));throw _0x13bca8;}}}function checkDbIntegrity(){const _0xf35ee5=a0_0x55d7,_0x569d46={'ZHxnV':function(_0x5ce0ac,_0x5c4be0){return _0x5ce0ac===_0x5c4be0;}};if(!db)return{'ok':![],'detail':_0xf35ee5(0x180)};try{const _0x387b91=db[_0xf35ee5(0x1cc)](_0xf35ee5(0x262)),_0x1a77e6=_0x387b91['length']>0x0?_0x387b91[0x0][_0xf35ee5(0x1bf)][0x0][0x0]:'unknown';return{'ok':_0x569d46[_0xf35ee5(0x183)](_0x1a77e6,'ok'),'detail':String(_0x1a77e6)};}catch(_0x3ab5ba){return{'ok':![],'detail':_0x3ab5ba['message']};}}function getSchemaVersion(){const _0x1ea27d=a0_0x55d7,_0x11af26={'vCmtt':function(_0x5b643e,_0x4b50e9){return _0x5b643e>_0x4b50e9;},'DQpCD':function(_0x294ced,_0x99e901){return _0x294ced!=_0x99e901;}};if(!db)return 0x0;const _0x284777=db[_0x1ea27d(0x1cc)]('SELECT\x20MAX(version)\x20as\x20v\x20FROM\x20schema_version');return _0x11af26[_0x1ea27d(0x265)](_0x284777['length'],0x0)&&_0x11af26[_0x1ea27d(0x19e)](_0x284777[0x0]['values'][0x0][0x0],null)?_0x284777[0x0][_0x1ea27d(0x1bf)][0x0][0x0]:0x0;}async function getDb(){return!db&&await initializeDatabase(),db;}function closeDb(){const _0x399d58=a0_0x55d7,_0x55a997={'Obkmv':function(_0x5dd411,_0x248286){return _0x5dd411(_0x248286);},'sHEeN':function(_0x1d995d){return _0x1d995d();}};db&&(_saveTimer&&(_0x55a997[_0x399d58(0x126)](clearTimeout,_saveTimer),_saveTimer=null),_0x55a997[_0x399d58(0x13c)](saveDatabaseNow),db['close'](),db=null,console[_0x399d58(0x228)]('Database\x20connection\x20closed'));}function save(){const _0xeec177=a0_0x55d7,_0x1b3e0f={'zVWHk':function(_0x37b18d,_0x3e3e93){return _0x37b18d(_0x3e3e93);}};_saveTimer&&(_0x1b3e0f[_0xeec177(0x215)](clearTimeout,_saveTimer),_saveTimer=null),saveDatabaseNow();}function queryAll(_0x47644b,_0x1b3f1b=[]){const _0x5b107b=a0_0x55d7,_0x112727={'XLfVz':'Database\x20not\x20initialized.\x20Call\x20initializeDatabase()\x20first.'};if(!db)throw new Error(_0x112727['XLfVz']);const _0x5d2962=db['prepare'](_0x47644b);_0x1b3f1b[_0x5b107b(0x24b)]>0x0&&_0x5d2962['bind'](_0x1b3f1b);const _0x3e5b44=[];while(_0x5d2962['step']()){_0x3e5b44['push'](_0x5d2962[_0x5b107b(0x14d)]());}return _0x5d2962['free'](),_0x3e5b44;}function queryOne(_0x30e15a,_0x41056f=[]){const _0x1b5269=a0_0x55d7,_0x3587c4={'qbzgb':function(_0xd5ba3b,_0x526a9d){return _0xd5ba3b>_0x526a9d;}},_0x1d8ea7=queryAll(_0x30e15a,_0x41056f);return _0x3587c4[_0x1b5269(0x1e0)](_0x1d8ea7['length'],0x0)?_0x1d8ea7[0x0]:null;}function run(_0x3d4535,_0x10cab9=[]){const _0x3442c4=a0_0x55d7,_0x7cff88={'nOWec':_0x3442c4(0x1e5),'LCtqq':function(_0x2a517d){return _0x2a517d();}};if(!db)throw new Error(_0x7cff88[_0x3442c4(0x1cb)]);db['run'](_0x3d4535,_0x10cab9),_0x7cff88[_0x3442c4(0x219)](saveDatabase);}function a0_0x55d7(_0x4aea88,_0x597c79){_0x4aea88=_0x4aea88-0x100;const _0x41a38e=a0_0x41a3();let _0x55d70f=_0x41a38e[_0x4aea88];return _0x55d70f;}function runImmediate(_0x3b5d87,_0x135a39=[]){const _0x1ee040=a0_0x55d7;if(!db)throw new Error(_0x1ee040(0x1e5));db['run'](_0x3b5d87,_0x135a39),save();}var DATA_DIR,DB_PATH,db,SQL,_saveTimer,migrations,db_default,init_db=__esm({'server/db.js'(){const _0x1e8124=a0_0x55d7,_0x558659={'aapwR':_0x1e8124(0x131),'oWznq':_0x1e8124(0x191),'zuVUW':_0x1e8124(0x1f4),'bmOic':_0x1e8124(0x111),'Gfdtr':'ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20description\x20TEXT','dZOSg':'ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20is_builtin\x20INTEGER\x20DEFAULT\x200','OyCtK':_0x1e8124(0x1d7),'gwhag':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_license_keys_key_hash\x20ON\x20license_keys(key_hash)','vtjVH':_0x1e8124(0x182),'hgHyI':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_snapshots_type_period\x20ON\x20analytics_snapshots(snapshot_type,\x20period_start)','tdXnR':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_category\x20ON\x20analytics_events(event_category)','uiJvc':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_pcm_created\x20ON\x20personal_chat_messages(created_at)','pigLJ':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_pcm_role\x20ON\x20personal_chat_messages(role)','LwLWF':function(_0x1ae752){return _0x1ae752();}};_0x558659[_0x1e8124(0x207)](init_config),DATA_DIR=config_default[_0x1e8124(0x246)],DB_PATH=a0_0x15b81d['join'](DATA_DIR,config_default['dbFilename']),db=null,SQL=null,_saveTimer=null,migrations=[{'version':0x2,'up':_0x1c196d=>{const _0x1594e7=_0x1e8124;_0x1c196d[_0x1594e7(0x176)](_0x558659[_0x1594e7(0x24c)]),_0x1c196d['run'](_0x558659['oWznq']),_0x1c196d[_0x1594e7(0x176)]('ALTER\x20TABLE\x20usage\x20ADD\x20COLUMN\x20cost_source\x20TEXT\x20DEFAULT\x20\x27estimated\x27');}},{'version':0x3,'up':_0x344f8c=>{const _0x1bdb97=_0x1e8124;_0x344f8c['run'](_0x1bdb97(0x18c));}},{'version':0x4,'up':_0x4174aa=>{const _0x510cfd=_0x1e8124;_0x4174aa[_0x510cfd(0x176)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20audit_log\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20action\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20target\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20actor\x20TEXT\x20DEFAULT\x20\x27admin\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20details\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x4174aa[_0x510cfd(0x176)](_0x510cfd(0x144)),_0x4174aa['run'](_0x558659[_0x510cfd(0x206)]);}},{'version':0x5,'up':_0xeaf2d7=>{try{_0xeaf2d7['run']('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20last_activity_at\x20TEXT\x20DEFAULT\x20NULL');}catch(_0x4a0d1d){}}},{'version':0x6,'up':_0x2791b9=>{const _0x347901=_0x1e8124;try{_0x2791b9['run'](_0x558659[_0x347901(0x146)]);}catch(_0x111391){}}},{'version':0x7,'up':_0x224937=>{const _0x7bacc3=_0x1e8124;try{_0x224937[_0x7bacc3(0x176)]('ALTER\x20TABLE\x20snippets\x20DROP\x20COLUMN\x20is_pinned');}catch(_0x57ad3a){}try{_0x224937['run']('ALTER\x20TABLE\x20snippets\x20DROP\x20COLUMN\x20category');}catch(_0x1dad36){}}},{'version':0x8,'up':_0x1ea7af=>{const _0x46e817=_0x1e8124;_0x1ea7af[_0x46e817(0x176)](_0x46e817(0x1af)),_0x1ea7af[_0x46e817(0x176)](_0x46e817(0x170));}},{'version':0x9,'up':_0x2fc537=>{const _0x4b1f93=_0x1e8124;try{_0x2fc537['run']('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20provider_session_id\x20TEXT');}catch(_0x3bd3fe){}_0x2fc537['run'](_0x4b1f93(0x1fc)),_0x2fc537['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_provider_session_id\x20ON\x20sessions(provider_session_id)');}},{'version':0xa,'up':_0x2d680a=>{const _0x141fb4=_0x1e8124;_0x2d680a['run']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20wizard_sessions\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20scan_results\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20selected_providers\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20install_results\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20INTEGER\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20completed_at\x20INTEGER\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x2d680a[_0x141fb4(0x176)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_wizard_sessions_status\x20ON\x20wizard_sessions(status)');}},{'version':0xb,'up':_0x58e61f=>{const _0x2ab792=_0x1e8124;try{_0x58e61f[_0x2ab792(0x176)](_0x558659[_0x2ab792(0x134)]);}catch(_0xe3097){}try{_0x58e61f[_0x2ab792(0x176)]('ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20suggested_provider\x20TEXT');}catch(_0x27b733){}try{_0x58e61f['run']('ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20permission_mode\x20TEXT\x20DEFAULT\x20\x27default\x27');}catch(_0x151b86){}try{_0x58e61f['run'](_0x558659['dZOSg']);}catch(_0x32cbff){}}},{'version':0xc,'up':_0xb1446c=>{const _0x3367a2=_0x1e8124;_0xb1446c[_0x3367a2(0x176)]('UPDATE\x20sessions\x20SET\x20auth_mode\x20=\x20\x27api_key\x27\x20WHERE\x20provider\x20=\x20\x27codex\x27\x20AND\x20(auth_mode\x20IS\x20NULL\x20OR\x20auth_mode\x20=\x20\x27subscription\x27)');}},{'version':0xd,'up':_0x420635=>{const _0x1767b4=_0x1e8124;_0x420635['run']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20total_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cli_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20models_used\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x420635[_0x1767b4(0x176)](_0x1767b4(0x166));}},{'version':0xe,'up':_0x46d985=>{setupLogsFts(_0x46d985);}},{'version':0xf,'up':_0x29c71a=>{const _0x15d2ab=_0x1e8124;_0x29c71a[_0x15d2ab(0x176)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs_archive\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20timestamp\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20archived_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x29c71a[_0x15d2ab(0x176)](_0x558659['OyCtK']),_0x29c71a['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_archive_timestamp\x20ON\x20logs_archive(timestamp)');}},{'version':0x10,'up':_0xdb07f=>{const _0x821ec6=_0x1e8124;_0xdb07f['run'](_0x821ec6(0x194)),_0xdb07f[_0x821ec6(0x176)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_license_keys_status\x20ON\x20license_keys(status)'),_0xdb07f['run'](_0x558659[_0x821ec6(0x21c)]);}},{'version':0x11,'up':_0x5ea5a2=>{const _0x4fe690=_0x1e8124;_0x5ea5a2[_0x4fe690(0x176)]('ALTER\x20TABLE\x20projects\x20ADD\x20COLUMN\x20is_personal\x20INTEGER\x20NOT\x20NULL\x20DEFAULT\x200'),_0x5ea5a2[_0x4fe690(0x176)]('UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20name\x20=\x20\x27Personal\x27'),_0x5ea5a2[_0x4fe690(0x176)]('UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20description\x20=\x20\x27Virtual\x20project\x20for\x20non-coding\x20agents\x20(OpenClaw,\x20etc.)\x27');}},{'version':0x12,'up':_0x149394=>{_0x149394['run']('UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20name\x20=\x20\x27Personal\x27\x20AND\x20is_personal\x20=\x200');}},{'version':0x13,'up':_0x160e16=>{const _0x5be900=_0x1e8124,_0x15b9d6=[_0x5be900(0x21e),_0x5be900(0x26b),'ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_branch\x20TEXT','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_pinned\x20INTEGER\x20DEFAULT\x200',_0x5be900(0x116)];for(const _0x196900 of _0x15b9d6){try{_0x160e16[_0x5be900(0x176)](_0x196900);}catch(_0x440876){}}}},{'version':0x14,'up':_0x2ed0f5=>{const _0x35aec1=_0x1e8124,_0x566fa0=_0x35aec1(0x22b)['split']('|');let _0x16986a=0x0;while(!![]){switch(_0x566fa0[_0x16986a++]){case'0':_0x2ed0f5['run'](_0x35aec1(0x172));continue;case'1':_0x2ed0f5['run'](_0x35aec1(0x17a));continue;case'2':_0x2ed0f5[_0x35aec1(0x176)](_0x558659['vtjVH']);continue;case'3':_0x2ed0f5['run'](_0x558659['hgHyI']);continue;case'4':_0x2ed0f5['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_created\x20ON\x20analytics_events(created_at)');continue;case'5':_0x2ed0f5[_0x35aec1(0x176)](_0x558659['tdXnR']);continue;}break;}}},{'version':0x15,'up':_0x2677eb=>{const _0x47cb76=_0x1e8124;_0x2677eb[_0x47cb76(0x176)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20personal_chat_messages\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20role\x20TEXT\x20NOT\x20NULL\x20CHECK(role\x20IN\x20(\x27user\x27,\x20\x27assistant\x27,\x20\x27notification\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27chat\x27\x20CHECK(source\x20IN\x20(\x27chat\x27,\x20\x27notification\x27,\x20\x27terminal\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20metadata\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x2677eb[_0x47cb76(0x176)](_0x558659[_0x47cb76(0x23b)]),_0x2677eb[_0x47cb76(0x176)](_0x558659[_0x47cb76(0x203)]);}},{'version':0x16,'up':_0x1c9a48=>{const _0x24a9f1=_0x1e8124;_0x1c9a48['run']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20project_blueprints\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_version\x20INTEGER\x20DEFAULT\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source_type\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27file\x27\x20CHECK(source_type\x20IN\x20(\x27file\x27,\x20\x27url\x27,\x20\x27cloud\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source_url\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20original_json\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20variables_encrypted\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20applied_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20last_checked_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20last_updated_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x1c9a48[_0x24a9f1(0x176)](_0x24a9f1(0x202));}}],db_default={'getDb':getDb,'closeDb':closeDb,'save':save,'queryAll':queryAll,'queryOne':queryOne,'run':run,'runImmediate':runImmediate,'checkDbIntegrity':checkDbIntegrity,'getSchemaVersion':getSchemaVersion};}}),key_manager_exports={};__export(key_manager_exports,{'exportKeysCSV':()=>exportKeysCSV,'generateKey':()=>generateKey,'getKeyStats':()=>getKeyStats,'listKeys':()=>listKeys,'revokeKey':()=>revokeKey,'validateKey':()=>validateKey});import a0_0x5eda4d from'crypto';function hashKey(_0xe15b25){const _0x51cafe=a0_0x55d7;return a0_0x5eda4d[_0x51cafe(0x1ca)](_0x51cafe(0x17b))[_0x51cafe(0x1e1)](_0xe15b25)['digest']('hex');}function generateKey(_0x22df7a,_0x170e1e=a0_0x551569(0x129),_0x529c43=null,_0x3ac448=null){const _0x5cdb2e=a0_0x551569,_0x40d679={'dXZce':_0x5cdb2e(0x142),'dnXug':function(_0x43267b,_0x4183e6){return _0x43267b!==_0x4183e6;},'OwELh':'Name\x20is\x20required','UOcwu':function(_0x3180c2,_0x4294f3){return _0x3180c2+_0x4294f3;},'OFDPH':'hex','hNPVg':function(_0x2ba48c,_0x1cbc61){return _0x2ba48c||_0x1cbc61;}},_0x395aa9=[_0x40d679['dXZce'],_0x5cdb2e(0x129),'beta'];if(!_0x395aa9['includes'](_0x170e1e))throw new Error(_0x5cdb2e(0x204)+_0x170e1e+_0x5cdb2e(0x12e)+_0x395aa9[_0x5cdb2e(0x17f)](',\x20'));if(!_0x22df7a||_0x40d679[_0x5cdb2e(0x10a)](typeof _0x22df7a,'string')||!_0x22df7a['trim']())throw new Error(_0x40d679[_0x5cdb2e(0x1e3)]);const _0x2740fc=a0_0x5eda4d[_0x5cdb2e(0x16e)](),_0x29a5bc=_0x40d679['UOcwu'](KEY_PREFIX,a0_0x5eda4d[_0x5cdb2e(0x1b6)](0x10)['toString'](_0x40d679[_0x5cdb2e(0x224)])),_0x2403dc=hashKey(_0x29a5bc);return run('INSERT\x20INTO\x20license_keys\x20(id,\x20name,\x20key_hash,\x20type,\x20email,\x20status,\x20expires_at)\x0a\x20\x20\x20\x20\x20VALUES\x20(?,\x20?,\x20?,\x20?,\x20?,\x20\x27active\x27,\x20?)',[_0x2740fc,_0x22df7a[_0x5cdb2e(0x254)](),_0x2403dc,_0x170e1e,_0x529c43||null,_0x40d679[_0x5cdb2e(0x16b)](_0x3ac448,null)]),{'id':_0x2740fc,'raw':_0x29a5bc,'type':_0x170e1e,'name':_0x22df7a['trim']()};}function validateKey(_0x3e45c2){const _0x2eea82=a0_0x551569,_0x1f2b06={'aEFdN':function(_0x1315da,_0x2dbf26){return _0x1315da!==_0x2dbf26;},'OdMBj':'string','FvoVh':function(_0x1c6872,_0x251588){return _0x1c6872(_0x251588);}};if(!_0x3e45c2||_0x1f2b06[_0x2eea82(0x245)](typeof _0x3e45c2,_0x1f2b06['OdMBj']))return null;const _0x43db53=_0x1f2b06['FvoVh'](hashKey,_0x3e45c2[_0x2eea82(0x254)]()),_0xd037=queryOne('SELECT\x20id,\x20name,\x20type,\x20status,\x20expires_at,\x20created_at\x20FROM\x20license_keys\x20WHERE\x20key_hash\x20=\x20?',[_0x43db53]);if(!_0xd037)return null;if(_0x1f2b06[_0x2eea82(0x245)](_0xd037[_0x2eea82(0x13e)],'active'))return null;if(_0xd037[_0x2eea82(0x268)]){const _0x39771c=new Date(_0xd037[_0x2eea82(0x268)])[_0x2eea82(0x213)]();if(_0x39771c<Date[_0x2eea82(0x169)]())return null;}return{'id':_0xd037['id'],'name':_0xd037[_0x2eea82(0x10b)],'type':_0xd037['type'],'status':_0xd037[_0x2eea82(0x13e)],'expires_at':_0xd037[_0x2eea82(0x268)],'created_at':_0xd037['created_at']};}function listKeys(_0x582b62={}){const _0x3f4805=a0_0x551569,_0x4f73d2={'Mhnxc':'\x20AND\x20type\x20=\x20?','kepMh':'\x20AND\x20status\x20=\x20?'};let _0x3a9fa5=_0x3f4805(0x22e);const _0xab12ff=[];_0x582b62[_0x3f4805(0x231)]&&(_0x3a9fa5+=_0x4f73d2[_0x3f4805(0x21d)],_0xab12ff[_0x3f4805(0x1c9)](_0x582b62['type']));_0x582b62['status']&&(_0x3a9fa5+=_0x4f73d2['kepMh'],_0xab12ff['push'](_0x582b62['status']));_0x3a9fa5+='\x20ORDER\x20BY\x20created_at\x20DESC';const _0x4d7603=Math['min'](Math['max'](parseInt(_0x582b62[_0x3f4805(0x1f8)])||0x32,0x1),0x1f4);_0x3a9fa5+='\x20LIMIT\x20?',_0xab12ff['push'](_0x4d7603);const _0x271ad9=queryAll(_0x3a9fa5,_0xab12ff),_0x3c810a=_0x271ad9['map'](_0x4423b7=>({'id':_0x4423b7['id'],'name':_0x4423b7[_0x3f4805(0x10b)],'type':_0x4423b7[_0x3f4805(0x231)],'status':_0x4423b7[_0x3f4805(0x13e)]==='active'?'ACTIVE':'SUSPENDED','key':_0x4423b7['id']['slice'](0x0,0x8)+'****','email':_0x4423b7[_0x3f4805(0x233)],'expiry':_0x4423b7[_0x3f4805(0x268)],'created_at':_0x4423b7['created_at'],'revoked_at':_0x4423b7['revoked_at']}));return{'keys':_0x3c810a};}function revokeKey(_0x555b79){const _0x257ba5=a0_0x551569,_0x37608a={'Ytjcl':function(_0x183ce9,_0x1aec29,_0x51505b){return _0x183ce9(_0x1aec29,_0x51505b);},'pJUUj':'Key\x20not\x20found','UioLr':'Key\x20is\x20already\x20revoked','QqfQv':function(_0x378760,_0x5836f8,_0x5f43f1){return _0x378760(_0x5836f8,_0x5f43f1);}};if(!_0x555b79)throw new Error(_0x257ba5(0x1c4));const _0x5c0aaa=_0x37608a['Ytjcl'](queryOne,'SELECT\x20id,\x20status\x20FROM\x20license_keys\x20WHERE\x20id\x20=\x20?',[_0x555b79]);if(!_0x5c0aaa)throw new Error(_0x37608a[_0x257ba5(0x106)]);if(_0x5c0aaa['status']==='revoked')throw new Error(_0x37608a['UioLr']);return _0x37608a['QqfQv'](run,'UPDATE\x20license_keys\x20SET\x20status\x20=\x20\x27revoked\x27,\x20revoked_at\x20=\x20datetime(\x27now\x27)\x20WHERE\x20id\x20=\x20?',[_0x555b79]),{'success':!![]};}function getKeyStats(){const _0x509447=a0_0x551569,_0x99662d={'oStXV':_0x509447(0x158),'MlvSJ':function(_0x3919a4,_0x459810){return _0x3919a4(_0x459810);},'WxgcP':function(_0x1fbf68,_0x184ea2){return _0x1fbf68(_0x184ea2);},'sZkNV':'SELECT\x20type,\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27active\x27\x20GROUP\x20BY\x20type'},_0xe98dde=queryOne(_0x509447(0x192)),_0xc787fe=queryOne(_0x99662d['oStXV']),_0x897715=_0x99662d[_0x509447(0x23d)](queryOne,_0x509447(0x147)),_0x4d8429=_0x99662d[_0x509447(0x188)](queryAll,_0x99662d['sZkNV']),_0x189b77={};for(const _0x28d515 of _0x4d8429){_0x189b77[_0x28d515['type']]=_0x28d515['count'];}return{'totalKeys':_0xe98dde?.['count']||0x0,'activeKeys':_0xc787fe?.['count']||0x0,'revokedKeys':_0x897715?.[_0x509447(0x1aa)]||0x0,'byType':_0x189b77};}function exportKeysCSV(){const _0x3a8e7d=a0_0x551569,_0x48ba5e={'SGpEb':function(_0x2abe1a,_0x4a7f05){return _0x2abe1a(_0x4a7f05);},'nABLT':_0x3a8e7d(0x250)},_0x57a2e1=_0x48ba5e[_0x3a8e7d(0x167)](queryAll,_0x3a8e7d(0x15a)),_0x1fff56=_0x48ba5e[_0x3a8e7d(0x151)],_0x253a07=_0x57a2e1['map'](_0x53b07c=>{const _0x1026f0=_0x3a8e7d;return[_0x53b07c['id'],'\x22'+(_0x53b07c[_0x1026f0(0x10b)]||'')['replace'](/"/g,'\x22\x22')+'\x22',_0x53b07c[_0x1026f0(0x231)],_0x53b07c[_0x1026f0(0x13e)],_0x53b07c['email']||'',_0x53b07c[_0x1026f0(0x268)]||'',_0x53b07c[_0x1026f0(0x1c0)]||'',_0x53b07c[_0x1026f0(0x248)]||''][_0x1026f0(0x17f)](',');});return[_0x1fff56,..._0x253a07]['join']('\x0a');}var KEY_PREFIX,init_key_manager=__esm({'server/key-manager.js'(){const _0x5391b3=a0_0x551569;init_db(),KEY_PREFIX=_0x5391b3(0x200);}});import a0_0x39a562 from'path';import{fileURLToPath as a0_0x4caa0d}from'url';var supportsColor=((()=>{const _0x2cecea=a0_0x551569,_0x1036ab={'qBTTC':function(_0x255bfc,_0x5e5437){return _0x255bfc===_0x5e5437;}};if(process[_0x2cecea(0x117)]['NO_COLOR'])return![];if(_0x1036ab[_0x2cecea(0x1f3)](process[_0x2cecea(0x117)][_0x2cecea(0x21f)],'1'))return!![];return!!process[_0x2cecea(0x223)][_0x2cecea(0x23f)];})());function makeColors(_0x2345d1){const _0x15285d=a0_0x551569,_0x2f60e4={'bphhH':'\x1b[0m','QcECP':'\x1b[38;5;214m','KGCYp':_0x15285d(0x205),'IfXKL':_0x15285d(0x107)};if(!_0x2345d1)return{'reset':'','brand':'','heading':'','success':'','error':'','warn':'','info':'','muted':'','value':'','cmd':'','url':''};return{'reset':_0x2f60e4['bphhH'],'brand':_0x2f60e4['QcECP'],'heading':_0x15285d(0x260),'success':_0x15285d(0x18b),'error':_0x15285d(0x1ad),'warn':_0x2f60e4[_0x15285d(0x119)],'info':_0x2f60e4[_0x15285d(0x118)],'muted':_0x15285d(0x128),'value':_0x15285d(0x115),'cmd':_0x15285d(0x107),'url':_0x2f60e4['IfXKL']};}var c=makeColors(supportsColor),icons={'pass':c[a0_0x551569(0x11e)]+'✓'+c[a0_0x551569(0x1a7)],'fail':c[a0_0x551569(0x1f6)]+'✗'+c[a0_0x551569(0x1a7)],'warn':c['warn']+'⚠'+c[a0_0x551569(0x1a7)],'arrow':c[a0_0x551569(0x24d)]+'→'+c['reset'],'dot':c['brand']+'•'+c['reset']};function brandName(_0x7dba15=a0_0x551569(0x148)){const _0x246981=a0_0x551569,_0x43f84b=c['heading']+'co'+c['brand']+':'+c[_0x246981(0x1d1)]+_0x246981(0x261)+c[_0x246981(0x1a7)];if(_0x7dba15==='prefix')return'['+_0x43f84b+']';return _0x43f84b;}var __dirname2=a0_0x39a562['dirname'](a0_0x4caa0d(import.meta.url));function parseArgs(_0x28f7f4){const _0x42c388=a0_0x551569,_0x56d16c={'cxMaG':function(_0x4d41b0,_0x233fc4){return _0x4d41b0+_0x233fc4;},'iJYfL':function(_0xa0be44,_0x30bee7){return _0xa0be44+_0x30bee7;}},_0x5635ed=_0x28f7f4['slice'](0x2),_0x241aaa=_0x5635ed[0x0],_0x34b26d=[],_0x502d2a={};for(let _0x268e14=0x1;_0x268e14<_0x5635ed['length'];_0x268e14++){if(_0x5635ed[_0x268e14]['startsWith']('--')){let _0x30639a=_0x5635ed[_0x268e14]['slice'](0x2),_0x158070;const _0x4d4c87=_0x30639a['indexOf']('=');_0x4d4c87!==-0x1?(_0x158070=_0x30639a['slice'](_0x56d16c[_0x42c388(0x199)](_0x4d4c87,0x1)),_0x30639a=_0x30639a['slice'](0x0,_0x4d4c87)):_0x158070=_0x56d16c['cxMaG'](_0x268e14,0x1)<_0x5635ed[_0x42c388(0x24b)]&&!_0x5635ed[_0x56d16c[_0x42c388(0x22f)](_0x268e14,0x1)]['startsWith']('--')?_0x5635ed[++_0x268e14]:'true',_0x502d2a[_0x30639a]=_0x158070;}else _0x34b26d['push'](_0x5635ed[_0x268e14]);}return{'command':_0x241aaa,'flags':_0x502d2a,'positional':_0x34b26d};}function maskKey(_0x5aff5b){const _0x7ccab7=a0_0x551569,_0x486ad7={'DoScg':function(_0x5887c2,_0x401bc){return _0x5887c2<=_0x401bc;},'OiBZZ':function(_0xa3b7de,_0x237c4f){return _0xa3b7de+_0x237c4f;},'ldBda':'****'};if(!_0x5aff5b||_0x486ad7[_0x7ccab7(0x211)](_0x5aff5b['length'],0x8))return'****';return _0x486ad7[_0x7ccab7(0x201)](_0x5aff5b[_0x7ccab7(0x104)](0x0,0x4),_0x486ad7[_0x7ccab7(0x177)]);}var DEFAULT_PORT=0x2694,MAX_PORT_SCAN=0x64;async function findRunningServer(){const _0xfa969c=a0_0x551569,_0x39273b={'RNmZW':function(_0x587a29,_0x106dbc,_0xa0abb4){return _0x587a29(_0x106dbc,_0xa0abb4);},'lkmuu':function(_0x1285a1,_0x5085e0){return _0x1285a1===_0x5085e0;}};for(let _0x536f3c=0x0;_0x536f3c<MAX_PORT_SCAN;_0x536f3c++){const _0x594117=DEFAULT_PORT+_0x536f3c;try{const _0x253977=await _0x39273b[_0xfa969c(0x12d)](fetch,_0xfa969c(0x11f)+_0x594117+'/api/health',{'signal':AbortSignal[_0xfa969c(0x21a)](0x1f4)});if(_0x253977['ok']){const _0x420adf=await _0x253977['json']();if(_0x39273b['lkmuu'](_0x420adf['status'],'ok'))return'http://127.0.0.1:'+_0x594117;}}catch{}}return null;}async function createKeyViaApi(_0x1b82ac,_0x4653ca){const _0x3f4cc0=a0_0x551569,_0x18614e={'DNGLw':_0x3f4cc0(0x187),'FQcuH':'application/json'},_0x2176a3=await fetch(_0x1b82ac+'/api/admin/keys',{'method':_0x18614e['DNGLw'],'headers':{'Content-Type':_0x18614e[_0x3f4cc0(0x214)]},'body':JSON['stringify'](_0x4653ca)});if(!_0x2176a3['ok']){const _0x3b3c74=await _0x2176a3[_0x3f4cc0(0x235)]()['catch'](()=>({'error':_0x3f4cc0(0x156)+_0x2176a3[_0x3f4cc0(0x13e)]}));throw new Error(_0x3b3c74['error']||_0x3f4cc0(0x15d)+_0x2176a3['status']);}return _0x2176a3[_0x3f4cc0(0x235)]();}async function listKeysViaApi(_0x2e9da6,_0x13c43b){const _0x195ee5=a0_0x551569,_0x30869e={'FLDXA':_0x195ee5(0x13e)},_0x4ba581=new URLSearchParams();if(_0x13c43b[_0x195ee5(0x231)])_0x4ba581['set'](_0x195ee5(0x231),_0x13c43b['type']);if(_0x13c43b[_0x195ee5(0x13e)])_0x4ba581[_0x195ee5(0x234)](_0x30869e[_0x195ee5(0x1b0)],_0x13c43b[_0x195ee5(0x13e)]);const _0x3f3757=_0x4ba581[_0x195ee5(0x241)](),_0x32f56d=await fetch(_0x2e9da6+_0x195ee5(0x113)+(_0x3f3757?'?'+_0x3f3757:''));if(!_0x32f56d['ok']){const _0x121e01=await _0x32f56d['json']()['catch'](()=>({'error':'HTTP\x20'+_0x32f56d[_0x195ee5(0x13e)]}));throw new Error(_0x121e01['error']||_0x195ee5(0x15d)+_0x32f56d['status']);}return _0x32f56d['json']();}async function revokeKeyViaApi(_0x3c15c9,_0x4a6d2a){const _0x437120=a0_0x551569,_0x448896=await fetch(_0x3c15c9+_0x437120(0x22a)+_0x4a6d2a,{'method':_0x437120(0x195)});if(!_0x448896['ok']){const _0x3452bc=await _0x448896[_0x437120(0x235)]()[_0x437120(0x1f1)](()=>({'error':_0x437120(0x156)+_0x448896[_0x437120(0x13e)]}));throw new Error(_0x3452bc[_0x437120(0x1f6)]||_0x437120(0x15d)+_0x448896[_0x437120(0x13e)]);}return _0x448896[_0x437120(0x235)]();}var _dbReady=![];async function ensureDb(){const _0x47b835=a0_0x551569;if(_dbReady)return;const {getDb:_0xa7c8e6}=await Promise['resolve']()[_0x47b835(0x25b)](()=>(init_db(),db_exports));await _0xa7c8e6(),_dbReady=!![];}async function createKey(_0x436463){const _0x581692=a0_0x551569,_0x569785={'MkNHT':'staff','gIHrK':_0x581692(0x17c),'vinII':function(_0x186036){return _0x186036();},'mKWKy':function(_0x3d0d1b,_0x321fc5){return _0x3d0d1b||_0x321fc5;},'pGier':function(_0x1bceff,_0x14382d,_0x296986,_0x5d438a,_0x3881e6){return _0x1bceff(_0x14382d,_0x296986,_0x5d438a,_0x3881e6);}},_0x1221bc=_0x436463['name'],_0x171db7=_0x436463['type']||_0x581692(0x129),_0x7c946f=_0x436463['email']||null,_0x35114c=_0x436463['expires']||null;if(!_0x1221bc){console['error'](_0x581692(0x253)+icons['fail']+'\x20'+c['error']+_0x581692(0x208)+c['reset']+'\x0a'),console[_0x581692(0x1f6)]('\x20\x20Usage:\x20colana\x20admin\x20create-key\x20--name\x20\x22Sarah\x22\x20--type\x20staff\x20[--email\x20x]\x20[--expires\x202026-12-31]\x0a'),process[_0x581692(0x216)](0x1);return;}const _0x4a6091=[_0x581692(0x142),_0x569785['MkNHT'],_0x569785['gIHrK']];if(!_0x4a6091['includes'](_0x171db7)){console[_0x581692(0x1f6)]('\x0a\x20\x20'+icons['fail']+'\x20'+c[_0x581692(0x1f6)]+'ERROR:\x20Invalid\x20type\x20\x22'+_0x171db7+'\x22.\x20Must\x20be\x20one\x20of:\x20'+_0x4a6091[_0x581692(0x17f)](',\x20')+c[_0x581692(0x1a7)]+'\x0a'),process[_0x581692(0x216)](0x1);return;}const _0x5c7583=await _0x569785[_0x581692(0x11d)](findRunningServer);let _0x2767b1;if(_0x5c7583)try{_0x2767b1=await createKeyViaApi(_0x5c7583,{'name':_0x1221bc,'type':_0x171db7,'email':_0x569785['mKWKy'](_0x7c946f,void 0x0),'expires':_0x35114c||void 0x0});}catch(_0x291b10){console['error']('\x0a\x20\x20'+icons['fail']+'\x20'+c[_0x581692(0x1f6)]+_0x291b10[_0x581692(0x100)]+c[_0x581692(0x1a7)]+'\x20'+c[_0x581692(0x1a9)]+'(via\x20server)'+c[_0x581692(0x1a7)]+'\x0a'),process['exit'](0x1);return;}else{await ensureDb();const {generateKey:_0x46caed}=await Promise['resolve']()[_0x581692(0x25b)](()=>(init_key_manager(),key_manager_exports));try{_0x2767b1=_0x569785['pGier'](_0x46caed,_0x1221bc,_0x171db7,_0x7c946f,_0x35114c);}catch(_0x321e39){console[_0x581692(0x1f6)]('\x0a\x20\x20'+icons['fail']+'\x20'+c[_0x581692(0x1f6)]+_0x321e39[_0x581692(0x100)]+c['reset']+'\x0a'),process[_0x581692(0x216)](0x1);return;}}if(!_0x2767b1||!_0x2767b1['name']){console['error']('\x0a\x20\x20'+icons[_0x581692(0x1a1)]+'\x20'+c['error']+_0x581692(0x1cd)+c['reset']+'\x0a'),process['exit'](0x1);return;}console[_0x581692(0x228)](''),console['log']('\x20\x20'+icons[_0x581692(0x1ac)]+'\x20Key\x20generated\x20successfully!'),console[_0x581692(0x228)]('\x20\x20'+c[_0x581692(0x1a9)]+'─'['repeat'](0x28)+c['reset']),console[_0x581692(0x228)](_0x581692(0x1f2)+c['muted']+_0x581692(0x198)+c[_0x581692(0x1a7)]+'\x20\x20\x20\x20'+c[_0x581692(0x1b5)]+_0x2767b1['name']+c[_0x581692(0x1a7)]),console['log']('\x20\x20\x20\x20'+c[_0x581692(0x1a9)]+'Type:'+c[_0x581692(0x1a7)]+'\x20\x20\x20\x20'+c[_0x581692(0x1b5)]+_0x2767b1['type']+c['reset']),console[_0x581692(0x228)]('\x20\x20\x20\x20'+c[_0x581692(0x1a9)]+_0x581692(0x1d2)+c[_0x581692(0x1a7)]+'\x20\x20\x20\x20\x20\x20'+c[_0x581692(0x1b5)]+_0x2767b1['id']+c['reset']),console['log']('\x20\x20\x20\x20'+c[_0x581692(0x1a9)]+_0x581692(0x1bc)+c[_0x581692(0x1a7)]+_0x581692(0x236)+c['warn']+_0x2767b1['raw']+c[_0x581692(0x1a7)]),console[_0x581692(0x228)]('\x20\x20'+c['muted']+'─'[_0x581692(0x1a8)](0x28)+c[_0x581692(0x1a7)]),console['log']('\x20\x20'+c[_0x581692(0x1a3)]+_0x581692(0x1d0)+c[_0x581692(0x1a7)]),_0x5c7583?console['log']('\x20\x20'+c[_0x581692(0x1a9)]+_0x581692(0x22d)+c['reset']):console[_0x581692(0x228)]('\x20\x20'+c[_0x581692(0x1a9)]+'(Created\x20via\x20direct\x20DB\x20—\x20restart\x20server\x20to\x20pick\x20up)'+c['reset']),console[_0x581692(0x228)]('');}async function listKeysCmd(_0x2dee56){const _0x54b1b2=a0_0x551569,_0x126be0={'wbxZk':function(_0x32e057,_0x370673,_0x5c3351){return _0x32e057(_0x370673,_0x5c3351);},'qbTIT':'Type','ynhsX':'Status','iBPTf':_0x54b1b2(0x249),'uELfc':'Never'},_0x5662c5={};if(_0x2dee56['type'])_0x5662c5[_0x54b1b2(0x231)]=_0x2dee56['type'];if(_0x2dee56['status'])_0x5662c5['status']=_0x2dee56[_0x54b1b2(0x13e)];const _0x24629f=await findRunningServer();let _0x4c56da;if(_0x24629f)try{_0x4c56da=await _0x126be0[_0x54b1b2(0x1fb)](listKeysViaApi,_0x24629f,_0x5662c5);}catch(_0x5ac038){console['error']('\x0a\x20\x20'+icons['fail']+'\x20'+c[_0x54b1b2(0x1f6)]+_0x5ac038[_0x54b1b2(0x100)]+c[_0x54b1b2(0x1a7)]+'\x20'+c['muted']+'(via\x20server)'+c[_0x54b1b2(0x1a7)]+'\x0a'),process[_0x54b1b2(0x216)](0x1);return;}else{await ensureDb();const {listKeys:_0x1d25b7}=await Promise[_0x54b1b2(0x264)]()['then'](()=>(init_key_manager(),key_manager_exports));_0x4c56da=_0x1d25b7(_0x5662c5);}if(!_0x4c56da||!_0x4c56da['keys']||!_0x4c56da[_0x54b1b2(0x24a)][_0x54b1b2(0x24b)]){console[_0x54b1b2(0x228)](_0x54b1b2(0x23a));return;}console[_0x54b1b2(0x228)](''),console['log']('\x20\x20'+c['heading']+_0x54b1b2(0x1a5)+c[_0x54b1b2(0x1a7)]),console[_0x54b1b2(0x228)]('\x20\x20'+c['muted']+'─'[_0x54b1b2(0x1a8)](0x50)+c['reset']),console[_0x54b1b2(0x228)]('\x20\x20'+c['muted']+'ID'[_0x54b1b2(0x19d)](0xa)+'Name'[_0x54b1b2(0x19d)](0x14)+_0x126be0[_0x54b1b2(0x229)][_0x54b1b2(0x19d)](0xa)+_0x126be0['ynhsX'][_0x54b1b2(0x19d)](0xa)+_0x126be0[_0x54b1b2(0x135)][_0x54b1b2(0x19d)](0xf)+'Created'+c[_0x54b1b2(0x1a7)]),console[_0x54b1b2(0x228)]('\x20\x20'+c['muted']+'─'[_0x54b1b2(0x1a8)](0x50)+c[_0x54b1b2(0x1a7)]);for(const _0x182cc7 of _0x4c56da['keys']){const _0x4ce6be=(_0x182cc7['id']||'')['slice'](0x0,0x8),_0x33132f=(_0x182cc7[_0x54b1b2(0x10b)]||'')['slice'](0x0,0x12)['padEnd'](0x14),_0xd9fd47=(_0x182cc7[_0x54b1b2(0x231)]||'')[_0x54b1b2(0x19d)](0xa),_0x247c5e=(_0x182cc7['status']||'')[_0x54b1b2(0x19d)](0xa),_0x5b3033=(_0x182cc7[_0x54b1b2(0x258)]?new Date(_0x182cc7['expiry'])['toLocaleDateString']():_0x126be0['uELfc'])['padEnd'](0xf),_0x5f5682=_0x182cc7['created_at']?new Date(_0x182cc7[_0x54b1b2(0x1c0)])['toLocaleDateString']():'-';console[_0x54b1b2(0x228)]('\x20\x20'+_0x4ce6be['padEnd'](0xa)+_0x33132f+_0xd9fd47+_0x247c5e+_0x5b3033+_0x5f5682);}console[_0x54b1b2(0x228)]('\x20\x20'+c[_0x54b1b2(0x1a9)]+'─'[_0x54b1b2(0x1a8)](0x50)+c[_0x54b1b2(0x1a7)]),console['log']('\x20\x20'+c[_0x54b1b2(0x1a9)]+_0x54b1b2(0x227)+_0x4c56da[_0x54b1b2(0x24a)]['length']+'\x20key(s)'+c['reset']+'\x0a');}async function revokeKeyCmd(_0x397c49){const _0x2b38ca=a0_0x551569,_0x4fcf6d={'AGZfl':'\x20\x20Usage:\x20colana\x20admin\x20revoke-key\x20<id>\x0a','jLrvk':function(_0x214216){return _0x214216();}},_0xcb4ef5=_0x397c49[0x0];if(!_0xcb4ef5){console['error'](_0x2b38ca(0x253)+icons[_0x2b38ca(0x1a1)]+'\x20'+c[_0x2b38ca(0x1f6)]+'ERROR:\x20Key\x20ID\x20is\x20required.'+c[_0x2b38ca(0x1a7)]+'\x0a'),console['error'](_0x4fcf6d[_0x2b38ca(0x171)]),process[_0x2b38ca(0x216)](0x1);return;}const _0x2cb99a=await _0x4fcf6d[_0x2b38ca(0x11c)](findRunningServer);if(_0x2cb99a)try{await revokeKeyViaApi(_0x2cb99a,_0xcb4ef5),console['log']('\x0a\x20\x20'+icons['pass']+_0x2b38ca(0x174)+c[_0x2b38ca(0x1b5)]+_0xcb4ef5+c['reset']+_0x2b38ca(0x1f9));}catch(_0x47df51){console['error'](_0x2b38ca(0x253)+icons['fail']+'\x20'+c['error']+_0x47df51[_0x2b38ca(0x100)]+c[_0x2b38ca(0x1a7)]+'\x20'+c[_0x2b38ca(0x1a9)]+'(via\x20server)'+c['reset']+'\x0a'),process['exit'](0x1);return;}else{await ensureDb();const {revokeKey:_0x242ed1}=await Promise[_0x2b38ca(0x264)]()['then'](()=>(init_key_manager(),key_manager_exports));try{_0x242ed1(_0xcb4ef5),console[_0x2b38ca(0x228)](_0x2b38ca(0x253)+icons['pass']+_0x2b38ca(0x174)+c['value']+_0xcb4ef5+c['reset']+'\x20has\x20been\x20revoked.\x0a');}catch(_0x341dbc){console['error'](_0x2b38ca(0x253)+icons['fail']+'\x20'+c['error']+_0x341dbc[_0x2b38ca(0x100)]+c['reset']+'\x0a'),process[_0x2b38ca(0x216)](0x1);return;}}}function showHelp(){const _0x3afe2a=a0_0x551569;console[_0x3afe2a(0x228)](_0x3afe2a(0x253)+brandName()+'\x20'+c[_0x3afe2a(0x1a9)]+_0x3afe2a(0x18e)+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x10d)+c['heading']+_0x3afe2a(0x1d4)+c['reset']+_0x3afe2a(0x1ef)+c[_0x3afe2a(0x1b7)]+'colana\x20admin\x20doctor'+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Run\x20system\x20diagnostics\x0a\x20\x20\x20\x20'+c['cmd']+_0x3afe2a(0x1e9)+c[_0x3afe2a(0x1a7)]+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20List\x20configured\x20staff/admin\x20keys\x20(env\x20vars)\x0a\x20\x20\x20\x20'+c[_0x3afe2a(0x1b7)]+_0x3afe2a(0x26c)+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x102)+c['muted']+'--name\x20\x22Name\x22'+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Recipient\x20name\x20(required)\x0a\x20\x20\x20\x20\x20\x20'+c[_0x3afe2a(0x1a9)]+'--type\x20staff|admin|beta'+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Key\x20type\x20(default:\x20staff)\x0a\x20\x20\x20\x20\x20\x20'+c['muted']+'--email\x20user@example.com'+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x1b4)+c[_0x3afe2a(0x1a9)]+_0x3afe2a(0x157)+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Expiry\x20date\x20(optional)\x0a\x20\x20\x20\x20'+c['cmd']+'colana\x20admin\x20list-keys'+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x244)+c['muted']+_0x3afe2a(0x16f)+c['reset']+_0x3afe2a(0x1f5)+c[_0x3afe2a(0x1a9)]+_0x3afe2a(0x14f)+c[_0x3afe2a(0x1a7)]+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Filter\x20by\x20status\x0a\x20\x20\x20\x20'+c['cmd']+_0x3afe2a(0x25a)+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x1ea)+c[_0x3afe2a(0x1a9)]+_0x3afe2a(0x1ab)+c[_0x3afe2a(0x1a7)]+_0x3afe2a(0x1ef)+c['url']+_0x3afe2a(0x1ae)+c['reset']+'\x0a');}function doctor(){const _0x4ea764=a0_0x551569;console[_0x4ea764(0x228)](_0x4ea764(0x193));}function staffKeys(){const _0x3f54a4=a0_0x551569,_0x6ef0b1={'JdHWU':function(_0x1ed761,_0x1f4f59){return _0x1ed761+_0x1f4f59;},'uyGQg':function(_0x55eb00,_0x19aef0){return _0x55eb00(_0x19aef0);},'NWzJo':function(_0x5c0c75,_0x39c0f9){return _0x5c0c75===_0x39c0f9;},'pJimA':function(_0x97d74f,_0x5c281e){return _0x97d74f>_0x5c281e;}},_0x1e4392=process[_0x3f54a4(0x117)][_0x3f54a4(0x122)]||'',_0x2f0045=process['env']['ADMIN_KEYS']||'',_0x1394bd=_0x1e4392['split'](',')['map'](_0x1aec0e=>_0x1aec0e['trim']())[_0x3f54a4(0x257)](Boolean),_0x4a8270=_0x2f0045[_0x3f54a4(0x137)](',')[_0x3f54a4(0x153)](_0x2289fe=>_0x2289fe['trim']())[_0x3f54a4(0x257)](Boolean);if(_0x6ef0b1[_0x3f54a4(0x230)](_0x1394bd[_0x3f54a4(0x24b)],0x0)&&_0x4a8270['length']===0x0){console['log']('\x0a\x20\x20No\x20staff\x20or\x20admin\x20keys\x20configured.\x20Set\x20STAFF_KEYS\x20or\x20ADMIN_KEYS\x20environment\x20variable.\x0a');return;}console['log'](''),_0x6ef0b1[_0x3f54a4(0x11b)](_0x1394bd['length'],0x0)&&(console['log']('\x20\x20'+c[_0x3f54a4(0x1d1)]+'Staff\x20Keys:'+c['reset']),console[_0x3f54a4(0x228)]('\x20\x20'+c['muted']+'─'['repeat'](0xa)+c['reset']),_0x1394bd['forEach']((_0x4c2730,_0x55b19c)=>{const _0x2be764=_0x3f54a4;console[_0x2be764(0x228)](_0x2be764(0x1f2)+_0x6ef0b1[_0x2be764(0x1ee)](_0x55b19c,0x1)+'.\x20'+_0x6ef0b1['uyGQg'](maskKey,_0x4c2730)+_0x2be764(0x12c));}),console[_0x3f54a4(0x228)]('')),_0x4a8270[_0x3f54a4(0x24b)]>0x0&&(console['log']('\x20\x20'+c['heading']+_0x3f54a4(0x269)+c[_0x3f54a4(0x1a7)]),console['log']('\x20\x20'+c[_0x3f54a4(0x1a9)]+'─'['repeat'](0xa)+c[_0x3f54a4(0x1a7)]),_0x4a8270['forEach']((_0x599ce4,_0x2f6b93)=>{const _0x38948d=_0x3f54a4;console[_0x38948d(0x228)](_0x38948d(0x1f2)+(_0x2f6b93+0x1)+'.\x20'+maskKey(_0x599ce4)+_0x38948d(0x136));}),console['log']('')),console[_0x3f54a4(0x228)](_0x3f54a4(0x1ce));}async function main(){const _0x366933=a0_0x551569,_0x5bae32={'kgtAD':function(_0x26335f,_0x2ec161){return _0x26335f(_0x2ec161);},'RPiOB':'help','YjhjF':_0x366933(0x20e),'PWWgz':function(_0x4f6c12){return _0x4f6c12();},'lNCEQ':'list-keys'},{command:_0x5da70f,flags:_0x4c0574,positional:_0x17380c}=_0x5bae32[_0x366933(0x1e8)](parseArgs,process[_0x366933(0x259)]);if(!_0x5da70f||_0x5da70f===_0x5bae32[_0x366933(0x1c5)]||_0x5da70f==='--help'){showHelp();return;}switch(_0x5da70f){case'doctor':return doctor();case _0x5bae32[_0x366933(0x1cf)]:return _0x5bae32['PWWgz'](staffKeys);case _0x366933(0x168):return createKey(_0x4c0574);case _0x5bae32['lNCEQ']:return _0x5bae32['kgtAD'](listKeysCmd,_0x4c0574);case _0x366933(0x149):return revokeKeyCmd(_0x17380c);default:console[_0x366933(0x1f6)]('\x20\x20'+icons[_0x366933(0x1a1)]+_0x366933(0x14b)+c[_0x366933(0x1b5)]+_0x5da70f+c['reset']),console[_0x366933(0x1f6)]('\x20\x20'+c[_0x366933(0x1a9)]+'Run\x20\x22colana\x20admin\x20help\x22\x20for\x20usage.'+c['reset']),process['exit'](0x1);return;}}main()['catch'](_0x105204=>{const _0x1d0abd=a0_0x551569;console[_0x1d0abd(0x1f6)]('\x20\x20'+icons['fail']+'\x20'+c['error']+(_0x105204[_0x1d0abd(0x100)]||_0x105204)+c[_0x1d0abd(0x1a7)]),process[_0x1d0abd(0x216)](0x1);});
2
+ const a0_0x42a21f=a0_0x584d;(function(_0x37cfb9,_0x2a07c0){const _0x1591f3=a0_0x584d,_0x5d09c3=_0x37cfb9();while(!![]){try{const _0x425d51=-parseInt(_0x1591f3(0x1ea))/0x1+-parseInt(_0x1591f3(0x1e3))/0x2+-parseInt(_0x1591f3(0x2ac))/0x3*(parseInt(_0x1591f3(0x23f))/0x4)+-parseInt(_0x1591f3(0x276))/0x5*(-parseInt(_0x1591f3(0x282))/0x6)+-parseInt(_0x1591f3(0x2e3))/0x7+-parseInt(_0x1591f3(0x333))/0x8*(parseInt(_0x1591f3(0x22a))/0x9)+parseInt(_0x1591f3(0x2d0))/0xa;if(_0x425d51===_0x2a07c0)break;else _0x5d09c3['push'](_0x5d09c3['shift']());}catch(_0x5080f6){_0x5d09c3['push'](_0x5d09c3['shift']());}}}(a0_0x1d1c,0x8871e));var __defProp=Object['defineProperty'],__getOwnPropNames=Object['getOwnPropertyNames'],__esm=(_0x42bc06,_0x2e9939)=>function _0x46ff90(){const _0x498e17={'muxud':function(_0x2e5e47,_0xb04a65){return _0x2e5e47(_0xb04a65);}};return _0x42bc06&&(_0x2e9939=(0x0,_0x42bc06[_0x498e17['muxud'](__getOwnPropNames,_0x42bc06)[0x0]])(_0x42bc06=0x0)),_0x2e9939;},__export=(_0x5f5dce,_0x36a432)=>{const _0x256ad9={'CYBTQ':function(_0x50b428,_0xe81327,_0x4b0b3b,_0x5c1724){return _0x50b428(_0xe81327,_0x4b0b3b,_0x5c1724);}};for(var _0x377b69 in _0x36a432)_0x256ad9['CYBTQ'](__defProp,_0x5f5dce,_0x377b69,{'get':_0x36a432[_0x377b69],'enumerable':!![]});};import a0_0x394e4c from'crypto';import a0_0x49ec87 from'fs';import a0_0x277bc5 from'os';import a0_0x545c2e from'path';import{fileURLToPath}from'url';function envInt(_0x3a7d0a,_0x3f27b3){const _0x452783=a0_0x584d,_0x4a5f08={'eyEBL':function(_0x3ec4c3,_0x390157,_0x1b95ef){return _0x3ec4c3(_0x390157,_0x1b95ef);}},_0x2cbac4=_0x4a5f08[_0x452783(0x326)](parseInt,_0x3a7d0a,0xa);return Number[_0x452783(0x244)](_0x2cbac4)?_0x3f27b3:_0x2cbac4;}function resolveEncryptionKey(){const _0xb24fbf=a0_0x584d,_0x48eeb3={'HBRpA':'dashboard.db','GJTft':'utf-8'};if(process['env'][_0xb24fbf(0x2dc)])return process[_0xb24fbf(0x26d)]['ENCRYPTION_KEY'];const _0x47d53f=a0_0x545c2e['join'](dataDir,KEY_FILENAME),_0x489749=a0_0x545c2e['join'](dataDir,_0x48eeb3[_0xb24fbf(0x289)]);if(a0_0x49ec87['existsSync'](_0x47d53f))try{const _0xa6be03=a0_0x49ec87['readFileSync'](_0x47d53f,_0x48eeb3['GJTft']),_0x3f5e72=_0xa6be03['split']('\x0a')[_0xb24fbf(0x293)](_0x4340d6=>!_0x4340d6['startsWith']('#'))[_0xb24fbf(0x1f1)]('')[_0xb24fbf(0x28e)]();if(_0x3f5e72[_0xb24fbf(0x2b5)]>=0x20)return _0x3f5e72;console[_0xb24fbf(0x2c0)]('[security]\x20Encryption\x20key\x20file\x20is\x20invalid\x20('+_0x3f5e72['length']+'\x20chars).\x20Regenerating.');}catch(_0x5efc57){console['error']('[security]\x20Failed\x20to\x20read\x20encryption\x20key\x20file:\x20'+_0x5efc57['message']);}if(!a0_0x49ec87[_0xb24fbf(0x224)](_0x489749))return generateAndWriteKeyFile(_0x47d53f);return LEGACY_DEFAULT_KEY;}function generateAndWriteKeyFile(_0x34eaeb){const _0x3f98f5=a0_0x584d,_0x59ce5c={'TWbEr':'#\x20Auto-generated\x20by\x20Colana.\x20Do\x20not\x20share\x20or\x20delete.','rBPnW':_0x3f98f5(0x255)},_0x4e2f0f=a0_0x394e4c['randomBytes'](0x20)['toString'](_0x3f98f5(0x204));try{const _0x31c8ea=a0_0x545c2e['dirname'](_0x34eaeb);if(!a0_0x49ec87[_0x3f98f5(0x224)](_0x31c8ea))a0_0x49ec87[_0x3f98f5(0x216)](_0x31c8ea,{'recursive':!![]});const _0x379b91=[_0x59ce5c[_0x3f98f5(0x214)],'#\x20Without\x20this\x20key,\x20all\x20encrypted\x20settings\x20(API\x20keys,\x20tokens)\x20are\x20unrecoverable.','#\x20Back\x20up\x20this\x20file\x20alongside\x20your\x20database.',_0x4e2f0f,'']['join']('\x0a');a0_0x49ec87['writeFileSync'](_0x34eaeb,_0x379b91,{'encoding':_0x59ce5c['rBPnW'],'mode':0x180}),console[_0x3f98f5(0x33a)](_0x3f98f5(0x306));}catch(_0xcd22ef){console['error'](_0x3f98f5(0x1de)+_0xcd22ef[_0x3f98f5(0x1fa)]),console[_0x3f98f5(0x2c0)]('[security]\x20Encryption\x20key\x20is\x20in-memory\x20only.\x20Restart\x20will\x20generate\x20a\x20new\x20key.');}return _0x4e2f0f;}function getReleaseChannel(){const _0x122978=a0_0x584d,_0x2eebd9={'DviPu':_0x122978(0x239),'FlVUy':_0x122978(0x272)};try{const _0x24680b=a0_0x545c2e['join'](__dirname,'..',_0x2eebd9[_0x122978(0x29d)]),_0x3bbe5a=JSON['parse'](a0_0x49ec87[_0x122978(0x20a)](_0x24680b,'utf-8')),_0x1d2624=_0x3bbe5a[_0x122978(0x315)]||'';if(_0x1d2624['includes'](_0x122978(0x2b9)))return _0x2eebd9[_0x122978(0x29e)];}catch{}return _0x122978(0x307);}var __dirname,dataDir,LEGACY_DEFAULT_KEY,KEY_FILENAME,config,config_default,init_config=__esm({'server/config.js'(){const _0x4d7ada=a0_0x584d,_0x2f61ba={'xYVZM':_0x4d7ada(0x329),'wcruB':_0x4d7ada(0x204),'xcWqx':function(_0xe87d9f,_0x4e8542){return _0xe87d9f(_0x4e8542);},'XQdsE':_0x4d7ada(0x32b),'PYmXK':_0x4d7ada(0x284),'AcaWG':'flag','ENEUa':'npm','YfIQo':'Codex\x20CLI','JbDSM':'gemini','LJFoQ':_0x4d7ada(0x22d),'dimoa':'npm\x20install\x20-g\x20@google/gemini-cli','OSsMV':'Free\x20or\x20paid\x20Google\x20account','BgxxB':_0x4d7ada(0x246),'ccuvC':'--resume','Yyphz':'Aider','zIpqk':'--restore-chat-history','nOXvn':'pip\x20install\x20aider-chat','EmgTL':'python3','kiztc':_0x4d7ada(0x27a),'qYxmA':'OpenClaw','nuCJd':_0x4d7ada(0x2a1),'JyaLl':function(_0x3fac51,_0x2f674c,_0x3918fa){return _0x3fac51(_0x2f674c,_0x3918fa);},'DzHUV':function(_0x56d345,_0x579225){return _0x56d345*_0x579225;},'QOouO':function(_0x613ea,_0x23c076){return _0x613ea*_0x23c076;},'QypYU':function(_0x4f26d9,_0x3b6d49,_0x2cfa95){return _0x4f26d9(_0x3b6d49,_0x2cfa95);},'noOHz':function(_0x4f6716,_0x6d310c,_0x468baa){return _0x4f6716(_0x6d310c,_0x468baa);},'kMRHp':function(_0x364959){return _0x364959();},'uMkyk':function(_0x9817e1,_0x2c5d13,_0x53652e){return _0x9817e1(_0x2c5d13,_0x53652e);},'SrZRX':function(_0x20476e,_0x2040c8,_0x54e251){return _0x20476e(_0x2040c8,_0x54e251);},'GBUhG':function(_0x6bc08,_0x5b82df){return _0x6bc08*_0x5b82df;},'ojHzZ':function(_0x22b050,_0x3a6a0d,_0x4ed165){return _0x22b050(_0x3a6a0d,_0x4ed165);},'DRgzZ':function(_0x163b12,_0x1add28){return _0x163b12*_0x1add28;},'mllSo':function(_0x25260f,_0x42b197,_0x113bfe){return _0x25260f(_0x42b197,_0x113bfe);},'bFAyd':_0x4d7ada(0x263),'Qzksh':'Write','UaHXY':_0x4d7ada(0x28b),'OqCcW':_0x4d7ada(0x2e4),'UqcUE':'WebFetch','gLkth':function(_0x37a3da,_0x2cc8db){return _0x37a3da*_0x2cc8db;},'BAqME':_0x4d7ada(0x339),'fqnUV':'--verbose','BrupA':'acceptEdits','QZKjl':_0x4d7ada(0x314),'cVMRZ':'Edit','ZBgty':_0x4d7ada(0x213),'GvHyD':function(_0x39b6b9,_0x303e43){return _0x39b6b9===_0x303e43;}};__dirname=a0_0x545c2e['dirname'](_0x2f61ba[_0x4d7ada(0x297)](fileURLToPath,import.meta.url)),dataDir=process[_0x4d7ada(0x26d)]['DATA_DIR']?a0_0x545c2e[_0x4d7ada(0x320)](process[_0x4d7ada(0x26d)]['DATA_DIR']):a0_0x545c2e[_0x4d7ada(0x1f1)](__dirname,'..',_0x4d7ada(0x2a4)),LEGACY_DEFAULT_KEY=_0x2f61ba[_0x4d7ada(0x2f3)],KEY_FILENAME=_0x4d7ada(0x260),config={'providers':{'claude':{'label':_0x2f61ba['PYmXK'],'binary':_0x4d7ada(0x340),'npmPackage':_0x4d7ada(0x2c5),'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x2f61ba[_0x4d7ada(0x2b8)],'resumeFlag':_0x4d7ada(0x220),'installCmd':'npm\x20install\x20-g\x20@anthropic-ai/claude-code','runtime':_0x2f61ba[_0x4d7ada(0x1d8)],'authNote':_0x4d7ada(0x1e1)},'codex':{'label':_0x2f61ba['YfIQo'],'binary':_0x4d7ada(0x219),'npmPackage':_0x4d7ada(0x29c),'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':'subcommand','resumeSubcmd':_0x4d7ada(0x1e6),'installCmd':_0x4d7ada(0x2f8),'runtime':_0x2f61ba['ENEUa'],'authNote':'OpenAI\x20API\x20key\x20(pay-per-use)'},'gemini':{'label':_0x4d7ada(0x1e7),'binary':_0x2f61ba[_0x4d7ada(0x338)],'npmPackage':_0x2f61ba['LJFoQ'],'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x4d7ada(0x206),'resumeFlag':'--resume','installCmd':_0x2f61ba[_0x4d7ada(0x2a5)],'runtime':_0x2f61ba[_0x4d7ada(0x1d8)],'authNote':_0x2f61ba['OSsMV'],'recommended':!![]},'copilot':{'label':_0x2f61ba['BgxxB'],'binary':_0x4d7ada(0x26b),'fallbackBinary':'gh','fallbackBinaryArgs':['copilot'],'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x2f61ba['AcaWG'],'resumeFlag':_0x2f61ba['ccuvC'],'installCmd':_0x4d7ada(0x25a),'installFallbackCmd':'gh\x20extension\x20install\x20github/gh-copilot','runtime':'npm','authNote':_0x4d7ada(0x2f1)},'aider':{'label':_0x2f61ba['Yyphz'],'binary':_0x4d7ada(0x312),'models':[],'supportsResume':!![],'supportsPty':!![],'supportsInteractive':!![],'resumeStyle':_0x2f61ba[_0x4d7ada(0x2b8)],'resumeFlag':_0x2f61ba[_0x4d7ada(0x31e)],'noSessionId':!![],'installCmd':'pipx\x20install\x20aider-chat','installFallbackCmd':_0x2f61ba['nOXvn'],'installPrereq':_0x2f61ba[_0x4d7ada(0x273)],'runtime':_0x2f61ba['kiztc'],'authNote':'LLM\x20API\x20key\x20required'},'openclaw':{'label':_0x2f61ba[_0x4d7ada(0x32a)],'binary':'openclaw','models':[],'supportsResume':![],'supportsPty':!![],'supportsInteractive':!![],'supportsHeadless':![],'installCmd':_0x4d7ada(0x33b),'runtime':'npm','authNote':_0x2f61ba['nuCJd'],'gatewayPort':0x4965,'isPersonal':!![]}},'defaultModel':process[_0x4d7ada(0x26d)]['DEFAULT_MODEL']||null,'polar':{'organizationId':process['env'][_0x4d7ada(0x233)]||'','accessToken':process['env']['POLAR_ACCESS_TOKEN']||'','productId':process[_0x4d7ada(0x26d)]['POLAR_PRODUCT_ID']||'','checkoutUrl':process[_0x4d7ada(0x26d)][_0x4d7ada(0x230)]||_0x4d7ada(0x300),'customerPortalUrl':process[_0x4d7ada(0x26d)]['POLAR_CUSTOMER_PORTAL_URL']||'','webhookSecret':process['env']['POLAR_WEBHOOK_SECRET']||'','apiUrl':process['env'][_0x4d7ada(0x2f7)]||'https://api.polar.sh/v1','blueprintCloudUrl':process['env']['BLUEPRINT_CLOUD_URL']||'https://colana.ai','cacheTtlMs':_0x2f61ba['JyaLl'](envInt,process['env']['LICENSE_CACHE_TTL_MS'],_0x2f61ba['DzHUV'](_0x2f61ba[_0x4d7ada(0x309)](0x7,0x18)*0x3c,0x3c)*0x3e8),'revalidationIntervalMs':_0x2f61ba['QypYU'](envInt,process[_0x4d7ada(0x26d)]['LICENSE_REVALIDATION_INTERVAL_MS'],0x6*0x3c*0x3c*0x3e8),'staffKeys':(process['env']['STAFF_KEYS']||'')[_0x4d7ada(0x2d9)](',')['map'](_0x400e78=>_0x400e78[_0x4d7ada(0x28e)]())[_0x4d7ada(0x293)](Boolean),'adminKeys':(process[_0x4d7ada(0x26d)]['ADMIN_KEYS']||'')['split'](',')['map'](_0x30c5b3=>_0x30c5b3[_0x4d7ada(0x28e)]())['filter'](Boolean)},'freeMaxSessions':_0x2f61ba['noOHz'](envInt,process[_0x4d7ada(0x26d)][_0x4d7ada(0x1f7)],0x2),'dataDir':dataDir,'dbFilename':process['env'][_0x4d7ada(0x217)]||_0x4d7ada(0x279),'homePath':a0_0x277bc5[_0x4d7ada(0x2b3)](),'startPort':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x201)],0x2694),'maxPortAttempts':_0x2f61ba['JyaLl'](envInt,process[_0x4d7ada(0x26d)]['MAX_PORT_ATTEMPTS'],0x64),'bindAddress':process['env'][_0x4d7ada(0x24f)]||'127.0.0.1','encryptionKey':_0x2f61ba['kMRHp'](resolveEncryptionKey),'encryptionKeyIsLegacyDefault':![],'defaultEditorCommand':_0x4d7ada(0x342),'permissionTimeoutMs':_0x2f61ba[_0x4d7ada(0x212)](envInt,process['env'][_0x4d7ada(0x27c)],0x1d4c0),'permissionClientMs':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x1f6)],0x249f0),'agentGracePeriodMs':_0x2f61ba['QypYU'](envInt,process['env'][_0x4d7ada(0x327)],0x1388),'shutdownTimeoutMs':envInt(process['env']['SHUTDOWN_TIMEOUT_MS'],0x2710),'defaultLogLimit':_0x2f61ba['SrZRX'](envInt,process[_0x4d7ada(0x26d)]['DEFAULT_LOG_LIMIT'],0x3e8),'defaultSessionLimit':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x2b7)],0x14),'gitDiffMaxBuffer':envInt(process['env'][_0x4d7ada(0x2ab)],_0x2f61ba[_0x4d7ada(0x27d)](0xa*0x400,0x400)),'toolResultPreviewLen':_0x2f61ba['noOHz'](envInt,process[_0x4d7ada(0x26d)][_0x4d7ada(0x2ff)],0x1f4),'maxResumableSessions':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x337)],0x5),'updateCheckIntervalMs':_0x2f61ba['ojHzZ'](envInt,process['env']['UPDATE_CHECK_INTERVAL_MS'],_0x2f61ba[_0x4d7ada(0x309)](0x6*0x3c,0x3c)*0x3e8),'logRetentionDays':envInt(process['env']['LOG_RETENTION_DAYS'],0x0),'logRetentionIntervalMs':_0x2f61ba[_0x4d7ada(0x251)](envInt,process[_0x4d7ada(0x26d)]['LOG_RETENTION_INTERVAL_MS'],_0x2f61ba['DRgzZ'](0x18,0x3c)*0x3c*0x3e8),'logRetentionBatchSize':_0x2f61ba['mllSo'](envInt,process[_0x4d7ada(0x26d)][_0x4d7ada(0x210)],0x7d0),'logRetentionMaxBatches':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x2ae)],0xa),'logArchiveMode':(process['env'][_0x4d7ada(0x1db)]||'db')[_0x4d7ada(0x311)](),'allowedTools':[_0x2f61ba[_0x4d7ada(0x20d)],'Edit',_0x2f61ba[_0x4d7ada(0x2a7)],_0x2f61ba['UaHXY'],'Grep',_0x2f61ba[_0x4d7ada(0x317)],_0x4d7ada(0x213),_0x2f61ba['UqcUE']],'maxTurnsOptions':[0x0,0xa,0x19,0x32,0x64],'fontSizes':[0xc,0xe,0x10,0x12],'ptyBufferSize':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x334)],_0x2f61ba[_0x4d7ada(0x347)](0x100,0x400)),'ptyDefaultCols':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x275)],0x78),'ptyDefaultRows':envInt(process['env'][_0x4d7ada(0x302)],0x1e),'worktreesDir':a0_0x545c2e[_0x4d7ada(0x1f1)](dataDir,_0x4d7ada(0x252)),'worktreeMaxPerProject':0xa,'worktreeStaleAfterDays':0x4,'worktreeCleanupIntervalMs':_0x2f61ba['gLkth'](_0x2f61ba[_0x4d7ada(0x347)](0x18*0x3c,0x3c),0x3e8),'worktreeGitTimeoutMs':0x7530,'worktreeGitQuickTimeoutMs':0x1388,'cliFlags':['--print','--output-format',_0x4d7ada(0x32d),_0x2f61ba['BAqME'],'stream-json','--include-partial-messages',_0x2f61ba['fqnUV']],'permissionToolName':'mcp__dashboard_permissions__permission_prompt','permissionModes':['default',_0x4d7ada(0x23a),_0x4d7ada(0x27b),_0x4d7ada(0x314),_0x4d7ada(0x22f),'delegate'],'contextWindows':{'opus':0x30d40,'sonnet':0x30d40,'haiku':0x30d40,'claude-opus-4-6-20260214':0x30d40,'claude-opus-4-5-20251101':0x30d40,'claude-sonnet-4-5-20250929':0x30d40,'claude-sonnet-4-20250514':0x30d40,'claude-3-5-sonnet-20241022':0x30d40,'claude-3-5-haiku-20241022':0x30d40,'default':0x30d40},'client':{'wsReconnectBaseMs':0x3e8,'wsReconnectMaxMs':0x7530,'toastDurationMs':0xfa0,'toolOutputTruncation':0x12c,'taskPreviewLen':0x23,'terminalTaskLen':0x32,'popoutWidth':0x320,'popoutHeight':0x258,'maxResumableSessions':envInt(process[_0x4d7ada(0x26d)][_0x4d7ada(0x337)],0x5),'permissionModes':[_0x4d7ada(0x203),_0x2f61ba['BrupA'],_0x4d7ada(0x27b),_0x2f61ba['QZKjl'],_0x4d7ada(0x22f),'delegate'],'defaultContextWindow':0x30d40,'contextWindows':{'opus':0x30d40,'sonnet':0x30d40,'haiku':0x30d40,'claude-opus-4-6-20260214':0x30d40,'claude-opus-4-5-20251101':0x30d40,'claude-sonnet-4-5-20250929':0x30d40,'claude-sonnet-4-20250514':0x30d40,'claude-3-5-sonnet-20241022':0x30d40,'claude-3-5-haiku-20241022':0x30d40,'default':0x30d40},'allowedTools':['Read',_0x2f61ba['cVMRZ'],'Write',_0x2f61ba['UaHXY'],_0x4d7ada(0x20c),'Bash',_0x2f61ba[_0x4d7ada(0x2d5)],_0x2f61ba[_0x4d7ada(0x1f0)]],'maxTurnsOptions':[0x0,0xa,0x19,0x32,0x64],'fontSizes':[0xc,0xe,0x10,0x12]}},config['encryptionKeyIsLegacyDefault']=_0x2f61ba['GvHyD'](config[_0x4d7ada(0x24d)],LEGACY_DEFAULT_KEY),config[_0x4d7ada(0x295)]=LEGACY_DEFAULT_KEY,config[_0x4d7ada(0x2c3)]=KEY_FILENAME,config['deriveGogKeyringPassword']=function(){const _0x55b1a6=_0x4d7ada;return a0_0x394e4c[_0x55b1a6(0x296)](_0x2f61ba['xYVZM'])[_0x55b1a6(0x208)](_0x55b1a6(0x2fd)+config[_0x55b1a6(0x24d)])[_0x55b1a6(0x1fc)](_0x2f61ba['wcruB'])['slice'](0x0,0x20);},config['releaseChannel']=getReleaseChannel(),config[_0x4d7ada(0x2b6)][_0x4d7ada(0x245)]=Object[_0x4d7ada(0x265)](Object['entries'](config[_0x4d7ada(0x245)])[_0x4d7ada(0x305)](([_0x2261a8,_0x3949f9])=>[_0x2261a8,{'label':_0x3949f9[_0x4d7ada(0x29f)],'models':_0x3949f9[_0x4d7ada(0x33c)],'supportsResume':_0x3949f9['supportsResume'],'supportsPty':_0x3949f9[_0x4d7ada(0x32c)],'supportsInteractive':_0x3949f9[_0x4d7ada(0x2e1)],'supportsHeadless':_0x3949f9[_0x4d7ada(0x31f)]!==![],'runtime':_0x3949f9[_0x4d7ada(0x269)],'authNote':_0x3949f9['authNote'],'recommended':_0x3949f9['recommended']||![],'isPersonal':_0x3949f9['isPersonal']||![]}])),config_default=config;}}),db_exports={};__export(db_exports,{'checkDbIntegrity':()=>checkDbIntegrity,'closeDb':()=>closeDb,'default':()=>db_default,'getDb':()=>getDb,'getSchemaVersion':()=>getSchemaVersion,'queryAll':()=>queryAll,'queryOne':()=>queryOne,'run':()=>run,'runImmediate':()=>runImmediate,'save':()=>save});import a0_0x26ed77 from'sql.js';import a0_0xb17799 from'path';import a0_0x3a46e5 from'fs';function saveDatabaseNow(){const _0xbfe7be=a0_0x584d;if(db){const _0xdf04ba=db[_0xbfe7be(0x1ef)](),_0x171f48=Buffer[_0xbfe7be(0x323)](_0xdf04ba);a0_0x3a46e5['writeFileSync'](DB_PATH,_0x171f48);}}function saveDatabase(){if(_saveTimer)return;_saveTimer=setTimeout(()=>{_saveTimer=null,saveDatabaseNow();},0x3e8);}async function initializeDatabase(){const _0x1b0a45=a0_0x584d,_0x433e97={'lDqOU':'PRAGMA\x20foreign_keys\x20=\x20ON','IhphA':function(_0x29a4d2){return _0x29a4d2();},'etimC':_0x1b0a45(0x285),'tFAIc':'Edit','XhKKP':_0x1b0a45(0x20c),'AJaTK':_0x1b0a45(0x342)};!a0_0x3a46e5['existsSync'](DATA_DIR)&&a0_0x3a46e5[_0x1b0a45(0x216)](DATA_DIR,{'recursive':!![]});SQL=await a0_0x26ed77();if(a0_0x3a46e5[_0x1b0a45(0x224)](DB_PATH)){const _0x10582a=a0_0x3a46e5[_0x1b0a45(0x20a)](DB_PATH);db=new SQL[(_0x1b0a45(0x236))](_0x10582a);}else db=new SQL['Database']();db[_0x1b0a45(0x2b0)](_0x433e97['lDqOU']),db['run']('\x0a\x20\x20\x20\x20--\x20Projects\x20table\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20projects\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20path\x20TEXT\x20NOT\x20NULL\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20description\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run']('\x0a\x20\x20\x20\x20--\x20Sessions\x20table\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20sessions\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20claude_session_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20task\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27starting\x27,\x0a\x20\x20\x20\x20\x20\x20model\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20started_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20ended_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20parent_session_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE,\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(parent_session_id)\x20REFERENCES\x20sessions(id)\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run'](_0x1b0a45(0x290)),db[_0x1b0a45(0x2b0)]('\x0a\x20\x20\x20\x20--\x20Usage\x20table\x20(token/cost\x20tracking)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20usage\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cost_estimate\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20recorded_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run'](_0x1b0a45(0x254)),db[_0x1b0a45(0x2b0)]('\x0a\x20\x20\x20\x20--\x20Settings\x20table\x20(key-value\x20store)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20settings\x20(\x0a\x20\x20\x20\x20\x20\x20key\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20value\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20'),db['run'](_0x1b0a45(0x21e)),db['run'](_0x1b0a45(0x2ec)),db['run'](_0x1b0a45(0x248)),db['run'](_0x1b0a45(0x22e)),db[_0x1b0a45(0x2b0)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_session_id\x20ON\x20logs(session_id)'),db['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_usage_session_id\x20ON\x20usage(session_id)');try{db['run'](_0x1b0a45(0x2bf));}catch(_0x380d82){}try{db[_0x1b0a45(0x2b0)]('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20duration_ms\x20INTEGER');}catch(_0x154630){}try{db['run'](_0x1b0a45(0x2f4));}catch(_0x240afe){}try{db[_0x1b0a45(0x2b0)]('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20total_cost_usd\x20REAL');}catch(_0x15b39e){}try{db[_0x1b0a45(0x2b0)](_0x1b0a45(0x1fe));}catch(_0x4a04b4){}try{db[_0x1b0a45(0x2b0)]('ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20provider\x20TEXT\x20DEFAULT\x20\x27claude\x27');}catch(_0x34f94d){}db[_0x1b0a45(0x2b0)]('\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20schema_version\x20(\x0a\x20\x20\x20\x20\x20\x20version\x20INTEGER\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20applied_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20)\x0a\x20\x20');const _0x22762a=db[_0x1b0a45(0x21f)]('SELECT\x20COUNT(*)\x20as\x20cnt\x20FROM\x20schema_version'),_0x1f4832=_0x22762a['length']>0x0?_0x22762a[0x0]['values'][0x0][0x0]:0x0;_0x1f4832===0x0&&db[_0x1b0a45(0x2b0)]('INSERT\x20INTO\x20schema_version\x20(version)\x20VALUES\x20(?)',[0x1]);_0x433e97[_0x1b0a45(0x2cd)](runMigrations);const _0x14e0b2=[[_0x1b0a45(0x2e0),'subscription'],[_0x1b0a45(0x30e),_0x1b0a45(0x1d5)],[_0x1b0a45(0x2a0),config_default['defaultModel']],['theme','dark'],[_0x433e97['etimC'],JSON[_0x1b0a45(0x28a)](['Read',_0x433e97[_0x1b0a45(0x278)],_0x1b0a45(0x227),'Glob',_0x433e97['XhKKP']])],['max_turns','0'],[_0x1b0a45(0x2d2),'14'],['editor_command',_0x433e97[_0x1b0a45(0x304)]],[_0x1b0a45(0x226),'true']];for(const [_0x33c1b7,_0x49e30d]of _0x14e0b2){db['run'](_0x1b0a45(0x24c),[_0x33c1b7,_0x49e30d]);}return saveDatabaseNow(),console[_0x1b0a45(0x33a)](_0x1b0a45(0x2fa),DB_PATH),db;}function isFtsMissingError(_0x709102){const _0x180c1c=a0_0x584d,_0x363641={'HUNRv':_0x180c1c(0x2cf),'jsYav':_0x180c1c(0x2d7)};if(!_0x709102)return![];const _0x50df75=String(_0x709102['message']||_0x709102);return _0x50df75['includes'](_0x180c1c(0x1f8))||_0x50df75[_0x180c1c(0x267)](_0x363641[_0x180c1c(0x32e)])||_0x50df75['includes']('fts5')||_0x50df75[_0x180c1c(0x267)](_0x363641[_0x180c1c(0x277)]);}function createLogsFts(_0x2e5f4d,_0x258638){const _0x390752=a0_0x584d;_0x2e5f4d[_0x390752(0x2b0)](_0x390752(0x2fb)+_0x258638+'(\x0a\x20\x20\x20\x20\x20\x20content,\x0a\x20\x20\x20\x20\x20\x20session_id\x20UNINDEXED,\x0a\x20\x20\x20\x20\x20\x20content=\x27logs\x27\x0a\x20\x20\x20\x20)\x0a\x20\x20'),_0x2e5f4d['run']('\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_ai\x20AFTER\x20INSERT\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(new.id,\x20new.content,\x20new.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20'),_0x2e5f4d['run'](_0x390752(0x321)),_0x2e5f4d['run'](_0x390752(0x2c4)),_0x2e5f4d[_0x390752(0x2b0)]('INSERT\x20INTO\x20logs_fts(logs_fts)\x20VALUES(\x27rebuild\x27)');}function setupLogsFts(_0x526713){const _0x8600ca=a0_0x584d,_0x3a3b55={'RMNqT':function(_0xa1d304,_0x5ff3a4,_0x5f311e){return _0xa1d304(_0x5ff3a4,_0x5f311e);},'ZpCQt':'[db]\x20FTS\x20unavailable;\x20log\x20search\x20will\x20fall\x20back\x20to\x20LIKE.'};try{createLogsFts(_0x526713,_0x8600ca(0x1ec));return;}catch(_0x4ffd42){if(!isFtsMissingError(_0x4ffd42))throw _0x4ffd42;}try{_0x3a3b55['RMNqT'](createLogsFts,_0x526713,'fts4');return;}catch(_0x21cd47){if(!isFtsMissingError(_0x21cd47))throw _0x21cd47;}console[_0x8600ca(0x268)](_0x3a3b55['ZpCQt']);}function runMigrations(){const _0x42aaef=a0_0x584d,_0x2d71ca={'isfOM':function(_0x1075f9,_0xc8f273){return _0x1075f9>_0xc8f273;},'BjebT':function(_0x5157b8,_0x493b9e){return _0x5157b8>_0x493b9e;},'FijkQ':function(_0x4170e7,_0x1fa97a){return _0x4170e7===_0x1fa97a;},'UlEtY':'INSERT\x20INTO\x20schema_version\x20(version)\x20VALUES\x20(?)'},_0x2cc276=db[_0x42aaef(0x21f)](_0x42aaef(0x29b)),_0x4f4a9c=_0x2d71ca[_0x42aaef(0x231)](_0x2cc276['length'],0x0)&&_0x2cc276[0x0]['values'][0x0][0x0]!=null?_0x2cc276[0x0]['values'][0x0][0x0]:0x0;for(const _0x444c06 of migrations){if(_0x2d71ca['BjebT'](_0x444c06['version'],_0x4f4a9c))try{_0x2d71ca[_0x42aaef(0x1ed)](typeof _0x444c06['up'],'function')?_0x444c06['up'](db):db[_0x42aaef(0x2b0)](_0x444c06['sql']),db['run'](_0x2d71ca['UlEtY'],[_0x444c06['version']]),console['log']('[db]\x20Applied\x20migration\x20v'+_0x444c06['version']);}catch(_0x341e03){console[_0x42aaef(0x2c0)]('[db]\x20FATAL:\x20Migration\x20v'+_0x444c06[_0x42aaef(0x315)]+'\x20failed:\x20'+_0x341e03[_0x42aaef(0x1fa)]),console['error'](_0x42aaef(0x258));throw _0x341e03;}}}function checkDbIntegrity(){const _0x3b0a78=a0_0x584d,_0x18491d={'XpqUn':_0x3b0a78(0x30c)};if(!db)return{'ok':![],'detail':_0x3b0a78(0x2a6)};try{const _0x4db3b9=db['exec']('PRAGMA\x20integrity_check'),_0x4de889=_0x4db3b9['length']>0x0?_0x4db3b9[0x0]['values'][0x0][0x0]:_0x18491d['XpqUn'];return{'ok':_0x4de889==='ok','detail':String(_0x4de889)};}catch(_0x140cd1){return{'ok':![],'detail':_0x140cd1[_0x3b0a78(0x1fa)]};}}function getSchemaVersion(){const _0x1d2ee0=a0_0x584d;if(!db)return 0x0;const _0x552f67=db['exec'](_0x1d2ee0(0x29b));return _0x552f67['length']>0x0&&_0x552f67[0x0][_0x1d2ee0(0x2fc)][0x0][0x0]!=null?_0x552f67[0x0][_0x1d2ee0(0x2fc)][0x0][0x0]:0x0;}async function getDb(){return!db&&await initializeDatabase(),db;}function closeDb(){const _0x16efda=a0_0x584d,_0x31088d={'TUXqI':function(_0x258a93,_0x3166d4){return _0x258a93(_0x3166d4);}};if(db){const _0x3d3ae7='3|4|0|1|2'[_0x16efda(0x2d9)]('|');let _0x485530=0x0;while(!![]){switch(_0x3d3ae7[_0x485530++]){case'0':db[_0x16efda(0x25b)]();continue;case'1':db=null;continue;case'2':console['log']('Database\x20connection\x20closed');continue;case'3':_saveTimer&&(_0x31088d['TUXqI'](clearTimeout,_saveTimer),_saveTimer=null);continue;case'4':saveDatabaseNow();continue;}break;}}}function save(){_saveTimer&&(clearTimeout(_saveTimer),_saveTimer=null),saveDatabaseNow();}function queryAll(_0x15b458,_0xd429cf=[]){const _0x289087=a0_0x584d;if(!db)throw new Error(_0x289087(0x2be));const _0x17c01b=db['prepare'](_0x15b458);_0xd429cf[_0x289087(0x2b5)]>0x0&&_0x17c01b[_0x289087(0x318)](_0xd429cf);const _0x51efdb=[];while(_0x17c01b['step']()){_0x51efdb[_0x289087(0x21b)](_0x17c01b[_0x289087(0x1f2)]());}return _0x17c01b['free'](),_0x51efdb;}function queryOne(_0x3a1718,_0x4aa1c1=[]){const _0x372d78=a0_0x584d,_0x489468={'pAuTd':function(_0x4747ec,_0x13ac6a,_0x1329af){return _0x4747ec(_0x13ac6a,_0x1329af);},'LRQaY':function(_0x24ed7f,_0x2315c6){return _0x24ed7f>_0x2315c6;}},_0x27912e=_0x489468['pAuTd'](queryAll,_0x3a1718,_0x4aa1c1);return _0x489468['LRQaY'](_0x27912e[_0x372d78(0x2b5)],0x0)?_0x27912e[0x0]:null;}function run(_0x289e06,_0xfefe02=[]){const _0x51f0c9=a0_0x584d;if(!db)throw new Error(_0x51f0c9(0x2be));db[_0x51f0c9(0x2b0)](_0x289e06,_0xfefe02),saveDatabase();}function runImmediate(_0x415f63,_0x2b1536=[]){const _0x27433a=a0_0x584d,_0x174580={'VRHtu':'Database\x20not\x20initialized.\x20Call\x20initializeDatabase()\x20first.'};if(!db)throw new Error(_0x174580[_0x27433a(0x2f5)]);db['run'](_0x415f63,_0x2b1536),save();}var DATA_DIR,DB_PATH,db,SQL,_saveTimer,migrations,db_default,init_db=__esm({'server/db.js'(){const _0x4073f2=a0_0x584d,_0x500575={'tIiay':'ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20auth_mode\x20TEXT\x20DEFAULT\x20NULL','jDNKJ':'ALTER\x20TABLE\x20usage\x20ADD\x20COLUMN\x20model\x20TEXT\x20DEFAULT\x20NULL','OxyXD':'ALTER\x20TABLE\x20usage\x20ADD\x20COLUMN\x20cost_source\x20TEXT\x20DEFAULT\x20\x27estimated\x27','pqJnh':'ALTER\x20TABLE\x20projects\x20ADD\x20COLUMN\x20permission_preset\x20TEXT\x20DEFAULT\x20\x27default\x27','bhVGB':_0x4073f2(0x225),'KFESw':'UPDATE\x20sessions\x20SET\x20provider_session_id\x20=\x20claude_session_id\x20WHERE\x20provider\x20=\x20\x27claude\x27\x20AND\x20claude_session_id\x20IS\x20NOT\x20NULL\x20AND\x20provider_session_id\x20IS\x20NULL','heLzA':_0x4073f2(0x256),'JyPwe':_0x4073f2(0x20b),'JJBsw':_0x4073f2(0x1dd),'wgkhY':_0x4073f2(0x2fe),'GiEjE':_0x4073f2(0x1ff),'GcwGX':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_snapshots_type_period\x20ON\x20analytics_snapshots(snapshot_type,\x20period_start)','lZnyC':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_created\x20ON\x20analytics_events(created_at)','kbGKK':'CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_pcm_role\x20ON\x20personal_chat_messages(role)','FiqVg':_0x4073f2(0x1e2)};init_config(),DATA_DIR=config_default[_0x4073f2(0x2e7)],DB_PATH=a0_0xb17799['join'](DATA_DIR,config_default[_0x4073f2(0x240)]),db=null,SQL=null,_saveTimer=null,migrations=[{'version':0x2,'up':_0x32589d=>{const _0x550c93=_0x4073f2;_0x32589d['run'](_0x500575['tIiay']),_0x32589d['run'](_0x500575['jDNKJ']),_0x32589d[_0x550c93(0x2b0)](_0x500575[_0x550c93(0x2bb)]);}},{'version':0x3,'up':_0x410037=>{const _0x403a9f=_0x4073f2;_0x410037[_0x403a9f(0x2b0)](_0x403a9f(0x2ed));}},{'version':0x4,'up':_0x18b83a=>{const _0x3b3252=_0x4073f2;_0x18b83a[_0x3b3252(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20audit_log\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20action\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20target\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20actor\x20TEXT\x20DEFAULT\x20\x27admin\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20details\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x18b83a['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_audit_log_action\x20ON\x20audit_log(action)'),_0x18b83a[_0x3b3252(0x2b0)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_audit_log_created\x20ON\x20audit_log(created_at)');}},{'version':0x5,'up':_0x29b958=>{const _0x30b57b=_0x4073f2;try{_0x29b958['run'](_0x30b57b(0x343));}catch(_0x506f26){}}},{'version':0x6,'up':_0x5091d0=>{try{_0x5091d0['run'](_0x500575['pqJnh']);}catch(_0x8bf0c9){}}},{'version':0x7,'up':_0x2dcb5b=>{const _0x352f50=_0x4073f2;try{_0x2dcb5b['run'](_0x352f50(0x234));}catch(_0x4866bf){}try{_0x2dcb5b['run'](_0x352f50(0x243));}catch(_0x38d03e){}}},{'version':0x8,'up':_0x8157b7=>{const _0x30aab3=_0x4073f2;_0x8157b7[_0x30aab3(0x2b0)](_0x30aab3(0x303)),_0x8157b7[_0x30aab3(0x2b0)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_checkpoints_session\x20ON\x20session_checkpoints(session_id)');}},{'version':0x9,'up':_0x112c2d=>{const _0x15e4ce=_0x4073f2;try{_0x112c2d[_0x15e4ce(0x2b0)](_0x500575[_0x15e4ce(0x294)]);}catch(_0x1211b5){}_0x112c2d['run'](_0x500575[_0x15e4ce(0x26e)]),_0x112c2d['run'](_0x500575['heLzA']);}},{'version':0xa,'up':_0x996133=>{const _0x489651=_0x4073f2;_0x996133[_0x489651(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20wizard_sessions\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20scan_results\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20selected_providers\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20install_results\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20INTEGER\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20completed_at\x20INTEGER\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x996133['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_wizard_sessions_status\x20ON\x20wizard_sessions(status)');}},{'version':0xb,'up':_0x382ecf=>{const _0x16711a=_0x4073f2;try{_0x382ecf['run'](_0x500575['JyPwe']);}catch(_0x278e2c){}try{_0x382ecf['run'](_0x16711a(0x341));}catch(_0x40f4cc){}try{_0x382ecf['run']('ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20permission_mode\x20TEXT\x20DEFAULT\x20\x27default\x27');}catch(_0x29f038){}try{_0x382ecf['run'](_0x16711a(0x2da));}catch(_0x3b345c){}}},{'version':0xc,'up':_0x20a0e4=>{const _0x5d805b=_0x4073f2;_0x20a0e4['run'](_0x500575[_0x5d805b(0x310)]);}},{'version':0xd,'up':_0x3cabb1=>{const _0x38f80e=_0x4073f2;_0x3cabb1[_0x38f80e(0x2b0)](_0x38f80e(0x283)),_0x3cabb1[_0x38f80e(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20INSERT\x20OR\x20REPLACE\x20INTO\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20input_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20output_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_read_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_write_tokens,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20total_cost,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cli_cost,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20models_used,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20\x20\x20SELECT\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(input_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(output_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cache_read_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cache_write_tokens),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(cost_estimate),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20COALESCE(SUM(CASE\x20WHEN\x20cost_source\x20IN\x20(\x27cli_reported\x27,\x27terminal_parsed\x27)\x20THEN\x20cost_estimate\x20ELSE\x200\x20END),\x200),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20GROUP_CONCAT(DISTINCT\x20model),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20datetime(\x27now\x27)\x0a\x20\x20\x20\x20\x20\x20\x20\x20FROM\x20usage\x0a\x20\x20\x20\x20\x20\x20\x20\x20GROUP\x20BY\x20session_id\x0a\x20\x20\x20\x20\x20\x20');}},{'version':0xe,'up':_0x23e167=>{setupLogsFts(_0x23e167);}},{'version':0xf,'up':_0x445533=>{const _0x2070e3=_0x4073f2;_0x445533['run']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs_archive\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20timestamp\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20archived_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x445533['run'](_0x2070e3(0x2bc)),_0x445533[_0x2070e3(0x2b0)]('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_archive_timestamp\x20ON\x20logs_archive(timestamp)');}},{'version':0x10,'up':_0x3c4f37=>{const _0x3525ac=_0x4073f2;_0x3c4f37['run'](_0x3525ac(0x31c)),_0x3c4f37[_0x3525ac(0x2b0)](_0x500575[_0x3525ac(0x26a)]),_0x3c4f37[_0x3525ac(0x2b0)](_0x3525ac(0x330));}},{'version':0x11,'up':_0x4d2918=>{const _0x4c9f09=_0x4073f2;_0x4d2918[_0x4c9f09(0x2b0)]('ALTER\x20TABLE\x20projects\x20ADD\x20COLUMN\x20is_personal\x20INTEGER\x20NOT\x20NULL\x20DEFAULT\x200'),_0x4d2918[_0x4c9f09(0x2b0)](_0x4c9f09(0x241)),_0x4d2918[_0x4c9f09(0x2b0)]('UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20description\x20=\x20\x27Virtual\x20project\x20for\x20non-coding\x20agents\x20(OpenClaw,\x20etc.)\x27');}},{'version':0x12,'up':_0xc1220f=>{_0xc1220f['run']('UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20name\x20=\x20\x27Personal\x27\x20AND\x20is_personal\x20=\x200');}},{'version':0x13,'up':_0x5ed50d=>{const _0x1bc32c=_0x4073f2,_0x1e482b=[_0x1bc32c(0x232),'ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_path\x20TEXT','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_branch\x20TEXT','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_pinned\x20INTEGER\x20DEFAULT\x200',_0x1bc32c(0x2a2)];for(const _0x102b21 of _0x1e482b){try{_0x5ed50d[_0x1bc32c(0x2b0)](_0x102b21);}catch(_0x3c54db){}}}},{'version':0x14,'up':_0x262823=>{const _0x878cb2=_0x4073f2,_0x304878=_0x500575[_0x878cb2(0x202)][_0x878cb2(0x2d9)]('|');let _0x6b69e7=0x0;while(!![]){switch(_0x304878[_0x6b69e7++]){case'0':_0x262823['run']('CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_category\x20ON\x20analytics_events(event_category)');continue;case'1':_0x262823['run'](_0x500575[_0x878cb2(0x237)]);continue;case'2':_0x262823['run'](_0x878cb2(0x2de));continue;case'3':_0x262823[_0x878cb2(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20analytics_events\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20event_type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20event_category\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20properties\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20');continue;case'4':_0x262823[_0x878cb2(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20analytics_snapshots\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20snapshot_type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20period_start\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20period_end\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20metrics\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20');continue;case'5':_0x262823[_0x878cb2(0x2b0)](_0x500575[_0x878cb2(0x257)]);continue;}break;}}},{'version':0x15,'up':_0x41a068=>{const _0x563ae5=_0x4073f2;_0x41a068['run']('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20personal_chat_messages\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20role\x20TEXT\x20NOT\x20NULL\x20CHECK(role\x20IN\x20(\x27user\x27,\x20\x27assistant\x27,\x20\x27notification\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27chat\x27\x20CHECK(source\x20IN\x20(\x27chat\x27,\x20\x27notification\x27,\x20\x27terminal\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20metadata\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27))\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x41a068[_0x563ae5(0x2b0)](_0x563ae5(0x247)),_0x41a068[_0x563ae5(0x2b0)](_0x500575['kbGKK']);}},{'version':0x16,'up':_0x42d07a=>{const _0x26cf08=_0x4073f2;_0x42d07a[_0x26cf08(0x2b0)]('\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20project_blueprints\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20blueprint_version\x20INTEGER\x20DEFAULT\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source_type\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27file\x27\x20CHECK(source_type\x20IN\x20(\x27file\x27,\x20\x27url\x27,\x20\x27cloud\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20source_url\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20original_json\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20variables_encrypted\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20applied_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20last_checked_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20last_updated_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20'),_0x42d07a['run'](_0x500575[_0x26cf08(0x2b4)]);}}],db_default={'getDb':getDb,'closeDb':closeDb,'save':save,'queryAll':queryAll,'queryOne':queryOne,'run':run,'runImmediate':runImmediate,'checkDbIntegrity':checkDbIntegrity,'getSchemaVersion':getSchemaVersion};}}),key_manager_exports={};__export(key_manager_exports,{'exportKeysCSV':()=>exportKeysCSV,'generateKey':()=>generateKey,'getKeyStats':()=>getKeyStats,'listKeys':()=>listKeys,'revokeKey':()=>revokeKey,'validateKey':()=>validateKey});function a0_0x1d1c(){const _0x47e6c1=['CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_pcm_created\x20ON\x20personal_chat_messages(created_at)','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_project_id\x20ON\x20sessions(project_id)','--name\x20\x22Name\x22','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Run\x20system\x20diagnostics\x0a\x20\x20\x20\x20','****','INSERT\x20OR\x20IGNORE\x20INTO\x20settings\x20(key,\x20value)\x20VALUES\x20(?,\x20?)','encryptionKey','/api/admin/keys','BIND_ADDRESS','yJRRO','SrZRX','worktrees','json','\x0a\x20\x20\x20\x20--\x20Session\x20usage\x20summary\x20table\x20(pre-aggregated\x20for\x20session\x20list)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20total_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20cli_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20models_used\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','utf-8','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_provider_session_id\x20ON\x20sessions(provider_session_id)','lZnyC','[db]\x20Database\x20may\x20be\x20in\x20an\x20inconsistent\x20state.\x20Contact\x20support.','colana\x20admin\x20doctor','gh\x20copilot\x20--version','close','padEnd','nRKnJ','YUHXW','\x20\x20\x20\x20\x20\x20\x20\x20Revoke\x20a\x20DB-stored\x20license\x20key\x0a\x0a\x20\x20','encryption.key','kqIgv','aznsP','Read','Type:','fromEntries','fail','includes','warn','runtime','wgkhY','copilot','MLTxP','env','KFESw','zshDl','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Expiry\x20date\x20(optional)\x0a\x20\x20\x20\x20','https://dashboard.polar.sh','beta','EmgTL','--email\x20user@example.com','PTY_DEFAULT_COLS','655FNerpL','jsYav','tFAIc','dashboard.db','pipx','plan','PERMISSION_TIMEOUT_MS','GBUhG','ajAbL','WMHPt','application/json','\x0a\x20\x20No\x20staff\x20or\x20admin\x20keys\x20configured.\x20Set\x20STAFF_KEYS\x20or\x20ADMIN_KEYS\x20environment\x20variable.\x0a','1398TqNzIT','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_usage_summary\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20input_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20output_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_read_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cache_write_tokens\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20total_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20cli_cost\x20REAL\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20models_used\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','Claude\x20Code','allowed_tools','(via\x20server)','created_at','pERDe','HBRpA','stringify','Glob','info','help','trim','\x20\x20Usage:\x20colana\x20admin\x20revoke-key\x20<id>\x0a','\x0a\x20\x20\x20\x20--\x20Logs\x20table\x20(stores\x20streaming\x20output)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20INTEGER\x20PRIMARY\x20KEY\x20AUTOINCREMENT,\x0a\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20timestamp\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','aAOel','NFmYw','filter','bhVGB','LEGACY_DEFAULT_KEY','createHash','xcWqx','Key\x20is\x20already\x20revoked','repeat','gteTS','SELECT\x20MAX(version)\x20as\x20v\x20FROM\x20schema_version','@openai/codex','DviPu','FlVUy','label','default_model','User-configured\x20model\x20keys\x20(Anthropic,\x20OpenAI,\x20Ollama,\x20etc.)','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20worktree_merged\x20INTEGER\x20DEFAULT\x200','ERROR:\x20Invalid\x20type\x20\x22','data','dimoa','Database\x20not\x20initialized','Qzksh','raw','string','name','GIT_DIFF_MAX_BUFFER','2867688yThGtQ','IMPORTANT:\x20Copy\x20this\x20key\x20now.\x20It\x20cannot\x20be\x20retrieved\x20later.','LOG_RETENTION_MAX_BATCHES','--type\x20staff|admin|beta','run','\x20Key\x20','BqKcR','homedir','FiqVg','length','client','DEFAULT_SESSION_LIMIT','AcaWG','-beta','Qjfft','OxyXD','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_logs_archive_session_id\x20ON\x20logs_archive(session_id)','\x1b[0m','Database\x20not\x20initialized.\x20Call\x20initializeDatabase()\x20first.','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20permission_mode\x20TEXT\x20DEFAULT\x20\x27default\x27','error','INSERT\x20INTO\x20license_keys\x20(id,\x20name,\x20key_hash,\x20type,\x20email,\x20status,\x20expires_at)\x0a\x20\x20\x20\x20\x20VALUES\x20(?,\x20?,\x20?,\x20?,\x20?,\x20\x27active\x27,\x20?)','\x20AND\x20type\x20=\x20?','KEY_FILENAME','\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_au\x20AFTER\x20UPDATE\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(logs_fts,\x20rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(\x27delete\x27,\x20old.id,\x20old.content,\x20old.session_id);\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(new.id,\x20new.content,\x20new.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20','@anthropic-ai/claude-code','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Generate\x20a\x20new\x20license\x20key\x20(stored\x20in\x20DB)\x0a\x20\x20\x20\x20\x20\x20','slice','catch','hWrEP','count','id,name,type,status,email,expires_at,created_at,revoked_at','\x20\x20Usage:\x20colana\x20admin\x20create-key\x20--name\x20\x22Sarah\x22\x20--type\x20staff\x20[--email\x20x]\x20[--expires\x202026-12-31]\x0a','IhphA','SELECT\x20id,\x20name,\x20type,\x20status,\x20expires_at,\x20created_at\x20FROM\x20license_keys\x20WHERE\x20key_hash\x20=\x20?','no\x20such\x20module:\x20fts4','24701890IuXbUz','url','font_size','SELECT\x20id,\x20name,\x20type,\x20status,\x20email,\x20expires_at,\x20created_at,\x20revoked_at\x20FROM\x20license_keys\x20WHERE\x201=1','\x1b[32m','ZBgty','ADMIN_KEYS','fts4','\x20\x20\x20\x20\x20\x20','split','ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20is_builtin\x20INTEGER\x20DEFAULT\x200','full','ENCRYPTION_KEY','NO_COLOR','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_analytics_events_type\x20ON\x20analytics_events(event_type)','JtQMY','auth_mode','supportsInteractive','then','2117458XvMOtn','Bash','isTTY','SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys','dataDir','eprNh','AZpdK','License\x20Keys:','staff','\x0a\x20\x20\x20\x20--\x20Snippets\x20table\x20(clipboard/reusable\x20commands)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20snippets\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20usage_count\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','UPDATE\x20sessions\x20SET\x20auth_mode\x20=\x20\x27subscription\x27\x20WHERE\x20auth_mode\x20IS\x20NULL','Key\x20ID\x20is\x20required','YfUvG','toLocaleDateString','GitHub\x20Copilot\x20subscription','Niadg','XQdsE','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20num_turns\x20INTEGER','VRHtu','ERROR:\x20Key\x20ID\x20is\x20required.','POLAR_API_URL','npm\x20install\x20-g\x20@openai/codex','Xzwqz','Database\x20initialized\x20at:','\x0a\x20\x20\x20\x20CREATE\x20VIRTUAL\x20TABLE\x20IF\x20NOT\x20EXISTS\x20logs_fts\x0a\x20\x20\x20\x20USING\x20','values','colana:gog-keyring:','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_license_keys_status\x20ON\x20license_keys(status)','TOOL_RESULT_PREVIEW_LEN','https://buy.polar.sh/colana','expires_at','PTY_DEFAULT_ROWS','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20session_checkpoints\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20session_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20project_id\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20git_sha\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20is_dirty\x20INTEGER\x20DEFAULT\x200,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20dirty_summary\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20restored_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(session_id)\x20REFERENCES\x20sessions(id)\x20ON\x20DELETE\x20CASCADE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','AJaTK','map','[security]\x20Generated\x20new\x20encryption\x20key\x20file.','stable','ERROR:\x20--name\x20is\x20required.','QOouO','ID:','type','unknown','\x20\x20To\x20add/remove\x20keys,\x20update\x20the\x20STAFF_KEYS\x20or\x20ADMIN_KEYS\x20environment\x20variable.\x0a','default_provider','now','JJBsw','toLowerCase','aider','ZKcGt','bypassPermissions','version','heading','OqCcW','bind','cmd','http://127.0.0.1:','set','\x0a\x20\x20\x20\x20\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20license_keys\x20(\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20key_hash\x20TEXT\x20NOT\x20NULL\x20UNIQUE,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20type\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27staff\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20email\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20status\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20\x27active\x27,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20expires_at\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20revoked_at\x20TEXT\x0a\x20\x20\x20\x20\x20\x20\x20\x20)\x0a\x20\x20\x20\x20\x20\x20','Name','zIpqk','supportsHeadless','resolve','\x0a\x20\x20\x20\x20CREATE\x20TRIGGER\x20IF\x20NOT\x20EXISTS\x20logs_fts_ad\x20AFTER\x20DELETE\x20ON\x20logs\x20BEGIN\x0a\x20\x20\x20\x20\x20\x20INSERT\x20INTO\x20logs_fts(logs_fts,\x20rowid,\x20content,\x20session_id)\x0a\x20\x20\x20\x20\x20\x20VALUES\x20(\x27delete\x27,\x20old.id,\x20old.content,\x20old.session_id);\x0a\x20\x20\x20\x20END;\x0a\x20\x20','\x0a\x20\x20','from','pass','\x0a\x20\x20Run\x20\x27colana\x20doctor\x27\x20for\x20system\x20diagnostics.\x0a','eyEBL','AGENT_GRACE_PERIOD_MS','forEach','sha256','qYxmA','colana-default-encryption-key32','supportsPty','stream-json','HUNRv','create-key','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_license_keys_key_hash\x20ON\x20license_keys(key_hash)','active','\x1b[33m','32sRvPaF','PTY_BUFFER_SIZE','status','revoked_at','MAX_RESUMABLE_SESSIONS','JbDSM','--input-format','log','npm\x20install\x20-g\x20openclaw','models','exYXA','\x20\x20(ADMIN_KEYS)','admin','claude','ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20suggested_provider\x20TEXT','code','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20last_activity_at\x20TEXT\x20DEFAULT\x20NULL','eiWlS','xzySj','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20List\x20configured\x20staff/admin\x20keys\x20(env\x20vars)\x0a\x20\x20\x20\x20','gLkth','gemini','revoked','STAFF_KEYS','ENEUa','Name\x20is\x20required','taVvN','LOG_ARCHIVE_MODE','colana\x20admin\x20revoke-key\x20<id>','UPDATE\x20sessions\x20SET\x20auth_mode\x20=\x20\x27api_key\x27\x20WHERE\x20provider\x20=\x20\x27codex\x27\x20AND\x20(auth_mode\x20IS\x20NULL\x20OR\x20auth_mode\x20=\x20\x27subscription\x27)','[security]\x20WARNING:\x20Could\x20not\x20write\x20encryption\x20key\x20file:\x20','doctor','value','Anthropic\x20subscription\x20or\x20API\x20key','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_project_blueprints_project\x20ON\x20project_blueprints(project_id)','595398sVPcTR','Admin\x20Keys:','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Key\x20type\x20(default:\x20staff)\x0a\x20\x20\x20\x20\x20\x20','resume','Gemini\x20CLI','KNHVD','Server\x20responded\x20with\x20','261009DhtxeQ','FezvD','fts5','FijkQ','expiry','export','UqcUE','join','getAsObject','LHhYr','OKGfa','\x20has\x20been\x20revoked.\x0a','PERMISSION_CLIENT_MS','FREE_MAX_SESSIONS','no\x20such\x20module:\x20fts5','reset','message','exit','digest','hYagr','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20mode\x20TEXT\x20DEFAULT\x20\x27legacy\x27','3|4|2|0|5|1','SELECT\x20id,\x20name,\x20type,\x20status,\x20email,\x20expires_at,\x20created_at,\x20revoked_at\x20FROM\x20license_keys\x20ORDER\x20BY\x20created_at\x20DESC','START_PORT','GiEjE','default','hex','Key\x20not\x20found','flag','/api/health','update','startsWith','readFileSync','ALTER\x20TABLE\x20templates\x20ADD\x20COLUMN\x20description\x20TEXT','Grep','bFAyd','toString','/api/admin/keys/','LOG_RETENTION_BATCH_SIZE','\x20\x20\x20\x20','uMkyk','WebSearch','TWbEr','\x1b[37m','mkdirSync','DB_FILENAME','\x0a\x20\x20\x20\x20','codex','success','push','\x1b[31m','jDTQf','\x0a\x20\x20\x20\x20--\x20Templates\x20table\x20(task\x20prompt\x20templates)\x0a\x20\x20\x20\x20CREATE\x20TABLE\x20IF\x20NOT\x20EXISTS\x20templates\x20(\x0a\x20\x20\x20\x20\x20\x20id\x20TEXT\x20PRIMARY\x20KEY,\x0a\x20\x20\x20\x20\x20\x20project_id\x20TEXT,\x0a\x20\x20\x20\x20\x20\x20name\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20content\x20TEXT\x20NOT\x20NULL,\x0a\x20\x20\x20\x20\x20\x20category\x20TEXT\x20DEFAULT\x20\x27general\x27,\x0a\x20\x20\x20\x20\x20\x20created_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20updated_at\x20TEXT\x20NOT\x20NULL\x20DEFAULT\x20(datetime(\x27now\x27)),\x0a\x20\x20\x20\x20\x20\x20FOREIGN\x20KEY\x20(project_id)\x20REFERENCES\x20projects(id)\x20ON\x20DELETE\x20CASCADE\x0a\x20\x20\x20\x20)\x0a\x20\x20','exec','--resume','HTTP\x20','XSZuz','.\x20Must\x20be\x20one\x20of:\x20','existsSync','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20provider_session_id\x20TEXT','auto_resume_on_restart','Write','randomUUID','kVrJt','280656vtPEtW','revoke-key','keys','@google/gemini-cli','CREATE\x20INDEX\x20IF\x20NOT\x20EXISTS\x20idx_sessions_status\x20ON\x20sessions(status)','dontAsk','POLAR_CHECKOUT_URL','isfOM','ALTER\x20TABLE\x20sessions\x20ADD\x20COLUMN\x20isolation_mode\x20TEXT\x20DEFAULT\x20\x27local\x27','POLAR_ORG_ID','ALTER\x20TABLE\x20snippets\x20DROP\x20COLUMN\x20is_pinned','brand','Database','GcwGX','muted','package.json','acceptEdits','uYByQ','XkYkd','Admin\x20CLI','\x1b[36m','4scMHVo','dbFilename','UPDATE\x20projects\x20SET\x20is_personal\x20=\x201\x20WHERE\x20name\x20=\x20\x27Personal\x27','getTime','ALTER\x20TABLE\x20snippets\x20DROP\x20COLUMN\x20category','isNaN','providers','Copilot\x20CLI'];a0_0x1d1c=function(){return _0x47e6c1;};return a0_0x1d1c();}import a0_0x12ed25 from'crypto';function hashKey(_0x4fa028){const _0x12d49b=a0_0x584d,_0x46d66c={'aAOel':_0x12d49b(0x204)};return a0_0x12ed25['createHash'](_0x12d49b(0x329))['update'](_0x4fa028)[_0x12d49b(0x1fc)](_0x46d66c[_0x12d49b(0x291)]);}function generateKey(_0x55a288,_0x56273c=a0_0x42a21f(0x2eb),_0xd069cd=null,_0x454996=null){const _0x2f8c8b=a0_0x42a21f,_0x5037ae={'wncqw':'admin','zshDl':'staff','RzPFq':function(_0x1c5985,_0x4caa4b){return _0x1c5985!==_0x4caa4b;},'hYagr':_0x2f8c8b(0x1d9),'kVrJt':function(_0x20b9b7,_0xa3129a){return _0x20b9b7+_0xa3129a;},'xzySj':function(_0x5185fd,_0xa4e60e){return _0x5185fd||_0xa4e60e;}},_0x4ae68f=[_0x5037ae['wncqw'],_0x5037ae[_0x2f8c8b(0x26f)],_0x2f8c8b(0x272)];if(!_0x4ae68f['includes'](_0x56273c))throw new Error('Invalid\x20key\x20type:\x20'+_0x56273c+_0x2f8c8b(0x223)+_0x4ae68f['join'](',\x20'));if(!_0x55a288||_0x5037ae['RzPFq'](typeof _0x55a288,'string')||!_0x55a288['trim']())throw new Error(_0x5037ae[_0x2f8c8b(0x1fd)]);const _0x4a192e=a0_0x12ed25[_0x2f8c8b(0x228)](),_0x1ef479=_0x5037ae[_0x2f8c8b(0x229)](KEY_PREFIX,a0_0x12ed25['randomBytes'](0x10)[_0x2f8c8b(0x20e)](_0x2f8c8b(0x204))),_0x8d57d1=hashKey(_0x1ef479);return run(_0x2f8c8b(0x2c1),[_0x4a192e,_0x55a288[_0x2f8c8b(0x28e)](),_0x8d57d1,_0x56273c,_0x5037ae[_0x2f8c8b(0x345)](_0xd069cd,null),_0x454996||null]),{'id':_0x4a192e,'raw':_0x1ef479,'type':_0x56273c,'name':_0x55a288[_0x2f8c8b(0x28e)]()};}function validateKey(_0x24d822){const _0x2d9db6=a0_0x42a21f,_0x46ab19={'gHxgf':_0x2d9db6(0x2a9),'qWxKd':_0x2d9db6(0x2ce),'Svljn':function(_0x48e1e3,_0x2732ed){return _0x48e1e3!==_0x2732ed;},'hWrEP':function(_0x3033a7,_0x42ca90){return _0x3033a7<_0x42ca90;}};if(!_0x24d822||typeof _0x24d822!==_0x46ab19['gHxgf'])return null;const _0x4d1129=hashKey(_0x24d822['trim']()),_0xd1ba25=queryOne(_0x46ab19['qWxKd'],[_0x4d1129]);if(!_0xd1ba25)return null;if(_0x46ab19['Svljn'](_0xd1ba25[_0x2d9db6(0x335)],'active'))return null;if(_0xd1ba25[_0x2d9db6(0x301)]){const _0x591dee=new Date(_0xd1ba25['expires_at'])[_0x2d9db6(0x242)]();if(_0x46ab19[_0x2d9db6(0x2c9)](_0x591dee,Date[_0x2d9db6(0x30f)]()))return null;}return{'id':_0xd1ba25['id'],'name':_0xd1ba25[_0x2d9db6(0x2aa)],'type':_0xd1ba25['type'],'status':_0xd1ba25['status'],'expires_at':_0xd1ba25['expires_at'],'created_at':_0xd1ba25['created_at']};}function listKeys(_0x138c19={}){const _0x56ea33=a0_0x42a21f,_0x4fdf86={'NFmYw':'\x20AND\x20status\x20=\x20?','PjjDy':function(_0x3fec9e,_0xd9e19c){return _0x3fec9e(_0xd9e19c);}};let _0xba8f39=_0x56ea33(0x2d3);const _0x528744=[];_0x138c19[_0x56ea33(0x30b)]&&(_0xba8f39+=_0x56ea33(0x2c2),_0x528744['push'](_0x138c19['type']));_0x138c19[_0x56ea33(0x335)]&&(_0xba8f39+=_0x4fdf86[_0x56ea33(0x292)],_0x528744[_0x56ea33(0x21b)](_0x138c19[_0x56ea33(0x335)]));_0xba8f39+='\x20ORDER\x20BY\x20created_at\x20DESC';const _0x40df31=Math['min'](Math['max'](_0x4fdf86['PjjDy'](parseInt,_0x138c19['limit'])||0x32,0x1),0x1f4);_0xba8f39+='\x20LIMIT\x20?',_0x528744['push'](_0x40df31);const _0x5c6ae6=queryAll(_0xba8f39,_0x528744),_0x1e121b=_0x5c6ae6[_0x56ea33(0x305)](_0x5b7a76=>({'id':_0x5b7a76['id'],'name':_0x5b7a76['name'],'type':_0x5b7a76['type'],'status':_0x5b7a76[_0x56ea33(0x335)]===_0x56ea33(0x331)?'ACTIVE':'SUSPENDED','key':_0x5b7a76['id'][_0x56ea33(0x2c7)](0x0,0x8)+_0x56ea33(0x24b),'email':_0x5b7a76['email'],'expiry':_0x5b7a76[_0x56ea33(0x301)],'created_at':_0x5b7a76[_0x56ea33(0x287)],'revoked_at':_0x5b7a76[_0x56ea33(0x336)]}));return{'keys':_0x1e121b};}function revokeKey(_0x5a2a33){const _0x17e274=a0_0x42a21f,_0x593dd3={'JtQMY':function(_0x18991,_0x4c5ae3,_0x265173){return _0x18991(_0x4c5ae3,_0x265173);},'pERDe':'SELECT\x20id,\x20status\x20FROM\x20license_keys\x20WHERE\x20id\x20=\x20?','uYByQ':_0x17e274(0x298),'Gbkoz':'UPDATE\x20license_keys\x20SET\x20status\x20=\x20\x27revoked\x27,\x20revoked_at\x20=\x20datetime(\x27now\x27)\x20WHERE\x20id\x20=\x20?'};if(!_0x5a2a33)throw new Error(_0x17e274(0x2ee));const _0x44112d=_0x593dd3[_0x17e274(0x2df)](queryOne,_0x593dd3[_0x17e274(0x288)],[_0x5a2a33]);if(!_0x44112d)throw new Error(_0x17e274(0x205));if(_0x44112d[_0x17e274(0x335)]===_0x17e274(0x1d6))throw new Error(_0x593dd3[_0x17e274(0x23b)]);return run(_0x593dd3['Gbkoz'],[_0x5a2a33]),{'success':!![]};}function getKeyStats(){const _0xb7791d=a0_0x42a21f,_0x1aa0b9={'EHDUO':'SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27active\x27','MLTxP':function(_0x13db7c,_0x384218){return _0x13db7c(_0x384218);},'FKrYC':'SELECT\x20type,\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27active\x27\x20GROUP\x20BY\x20type'},_0x4c4ddc=queryOne(_0xb7791d(0x2e6)),_0x455df0=queryOne(_0x1aa0b9['EHDUO']),_0x46e284=queryOne('SELECT\x20COUNT(*)\x20as\x20count\x20FROM\x20license_keys\x20WHERE\x20status\x20=\x20\x27revoked\x27'),_0x12ca78=_0x1aa0b9[_0xb7791d(0x26c)](queryAll,_0x1aa0b9['FKrYC']),_0x4ae0d4={};for(const _0x313375 of _0x12ca78){_0x4ae0d4[_0x313375['type']]=_0x313375['count'];}return{'totalKeys':_0x4c4ddc?.['count']||0x0,'activeKeys':_0x455df0?.[_0xb7791d(0x2ca)]||0x0,'revokedKeys':_0x46e284?.[_0xb7791d(0x2ca)]||0x0,'byType':_0x4ae0d4};}function exportKeysCSV(){const _0x3ccc96=a0_0x42a21f,_0x75351={'aznsP':function(_0x25f022,_0x397172){return _0x25f022(_0x397172);},'XkYkd':_0x3ccc96(0x200)},_0x4b3de4=_0x75351[_0x3ccc96(0x262)](queryAll,_0x75351[_0x3ccc96(0x23c)]),_0x431f55=_0x3ccc96(0x2cb),_0x5420de=_0x4b3de4[_0x3ccc96(0x305)](_0x4debd3=>{const _0x237ba7=_0x3ccc96;return[_0x4debd3['id'],'\x22'+(_0x4debd3['name']||'')['replace'](/"/g,'\x22\x22')+'\x22',_0x4debd3['type'],_0x4debd3['status'],_0x4debd3['email']||'',_0x4debd3[_0x237ba7(0x301)]||'',_0x4debd3['created_at']||'',_0x4debd3['revoked_at']||''][_0x237ba7(0x1f1)](',');});return[_0x431f55,..._0x5420de][_0x3ccc96(0x1f1)]('\x0a');}var KEY_PREFIX,init_key_manager=__esm({'server/key-manager.js'(){const _0x4ca6e7={'gUzji':function(_0x4f74b5){return _0x4f74b5();},'ScPrk':'col_'};_0x4ca6e7['gUzji'](init_db),KEY_PREFIX=_0x4ca6e7['ScPrk'];}});import a0_0x4aec49 from'path';import{fileURLToPath as a0_0x5a4ec1}from'url';var supportsColor=((()=>{const _0x12dd51=a0_0x42a21f,_0x4a0e06={'YfUvG':function(_0x466aa3,_0x58cd42){return _0x466aa3===_0x58cd42;}};if(process['env'][_0x12dd51(0x2dd)])return![];if(_0x4a0e06[_0x12dd51(0x2ef)](process[_0x12dd51(0x26d)]['FORCE_COLOR'],'1'))return!![];return!!process['stdout'][_0x12dd51(0x2e5)];})());function makeColors(_0x2d6af2){const _0x33c2e8=a0_0x42a21f,_0x5149da={'jGEBF':'\x1b[38;5;214m','WMHPt':_0x33c2e8(0x2d4),'knCis':_0x33c2e8(0x332),'ajAbL':'\x1b[90m'};if(!_0x2d6af2)return{'reset':'','brand':'','heading':'','success':'','error':'','warn':'','info':'','muted':'','value':'','cmd':'','url':''};return{'reset':_0x33c2e8(0x2bd),'brand':_0x5149da['jGEBF'],'heading':'\x1b[1;37m','success':_0x5149da[_0x33c2e8(0x27f)],'error':_0x33c2e8(0x21c),'warn':_0x5149da['knCis'],'info':_0x33c2e8(0x23e),'muted':_0x5149da[_0x33c2e8(0x27e)],'value':_0x33c2e8(0x215),'cmd':_0x33c2e8(0x23e),'url':'\x1b[36m'};}function a0_0x584d(_0x39f958,_0x32335d){_0x39f958=_0x39f958-0x1d5;const _0x1d1c66=a0_0x1d1c();let _0x584d3a=_0x1d1c66[_0x39f958];return _0x584d3a;}var c=makeColors(supportsColor),icons={'pass':c[a0_0x42a21f(0x21a)]+'✓'+c[a0_0x42a21f(0x1f9)],'fail':c[a0_0x42a21f(0x2c0)]+'✗'+c[a0_0x42a21f(0x1f9)],'warn':c[a0_0x42a21f(0x268)]+'⚠'+c['reset'],'arrow':c[a0_0x42a21f(0x28c)]+'→'+c['reset'],'dot':c[a0_0x42a21f(0x235)]+'•'+c['reset']};function brandName(_0x455ef8=a0_0x42a21f(0x2db)){const _0x26de7b=a0_0x42a21f,_0x437174={'nRKnJ':'prefix'},_0x943357=c[_0x26de7b(0x316)]+'co'+c['brand']+':'+c[_0x26de7b(0x316)]+'lana'+c['reset'];if(_0x455ef8===_0x437174[_0x26de7b(0x25d)])return'['+_0x943357+']';return _0x943357;}var __dirname2=a0_0x4aec49['dirname'](a0_0x5a4ec1(import.meta.url));function parseArgs(_0x353858){const _0x18b12e=a0_0x42a21f,_0x32c0db={'exYXA':function(_0x260512,_0xec0f51){return _0x260512<_0xec0f51;},'gJyma':function(_0x87375f,_0x5df36c){return _0x87375f+_0x5df36c;}},_0x2d3ce2=_0x353858[_0x18b12e(0x2c7)](0x2),_0x443c2f=_0x2d3ce2[0x0],_0x32fc63=[],_0x4e5245={};for(let _0x169a4d=0x1;_0x169a4d<_0x2d3ce2['length'];_0x169a4d++){if(_0x2d3ce2[_0x169a4d]['startsWith']('--')){let _0x4a5554=_0x2d3ce2[_0x169a4d]['slice'](0x2),_0xbcf410;const _0xe3e614=_0x4a5554['indexOf']('=');_0xe3e614!==-0x1?(_0xbcf410=_0x4a5554[_0x18b12e(0x2c7)](_0xe3e614+0x1),_0x4a5554=_0x4a5554[_0x18b12e(0x2c7)](0x0,_0xe3e614)):_0xbcf410=_0x32c0db[_0x18b12e(0x33d)](_0x32c0db['gJyma'](_0x169a4d,0x1),_0x2d3ce2[_0x18b12e(0x2b5)])&&!_0x2d3ce2[_0x169a4d+0x1][_0x18b12e(0x209)]('--')?_0x2d3ce2[++_0x169a4d]:'true',_0x4e5245[_0x4a5554]=_0xbcf410;}else _0x32fc63[_0x18b12e(0x21b)](_0x2d3ce2[_0x169a4d]);}return{'command':_0x443c2f,'flags':_0x4e5245,'positional':_0x32fc63};}function maskKey(_0x3a9d5f){const _0x290e4d=a0_0x42a21f,_0x246913={'ZccPf':function(_0x40a38c,_0x1a2cd2){return _0x40a38c<=_0x1a2cd2;},'eprNh':'****'};if(!_0x3a9d5f||_0x246913['ZccPf'](_0x3a9d5f[_0x290e4d(0x2b5)],0x8))return _0x290e4d(0x24b);return _0x3a9d5f[_0x290e4d(0x2c7)](0x0,0x4)+_0x246913[_0x290e4d(0x2e8)];}var DEFAULT_PORT=0x2694,MAX_PORT_SCAN=0x64;async function findRunningServer(){const _0x46fb3c=a0_0x42a21f,_0xbb89c1={'KNHVD':function(_0x11598c,_0x52c46f){return _0x11598c<_0x52c46f;},'eiWlS':function(_0x107960,_0x13a61f){return _0x107960+_0x13a61f;}};for(let _0x4dc246=0x0;_0xbb89c1[_0x46fb3c(0x1e8)](_0x4dc246,MAX_PORT_SCAN);_0x4dc246++){const _0x2aedd5=_0xbb89c1[_0x46fb3c(0x344)](DEFAULT_PORT,_0x4dc246);try{const _0xe44e99=await fetch('http://127.0.0.1:'+_0x2aedd5+_0x46fb3c(0x207),{'signal':AbortSignal['timeout'](0x1f4)});if(_0xe44e99['ok']){const _0x471c4f=await _0xe44e99[_0x46fb3c(0x253)]();if(_0x471c4f['status']==='ok')return _0x46fb3c(0x31a)+_0x2aedd5;}}catch{}}return null;}async function createKeyViaApi(_0x438a5e,_0x16890e){const _0x1c6a59=a0_0x42a21f,_0x3219ed={'CgkvY':'POST'},_0x1a4599=await fetch(_0x438a5e+_0x1c6a59(0x24e),{'method':_0x3219ed['CgkvY'],'headers':{'Content-Type':_0x1c6a59(0x280)},'body':JSON['stringify'](_0x16890e)});if(!_0x1a4599['ok']){const _0x77f816=await _0x1a4599['json']()['catch'](()=>({'error':'HTTP\x20'+_0x1a4599['status']}));throw new Error(_0x77f816['error']||_0x1c6a59(0x1e9)+_0x1a4599['status']);}return _0x1a4599['json']();}async function listKeysViaApi(_0x53a2c1,_0x2d0c03){const _0x19969d=a0_0x42a21f,_0x3f5b39={'OKGfa':'type','sYlAJ':function(_0x5aa73a,_0x583c61){return _0x5aa73a+_0x583c61;}},_0x1a8a6a=new URLSearchParams();if(_0x2d0c03[_0x19969d(0x30b)])_0x1a8a6a[_0x19969d(0x31b)](_0x3f5b39[_0x19969d(0x1f4)],_0x2d0c03['type']);if(_0x2d0c03[_0x19969d(0x335)])_0x1a8a6a[_0x19969d(0x31b)]('status',_0x2d0c03[_0x19969d(0x335)]);const _0x2992e0=_0x1a8a6a[_0x19969d(0x20e)](),_0x5a66e8=await fetch(_0x53a2c1+_0x19969d(0x24e)+(_0x2992e0?_0x3f5b39['sYlAJ']('?',_0x2992e0):''));if(!_0x5a66e8['ok']){const _0x16fc17=await _0x5a66e8['json']()['catch'](()=>({'error':_0x19969d(0x221)+_0x5a66e8['status']}));throw new Error(_0x16fc17['error']||'Server\x20responded\x20with\x20'+_0x5a66e8[_0x19969d(0x335)]);}return _0x5a66e8['json']();}async function revokeKeyViaApi(_0x228eac,_0x4d9dd5){const _0x588c4d=a0_0x42a21f,_0x33abcd={'LMQRm':function(_0x3eb756,_0x2faf21,_0x37c112){return _0x3eb756(_0x2faf21,_0x37c112);}},_0x2dc133=await _0x33abcd['LMQRm'](fetch,_0x228eac+_0x588c4d(0x20f)+_0x4d9dd5,{'method':'DELETE'});if(!_0x2dc133['ok']){const _0x169a81=await _0x2dc133[_0x588c4d(0x253)]()['catch'](()=>({'error':'HTTP\x20'+_0x2dc133['status']}));throw new Error(_0x169a81['error']||'Server\x20responded\x20with\x20'+_0x2dc133[_0x588c4d(0x335)]);}return _0x2dc133['json']();}var _dbReady=![];async function ensureDb(){const _0x2696f4=a0_0x42a21f,_0x2e1860={'BqKcR':function(_0x5847f7){return _0x5847f7();}};if(_dbReady)return;const {getDb:_0x541c58}=await Promise[_0x2696f4(0x320)]()['then'](()=>(init_db(),db_exports));await _0x2e1860[_0x2696f4(0x2b2)](_0x541c58),_dbReady=!![];}async function createKey(_0x8a4299){const _0x32d649=a0_0x42a21f,_0x5ec8cd={'Xzwqz':_0x32d649(0x2cc),'kyFFb':_0x32d649(0x33f),'Niadg':_0x32d649(0x2eb),'CIfgo':function(_0x1123ec,_0x27db66){return _0x1123ec||_0x27db66;}},_0x10581c=_0x8a4299['name'],_0x1c2ea6=_0x8a4299['type']||_0x32d649(0x2eb),_0x39e2c9=_0x8a4299['email']||null,_0x579bce=_0x8a4299['expires']||null;if(!_0x10581c){console['error'](_0x32d649(0x322)+icons['fail']+'\x20'+c[_0x32d649(0x2c0)]+_0x32d649(0x308)+c[_0x32d649(0x1f9)]+'\x0a'),console[_0x32d649(0x2c0)](_0x5ec8cd[_0x32d649(0x2f9)]),process[_0x32d649(0x1fb)](0x1);return;}const _0x2b39c2=[_0x5ec8cd['kyFFb'],_0x5ec8cd[_0x32d649(0x2f2)],_0x32d649(0x272)];if(!_0x2b39c2[_0x32d649(0x267)](_0x1c2ea6)){console[_0x32d649(0x2c0)]('\x0a\x20\x20'+icons['fail']+'\x20'+c['error']+_0x32d649(0x2a3)+_0x1c2ea6+'\x22.\x20Must\x20be\x20one\x20of:\x20'+_0x2b39c2[_0x32d649(0x1f1)](',\x20')+c[_0x32d649(0x1f9)]+'\x0a'),process['exit'](0x1);return;}const _0x446392=await findRunningServer();let _0x4ccc84;if(_0x446392)try{_0x4ccc84=await createKeyViaApi(_0x446392,{'name':_0x10581c,'type':_0x1c2ea6,'email':_0x5ec8cd['CIfgo'](_0x39e2c9,void 0x0),'expires':_0x579bce||void 0x0});}catch(_0x4c34b8){console[_0x32d649(0x2c0)](_0x32d649(0x322)+icons['fail']+'\x20'+c[_0x32d649(0x2c0)]+_0x4c34b8['message']+c['reset']+'\x20'+c[_0x32d649(0x238)]+_0x32d649(0x286)+c['reset']+'\x0a'),process['exit'](0x1);return;}else{await ensureDb();const {generateKey:_0x317cde}=await Promise['resolve']()['then'](()=>(init_key_manager(),key_manager_exports));try{_0x4ccc84=_0x317cde(_0x10581c,_0x1c2ea6,_0x39e2c9,_0x579bce);}catch(_0x54618a){console[_0x32d649(0x2c0)](_0x32d649(0x322)+icons['fail']+'\x20'+c['error']+_0x54618a['message']+c['reset']+'\x0a'),process[_0x32d649(0x1fb)](0x1);return;}}if(!_0x4ccc84||!_0x4ccc84['name']){console[_0x32d649(0x2c0)]('\x0a\x20\x20'+icons[_0x32d649(0x266)]+'\x20'+c[_0x32d649(0x2c0)]+'Key\x20generation\x20returned\x20an\x20unexpected\x20response.'+c[_0x32d649(0x1f9)]+'\x0a'),process[_0x32d649(0x1fb)](0x1);return;}console['log'](''),console['log']('\x20\x20'+icons['pass']+'\x20Key\x20generated\x20successfully!'),console[_0x32d649(0x33a)]('\x20\x20'+c['muted']+'─'[_0x32d649(0x299)](0x28)+c['reset']),console['log']('\x20\x20\x20\x20'+c['muted']+'Name:'+c[_0x32d649(0x1f9)]+'\x20\x20\x20\x20'+c[_0x32d649(0x1e0)]+_0x4ccc84[_0x32d649(0x2aa)]+c['reset']),console['log']('\x20\x20\x20\x20'+c['muted']+_0x32d649(0x264)+c['reset']+'\x20\x20\x20\x20'+c[_0x32d649(0x1e0)]+_0x4ccc84['type']+c['reset']),console[_0x32d649(0x33a)](_0x32d649(0x211)+c['muted']+_0x32d649(0x30a)+c[_0x32d649(0x1f9)]+_0x32d649(0x2d8)+c[_0x32d649(0x1e0)]+_0x4ccc84['id']+c['reset']),console['log']('\x20\x20\x20\x20'+c[_0x32d649(0x238)]+'Key:'+c['reset']+'\x20\x20\x20\x20\x20'+c['warn']+_0x4ccc84[_0x32d649(0x2a8)]+c[_0x32d649(0x1f9)]),console[_0x32d649(0x33a)]('\x20\x20'+c[_0x32d649(0x238)]+'─'[_0x32d649(0x299)](0x28)+c['reset']),console[_0x32d649(0x33a)]('\x20\x20'+c[_0x32d649(0x268)]+_0x32d649(0x2ad)+c['reset']),_0x446392?console[_0x32d649(0x33a)]('\x20\x20'+c['muted']+'(Created\x20via\x20running\x20server)'+c['reset']):console[_0x32d649(0x33a)]('\x20\x20'+c['muted']+'(Created\x20via\x20direct\x20DB\x20—\x20restart\x20server\x20to\x20pick\x20up)'+c['reset']),console['log']('');}async function listKeysCmd(_0x1eb856){const _0x56577d=a0_0x42a21f,_0x4405b0={'Qjfft':function(_0x2ae705){return _0x2ae705();},'DUIhq':function(_0x25c3cc,_0x227420,_0x28de2b){return _0x25c3cc(_0x227420,_0x28de2b);},'kqIgv':'Type'},_0x4b47b8={};if(_0x1eb856['type'])_0x4b47b8[_0x56577d(0x30b)]=_0x1eb856['type'];if(_0x1eb856[_0x56577d(0x335)])_0x4b47b8['status']=_0x1eb856['status'];const _0x214d0=await _0x4405b0[_0x56577d(0x2ba)](findRunningServer);let _0x2a0d8b;if(_0x214d0)try{_0x2a0d8b=await _0x4405b0['DUIhq'](listKeysViaApi,_0x214d0,_0x4b47b8);}catch(_0x77cc89){console[_0x56577d(0x2c0)]('\x0a\x20\x20'+icons[_0x56577d(0x266)]+'\x20'+c[_0x56577d(0x2c0)]+_0x77cc89[_0x56577d(0x1fa)]+c['reset']+'\x20'+c[_0x56577d(0x238)]+'(via\x20server)'+c['reset']+'\x0a'),process[_0x56577d(0x1fb)](0x1);return;}else{await ensureDb();const {listKeys:_0xe6f0bd}=await Promise[_0x56577d(0x320)]()['then'](()=>(init_key_manager(),key_manager_exports));_0x2a0d8b=_0xe6f0bd(_0x4b47b8);}if(!_0x2a0d8b||!_0x2a0d8b['keys']||!_0x2a0d8b['keys']['length']){console[_0x56577d(0x33a)]('\x0a\x20\x20No\x20keys\x20found.\x0a');return;}console[_0x56577d(0x33a)](''),console[_0x56577d(0x33a)]('\x20\x20'+c['heading']+_0x56577d(0x2ea)+c['reset']),console[_0x56577d(0x33a)]('\x20\x20'+c[_0x56577d(0x238)]+'─'[_0x56577d(0x299)](0x50)+c[_0x56577d(0x1f9)]),console['log']('\x20\x20'+c[_0x56577d(0x238)]+'ID'[_0x56577d(0x25c)](0xa)+_0x56577d(0x31d)['padEnd'](0x14)+_0x4405b0[_0x56577d(0x261)][_0x56577d(0x25c)](0xa)+'Status'['padEnd'](0xa)+'Expires'['padEnd'](0xf)+'Created'+c['reset']),console['log']('\x20\x20'+c[_0x56577d(0x238)]+'─'['repeat'](0x50)+c[_0x56577d(0x1f9)]);for(const _0x2d9efd of _0x2a0d8b[_0x56577d(0x22c)]){const _0x1156b9=(_0x2d9efd['id']||'')['slice'](0x0,0x8),_0x4fd856=(_0x2d9efd['name']||'')['slice'](0x0,0x12)['padEnd'](0x14),_0x395f10=(_0x2d9efd[_0x56577d(0x30b)]||'')['padEnd'](0xa),_0xf3d729=(_0x2d9efd['status']||'')[_0x56577d(0x25c)](0xa),_0x3d156f=(_0x2d9efd[_0x56577d(0x1ee)]?new Date(_0x2d9efd['expiry'])[_0x56577d(0x2f0)]():'Never')['padEnd'](0xf),_0x5d8d2d=_0x2d9efd[_0x56577d(0x287)]?new Date(_0x2d9efd['created_at'])['toLocaleDateString']():'-';console[_0x56577d(0x33a)]('\x20\x20'+_0x1156b9['padEnd'](0xa)+_0x4fd856+_0x395f10+_0xf3d729+_0x3d156f+_0x5d8d2d);}console['log']('\x20\x20'+c['muted']+'─'['repeat'](0x50)+c[_0x56577d(0x1f9)]),console['log']('\x20\x20'+c['muted']+'Total:\x20'+_0x2a0d8b[_0x56577d(0x22c)][_0x56577d(0x2b5)]+'\x20key(s)'+c[_0x56577d(0x1f9)]+'\x0a');}async function revokeKeyCmd(_0x1c8989){const _0x39b76b=a0_0x42a21f,_0x2226a6={'gteTS':_0x39b76b(0x28f),'cFFvX':function(_0x1377ff){return _0x1377ff();},'kZzlR':function(_0x3e49ef,_0x56338c,_0x504bad){return _0x3e49ef(_0x56338c,_0x504bad);}},_0x3397be=_0x1c8989[0x0];if(!_0x3397be){console['error'](_0x39b76b(0x322)+icons[_0x39b76b(0x266)]+'\x20'+c[_0x39b76b(0x2c0)]+_0x39b76b(0x2f6)+c[_0x39b76b(0x1f9)]+'\x0a'),console['error'](_0x2226a6[_0x39b76b(0x29a)]),process[_0x39b76b(0x1fb)](0x1);return;}const _0x4ce133=await _0x2226a6['cFFvX'](findRunningServer);if(_0x4ce133)try{await _0x2226a6['kZzlR'](revokeKeyViaApi,_0x4ce133,_0x3397be),console[_0x39b76b(0x33a)](_0x39b76b(0x322)+icons['pass']+_0x39b76b(0x2b1)+c[_0x39b76b(0x1e0)]+_0x3397be+c[_0x39b76b(0x1f9)]+_0x39b76b(0x1f5));}catch(_0x191d24){console['error']('\x0a\x20\x20'+icons['fail']+'\x20'+c['error']+_0x191d24['message']+c[_0x39b76b(0x1f9)]+'\x20'+c[_0x39b76b(0x238)]+'(via\x20server)'+c['reset']+'\x0a'),process['exit'](0x1);return;}else{await ensureDb();const {revokeKey:_0x139368}=await Promise[_0x39b76b(0x320)]()[_0x39b76b(0x2e2)](()=>(init_key_manager(),key_manager_exports));try{_0x139368(_0x3397be),console['log']('\x0a\x20\x20'+icons[_0x39b76b(0x324)]+_0x39b76b(0x2b1)+c['value']+_0x3397be+c[_0x39b76b(0x1f9)]+_0x39b76b(0x1f5));}catch(_0x5c5f06){console['error']('\x0a\x20\x20'+icons[_0x39b76b(0x266)]+'\x20'+c[_0x39b76b(0x2c0)]+_0x5c5f06[_0x39b76b(0x1fa)]+c['reset']+'\x0a'),process['exit'](0x1);return;}}}function showHelp(){const _0x7a84f9=a0_0x42a21f;console[_0x7a84f9(0x33a)]('\x0a\x20\x20'+brandName()+'\x20'+c[_0x7a84f9(0x238)]+_0x7a84f9(0x23d)+c['reset']+'\x0a\x0a\x20\x20'+c[_0x7a84f9(0x316)]+'Usage:'+c[_0x7a84f9(0x1f9)]+_0x7a84f9(0x218)+c[_0x7a84f9(0x319)]+_0x7a84f9(0x259)+c['reset']+_0x7a84f9(0x24a)+c['cmd']+'colana\x20admin\x20staff-keys'+c['reset']+_0x7a84f9(0x346)+c['cmd']+'colana\x20admin\x20create-key'+c['reset']+_0x7a84f9(0x2c6)+c['muted']+_0x7a84f9(0x249)+c[_0x7a84f9(0x1f9)]+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Recipient\x20name\x20(required)\x0a\x20\x20\x20\x20\x20\x20'+c[_0x7a84f9(0x238)]+'--type\x20staff|admin|beta'+c[_0x7a84f9(0x1f9)]+_0x7a84f9(0x1e5)+c['muted']+_0x7a84f9(0x274)+c[_0x7a84f9(0x1f9)]+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Email\x20(optional)\x0a\x20\x20\x20\x20\x20\x20'+c[_0x7a84f9(0x238)]+'--expires\x202026-12-31'+c['reset']+_0x7a84f9(0x270)+c['cmd']+'colana\x20admin\x20list-keys'+c[_0x7a84f9(0x1f9)]+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20List\x20DB-stored\x20license\x20keys\x0a\x20\x20\x20\x20\x20\x20'+c[_0x7a84f9(0x238)]+_0x7a84f9(0x2af)+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Filter\x20by\x20type\x0a\x20\x20\x20\x20\x20\x20'+c['muted']+'--status\x20active|revoked'+c['reset']+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20Filter\x20by\x20status\x0a\x20\x20\x20\x20'+c['cmd']+_0x7a84f9(0x1dc)+c[_0x7a84f9(0x1f9)]+_0x7a84f9(0x25f)+c['muted']+'Polar.sh\x20key\x20management:'+c[_0x7a84f9(0x1f9)]+_0x7a84f9(0x218)+c[_0x7a84f9(0x2d1)]+_0x7a84f9(0x271)+c['reset']+'\x0a');}function doctor(){const _0xbe55ec=a0_0x42a21f;console['log'](_0xbe55ec(0x325));}function staffKeys(){const _0x5adc25=a0_0x42a21f,_0x22f167={'jDTQf':function(_0x527d69,_0x4a0251){return _0x527d69+_0x4a0251;},'FezvD':function(_0x2241d1,_0x42d385){return _0x2241d1(_0x42d385);},'yJRRO':_0x5adc25(0x281),'YUHXW':function(_0x503f2e,_0x1b6ab6){return _0x503f2e>_0x1b6ab6;},'XSZuz':_0x5adc25(0x30d)},_0xb30424=process['env'][_0x5adc25(0x1d7)]||'',_0x2a5b7d=process[_0x5adc25(0x26d)][_0x5adc25(0x2d6)]||'',_0x38ba32=_0xb30424[_0x5adc25(0x2d9)](',')['map'](_0x5c8cda=>_0x5c8cda['trim']())[_0x5adc25(0x293)](Boolean),_0x220d87=_0x2a5b7d['split'](',')['map'](_0x2a31cc=>_0x2a31cc['trim']())[_0x5adc25(0x293)](Boolean);if(_0x38ba32['length']===0x0&&_0x220d87['length']===0x0){console['log'](_0x22f167[_0x5adc25(0x250)]);return;}console[_0x5adc25(0x33a)](''),_0x22f167[_0x5adc25(0x25e)](_0x38ba32['length'],0x0)&&(console['log']('\x20\x20'+c[_0x5adc25(0x316)]+'Staff\x20Keys:'+c['reset']),console[_0x5adc25(0x33a)]('\x20\x20'+c['muted']+'─'[_0x5adc25(0x299)](0xa)+c[_0x5adc25(0x1f9)]),_0x38ba32[_0x5adc25(0x328)]((_0x3045bd,_0x1801b4)=>{const _0x1eed49=_0x5adc25;console[_0x1eed49(0x33a)](_0x1eed49(0x211)+_0x22f167[_0x1eed49(0x21d)](_0x1801b4,0x1)+'.\x20'+_0x22f167[_0x1eed49(0x1eb)](maskKey,_0x3045bd)+'\x20\x20(STAFF_KEYS)');}),console['log']('')),_0x220d87[_0x5adc25(0x2b5)]>0x0&&(console['log']('\x20\x20'+c[_0x5adc25(0x316)]+_0x5adc25(0x1e4)+c[_0x5adc25(0x1f9)]),console[_0x5adc25(0x33a)]('\x20\x20'+c['muted']+'─'['repeat'](0xa)+c[_0x5adc25(0x1f9)]),_0x220d87['forEach']((_0x534c77,_0x35f202)=>{const _0x347214=_0x5adc25;console[_0x347214(0x33a)]('\x20\x20\x20\x20'+(_0x35f202+0x1)+'.\x20'+_0x22f167['FezvD'](maskKey,_0x534c77)+_0x347214(0x33e));}),console[_0x5adc25(0x33a)]('')),console[_0x5adc25(0x33a)](_0x22f167[_0x5adc25(0x222)]);}async function main(){const _0x61b83d=a0_0x42a21f,_0x68b50={'wscrL':_0x61b83d(0x28d),'ddFFC':_0x61b83d(0x1df),'LHhYr':function(_0x11f39c){return _0x11f39c();},'ZKcGt':'staff-keys','taVvN':function(_0x3e38d6,_0x1815f1){return _0x3e38d6(_0x1815f1);},'AZpdK':'list-keys'},{command:_0x33f460,flags:_0x56050d,positional:_0x144b48}=parseArgs(process['argv']);if(!_0x33f460||_0x33f460===_0x68b50['wscrL']||_0x33f460==='--help'){showHelp();return;}switch(_0x33f460){case _0x68b50['ddFFC']:return _0x68b50[_0x61b83d(0x1f3)](doctor);case _0x68b50[_0x61b83d(0x313)]:return staffKeys();case _0x61b83d(0x32f):return _0x68b50[_0x61b83d(0x1da)](createKey,_0x56050d);case _0x68b50[_0x61b83d(0x2e9)]:return _0x68b50[_0x61b83d(0x1da)](listKeysCmd,_0x56050d);case _0x61b83d(0x22b):return revokeKeyCmd(_0x144b48);default:console[_0x61b83d(0x2c0)]('\x20\x20'+icons[_0x61b83d(0x266)]+'\x20Unknown\x20command:\x20'+c['value']+_0x33f460+c[_0x61b83d(0x1f9)]),console[_0x61b83d(0x2c0)]('\x20\x20'+c['muted']+'Run\x20\x22colana\x20admin\x20help\x22\x20for\x20usage.'+c[_0x61b83d(0x1f9)]),process[_0x61b83d(0x1fb)](0x1);return;}}main()[a0_0x42a21f(0x2c8)](_0xe953c5=>{const _0x32462e=a0_0x42a21f;console[_0x32462e(0x2c0)]('\x20\x20'+icons['fail']+'\x20'+c['error']+(_0xe953c5['message']||_0xe953c5)+c['reset']),process['exit'](0x1);});