@synthetic-ai/ae-mcp 2.10.0-dev.1 → 2.10.3

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/store.mjs CHANGED
@@ -1 +1 @@
1
- (function(_0x447170,_0x46e89f){const _0xe57399={_0x187b84:0x3be,_0x574504:0x6d,_0x5744c7:0x3bc,_0x7538a2:0x3ad,_0x435f60:0x3d9,_0x237cfa:0x3e9,_0x2c664c:0x3c3},_0x2abd5f={_0x5b972d:0x136};function _0x4b39aa(_0x37b79e,_0x271aed){return _0x3a41(_0x37b79e- -_0x2abd5f._0x5b972d,_0x271aed);}const _0x108b5b=_0x447170();function _0x236d5a(_0x41d902,_0x21e81f){return _0x3a41(_0x41d902-0x21c,_0x21e81f);}while(!![]){try{const _0x4631a2=parseInt(_0x236d5a(0x3c6,_0xe57399._0x187b84))/0x1+parseInt(_0x236d5a(0x3bb,0x3c0))/0x2*(-parseInt(_0x236d5a(0x3de,0x3e9))/0x3)+parseInt(_0x236d5a(0x3cc,0x3de))/0x4+-parseInt(_0x4b39aa(0x75,_0xe57399._0x574504))/0x5+parseInt(_0x236d5a(0x3cb,0x3c8))/0x6+parseInt(_0x236d5a(_0xe57399._0x5744c7,_0xe57399._0x7538a2))/0x7+-parseInt(_0x236d5a(_0xe57399._0x435f60,_0xe57399._0x237cfa))/0x8*(-parseInt(_0x236d5a(_0xe57399._0x2c664c,0x3d6))/0x9);if(_0x4631a2===_0x46e89f)break;else _0x108b5b['push'](_0x108b5b['shift']());}catch(_0x3fd7b7){_0x108b5b['push'](_0x108b5b['shift']());}}}(_0x1748,0x4d59d));import{homedir}from'node:os';import{join}from'node:path';import{existsSync,mkdirSync,appendFileSync,readFileSync,writeFileSync}from'node:fs';export const DATA_DIR=process.env.AE_MCP_DATA_DIR||join(homedir(),_0x1d8ba0(0x16c,0x162));function _0x3a41(_0x529a35,_0x20e64f){_0x529a35=_0x529a35-0x19f;const _0x174869=_0x1748();let _0x3a41dd=_0x174869[_0x529a35];if(_0x3a41['DeljZn']===undefined){var _0x476340=function(_0x16892a){const _0x214a0f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4cb7ec='',_0x1d527f='';for(let _0x16623b=0x0,_0x293142,_0x4191d9,_0x31e3f3=0x0;_0x4191d9=_0x16892a['charAt'](_0x31e3f3++);~_0x4191d9&&(_0x293142=_0x16623b%0x4?_0x293142*0x40+_0x4191d9:_0x4191d9,_0x16623b++%0x4)?_0x4cb7ec+=String['fromCharCode'](0xff&_0x293142>>(-0x2*_0x16623b&0x6)):0x0){_0x4191d9=_0x214a0f['indexOf'](_0x4191d9);}for(let _0x5972fc=0x0,_0x45f208=_0x4cb7ec['length'];_0x5972fc<_0x45f208;_0x5972fc++){_0x1d527f+='%'+('00'+_0x4cb7ec['charCodeAt'](_0x5972fc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d527f);};_0x3a41['yHMDtk']=_0x476340,_0x3a41['YusZOr']={},_0x3a41['DeljZn']=!![];}const _0x17c346=_0x174869[0x0],_0x99895c=_0x529a35+_0x17c346,_0x12bf0f=_0x3a41['YusZOr'][_0x99895c];return!_0x12bf0f?(_0x3a41dd=_0x3a41['yHMDtk'](_0x3a41dd),_0x3a41['YusZOr'][_0x99895c]=_0x3a41dd):_0x3a41dd=_0x12bf0f,_0x3a41dd;}export const JOURNAL_PATH=join(DATA_DIR,_0x8414f1(0x2fb,0x30e));function _0x1d8ba0(_0x1cf03f,_0xb7ca87){const _0x381e4c={_0x58aca8:0x35};return _0x3a41(_0x1cf03f- -_0x381e4c._0x58aca8,_0xb7ca87);}export const WRAPPERS_PATH=join(DATA_DIR,'wrappers.json');function ensureDir(){if(!existsSync(DATA_DIR))mkdirSync(DATA_DIR,{'recursive':!![]});}function _0x8414f1(_0x3d19b4,_0x283fbe){const _0x525931={_0x1ecf6e:0x14a};return _0x3a41(_0x3d19b4-_0x525931._0x1ecf6e,_0x283fbe);}export function appendJournal(_0x4cb7ec){try{ensureDir(),appendFileSync(JOURNAL_PATH,JSON['stringify'](_0x4cb7ec)+'\x0a','utf-8');}catch(_0x1d527f){}}export function readJournal(){const _0x21ca07={_0x2367fa:0x15e,_0x5a1519:0x16f,_0x38816f:0x14f};if(!existsSync(JOURNAL_PATH))return[];function _0x1d69c4(_0x2478c9,_0x1b9d83){return _0x1d8ba0(_0x2478c9-0x1a9,_0x1b9d83);}function _0x272e96(_0x1c2a65,_0x2cc1f9){return _0x1d8ba0(_0x2cc1f9- -0x2c,_0x1c2a65);}const _0x16623b=[];for(const _0x293142 of readFileSync(JOURNAL_PATH,_0x272e96(0x15f,_0x21ca07._0x2367fa))['split']('\x0a')){const _0x4191d9=_0x293142[_0x272e96(_0x21ca07._0x5a1519,0x15f)]();if(!_0x4191d9)continue;try{_0x16623b[_0x272e96(_0x21ca07._0x38816f,0x144)](JSON['parse'](_0x4191d9));}catch(_0x31e3f3){}}return _0x16623b;}export function readWrappers(){const _0x5864f4={_0x59c368:0x1dd,_0x3a1c19:0xe7,_0x3385e7:0xe0,_0x4f1f05:0xeb},_0x285ae3={_0x9f1522:0x353};function _0x52db59(_0x4af748,_0x1624ba){return _0x1d8ba0(_0x1624ba- -0xa3,_0x4af748);}function _0x41afe9(_0x21ad95,_0x57da8e){return _0x1d8ba0(_0x21ad95- -_0x285ae3._0x9f1522,_0x57da8e);}if(!existsSync(WRAPPERS_PATH))return[];try{const _0x5972fc=JSON[_0x41afe9(-0x1dc,-_0x5864f4._0x59c368)](readFileSync(WRAPPERS_PATH,_0x52db59(0xea,_0x5864f4._0x3a1c19)));return Array[_0x52db59(_0x5864f4._0x3385e7,_0x5864f4._0x4f1f05)](_0x5972fc)?_0x5972fc:[];}catch(_0x45f208){return[];}}export function writeWrappers(_0x4730f3){const _0x108f1e={_0x3b470c:0xb6},_0x14ab01={_0x431d78:0x250};ensureDir();function _0x3567c9(_0x126cff,_0x3105b4){return _0x8414f1(_0x3105b4- -_0x14ab01._0x431d78,_0x126cff);}writeFileSync(WRAPPERS_PATH,JSON[_0x3567c9(_0x108f1e._0x3b470c,0xb5)](_0x4730f3,null,0x2),'utf-8');}const TYPE_TO_SCHEMA={'string':()=>({'type':_0x8414f1(0x303,0x2f5)}),'number':()=>({'type':_0x1d8ba0(0x17f,0x16c)}),'boolean':()=>({'type':_0x8414f1(0x300,0x2fd)}),'array':()=>({'type':_0x1d8ba0(0x178,0x172)}),'object':()=>({'type':_0x8414f1(0x302,0x305)}),'raw':()=>({'type':_0x1d8ba0(0x184,0x189)})};function _0x1748(){const _0x54221a=['BMfTzq','mtq1mJCZB1D1vvzf','mJK0mJa3meDmz1LJza','CgfYC2u','yxjYyxK','twLZC2LUzYbYzxf1AxjLzcbWyxjHBwv0zxiGjW','ntu0odC0EwvgA0Hf','mtuXmJeXnLnsD2PQrq','AM91CM5HBc5QC29UBa','zMfSC2u','Dhj1zq','BNvTyMvY','CMf3','yM9VBgvHBG','C3bSAxq','B2jQzwn0','C3rYAw5N','y2fSBa','C3rYAw5NAwz5','CMvXDwLYzwq','nte3mtyWExrswuTe','zgvMyxvSDa','DxrMltG','DhjPBq','CgfYyw1Z','mJDUqKnyBMe','AxnbCNjHEq','ndi1mZrWA2DdDKy','mJKXmZu0mhLnz05UAa','lNn5BNrOzxrPyY1Hzs1Ty3a','icbBChjVBw90zwqGD3jHChbLCL0','zgvZy3jPChrPB24','AM9PBG','ChvZAa','ChjVDg90ExbL','oxHkz3fQtq','DhLWzq'];_0x1748=function(){return _0x54221a;};return _0x1748();}export function wrapperToToolDef(_0x3f7a06){const _0x5363c5={_0x45eab6:0x49a,_0x33293e:0x48a,_0x1eb229:0x483,_0x5a8305:0xe5,_0x342e8a:0xde,_0x2ee126:0x48a,_0x495c11:0x488,_0x46e618:0x109,_0x4f0a94:0xf8,_0x368d52:0x499},_0x52a70b={},_0x4e15d4=[];function _0x5cc898(_0x183f4a,_0xa0f8e7){return _0x1d8ba0(_0x183f4a-0x316,_0xa0f8e7);}for(const _0x30939b of _0x3f7a06[_0x459bbc(-0xe9,-0xd9)]||[]){const _0x1cf0c0=(TYPE_TO_SCHEMA[_0x30939b[_0x5cc898(0x489,0x486)]]||TYPE_TO_SCHEMA[_0x5cc898(_0x5363c5._0x45eab6,0x497)])();_0x52a70b[_0x30939b[_0x5cc898(_0x5363c5._0x33293e,_0x5363c5._0x1eb229)]]={..._0x1cf0c0,'description':_0x30939b[_0x5cc898(0x484,0x476)]||''};if(_0x30939b[_0x459bbc(-_0x5363c5._0x5a8305,-_0x5363c5._0x342e8a)])_0x4e15d4['push'](_0x30939b[_0x5cc898(0x48a,0x48d)]);}function _0x459bbc(_0x9d41f3,_0x1ad623){return _0x1d8ba0(_0x1ad623- -0x265,_0x9d41f3);}return{'name':_0x3f7a06[_0x5cc898(_0x5363c5._0x2ee126,_0x5363c5._0x495c11)],'description':(_0x3f7a06['description']||'')+_0x459bbc(-_0x5363c5._0x46e618,-_0x5363c5._0x4f0a94),'inputSchema':{'type':_0x5cc898(_0x5363c5._0x368d52,0x492),'properties':_0x52a70b,'required':_0x4e15d4,'additionalProperties':![]}};}function renderLiteral(_0x27e005,_0x3ecdbd){const _0x2ebd21={_0x266be7:0x4fd,_0x1a3036:0xe3,_0x286419:0xd3,_0x5031a8:0xe1,_0x34cad9:0xd7,_0x2ef2ed:0xde,_0x12576b:0xec,_0x2ef610:0xea,_0x2fb8c3:0x50f,_0x35b518:0x505},_0xa6863c={_0x2e68a0:0x3e1};function _0x384a88(_0xf6bc1d,_0x556c2b){return _0x8414f1(_0xf6bc1d-0x207,_0x556c2b);}function _0x4fc83c(_0x83b304,_0x3fce0f){return _0x8414f1(_0x3fce0f- -_0xa6863c._0x2e68a0,_0x83b304);}switch(_0x3ecdbd){case _0x384a88(0x50a,_0x2ebd21._0x266be7):return JSON[_0x4fc83c(-0xdb,-0xdc)](String(_0x27e005??''));case _0x4fc83c(-0xee,-_0x2ebd21._0x1a3036):return String(Number(_0x27e005));case _0x4fc83c(-_0x2ebd21._0x286419,-_0x2ebd21._0x5031a8):return _0x27e005?_0x4fc83c(-_0x2ebd21._0x34cad9,-0xe4):_0x4fc83c(-_0x2ebd21._0x2ef2ed,-0xe5);case _0x4fc83c(-_0x2ebd21._0x12576b,-_0x2ebd21._0x2ef610):case _0x4fc83c(-0xe8,-0xdf):return JSON[_0x384a88(0x50c,_0x2ebd21._0x2fb8c3)](_0x27e005??null);case _0x384a88(0x506,0x4f8):return String(_0x27e005??'');default:return JSON[_0x384a88(0x50c,_0x2ebd21._0x35b518)](String(_0x27e005??''));}}export function fillTemplate(_0x34bf90,_0x5f0133){const _0x16cb2b={_0x50226d:0x27d,_0x34ad18:0x1a0,_0x5c541e:0x181,_0xadd2d3:0x196,_0x4744b2:0x194,_0x2422a7:0x186,_0x1166ca:0x280,_0x46259b:0x180,_0xaa078d:0x186,_0x54f9b6:0x274,_0x2aa75f:0x27b,_0x3edecb:0x28a},_0x55a89={_0x4b94c6:0x172},_0x3b0762={_0x1f8ca1:0x73};function _0x23f837(_0xc6d499,_0x2ea2a3){return _0x8414f1(_0xc6d499- -_0x3b0762._0x1f8ca1,_0x2ea2a3);}let _0x4aaa45=_0x34bf90['code'];for(const _0x32322b of _0x34bf90[_0x23f837(0x298,0x29b)]||[]){const _0x3d47a4=_0x5f0133&&Object[_0x23f837(_0x16cb2b._0x50226d,0x276)]['hasOwnProperty'][_0x5a9b1d(0x192,_0x16cb2b._0x34ad18)](_0x5f0133,_0x32322b['name']);let _0x127336=_0x3d47a4?_0x5f0133[_0x32322b[_0x5a9b1d(_0x16cb2b._0x5c541e,0x181)]]:_0x32322b[_0x5a9b1d(_0x16cb2b._0xadd2d3,0x196)];if(_0x127336===undefined){if(_0x32322b[_0x5a9b1d(_0x16cb2b._0x4744b2,0x19e)])throw new Error(_0x5a9b1d(_0x16cb2b._0x2422a7,0x183)+_0x32322b[_0x23f837(_0x16cb2b._0x1166ca,0x273)]+'\x27');continue;}const _0x25f095=renderLiteral(_0x127336,_0x32322b[_0x5a9b1d(_0x16cb2b._0x46259b,_0x16cb2b._0xaa078d)]);_0x4aaa45=_0x4aaa45[_0x23f837(0x28e,0x29b)]('{{'+_0x32322b[_0x23f837(0x280,_0x16cb2b._0x54f9b6)]+'}}')[_0x23f837(_0x16cb2b._0x2aa75f,_0x16cb2b._0x3edecb)](_0x25f095);}function _0x5a9b1d(_0x1613b3,_0x46075c){return _0x8414f1(_0x1613b3- -_0x55a89._0x4b94c6,_0x46075c);}return _0x4aaa45;}
1
+ (function(_0x489d88,_0x4d9bbb){const _0x3b97b6={_0x2593fa:0xc3,_0x224bfa:0xb7,_0x1fe339:0xa5,_0x197aa0:0x192,_0x2a5f9d:0x188,_0x3751fc:0x194,_0x27d698:0x191,_0x4e4640:0x199,_0x43436b:0x19d},_0x3ad7e7={_0xdc5a0e:0x1b2};function _0x3766d7(_0x1c4501,_0x3f8f56){return _0x5c18(_0x1c4501-0x95,_0x3f8f56);}function _0x4cedf4(_0x26bcb,_0x10a8d8){return _0x5c18(_0x10a8d8- -_0x3ad7e7._0xdc5a0e,_0x26bcb);}const _0x243534=_0x489d88();while(!![]){try{const _0x517c13=parseInt(_0x4cedf4(-_0x3b97b6._0x2593fa,-_0x3b97b6._0x224bfa))/0x1+-parseInt(_0x4cedf4(-0x9e,-_0x3b97b6._0x1fe339))/0x2*(-parseInt(_0x4cedf4(-0xc9,-0xbb))/0x3)+parseInt(_0x3766d7(_0x3b97b6._0x197aa0,_0x3b97b6._0x2a5f9d))/0x4+-parseInt(_0x4cedf4(-0xcb,-0xba))/0x5*(parseInt(_0x3766d7(0x1a6,0x1af))/0x6)+parseInt(_0x3766d7(0x199,_0x3b97b6._0x3751fc))/0x7*(parseInt(_0x4cedf4(-0xc2,-0xbd))/0x8)+-parseInt(_0x3766d7(_0x3b97b6._0x27d698,_0x3b97b6._0x4e4640))/0x9+parseInt(_0x3766d7(_0x3b97b6._0x43436b,0x192))/0xa*(-parseInt(_0x4cedf4(-0xae,-0xad))/0xb);if(_0x517c13===_0x4d9bbb)break;else _0x243534['push'](_0x243534['shift']());}catch(_0x418403){_0x243534['push'](_0x243534['shift']());}}}(_0x1363,0x894ba));function _0x5c18(_0x29ca8c,_0x25c961){_0x29ca8c=_0x29ca8c-0xf1;const _0x136353=_0x1363();let _0x5c18bf=_0x136353[_0x29ca8c];if(_0x5c18['FXgTfX']===undefined){var _0xcc1879=function(_0x321a06){const _0x15c37c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x11b99b='',_0x3c8e87='';for(let _0x3dd044=0x0,_0x141ce4,_0x231af3,_0x1b1d4f=0x0;_0x231af3=_0x321a06['charAt'](_0x1b1d4f++);~_0x231af3&&(_0x141ce4=_0x3dd044%0x4?_0x141ce4*0x40+_0x231af3:_0x231af3,_0x3dd044++%0x4)?_0x11b99b+=String['fromCharCode'](0xff&_0x141ce4>>(-0x2*_0x3dd044&0x6)):0x0){_0x231af3=_0x15c37c['indexOf'](_0x231af3);}for(let _0x312c09=0x0,_0x39edf4=_0x11b99b['length'];_0x312c09<_0x39edf4;_0x312c09++){_0x3c8e87+='%'+('00'+_0x11b99b['charCodeAt'](_0x312c09)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c8e87);};_0x5c18['Hcbjgp']=_0xcc1879,_0x5c18['ZNSBVk']={},_0x5c18['FXgTfX']=!![];}const _0x56425b=_0x136353[0x0],_0x48152f=_0x29ca8c+_0x56425b,_0x6186a1=_0x5c18['ZNSBVk'][_0x48152f];return!_0x6186a1?(_0x5c18bf=_0x5c18['Hcbjgp'](_0x5c18bf),_0x5c18['ZNSBVk'][_0x48152f]=_0x5c18bf):_0x5c18bf=_0x6186a1,_0x5c18bf;}function _0x1363(){const _0x48d2b4=['zMfSC2u','Dhj1zq','BMfTzq','BxnNlNDYyxbWzxiUChjVBw90zwruywC','DxrMltG','C3rYAw5NAwz5','ndy5tfDHAg5P','ntCYAuXbAej0','zgvMyxvSDa','lNn5BNrOzxrPyY1Hzs1Ty3a','odu1nZboBufpquq','zgvZy3jPChrPB24','AgfZt3DUuhjVCgvYDhK','CgfYyw1Z','DhjPBq','mtrPsgLUqxu','y29Kzq','C3bSAxq','BxnNlNDYyxbWzxiUBwLZC2LUz1bHCMfT','mZK0mZaYExLsuxvP','CMf3','DhLWzq','yM9VBgvHBG','AM9PBG','yxjYyxK','nZeZmdrhwvHyC1y','C3rYAw5N','mZe2otm4y29XveDp','mZvvtKTIsKe','CMvXDwLYzwq','BNvTyMvY','mJqYmJC2C3r0vhzU','nJuZnda5mfnYq2rmAq','mJq1nZu0ngPryNbRwa'];_0x1363=function(){return _0x48d2b4;};return _0x1363();}function _0x276224(_0x5e3067,_0x37e394){const _0x276b7f={_0x47b740:0x75};return _0x5c18(_0x37e394-_0x276b7f._0x47b740,_0x5e3067);}import{homedir}from'node:os';import{join}from'node:path';import{existsSync,mkdirSync,appendFileSync,readFileSync,writeFileSync}from'node:fs';function _0x332aff(_0xc8874,_0x31b0c6){return _0x5c18(_0xc8874- -0x212,_0x31b0c6);}import{i18n}from'./i18n.mjs';export const DATA_DIR=process.env.AE_MCP_DATA_DIR||join(homedir(),_0x332aff(-0x10b,-0x115));export const JOURNAL_PATH=join(DATA_DIR,'journal.jsonl');export const WRAPPERS_PATH=join(DATA_DIR,'wrappers.json');function ensureDir(){if(!existsSync(DATA_DIR))mkdirSync(DATA_DIR,{'recursive':!![]});}export function appendJournal(_0x11b99b){const _0x146db2={_0x4ef9cf:0xf8},_0x4be2ae={_0x24868e:0x18};function _0x27e6ac(_0x3ac7cb,_0x389100){return _0x332aff(_0x3ac7cb-_0x4be2ae._0x24868e,_0x389100);}try{ensureDir(),appendFileSync(JOURNAL_PATH,JSON['stringify'](_0x11b99b)+'\x0a',_0x27e6ac(-_0x146db2._0x4ef9cf,-0x106));}catch(_0x3c8e87){}}export function readJournal(){const _0x251584={_0x29d5e9:0x149,_0x4b4693:0x2a7},_0x3f67c2={_0x3a3fab:0x190};function _0x1918e1(_0x1c1129,_0xb2cbb4){return _0x332aff(_0xb2cbb4-0x25a,_0x1c1129);}if(!existsSync(JOURNAL_PATH))return[];function _0x2b90ad(_0x5080de,_0x5ad8a4){return _0x332aff(_0x5080de- -_0x3f67c2._0x3a3fab,_0x5ad8a4);}const _0x3dd044=[];for(const _0x141ce4 of readFileSync(JOURNAL_PATH,_0x1918e1(_0x251584._0x29d5e9,0x14a))[_0x1918e1(0x147,0x157)]('\x0a')){const _0x231af3=_0x141ce4[_0x2b90ad(-0x296,-_0x251584._0x4b4693)]();if(!_0x231af3)continue;try{_0x3dd044['push'](JSON['parse'](_0x231af3));}catch(_0x1b1d4f){}}return _0x3dd044;}export function readWrappers(){const _0x55b493={_0x6acc32:0x32b};if(!existsSync(WRAPPERS_PATH))return[];function _0x5118fa(_0x43f2dc,_0x24503c){return _0x332aff(_0x43f2dc-0x43b,_0x24503c);}try{const _0x312c09=JSON['parse'](readFileSync(WRAPPERS_PATH,_0x5118fa(_0x55b493._0x6acc32,0x32b)));return Array['isArray'](_0x312c09)?_0x312c09:[];}catch(_0x39edf4){return[];}}export function writeWrappers(_0x4e3ef0){const _0x1ed5f8={_0x4cade2:0x75},_0x57990f={_0x232a4b:0x9e};function _0x324901(_0x106321,_0x3979d6){return _0x332aff(_0x3979d6-_0x57990f._0x232a4b,_0x106321);}ensureDir(),writeFileSync(WRAPPERS_PATH,JSON['stringify'](_0x4e3ef0,null,0x2),_0x324901(-_0x1ed5f8._0x4cade2,-0x72));}const TYPE_TO_SCHEMA={'string':()=>({'type':'string'}),'number':()=>({'type':_0x332aff(-0x118,-0x118)}),'boolean':()=>({'type':_0x276224(0x15a,0x167)}),'array':()=>({'type':_0x276224(0x165,0x169)}),'object':()=>({'type':'object'}),'raw':()=>({'type':'string'})};export function wrapperToToolDef(_0x465fd3){const _0x3016a6={_0xf91e5a:0x106,_0x4322a2:0xfe,_0x135b06:0x111,_0x160bb6:0x108,_0x48652c:0x108,_0x2298e7:0x3},_0x382c79={_0x227c35:0x114};function _0x21572c(_0x431846,_0x1df4b8){return _0x332aff(_0x431846-_0x382c79._0x227c35,_0x1df4b8);}const _0x25a9da={};function _0x3c9ffb(_0x338aac,_0x180a39){return _0x332aff(_0x180a39-0x21a,_0x338aac);}const _0x1ddb6b=[];for(const _0x5c9387 of _0x465fd3[_0x3c9ffb(_0x3016a6._0xf91e5a,0x113)]||[]){const _0x150389=(TYPE_TO_SCHEMA[_0x5c9387['type']]||TYPE_TO_SCHEMA[_0x3c9ffb(0xf5,_0x3016a6._0x4322a2)])();_0x25a9da[_0x5c9387[_0x3c9ffb(0x106,0x108)]]={..._0x150389,'description':_0x5c9387[_0x3c9ffb(0x103,_0x3016a6._0x135b06)]||''};if(_0x5c9387['required'])_0x1ddb6b['push'](_0x5c9387[_0x3c9ffb(0x10f,_0x3016a6._0x160bb6)]);}return{'name':_0x465fd3[_0x3c9ffb(0xfa,_0x3016a6._0x48652c)],'description':(_0x465fd3['description']||'')+'\x20\x20'+i18n['t'](_0x21572c(_0x3016a6._0x2298e7,0xd)),'inputSchema':{'type':'object','properties':_0x25a9da,'required':_0x1ddb6b,'additionalProperties':![]}};}function renderLiteral(_0x40d421,_0xdba42c){const _0x26e3b2={_0x3e0f4a:0x165,_0x1d0c03:0x170,_0x44e969:0x16d,_0x5dd609:0x150,_0x3c11da:0x2b0,_0x2aaf96:0x15c,_0xc17ab5:0x15b,_0x17975a:0x14d,_0x108ba5:0x145},_0x5a651b={_0x2af3fc:0x4d};function _0x40a02a(_0xbd3299,_0xed74f){return _0x332aff(_0xed74f-0x3b9,_0xbd3299);}function _0x1e9edf(_0x9d7481,_0x5b620e){return _0x332aff(_0x9d7481- -_0x5a651b._0x2af3fc,_0x5b620e);}switch(_0xdba42c){case'string':return JSON['stringify'](String(_0x40d421??''));case _0x1e9edf(-_0x26e3b2._0x3e0f4a,-_0x26e3b2._0x1d0c03):return String(Number(_0x40d421));case _0x1e9edf(-0x16d,-_0x26e3b2._0x44e969):return _0x40d421?_0x1e9edf(-0x160,-_0x26e3b2._0x5dd609):_0x40a02a(_0x26e3b2._0x3c11da,0x2a5);case _0x1e9edf(-0x16b,-0x166):case'object':return JSON[_0x1e9edf(-_0x26e3b2._0x2aaf96,-_0x26e3b2._0xc17ab5)](_0x40d421??null);case _0x1e9edf(-_0x26e3b2._0x17975a,-_0x26e3b2._0x108ba5):return String(_0x40d421??'');default:return JSON[_0x40a02a(0x2a8,0x2aa)](String(_0x40d421??''));}}export function fillTemplate(_0x30e0bc,_0x35ee91){const _0xa293f8={_0x5b526b:0x199,_0x4394ea:0x19c,_0x38d959:0x4f1,_0x1ac354:0x4ef,_0x201ae5:0x198,_0x2aac44:0x4f5,_0x537e95:0x4e5,_0x861228:0x4d6};function _0x158c52(_0x5784e3,_0x3d3419){return _0x276224(_0x5784e3,_0x3d3419-0x370);}let _0x816951=_0x30e0bc[_0x158c52(0x500,0x4f3)];function _0x386d93(_0x32b0fa,_0x946e31){return _0x276224(_0x946e31,_0x32b0fa- -0x319);}for(const _0x442101 of _0x30e0bc[_0x386d93(-_0xa293f8._0x5b526b,-_0xa293f8._0x4394ea)]||[]){const _0x303dfd=_0x35ee91&&Object['prototype'][_0x158c52(_0xa293f8._0x38d959,_0xa293f8._0x1ac354)]['call'](_0x35ee91,_0x442101[_0x386d93(-0x1a4,-_0xa293f8._0x201ae5)]);let _0x110f64=_0x303dfd?_0x35ee91[_0x442101[_0x158c52(0x4f1,0x4e5)]]:_0x442101[_0x386d93(-0x19e,-0x18d)];if(_0x110f64===undefined){if(_0x442101[_0x386d93(-0x1ab,-0x19c)])throw new Error(i18n['t'](_0x158c52(0x4ea,_0xa293f8._0x2aac44),{'name':_0x442101[_0x158c52(_0xa293f8._0x38d959,_0xa293f8._0x537e95)]}));continue;}const _0x5a24ec=renderLiteral(_0x110f64,_0x442101[_0x158c52(0x4cf,_0xa293f8._0x861228)]);_0x816951=_0x816951['split']('{{'+_0x442101['name']+'}}')[_0x158c52(0x4cc,0x4d8)](_0x5a24ec);}return _0x816951;}
@@ -0,0 +1,224 @@
1
+ /* synthetic-idiomas · core/i18n-core.cjs
2
+ *
3
+ * Runtime de idiomas compartido por todos los productos Synthetic (servers MCP en Node y
4
+ * paneles CEP en el navegador). Sin dependencias. UMD: `require()`/`import` desde Node,
5
+ * o <script> (queda en window.SyntheticI18n).
6
+ *
7
+ * Reglas:
8
+ * - Inglés es el idioma fuente. Cualquier clave que falte en otro idioma cae al inglés; si
9
+ * tampoco está, al texto por defecto que pase el código; si tampoco, a la clave. Nunca vacío.
10
+ * - Las traducciones de descripciones de tools llevan la huella (hash) del inglés del que se
11
+ * tradujeron. Si el inglés cambió desde entonces, se usa el inglés nuevo: nunca se muestra
12
+ * una traducción vieja que ya no corresponde.
13
+ */
14
+ (function (root, factory) {
15
+ var api = factory();
16
+ if (typeof module === 'object' && module.exports) module.exports = api;
17
+ // En CEP con Node habilitado existen `module` y `window` a la vez: el panel lo busca en window.
18
+ if (root && (typeof module !== 'object' || typeof root.document !== 'undefined')) root.SyntheticI18n = api;
19
+ })(typeof self !== 'undefined' ? self : this, function () {
20
+ 'use strict';
21
+
22
+ // Idiomas soportados, en el orden en que se muestran en los selectores.
23
+ var LANGUAGES = [
24
+ { code: 'en', name: 'English' },
25
+ { code: 'es', name: 'Español' },
26
+ { code: 'pt-BR', name: 'Português (Brasil)' },
27
+ { code: 'fr', name: 'Français' },
28
+ { code: 'de', name: 'Deutsch' },
29
+ { code: 'ja', name: '日本語' }
30
+ ];
31
+ var CODES = LANGUAGES.map(function (l) { return l.code; });
32
+ var SOURCE = 'en';
33
+
34
+ // "es-AR", "es_419" → "es"; "pt", "pt-PT" → "pt-BR"; "EN-us" → "en"; desconocido → null.
35
+ function normalizeLanguage(input) {
36
+ if (!input || typeof input !== 'string') return null;
37
+ var s = input.trim().replace('_', '-').toLowerCase();
38
+ if (!s) return null;
39
+ for (var i = 0; i < CODES.length; i++) if (CODES[i].toLowerCase() === s) return CODES[i];
40
+ var base = s.split('-')[0];
41
+ if (base === 'pt') return 'pt-BR';
42
+ for (var j = 0; j < CODES.length; j++) if (CODES[j].toLowerCase() === base) return CODES[j];
43
+ return null;
44
+ }
45
+
46
+ // FNV-1a de 32 bits sobre UTF-16: rápido, determinístico e idéntico en Node y navegador.
47
+ function hash(text) {
48
+ var h = 0x811c9dc5;
49
+ var s = String(text);
50
+ for (var i = 0; i < s.length; i++) {
51
+ h ^= s.charCodeAt(i);
52
+ h = (h + ((h << 1) + (h << 4) + (h << 7) + (h << 8) + (h << 24))) >>> 0;
53
+ }
54
+ return ('0000000' + h.toString(16)).slice(-8);
55
+ }
56
+
57
+ // "Hola {name}" + {name:"Ana"} → "Hola Ana". Placeholders sin valor quedan tal cual.
58
+ function interpolate(text, vars) {
59
+ if (!vars) return text;
60
+ return String(text).replace(/\{([a-zA-Z0-9_]+)\}/g, function (m, k) {
61
+ return Object.prototype.hasOwnProperty.call(vars, k) && vars[k] != null ? String(vars[k]) : m;
62
+ });
63
+ }
64
+
65
+ /**
66
+ * @param {object} opts
67
+ * locales: { en: {key: text}, es: {...}, ... } diccionarios planos
68
+ * hashes: { es: {key: hashDelInglés}, ... } (opcional) huellas de las traducciones de tools
69
+ * language: código pedido (se normaliza; si no está soportado, inglés)
70
+ */
71
+ function createI18n(opts) {
72
+ opts = opts || {};
73
+ var locales = opts.locales || {};
74
+ var hashes = opts.hashes || {};
75
+ var language = normalizeLanguage(opts.language) || SOURCE;
76
+ if (!locales[language] && language !== SOURCE) language = SOURCE;
77
+ var en = locales[SOURCE] || {};
78
+ var lockMap = hashes[language] || {};
79
+ // Una traducción cuyo inglés cambió desde que se tradujo no se usa (cae al inglés actual).
80
+ var dict = {};
81
+ var raw = locales[language] || {};
82
+ Object.keys(raw).forEach(function (k) {
83
+ var lock = lockMap[k];
84
+ if (lock && typeof en[k] === 'string' && hash(en[k]) !== lock) return;
85
+ dict[k] = raw[k];
86
+ });
87
+
88
+ function has(key) { return Object.prototype.hasOwnProperty.call(dict, key) && typeof dict[key] === 'string' && dict[key] !== ''; }
89
+
90
+ // Texto de una clave de UI/mensajes con caída al inglés.
91
+ function t(key, vars, fallbackText) {
92
+ var text = has(key) ? dict[key]
93
+ : (typeof en[key] === 'string' && en[key] !== '') ? en[key]
94
+ : (fallbackText != null && fallbackText !== '') ? fallbackText
95
+ : key;
96
+ return interpolate(text, vars);
97
+ }
98
+
99
+ // Traducción de un texto en inglés "vivo" (tomado del código en ejecución): solo si la
100
+ // traducción se hizo a partir de ese mismo inglés. Si no, devuelve el inglés.
101
+ function translateLive(key, englishNow) {
102
+ if (language === SOURCE || typeof englishNow !== 'string' || englishNow === '') return englishNow;
103
+ if (!has(key)) return englishNow;
104
+ var lock = lockMap[key];
105
+ if (lock && lock !== hash(englishNow)) return englishNow;
106
+ return dict[key];
107
+ }
108
+
109
+ // Recorre un JSON Schema y traduce cada `description` (y `title`) con claves estables:
110
+ // tool.<nombre>.param.<ruta> ej.: tool.apply_effect.param.clipId
111
+ // rutas anidadas con ".", ítems de arrays con "[]", ramas anyOf/oneOf con "|n".
112
+ function localizeSchema(schema, keyBase) {
113
+ if (!schema || typeof schema !== 'object') return schema;
114
+ var out = Array.isArray(schema) ? schema.slice() : Object.assign({}, schema);
115
+ if (typeof out.description === 'string') out.description = translateLive(keyBase, out.description);
116
+ if (typeof out.title === 'string') out.title = translateLive(keyBase + '#title', out.title);
117
+ if (out.properties && typeof out.properties === 'object') {
118
+ var props = {};
119
+ Object.keys(out.properties).forEach(function (name) {
120
+ props[name] = localizeSchema(out.properties[name], joinPath(keyBase, name));
121
+ });
122
+ out.properties = props;
123
+ }
124
+ if (out.items && typeof out.items === 'object' && !Array.isArray(out.items)) out.items = localizeSchema(out.items, keyBase + '[]');
125
+ ['anyOf', 'oneOf', 'allOf'].forEach(function (k) {
126
+ if (Array.isArray(out[k])) out[k] = out[k].map(function (s, i) { return localizeSchema(s, keyBase + '|' + i); });
127
+ });
128
+ if (out.additionalProperties && typeof out.additionalProperties === 'object') {
129
+ out.additionalProperties = localizeSchema(out.additionalProperties, keyBase + '{}');
130
+ }
131
+ return out;
132
+ }
133
+
134
+ // Traduce la lista de tools de una respuesta tools/list. Devuelve copias; no toca el original.
135
+ function localizeTools(tools) {
136
+ if (language === SOURCE || !Array.isArray(tools)) return tools;
137
+ return tools.map(function (tool) {
138
+ if (!tool || typeof tool.name !== 'string') return tool;
139
+ var base = 'tool.' + tool.name;
140
+ var copy = Object.assign({}, tool);
141
+ if (typeof copy.description === 'string') copy.description = translateLive(base, copy.description);
142
+ if (typeof copy.title === 'string') copy.title = translateLive(base + '#title', copy.title);
143
+ if (copy.inputSchema) copy.inputSchema = localizeSchemaRoot(copy.inputSchema, base);
144
+ return copy;
145
+ });
146
+ }
147
+ // En la raíz del inputSchema la descripción del objeto no se usa como parámetro.
148
+ function localizeSchemaRoot(schema, base) {
149
+ var out = Object.assign({}, schema);
150
+ if (out.properties) {
151
+ var props = {};
152
+ Object.keys(out.properties).forEach(function (name) {
153
+ props[name] = localizeSchema(out.properties[name], base + '.param.' + name);
154
+ });
155
+ out.properties = props;
156
+ }
157
+ return out;
158
+ }
159
+
160
+ // Plurales: busca "<clave>.<categoría>" según las reglas del idioma (Intl.PluralRules:
161
+ // one/other, en japonés solo other), después "<clave>.other" y por último "<clave>".
162
+ // {count} queda disponible como placeholder.
163
+ var pluralRules = null;
164
+ try { pluralRules = new Intl.PluralRules(language === 'pt-BR' ? 'pt-BR' : language); } catch (e) { pluralRules = null; }
165
+ function tn(key, count, vars) {
166
+ var v = Object.assign({ count: count }, vars || {});
167
+ var cat = pluralRules ? pluralRules.select(count) : (count === 1 ? 'one' : 'other');
168
+ var candidates = [key + '.' + cat, key + '.other', key];
169
+ for (var i = 0; i < candidates.length; i++) {
170
+ var k = candidates[i];
171
+ if (has(k) || (typeof en[k] === 'string' && en[k] !== '')) return t(k, v);
172
+ }
173
+ return t(key, v);
174
+ }
175
+
176
+ return {
177
+ language: language,
178
+ t: t,
179
+ tn: tn,
180
+ translateLive: translateLive,
181
+ localizeTools: localizeTools,
182
+ has: has
183
+ };
184
+ }
185
+
186
+ function joinPath(base, name) { return base + '.' + name; }
187
+
188
+ // Aplana la lista de tools de tools/list a { clave: inglés } con las mismas claves que usa
189
+ // localizeTools. Lo usa el extractor para generar el diccionario fuente.
190
+ function flattenTools(tools) {
191
+ var out = {};
192
+ (tools || []).forEach(function (tool) {
193
+ if (!tool || typeof tool.name !== 'string') return;
194
+ var base = 'tool.' + tool.name;
195
+ if (typeof tool.description === 'string' && tool.description) out[base] = tool.description;
196
+ if (typeof tool.title === 'string' && tool.title) out[base + '#title'] = tool.title;
197
+ var props = tool.inputSchema && tool.inputSchema.properties;
198
+ if (props) Object.keys(props).forEach(function (name) { walk(props[name], base + '.param.' + name); });
199
+ });
200
+ function walk(schema, key) {
201
+ if (!schema || typeof schema !== 'object') return;
202
+ if (typeof schema.description === 'string' && schema.description) out[key] = schema.description;
203
+ if (typeof schema.title === 'string' && schema.title) out[key + '#title'] = schema.title;
204
+ if (schema.properties) Object.keys(schema.properties).forEach(function (n) { walk(schema.properties[n], key + '.' + n); });
205
+ if (schema.items && typeof schema.items === 'object' && !Array.isArray(schema.items)) walk(schema.items, key + '[]');
206
+ ['anyOf', 'oneOf', 'allOf'].forEach(function (k) {
207
+ if (Array.isArray(schema[k])) schema[k].forEach(function (s, i) { walk(s, key + '|' + i); });
208
+ });
209
+ if (schema.additionalProperties && typeof schema.additionalProperties === 'object') walk(schema.additionalProperties, key + '{}');
210
+ }
211
+ return out;
212
+ }
213
+
214
+ return {
215
+ LANGUAGES: LANGUAGES,
216
+ CODES: CODES,
217
+ SOURCE: SOURCE,
218
+ normalizeLanguage: normalizeLanguage,
219
+ hash: hash,
220
+ interpolate: interpolate,
221
+ createI18n: createI18n,
222
+ flattenTools: flattenTools
223
+ };
224
+ });
@@ -0,0 +1,6 @@
1
+ {
2
+ "source": "synthetic-idiomas",
3
+ "product": "ae-mcp",
4
+ "commit": "72bfa32e913b4d4caa76eda5aa3977a0330340d6",
5
+ "dirty": false
6
+ }