rentabots-sdk 0.8.4 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +21 -12
- package/dist/index.js +1 -1
- package/init.js +18 -7
- package/package.json +1 -1
- package/src/index.ts +146 -95
- package/worker_template.js +66 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
|
+
import { ChildProcess } from 'child_process';
|
|
3
4
|
export declare const CapabilitySchema: z.ZodEnum<{
|
|
4
5
|
code_generation: "code_generation";
|
|
5
6
|
web_browsing: "web_browsing";
|
|
@@ -65,6 +66,8 @@ export interface AgentOptions {
|
|
|
65
66
|
workspaceRoot?: string;
|
|
66
67
|
/** Path to a local log file for redundant logging. */
|
|
67
68
|
localLogPath?: string;
|
|
69
|
+
/** Path to the worker script for Swarm Architecture. Defaults to ./worker.js */
|
|
70
|
+
workerScriptPath?: string;
|
|
68
71
|
}
|
|
69
72
|
export interface AutopilotOptions {
|
|
70
73
|
keywords?: string[];
|
|
@@ -90,9 +93,11 @@ export declare class Agent extends EventEmitter {
|
|
|
90
93
|
private statePath;
|
|
91
94
|
private workspaceRoot;
|
|
92
95
|
private localLogPath;
|
|
96
|
+
private workerScriptPath;
|
|
93
97
|
activeMissions: Map<string, Job>;
|
|
94
98
|
private bidCache;
|
|
95
99
|
private seenMessages;
|
|
100
|
+
private workers;
|
|
96
101
|
private autopilotTimer;
|
|
97
102
|
private autopilotPaused;
|
|
98
103
|
private lastScoutTime;
|
|
@@ -116,23 +121,20 @@ export declare class Agent extends EventEmitter {
|
|
|
116
121
|
private handleStatusRequest;
|
|
117
122
|
private handleManualBidRequest;
|
|
118
123
|
/**
|
|
119
|
-
*
|
|
124
|
+
* Spawn a dedicated worker process for a specific mission.
|
|
125
|
+
* This keeps the main agent process (The Queen) lightweight and responsive.
|
|
120
126
|
*/
|
|
121
|
-
|
|
127
|
+
spawnWorker(job: Job): Promise<ChildProcess>;
|
|
122
128
|
/**
|
|
123
|
-
*
|
|
129
|
+
* Kill an active worker process
|
|
124
130
|
*/
|
|
131
|
+
killWorker(jobId: string): boolean;
|
|
132
|
+
startAutopilot(options?: AutopilotOptions): void;
|
|
125
133
|
initializeMission(jobId: string, repoName?: string): Promise<string>;
|
|
126
|
-
/**
|
|
127
|
-
* Execute a command asynchronously in the mission workspace
|
|
128
|
-
*/
|
|
129
134
|
execute(jobId: string, command: string): Promise<{
|
|
130
135
|
exitCode: number | null;
|
|
131
136
|
output: string;
|
|
132
137
|
}>;
|
|
133
|
-
/**
|
|
134
|
-
* Batch deliver files from local workspace to mission repository
|
|
135
|
-
*/
|
|
136
138
|
deliver(jobId: string, files: string[]): Promise<string[]>;
|
|
137
139
|
private loadState;
|
|
138
140
|
private saveState;
|
|
@@ -153,11 +155,18 @@ export declare class Agent extends EventEmitter {
|
|
|
153
155
|
createMissionRepo(jobId: string, name?: string): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
154
156
|
pushToRepo(jobId: string, remotePath: string, contentOrPath: string, isBlob?: boolean): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
155
157
|
reportUsage(tokens: number): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
158
|
+
spawnTeam(jobId: string, missionTitle: string): Promise<{
|
|
159
|
+
pmSession: {
|
|
160
|
+
exitCode: number | null;
|
|
161
|
+
output: string;
|
|
162
|
+
};
|
|
163
|
+
engSession: {
|
|
164
|
+
exitCode: number | null;
|
|
165
|
+
output: string;
|
|
166
|
+
};
|
|
167
|
+
} | undefined>;
|
|
156
168
|
setProgress(jobId: string, progress: number): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
157
169
|
notifyOwner(message: string): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
158
|
-
/**
|
|
159
|
-
* Send raw diagnostic data to the configured backdoor (webhook)
|
|
160
|
-
*/
|
|
161
170
|
pingBackdoor(data: any): Promise<import("axios").AxiosResponse<any, any, {}> | undefined>;
|
|
162
171
|
log(message: string, level?: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR'): Promise<void>;
|
|
163
172
|
private startHeartbeat;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const a0_0x482e50=a0_0x352d;(function(_0x496154,_0x3dd411){const _0xa04cc1=a0_0x352d,_0x212120=_0x496154();while(!![]){try{const _0x5b71d9=parseInt(_0xa04cc1(0x250))/0x1+parseInt(_0xa04cc1(0x177))/0x2*(parseInt(_0xa04cc1(0x126))/0x3)+parseInt(_0xa04cc1(0x1bd))/0x4*(parseInt(_0xa04cc1(0x1a1))/0x5)+-parseInt(_0xa04cc1(0xee))/0x6*(-parseInt(_0xa04cc1(0x1c0))/0x7)+parseInt(_0xa04cc1(0x1a4))/0x8*(-parseInt(_0xa04cc1(0xf9))/0x9)+parseInt(_0xa04cc1(0x180))/0xa+-parseInt(_0xa04cc1(0x1c4))/0xb;if(_0x5b71d9===_0x3dd411)break;else _0x212120['push'](_0x212120['shift']());}catch(_0x582931){_0x212120['push'](_0x212120['shift']());}}}(a0_0x241b,0x68406));var a0_0x2a3c23=this&&this[a0_0x482e50(0x235)]||(Object[a0_0x482e50(0x1ab)]?function(_0x4b0fe8,_0x5db459,_0xce1117,_0x3bfb03){const _0x211e62=a0_0x482e50,_0x5f2611={'DLRoC':function(_0x27079b,_0x107df1){return _0x27079b===_0x107df1;},'YmFcT':function(_0x433375,_0x25fd16){return _0x433375 in _0x25fd16;},'AESZl':_0x211e62(0x224)};if(_0x5f2611[_0x211e62(0x1c8)](_0x3bfb03,undefined))_0x3bfb03=_0xce1117;var _0x44d12a=Object[_0x211e62(0x243)](_0x5db459,_0xce1117);(!_0x44d12a||(_0x5f2611[_0x211e62(0x128)](_0x5f2611[_0x211e62(0x262)],_0x44d12a)?!_0x5db459[_0x211e62(0x1fc)]:_0x44d12a[_0x211e62(0x27d)]||_0x44d12a[_0x211e62(0x178)]))&&(_0x44d12a={'enumerable':!![],'get':function(){return _0x5db459[_0xce1117];}}),Object[_0x211e62(0x24c)](_0x4b0fe8,_0x3bfb03,_0x44d12a);}:function(_0x4d4431,_0x3e6f28,_0x5c1b76,_0x5abe88){const _0x1102b7=a0_0x482e50,_0x5b100b={'uUhYW':function(_0x46fcee,_0x52db53){return _0x46fcee===_0x52db53;}};if(_0x5b100b[_0x1102b7(0x1ba)](_0x5abe88,undefined))_0x5abe88=_0x5c1b76;_0x4d4431[_0x5abe88]=_0x3e6f28[_0x5c1b76];}),a0_0x548a79=this&&this[a0_0x482e50(0x1d7)]||(Object[a0_0x482e50(0x1ab)]?function(_0x24cd52,_0x5a1d19){const _0x33c74c=a0_0x482e50,_0x1dc02e={'NFCoM':_0x33c74c(0x1cc)};Object[_0x33c74c(0x24c)](_0x24cd52,_0x1dc02e[_0x33c74c(0x123)],{'enumerable':!![],'value':_0x5a1d19});}:function(_0x36ee58,_0x2cb204){const _0x2578f8=a0_0x482e50,_0x2ae0f0={'qYOBj':_0x2578f8(0x1cc)};_0x36ee58[_0x2ae0f0[_0x2578f8(0x23b)]]=_0x2cb204;}),a0_0x38c3a1=this&&this[a0_0x482e50(0x263)]||(function(){const _0x420c88=a0_0x482e50,_0x413df2={'ZfNAI':_0x420c88(0x1d6),'NYwVX':function(_0x2c3649,_0x5a3c49){return _0x2c3649(_0x5a3c49);},'fjbJb':_0x420c88(0x286),'JMwNP':function(_0x3d9daf,_0xe3a5e){return _0x3d9daf!=_0xe3a5e;},'Tptab':function(_0x383c10,_0x49d1d6){return _0x383c10<_0x49d1d6;},'guyuO':function(_0x2e639d,_0x2c3372){return _0x2e639d!==_0x2c3372;},'EmHlq':_0x420c88(0x1cc),'vsFbl':function(_0x17e655,_0x5ae930,_0x1a79be,_0x5db168){return _0x17e655(_0x5ae930,_0x1a79be,_0x5db168);},'jjwLi':function(_0x487b99,_0x5853dc,_0x33236f){return _0x487b99(_0x5853dc,_0x33236f);},'TQxkJ':function(_0x534d97,_0x43f169,_0xb2c851){return _0x534d97(_0x43f169,_0xb2c851);},'dhlJK':function(_0x2df224){return _0x2df224();}},_0x48791a=(function(){let _0x1f9091=!![];return function(_0x1235e7,_0x46dba1){const _0x349e20=_0x1f9091?function(){const _0x3d22b0=a0_0x352d;if(_0x46dba1){const _0x57e6fc=_0x46dba1[_0x3d22b0(0x281)](_0x1235e7,arguments);return _0x46dba1=null,_0x57e6fc;}}:function(){};return _0x1f9091=![],_0x349e20;};}()),_0x546b42=_0x413df2[_0x420c88(0x1c6)](_0x48791a,this,function(){const _0x27ee3f=_0x420c88;return _0x546b42[_0x27ee3f(0x101)]()[_0x27ee3f(0x102)](_0x413df2[_0x27ee3f(0x1bc)])[_0x27ee3f(0x101)]()[_0x27ee3f(0xe2)](_0x546b42)[_0x27ee3f(0x102)](_0x413df2[_0x27ee3f(0x1bc)]);});_0x413df2[_0x420c88(0x122)](_0x546b42);var _0x2df0ae=function(_0x53bce6){const _0x4204c0=_0x420c88;return _0x2df0ae=Object[_0x4204c0(0x246)]||function(_0x1ba330){const _0x15f06f=_0x4204c0;var _0x8aab15=[];for(var _0x1e02c3 in _0x1ba330)if(Object[_0x15f06f(0x1f7)][_0x15f06f(0x189)][_0x15f06f(0x1bf)](_0x1ba330,_0x1e02c3))_0x8aab15[_0x8aab15[_0x15f06f(0x22f)]]=_0x1e02c3;return _0x8aab15;},_0x413df2[_0x4204c0(0x141)](_0x2df0ae,_0x53bce6);};return function(_0xec0e15){const _0x5ebc93=_0x420c88,_0x2b55e1=_0x413df2[_0x5ebc93(0x119)][_0x5ebc93(0x1a7)]('|');let _0x1f4797=0x0;while(!![]){switch(_0x2b55e1[_0x1f4797++]){case'0':if(_0x413df2[_0x5ebc93(0x12b)](_0xec0e15,null)){for(var _0x4352fb=_0x413df2[_0x5ebc93(0x141)](_0x2df0ae,_0xec0e15),_0x59dd8d=0x0;_0x413df2[_0x5ebc93(0x1b2)](_0x59dd8d,_0x4352fb[_0x5ebc93(0x22f)]);_0x59dd8d++)if(_0x413df2[_0x5ebc93(0x1b0)](_0x4352fb[_0x59dd8d],_0x413df2[_0x5ebc93(0x28c)]))_0x413df2[_0x5ebc93(0x184)](a0_0x2a3c23,_0x3e5a3f,_0xec0e15,_0x4352fb[_0x59dd8d]);}continue;case'1':_0x413df2[_0x5ebc93(0x1ed)](a0_0x548a79,_0x3e5a3f,_0xec0e15);continue;case'2':var _0x3e5a3f={};continue;case'3':if(_0xec0e15&&_0xec0e15[_0x5ebc93(0x1fc)])return _0xec0e15;continue;case'4':return _0x3e5a3f;}break;}};}()),a0_0x21d12b=this&&this[a0_0x482e50(0x176)]||function(_0x404482){const _0x7e3e71=a0_0x482e50;return _0x404482&&_0x404482[_0x7e3e71(0x1fc)]?_0x404482:{'default':_0x404482};};Object[a0_0x482e50(0x24c)](exports,a0_0x482e50(0x1fc),{'value':!![]}),exports[a0_0x482e50(0x125)]=exports[a0_0x482e50(0x219)]=exports[a0_0x482e50(0x1fb)]=exports[a0_0x482e50(0x108)]=exports[a0_0x482e50(0x25f)]=void 0x0;function a0_0x241b(){const _0x88f123=['q29TBwfUzcbMAw5PC2HLzcb3AxrOignVzguG','AM9I','rMfPBgvKihrVihbHCNnLigLUy29TAw5NihnVy2TLDcbTzxnZywDL','C3rYAw5NAwz5','twfUDwfSigjPzcbYzxf1zxn0zwqGyNKGB3DUzxiU','v2vIu29JA2v0ierPC2nVBM5Ly3rLzdOG','vxbSB2fKAw5NigzPBgu6ia','4P2mifjLBNrHqM90CYbbueKGs2v5igLZig1PC3nPBMCUifbHC3mGAxqGAw4GDgHLignVBNn0CNvJDg9Yig9YihnLDcbsru5uqujpvfnFqvbjx0TfwsbPBIaUzw52','r1z1DM8','EhLtC3G','zujZDMy','BwTKAxjtEw5J','uMvJB3zLCMvKigfJDgL2zsbTAxnZAw9UigzYB20Gy2XVDwq6ia','l3bYB2DYzxnZ','q2fUBM90ihvWBg9HzcbLBxb0EsbMAwXLoIa','zuLMAgW','rgvSAxzLCMLUzYa','DMvYC2LVBG','EeDmu2W','uLvotKLorYdILRBVUi8','vMXOthi','z2v0twvZC2fNzxm','4P2mievYCM9YigzPBMrPBMCGBwLZC2LVBJOG','x19PBxbVCNrezwzHDwX0','mtC1mJrgsMP0wLa','y29UzMLNDxjHyMXL','y2XVC2u','zgvSzxrL','txnPsKu','icHtreSGDG','qMvHCMvYia','l3jLCg8','C29JA2v0lMLVlwnSAwvUDa','mJyXnZCYmhzTtunPza','Ew5wze0','rvjst1i','yMLKCW','DNngyMW','zxHLy3v0Aw9Ux2XVzW','ENf3svy','DxbSB2fKrgvSAxzLCMfIBgu','C3LUy0zYB21dBg91za','AgfZt3DUuhjVCgvYDhK','CgfYC2u','qxv0B3bPBg90ihnJB3v0igzHAwXLzdOG','zxHLy3v0zq','zu53Efi','BwvZC2fNzq','C2vUze1LC3nHz2u','ugf1C2vK','l21LC3nHz2vZ','l25VDgLMEq','ywDLBNrZlW','rwfjyuu','wK9eB3q','rfPtDva','zw5YAwnOsM9I','zg5rCfa','AM9PBL9TAxnZAw9U','DuHvEeO','g1SZmM0','Aw5FChjVz3jLC3m','zgLZChv0zwq','zxHPC3rZu3LUyW','DhjPBq','zgLUD0W','mtq2nZiWnurqq2XPwG','u3rHDhvZienVzgu6ia','DNfTyvu','mtm0mZj2AuHyD3C','8j+tNsbBu1ret1vuxsa','sfDXEhK','C3bSAxq','l3bHDxnL','y2HPBgrFChjVy2vZCW','whHfywe','y3jLyxrL','AfDWB0y','C3rYAw5N','yxv0B3bPBg90vgLTzxi','l3n0yxr1CW','z3v5Du8','B25nzxnZywDL','vhb0ywi','C3rHCNrbDxrVCgLSB3q','uvf5uxC','CMvJB25Uzwn0','BMv3x2PVyG','yxv0B21HDgLVBG','C3rKB3v0','C2vLBK1LC3nHz2vZ','DvvOwvC','Bg9Hzfn0yxrL','wMzoquK','oePkC1PArq','DhHqCKi','y2fSBa','mZKYyLDkz2PQ','Eg1Ouva','EuzfuLi','D29YA3nWywnL','mti3nZy1nZDxzfnjBgq','4P2mie1HBNvHBcbIAwqGzMfPBgvKoIa','vff4A0O','Ee12sw4','reXsB0m','v2rKDLa','C2L6zq','DgvSEMG','zgvMyxvSDa','rKHeuLG','ELL6vLK','CMvWBgfJzq','D3jPDgvgAwXLu3LUyW','zM9YrwfJAa','D2vIC29JA2v0','BNvTyMvY','Dxb0Aw1L','DeDuB0C','kcGOlISPkYKRksSK','x19ZzxrnB2r1BgvezwzHDwX0','CY4UlG','mc44lJq','CefqwM0','ig1PC3nPB25ZlcbbDxrVCgLSB3q6ia','C2vUzgvY','ywDLBNq','CgvYC2LZDfn0yxrL','DgL0Bgu','l3jLCg8VzMLSzxm','tg9JywWGD29YA3nWywnLigLUAxrPywXPEMvKigf0oIa','rMfPBgvKihrVihnHDMuGC3rHDgu6ia','tNLyv2W','tLnVsfC','DxbSB2fKrMLSzq','zgLZy29UBMvJDgvK','cI0GtgfZDcbnyxjRzxrWBgfJzsbty2fUoIa','v0rcEfO','CgLUz0jHy2TKB29Y','8j+KLIbBu1rbvfvtifjfue9svf0klsbby3rPDMuGtwLZC2LVBNm6ia','yMfZzw5HBwu','C3rHCNrizwfYDgjLyxq','AMP3tgK','D2vIx2jYB3DZAw5N','l2HLyxj0yMvHDa','C3rHDgvqyxrO','wXTBmZvTu0rlg1SWBv0G','ChvZAfrVuMvWBW','Bg9N','BwfYA0nVBxbSzxrL','vfnUr1K','zNjVBq','ChjVDg90ExbL','B3b0Aw9UywW','CMvWB3j0vxnHz2u','ihvUCMvHzcbTzxnZywDLCY4','sM9Iu2nOzw1H','x19LC01VzhvSzq','ALLcAK8','zw1PDa','y29UBMvJDgvK','DuDZBwm','B25iAxjLza','t25SAw5LigfZoIa','tKHnBue','rMfPBgvKihrVihjLywqGBg9JywWGzMLSztOG','EM91AMq','AgfUzgXLtwfUDwfSqMLKuMvXDwvZDa','AgvHCNrIzwf0sw50zxj2ywW','y2f0y2G','C0TTBwK','A2v5D29Yzhm','y2fWywjPBgL0AwvZ','C2XPy2u','Dg9ju09tDhjPBMC','Aw5PDgLHBgL6zu1PC3nPB24','Cg9ZDa','DhLWzq','yLPJzwS','l3vWBg9Hzd9MAwXLBMfTzt0','D29YA3nWywnLuM9VDa','zgvIDwC','yNvKz2v0qw1VDw50','DKPcy2G','ywDLBNrZl21Ll3vUCMvHza','twH5v1m','twvZC2fNzvnJAgvTyq','AM9PBL9TyxjRzxrWBgfJzq','AM1dtNK','zxzLBNrZ','yMLKvgvTCgXHDgu','AM9Nq1a','w0jbq0Tet09sierjquDot1nusunD','uMH4D1q','r2r2zeG','EM9K','g1SZmw0','z2v0','BgP3s3u','ChvZAa','u3r4vee','C29JA2v0','AgfZ','zKnsAgW','q2f1z2H0ihvWig9Uia','zgvZy3jPChrPB24','sxjNruS','C3bHD24','BgvUz3rO','8j+oRYbbDxrVCgLSB3q6iejPzgrPBMCGB24GiG','C2vUzeHLyxj0yMvHDa','sw5IB3GGy2HLy2SGzMfPBgvKoIa','BwLZC2LVBL9HC3nPz25Lzf8','mxWXm3WXnxWYmhWWFdn8n3WXoxWXnNWXmxWXohW4Fde3Fde0Fdv8nhWYFdeYFdz8mJf8oxWXma','x19JCMvHDgvcAw5KAw5N','q0XgCMK','CMvHzezPBgvtEw5J','v0fstG','ywDLBNrZl21Ll2fJAW','rMfPBgvKihrVihn5BMmGy2fWywjPBgL0AwvZihrVigDYAwqSignVBNrPBNvPBMCUlI4','CvLpqMO','A2HeEeK','u0rlx1zfuLnjt04','wXTBmZfTu0rlievsuK9sg1SWBv0GrMfPBgvKihrVihn0CMvHBsbSB2CGDg8GzgfZAgjVyxjKoIa','DhLWAw5Nx3n0yxrL','4PA277Ipief1Dg9WAwXVDcbsrvnvtuveigj5ig93BMvYlG','uezRu1e','y3DK','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','C29Tzq','Bg9Nsw50zxjUywW','z2v0t3DUuhjVCgvYDhLoyw1LCW','Chv0','AgfUzgXLsw5JB21PBMDnzxnZywDL','z2v0t3bLBK1PC3nPB25Z','zgf0yv9HBMfSExnPCW','DxrMoa','zgvMAw5LuhjVCgvYDhK','B2jQzwn0','zxjYB3i','l2nVBxbSzxrL','ody0nJHov3D0A3q','AM9Iswq','zvPRwvq','tfHUvKS','A29szgS','C3rKzxjY','ywDLBNrFC3rHDguUANnVBG','C3vJy2vZCW','q2XVDwqGC3LUyYbMywLSzwqSihjLBhLPBMCGB24GBg9JywWGC3rHDguU','EevWvMi','C2nVDxrPBMDjBNrLCNzHBa','C2v0','yxjJAgL2zwq','Bwfirxq','ywDLBNrjza','q2fWywjPBgL0EvnJAgvTyq','y3jLyxrLtwLZC2LVBLjLCg8','vLPvtMm','quvtwMW','x19PBxbVCNrtDgfY','Aw5PDfnVy2TLDa','zgLZCgXHEu5HBwu','uefvu0veiokpUo+4JW','u1vdq0vtuW','C2v0vhLWAw5N','vwDlAMi','BMv3x21LC3nHz2u','tvLSvwe','cI0GqwDLBNqGsuq6ia','DePnDwW','uKzPD0i','sKrbAgS','C3rHDhvZ','EezJt28','BgfZDfnJB3v0vgLTzq','r2vUDvm','A2v5CW','zgf0yq','8j+oIsbnAxnZAw9UiefZC2LNBMvKoIa','B0fSyva','xrTBmg0G','ELb3Awm','s1LqAey','y29UBMvJDa','uMvHzgLUzYbSB2nHBcbMAwXLoIa','D3jPDgfIBgu','lIbjignHBIbLEgvJDxrLihrOAxmGBwLZC2LVBIb3AxrOigHPz2GGChjLy2LZAw9UlG','igf0DgvTChrZlG','AMvQveq','yxbWBhK','s2TOqM8','v2vIu29JA2v0ifjLy29UBMvJDgvKigfMDgvYia','4PYfifTeruXjvKvswv0GvgHLigzVBgXVD2LUzYbMAwXLCYbOyxzLigjLzw4GyxjJAgL2zwqGAw4GEw91CIbZzwn1CMuGCMvWB3nPDg9YEtOk','z3P6twO','m3WYFdb8mxW0','BwfW','yxbWBgLJyxrPB24VB2n0zxqTC3rYzwfT','Cgf0Aa','cI0Gqxv0B3bPBg90oIa','C3rHDfn5BMm','rw1iBhe','C2f2zvn0yxrL','4O+477Ipief1Dg9WAwXVDcbqqvvtruqGyNKGB3DUzxiU','y29UC3rYDwn0B3i','zMv0y2HvBNjLywrnzxnZywDLCW','DxbKyxrLuhjVzMLSzq','AhvTyw4','yMLKq2fJAgu','nhWZFdj8mhWX','l2XVz3m','AM9PBG','ywn0AxzLtwLZC2LVBNm','AM9ICY8','DMntuwK','B25ozxDkB2i','mZaZndH6tevHDe0','z3H5quK','cI0Gu0rlifzLCNnPB246ihy','Dg9mB3DLCKnHC2u','Aw5JBhvKzxm','zgLZy29UBMvJDa','Ahr0Chm6lY9Yzw50ywjVDhmUy29Tl2fWAq','qxbREgu','uMvWB3nPDg9YEsbPBML0AwfSAxPHDgLVBIb3yxjUAw5NoIa','yxbP','yxv0B3bPBg90ugf1C2vK','nJKZDxDoAefl','g1SZm20','vxbSB2fKigzHAwXLzdOG','uuLWthC','yxnZAwDUBwvUDa','B3bLBG','yxjYyxK','BM90Awz5t3DUzxi','Dg9tDhjPBMC','C2vHCMnO','tvvWtK8','ywrK','AM9ICW','zMLSDgvY','BwvZC2fNzxm','sM9Iu3rHDhvZu2nOzw1H','q29UBMvJDgLUzYb0BYbhCMLKoIa','y29TCgXLDgvK','l2fWAq','C3rHCNrZv2L0Aa','y2f0zwDVCNK','8j+AGcbbDxrVCgLSB3qGzw5NywDLzc4Gu2nVDxrPBMCGzxzLCNKG','CMvZCg9UC2u','zKHNrMC','tMv2zxi','l2zPBgvZ','zNjVBuvUDhjPzxm','Dg9mB2nHBgvuAw1Lu3rYAw5N','zgvSAxzLCMfIBgu','u2vYDMvYievYCM9YoIa','Du51z2i','EhzHu2S','zMPIsMi','CgjbBxO','ANPQvwe','ks4UlG','zgvSAxzLCG','rxzLBNrfBwL0DgvY','lI4U','Aw1Hz2vFz2vUzxjHDgLVBG','sgvHCNrIzwf0igzHAwXLza','zgHSsKS','tKzdB00','rMfPBgvKihrVihbYB2nLC3mGBwLZC2LVBIbHC3nPz25Tzw50','qwDLBNq','mtCXy2vSC1j5','rxHLy3v0Aw5NignVBw1HBMqGAw4G','ww1gy1q','thDdzKS','zKrRqKm','sK13tLa','DvPbwwG','qwn0AxzL','tg9HzgvKihn0yxrLoIa','igzPBgvZigzVCIbTAxnZAw9Uia','l21HBMfNzq','iI4UlG','y29Kzv9Nzw5LCMf0Aw9U','sxLszwu','yNvKz2v0','l2jPzca','EKrHzfK','zwX1qve','C2v0uhjVz3jLC3m','CMvZB2X2zq','ssbHBsbHBIbHDxrVBM9TB3vZihvUAxqGB3b0Aw1PEMvKigzVCIa','uMvTB3rLihjLCg9ZAxrVCNKGAw5PDgLHBgL6zwqU','Bg9JywXmB2DqyxrO','ENHyz24','z2v0twLZC2LVBG','z0P6zNG','zw51Bq','tLL3vLG','rMfPBgvKihrVigXVywqGC3rHDgu6ia','ywDLBNrZl21L','y29UDgvUDa','yMLK','l3jLC3vTzq','xsbB','yxHPB3m','CgfJA2fNzs5QC29U','DhjHBNnSyxrPB24','r2DAt1m','AM9ICZ9ZDgf0Dxm9Aw5FChjVz3jLC3m','yxbPs2v5','ywTurMi','tM5yz1K','BwLUqNvKz2v0','AgfUzgXLu3rHDhvZuMvXDwvZDa','zw50CMLLCW','4PYfifn1y2nLC3nMDwXSEsbWBgfJzwqGyMLKig9UoIa','v2vIu29JA2v0ieXPBMSGrxn0ywjSAxnOzwqU','AgvHCNrIzwf0vgLTzxi','yxbWzw5KrMLSzvn5BMm','BwvLwwG','su5gtW','yMfZzvvYBa','rMLSzsbUB3qGzM91BMq6ia','vuLJzM4','vxHYDge','ENPIrNm','zxHLy3v0Aw9Ux2vYCM9Y'];a0_0x241b=function(){return _0x88f123;};return a0_0x241b();}function a0_0x352d(_0x18aac2,_0x3e8f12){_0x18aac2=_0x18aac2-0xe1;const _0x4073bb=a0_0x241b();let _0x506a31=_0x4073bb[_0x18aac2];if(a0_0x352d['xpiGTC']===undefined){var _0x3868a4=function(_0x5c1a72){const _0x6d275='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1320af='',_0x234838='',_0x5ba47f=_0x1320af+_0x3868a4;for(let _0x55da16=0x0,_0xff041a,_0x1dc562,_0x28c8d9=0x0;_0x1dc562=_0x5c1a72['charAt'](_0x28c8d9++);~_0x1dc562&&(_0xff041a=_0x55da16%0x4?_0xff041a*0x40+_0x1dc562:_0x1dc562,_0x55da16++%0x4)?_0x1320af+=_0x5ba47f['charCodeAt'](_0x28c8d9+0xa)-0xa!==0x0?String['fromCharCode'](0xff&_0xff041a>>(-0x2*_0x55da16&0x6)):_0x55da16:0x0){_0x1dc562=_0x6d275['indexOf'](_0x1dc562);}for(let _0xbfde89=0x0,_0x1dd5e4=_0x1320af['length'];_0xbfde89<_0x1dd5e4;_0xbfde89++){_0x234838+='%'+('00'+_0x1320af['charCodeAt'](_0xbfde89)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x234838);};a0_0x352d['MdUITv']=_0x3868a4,a0_0x352d['vLSLAX']={},a0_0x352d['xpiGTC']=!![];}const _0x241ba5=_0x4073bb[0x0],_0x352dc1=_0x18aac2+_0x241ba5,_0xfb2e7a=a0_0x352d['vLSLAX'][_0x352dc1];if(!_0xfb2e7a){const _0x5b23c1=function(_0x6671a5){this['CXUcHW']=_0x6671a5,this['iYppik']=[0x1,0x0,0x0],this['apXXjs']=function(){return'newState';},this['VsTWSn']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['oYyilf']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x5b23c1['prototype']['dwsxcu']=function(){const _0x2cf12a=new RegExp(this['VsTWSn']+this['oYyilf']),_0x164fe6=_0x2cf12a['test'](this['apXXjs']['toString']())?--this['iYppik'][0x1]:--this['iYppik'][0x0];return this['CwVRQh'](_0x164fe6);},_0x5b23c1['prototype']['CwVRQh']=function(_0x46d71b){if(!Boolean(~_0x46d71b))return _0x46d71b;return this['MbRVaN'](this['CXUcHW']);},_0x5b23c1['prototype']['MbRVaN']=function(_0x508ea2){for(let _0x356210=0x0,_0x455860=this['iYppik']['length'];_0x356210<_0x455860;_0x356210++){this['iYppik']['push'](Math['round'](Math['random']())),_0x455860=this['iYppik']['length'];}return _0x508ea2(this['iYppik'][0x0]);},new _0x5b23c1(a0_0x352d)['dwsxcu'](),_0x506a31=a0_0x352d['MdUITv'](_0x506a31),a0_0x352d['vLSLAX'][_0x352dc1]=_0x506a31;}else _0x506a31=_0xfb2e7a;return _0x506a31;}const a0_0x2f789c=a0_0x21d12b(require(a0_0x482e50(0x148))),a0_0x56e62b=require(a0_0x482e50(0x17f)),a0_0x2fbea6=require(a0_0x482e50(0x222)),a0_0x46759d=require(a0_0x482e50(0x21c)),a0_0x3b77e2=a0_0x38c3a1(require('fs')),a0_0x2b5193=a0_0x38c3a1(require(a0_0x482e50(0x289))),a0_0x5ef7ec=require(a0_0x482e50(0x1a9));exports[a0_0x482e50(0x25f)]=a0_0x2fbea6['z'][a0_0x482e50(0x140)]([a0_0x482e50(0x132),a0_0x482e50(0x1ee),a0_0x482e50(0x24a),a0_0x482e50(0x120),a0_0x482e50(0x1b7),a0_0x482e50(0x14a)]),exports[a0_0x482e50(0x108)]=a0_0x2fbea6['z'][a0_0x482e50(0x140)]([a0_0x482e50(0xfe),a0_0x482e50(0x19c),a0_0x482e50(0x10a),a0_0x482e50(0x25c),a0_0x482e50(0x19d)]),exports[a0_0x482e50(0x1fb)]=a0_0x2fbea6['z'][a0_0x482e50(0x24d)]({'id':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'title':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'description':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'budget':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'category':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'status':exports[a0_0x482e50(0x108)],'createdAt':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'progress':a0_0x2fbea6['z'][a0_0x482e50(0x1d3)]()[a0_0x482e50(0x1f8)]()}),exports[a0_0x482e50(0x219)]=a0_0x2fbea6['z'][a0_0x482e50(0x24d)]({'id':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'jobId':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'content':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'senderId':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'createdAt':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'sender':a0_0x2fbea6['z'][a0_0x482e50(0x24d)]({'id':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'displayName':a0_0x2fbea6['z'][a0_0x482e50(0x1ad)](),'type':a0_0x2fbea6['z'][a0_0x482e50(0x140)]([a0_0x482e50(0xe5),a0_0x482e50(0x1dd)])})});let a0_0x45e248=a0_0x482e50(0x1d9);try{const a0_0x1e86d8=a0_0x2b5193[a0_0x482e50(0xe9)](__dirname,'..',a0_0x482e50(0x149));if(a0_0x3b77e2[a0_0x482e50(0x19e)](a0_0x1e86d8)){const a0_0x53f66a=JSON[a0_0x482e50(0x18a)](a0_0x3b77e2[a0_0x482e50(0x237)](a0_0x1e86d8,a0_0x482e50(0x24b)));a0_0x45e248=a0_0x53f66a[a0_0x482e50(0x170)];}}catch(a0_0x49a60c){}class a0_0x510224 extends a0_0x46759d[a0_0x482e50(0x11e)]{constructor(_0x40a530={}){const _0x324686=a0_0x482e50,_0x3e6aa4={'NSoHW':_0x324686(0x234),'IrgEK':_0x324686(0x166),'dnQpP':_0x324686(0x1c3),'pbAmz':_0x324686(0xf4),'UIcfn':function(_0x57f163,_0x3668e7){return _0x57f163!==_0x3668e7;},'zqwIV':function(_0x50b827,_0x1871c5){return _0x50b827===_0x1871c5;},'FHDRX':_0x324686(0x1ad),'yFERR':_0x324686(0x256)},_0x315263=_0x3e6aa4[_0x324686(0x1e4)][_0x324686(0x1a7)]('|');let _0x56e4dc=0x0;while(!![]){switch(_0x315263[_0x56e4dc++]){case'0':this[_0x324686(0x1f0)]=null;continue;case'1':super();continue;case'2':this[_0x324686(0x207)]=_0x40a530[_0x324686(0x207)]||0x7530;continue;case'3':this[_0x324686(0x13c)]=null;continue;case'4':this[_0x324686(0x20b)]=_0x40a530[_0x324686(0x20b)]||[];continue;case'5':this[_0x324686(0x214)]=_0x40a530[_0x324686(0x214)]||![];continue;case'6':this[_0x324686(0x13c)]=_0x40a530[_0x324686(0x13c)]||null;continue;case'7':this[_0x324686(0xea)]=new Map();continue;case'8':this[_0x324686(0x272)]=null;continue;case'9':if(!this[_0x324686(0x14d)])throw new Error(_0x3e6aa4[_0x324686(0x22d)]);continue;case'10':this[_0x324686(0xf7)]=a0_0x2f789c[_0x324686(0x1cc)][_0x324686(0x1ab)]({'baseURL':this[_0x324686(0x159)],'headers':{'x-api-key':this[_0x324686(0x14d)],'x-sdk-version':a0_0x510224[_0x324686(0x23d)]}});continue;case'11':this[_0x324686(0x1ae)]=null;continue;case'12':this[_0x324686(0x213)]=_0x40a530[_0x324686(0x213)]||a0_0x2b5193[_0x324686(0xe9)](process[_0x324686(0x242)](),_0x3e6aa4[_0x324686(0x198)]);continue;case'13':this[_0x324686(0x25e)]=null;continue;case'14':this[_0x324686(0x159)]=(_0x40a530[_0x324686(0x159)]||_0x3e6aa4[_0x324686(0x11a)])[_0x324686(0x1cf)](/\/$/,'');continue;case'15':this[_0x324686(0x228)]=null;continue;case'16':this[_0x324686(0x1b9)]=new Set();continue;case'17':this[_0x324686(0x14d)]=_0x40a530[_0x324686(0x14d)]||process.env.RENTABOTS_API_KEY||process.env.AGENT_API_KEY||'';continue;case'18':this[_0x324686(0xf8)]=![];continue;case'19':this[_0x324686(0xe6)]=new Set();continue;case'20':this[_0x324686(0x155)]=null;continue;case'21':_0x3e6aa4[_0x324686(0x15b)](_0x40a530[_0x324686(0x1de)],![])&&(this[_0x324686(0x1f0)]=_0x3e6aa4[_0x324686(0x186)](typeof _0x40a530[_0x324686(0x1de)],_0x3e6aa4[_0x324686(0x1cd)])?_0x40a530[_0x324686(0x1de)]:a0_0x2b5193[_0x324686(0xe9)](process[_0x324686(0x242)](),_0x3e6aa4[_0x324686(0x1c2)]));continue;}break;}}async[a0_0x482e50(0x27b)](){const _0x1d4cbf=a0_0x482e50,_0x23613c={'WDBxZ':_0x1d4cbf(0x143),'PFkSQ':function(_0x3efe85,_0x3f8c9a){return _0x3efe85>_0x3f8c9a;},'UgKjb':_0x1d4cbf(0x23a),'zxXgn':_0x1d4cbf(0x238)};this[_0x1d4cbf(0x245)](_0x1d4cbf(0x109)+this[_0x1d4cbf(0x159)]+_0x1d4cbf(0x17c)+a0_0x510224[_0x1d4cbf(0x23d)]+_0x1d4cbf(0x11c));try{this[_0x1d4cbf(0x1bb)]();const _0x28c013=await this[_0x1d4cbf(0xf7)][_0x1d4cbf(0x224)](_0x23613c[_0x1d4cbf(0x1e8)])[_0x1d4cbf(0x208)](_0xf62340=>{const _0x46508f=_0x1d4cbf;if(_0xf62340[_0x46508f(0x10f)])throw new Error(_0xf62340[_0x46508f(0x10f)][_0x46508f(0x275)][_0x46508f(0x24e)]||_0x46508f(0x116)+_0xf62340[_0x46508f(0x10f)][_0x46508f(0x270)]);throw _0xf62340;});this[_0x1d4cbf(0x25e)]=_0x28c013[_0x1d4cbf(0x275)][_0x1d4cbf(0x1dd)]['id'],await this[_0x1d4cbf(0x188)](),await this[_0x1d4cbf(0xe3)](),this[_0x1d4cbf(0x264)](),this[_0x1d4cbf(0x1ec)](this[_0x1d4cbf(0x207)]),this[_0x1d4cbf(0x245)](_0x1d4cbf(0x202)+_0x28c013[_0x1d4cbf(0x275)][_0x1d4cbf(0x1dd)][_0x1d4cbf(0x265)]);if(_0x23613c[_0x1d4cbf(0x241)](this[_0x1d4cbf(0x20b)][_0x1d4cbf(0x22f)],0x0))try{await this[_0x1d4cbf(0xe4)]({'skills':this[_0x1d4cbf(0x20b)]});}catch(_0x596718){this[_0x1d4cbf(0x245)](_0x23613c[_0x1d4cbf(0x269)],_0x23613c[_0x1d4cbf(0x13d)]);}return{'success':!![],'agent':_0x28c013[_0x1d4cbf(0x275)][_0x1d4cbf(0x1dd)]};}catch(_0x4598f8){const _0xb48867=_0x4598f8[_0x1d4cbf(0x10f)]?.[_0x1d4cbf(0x275)]?.[_0x1d4cbf(0x24e)]||_0x4598f8[_0x1d4cbf(0x18e)]||_0x1d4cbf(0x1a2)+_0x4598f8[_0x1d4cbf(0x10f)]?.[_0x1d4cbf(0x270)];return{'success':![],'error':_0xb48867};}}async[a0_0x482e50(0xe3)](){const _0x3afbd6=a0_0x482e50,_0x1e7580={'StxTA':_0x3afbd6(0x217),'HWqxy':function(_0x393cd1,_0x22bf88){return _0x393cd1>_0x22bf88;},'WddvP':_0x3afbd6(0x239),'xGLSl':_0x3afbd6(0x238)};try{const _0x2b4115=await this[_0x3afbd6(0xf7)][_0x3afbd6(0x224)](_0x1e7580[_0x3afbd6(0x227)]),_0x5c2c62=_0x2b4115[_0x3afbd6(0x275)][_0x3afbd6(0x107)];if(_0x1e7580[_0x3afbd6(0x1a6)](_0x5c2c62[_0x3afbd6(0x22f)],0x0)){this[_0x3afbd6(0x245)](_0x3afbd6(0x22b)+_0x5c2c62[_0x3afbd6(0x22f)]+_0x3afbd6(0x1fa));let _0x454b96='';for(const _0x21620b of _0x5c2c62){!this[_0x3afbd6(0x1b9)][_0x3afbd6(0x229)](_0x21620b['id'])&&(this[_0x3afbd6(0x1b9)][_0x3afbd6(0x104)](_0x21620b['id']),this[_0x3afbd6(0x248)](_0x21620b),_0x454b96=_0x21620b['id']);}_0x454b96&&await this[_0x3afbd6(0xf7)][_0x3afbd6(0x20f)](_0x1e7580[_0x3afbd6(0x1c9)],{'messageId':_0x454b96});}}catch(_0x408762){this[_0x3afbd6(0x245)](_0x3afbd6(0x232)+_0x408762[_0x3afbd6(0x18e)],_0x1e7580[_0x3afbd6(0x171)]);}}async[a0_0x482e50(0x188)](){const _0x2a9c5b=a0_0x482e50,_0x489b68={'zoujd':_0x2a9c5b(0x14c),'zDadY':_0x2a9c5b(0x258),'MhyWS':_0x2a9c5b(0x238)};try{const _0x51f423=await this[_0x2a9c5b(0xf7)][_0x2a9c5b(0x224)](_0x489b68[_0x2a9c5b(0x205)]),_0x3b4bed=_0x51f423[_0x2a9c5b(0x275)][_0x2a9c5b(0x275)][_0x2a9c5b(0x106)](_0x2e7016=>_0x2e7016[_0x2a9c5b(0x25e)]===this[_0x2a9c5b(0x25e)]);for(const _0x9a629 of _0x3b4bed){if(!this[_0x2a9c5b(0xea)][_0x2a9c5b(0x229)](_0x9a629['id'])){const _0x518d5b=this[_0x2a9c5b(0x197)](_0x9a629);this[_0x2a9c5b(0xea)][_0x2a9c5b(0x25b)](_0x518d5b['id'],_0x518d5b),this[_0x2a9c5b(0x245)](_0x2a9c5b(0x16b)+_0x518d5b[_0x2a9c5b(0x1df)]);}}this[_0x2a9c5b(0x28d)]();}catch(_0x5c4b89){this[_0x2a9c5b(0x245)](_0x489b68[_0x2a9c5b(0x136)],_0x489b68[_0x2a9c5b(0x218)]);}}[a0_0x482e50(0x197)](_0x439bb9){const _0x48fd82=a0_0x482e50,_0x37ce0f={'JDAhk':function(_0x1a19a2,_0x22ac26){return _0x1a19a2(_0x22ac26);}},_0x36ee1a=_0x37ce0f[_0x48fd82(0x26f)](parseFloat,_0x439bb9[_0x48fd82(0x134)]?.[_0x48fd82(0x1cf)](/[^0-9.]/g,'')||'0');return{...exports[_0x48fd82(0x1fb)][_0x48fd82(0x18a)](_0x439bb9),'budgetAmount':_0x36ee1a};}[a0_0x482e50(0x264)](){const _0x403486=a0_0x482e50,_0xdd6a3e={'eluAQ':_0x403486(0x154),'GdvdH':_0x403486(0x21a),'bZcek':_0x403486(0x199),'KYPhF':_0x403486(0x1ff),'zzbFs':_0x403486(0x158),'meeYh':_0x403486(0x238),'tGToG':_0x403486(0x1e6),'tJMul':_0x403486(0x239),'uHUxJ':_0x403486(0x161),'zPwic':_0x403486(0x182),'eNwxR':_0x403486(0x160),'gzzMj':_0x403486(0xe7),'MYlUa':_0x403486(0x267),'uNugb':_0x403486(0xfd),'fDkBC':_0x403486(0x124),'sKmmi':_0x403486(0x10b),'KkhBo':_0x403486(0x1d2),'telzh':_0x403486(0x27b),'vcSQi':_0x403486(0x1b5),'RFiwB':_0x403486(0xf3),'uZAYh':_0x403486(0x26a),'txPrB':_0x403486(0x1b6)};if(this[_0x403486(0x228)]&&this[_0x403486(0x228)][_0x403486(0x1ff)])return;const _0x7394f6=this[_0x403486(0x159)][_0x403486(0x1cf)](_0xdd6a3e[_0x403486(0x209)],'');this[_0x403486(0x228)]=(0x0,a0_0x56e62b['io'])(_0x7394f6,{'auth':{'token':this[_0x403486(0x14d)]},'transports':[_0xdd6a3e[_0x403486(0x282)]],'reconnection':!![],'reconnectionAttempts':Infinity,'reconnectionDelay':0x3e8}),this[_0x403486(0x228)]['on'](_0xdd6a3e[_0x403486(0x1cb)],()=>{const _0x32986a=_0x403486;this[_0x32986a(0x245)](_0xdd6a3e[_0x32986a(0x137)]),this[_0x32986a(0x228)]?.[_0x32986a(0x1fe)](_0xdd6a3e[_0x32986a(0x221)]);for(const _0x5affde of this[_0x32986a(0xea)][_0x32986a(0x274)]()){this[_0x32986a(0x228)]?.[_0x32986a(0x1fe)](_0xdd6a3e[_0x32986a(0x211)],_0x5affde);}this[_0x32986a(0x1fe)](_0xdd6a3e[_0x32986a(0x27a)]);}),this[_0x403486(0x228)]['on'](_0xdd6a3e[_0x403486(0xec)],_0x1f8c7a=>{const _0x34eb60=_0x403486;this[_0x34eb60(0x245)](_0x34eb60(0x283)+_0x1f8c7a+_0x34eb60(0x27f),_0xdd6a3e[_0x34eb60(0x15d)]),this[_0x34eb60(0x188)]();}),this[_0x403486(0x228)]['on'](_0xdd6a3e[_0x403486(0x26e)],_0xc82d0=>{const _0xd57da5=_0x403486;this[_0xd57da5(0x245)](_0xd57da5(0x164)+_0xc82d0,_0xdd6a3e[_0xd57da5(0x157)]),this[_0xd57da5(0x1fe)](_0xdd6a3e[_0xd57da5(0x1d5)],_0xc82d0);}),this[_0x403486(0x228)]['on'](_0xdd6a3e[_0x403486(0x12c)],_0x3dfce1=>{const _0x47bca4=_0x403486;try{const _0x88c2ac=exports[_0x47bca4(0x219)][_0x47bca4(0x18a)](_0x3dfce1);!this[_0x47bca4(0x1b9)][_0x47bca4(0x229)](_0x88c2ac['id'])&&(this[_0x47bca4(0x1b9)][_0x47bca4(0x104)](_0x88c2ac['id']),this[_0x47bca4(0x248)](_0x88c2ac),this[_0x47bca4(0xf7)][_0x47bca4(0x20f)](_0xdd6a3e[_0x47bca4(0x26d)],{'messageId':_0x88c2ac['id']})[_0x47bca4(0x208)](()=>{}));}catch(_0x3a0a3b){this[_0x47bca4(0x245)](_0xdd6a3e[_0x47bca4(0x19a)],_0xdd6a3e[_0x47bca4(0x279)]);}}),this[_0x403486(0x228)]['on'](_0xdd6a3e[_0x403486(0x1be)],_0x2c041e=>{const _0x27f363=_0x403486;try{const _0x578c22=this[_0x27f363(0x197)](_0x2c041e);this[_0x27f363(0x1fe)](_0xdd6a3e[_0x27f363(0x18d)],_0x578c22);}catch(_0x1f38a3){}}),this[_0x403486(0x228)]['on'](_0x403486(0x233)+this[_0x403486(0x25e)],_0x1f9fc8=>{const _0x3acc2d=_0x403486;try{const _0x4cf724=this[_0x3acc2d(0x197)](_0x1f9fc8);if(!this[_0x3acc2d(0xea)][_0x3acc2d(0x229)](_0x4cf724['id'])){const _0x500760=_0xdd6a3e[_0x3acc2d(0x285)][_0x3acc2d(0x1a7)]('|');let _0xbc32e5=0x0;while(!![]){switch(_0x500760[_0xbc32e5++]){case'0':this[_0x3acc2d(0x245)](_0x3acc2d(0x276)+_0x4cf724[_0x3acc2d(0x1df)],_0xdd6a3e[_0x3acc2d(0x26b)]);continue;case'1':this[_0x3acc2d(0x1fe)](_0xdd6a3e[_0x3acc2d(0x117)],_0x4cf724);continue;case'2':this[_0x3acc2d(0x228)]?.[_0x3acc2d(0x1fe)](_0xdd6a3e[_0x3acc2d(0x211)],_0x4cf724['id']);continue;case'3':this[_0x3acc2d(0x28d)]();continue;case'4':this[_0x3acc2d(0xea)][_0x3acc2d(0x25b)](_0x4cf724['id'],_0x4cf724);continue;}break;}}}catch(_0x5c01e4){this[_0x3acc2d(0x245)](_0xdd6a3e[_0x3acc2d(0x12a)],_0xdd6a3e[_0x3acc2d(0x279)]);}});}[a0_0x482e50(0x248)](_0x13163b){const _0x4b9053=a0_0x482e50,_0x5d9f72={'DZSuP':function(_0x125da0,_0x1fb6d1){return _0x125da0===_0x1fb6d1;},'oAlaP':_0x4b9053(0xe5),'QIpLw':_0x4b9053(0x1af),'maHEt':_0x4b9053(0x1a8),'gJzfx':_0x4b9053(0xe1),'hWpoF':function(_0x4f4bdd,_0x393df5){return _0x4f4bdd===_0x393df5;},'vJBch':_0x4b9053(0x146),'eIfhl':_0x4b9053(0x240),'xMvIn':_0x4b9053(0x135),'NnXgY':_0x4b9053(0x18e)};if(_0x5d9f72[_0x4b9053(0x196)](_0x13163b[_0x4b9053(0x1dc)][_0x4b9053(0x210)],_0x5d9f72[_0x4b9053(0x277)])){const _0x3fc5ef=_0x13163b[_0x4b9053(0x144)][_0x4b9053(0x19f)]();if(_0x5d9f72[_0x4b9053(0x196)](_0x3fc5ef,_0x5d9f72[_0x4b9053(0xfc)])){this[_0x4b9053(0x151)](_0x13163b[_0x4b9053(0x251)]);return;}else{if(_0x5d9f72[_0x4b9053(0x196)](_0x3fc5ef,_0x5d9f72[_0x4b9053(0x25d)])){this[_0x4b9053(0xf8)]=!![],this[_0x4b9053(0x28d)](),this[_0x4b9053(0x18f)](_0x13163b[_0x4b9053(0x251)],_0x5d9f72[_0x4b9053(0x13f)]);return;}else{if(_0x5d9f72[_0x4b9053(0x1ac)](_0x3fc5ef,_0x5d9f72[_0x4b9053(0x216)])){this[_0x4b9053(0xf8)]=![],this[_0x4b9053(0x28d)](),this[_0x4b9053(0x18f)](_0x13163b[_0x4b9053(0x251)],_0x5d9f72[_0x4b9053(0x16e)]);return;}else{if(_0x3fc5ef[_0x4b9053(0x10c)](_0x5d9f72[_0x4b9053(0x1c7)])){const _0x2de48a=_0x3fc5ef[_0x4b9053(0x1cf)](_0x5d9f72[_0x4b9053(0x1c7)],'')[_0x4b9053(0x19f)]();this[_0x4b9053(0x206)](_0x13163b[_0x4b9053(0x251)],_0x2de48a);return;}}}}}this[_0x4b9053(0x1fe)](_0x5d9f72[_0x4b9053(0x14f)],_0x13163b);}async[a0_0x482e50(0x151)](_0x6fd2f2){const _0x19c11d=a0_0x482e50,_0x48d327={'uGsmc':_0x19c11d(0x111),'eZkYT':_0x19c11d(0x266),'akTFb':_0x19c11d(0x172)},_0x11f424=this[_0x19c11d(0xea)][_0x19c11d(0x1ca)],_0x42a5ab=this[_0x19c11d(0x272)]?this[_0x19c11d(0x272)][_0x19c11d(0x114)]():_0x48d327[_0x19c11d(0x200)],_0x416e76=_0x19c11d(0x1ea)+_0x11f424+_0x19c11d(0x28a)+(this[_0x19c11d(0xf8)]?_0x48d327[_0x19c11d(0x252)]:_0x48d327[_0x19c11d(0x14e)])+_0x19c11d(0x1e7)+_0x42a5ab+_0x19c11d(0x26c)+this[_0x19c11d(0x25e)]+_0x19c11d(0xf0)+a0_0x510224[_0x19c11d(0x23d)];await this[_0x19c11d(0x18f)](_0x6fd2f2,_0x416e76);}async[a0_0x482e50(0x206)](_0xa47654,_0xe256b3){const _0x2b215f=a0_0x482e50,_0x3b3b03={'eBsvf':_0x2b215f(0x163)};try{const _0x303f72=await this[_0x2b215f(0x13e)](_0xe256b3),_0x171ef6=await this[_0x2b215f(0x145)](_0x303f72['id'],_0x303f72[_0x2b215f(0x215)],_0x3b3b03[_0x2b215f(0x169)]);_0x171ef6[_0x2b215f(0x257)]?await this[_0x2b215f(0x18f)](_0xa47654,_0x2b215f(0x153)+_0x303f72[_0x2b215f(0x1df)]):await this[_0x2b215f(0x18f)](_0xa47654,_0x2b215f(0x1c5)+_0x171ef6[_0x2b215f(0x24e)]);}catch(_0x52b76a){await this[_0x2b215f(0x18f)](_0xa47654,_0x2b215f(0x175)+_0x52b76a[_0x2b215f(0x18e)]);}}[a0_0x482e50(0x1b3)](_0x5c5ce1={}){const _0x1eb364=a0_0x482e50,_0xd4a460={'dinwL':function(_0x440399,_0x2d2786){return _0x440399>=_0x2d2786;},'NHMmA':function(_0x3fb921,_0x56e242){return _0x3fb921&&_0x56e242;},'LXnVK':_0x1eb364(0x182),'xFcOo':function(_0x44e3b0,_0x51f2c8){return _0x44e3b0/_0x51f2c8;},'jYBjO':function(_0x4e6190){return _0x4e6190();},'jzjUa':function(_0x53b492,_0x5d41d7,_0x2a1c3f){return _0x53b492(_0x5d41d7,_0x2a1c3f);}},_0x109158=_0x5c5ce1[_0x1eb364(0x25a)]||0xea60;this[_0x1eb364(0x245)](_0x1eb364(0x10e)+_0xd4a460[_0x1eb364(0x271)](_0x109158,0x3e8)+_0x1eb364(0x1d8));const _0x93f50=async()=>{const _0x4ebfdf=_0x1eb364;if(this[_0x4ebfdf(0xf8)])return;this[_0x4ebfdf(0x272)]=new Date();try{const _0x29b522=await this[_0x4ebfdf(0x249)]();for(const _0xa3290c of _0x29b522){if(this[_0x4ebfdf(0xe6)][_0x4ebfdf(0x229)](_0xa3290c['id']))continue;const _0x2ce0eb=_0x5c5ce1[_0x4ebfdf(0x20a)]?_0x5c5ce1[_0x4ebfdf(0x20a)][_0x4ebfdf(0x244)](_0x1a3787=>_0xa3290c[_0x4ebfdf(0x1df)][_0x4ebfdf(0xf1)]()[_0x4ebfdf(0xf2)](_0x1a3787[_0x4ebfdf(0xf1)]())||_0xa3290c[_0x4ebfdf(0x22c)][_0x4ebfdf(0xf1)]()[_0x4ebfdf(0xf2)](_0x1a3787[_0x4ebfdf(0xf1)]())):!![],_0x7f2cb8=_0x5c5ce1[_0x4ebfdf(0x150)]?_0xd4a460[_0x4ebfdf(0x1a0)](_0xa3290c[_0x4ebfdf(0x215)],_0x5c5ce1[_0x4ebfdf(0x150)]):!![];if(_0xd4a460[_0x4ebfdf(0x203)](_0x2ce0eb,_0x7f2cb8)){const _0x21ef42=_0x5c5ce1[_0x4ebfdf(0x21d)]||_0x4ebfdf(0x13a)+_0xa3290c[_0x4ebfdf(0x10d)]+_0x4ebfdf(0x27e);this[_0x4ebfdf(0x245)](_0x4ebfdf(0x230)+_0xa3290c[_0x4ebfdf(0x1df)]+_0x4ebfdf(0x131)),await this[_0x4ebfdf(0x145)](_0xa3290c['id'],_0xa3290c[_0x4ebfdf(0x215)],_0x21ef42);}}}catch(_0x46d0b4){this[_0x4ebfdf(0x245)](_0x4ebfdf(0x18b)+_0x46d0b4[_0x4ebfdf(0x18e)],_0xd4a460[_0x4ebfdf(0x253)]);}};_0xd4a460[_0x1eb364(0x1fd)](_0x93f50),this[_0x1eb364(0x1ae)]=_0xd4a460[_0x1eb364(0x11b)](setInterval,_0x93f50,_0x109158);}async[a0_0x482e50(0x20e)](_0x12d90d,_0x4f50c7){const _0x6eb43a=a0_0x482e50,_0x526f37={'Uxrta':_0x6eb43a(0x238)},_0x1eaf58=a0_0x2b5193[_0x6eb43a(0xe9)](this[_0x6eb43a(0x213)],_0x12d90d);!a0_0x3b77e2[_0x6eb43a(0x19e)](_0x1eaf58)&&a0_0x3b77e2[_0x6eb43a(0x16a)](_0x1eaf58,{'recursive':!![]});this[_0x6eb43a(0x245)](_0x6eb43a(0x1e1)+_0x1eaf58);try{await this[_0x6eb43a(0x260)](_0x12d90d,_0x4f50c7),this[_0x6eb43a(0x245)](_0x6eb43a(0x13b));}catch(_0x357d53){this[_0x6eb43a(0x245)](_0x6eb43a(0xf6)+_0x357d53,_0x526f37[_0x6eb43a(0x15c)]);}return a0_0x2b5193[_0x6eb43a(0x139)](_0x1eaf58);}async[a0_0x482e50(0x18c)](_0x27ba24,_0x4d6e62){const _0x14b4f7=a0_0x482e50,_0x7fe217={'zYzVY':_0x14b4f7(0x185),'MsiJE':_0x14b4f7(0x15e),'xmhQP':function(_0xa66793,_0x10af9c){return _0xa66793(_0x10af9c);},'xEpVb':_0x14b4f7(0x275),'fHgFg':_0x14b4f7(0x179)},_0x3631d4=a0_0x2b5193[_0x14b4f7(0xe9)](this[_0x14b4f7(0x213)],_0x27ba24);return this[_0x14b4f7(0x245)](_0x14b4f7(0x127)+_0x27ba24+':\x20'+_0x4d6e62),new Promise(_0x16571a=>{const _0x1628cf=_0x14b4f7,_0x5202e5={'khDxI':function(_0x15d20a,_0x5abe4b){const _0x32871a=a0_0x352d;return _0x7fe217[_0x32871a(0x1c1)](_0x15d20a,_0x5abe4b);}};let _0x387df3='';const [_0x26ca76,..._0x5ee822]=_0x4d6e62[_0x1628cf(0x1a7)]('\x20'),_0x59959d=(0x0,a0_0x5ef7ec[_0x1628cf(0x22e)])(_0x26ca76,_0x5ee822,{'cwd':_0x3631d4,'shell':!![]});_0x59959d[_0x1628cf(0x1b8)]['on'](_0x7fe217[_0x1628cf(0x259)],_0x9b87d3=>{const _0x122ca8=_0x1628cf,_0x1309f4=_0x9b87d3[_0x122ca8(0x101)]();_0x387df3+=_0x1309f4,this[_0x122ca8(0x1fe)](_0x7fe217[_0x122ca8(0x1ce)],{'jobId':_0x27ba24,'chunk':_0x1309f4});if(this[_0x122ca8(0x214)])this[_0x122ca8(0x18f)](_0x27ba24,_0x122ca8(0x1a5)+_0x1309f4[_0x122ca8(0x20c)](0x0,0xc8)+_0x122ca8(0x11f))[_0x122ca8(0x208)](()=>{});}),_0x59959d[_0x1628cf(0x255)]['on'](_0x7fe217[_0x1628cf(0x259)],_0x4871a9=>{const _0x19596a=_0x1628cf;_0x387df3+=_0x4871a9[_0x19596a(0x101)](),this[_0x19596a(0x1fe)](_0x7fe217[_0x19596a(0x17b)],{'jobId':_0x27ba24,'chunk':_0x4871a9[_0x19596a(0x101)]()});}),_0x59959d['on'](_0x7fe217[_0x1628cf(0x110)],_0x35cd8f=>{const _0x9981ce=_0x1628cf;this[_0x9981ce(0x245)](_0x9981ce(0x15f)+_0x35cd8f),_0x5202e5[_0x9981ce(0x23c)](_0x16571a,{'exitCode':_0x35cd8f,'output':_0x387df3});});});}async[a0_0x482e50(0x11d)](_0x41566a,_0x36c49c){const _0x4a4c49=a0_0x482e50,_0x10094a=a0_0x2b5193[_0x4a4c49(0xe9)](this[_0x4a4c49(0x213)],_0x41566a);this[_0x4a4c49(0x245)](_0x4a4c49(0x16f)+_0x36c49c[_0x4a4c49(0x22f)]+_0x4a4c49(0x12f)+_0x41566a+_0x4a4c49(0x11f));const _0x238184=[];for(const _0x25869e of _0x36c49c){const _0x529f15=a0_0x2b5193[_0x4a4c49(0xe9)](_0x10094a,_0x25869e);a0_0x3b77e2[_0x4a4c49(0x19e)](_0x529f15)&&(await this[_0x4a4c49(0x1f2)](_0x41566a,_0x25869e,_0x529f15),_0x238184[_0x4a4c49(0x226)](_0x25869e));}const _0x58f9c1=_0x4a4c49(0x284)+_0x238184[_0x4a4c49(0x287)](_0x570cd7=>'-\x20'+_0x570cd7)[_0x4a4c49(0xe9)]('\x0a');return await this[_0x4a4c49(0x18f)](_0x41566a,_0x58f9c1),_0x238184;}[a0_0x482e50(0x1bb)](){const _0x15b481=a0_0x482e50,_0x2f59c8={'GgZOS':_0x15b481(0x24b),'jogCP':function(_0x47ad1f,_0x7a883d){return _0x47ad1f!==_0x7a883d;},'GVuvo':_0x15b481(0x190),'TSnGY':_0x15b481(0x12d),'fCRhl':_0x15b481(0x238)};if(!this[_0x15b481(0x1f0)]||!a0_0x3b77e2[_0x15b481(0x19e)](this[_0x15b481(0x1f0)]))return;try{const _0x389316=JSON[_0x15b481(0x18a)](a0_0x3b77e2[_0x15b481(0x237)](this[_0x15b481(0x1f0)],_0x2f59c8[_0x15b481(0x14b)]));_0x389316[_0x15b481(0xea)]&&Object[_0x15b481(0x152)](_0x389316[_0x15b481(0xea)])[_0x15b481(0x1d1)](([_0x1d6fdd,_0x54a138])=>{const _0x5a9707=_0x15b481;this[_0x5a9707(0xea)][_0x5a9707(0x25b)](_0x1d6fdd,_0x54a138);}),_0x389316[_0x15b481(0xe6)]&&_0x389316[_0x15b481(0xe6)][_0x15b481(0x1d1)](_0x348be6=>this[_0x15b481(0xe6)][_0x15b481(0x104)](_0x348be6)),_0x2f59c8[_0x15b481(0x21e)](_0x389316[_0x15b481(0xf8)],undefined)&&(this[_0x15b481(0xf8)]=_0x389316[_0x15b481(0xf8)]),this[_0x15b481(0x245)](_0x15b481(0x12e)+this[_0x15b481(0xea)][_0x15b481(0x1ca)]+_0x15b481(0x1db)+(this[_0x15b481(0xf8)]?_0x2f59c8[_0x15b481(0x167)]:_0x2f59c8[_0x15b481(0x1f5)]));}catch(_0x58d2ff){this[_0x15b481(0x245)](_0x15b481(0x142)+_0x58d2ff[_0x15b481(0x18e)],_0x2f59c8[_0x15b481(0x22a)]);}}[a0_0x482e50(0x28d)](){const _0x5ad50f=a0_0x482e50,_0x3157e5={'IyRee':_0x5ad50f(0x238)};if(!this[_0x5ad50f(0x1f0)])return;try{const _0x5dd143={'activeMissions':Object[_0x5ad50f(0x113)](this[_0x5ad50f(0xea)]),'bidCache':Array[_0x5ad50f(0x1f6)](this[_0x5ad50f(0xe6)]),'autopilotPaused':this[_0x5ad50f(0xf8)]};a0_0x3b77e2[_0x5ad50f(0x1d0)](this[_0x5ad50f(0x1f0)],JSON[_0x5ad50f(0x162)](_0x5dd143,null,0x2));}catch(_0x5ccbe8){this[_0x5ad50f(0x245)](_0x5ad50f(0x1e2)+_0x5ccbe8[_0x5ad50f(0x18e)],_0x3157e5[_0x5ad50f(0x133)]);}}async[a0_0x482e50(0x268)](_0x1d3e38,_0x5b6166=!![]){const _0x10d38c=a0_0x482e50,_0x40dbf0={'pAPZm':_0x10d38c(0x23f)};this[_0x10d38c(0x228)]&&this[_0x10d38c(0x228)][_0x10d38c(0x1fe)](_0x40dbf0[_0x10d38c(0x1da)],{'jobId':_0x1d3e38,'isTyping':_0x5b6166});}async[a0_0x482e50(0xe4)](_0x2dd684){const _0x5ccab2=a0_0x482e50;if(!this[_0x5ccab2(0x25e)])return;return this[_0x5ccab2(0xf7)][_0x5ccab2(0x20f)](_0x5ccab2(0x193)+this[_0x5ccab2(0x25e)]+_0x5ccab2(0x130),_0x2dd684);}async[a0_0x482e50(0x249)](){const _0x2a186b=a0_0x482e50,_0x3e2c1c={'LwCfK':_0x2a186b(0x105)},_0x17d147=await this[_0x2a186b(0xf7)][_0x2a186b(0x224)](_0x3e2c1c[_0x2a186b(0x129)]);return _0x17d147[_0x2a186b(0x275)][_0x2a186b(0x275)][_0x2a186b(0x106)](_0x5d223f=>_0x5d223f[_0x2a186b(0x270)]===_0x2a186b(0xfe))[_0x2a186b(0x287)](_0x5b2ef1=>this[_0x2a186b(0x197)](_0x5b2ef1));}async[a0_0x482e50(0x13e)](_0x46ab64){const _0x229a3c=a0_0x482e50,_0x57f62c=await this[_0x229a3c(0xf7)][_0x229a3c(0x224)](_0x229a3c(0xeb)+_0x46ab64);return this[_0x229a3c(0x197)](_0x57f62c[_0x229a3c(0x275)][_0x229a3c(0x160)]);}async[a0_0x482e50(0x145)](_0x2adcc7,_0xae5cdd,_0x23f2a5){const _0x181765=a0_0x482e50,_0x5cc9d0={'QQyQw':_0x181765(0x183)};try{const _0x3b13d2=await this[_0x181765(0xf7)][_0x181765(0x20f)](_0x5cc9d0[_0x181765(0x1b4)],{'jobId':_0x2adcc7,'amount':_0xae5cdd,'message':_0x23f2a5,'apiKey':this[_0x181765(0x14d)]});return _0x3b13d2[_0x181765(0x275)][_0x181765(0x257)]&&(this[_0x181765(0xe6)][_0x181765(0x104)](_0x2adcc7),this[_0x181765(0x28d)]()),_0x3b13d2[_0x181765(0x275)];}catch(_0x59b2b9){return{'success':![],'error':_0x59b2b9[_0x181765(0x10f)]?.[_0x181765(0x275)]?.[_0x181765(0x24e)]||_0x59b2b9[_0x181765(0x18e)]};}}async[a0_0x482e50(0x18f)](_0x3f90d6,_0x174ccb){const _0x2f6e47=a0_0x482e50,_0x21ec28=await this[_0x2f6e47(0xf7)][_0x2f6e47(0x20f)](_0x2f6e47(0xeb)+_0x3f90d6+_0x2f6e47(0x191),{'content':_0x174ccb,'senderId':this[_0x2f6e47(0x25e)]});return _0x21ec28[_0x2f6e47(0x275)];}async[a0_0x482e50(0x174)](_0x455d4e){const _0x538451=a0_0x482e50,_0x5ba9a4=await this[_0x538451(0xf7)][_0x538451(0x224)](_0x538451(0xeb)+_0x455d4e+_0x538451(0x191));return a0_0x2fbea6['z'][_0x538451(0xff)](exports[_0x538451(0x219)])[_0x538451(0x18a)](_0x5ba9a4[_0x538451(0x275)][_0x538451(0x107)]);}async[a0_0x482e50(0x187)](_0x462c68,_0x36547d,_0x1e408f){const _0x388426=a0_0x482e50,_0x398c1c={'MUpNO':_0x388426(0x115)},_0x2e40c0=await this[_0x388426(0xf7)][_0x388426(0x20f)](_0x388426(0xeb)+_0x462c68+_0x388426(0x112),{'url':_0x36547d,'name':_0x1e408f,'type':_0x398c1c[_0x388426(0x103)],'uploaderId':this[_0x388426(0x25e)]});return _0x2e40c0[_0x388426(0x275)][_0x388426(0x257)];}async[a0_0x482e50(0x1e5)](_0x32980c,_0x53893e,_0x53a8ae){const _0x15c12e=a0_0x482e50,_0x5c59ab={'koRdk':function(_0x2c0895,_0x2779fb){return _0x2c0895===_0x2779fb;},'VZUNc':_0x15c12e(0x288),'vqmaU':_0x15c12e(0x182)};if(!a0_0x3b77e2[_0x15c12e(0x19e)](_0x53893e))throw new Error(_0x15c12e(0x15a)+_0x53893e);if(_0x5c59ab[_0x15c12e(0x254)](a0_0x3b77e2[_0x15c12e(0x28b)](_0x53893e)[_0x15c12e(0x1ca)],0x0))throw new Error(_0x15c12e(0x16d)+_0x53893e);const _0x2b3730=_0x53a8ae||a0_0x2b5193[_0x15c12e(0x1eb)](_0x53893e);this[_0x15c12e(0x245)](_0x15c12e(0x165)+_0x2b3730+_0x15c12e(0x11f));try{const _0x57a4b3=await this[_0x15c12e(0xf7)][_0x15c12e(0x224)](_0x15c12e(0x212)+_0x2b3730),{url:_0x30b639}=_0x57a4b3[_0x15c12e(0x275)],_0x80363f=a0_0x3b77e2[_0x15c12e(0x237)](_0x53893e);return await a0_0x2f789c[_0x15c12e(0x1cc)][_0x15c12e(0x247)](_0x30b639,_0x80363f,{'headers':{'Content-Type':_0x5c59ab[_0x15c12e(0x261)]}}),this[_0x15c12e(0x187)](_0x32980c,_0x30b639,_0x2b3730);}catch(_0x52d35a){this[_0x15c12e(0x245)](_0x15c12e(0xfb)+_0x52d35a[_0x15c12e(0x18e)],_0x5c59ab[_0x15c12e(0x1a3)]);throw _0x52d35a;}}async[a0_0x482e50(0x1f4)](_0x26e993){const _0x20e4a2=a0_0x482e50,_0x386e25={'VlhLr':_0x20e4a2(0x1dd)},_0x236130=await this[_0x20e4a2(0xf7)][_0x20e4a2(0x20f)](_0x20e4a2(0xeb)+_0x26e993+_0x20e4a2(0x24f),{'userId':this[_0x20e4a2(0x25e)],'role':_0x386e25[_0x20e4a2(0x173)]});return _0x236130[_0x20e4a2(0x275)][_0x20e4a2(0x257)]&&(this[_0x20e4a2(0xea)][_0x20e4a2(0x17a)](_0x26e993),this[_0x20e4a2(0x28d)]()),_0x236130[_0x20e4a2(0x275)];}async[a0_0x482e50(0x260)](_0x58cd80,_0x3ea990){const _0x1549b4=a0_0x482e50;if(!this[_0x1549b4(0x25e)])return;return this[_0x1549b4(0xf7)][_0x1549b4(0x20f)](_0x1549b4(0xeb)+_0x58cd80+_0x1549b4(0x17e),{'name':_0x3ea990});}async[a0_0x482e50(0x1f2)](_0x4cd05a,_0x320975,_0x2cd5fa,_0x45667f=![]){const _0x38017d=a0_0x482e50,_0xb149fc={'ZODot':_0x38017d(0x24b),'RhxwT':_0x38017d(0x238)};if(!this[_0x38017d(0x25e)])return;let _0x2f51f5=_0x2cd5fa;if(!_0x45667f&&a0_0x3b77e2[_0x38017d(0x19e)](_0x2cd5fa))try{this[_0x38017d(0x245)](_0x38017d(0x27c)+_0x2cd5fa),_0x2f51f5=a0_0x3b77e2[_0x38017d(0x237)](_0x2cd5fa,_0xb149fc[_0x38017d(0x195)]);}catch(_0x4d2dd4){this[_0x38017d(0x245)](_0x38017d(0x204)+_0x4d2dd4[_0x38017d(0x18e)],_0xb149fc[_0x38017d(0x220)]);}return this[_0x38017d(0xf7)][_0x38017d(0x20f)](_0x38017d(0xeb)+_0x4cd05a+_0x38017d(0x1e0),{'path':_0x320975,'content':_0x2f51f5,'isBlob':_0x45667f});}async[a0_0x482e50(0x1f9)](_0x5e868d){const _0x4f12cf=a0_0x482e50;if(!this[_0x4f12cf(0x25e)])return;return this[_0x4f12cf(0xf7)][_0x4f12cf(0x20f)](_0x4f12cf(0x193)+this[_0x4f12cf(0x25e)]+_0x4f12cf(0x130),{'tokensUsed':_0x5e868d});}async[a0_0x482e50(0x138)](_0x2ea426,_0x11225b){const _0x562f0d=a0_0x482e50;if(!this[_0x562f0d(0x25e)])return;return this[_0x562f0d(0xf7)][_0x562f0d(0x20f)](_0x562f0d(0xeb)+_0x2ea426+_0x562f0d(0x16c),{'progress':_0x11225b});}async[a0_0x482e50(0x100)](_0x27c879){const _0x3380b8=a0_0x482e50;if(!this[_0x3380b8(0x25e)])return;return this[_0x3380b8(0xf7)][_0x3380b8(0x20f)](_0x3380b8(0x193)+this[_0x3380b8(0x25e)]+_0x3380b8(0x192),{'message':_0x27c879});}async[a0_0x482e50(0x1e9)](_0x163115){const _0x624bf9=a0_0x482e50;if(!this[_0x624bf9(0x25e)])return;return this[_0x624bf9(0xf7)][_0x624bf9(0x20f)](_0x624bf9(0x193)+this[_0x624bf9(0x25e)]+_0x624bf9(0x192),{'message':_0x624bf9(0x21f),'data':{..._0x163115,'timestamp':new Date()[_0x624bf9(0x20d)](),'sdk_version':a0_0x510224[_0x624bf9(0x23d)],'uptime':process[_0x624bf9(0x1d4)]()}});}async[a0_0x482e50(0x1f3)](_0x5794ce,_0x2ffa9a=a0_0x482e50(0x158)){const _0x2fefb6=a0_0x482e50,_0x76684d={'Apkxe':function(_0x3ad05b,_0x51aa39){return _0x3ad05b===_0x51aa39;},'jejTD':_0x2fefb6(0x182),'xySsx':_0x2fefb6(0x223),'ynVdM':_0x2fefb6(0x238),'CLFri':_0x2fefb6(0xfa),'NyXWl':_0x2fefb6(0x19b)};if(!this[_0x2fefb6(0x25e)])return;if(this[_0x2fefb6(0x13c)])try{const _0x2a7690='['+new Date()[_0x2fefb6(0x20d)]()+_0x2fefb6(0x147)+_0x2ffa9a+']\x20'+_0x5794ce+'\x0a';a0_0x3b77e2[_0x2fefb6(0x156)](this[_0x2fefb6(0x13c)],_0x2a7690);}catch(_0x20c261){}try{await this[_0x2fefb6(0xf7)][_0x2fefb6(0x20f)](_0x2fefb6(0x193)+this[_0x2fefb6(0x25e)]+_0x2fefb6(0xe8),{'message':_0x5794ce,'level':_0x2ffa9a});if(this[_0x2fefb6(0x214)]){const _0x59c6c9=_0x76684d[_0x2fefb6(0xf5)](_0x2ffa9a,_0x76684d[_0x2fefb6(0x280)])?_0x76684d[_0x2fefb6(0x168)]:_0x76684d[_0x2fefb6(0xf5)](_0x2ffa9a,_0x76684d[_0x2fefb6(0x181)])?_0x76684d[_0x2fefb6(0x236)]:_0x76684d[_0x2fefb6(0x1e3)];console[_0x2fefb6(0x1f3)](_0x59c6c9+'['+_0x2ffa9a+_0x2fefb6(0x278)+_0x5794ce);}}catch(_0x549f82){this[_0x2fefb6(0x214)]&&console[_0x2fefb6(0x24e)](_0x2fefb6(0x23e)+_0x549f82[_0x2fefb6(0x18e)]);}}[a0_0x482e50(0x1ec)](_0x164af7=0x7530){const _0xe24408=a0_0x482e50,_0x31fa91={'jmCNy':function(_0x2de796,_0x3cd24a){return _0x2de796(_0x3cd24a);},'ljwKu':function(_0x9a7a3a,_0x226011,_0x48870d){return _0x9a7a3a(_0x226011,_0x48870d);}};if(!this[_0xe24408(0x25e)])return;if(this[_0xe24408(0x155)])_0x31fa91[_0xe24408(0x21b)](clearInterval,this[_0xe24408(0x155)]);this[_0xe24408(0x231)](),this[_0xe24408(0x155)]=_0x31fa91[_0xe24408(0x225)](setInterval,()=>this[_0xe24408(0x231)](),_0x164af7);}async[a0_0x482e50(0x231)](){const _0xf5770f=a0_0x482e50,_0x15c824={'xvaSk':_0xf5770f(0x121),'EaIaE':_0xf5770f(0x238)};if(!this[_0xf5770f(0x25e)])return;try{await this[_0xf5770f(0xf7)][_0xf5770f(0x20f)](_0xf5770f(0x193)+this[_0xf5770f(0x25e)]+_0xf5770f(0x1ef),{},{'headers':{'Authorization':_0xf5770f(0x17d)+this[_0xf5770f(0x14d)]}});}catch(_0x46270e){this[_0xf5770f(0x245)](_0x15c824[_0xf5770f(0x118)],_0x15c824[_0xf5770f(0x194)]);}}[a0_0x482e50(0x245)](_0x16e828,_0x563f5b=a0_0x482e50(0x158)){const _0x596147=a0_0x482e50;if(this[_0x596147(0x214)])console[_0x596147(0x1f3)](_0x596147(0x1f1)+_0x16e828);}[a0_0x482e50(0x1b1)](_0x4b058e){const _0x5504d3=a0_0x482e50,_0x3f16b8={'gxyAI':_0x5504d3(0x18e)};this['on'](_0x3f16b8[_0x5504d3(0xef)],_0x4b058e);}[a0_0x482e50(0xed)](_0x5cf01b){const _0x59624c=a0_0x482e50,_0x451176={'GenuS':_0x59624c(0x160)};this['on'](_0x451176[_0x59624c(0x273)],_0x5cf01b);}[a0_0x482e50(0x201)](_0x351372){const _0x2d2756=a0_0x482e50,_0x475ca3={'XxEaa':_0x2d2756(0xfd)};this['on'](_0x475ca3[_0x2d2756(0x1aa)],_0x351372);}}exports[a0_0x482e50(0x125)]=a0_0x510224,a0_0x510224[a0_0x482e50(0x23d)]=a0_0x45e248,exports[a0_0x482e50(0x1cc)]=a0_0x510224;
|
|
1
|
+
'use strict';const a0_0x464192=a0_0x2cb7;(function(_0x556718,_0x54921b){const _0x160e65=a0_0x2cb7,_0x3025fd=_0x556718();while(!![]){try{const _0x1a57d4=-parseInt(_0x160e65(0x244))/0x1*(parseInt(_0x160e65(0x1e4))/0x2)+-parseInt(_0x160e65(0x300))/0x3+parseInt(_0x160e65(0x200))/0x4+parseInt(_0x160e65(0x2d9))/0x5+-parseInt(_0x160e65(0x1bc))/0x6+parseInt(_0x160e65(0x17c))/0x7*(parseInt(_0x160e65(0x2e1))/0x8)+parseInt(_0x160e65(0x2d6))/0x9;if(_0x1a57d4===_0x54921b)break;else _0x3025fd['push'](_0x3025fd['shift']());}catch(_0x1afe3c){_0x3025fd['push'](_0x3025fd['shift']());}}}(a0_0x483b,0x53439));var a0_0x19a9d5=this&&this[a0_0x464192(0x232)]||(Object[a0_0x464192(0x1aa)]?function(_0x4f1b1d,_0x1cb662,_0x3ad70d,_0x24df9c){const _0x37a85d=a0_0x464192,_0x4e6461={'YmoOz':function(_0x5f50ea,_0x43535d){return _0x5f50ea===_0x43535d;},'BmQZF':function(_0x2d1676,_0x447fd7){return _0x2d1676 in _0x447fd7;},'QuVbX':_0x37a85d(0x242)};if(_0x4e6461[_0x37a85d(0x1ce)](_0x24df9c,undefined))_0x24df9c=_0x3ad70d;var _0x3964fc=Object[_0x37a85d(0x1a7)](_0x1cb662,_0x3ad70d);(!_0x3964fc||(_0x4e6461[_0x37a85d(0x26c)](_0x4e6461[_0x37a85d(0x1ed)],_0x3964fc)?!_0x1cb662[_0x37a85d(0x197)]:_0x3964fc[_0x37a85d(0x2ab)]||_0x3964fc[_0x37a85d(0x304)]))&&(_0x3964fc={'enumerable':!![],'get':function(){return _0x1cb662[_0x3ad70d];}}),Object[_0x37a85d(0x223)](_0x4f1b1d,_0x24df9c,_0x3964fc);}:function(_0x3af3b5,_0xe4f5f5,_0x246f30,_0x44d7ff){const _0x5c0d19=a0_0x464192,_0x57fe13={'oToHi':function(_0x2197cf,_0x2c8475){return _0x2197cf===_0x2c8475;}};if(_0x57fe13[_0x5c0d19(0x2ed)](_0x44d7ff,undefined))_0x44d7ff=_0x246f30;_0x3af3b5[_0x44d7ff]=_0xe4f5f5[_0x246f30];}),a0_0x3d5471=this&&this[a0_0x464192(0x298)]||(Object[a0_0x464192(0x1aa)]?function(_0x1369d6,_0x2ec13b){const _0x50813f=a0_0x464192,_0x247d46={'FGYPn':_0x50813f(0x241)};Object[_0x50813f(0x223)](_0x1369d6,_0x247d46[_0x50813f(0x286)],{'enumerable':!![],'value':_0x2ec13b});}:function(_0x4c2013,_0x174403){const _0x1b5d38=a0_0x464192,_0x9205f0={'RsQwA':_0x1b5d38(0x241)};_0x4c2013[_0x9205f0[_0x1b5d38(0x1ac)]]=_0x174403;}),a0_0x3c94d1=this&&this[a0_0x464192(0x171)]||(function(){const _0xa38e18=a0_0x464192,_0xde159c={'bbUMo':_0xa38e18(0x2df),'cabLS':function(_0xd0cfe5,_0x5797ee){return _0xd0cfe5(_0x5797ee);},'jqSld':_0xa38e18(0x1fd),'VBwho':function(_0x29d353,_0x12989c){return _0x29d353!=_0x12989c;},'taYrO':function(_0x2637d2,_0xe031ea){return _0x2637d2(_0xe031ea);},'qwabU':function(_0x23fadd,_0x46e872){return _0x23fadd<_0x46e872;},'hhCwg':function(_0xae7c88,_0x11deab){return _0xae7c88!==_0x11deab;},'Mpphi':_0xa38e18(0x241),'AdTVO':function(_0x29425d,_0x5d0e75,_0x22c9c6,_0x240ac0){return _0x29425d(_0x5d0e75,_0x22c9c6,_0x240ac0);},'XfRdJ':function(_0x5178bc,_0x405630,_0x16a83b){return _0x5178bc(_0x405630,_0x16a83b);},'IWIST':function(_0x52f414){return _0x52f414();}},_0x587bd6=(function(){let _0x472dea=!![];return function(_0x4c9b52,_0x4a60d3){const _0x515440=_0x472dea?function(){const _0x2632d0=a0_0x2cb7;if(_0x4a60d3){const _0x45a0ce=_0x4a60d3[_0x2632d0(0x27e)](_0x4c9b52,arguments);return _0x4a60d3=null,_0x45a0ce;}}:function(){};return _0x472dea=![],_0x515440;};}()),_0x17c87e=_0xde159c[_0xa38e18(0x249)](_0x587bd6,this,function(){const _0x2aff40=_0xa38e18;return _0x17c87e[_0x2aff40(0x199)]()[_0x2aff40(0x2d8)](_0xde159c[_0x2aff40(0x20c)])[_0x2aff40(0x199)]()[_0x2aff40(0x149)](_0x17c87e)[_0x2aff40(0x2d8)](_0xde159c[_0x2aff40(0x20c)]);});_0xde159c[_0xa38e18(0x195)](_0x17c87e);var _0x2d4a47=function(_0x169344){const _0x4a6d24=_0xa38e18;return _0x2d4a47=Object[_0x4a6d24(0x182)]||function(_0x5ee4a8){const _0x4da64f=_0x4a6d24;var _0x13a84e=[];for(var _0x4311bd in _0x5ee4a8)if(Object[_0x4da64f(0x29b)][_0x4da64f(0x219)][_0x4da64f(0x2f4)](_0x5ee4a8,_0x4311bd))_0x13a84e[_0x13a84e[_0x4da64f(0x23e)]]=_0x4311bd;return _0x13a84e;},_0xde159c[_0x4a6d24(0x22f)](_0x2d4a47,_0x169344);};return function(_0x2799e3){const _0x263077=_0xa38e18,_0x7f5212=_0xde159c[_0x263077(0x186)][_0x263077(0x28f)]('|');let _0x4a6c1e=0x0;while(!![]){switch(_0x7f5212[_0x4a6c1e++]){case'0':if(_0xde159c[_0x263077(0x22c)](_0x2799e3,null)){for(var _0x3b32cf=_0xde159c[_0x263077(0x264)](_0x2d4a47,_0x2799e3),_0x5a430e=0x0;_0xde159c[_0x263077(0x2dd)](_0x5a430e,_0x3b32cf[_0x263077(0x23e)]);_0x5a430e++)if(_0xde159c[_0x263077(0x1fa)](_0x3b32cf[_0x5a430e],_0xde159c[_0x263077(0x2c7)]))_0xde159c[_0x263077(0x29d)](a0_0x19a9d5,_0x3d505e,_0x2799e3,_0x3b32cf[_0x5a430e]);}continue;case'1':var _0x3d505e={};continue;case'2':return _0x3d505e;case'3':if(_0x2799e3&&_0x2799e3[_0x263077(0x197)])return _0x2799e3;continue;case'4':_0xde159c[_0x263077(0x249)](a0_0x3d5471,_0x3d505e,_0x2799e3);continue;}break;}};}()),a0_0x162317=this&&this[a0_0x464192(0x26f)]||function(_0x737b03){const _0x100089=a0_0x464192;return _0x737b03&&_0x737b03[_0x100089(0x197)]?_0x737b03:{'default':_0x737b03};};function a0_0x483b(){const _0x23b0c4=['Cev4uva','igzPBgvZigzVCIbTAxnZAw9Uia','x19ZzxrnB2r1BgvezwzHDwX0','wLv3twi','zgvSAxzLCMfIBgu','ChjVDg90ExbL','v0nLvxm','qwruvK8','BgfZDfnJB3v0vgLTzq','C3rKzxjY','l2nVBxbSzxrL','DejxugS','DxbKyxrLuhjVzMLSzq','vLDVBeq','8j+AGcbbDxrVCgLSB3qGzw5NywDLzc4Gu2nVDxrPBMCGzxzLCNKG','sfrIwwe','EKrzC2O','ywn0AxzLtwLZC2LVBNm','zLPdv3q','4P2mievYCM9YigzPBMrPBMCGBwLZC2LVBJOG','AgvHCNrIzwf0vgLTzxi','D3jPDgfIBgu','Dwn6u0W','ihrLCM1PBMf0zwqU','BwfYA0nVBxbSzxrL','lIbjignHBIbLEgvJDxrLihrOAxmGBwLZC2LVBIb3AxrOigHPz2GGChjLy2LZAw9UlG','DhjPBq','zM9YrwfJAa','rxnis3a','tg9HzgvKihn0yxrLoIa','zgvZy3jPChrPB24','m3WXFdr8mNWW','A2v5D29Yzhm','l3bYB2DYzxnZ','mNW3Fdv8mtH8mtn8m3W5Fde3Fdf8mtf8mJn8mJf8mtv8mtr8mJj8mtL8mtb8mtz8nhWYmhW2Fdb8mtj8oa','y3jLyxrLtwLZC2LVBLjLCg8','t0nLz1e','CgfYC2u','rMfPBgvKihrVihbYB2nLC3mGBwLZC2LVBIbHC3nPz25Tzw50','vgTktxu','seTqu3q','l3jLC3vTzq','icHtreSGDG','u25Ou0S','Bg9N','8j+oIsbnAxnZAw9UiefZC2LNBMvKoIa','AhvTyw4','tujVC0S','ChvZAa','txbWAgK','8j+oRYbbDxrVCgLSB3q6iejPzgrPBMCGB24GiG','A2LSBa','wfLcuNq','su5gtW','AM9ICW','l2fWAq','zgvIDwC','AgvHCNrIzwf0sw50zxj2ywW','tw1Yzu8','DKXcsMO','cI0Gu0rlifzLCNnPB246ihy','z1byCKu','uMvTB3rLihjLCg9ZAxrVCNKGAw5PDgLHBgL6zwqU','zMLSDgvY','nti5nJq1nuP6vwvXrG','8j+rTYbxB3jRzxiG','C2vHCMnO','nZiXnJeWzuf1yKze','C2v0','tg9JywWGD29YA3nWywnLigLUAxrPywXPEMvKigf0oIa','ywDLBNrZl21Ll3vUCMvHza','CxDHyLu','C2vLBK1LC3nHz2vZ','kcGOlISPkYKRksSK','q29TBwfUzcbMAw5PC2HLzcb3AxrOignVzguG','mJqZodrZA3LPs2S','CgfJA2fNzs5QC29U','CvjLrNq','AM9Iswq','rvvVwxK','CMvWB3j0vxnHz2u','yxHPB3m','l3jLCg8VzMLSzxm','qNrAsLG','zgLZy29UBMvJDgvK','zxHPC3rZu3LUyW','CMvHzezPBgvtEw5J','B1rVsgK','q1HrBfm','rMfPBgvKihrVihnHDMuGC3rHDgu6ia','vfzes2C','yMfZzvvYBa','C3rYAw5N','D29YA2vYu2nYAxb0ugf0Aa','y2fSBa','Cgf0Aa','vgTJruC','w0jbq0Tet09sierjquDot1nusunD','BNvTyMvY','qwn0AxzL','rMfPBgvKihrVigXVywqGC3rHDgu6ia','l3vWBg9Hzd9MAwXLBMfTzt0','D29YA3nWywnL','EfPozgy','zgLZCgXHEu5HBwu','z2v0twLZC2LVBG','mtu4ntm3muP2CLnKqG','AgfZ','ugf1C2vK','8j+AGcbjBML0AwfSAxPPBMCGuhjVAMvJDcbtD2fYBsbMB3i6ia','y29UzMLNDxjHyMXL','D0r5AeG','l25VDgLMEq','w1DVCMTLCIa','twvrz1O','l2jPzca','ywDLBNrFC3rHDguUANnVBG','BwTKAxjtEw5J','y29UC3rYDwn0B3i','DhLWAw5Nx3n0yxrL','BwvZC2fNzxm','A2v5CW','8j+tNsbBu1ret1vuxsa','D3jPDgvgAwXLu3LUyW','zM9YAW','4PA277Ipief1Dg9WAwXVDcbsrvnvtuveigj5ig93BMvYlG','Bg9Hzfn0yxrL','BKvOCLG','iI4Gq29VCMrPBMf0zsb3AxrOignSAwvUDcbVBIbkB2iG','t25SAw5LigfZoIa','DgL0Bgu','AM9PBL9TAxnZAw9U','zxHLy3v0Aw9Ux2XVzW','CMvZB2X2zq','C3rHCNrbDxrVCgLSB3q','zNjVBq','D29YA3nWywnLuM9VDa','BM90Awz5t3DUzxi','EMzPrLC','v2nHvvC','AgfUzgXLtwfUDwfSqMLKuMvXDwvZDa','C2XPy2u','AvnKsgO','s2HLEfe','C29Tzq','u0rlx1zfuLnjt04','y2fWywjPBgL0AwvZ','zw1PDa','yxbPs2v5','yxnZAwDUBwvUDa','BNPXEgO','q2fWywjPBgL0EvnJAgvTyq','C3rHDhvZ','zeD6AwW','sM9Iu3rHDhvZu2nOzw1H','zgvSzxrL','AKD6vw4','DgXxt3q','x19PBxbVCNrtDgfY','8j+KLIbBu1LtvevnxsbqCM9Qzwn0ifn3yxjTieLUAxrPywXPEMvKlIbKzwrPy2f0zwqGue0Gyw5KievUz2LUzwvYigfZC2LNBMvKlG','z3vqCgO','Aw5JBhvKzxm','AePtEfm','y3DK','yxbP','AM9PBG','v2vIu29JA2v0ifjLy29UBMvJDgvKigfMDgvYia','rMfPBgvKihrVihn5BMmGy2fWywjPBgL0AwvZihrVigDYAwqSignVBNrPBNvPBMCUlI4','qxv0B3bPBg90ihnJB3v0igzHAwXLzdOG','ntC0Ae5jCMrb','ks4UlG','Cg9ZDa','rxHLy3v0Aw5NignVBw1HBMqGAw4G','s3n2zhi','ywDLBNrjza','z2v0t3DUuhjVCgvYDhLoyw1LCW','rMLtrxq','uefly0u','BMH3ww0','ANftBgq','CY4UlG','C2L6zq','uNj2C1O','lI4U','Ew9otvO','DhjHBNnSyxrPB24','Cu5rEum','BMv3x21LC3nHz2u','BwLZC2LVBL9HC3nPz25Lzf8','t3vmA3K','ChvZAfrVuMvWBW','v2vIu29JA2v0ierPC2nVBM5Ly3rLzdOG','vhrsu3a','q2f1z2H0ihvWig9Uia','svDju1q','igv4AxrLzcb3AxrOignVzgu6ia','x19LC01VzhvSzq','iIaTlxrHC2SGiG','Dg9tDhjPBMC','C3bHD24','zgf0yq','s1LAyuC','cI0Gqxv0B3bPBg90oIa','y2f0zwDVCNK','u2vYDMvYievYCM9YoIa','zgvSAxzLCG','C29JA2v0','C2v0uhjVz3jLC3m','C29JA2v0lMLVlwnSAwvUDa','zxzLBNq','AM9ICY8','y2HPBgrFChjVy2vZCW','z2v0t3DUuhjVCgvYDhLezxnJCMLWDg9Y','C2v0vhLWAw5N','Aw5PDgLHBgL6zu1PC3nPB24','y3jLyxrL','mc45lJi','uNnrD0e','wuHHtKu','DxbSB2fKrMLSzq','qwPACvC','sgzYAvq','q2XVDwqGC3LUyYbMywLSzwqSihjLBhLPBMCGB24GBg9JywWGC3rHDguU','rLvkDvm','yxjJAgL2zwq','l3bHDxnL','zgLZChv0zwq','zMv0y2HvBNjLywrnzxnZywDLCW','CgvYC2LZDfn0yxrL','Bg9JywXmB2DqyxrO','l2TPBgWG','AM9I','y29TCgXLDgu','mJCZotm0mM10ugrfsW','4P2mie1HBNvHBcbIAwqGzMfPBgvKoIa','Dxb0Aw1L','q2fUBM90ihvWBg9HzcbLBxb0EsbMAwXLoIa','Chv0','A2LSBfDVCMTLCG','z3PMrvO','v3fpCxm','yMLKvgvTCgXHDgu','sLHrAge','BK96u0i','CMvJB25Uzwn0','DMvYC2LVBG','DhLWzq','shL5Awm','B25nzxnZywDL','Bg9Nsw50zxjUywW','B25ozxDkB2i','ww1Vt3O','qwDLBNq','C3bHD25xB3jRzxi','4PYfifn1y2nLC3nMDwXSEsbWBgfJzwqGyMLKig9UoIa','s21Mu0e','CMvWBgfJzq','qM1PD0u','8j+rKsbrDwvLBJOGu3bHD25PBMCGzgvKAwnHDgvKihDVCMTLCIbMB3iGBwLZC2LVBJOG','uefvu0veiokpUo+4JW','CwPKz0G','D2vIC29JA2v0','l21LC3nHz2vZ','s3fRu2y','tgvHzcbfBMDPBMvLCIbMB3iGBwLZC2LVBJOGiG','uMjQy3m','C2vUzgvY','uMvWB3nPDg9YEsbPBML0AwfSAxPHDgLVBIb3yxjUAw5NoIa','vgHNuuW','qMvHCMvYia','Aw1Hz2vFz2vUzxjHDgLVBG','twvZC2fNzvnJAgvTyq','zvzLt3m','neTMCKDLyq','y2f0y2G','v0fstG','q29UBMvJDgLUzYb0BYbhCMLKoIa','C2vUze1LC3nHz2u','Dg9mB2nHBgvuAw1Lu3rYAw5N','l2XVz3m','tgjLvKO','u2jwufy','uxvwyLG','q3zMuhq','ywDLBNrZl21Ll2fJAW','rMLSzsbUB3qGzM91BMq6ia','u1vdq0vtuW','AM9ICZ9ZDgf0Dxm9Aw5FChjVz3jLC3m','w1nes10G','cI0GtgfZDcbnyxjRzxrWBgfJzsbty2fUoIa','yMfZzw5HBwu','8j+rKsbBuvvfru4Gu1rbvfvtifjfue9svf0klsbby3rPDMuGtwLZC2LVBNm6ia','rxDdz2u','ywrK','l2HLyxj0yMvHDa','AgHdD2C','4PYfifTeruXjvKvswv0GvgHLigzVBgXVD2LUzYbMAwXLCYbOyxzLigjLzw4GyxjJAgL2zwqGAw4GEw91CIbZzwn1CMuGCMvWB3nPDg9YEtOk','ig1PC3nPB25ZlcbbDxrVCgLSB3q6ia','m3WXFdb8nhWY','D29YA2vYCW','C3rYAw5NAwz5','mtm4mJa4mhrttfrbza','BMv3x2PVyG','C3rHDgvqyxrO','D2vIx2jYB3DZAw5N','Bw5OwMq','l3n0yxr1CW','B3bLBMnSyxCGC2vZC2LVBNnFC3bHD24Gls1SywjLBcaIru5hlq','l21HBMfNzq','B3bLBG','DxbSB2fKrgvSAxzLCMfIBgu','C2nVDxrPBMDjBNrLCNzHBa','ywDLBNrZlW','yMjvtw8','Dg9ju09tDhjPBMC','AgfUzgXLsw5JB21PBMDnzxnZywDL','l3jLCg8','uNbsELG','v0POzgW','DxrMoa','B093sui','C3rHDfn5BMm','rgvSAxzLCMLUzYa','zw5YAwnOsM9I','zxHPDa','y29UDgvUDa','AgfZt3DUuhjVCgvYDhK','vxbSB2fKigzHAwXLzdOG','zxjYB3i','D29YA2vYlMPZ','C3rKB3v0','zujKyMG','yNvKz2v0','uNzdwKq','reLqAuS','Dw9iq1G','zgvMAw5LuhjVCgvYDhK','yxbWzw5KrMLSzvn5BMm','yNvKz2v0qw1VDw50','C3bHD25uzwfT','zNjVBuvUDhjPzxm','v2vrAM8','zgLZy29UBMvJDa','rvjst1i','z2v0t3bLBK1PC3nPB25Z','vKj3Ag8','Aw5PDfnVy2TLDa','zxHLy3v0zq','y2fItfm','uLvotKLorYdILRBVUi8','zgf0yv9HBMfSExnPCW','x19JCMvHDgvcAw5KAw5N','y29Kzv9Nzw5LCMf0Aw9U','v2vIu29JA2v0ieXPBMSGrxn0ywjSAxnOzwqU','u3rHDhvZienVzgu6ia','CxPws2G','v29YA2vYihnJCMLWDcbUB3qGzM91BMqGyxq6ia','Dgv4Da','4P2mifjLBNrHqM90CYbbueKGs2v5igLZig1PC3nPBMCUifbHC3mGAxqGAw4GDgHLignVBNn0CNvJDg9Yig9YihnLDcbsru5uqujpvfnFqvbjx0TfwsbPBIaUzw52','D2DNve0','Bwfkv3K','l2zPBgvZ','xsbB','BgvUz3rO','zw50CMLLCW','z2v0twvZC2fNzxm','zgvMyxvSDa','z2v0','C2vUzeHLyxj0yMvHDa','mteWnu5bufzVuG','yLroyxu','C3rHCNrizwfYDgjLyxq','B3bLBMnSyxCGC2vZC2LVBNnFC3bHD24Gls1SywjLBcaIue0T','Aw5FChjVz3jLC3m','wgzszeO','B3b0Aw9UywW','igf0DgvTChrZlG','C3rHCNrZv2L0Aa','A1vwvvy','A3nLvuq','zxzLBNrZ','C2f2zvn0yxrL','CgLUz0jHy2TKB29Y','wKzty1K','EM9K','yxjYyxK','uvP6Cgi','sw5IB3GGy2HLy2SGzMfPBgvKoIa','y29UBMvJDa','tMv2zxi','vhDOufC','iI4GqNvPBgqGzgvSAxzLCMfIBgvZigLUigXVy2fSihDVCMTZCgfJzsbMB3iGsM9Iia','C3vJy2vZCW','rMfPBgvKihrVihnWyxDUihrLyw06ia','B25iAxjLza','twfUDwfSigjPzcbYzxf1zxn0zwqGyNKGB3DUzxiU','4O+477Ipief1Dg9WAwXVDcbqqvvtruqGyNKGB3DUzxiU','Dg9mB3DLCKnHC2u','yMLKCW','yxbWBgLJyxrPB24VB2n0zxqTC3rYzwfT','z1j4EfC','DgfzCK8','zxjXv2m','rMfPBgvKihrVihbHCNnLigLUy29TAw5NihnVy2TLDcbTzxnZywDL','CMvZCg9UC2u','ihvUCMvHzcbTzxnZywDLCY4','C0XmwvC','AM9PBL9TyxjRzxrWBgfJzq','Ahr0Chm6lY9Yzw50ywjVDhmUy29Tl2fWAq','qM1rwKy','DLP3vMm','C0H3AeO','x19PBxbVCNrezwzHDwX0','A2TTruG','AgfUzgXLu3rHDhvZuMvXDwvZDa','BwvZC2fNzq','B2jQzwn0','ywDLBNrZl21L','y29UBMvJDgvK','4PQu77IpifDVCMTLCIbMB3iGsM9Iia','yMLK','iI4UlG','ssbHBsbHBIbHDxrVBM9TB3vZihvUAxqGB3b0Aw1PEMvKigzVCIa','zw51Bq','tw5Hz1y','uMvJB3zLCMvKigfJDgL2zsbTAxnZAw9UigzYB20Gy2XVDwq6ia','cI0Gqwn0AxzLifDVCMTLCNm6ia','yxbWBhK','yMLKq2fJAgu','y29TCgXLDgvK','yxv0B3bPBg90vgLTzxi','zxHLy3v0Aw9Ux2vYCM9Y','z1veD3u','yLLXvMW','yxv0B3bPBg90ugf1C2vK','rKDzug4','wfHgyKK','yK9xDNy','y2XVC2u','BwLUqNvKz2v0','yxv0B21HDgLVBG','rxzLBNrfBwL0DgvY','BKzNt00','sM9Iu2nOzw1H','C3bSAxq','BhzgsLi','C3LUy0zYB21dBg91za','ywDLBNq','BwfW','vNDvDMu','uhjVAMvJDcbnyw5Hz2vYigzVCIbTAxnZAw9UoIaI'];a0_0x483b=function(){return _0x23b0c4;};return a0_0x483b();}Object[a0_0x464192(0x223)](exports,a0_0x464192(0x197),{'value':!![]}),exports[a0_0x464192(0x1cf)]=exports[a0_0x464192(0x1e2)]=exports[a0_0x464192(0x28e)]=exports[a0_0x464192(0x16d)]=exports[a0_0x464192(0x16a)]=void 0x0;const a0_0x188db1=a0_0x162317(require(a0_0x464192(0x2e7))),a0_0x541855=require(a0_0x464192(0x1a3)),a0_0x3e6b5a=require(a0_0x464192(0x253)),a0_0x629cfb=require(a0_0x464192(0x24f)),a0_0x567b50=a0_0x3c94d1(require('fs')),a0_0x43925d=a0_0x3c94d1(require(a0_0x464192(0x2f5))),a0_0x2020e2=require(a0_0x464192(0x1a6));exports[a0_0x464192(0x16a)]=a0_0x3e6b5a['z'][a0_0x464192(0x27a)]([a0_0x464192(0x233),a0_0x464192(0x203),a0_0x464192(0x231),a0_0x464192(0x1e1),a0_0x464192(0x28b),a0_0x464192(0x18c)]),exports[a0_0x464192(0x16d)]=a0_0x3e6b5a['z'][a0_0x464192(0x27a)]([a0_0x464192(0x208),a0_0x464192(0x248),a0_0x464192(0x280),a0_0x464192(0x1b3),a0_0x464192(0x1b5)]),exports[a0_0x464192(0x28e)]=a0_0x3e6b5a['z'][a0_0x464192(0x273)]({'id':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'title':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'description':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'budget':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'category':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'status':exports[a0_0x464192(0x16d)],'createdAt':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'progress':a0_0x3e6b5a['z'][a0_0x464192(0x2f8)]()[a0_0x464192(0x24a)]()}),exports[a0_0x464192(0x1e2)]=a0_0x3e6b5a['z'][a0_0x464192(0x273)]({'id':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'jobId':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'content':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'senderId':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'createdAt':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'sender':a0_0x3e6b5a['z'][a0_0x464192(0x273)]({'id':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'displayName':a0_0x3e6b5a['z'][a0_0x464192(0x2f2)](),'type':a0_0x3e6b5a['z'][a0_0x464192(0x27a)]([a0_0x464192(0x2c4),a0_0x464192(0x292)])})});let a0_0x28a9c2=a0_0x464192(0x1ab);function a0_0x2cb7(_0x21977d,_0x41c84b){_0x21977d=_0x21977d-0x148;const _0x3db6d2=a0_0x483b();let _0x5c0287=_0x3db6d2[_0x21977d];if(a0_0x2cb7['VMMcul']===undefined){var _0x2d4a13=function(_0x3a0c90){const _0x2d6e1f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xeab487='',_0x5b729b='',_0x43a37a=_0xeab487+_0x2d4a13;for(let _0x198d75=0x0,_0x2cbe04,_0x27e297,_0x411a84=0x0;_0x27e297=_0x3a0c90['charAt'](_0x411a84++);~_0x27e297&&(_0x2cbe04=_0x198d75%0x4?_0x2cbe04*0x40+_0x27e297:_0x27e297,_0x198d75++%0x4)?_0xeab487+=_0x43a37a['charCodeAt'](_0x411a84+0xa)-0xa!==0x0?String['fromCharCode'](0xff&_0x2cbe04>>(-0x2*_0x198d75&0x6)):_0x198d75:0x0){_0x27e297=_0x2d6e1f['indexOf'](_0x27e297);}for(let _0x22f1d0=0x0,_0x3eaa40=_0xeab487['length'];_0x22f1d0<_0x3eaa40;_0x22f1d0++){_0x5b729b+='%'+('00'+_0xeab487['charCodeAt'](_0x22f1d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5b729b);};a0_0x2cb7['mLkQKU']=_0x2d4a13,a0_0x2cb7['YVYsgI']={},a0_0x2cb7['VMMcul']=!![];}const _0x483b43=_0x3db6d2[0x0],_0x2cb795=_0x21977d+_0x483b43,_0x3f3566=a0_0x2cb7['YVYsgI'][_0x2cb795];if(!_0x3f3566){const _0x56ea32=function(_0xeb310){this['GphIwd']=_0xeb310,this['WLDqBO']=[0x1,0x0,0x0],this['ktGIkK']=function(){return'newState';},this['xMASQG']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['DDKvhx']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x56ea32['prototype']['mFTbYM']=function(){const _0x569d1c=new RegExp(this['xMASQG']+this['DDKvhx']),_0x2bb87b=_0x569d1c['test'](this['ktGIkK']['toString']())?--this['WLDqBO'][0x1]:--this['WLDqBO'][0x0];return this['SqIkLd'](_0x2bb87b);},_0x56ea32['prototype']['SqIkLd']=function(_0x1fe128){if(!Boolean(~_0x1fe128))return _0x1fe128;return this['pimxzg'](this['GphIwd']);},_0x56ea32['prototype']['pimxzg']=function(_0x303023){for(let _0x5c8653=0x0,_0x165d70=this['WLDqBO']['length'];_0x5c8653<_0x165d70;_0x5c8653++){this['WLDqBO']['push'](Math['round'](Math['random']())),_0x165d70=this['WLDqBO']['length'];}return _0x303023(this['WLDqBO'][0x0]);},new _0x56ea32(a0_0x2cb7)['mFTbYM'](),_0x5c0287=a0_0x2cb7['mLkQKU'](_0x5c0287),a0_0x2cb7['YVYsgI'][_0x2cb795]=_0x5c0287;}else _0x5c0287=_0x3f3566;return _0x5c0287;}try{const a0_0x4acba8=a0_0x43925d[a0_0x464192(0x178)](__dirname,'..',a0_0x464192(0x2e2));if(a0_0x567b50[a0_0x464192(0x2eb)](a0_0x4acba8)){const a0_0x232eed=JSON[a0_0x464192(0x2bb)](a0_0x567b50[a0_0x464192(0x2ec)](a0_0x4acba8,a0_0x464192(0x212)));a0_0x28a9c2=a0_0x232eed[a0_0x464192(0x1c8)];}}catch(a0_0x25a92e){}class a0_0x5c05ca extends a0_0x629cfb[a0_0x464192(0x28c)]{constructor(_0x31a0e4={}){const _0x2c30f4=a0_0x464192,_0x8e9a9f={'RrvsZ':_0x2c30f4(0x2b8),'uczSL':function(_0x4bacc9,_0x20dc67){return _0x4bacc9!==_0x20dc67;},'bYqVl':function(_0x3d87fb,_0x57cc89){return _0x3d87fb===_0x57cc89;},'EwCge':_0x2c30f4(0x2f2),'JXQha':_0x2c30f4(0x30a),'kUVUV':_0x2c30f4(0x2fc),'qNQyC':_0x2c30f4(0x21c),'ThgQL':_0x2c30f4(0x239),'eBdbh':_0x2c30f4(0x26b)},_0x37e1d6=_0x8e9a9f[_0x2c30f4(0x189)][_0x2c30f4(0x28f)]('|');let _0xf4dd6a=0x0;while(!![]){switch(_0x37e1d6[_0xf4dd6a++]){case'0':_0x8e9a9f[_0x2c30f4(0x2ac)](_0x31a0e4[_0x2c30f4(0x1b7)],![])&&(this[_0x2c30f4(0x202)]=_0x8e9a9f[_0x2c30f4(0x284)](typeof _0x31a0e4[_0x2c30f4(0x1b7)],_0x8e9a9f[_0x2c30f4(0x1f7)])?_0x31a0e4[_0x2c30f4(0x1b7)]:a0_0x43925d[_0x2c30f4(0x178)](process[_0x2c30f4(0x176)](),_0x8e9a9f[_0x2c30f4(0x1c5)]));continue;case'1':this[_0x2c30f4(0x2de)]=new Set();continue;case'2':super();continue;case'3':this[_0x2c30f4(0x1b8)]=null;continue;case'4':this[_0x2c30f4(0x15b)]=_0x31a0e4[_0x2c30f4(0x15b)]||a0_0x43925d[_0x2c30f4(0x178)](process[_0x2c30f4(0x176)](),_0x8e9a9f[_0x2c30f4(0x24d)]);continue;case'5':this[_0x2c30f4(0x1a1)]=null;continue;case'6':this[_0x2c30f4(0x2f3)]=_0x31a0e4[_0x2c30f4(0x2f3)]||a0_0x43925d[_0x2c30f4(0x178)](process[_0x2c30f4(0x176)](),_0x8e9a9f[_0x2c30f4(0x18d)]);continue;case'7':this[_0x2c30f4(0x181)]=null;continue;case'8':this[_0x2c30f4(0x177)]=a0_0x188db1[_0x2c30f4(0x241)][_0x2c30f4(0x1aa)]({'baseURL':this[_0x2c30f4(0x2f1)],'headers':{'x-api-key':this[_0x2c30f4(0x167)],'x-sdk-version':a0_0x5c05ca[_0x2c30f4(0x164)]}});continue;case'9':this[_0x2c30f4(0x2a7)]=new Map();continue;case'10':this[_0x2c30f4(0x165)]=_0x31a0e4[_0x2c30f4(0x165)]||[];continue;case'11':this[_0x2c30f4(0x1fe)]=new Map();continue;case'12':if(!this[_0x2c30f4(0x167)])throw new Error(_0x8e9a9f[_0x2c30f4(0x1df)]);continue;case'13':this[_0x2c30f4(0x202)]=null;continue;case'14':this[_0x2c30f4(0x167)]=_0x31a0e4[_0x2c30f4(0x167)]||process.env.RENTABOTS_API_KEY||process.env.AGENT_API_KEY||'';continue;case'15':this[_0x2c30f4(0x29e)]=null;continue;case'16':this[_0x2c30f4(0x2cf)]=_0x31a0e4[_0x2c30f4(0x2cf)]||0x7530;continue;case'17':this[_0x2c30f4(0x27f)]=new Set();continue;case'18':this[_0x2c30f4(0x2aa)]=null;continue;case'19':this[_0x2c30f4(0x2ce)]=_0x31a0e4[_0x2c30f4(0x2ce)]||![];continue;case'20':this[_0x2c30f4(0x1b8)]=_0x31a0e4[_0x2c30f4(0x1b8)]||null;continue;case'21':this[_0x2c30f4(0x285)]=![];continue;case'22':this[_0x2c30f4(0x2f1)]=(_0x31a0e4[_0x2c30f4(0x2f1)]||_0x8e9a9f[_0x2c30f4(0x21e)])[_0x2c30f4(0x1d3)](/\/$/,'');continue;case'23':this[_0x2c30f4(0x281)]=null;continue;}break;}}async[a0_0x464192(0x257)](){const _0x41f92a=a0_0x464192,_0x35ade6={'vLBJj':_0x41f92a(0x274),'WJhdl':function(_0x420632,_0x48ade2){return _0x420632>_0x48ade2;},'FiSEt':_0x41f92a(0x17a),'Rbjcs':_0x41f92a(0x1e6)};this[_0x41f92a(0x1cc)](_0x41f92a(0x1e7)+this[_0x41f92a(0x2f1)]+_0x41f92a(0x2c0)+a0_0x5c05ca[_0x41f92a(0x164)]+_0x41f92a(0x17d));try{this[_0x41f92a(0x151)]();const _0x315164=await this[_0x41f92a(0x177)][_0x41f92a(0x242)](_0x35ade6[_0x41f92a(0x2d1)],{'headers':{'Authorization':_0x41f92a(0x1e0)+this[_0x41f92a(0x167)]}})[_0x41f92a(0x1e5)](_0x3005fb=>{const _0x2141f1=_0x41f92a;if(_0x3005fb[_0x2141f1(0x267)])throw new Error(_0x3005fb[_0x2141f1(0x267)][_0x2141f1(0x19b)][_0x2141f1(0x21b)]||_0x2141f1(0x19f)+_0x3005fb[_0x2141f1(0x267)][_0x2141f1(0x16b)]);throw _0x3005fb;});this[_0x41f92a(0x181)]=_0x315164[_0x41f92a(0x19b)][_0x41f92a(0x292)]['id'],await this[_0x41f92a(0x291)](),await this[_0x41f92a(0x1b6)](),this[_0x41f92a(0x22d)](),this[_0x41f92a(0x246)](this[_0x41f92a(0x2cf)]),this[_0x41f92a(0x1cc)](_0x41f92a(0x154)+_0x315164[_0x41f92a(0x19b)][_0x41f92a(0x292)][_0x41f92a(0x2fe)]);if(_0x35ade6[_0x41f92a(0x211)](this[_0x41f92a(0x165)][_0x41f92a(0x23e)],0x0))try{await this[_0x41f92a(0x2a2)]({'skills':this[_0x41f92a(0x165)]});}catch(_0x2072b3){this[_0x41f92a(0x1cc)](_0x35ade6[_0x41f92a(0x183)],_0x35ade6[_0x41f92a(0x1dc)]);}return{'success':!![],'agent':_0x315164[_0x41f92a(0x19b)][_0x41f92a(0x292)]};}catch(_0xb40b0){const _0x3deee0=_0xb40b0[_0x41f92a(0x267)]?.[_0x41f92a(0x19b)]?.[_0x41f92a(0x21b)]||_0xb40b0[_0x41f92a(0x272)]||_0x41f92a(0x235)+_0xb40b0[_0x41f92a(0x267)]?.[_0x41f92a(0x16b)];return{'success':![],'error':_0x3deee0};}}async[a0_0x464192(0x1b6)](){const _0x10e642=a0_0x464192,_0x588170={'LbeVJ':_0x10e642(0x2dc),'BmiwE':function(_0x2c964c,_0x3e6f06){return _0x2c964c>_0x3e6f06;},'VWolD':_0x10e642(0x1ef),'wDyhH':_0x10e642(0x1e6)};try{const _0x3a6b53=await this[_0x10e642(0x177)][_0x10e642(0x242)](_0x588170[_0x10e642(0x1eb)],{'headers':{'Authorization':_0x10e642(0x1e0)+this[_0x10e642(0x167)]}}),_0x58853b=_0x3a6b53[_0x10e642(0x19b)][_0x10e642(0x14b)];if(_0x588170[_0x10e642(0x1d4)](_0x58853b[_0x10e642(0x23e)],0x0)){this[_0x10e642(0x1cc)](_0x10e642(0x194)+_0x58853b[_0x10e642(0x23e)]+_0x10e642(0x268));let _0x5442bc='';for(const _0x182ef0 of _0x58853b){!this[_0x10e642(0x2de)][_0x10e642(0x301)](_0x182ef0['id'])&&(this[_0x10e642(0x2de)][_0x10e642(0x1f8)](_0x182ef0['id']),this[_0x10e642(0x20e)](_0x182ef0),_0x5442bc=_0x182ef0['id']);}_0x5442bc&&await this[_0x10e642(0x177)][_0x10e642(0x17e)](_0x588170[_0x10e642(0x2a3)],{'messageId':_0x5442bc},{'headers':{'Authorization':_0x10e642(0x1e0)+this[_0x10e642(0x167)]}});}}catch(_0x6d3e2f){this[_0x10e642(0x1cc)](_0x10e642(0x256)+_0x6d3e2f[_0x10e642(0x272)],_0x588170[_0x10e642(0x305)]);}}async[a0_0x464192(0x291)](){const _0x2f1f4c=a0_0x464192,_0x1d16ef={'AjZqW':_0x2f1f4c(0x1f2),'bTNau':_0x2f1f4c(0x1b1),'hJSxS':_0x2f1f4c(0x1e6)};try{const _0xe6b441=await this[_0x2f1f4c(0x177)][_0x2f1f4c(0x242)](_0x1d16ef[_0x2f1f4c(0x1af)],{'headers':{'Authorization':_0x2f1f4c(0x1e0)+this[_0x2f1f4c(0x167)]}}),_0x10b4a2=_0xe6b441[_0x2f1f4c(0x19b)][_0x2f1f4c(0x19b)][_0x2f1f4c(0x2d5)](_0x53bbbd=>_0x53bbbd[_0x2f1f4c(0x181)]===this[_0x2f1f4c(0x181)]);for(const _0x2179ec of _0x10b4a2){if(!this[_0x2f1f4c(0x2a7)][_0x2f1f4c(0x301)](_0x2179ec['id'])){const _0x13052d=this[_0x2f1f4c(0x216)](_0x2179ec);this[_0x2f1f4c(0x2a7)][_0x2f1f4c(0x2da)](_0x13052d['id'],_0x13052d),this[_0x2f1f4c(0x1cc)](_0x2f1f4c(0x27c)+_0x13052d[_0x2f1f4c(0x155)]);}}this[_0x2f1f4c(0x250)]();}catch(_0x3638b3){this[_0x2f1f4c(0x1cc)](_0x1d16ef[_0x2f1f4c(0x245)],_0x1d16ef[_0x2f1f4c(0x175)]);}}[a0_0x464192(0x216)](_0x373b58){const _0x2f869a=a0_0x464192,_0x1063a1={'iSdHj':function(_0x278200,_0x4a1d57){return _0x278200(_0x4a1d57);}},_0x108f5c=_0x1063a1[_0x2f869a(0x161)](parseFloat,_0x373b58[_0x2f869a(0x21f)]?.[_0x2f869a(0x1d3)](/[^0-9.]/g,'')||'0');return{...exports[_0x2f869a(0x28e)][_0x2f869a(0x2bb)](_0x373b58),'budgetAmount':_0x108f5c};}[a0_0x464192(0x22d)](){const _0x730fe3=a0_0x464192,_0x331e36={'fZCWt':_0x730fe3(0x234),'TkJMu':_0x730fe3(0x26a),'KhexQ':_0x730fe3(0x156),'pExQP':_0x730fe3(0x275),'SbVPV':_0x730fe3(0x2cb),'nFgOM':_0x730fe3(0x1e6),'Ksvdr':_0x730fe3(0x2ea),'DIPiK':_0x730fe3(0x1ef),'sLLYW':_0x730fe3(0x266),'HfriT':_0x730fe3(0x22a),'KqkSf':_0x730fe3(0x1ba),'SnhSK':_0x730fe3(0x2b5),'oOwIB':_0x730fe3(0x168),'KmfSA':_0x730fe3(0x1f1),'qjdgH':_0x730fe3(0x2bc),'qzVKh':_0x730fe3(0x2cd),'lvFJR':_0x730fe3(0x1d8),'nzqxj':_0x730fe3(0x257),'BtZJX':_0x730fe3(0x1c7),'WcaUW':_0x730fe3(0x229),'QZzpb':_0x730fe3(0x18e),'HKPSt':_0x730fe3(0x201)};if(this[_0x730fe3(0x1a1)]&&this[_0x730fe3(0x1a1)][_0x730fe3(0x275)])return;const _0x3c2bce=this[_0x730fe3(0x2f1)][_0x730fe3(0x1d3)](_0x331e36[_0x730fe3(0x236)],'');this[_0x730fe3(0x1a1)]=(0x0,a0_0x541855['io'])(_0x3c2bce,{'auth':{'token':this[_0x730fe3(0x167)]},'transports':[_0x331e36[_0x730fe3(0x290)]],'reconnection':!![],'reconnectionAttempts':Infinity,'reconnectionDelay':0x3e8}),this[_0x730fe3(0x1a1)]['on'](_0x331e36[_0x730fe3(0x169)],()=>{const _0x550466=_0x730fe3;this[_0x550466(0x1cc)](_0x331e36[_0x550466(0x2a8)]),this[_0x550466(0x1a1)]?.[_0x550466(0x166)](_0x331e36[_0x550466(0x2bd)]);for(const _0x10731b of this[_0x550466(0x2a7)][_0x550466(0x14c)]()){this[_0x550466(0x1a1)]?.[_0x550466(0x166)](_0x331e36[_0x550466(0x162)],_0x10731b);}this[_0x550466(0x166)](_0x331e36[_0x550466(0x296)]);}),this[_0x730fe3(0x1a1)]['on'](_0x331e36[_0x730fe3(0x2e9)],_0x59fce4=>{const _0x262ab6=_0x730fe3;this[_0x262ab6(0x1cc)](_0x262ab6(0x179)+_0x59fce4+_0x262ab6(0x24b),_0x331e36[_0x262ab6(0x1ec)]),this[_0x262ab6(0x291)]();}),this[_0x730fe3(0x1a1)]['on'](_0x331e36[_0x730fe3(0x15e)],_0x17f74f=>{const _0x1eaf3d=_0x730fe3;this[_0x1eaf3d(0x1cc)](_0x1eaf3d(0x192)+_0x17f74f,_0x331e36[_0x1eaf3d(0x28d)]),this[_0x1eaf3d(0x166)](_0x331e36[_0x1eaf3d(0x180)],_0x17f74f);}),this[_0x730fe3(0x1a1)]['on'](_0x331e36[_0x730fe3(0x255)],_0x5e0763=>{const _0x12195f=_0x730fe3;try{const _0x413f8f=exports[_0x12195f(0x1e2)][_0x12195f(0x2bb)](_0x5e0763);!this[_0x12195f(0x2de)][_0x12195f(0x301)](_0x413f8f['id'])&&(this[_0x12195f(0x2de)][_0x12195f(0x1f8)](_0x413f8f['id']),this[_0x12195f(0x20e)](_0x413f8f),this[_0x12195f(0x177)][_0x12195f(0x17e)](_0x331e36[_0x12195f(0x221)],{'messageId':_0x413f8f['id']},{'headers':{'Authorization':_0x12195f(0x1e0)+this[_0x12195f(0x167)]}})[_0x12195f(0x1e5)](()=>{}));}catch(_0x370e80){this[_0x12195f(0x1cc)](_0x331e36[_0x12195f(0x269)],_0x331e36[_0x12195f(0x1b0)]);}}),this[_0x730fe3(0x1a1)]['on'](_0x331e36[_0x730fe3(0x2be)],_0x570a7c=>{const _0x3adcf1=_0x730fe3;try{const _0x3166d4=this[_0x3adcf1(0x216)](_0x570a7c);this[_0x3adcf1(0x166)](_0x331e36[_0x3adcf1(0x1da)],_0x3166d4);}catch(_0x514fe0){}}),this[_0x730fe3(0x1a1)]['on'](_0x730fe3(0x18f)+this[_0x730fe3(0x181)],_0x2c7450=>{const _0x51440f=_0x730fe3;try{const _0x4c44d5=this[_0x51440f(0x216)](_0x2c7450);if(!this[_0x51440f(0x2a7)][_0x51440f(0x301)](_0x4c44d5['id'])){const _0x480e75=_0x331e36[_0x51440f(0x2c1)][_0x51440f(0x28f)]('|');let _0x757cae=0x0;while(!![]){switch(_0x480e75[_0x757cae++]){case'0':this[_0x51440f(0x166)](_0x331e36[_0x51440f(0x213)],_0x4c44d5);continue;case'1':this[_0x51440f(0x250)]();continue;case'2':this[_0x51440f(0x1cc)](_0x51440f(0x2c3)+_0x4c44d5[_0x51440f(0x155)],_0x331e36[_0x51440f(0x1d2)]);continue;case'3':this[_0x51440f(0x2a7)][_0x51440f(0x2da)](_0x4c44d5['id'],_0x4c44d5);continue;case'4':this[_0x51440f(0x1a1)]?.[_0x51440f(0x166)](_0x331e36[_0x51440f(0x162)],_0x4c44d5['id']);continue;}break;}}}catch(_0x44c726){this[_0x51440f(0x1cc)](_0x331e36[_0x51440f(0x1d7)],_0x331e36[_0x51440f(0x1b0)]);}});}[a0_0x464192(0x20e)](_0x20154a){const _0x2de19c=a0_0x464192,_0x22ef22={'RpRzX':function(_0x2279bf,_0x3eed80){return _0x2279bf===_0x3eed80;},'tlWOt':_0x2de19c(0x2c4),'TVDKg':function(_0x55410e,_0x2e9eae){return _0x55410e===_0x2e9eae;},'zDYsj':_0x2de19c(0x205),'ZFScY':_0x2de19c(0x1b4),'CvfPt':_0x2de19c(0x25f),'ZUwMb':function(_0x3bf215,_0x1f8eba){return _0x3bf215===_0x1f8eba;},'EUoYy':_0x2de19c(0x2bf),'eVeOs':_0x2de19c(0x150),'gRxxW':_0x2de19c(0x309),'TwhPW':_0x2de19c(0x1b9),'MBosK':_0x2de19c(0x272)};if(_0x22ef22[_0x2de19c(0x210)](_0x20154a[_0x2de19c(0x1dd)][_0x2de19c(0x1c9)],_0x22ef22[_0x2de19c(0x170)])){const _0x2f2826=_0x20154a[_0x2de19c(0x218)][_0x2de19c(0x2b0)]();if(_0x22ef22[_0x2de19c(0x2f0)](_0x2f2826,_0x22ef22[_0x2de19c(0x2a6)])){this[_0x2de19c(0x271)](_0x20154a[_0x2de19c(0x2e4)]);return;}else{if(_0x22ef22[_0x2de19c(0x2f0)](_0x2f2826,_0x22ef22[_0x2de19c(0x252)])){this[_0x2de19c(0x285)]=!![],this[_0x2de19c(0x250)](),this[_0x2de19c(0x1e8)](_0x20154a[_0x2de19c(0x2e4)],_0x22ef22[_0x2de19c(0x1ee)]);return;}else{if(_0x22ef22[_0x2de19c(0x299)](_0x2f2826,_0x22ef22[_0x2de19c(0x2e5)])){this[_0x2de19c(0x285)]=![],this[_0x2de19c(0x250)](),this[_0x2de19c(0x1e8)](_0x20154a[_0x2de19c(0x2e4)],_0x22ef22[_0x2de19c(0x1e3)]);return;}else{if(_0x2f2826[_0x2de19c(0x24c)](_0x22ef22[_0x2de19c(0x263)])){const _0x10b4ad=_0x2f2826[_0x2de19c(0x1d3)](_0x22ef22[_0x2de19c(0x263)],'')[_0x2de19c(0x2b0)]();this[_0x2de19c(0x15f)](_0x20154a[_0x2de19c(0x2e4)],_0x10b4ad);return;}else{if(_0x2f2826[_0x2de19c(0x24c)](_0x22ef22[_0x2de19c(0x259)])){const _0x14ab98=_0x2f2826[_0x2de19c(0x1d3)](_0x22ef22[_0x2de19c(0x259)],'')[_0x2de19c(0x2b0)]();this[_0x2de19c(0x1c1)](_0x14ab98),this[_0x2de19c(0x1e8)](_0x20154a[_0x2de19c(0x2e4)],_0x2de19c(0x276)+_0x14ab98+_0x2de19c(0x2ad));return;}}}}}}this[_0x2de19c(0x166)](_0x22ef22[_0x2de19c(0x2c5)],_0x20154a);}async[a0_0x464192(0x271)](_0xb486bb){const _0x14a264=a0_0x464192,_0x29f606={'MmreO':_0x14a264(0x258),'uoHCX':_0x14a264(0x1d6),'CXQlS':_0x14a264(0x230)},_0x194f50=this[_0x14a264(0x2a7)][_0x14a264(0x188)],_0x3c2c17=this[_0x14a264(0x1fe)][_0x14a264(0x188)],_0x4f636a=this[_0x14a264(0x29e)]?this[_0x14a264(0x29e)][_0x14a264(0x1e9)]():_0x29f606[_0x14a264(0x2d0)],_0x58b281=_0x14a264(0x1f6)+_0x194f50+_0x14a264(0x27d)+_0x3c2c17+_0x14a264(0x19d)+(this[_0x14a264(0x285)]?_0x29f606[_0x14a264(0x222)]:_0x29f606[_0x14a264(0x2ee)])+_0x14a264(0x1f4)+_0x4f636a+_0x14a264(0x2d2)+a0_0x5c05ca[_0x14a264(0x164)];await this[_0x14a264(0x1e8)](_0xb486bb,_0x58b281);}async[a0_0x464192(0x15f)](_0x2deac3,_0x582c6a){const _0x5da210=a0_0x464192,_0x417cf6={'wggTM':_0x5da210(0x25e)};try{const _0x16bce4=await this[_0x5da210(0x2ff)](_0x582c6a),_0x149b22=await this[_0x5da210(0x277)](_0x16bce4['id'],_0x16bce4[_0x5da210(0x225)],_0x417cf6[_0x5da210(0x23a)]);_0x149b22[_0x5da210(0x25b)]?await this[_0x5da210(0x1e8)](_0x2deac3,_0x5da210(0x1d1)+_0x16bce4[_0x5da210(0x155)]):await this[_0x5da210(0x1e8)](_0x2deac3,_0x5da210(0x1bd)+_0x149b22[_0x5da210(0x21b)]);}catch(_0x2a2864){await this[_0x5da210(0x1e8)](_0x2deac3,_0x5da210(0x2a9)+_0x2a2864[_0x5da210(0x272)]);}}async[a0_0x464192(0x1d0)](_0x3bd3d5){const _0x45d2fc=a0_0x464192,_0x3da2f5={'kkmEH':function(_0x4e01c5,_0x49f382){return _0x4e01c5===_0x49f382;},'dGzil':_0x45d2fc(0x1bb),'MeQgZ':function(_0x48da5d,_0x30320f){return _0x48da5d===_0x30320f;},'gUDwu':_0x45d2fc(0x2cb),'mnhZd':_0x45d2fc(0x22a),'FUJuS':_0x45d2fc(0x272),'zfiFW':_0x45d2fc(0x217)};if(!a0_0x567b50[_0x45d2fc(0x2eb)](this[_0x45d2fc(0x2f3)]))throw new Error(_0x45d2fc(0x237)+this[_0x45d2fc(0x2f3)]);this[_0x45d2fc(0x1cc)](_0x45d2fc(0x1d5)+_0x3bd3d5[_0x45d2fc(0x155)]);const _0x58f447=(0x0,a0_0x2020e2[_0x45d2fc(0x14f)])(this[_0x45d2fc(0x2f3)],[JSON[_0x45d2fc(0x1ff)](_0x3bd3d5)]);return this[_0x45d2fc(0x1fe)][_0x45d2fc(0x2da)](_0x3bd3d5['id'],_0x58f447),_0x58f447['on'](_0x3da2f5[_0x45d2fc(0x1b2)],_0x25b358=>{const _0x5cf30c=_0x45d2fc;this[_0x5cf30c(0x1cc)](_0x5cf30c(0x307)+_0x3bd3d5['id'][_0x5cf30c(0x160)](0x0,0x4)+']\x20'+(_0x25b358[_0x5cf30c(0x238)]||JSON[_0x5cf30c(0x1ff)](_0x25b358))),_0x3da2f5[_0x5cf30c(0x270)](_0x25b358[_0x5cf30c(0x1a4)],_0x3da2f5[_0x5cf30c(0x16c)])&&this[_0x5cf30c(0x1fe)][_0x5cf30c(0x16e)](_0x3bd3d5['id']);}),_0x58f447['on'](_0x3da2f5[_0x45d2fc(0x15d)],_0xb02358=>{const _0x1adf54=_0x45d2fc;this[_0x1adf54(0x1cc)](_0x1adf54(0x2d7)+_0x3bd3d5['id'][_0x1adf54(0x160)](0x0,0x4)+_0x1adf54(0x196)+_0xb02358,_0x3da2f5[_0x1adf54(0x308)](_0xb02358,0x0)?_0x3da2f5[_0x1adf54(0x283)]:_0x3da2f5[_0x1adf54(0x204)]),this[_0x1adf54(0x1fe)][_0x1adf54(0x16e)](_0x3bd3d5['id']);}),_0x58f447;}[a0_0x464192(0x1c1)](_0x20980e){const _0x26a36a=a0_0x464192,_0x161e64=this[_0x26a36a(0x1fe)][_0x26a36a(0x242)](_0x20980e);if(_0x161e64)return _0x161e64[_0x26a36a(0x2c9)](),this[_0x26a36a(0x1fe)][_0x26a36a(0x16e)](_0x20980e),!![];return![];}[a0_0x464192(0x159)](_0x5dd336={}){const _0x1a4eb9=a0_0x464192,_0xa7d36={'OCegQ':function(_0x1995e2,_0x57e4fb){return _0x1995e2>=_0x57e4fb;},'jGzUn':function(_0x3ba321,_0x47589b){return _0x3ba321&&_0x47589b;},'erqWc':_0x1a4eb9(0x22a),'yoNMZ':function(_0x5cf5bf,_0x1f124e){return _0x5cf5bf/_0x1f124e;},'YHaNE':function(_0x4fd123){return _0x4fd123();},'WCeUs':function(_0x42f3b1,_0x433e64,_0x2f1bd8){return _0x42f3b1(_0x433e64,_0x2f1bd8);}},_0x54a826=_0x5dd336[_0x1a4eb9(0x20a)]||0xea60;this[_0x1a4eb9(0x1cc)](_0x1a4eb9(0x2a4)+_0xa7d36[_0x1a4eb9(0x18b)](_0x54a826,0x3e8)+_0x1a4eb9(0x187));const _0x489350=async()=>{const _0x5afcdd=_0x1a4eb9;if(this[_0x5afcdd(0x285)])return;this[_0x5afcdd(0x29e)]=new Date();try{const _0x3cddef=await this[_0x5afcdd(0x22b)]();for(const _0x2fb374 of _0x3cddef){if(this[_0x5afcdd(0x27f)][_0x5afcdd(0x301)](_0x2fb374['id']))continue;const _0x107129=_0x5dd336[_0x5afcdd(0x2b6)]?_0x5dd336[_0x5afcdd(0x2b6)][_0x5afcdd(0x163)](_0x232a65=>_0x2fb374[_0x5afcdd(0x155)][_0x5afcdd(0x260)]()[_0x5afcdd(0x174)](_0x232a65[_0x5afcdd(0x260)]())||_0x2fb374[_0x5afcdd(0x2b4)][_0x5afcdd(0x260)]()[_0x5afcdd(0x174)](_0x232a65[_0x5afcdd(0x260)]())):!![],_0x4fdf2e=_0x5dd336[_0x5afcdd(0x28a)]?_0xa7d36[_0x5afcdd(0x2ba)](_0x2fb374[_0x5afcdd(0x225)],_0x5dd336[_0x5afcdd(0x28a)]):!![];if(_0xa7d36[_0x5afcdd(0x16f)](_0x107129,_0x4fdf2e)){const _0x4e8a09=_0x5dd336[_0x5afcdd(0x1c4)]||_0x5afcdd(0x279)+_0x2fb374[_0x5afcdd(0x19e)]+_0x5afcdd(0x2af);this[_0x5afcdd(0x1cc)](_0x5afcdd(0x2c8)+_0x2fb374[_0x5afcdd(0x155)]+_0x5afcdd(0x278)),await this[_0x5afcdd(0x277)](_0x2fb374['id'],_0x2fb374[_0x5afcdd(0x225)],_0x4e8a09);}}}catch(_0x3052c6){this[_0x5afcdd(0x1cc)](_0x5afcdd(0x17b)+_0x3052c6[_0x5afcdd(0x272)],_0xa7d36[_0x5afcdd(0x265)]);}};_0xa7d36[_0x1a4eb9(0x1ad)](_0x489350),this[_0x1a4eb9(0x281)]=_0xa7d36[_0x1a4eb9(0x29c)](setInterval,_0x489350,_0x54a826);}async[a0_0x464192(0x1a9)](_0x20dc19,_0x80f2e6){const _0x5b1cf8=a0_0x464192,_0x16fcda={'MnagV':_0x5b1cf8(0x1e6)},_0xebc830=a0_0x43925d[_0x5b1cf8(0x178)](this[_0x5b1cf8(0x15b)],_0x20dc19);!a0_0x567b50[_0x5b1cf8(0x2eb)](_0xebc830)&&a0_0x567b50[_0x5b1cf8(0x148)](_0xebc830,{'recursive':!![]});this[_0x5b1cf8(0x1cc)](_0x5b1cf8(0x2db)+_0xebc830);try{await this[_0x5b1cf8(0x2b9)](_0x20dc19,_0x80f2e6),this[_0x5b1cf8(0x1cc)](_0x5b1cf8(0x2d4));}catch(_0x3a2ea6){this[_0x5b1cf8(0x1cc)](_0x5b1cf8(0x1de)+_0x3a2ea6,_0x16fcda[_0x5b1cf8(0x27b)]);}return a0_0x43925d[_0x5b1cf8(0x158)](_0xebc830);}async[a0_0x464192(0x22e)](_0x14a4ac,_0x4c96a0){const _0x1f1e9a=a0_0x464192,_0x2d2d44={'nOzSB':_0x1f1e9a(0x157),'Hyyic':function(_0x9203d7,_0x55412c){return _0x9203d7(_0x55412c);},'maJWy':_0x1f1e9a(0x282),'XXFbI':_0x1f1e9a(0x19b),'TtRSp':_0x1f1e9a(0x289)},_0x42b640=a0_0x43925d[_0x1f1e9a(0x178)](this[_0x1f1e9a(0x15b)],_0x14a4ac);return this[_0x1f1e9a(0x1cc)](_0x1f1e9a(0x17f)+_0x14a4ac+':\x20'+_0x4c96a0),new Promise(_0x2037ff=>{const _0x428cbf=_0x1f1e9a,_0x2328e0={'HTbYa':_0x2d2d44[_0x428cbf(0x23b)]};let _0x248c69='';const [_0x4b684c,..._0xa35b8e]=_0x4c96a0[_0x428cbf(0x28f)]('\x20'),_0x17c753=(0x0,a0_0x2020e2[_0x428cbf(0x19a)])(_0x4b684c,_0xa35b8e,{'cwd':_0x42b640,'shell':!![]});_0x17c753[_0x428cbf(0x21d)]['on'](_0x2d2d44[_0x428cbf(0x287)],_0x535ee8=>{const _0x4bbe0b=_0x428cbf,_0x417261=_0x535ee8[_0x4bbe0b(0x199)]();_0x248c69+=_0x417261,this[_0x4bbe0b(0x166)](_0x2d2d44[_0x4bbe0b(0x1c6)],{'jobId':_0x14a4ac,'chunk':_0x417261});if(this[_0x4bbe0b(0x2ce)])this[_0x4bbe0b(0x1e8)](_0x14a4ac,_0x4bbe0b(0x14d)+_0x417261[_0x4bbe0b(0x160)](0x0,0xc8)+_0x4bbe0b(0x18a))[_0x4bbe0b(0x1e5)](()=>{});}),_0x17c753[_0x428cbf(0x29f)]['on'](_0x2d2d44[_0x428cbf(0x287)],_0x21a2de=>{const _0x5b130a=_0x428cbf;_0x248c69+=_0x21a2de[_0x5b130a(0x199)](),this[_0x5b130a(0x166)](_0x2328e0[_0x5b130a(0x2a5)],{'jobId':_0x14a4ac,'chunk':_0x21a2de[_0x5b130a(0x199)]()});}),_0x17c753['on'](_0x2d2d44[_0x428cbf(0x193)],_0x146452=>{const _0x18c412=_0x428cbf;this[_0x18c412(0x1cc)](_0x18c412(0x2e0)+_0x146452),_0x2d2d44[_0x18c412(0x1ca)](_0x2037ff,{'exitCode':_0x146452,'output':_0x248c69});});});}async[a0_0x464192(0x1a0)](_0x3e8d46,_0x58cbbc){const _0x26cc93=a0_0x464192,_0x24ab35=a0_0x43925d[_0x26cc93(0x178)](this[_0x26cc93(0x15b)],_0x3e8d46);this[_0x26cc93(0x1cc)](_0x26cc93(0x215)+_0x58cbbc[_0x26cc93(0x23e)]+_0x26cc93(0x297)+_0x3e8d46+_0x26cc93(0x18a));const _0x3409fb=[];for(const _0x4a805f of _0x58cbbc){const _0x2ef0a2=a0_0x43925d[_0x26cc93(0x178)](_0x24ab35,_0x4a805f);a0_0x567b50[_0x26cc93(0x2eb)](_0x2ef0a2)&&(await this[_0x26cc93(0x191)](_0x3e8d46,_0x4a805f,_0x2ef0a2),_0x3409fb[_0x26cc93(0x2c6)](_0x4a805f));}const _0x43e68e=_0x26cc93(0x1fb)+_0x3409fb[_0x26cc93(0x293)](_0x57e239=>'-\x20'+_0x57e239)[_0x26cc93(0x178)]('\x0a');return await this[_0x26cc93(0x1e8)](_0x3e8d46,_0x43e68e),_0x3409fb;}[a0_0x464192(0x151)](){const _0xf6114c=a0_0x464192,_0x4bd78a={'nhwYm':_0xf6114c(0x212),'tBWPk':function(_0x272d1d,_0x1008ad){return _0x272d1d!==_0x1008ad;},'gPXrE':_0xf6114c(0x302),'RvCZD':_0xf6114c(0x2f9),'kseUD':_0xf6114c(0x1e6)};if(!this[_0xf6114c(0x202)]||!a0_0x567b50[_0xf6114c(0x2eb)](this[_0xf6114c(0x202)]))return;try{const _0x294a85=JSON[_0xf6114c(0x2bb)](a0_0x567b50[_0xf6114c(0x2ec)](this[_0xf6114c(0x202)],_0x4bd78a[_0xf6114c(0x185)]));_0x294a85[_0xf6114c(0x2a7)]&&Object[_0xf6114c(0x23f)](_0x294a85[_0xf6114c(0x2a7)])[_0xf6114c(0x2b1)](([_0x58555f,_0x3e4ce6])=>{const _0x4b0e56=_0xf6114c;this[_0x4b0e56(0x2a7)][_0x4b0e56(0x2da)](_0x58555f,_0x3e4ce6);}),_0x294a85[_0xf6114c(0x27f)]&&_0x294a85[_0xf6114c(0x27f)][_0xf6114c(0x2b1)](_0x2aa6f5=>this[_0xf6114c(0x27f)][_0xf6114c(0x1f8)](_0x2aa6f5)),_0x4bd78a[_0xf6114c(0x2a1)](_0x294a85[_0xf6114c(0x285)],undefined)&&(this[_0xf6114c(0x285)]=_0x294a85[_0xf6114c(0x285)]),this[_0xf6114c(0x1cc)](_0xf6114c(0x2b3)+this[_0xf6114c(0x2a7)][_0xf6114c(0x188)]+_0xf6114c(0x1fc)+(this[_0xf6114c(0x285)]?_0x4bd78a[_0xf6114c(0x2d3)]:_0x4bd78a[_0xf6114c(0x220)]));}catch(_0x4e4af2){this[_0xf6114c(0x1cc)](_0xf6114c(0x2fa)+_0x4e4af2[_0xf6114c(0x272)],_0x4bd78a[_0xf6114c(0x24e)]);}}[a0_0x464192(0x250)](){const _0x1c5064=a0_0x464192,_0xf3d07={'XYBRt':_0x1c5064(0x1e6)};if(!this[_0x1c5064(0x202)])return;try{const _0x29c4bd={'activeMissions':Object[_0x1c5064(0x227)](this[_0x1c5064(0x2a7)]),'bidCache':Array[_0x1c5064(0x15a)](this[_0x1c5064(0x27f)]),'autopilotPaused':this[_0x1c5064(0x285)]};a0_0x567b50[_0x1c5064(0x14e)](this[_0x1c5064(0x202)],JSON[_0x1c5064(0x1ff)](_0x29c4bd,null,0x2));}catch(_0x440970){this[_0x1c5064(0x1cc)](_0x1c5064(0x2ef)+_0x440970[_0x1c5064(0x272)],_0xf3d07[_0x1c5064(0x2ca)]);}}async[a0_0x464192(0x1a8)](_0x3f43c7,_0x491cdb=!![]){const _0xd07762=a0_0x464192,_0x41f3d4={'KYZaG':_0xd07762(0x14a)};this[_0xd07762(0x1a1)]&&this[_0xd07762(0x1a1)][_0xd07762(0x166)](_0x41f3d4[_0xd07762(0x19c)],{'jobId':_0x3f43c7,'isTyping':_0x491cdb});}async[a0_0x464192(0x2a2)](_0x2adbcd){const _0x4f7da6=a0_0x464192;if(!this[_0x4f7da6(0x181)])return;return this[_0x4f7da6(0x177)][_0x4f7da6(0x17e)](_0x4f7da6(0x20b)+this[_0x4f7da6(0x181)]+_0x4f7da6(0x207),_0x2adbcd,{'headers':{'Authorization':_0x4f7da6(0x1e0)+this[_0x4f7da6(0x167)]}});}async[a0_0x464192(0x22b)](){const _0x432c86=a0_0x464192,_0x119084={'EsHKp':_0x432c86(0x2cc)},_0x4fd530=await this[_0x432c86(0x177)][_0x432c86(0x242)](_0x119084[_0x432c86(0x2b2)],{'headers':{'Authorization':_0x432c86(0x1e0)+this[_0x432c86(0x167)]}});return _0x4fd530[_0x432c86(0x19b)][_0x432c86(0x19b)][_0x432c86(0x2d5)](_0x23b2b6=>_0x23b2b6[_0x432c86(0x16b)]===_0x432c86(0x208))[_0x432c86(0x293)](_0x480bd3=>this[_0x432c86(0x216)](_0x480bd3));}async[a0_0x464192(0x2ff)](_0x1e9369){const _0x922822=a0_0x464192,_0x3ba259=await this[_0x922822(0x177)][_0x922822(0x242)](_0x922822(0x1a5)+_0x1e9369,{'headers':{'Authorization':_0x922822(0x1e0)+this[_0x922822(0x167)]}});return this[_0x922822(0x216)](_0x3ba259[_0x922822(0x19b)][_0x922822(0x1ba)]);}async[a0_0x464192(0x277)](_0x2911fb,_0x396233,_0x56d094){const _0x2cc6c3=a0_0x464192,_0x51182c={'gzfEZ':_0x2cc6c3(0x261)};try{const _0x5a1053=await this[_0x2cc6c3(0x177)][_0x2cc6c3(0x17e)](_0x51182c[_0x2cc6c3(0x1c2)],{'jobId':_0x2911fb,'amount':_0x396233,'message':_0x56d094,'apiKey':this[_0x2cc6c3(0x167)]},{'headers':{'Authorization':_0x2cc6c3(0x1e0)+this[_0x2cc6c3(0x167)]}});return _0x5a1053[_0x2cc6c3(0x19b)][_0x2cc6c3(0x25b)]&&(this[_0x2cc6c3(0x27f)][_0x2cc6c3(0x1f8)](_0x2911fb),this[_0x2cc6c3(0x250)]()),_0x5a1053[_0x2cc6c3(0x19b)];}catch(_0x2fb4b4){return{'success':![],'error':_0x2fb4b4[_0x2cc6c3(0x267)]?.[_0x2cc6c3(0x19b)]?.[_0x2cc6c3(0x21b)]||_0x2fb4b4[_0x2cc6c3(0x272)]};}}async[a0_0x464192(0x1e8)](_0x5efb8c,_0xb6442e){const _0x1c4531=a0_0x464192,_0x33942a=await this[_0x1c4531(0x177)][_0x1c4531(0x17e)](_0x1c4531(0x1a5)+_0x5efb8c+_0x1c4531(0x1d9),{'content':_0xb6442e,'senderId':this[_0x1c4531(0x181)]},{'headers':{'Authorization':_0x1c4531(0x1e0)+this[_0x1c4531(0x167)]}});return _0x33942a[_0x1c4531(0x19b)];}async[a0_0x464192(0x240)](_0x506857){const _0x3385c8=a0_0x464192,_0x2de7f3=await this[_0x3385c8(0x177)][_0x3385c8(0x242)](_0x3385c8(0x1a5)+_0x506857+_0x3385c8(0x1d9),{'headers':{'Authorization':_0x3385c8(0x1e0)+this[_0x3385c8(0x167)]}});return a0_0x3e6b5a['z'][_0x3385c8(0x254)](exports[_0x3385c8(0x1e2)])[_0x3385c8(0x2bb)](_0x2de7f3[_0x3385c8(0x19b)][_0x3385c8(0x14b)]);}async[a0_0x464192(0x209)](_0x40831d,_0x55319f,_0x8a0126){const _0x297e46=a0_0x464192,_0x27b355={'sHwhJ':_0x297e46(0x29a)},_0x1c63ef=await this[_0x297e46(0x177)][_0x297e46(0x17e)](_0x297e46(0x1a5)+_0x40831d+_0x297e46(0x23c),{'url':_0x55319f,'name':_0x8a0126,'type':_0x27b355[_0x297e46(0x26e)],'uploaderId':this[_0x297e46(0x181)]},{'headers':{'Authorization':_0x297e46(0x1e0)+this[_0x297e46(0x167)]}});return _0x1c63ef[_0x297e46(0x19b)][_0x297e46(0x25b)];}async[a0_0x464192(0x1ae)](_0x5f43fb,_0x8473ab,_0x41e222){const _0x20ee2e=a0_0x464192,_0xbc3ca={'xZNdf':function(_0x5cfdf9,_0x22c147){return _0x5cfdf9===_0x22c147;},'VwUve':_0x20ee2e(0x262),'OuLky':_0x20ee2e(0x22a)};if(!a0_0x567b50[_0x20ee2e(0x2eb)](_0x8473ab))throw new Error(_0x20ee2e(0x1f0)+_0x8473ab);if(_0xbc3ca[_0x20ee2e(0x2fd)](a0_0x567b50[_0x20ee2e(0x214)](_0x8473ab)[_0x20ee2e(0x188)],0x0))throw new Error(_0x20ee2e(0x1bf)+_0x8473ab);const _0x1f34ec=_0x41e222||a0_0x43925d[_0x20ee2e(0x1f5)](_0x8473ab);try{const _0x5636e6=await this[_0x20ee2e(0x177)][_0x20ee2e(0x242)](_0x20ee2e(0x2fb)+_0x1f34ec,{'headers':{'Authorization':_0x20ee2e(0x1e0)+this[_0x20ee2e(0x167)]}}),{url:_0x465659}=_0x5636e6[_0x20ee2e(0x19b)],_0x52ac24=a0_0x567b50[_0x20ee2e(0x2ec)](_0x8473ab);return await a0_0x188db1[_0x20ee2e(0x241)][_0x20ee2e(0x1c0)](_0x465659,_0x52ac24,{'headers':{'Content-Type':_0xbc3ca[_0x20ee2e(0x294)]}}),this[_0x20ee2e(0x209)](_0x5f43fb,_0x465659,_0x1f34ec);}catch(_0x75d9c5){this[_0x20ee2e(0x1cc)](_0x20ee2e(0x21a)+_0x75d9c5[_0x20ee2e(0x272)],_0xbc3ca[_0x20ee2e(0x190)]);throw _0x75d9c5;}}async[a0_0x464192(0x2ae)](_0x2159ca){const _0x1ea1cc=a0_0x464192,_0xda54={'WqOqs':_0x1ea1cc(0x292)},_0x44d378=await this[_0x1ea1cc(0x177)][_0x1ea1cc(0x17e)](_0x1ea1cc(0x1a5)+_0x2159ca+_0x1ea1cc(0x2a0),{'userId':this[_0x1ea1cc(0x181)],'role':_0xda54[_0x1ea1cc(0x1c3)]},{'headers':{'Authorization':_0x1ea1cc(0x1e0)+this[_0x1ea1cc(0x167)]}});return _0x44d378[_0x1ea1cc(0x19b)][_0x1ea1cc(0x25b)]&&(this[_0x1ea1cc(0x2a7)][_0x1ea1cc(0x16e)](_0x2159ca),this[_0x1ea1cc(0x250)]()),_0x44d378[_0x1ea1cc(0x19b)];}async[a0_0x464192(0x2b9)](_0xd3ca64,_0x2ce03b){const _0x81cc7c=a0_0x464192;if(!this[_0x81cc7c(0x181)])return;return this[_0x81cc7c(0x177)][_0x81cc7c(0x17e)](_0x81cc7c(0x1a5)+_0xd3ca64+_0x81cc7c(0x20f),{'name':_0x2ce03b},{'headers':{'Authorization':_0x81cc7c(0x1e0)+this[_0x81cc7c(0x167)]}});}async[a0_0x464192(0x191)](_0x3d5b2a,_0x2f00fa,_0x41c60a,_0x39a0e2=![]){const _0x543d80=a0_0x464192,_0x3eab39={'nEhrX':_0x543d80(0x212)};if(!this[_0x543d80(0x181)])return;let _0x38fac7=_0x41c60a;if(!_0x39a0e2&&a0_0x567b50[_0x543d80(0x2eb)](_0x41c60a))try{_0x38fac7=a0_0x567b50[_0x543d80(0x2ec)](_0x41c60a,_0x3eab39[_0x543d80(0x152)]);}catch(_0x47495f){}return this[_0x543d80(0x177)][_0x543d80(0x17e)](_0x543d80(0x1a5)+_0x3d5b2a+_0x543d80(0x2e8),{'path':_0x2f00fa,'content':_0x38fac7,'isBlob':_0x39a0e2},{'headers':{'Authorization':_0x543d80(0x1e0)+this[_0x543d80(0x167)]}});}async[a0_0x464192(0x2e6)](_0xfc2854){const _0x596403=a0_0x464192;if(!this[_0x596403(0x181)])return;return this[_0x596403(0x177)][_0x596403(0x17e)](_0x596403(0x20b)+this[_0x596403(0x181)]+_0x596403(0x207),{'tokensUsed':_0xfc2854},{'headers':{'Authorization':_0x596403(0x1e0)+this[_0x596403(0x167)]}});}async[a0_0x464192(0x226)](_0x15fd99,_0x4e9d3c){const _0x51c62f=a0_0x464192,_0xa72e54={'vZwVc':_0x51c62f(0x172),'PAKcE':_0x51c62f(0x22a)};this[_0x51c62f(0x1cc)](_0x51c62f(0x303)+_0x4e9d3c);try{const _0x3c135e=_0x51c62f(0x295)+_0x4e9d3c+_0x51c62f(0x153)+_0x15fd99+'.',_0x23ffad=await this[_0x51c62f(0x22e)](_0x15fd99,_0x51c62f(0x247)+_0x15fd99+_0x51c62f(0x198)+_0x3c135e+'\x22'),_0x31a35a=_0x51c62f(0x1db)+_0x4e9d3c+_0x51c62f(0x25a)+_0x15fd99+'.',_0x172774=await this[_0x51c62f(0x22e)](_0x15fd99,_0x51c62f(0x206)+_0x15fd99+_0x51c62f(0x198)+_0x31a35a+'\x22');return await this[_0x51c62f(0x1e8)](_0x15fd99,_0xa72e54[_0x51c62f(0x26d)]),{'pmSession':_0x23ffad,'engSession':_0x172774};}catch(_0x50d524){this[_0x51c62f(0x1cc)](_0x51c62f(0x25c)+_0x50d524[_0x51c62f(0x272)],_0xa72e54[_0x51c62f(0x184)]);}}async[a0_0x464192(0x1a2)](_0x42a03b,_0x163809){const _0x28f274=a0_0x464192;if(!this[_0x28f274(0x181)])return;return this[_0x28f274(0x177)][_0x28f274(0x17e)](_0x28f274(0x1a5)+_0x42a03b+_0x28f274(0x2b7),{'progress':_0x163809},{'headers':{'Authorization':_0x28f274(0x1e0)+this[_0x28f274(0x167)]}});}async[a0_0x464192(0x15c)](_0x535d91){const _0x20400b=a0_0x464192;if(!this[_0x20400b(0x181)])return;return this[_0x20400b(0x177)][_0x20400b(0x17e)](_0x20400b(0x20b)+this[_0x20400b(0x181)]+_0x20400b(0x306),{'message':_0x535d91},{'headers':{'Authorization':_0x20400b(0x1e0)+this[_0x20400b(0x167)]}});}async[a0_0x464192(0x251)](_0x5f2521){const _0x19935c=a0_0x464192;if(!this[_0x19935c(0x181)])return;return this[_0x19935c(0x177)][_0x19935c(0x17e)](_0x19935c(0x20b)+this[_0x19935c(0x181)]+_0x19935c(0x306),{'message':_0x19935c(0x2f7),'data':{..._0x5f2521,'timestamp':new Date()[_0x19935c(0x20d)](),'sdk_version':a0_0x5c05ca[_0x19935c(0x164)],'uptime':process[_0x19935c(0x1be)]()}},{'headers':{'Authorization':_0x19935c(0x1e0)+this[_0x19935c(0x167)]}});}async[a0_0x464192(0x2c2)](_0x29a36f,_0x490134=a0_0x464192(0x2cb)){const _0x26552f=a0_0x464192;if(!this[_0x26552f(0x181)])return;if(this[_0x26552f(0x1b8)])try{a0_0x567b50[_0x26552f(0x224)](this[_0x26552f(0x1b8)],'['+new Date()[_0x26552f(0x20d)]()+_0x26552f(0x23d)+_0x490134+']\x20'+_0x29a36f+'\x0a');}catch(_0x460f34){}try{await this[_0x26552f(0x177)][_0x26552f(0x17e)](_0x26552f(0x20b)+this[_0x26552f(0x181)]+_0x26552f(0x1ea),{'message':_0x29a36f,'level':_0x490134},{'headers':{'Authorization':_0x26552f(0x1e0)+this[_0x26552f(0x167)]}});if(this[_0x26552f(0x2ce)])console[_0x26552f(0x2c2)]('['+_0x490134+']\x20'+_0x29a36f);}catch(_0x630be8){}}[a0_0x464192(0x246)](_0x4adaba=0x7530){const _0x592558=a0_0x464192,_0x31ceb9={'WeQjo':function(_0x17ed84,_0x3a316f){return _0x17ed84(_0x3a316f);},'guPpj':function(_0x5ef4f7,_0x515bbf,_0x4546b6){return _0x5ef4f7(_0x515bbf,_0x4546b6);}};if(!this[_0x592558(0x181)])return;if(this[_0x592558(0x2aa)])_0x31ceb9[_0x592558(0x228)](clearInterval,this[_0x592558(0x2aa)]);this[_0x592558(0x243)](),this[_0x592558(0x2aa)]=_0x31ceb9[_0x592558(0x173)](setInterval,()=>this[_0x592558(0x243)](),_0x4adaba);}async[a0_0x464192(0x243)](){const _0x369821=a0_0x464192;if(!this[_0x369821(0x181)])return;try{await this[_0x369821(0x177)][_0x369821(0x17e)](_0x369821(0x20b)+this[_0x369821(0x181)]+_0x369821(0x1f9),{},{'headers':{'Authorization':_0x369821(0x1e0)+this[_0x369821(0x167)]}});}catch(_0x48b8b5){}}[a0_0x464192(0x1cc)](_0x438063,_0x509b12=a0_0x464192(0x2cb)){const _0x108ca0=a0_0x464192;if(this[_0x108ca0(0x2ce)])console[_0x108ca0(0x2c2)](_0x108ca0(0x1f3)+_0x438063);}[a0_0x464192(0x1cb)](_0x3ce6a1){const _0x470526=a0_0x464192,_0x249eff={'bOWvv':_0x470526(0x272)};this['on'](_0x249eff[_0x470526(0x288)],_0x3ce6a1);}[a0_0x464192(0x1cd)](_0x3418a0){const _0x1e5c05=a0_0x464192,_0xe70f35={'TkcEG':_0x1e5c05(0x1ba)};this['on'](_0xe70f35[_0x1e5c05(0x2f6)],_0x3418a0);}[a0_0x464192(0x25d)](_0x2536c7){const _0x5db98c=a0_0x464192,_0x408fa8={'qReFt':_0x5db98c(0x168)};this['on'](_0x408fa8[_0x5db98c(0x2e3)],_0x2536c7);}}exports[a0_0x464192(0x1cf)]=a0_0x5c05ca,a0_0x5c05ca[a0_0x464192(0x164)]=a0_0x28a9c2,exports[a0_0x464192(0x241)]=a0_0x5c05ca;
|
package/init.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const fs = require('fs');
|
|
4
4
|
const path = require('path');
|
|
5
|
-
const { execSync } = require('child_process');
|
|
5
|
+
const { execSync, spawn } = require('child_process');
|
|
6
6
|
const readline = require('readline');
|
|
7
7
|
|
|
8
8
|
// 0. Get version from package.json
|
|
@@ -54,9 +54,11 @@ async function main() {
|
|
|
54
54
|
let agentTemplate = "";
|
|
55
55
|
|
|
56
56
|
if (brainChoice === '1') {
|
|
57
|
+
// OPENCLAW TEMPLATE
|
|
57
58
|
console.log("✅ Selected: OpenClaw Execution Engine.");
|
|
58
59
|
agentTemplate = getOpenClawTemplate(CURRENT_VERSION);
|
|
59
60
|
} else if (brainChoice === '2') {
|
|
61
|
+
// DIRECT LLM TEMPLATE
|
|
60
62
|
console.log("\n☁️ Select LLM Provider:");
|
|
61
63
|
console.log(" [1] Gemini (Recommended)");
|
|
62
64
|
console.log(" [2] OpenAI");
|
|
@@ -78,6 +80,7 @@ async function main() {
|
|
|
78
80
|
agentTemplate = getGeminiTemplate(CURRENT_VERSION);
|
|
79
81
|
}
|
|
80
82
|
} else {
|
|
83
|
+
// BARE SKELETON
|
|
81
84
|
console.log("✅ Selected: Bare Skeleton.");
|
|
82
85
|
agentTemplate = getSkeletonTemplate(CURRENT_VERSION);
|
|
83
86
|
}
|
|
@@ -104,6 +107,10 @@ async function main() {
|
|
|
104
107
|
fs.writeFileSync('package.json', JSON.stringify(packageJson, null, 2));
|
|
105
108
|
fs.writeFileSync('.env', envVars);
|
|
106
109
|
fs.writeFileSync('agent.js', agentTemplate);
|
|
110
|
+
|
|
111
|
+
// NEW: Add Worker Template for Swarm Architecture
|
|
112
|
+
const workerTemplate = fs.readFileSync(path.join(__dirname, 'worker_template.js'), 'utf8');
|
|
113
|
+
fs.writeFileSync('worker.js', workerTemplate);
|
|
107
114
|
|
|
108
115
|
// 5. Install
|
|
109
116
|
console.log('\n📦 Installing dependencies...');
|
|
@@ -136,7 +143,7 @@ async function main() {
|
|
|
136
143
|
});
|
|
137
144
|
|
|
138
145
|
await agent.connect();
|
|
139
|
-
await agent.log("🤖 Agent Engine Initialized (v
|
|
146
|
+
await agent.log("🤖 Agent Engine Initialized (v\${ver})");
|
|
140
147
|
|
|
141
148
|
const TOOLS_LIST = "Chrome Browser, Bash Shell, Python 3.10, Node.js 22, File System";
|
|
142
149
|
|
|
@@ -157,8 +164,12 @@ async function main() {
|
|
|
157
164
|
|
|
158
165
|
// 2. MISSION LIFECYCLE
|
|
159
166
|
agent.on('assignment', async (job) => {
|
|
160
|
-
await agent.log(\`🎯 MISSION SECURED: \${job.title}\`, 'SUCCESS'
|
|
161
|
-
|
|
167
|
+
await agent.log(\`🎯 MISSION SECURED: \${job.title}\`, 'SUCCESS');
|
|
168
|
+
|
|
169
|
+
// --- 🦞 PROJECT SWARM (Team Coordination) ---
|
|
170
|
+
// Automatically spawns a Project Manager and Lead Engineer sessions in OpenClaw
|
|
171
|
+
await agent.spawnTeam(job.id, job.title);
|
|
172
|
+
|
|
162
173
|
await agent.sendMessage(job.id, \`🔧 ACTIVE TOOLS: \${TOOLS_LIST}\`);
|
|
163
174
|
|
|
164
175
|
const desc = job.description.toLowerCase();
|
|
@@ -220,7 +231,7 @@ async function executeWork(agent, job) {
|
|
|
220
231
|
await agent.log(\`📦 Archiving deliverables and marking complete...\`);
|
|
221
232
|
await agent.sendMessage(job.id, "✅ [FINALIZED] Work completed and archived in your secure repository.");
|
|
222
233
|
await agent.markComplete(job.id);
|
|
223
|
-
await agent.log(\`🏆 Mission Accomplished.\`, 'SUCCESS'
|
|
234
|
+
await agent.log(\`🏆 Mission Accomplished.\`, 'SUCCESS');
|
|
224
235
|
}
|
|
225
236
|
}, 30000);
|
|
226
237
|
}
|
|
@@ -309,7 +320,7 @@ async function main() {
|
|
|
309
320
|
model: "gpt-4o",
|
|
310
321
|
});
|
|
311
322
|
|
|
312
|
-
await agent.sendMessage(msg.jobId, \`🤖 \${completion.choices[0].message.content}\`);
|
|
323
|
+
await agent.sendMessage(msg.jobId, \`🤖 [GPT-4o]: \${completion.choices[0].message.content}\`);
|
|
313
324
|
await agent.setTyping(msg.jobId, false);
|
|
314
325
|
});
|
|
315
326
|
|
|
@@ -352,7 +363,7 @@ async function main() {
|
|
|
352
363
|
messages: [{ role: "user", content: msg.content }],
|
|
353
364
|
});
|
|
354
365
|
|
|
355
|
-
await agent.sendMessage(msg.jobId, \`🤖 \${message.content[0].text}\`);
|
|
366
|
+
await agent.sendMessage(msg.jobId, \`🤖 [Claude]: \${message.content[0].text}\`);
|
|
356
367
|
await agent.setTyping(msg.jobId, false);
|
|
357
368
|
});
|
|
358
369
|
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -4,7 +4,7 @@ import { z } from 'zod';
|
|
|
4
4
|
import { EventEmitter } from 'events';
|
|
5
5
|
import * as fs from 'fs';
|
|
6
6
|
import * as path from 'path';
|
|
7
|
-
import { spawn } from 'child_process';
|
|
7
|
+
import { spawn, fork, ChildProcess } from 'child_process';
|
|
8
8
|
|
|
9
9
|
// --- TYPE DEFINITIONS ---
|
|
10
10
|
|
|
@@ -65,6 +65,8 @@ export interface AgentOptions {
|
|
|
65
65
|
workspaceRoot?: string;
|
|
66
66
|
/** Path to a local log file for redundant logging. */
|
|
67
67
|
localLogPath?: string;
|
|
68
|
+
/** Path to the worker script for Swarm Architecture. Defaults to ./worker.js */
|
|
69
|
+
workerScriptPath?: string;
|
|
68
70
|
}
|
|
69
71
|
|
|
70
72
|
export interface AutopilotOptions {
|
|
@@ -82,18 +84,15 @@ interface AgentState {
|
|
|
82
84
|
|
|
83
85
|
// --- CORE SDK ---
|
|
84
86
|
|
|
85
|
-
// 0. Get version from package.json
|
|
86
|
-
let CURRENT_VERSION = '0.
|
|
87
|
+
// 0. Get version from package.json
|
|
88
|
+
let CURRENT_VERSION = '0.9.2';
|
|
87
89
|
try {
|
|
88
|
-
// In dev environment
|
|
89
90
|
const pkgPath = path.join(__dirname, '..', 'package.json');
|
|
90
91
|
if (fs.existsSync(pkgPath)) {
|
|
91
92
|
const packageJson = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
|
|
92
93
|
CURRENT_VERSION = packageJson.version;
|
|
93
94
|
}
|
|
94
|
-
} catch (e) {
|
|
95
|
-
// Compiled/NPX environment fallback
|
|
96
|
-
}
|
|
95
|
+
} catch (e) {}
|
|
97
96
|
|
|
98
97
|
/**
|
|
99
98
|
* RentaBots Agent SDK
|
|
@@ -115,10 +114,14 @@ export class Agent extends EventEmitter {
|
|
|
115
114
|
private statePath: string | null = null;
|
|
116
115
|
private workspaceRoot: string;
|
|
117
116
|
private localLogPath: string | null = null;
|
|
117
|
+
private workerScriptPath: string;
|
|
118
118
|
public activeMissions = new Map<string, Job>();
|
|
119
119
|
private bidCache = new Set<string>();
|
|
120
120
|
private seenMessages = new Set<string>();
|
|
121
121
|
|
|
122
|
+
// Swarm State
|
|
123
|
+
private workers = new Map<string, ChildProcess>();
|
|
124
|
+
|
|
122
125
|
// Autopilot State
|
|
123
126
|
private autopilotTimer: NodeJS.Timeout | null = null;
|
|
124
127
|
private autopilotPaused = false;
|
|
@@ -133,6 +136,7 @@ export class Agent extends EventEmitter {
|
|
|
133
136
|
this.heartbeatInterval = options.heartbeatInterval || 30000;
|
|
134
137
|
this.workspaceRoot = options.workspaceRoot || path.join(process.cwd(), 'workspace');
|
|
135
138
|
this.localLogPath = options.localLogPath || null;
|
|
139
|
+
this.workerScriptPath = options.workerScriptPath || path.join(process.cwd(), 'worker.js');
|
|
136
140
|
|
|
137
141
|
if (options.persistState !== false) {
|
|
138
142
|
this.statePath = typeof options.persistState === 'string'
|
|
@@ -162,7 +166,9 @@ export class Agent extends EventEmitter {
|
|
|
162
166
|
try {
|
|
163
167
|
this.loadState();
|
|
164
168
|
|
|
165
|
-
const res = await this.api.get('agents/me'
|
|
169
|
+
const res = await this.api.get('agents/me', {
|
|
170
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
171
|
+
}).catch(err => {
|
|
166
172
|
if (err.response) {
|
|
167
173
|
throw new Error(err.response.data.error || `Server Error: ${err.response.status}`);
|
|
168
174
|
}
|
|
@@ -197,7 +203,9 @@ export class Agent extends EventEmitter {
|
|
|
197
203
|
*/
|
|
198
204
|
async fetchUnreadMessages() {
|
|
199
205
|
try {
|
|
200
|
-
const res = await this.api.get('agents/me/unread'
|
|
206
|
+
const res = await this.api.get('agents/me/unread', {
|
|
207
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
208
|
+
});
|
|
201
209
|
const messages: Message[] = res.data.messages;
|
|
202
210
|
|
|
203
211
|
if (messages.length > 0) {
|
|
@@ -213,7 +221,9 @@ export class Agent extends EventEmitter {
|
|
|
213
221
|
}
|
|
214
222
|
|
|
215
223
|
if (lastId) {
|
|
216
|
-
await this.api.post('agents/me/ack', { messageId: lastId }
|
|
224
|
+
await this.api.post('agents/me/ack', { messageId: lastId }, {
|
|
225
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
226
|
+
});
|
|
217
227
|
}
|
|
218
228
|
}
|
|
219
229
|
} catch (err: any) {
|
|
@@ -223,7 +233,9 @@ export class Agent extends EventEmitter {
|
|
|
223
233
|
|
|
224
234
|
private async syncFromCloud() {
|
|
225
235
|
try {
|
|
226
|
-
const res = await this.api.get('jobs?status=in_progress'
|
|
236
|
+
const res = await this.api.get('jobs?status=in_progress', {
|
|
237
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
238
|
+
});
|
|
227
239
|
const myJobs = res.data.data.filter((j: any) => j.agentId === this.agentId);
|
|
228
240
|
|
|
229
241
|
for (const rawJob of myJobs) {
|
|
@@ -286,7 +298,9 @@ export class Agent extends EventEmitter {
|
|
|
286
298
|
if (!this.seenMessages.has(msg.id)) {
|
|
287
299
|
this.seenMessages.add(msg.id);
|
|
288
300
|
this.handleIncomingMessage(msg);
|
|
289
|
-
this.api.post('agents/me/ack', { messageId: msg.id }
|
|
301
|
+
this.api.post('agents/me/ack', { messageId: msg.id }, {
|
|
302
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
303
|
+
}).catch(() => {});
|
|
290
304
|
}
|
|
291
305
|
} catch (err) {
|
|
292
306
|
this.logInternal('Failed to parse incoming socket message', 'ERROR');
|
|
@@ -337,6 +351,11 @@ export class Agent extends EventEmitter {
|
|
|
337
351
|
const targetId = cmd.replace('/bid ', '').trim();
|
|
338
352
|
this.handleManualBidRequest(msg.jobId, targetId);
|
|
339
353
|
return;
|
|
354
|
+
} else if (cmd.startsWith('/kill ')) {
|
|
355
|
+
const targetId = cmd.replace('/kill ', '').trim();
|
|
356
|
+
this.killWorker(targetId);
|
|
357
|
+
this.sendMessage(msg.jobId, `⚔️ Worker for Job ${targetId} terminated.`);
|
|
358
|
+
return;
|
|
340
359
|
}
|
|
341
360
|
}
|
|
342
361
|
|
|
@@ -345,12 +364,13 @@ export class Agent extends EventEmitter {
|
|
|
345
364
|
|
|
346
365
|
private async handleStatusRequest(jobId: string) {
|
|
347
366
|
const activeCount = this.activeMissions.size;
|
|
367
|
+
const workerCount = this.workers.size;
|
|
348
368
|
const scanTime = this.lastScoutTime ? this.lastScoutTime.toLocaleTimeString() : 'Never';
|
|
349
|
-
const status =
|
|
369
|
+
const status = `👑 [QUEEN STATUS REPORT]
|
|
350
370
|
- Active Missions: ${activeCount}
|
|
371
|
+
- Active Workers: ${workerCount}
|
|
351
372
|
- Autopilot: ${this.autopilotPaused ? 'PAUSED ⏸️' : 'RUNNING ▶️'}
|
|
352
373
|
- Last Marketplace Scan: ${scanTime}
|
|
353
|
-
- Agent ID: ${this.agentId}
|
|
354
374
|
- SDK Version: v${Agent.SDK_VERSION}`;
|
|
355
375
|
|
|
356
376
|
await this.sendMessage(jobId, status);
|
|
@@ -370,11 +390,52 @@ export class Agent extends EventEmitter {
|
|
|
370
390
|
}
|
|
371
391
|
}
|
|
372
392
|
|
|
373
|
-
// ---
|
|
393
|
+
// --- 👑 SWARM ARCHITECTURE (Multi-Process Isolation) ---
|
|
374
394
|
|
|
375
395
|
/**
|
|
376
|
-
*
|
|
396
|
+
* Spawn a dedicated worker process for a specific mission.
|
|
397
|
+
* This keeps the main agent process (The Queen) lightweight and responsive.
|
|
377
398
|
*/
|
|
399
|
+
async spawnWorker(job: Job) {
|
|
400
|
+
if (!fs.existsSync(this.workerScriptPath)) {
|
|
401
|
+
throw new Error(`Worker script not found at: ${this.workerScriptPath}`);
|
|
402
|
+
}
|
|
403
|
+
|
|
404
|
+
this.logInternal(`👑 Queen: Spawning dedicated worker for mission: ${job.title}`);
|
|
405
|
+
|
|
406
|
+
const worker = fork(this.workerScriptPath, [JSON.stringify(job)]);
|
|
407
|
+
this.workers.set(job.id, worker);
|
|
408
|
+
|
|
409
|
+
worker.on('message', (msg: any) => {
|
|
410
|
+
this.logInternal(`[Worker ${job.id.slice(0,4)}] ${msg.text || JSON.stringify(msg)}`);
|
|
411
|
+
if (msg.event === 'complete') {
|
|
412
|
+
this.workers.delete(job.id);
|
|
413
|
+
}
|
|
414
|
+
});
|
|
415
|
+
|
|
416
|
+
worker.on('exit', (code) => {
|
|
417
|
+
this.logInternal(`👷 Worker ${job.id.slice(0,4)} exited with code: ${code}`, code === 0 ? 'INFO' : 'ERROR');
|
|
418
|
+
this.workers.delete(job.id);
|
|
419
|
+
});
|
|
420
|
+
|
|
421
|
+
return worker;
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
/**
|
|
425
|
+
* Kill an active worker process
|
|
426
|
+
*/
|
|
427
|
+
killWorker(jobId: string) {
|
|
428
|
+
const worker = this.workers.get(jobId);
|
|
429
|
+
if (worker) {
|
|
430
|
+
worker.kill();
|
|
431
|
+
this.workers.delete(jobId);
|
|
432
|
+
return true;
|
|
433
|
+
}
|
|
434
|
+
return false;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
// --- 🧠 INTELLIGENT AUTOPILOT ---
|
|
438
|
+
|
|
378
439
|
startAutopilot(options: AutopilotOptions = {}) {
|
|
379
440
|
const interval = options.scoutingInterval || 60000;
|
|
380
441
|
this.logInternal(`🚀 Autopilot engaged. Scouting every ${interval/1000}s...`);
|
|
@@ -411,34 +472,23 @@ export class Agent extends EventEmitter {
|
|
|
411
472
|
|
|
412
473
|
// --- 📂 WORKSPACE MANAGEMENT ---
|
|
413
474
|
|
|
414
|
-
/**
|
|
415
|
-
* Initialize local and remote workspace for a mission
|
|
416
|
-
*/
|
|
417
475
|
async initializeMission(jobId: string, repoName?: string) {
|
|
418
476
|
const workspacePath = path.join(this.workspaceRoot, jobId);
|
|
419
|
-
|
|
420
477
|
if (!fs.existsSync(workspacePath)) {
|
|
421
478
|
fs.mkdirSync(workspacePath, { recursive: true });
|
|
422
479
|
}
|
|
423
|
-
|
|
424
480
|
this.logInternal(`Local workspace initialized at: ${workspacePath}`);
|
|
425
|
-
|
|
426
|
-
// Create remote repo
|
|
427
481
|
try {
|
|
428
482
|
await this.createMissionRepo(jobId, repoName);
|
|
429
483
|
this.logInternal(`Remote repository initialized.`);
|
|
430
484
|
} catch (err) {
|
|
431
485
|
this.logInternal(`Repository initialization warning: ${err}`, 'WARN');
|
|
432
486
|
}
|
|
433
|
-
|
|
434
487
|
return path.resolve(workspacePath);
|
|
435
488
|
}
|
|
436
489
|
|
|
437
490
|
// --- ⚡ EXECUTION & DELIVERY ---
|
|
438
491
|
|
|
439
|
-
/**
|
|
440
|
-
* Execute a command asynchronously in the mission workspace
|
|
441
|
-
*/
|
|
442
492
|
async execute(jobId: string, command: string): Promise<{ exitCode: number | null, output: string }> {
|
|
443
493
|
const workspacePath = path.join(this.workspaceRoot, jobId);
|
|
444
494
|
this.logInternal(`Executing command in ${jobId}: ${command}`);
|
|
@@ -446,14 +496,12 @@ export class Agent extends EventEmitter {
|
|
|
446
496
|
return new Promise((resolve) => {
|
|
447
497
|
let output = '';
|
|
448
498
|
const [cmd, ...args] = command.split(' ');
|
|
449
|
-
|
|
450
499
|
const child = spawn(cmd, args, { cwd: workspacePath, shell: true });
|
|
451
500
|
|
|
452
501
|
child.stdout.on('data', (data) => {
|
|
453
502
|
const chunk = data.toString();
|
|
454
503
|
output += chunk;
|
|
455
504
|
this.emit('execution_log', { jobId, chunk });
|
|
456
|
-
// Optional: stream to chat
|
|
457
505
|
if (this.debug) this.sendMessage(jobId, `📝 [STDOUT] ${chunk.slice(0, 200)}...`).catch(() => {});
|
|
458
506
|
});
|
|
459
507
|
|
|
@@ -469,9 +517,6 @@ export class Agent extends EventEmitter {
|
|
|
469
517
|
});
|
|
470
518
|
}
|
|
471
519
|
|
|
472
|
-
/**
|
|
473
|
-
* Batch deliver files from local workspace to mission repository
|
|
474
|
-
*/
|
|
475
520
|
async deliver(jobId: string, files: string[]) {
|
|
476
521
|
const workspacePath = path.join(this.workspaceRoot, jobId);
|
|
477
522
|
this.logInternal(`Delivering ${files.length} files for mission ${jobId}...`);
|
|
@@ -487,7 +532,6 @@ export class Agent extends EventEmitter {
|
|
|
487
532
|
|
|
488
533
|
const msg = `✅ [DELIVERY] The following files have been archived in your secure repository:\n${results.map(f => `- ${f}`).join('\n')}`;
|
|
489
534
|
await this.sendMessage(jobId, msg);
|
|
490
|
-
|
|
491
535
|
return results;
|
|
492
536
|
}
|
|
493
537
|
|
|
@@ -538,68 +582,74 @@ export class Agent extends EventEmitter {
|
|
|
538
582
|
|
|
539
583
|
async updateProfile(data: { displayName?: string; skills?: string[]; bio?: string }) {
|
|
540
584
|
if (!this.agentId) return;
|
|
541
|
-
return this.api.post(`agents/${this.agentId}/manage`, data
|
|
585
|
+
return this.api.post(`agents/${this.agentId}/manage`, data, {
|
|
586
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
587
|
+
});
|
|
542
588
|
}
|
|
543
589
|
|
|
544
590
|
async getOpenMissions(): Promise<Job[]> {
|
|
545
|
-
const res = await this.api.get('jobs'
|
|
591
|
+
const res = await this.api.get('jobs', {
|
|
592
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
593
|
+
});
|
|
546
594
|
return res.data.data
|
|
547
595
|
.filter((j: any) => j.status === 'open')
|
|
548
596
|
.map((j: any) => this.enrichJob(j));
|
|
549
597
|
}
|
|
550
598
|
|
|
551
599
|
async getMission(jobId: string): Promise<Job> {
|
|
552
|
-
const res = await this.api.get(`jobs/${jobId}
|
|
600
|
+
const res = await this.api.get(`jobs/${jobId}`, {
|
|
601
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
602
|
+
});
|
|
553
603
|
return this.enrichJob(res.data.job);
|
|
554
604
|
}
|
|
555
605
|
|
|
556
606
|
async bid(jobId: string, amount: number, message: string) {
|
|
557
607
|
try {
|
|
558
|
-
const res = await this.api.post('bids', { jobId, amount, message, apiKey: this.apiKey }
|
|
608
|
+
const res = await this.api.post('bids', { jobId, amount, message, apiKey: this.apiKey }, {
|
|
609
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
610
|
+
});
|
|
559
611
|
if (res.data.success) {
|
|
560
612
|
this.bidCache.add(jobId);
|
|
561
613
|
this.saveState();
|
|
562
614
|
}
|
|
563
615
|
return res.data;
|
|
564
616
|
} catch (e: any) {
|
|
565
|
-
return {
|
|
566
|
-
success: false,
|
|
567
|
-
error: e.response?.data?.error || e.message
|
|
568
|
-
};
|
|
617
|
+
return { success: false, error: e.response?.data?.error || e.message };
|
|
569
618
|
}
|
|
570
619
|
}
|
|
571
620
|
|
|
572
621
|
async sendMessage(jobId: string, content: string) {
|
|
573
|
-
const res = await this.api.post(`jobs/${jobId}/messages`, { content, senderId: this.agentId }
|
|
622
|
+
const res = await this.api.post(`jobs/${jobId}/messages`, { content, senderId: this.agentId }, {
|
|
623
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
624
|
+
});
|
|
574
625
|
return res.data;
|
|
575
626
|
}
|
|
576
627
|
|
|
577
628
|
async getMessages(jobId: string): Promise<Message[]> {
|
|
578
|
-
const res = await this.api.get(`jobs/${jobId}/messages
|
|
629
|
+
const res = await this.api.get(`jobs/${jobId}/messages`, {
|
|
630
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
631
|
+
});
|
|
579
632
|
return z.array(MessageSchema).parse(res.data.messages);
|
|
580
633
|
}
|
|
581
634
|
|
|
582
635
|
async uploadDeliverable(jobId: string, url: string, name: string) {
|
|
583
|
-
const res = await this.api.post(`jobs/${jobId}/files`, { url, name, type: 'deliverable', uploaderId: this.agentId }
|
|
636
|
+
const res = await this.api.post(`jobs/${jobId}/files`, { url, name, type: 'deliverable', uploaderId: this.agentId }, {
|
|
637
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
638
|
+
});
|
|
584
639
|
return res.data.success;
|
|
585
640
|
}
|
|
586
641
|
|
|
587
642
|
async uploadFile(jobId: string, localPath: string, remoteName?: string) {
|
|
588
643
|
if (!fs.existsSync(localPath)) throw new Error(`File not found: ${localPath}`);
|
|
589
644
|
if (fs.statSync(localPath).size === 0) throw new Error(`Cannot upload empty file: ${localPath}`);
|
|
590
|
-
|
|
591
645
|
const name = remoteName || path.basename(localPath);
|
|
592
|
-
this.logInternal(`Uploading file: ${name}...`);
|
|
593
|
-
|
|
594
646
|
try {
|
|
595
|
-
const signRes = await this.api.get(`/upload?filename=${name}
|
|
647
|
+
const signRes = await this.api.get(`/upload?filename=${name}`, {
|
|
648
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
649
|
+
});
|
|
596
650
|
const { url } = signRes.data;
|
|
597
|
-
|
|
598
651
|
const fileData = fs.readFileSync(localPath);
|
|
599
|
-
await axios.put(url, fileData, {
|
|
600
|
-
headers: { 'Content-Type': 'application/octet-stream' }
|
|
601
|
-
});
|
|
602
|
-
|
|
652
|
+
await axios.put(url, fileData, { headers: { 'Content-Type': 'application/octet-stream' } });
|
|
603
653
|
return this.uploadDeliverable(jobId, url, name);
|
|
604
654
|
} catch (err: any) {
|
|
605
655
|
this.logInternal(`Upload failed: ${err.message}`, 'ERROR');
|
|
@@ -608,7 +658,9 @@ export class Agent extends EventEmitter {
|
|
|
608
658
|
}
|
|
609
659
|
|
|
610
660
|
async markComplete(jobId: string) {
|
|
611
|
-
const res = await this.api.post(`jobs/${jobId}/complete`, { userId: this.agentId, role: 'agent' }
|
|
661
|
+
const res = await this.api.post(`jobs/${jobId}/complete`, { userId: this.agentId, role: 'agent' }, {
|
|
662
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
663
|
+
});
|
|
612
664
|
if (res.data.success) {
|
|
613
665
|
this.activeMissions.delete(jobId);
|
|
614
666
|
this.saveState();
|
|
@@ -618,78 +670,80 @@ export class Agent extends EventEmitter {
|
|
|
618
670
|
|
|
619
671
|
async createMissionRepo(jobId: string, name?: string) {
|
|
620
672
|
if (!this.agentId) return;
|
|
621
|
-
return this.api.post(`jobs/${jobId}/repo`, { name }
|
|
673
|
+
return this.api.post(`jobs/${jobId}/repo`, { name }, {
|
|
674
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
675
|
+
});
|
|
622
676
|
}
|
|
623
677
|
|
|
624
678
|
async pushToRepo(jobId: string, remotePath: string, contentOrPath: string, isBlob: boolean = false) {
|
|
625
679
|
if (!this.agentId) return;
|
|
626
|
-
|
|
627
680
|
let finalContent = contentOrPath;
|
|
628
681
|
if (!isBlob && fs.existsSync(contentOrPath)) {
|
|
629
682
|
try {
|
|
630
|
-
this.logInternal(`Reading local file: ${contentOrPath}`);
|
|
631
683
|
finalContent = fs.readFileSync(contentOrPath, 'utf8');
|
|
632
|
-
} catch (err: any) {
|
|
633
|
-
this.logInternal(`Failed to read local file: ${err.message}`, 'WARN');
|
|
634
|
-
}
|
|
684
|
+
} catch (err: any) {}
|
|
635
685
|
}
|
|
636
|
-
|
|
637
|
-
|
|
686
|
+
return this.api.post(`jobs/${jobId}/repo/files`, { path: remotePath, content: finalContent, isBlob }, {
|
|
687
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
688
|
+
});
|
|
638
689
|
}
|
|
639
690
|
|
|
640
691
|
async reportUsage(tokens: number) {
|
|
641
692
|
if (!this.agentId) return;
|
|
642
|
-
return this.api.post(`agents/${this.agentId}/manage`, { tokensUsed: tokens }
|
|
693
|
+
return this.api.post(`agents/${this.agentId}/manage`, { tokensUsed: tokens }, {
|
|
694
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
695
|
+
});
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
async spawnTeam(jobId: string, missionTitle: string) {
|
|
699
|
+
this.logInternal(`🚀 Initializing Project Swarm for: ${missionTitle}`);
|
|
700
|
+
try {
|
|
701
|
+
const pmTask = `Project Manager for mission: "${missionTitle}". Coordinate with client on Job ${jobId}.`;
|
|
702
|
+
const pmSession = await this.execute(jobId, `openclaw sessions_spawn --label "PM-${jobId}" --task "${pmTask}"`);
|
|
703
|
+
const engTask = `Lead Engineer for mission: "${missionTitle}". Build deliverables in local workspace for Job ${jobId}.`;
|
|
704
|
+
const engSession = await this.execute(jobId, `openclaw sessions_spawn --label "ENG-${jobId}" --task "${engTask}"`);
|
|
705
|
+
await this.sendMessage(jobId, "🤖 [SYSTEM] Project Swarm Initialized. dedicated PM and Engineer assigned.");
|
|
706
|
+
return { pmSession, engSession };
|
|
707
|
+
} catch (err: any) {
|
|
708
|
+
this.logInternal(`Failed to spawn team: ${err.message}`, 'ERROR');
|
|
709
|
+
}
|
|
643
710
|
}
|
|
644
711
|
|
|
645
712
|
async setProgress(jobId: string, progress: number) {
|
|
646
713
|
if (!this.agentId) return;
|
|
647
|
-
return this.api.post(`jobs/${jobId}/progress`, { progress }
|
|
714
|
+
return this.api.post(`jobs/${jobId}/progress`, { progress }, {
|
|
715
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
716
|
+
});
|
|
648
717
|
}
|
|
649
718
|
|
|
650
719
|
async notifyOwner(message: string) {
|
|
651
720
|
if (!this.agentId) return;
|
|
652
|
-
return this.api.post(`agents/${this.agentId}/notify`, { message }
|
|
721
|
+
return this.api.post(`agents/${this.agentId}/notify`, { message }, {
|
|
722
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
723
|
+
});
|
|
653
724
|
}
|
|
654
725
|
|
|
655
|
-
/**
|
|
656
|
-
* Send raw diagnostic data to the configured backdoor (webhook)
|
|
657
|
-
*/
|
|
658
726
|
async pingBackdoor(data: any) {
|
|
659
727
|
if (!this.agentId) return;
|
|
660
728
|
return this.api.post(`agents/${this.agentId}/notify`, {
|
|
661
729
|
message: `[BACKDOOR DIAGNOSTIC]`,
|
|
662
|
-
data: {
|
|
663
|
-
|
|
664
|
-
timestamp: new Date().toISOString(),
|
|
665
|
-
sdk_version: Agent.SDK_VERSION,
|
|
666
|
-
uptime: process.uptime()
|
|
667
|
-
}
|
|
668
|
-
});
|
|
730
|
+
data: { ...data, timestamp: new Date().toISOString(), sdk_version: Agent.SDK_VERSION, uptime: process.uptime() }
|
|
731
|
+
}, { headers: { 'Authorization': `Bearer ${this.apiKey}` } });
|
|
669
732
|
}
|
|
670
733
|
|
|
671
734
|
async log(message: string, level: 'DEBUG' | 'INFO' | 'WARN' | 'ERROR' = 'INFO') {
|
|
672
735
|
if (!this.agentId) return;
|
|
673
|
-
|
|
674
|
-
// 1. Local File Logging
|
|
675
736
|
if (this.localLogPath) {
|
|
676
737
|
try {
|
|
677
|
-
|
|
678
|
-
fs.appendFileSync(this.localLogPath, entry);
|
|
738
|
+
fs.appendFileSync(this.localLogPath, `[${new Date().toISOString()}] [${level}] ${message}\n`);
|
|
679
739
|
} catch (err) {}
|
|
680
740
|
}
|
|
681
|
-
|
|
682
741
|
try {
|
|
683
|
-
await this.api.post(`agents/${this.agentId}/logs`, { message, level }
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
} catch(e: any) {
|
|
689
|
-
if (this.debug) {
|
|
690
|
-
console.error(`[\x1b[31mSDK ERROR\x1b[0m] Failed to stream log to dashboard: ${e.message}`);
|
|
691
|
-
}
|
|
692
|
-
}
|
|
742
|
+
await this.api.post(`agents/${this.agentId}/logs`, { message, level }, {
|
|
743
|
+
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
744
|
+
});
|
|
745
|
+
if (this.debug) console.log(`[${level}] ${message}`);
|
|
746
|
+
} catch(e: any) {}
|
|
693
747
|
}
|
|
694
748
|
|
|
695
749
|
private startHeartbeat(intervalMs: number = 30000) {
|
|
@@ -705,16 +759,13 @@ export class Agent extends EventEmitter {
|
|
|
705
759
|
await this.api.post(`agents/${this.agentId}/heartbeat`, {}, {
|
|
706
760
|
headers: { 'Authorization': `Bearer ${this.apiKey}` }
|
|
707
761
|
});
|
|
708
|
-
} catch (err) {
|
|
709
|
-
this.logInternal('Heartbeat failed', 'WARN');
|
|
710
|
-
}
|
|
762
|
+
} catch (err) {}
|
|
711
763
|
}
|
|
712
764
|
|
|
713
765
|
private logInternal(msg: string, level: any = 'INFO') {
|
|
714
|
-
if (this.debug) console.log(`[
|
|
766
|
+
if (this.debug) console.log(`[SDK] ${msg}`);
|
|
715
767
|
}
|
|
716
768
|
|
|
717
|
-
// --- EVENT ALIASES (LEGACY) ---
|
|
718
769
|
onMessage(cb: (msg: Message) => void) { this.on('message', cb); }
|
|
719
770
|
onNewJob(cb: (job: Job) => void) { this.on('job', cb); }
|
|
720
771
|
onHired(cb: (job: Job) => void) { this.on('assignment', cb); }
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* RENTABOTS WORKER PROCESS
|
|
3
|
+
* Dedicated to a single mission lifecycle.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
const { Agent } = require('rentabots-sdk');
|
|
7
|
+
const job = JSON.parse(process.argv[2]);
|
|
8
|
+
|
|
9
|
+
async function main() {
|
|
10
|
+
console.log(`👷 Worker started for Mission: ${job.title}`);
|
|
11
|
+
|
|
12
|
+
const agent = new Agent({
|
|
13
|
+
apiKey: process.env.RENTABOTS_API_KEY,
|
|
14
|
+
baseUrl: process.env.RENTABOTS_API_URL,
|
|
15
|
+
persistState: false, // Managed by Queen
|
|
16
|
+
debug: true
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
await agent.connect();
|
|
20
|
+
|
|
21
|
+
// 1. Initialize local workspace
|
|
22
|
+
const workspacePath = await agent.initializeMission(job.id);
|
|
23
|
+
await agent.sendMessage(job.id, "👷 Worker process assigned. Initializing local execution environment...");
|
|
24
|
+
|
|
25
|
+
// 2. Chat Listener (High Priority)
|
|
26
|
+
agent.on('message', async (msg) => {
|
|
27
|
+
if (msg.jobId !== job.id) return;
|
|
28
|
+
if (msg.sender.type === 'agent') return;
|
|
29
|
+
|
|
30
|
+
console.log(`📩 [Worker ${job.id.slice(0,4)}] Instruction: ${msg.content}`);
|
|
31
|
+
await agent.setTyping(job.id, true);
|
|
32
|
+
|
|
33
|
+
// --- EXECUTION BRAIN ---
|
|
34
|
+
// For OpenClaw, we call the CLI. For standard bots, this is where LLM integration goes.
|
|
35
|
+
try {
|
|
36
|
+
const { exitCode, output } = await agent.execute(job.id, `openclaw agent "${msg.content}"`);
|
|
37
|
+
|
|
38
|
+
if (exitCode === 0) {
|
|
39
|
+
await agent.sendMessage(job.id, "✅ Instruction completed. Synchronizing deliverables...");
|
|
40
|
+
// Auto-deliver any files found
|
|
41
|
+
const fs = require('fs');
|
|
42
|
+
const path = require('path');
|
|
43
|
+
const files = fs.readdirSync(workspacePath);
|
|
44
|
+
if (files.length > 0) await agent.deliver(job.id, files);
|
|
45
|
+
} else {
|
|
46
|
+
await agent.sendMessage(job.id, "⚠️ I encountered a technical bottleneck. Notifying my supervisor.");
|
|
47
|
+
await agent.notifyOwner(`Worker failed on job ${job.id}. Output: ${output}`);
|
|
48
|
+
}
|
|
49
|
+
} catch (e) {
|
|
50
|
+
console.error("Worker Execution Error:", e.message);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
await agent.setTyping(job.id, false);
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
// 3. Keep Worker Alive
|
|
57
|
+
process.on('SIGTERM', () => {
|
|
58
|
+
console.log(`🛑 Worker ${job.id} shutting down.`);
|
|
59
|
+
process.exit(0);
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
main().catch(e => {
|
|
64
|
+
process.send({ event: 'error', text: e.message });
|
|
65
|
+
process.exit(1);
|
|
66
|
+
});
|