@funny-booth/agent-core 0.1.41 → 0.1.43
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/approval.js +165 -0
- package/dist/extraMcps.js +1 -1
- package/dist/feedback.js +1 -1
- package/dist/fillSecretHelper.js +51 -0
- package/dist/index.js +1 -1
- package/dist/launcher.js +1 -1
- package/dist/mcpPackages.js +1 -1
- package/dist/secretInput.js +190 -0
- package/dist/secretSites.js +22 -0
- package/dist/vault.d.ts +10 -4
- package/dist/vault.js +6 -12
- package/mod/hooks/words.js +2 -0
- package/package.json +1 -1
package/dist/approval.js
ADDED
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.askHuman = exports.WIN_DIALOG_TIMEOUT = exports.WIN_DIALOG_NO = exports.DENY_LABEL = exports.APPROVE_LABEL = exports.APPROVE_TIMEOUT_SEC = void 0;
|
|
4
|
+
exports.needsApproval = needsApproval;
|
|
5
|
+
exports.approvalMessage = approvalMessage;
|
|
6
|
+
exports.dialogCommand = dialogCommand;
|
|
7
|
+
exports.windowsDialog = windowsDialog;
|
|
8
|
+
exports.interpretDialog = interpretDialog;
|
|
9
|
+
exports.onPath = onPath;
|
|
10
|
+
exports.clearSitesMessage = clearSitesMessage;
|
|
11
|
+
exports.confirmWithHuman = confirmWithHuman;
|
|
12
|
+
exports.clearingNeedsApproval = clearingNeedsApproval;
|
|
13
|
+
// サイトのログイン用の秘密を出す前に本人に聞く確認(1回ごと。fillSecretHelper.ts が値を出す直前に呼ぶ)。
|
|
14
|
+
// AI がページの文に騙されても、本人が OS の確認画面で秘密の名前と入れ先のサイトを見て許可しない限り値は出ない。
|
|
15
|
+
// 何も押さない・閉じる・時間切れ・画面を出せないは、すべて「入れない」。
|
|
16
|
+
// 確認の中身(文・コマンド・結果の読み方)は純粋な関数にし、OS を呼ぶのは askHuman だけにする(テストで差し替えられる)。
|
|
17
|
+
const child_process_1 = require("child_process");
|
|
18
|
+
const fs_1 = require("fs");
|
|
19
|
+
const path_1 = require("path");
|
|
20
|
+
exports.APPROVE_TIMEOUT_SEC = 60;
|
|
21
|
+
exports.APPROVE_LABEL = "許可";
|
|
22
|
+
exports.DENY_LABEL = "拒否";
|
|
23
|
+
const TITLE = "パスワード等の入力の確認";
|
|
24
|
+
/** 開発中の手元のページ(localhost・*.localhost・*.test)だけは聞かずに入れる。それ以外の実在のサイトは毎回聞く。 */
|
|
25
|
+
function needsApproval(host) {
|
|
26
|
+
const h = host.toLowerCase().replace(/^\[|\]$/g, "");
|
|
27
|
+
return !(h === "localhost" || h === "127.0.0.1" || h === "::1" || h.endsWith(".localhost") || h.endsWith(".test"));
|
|
28
|
+
}
|
|
29
|
+
function approvalMessage(secretName, host, timeoutSec = exports.APPROVE_TIMEOUT_SEC) {
|
|
30
|
+
return `AI が金庫の秘密「${secretName}」を、次のサイトの入力欄に入れようとしています。\n\n` +
|
|
31
|
+
`サイト: ${host}\n\n` +
|
|
32
|
+
`あなたが頼んだ操作で、このサイトで正しければ「${exports.APPROVE_LABEL}」を押してください。` +
|
|
33
|
+
`心当たりが無ければ「${exports.DENY_LABEL}」を押してください(${timeoutSec} 秒で自動的に拒否します)。`;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* OS ごとの確認画面のコマンド。文は引数や環境変数で渡し、コードに埋め込まない(名前やサイト名に記号があっても壊れない)。
|
|
37
|
+
* 出せない環境なら null。has は「そのコマンドがあるか」(テストで差し替える)。
|
|
38
|
+
*/
|
|
39
|
+
function dialogCommand(platform, message, env, has, timeoutSec = exports.APPROVE_TIMEOUT_SEC) {
|
|
40
|
+
const killAfterMs = (timeoutSec + 5) * 1000;
|
|
41
|
+
if (platform === "darwin") {
|
|
42
|
+
return {
|
|
43
|
+
cmd: "/usr/bin/osascript",
|
|
44
|
+
args: [
|
|
45
|
+
"-e", "on run argv",
|
|
46
|
+
"-e", `display dialog (item 1 of argv) with title ${JSON.stringify(TITLE)} buttons {${JSON.stringify(exports.DENY_LABEL)}, ${JSON.stringify(exports.APPROVE_LABEL)}} ` +
|
|
47
|
+
`default button ${JSON.stringify(exports.DENY_LABEL)} with icon caution giving up after ${timeoutSec}`,
|
|
48
|
+
"-e", "end run",
|
|
49
|
+
message,
|
|
50
|
+
],
|
|
51
|
+
killAfterMs,
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
if (platform === "win32")
|
|
55
|
+
return windowsDialog({ text: message, title: TITLE, yes: exports.APPROVE_LABEL, no: exports.DENY_LABEL, timeoutSec });
|
|
56
|
+
if (!env.DISPLAY && !env.WAYLAND_DISPLAY)
|
|
57
|
+
return null;
|
|
58
|
+
if (has("zenity")) {
|
|
59
|
+
return {
|
|
60
|
+
cmd: "zenity",
|
|
61
|
+
args: ["--question", "--title", TITLE, "--text", message, "--ok-label", exports.APPROVE_LABEL, "--cancel-label", exports.DENY_LABEL,
|
|
62
|
+
"--default-cancel", "--no-markup", `--timeout=${timeoutSec}`],
|
|
63
|
+
killAfterMs,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
if (has("kdialog")) {
|
|
67
|
+
// kdialog には時間切れが無いので、時間が来たら閉じる(killAfterMs)
|
|
68
|
+
return { cmd: "kdialog", args: ["--title", TITLE, "--warningyesno", message, "--yes-label", exports.APPROVE_LABEL, "--no-label", exports.DENY_LABEL],
|
|
69
|
+
killAfterMs: timeoutSec * 1000 };
|
|
70
|
+
}
|
|
71
|
+
return null;
|
|
72
|
+
}
|
|
73
|
+
exports.WIN_DIALOG_NO = 2;
|
|
74
|
+
exports.WIN_DIALOG_TIMEOUT = 3;
|
|
75
|
+
/**
|
|
76
|
+
* Windows の前面に出る小さな画面(PowerShell の WinForms。ask_secret の入力画面と共用)。文・見出し・ボタンの名前は環境変数で渡す。
|
|
77
|
+
* 「yes」で 0、「no」・閉じるで WIN_DIALOG_NO、時間切れで WIN_DIALOG_TIMEOUT で終わる。
|
|
78
|
+
* hiddenInput なら伏せ字の欄を付け、Enter は「yes」、「yes」で欄の値を UTF-8 のバイトで標準出力へ書く(改行を足さない)。
|
|
79
|
+
* hiddenInput でなければ Enter は「no」(うっかり許可しない)。
|
|
80
|
+
*/
|
|
81
|
+
function windowsDialog(o) {
|
|
82
|
+
const input = Boolean(o.hiddenInput);
|
|
83
|
+
const script = [
|
|
84
|
+
"Add-Type -AssemblyName System.Windows.Forms", "Add-Type -AssemblyName System.Drawing",
|
|
85
|
+
"$f = New-Object System.Windows.Forms.Form", "$f.Text = $env:FB_DIALOG_TITLE", "$f.TopMost = $true",
|
|
86
|
+
"$f.StartPosition = 'CenterScreen'", "$f.FormBorderStyle = 'FixedDialog'", "$f.MaximizeBox = $false", "$f.MinimizeBox = $false",
|
|
87
|
+
"$l = New-Object System.Windows.Forms.Label", "$l.AutoSize = $true", "$l.MaximumSize = New-Object System.Drawing.Size(460, 0)",
|
|
88
|
+
"$l.Location = New-Object System.Drawing.Point(12, 12)", "$l.Text = $env:FB_DIALOG_TEXT", "$f.Controls.Add($l)",
|
|
89
|
+
"$y = $l.Bottom + 12",
|
|
90
|
+
...(input ? ["$tb = New-Object System.Windows.Forms.TextBox", "$tb.UseSystemPasswordChar = $true",
|
|
91
|
+
"$tb.Location = New-Object System.Drawing.Point(12, $y)", "$tb.Width = 460", "$f.Controls.Add($tb)", "$y = $y + 36"] : []),
|
|
92
|
+
"$yes = New-Object System.Windows.Forms.Button", "$yes.Text = $env:FB_DIALOG_YES", "$yes.DialogResult = 'OK'",
|
|
93
|
+
"$yes.Location = New-Object System.Drawing.Point(397, $y)", "$f.Controls.Add($yes)",
|
|
94
|
+
"$no = New-Object System.Windows.Forms.Button", "$no.Text = $env:FB_DIALOG_NO", "$no.DialogResult = 'Cancel'",
|
|
95
|
+
"$no.Location = New-Object System.Drawing.Point(312, $y)", "$f.Controls.Add($no)",
|
|
96
|
+
`$f.AcceptButton = ${input ? "$yes" : "$no"}`, "$f.CancelButton = $no", "$f.ClientSize = New-Object System.Drawing.Size(484, ($y + 36))",
|
|
97
|
+
"$t = New-Object System.Windows.Forms.Timer", `$t.Interval = ${o.timeoutSec * 1000}`,
|
|
98
|
+
"$t.Add_Tick({ $t.Stop(); $f.Tag = 'timeout'; $f.Close() })",
|
|
99
|
+
`$f.Add_Shown({ $f.Activate(); [void]${input ? "$tb" : "$no"}.Focus(); $t.Start() })`,
|
|
100
|
+
"$r = $f.ShowDialog()",
|
|
101
|
+
`if ($f.Tag -eq 'timeout') { exit ${exports.WIN_DIALOG_TIMEOUT} }`,
|
|
102
|
+
`if ($r -ne [System.Windows.Forms.DialogResult]::OK) { exit ${exports.WIN_DIALOG_NO} }`,
|
|
103
|
+
...(input ? ["$b = [System.Text.Encoding]::UTF8.GetBytes($tb.Text)", "$o = [Console]::OpenStandardOutput()",
|
|
104
|
+
"$o.Write($b, 0, $b.Length)", "$o.Flush()"] : []),
|
|
105
|
+
"exit 0",
|
|
106
|
+
].join("; ");
|
|
107
|
+
return {
|
|
108
|
+
cmd: "powershell.exe",
|
|
109
|
+
args: ["-NoProfile", "-NonInteractive", "-STA", "-Command", script],
|
|
110
|
+
env: { FB_DIALOG_TEXT: o.text, FB_DIALOG_TITLE: o.title, FB_DIALOG_YES: o.yes, FB_DIALOG_NO: o.no },
|
|
111
|
+
killAfterMs: (o.timeoutSec + 5) * 1000,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/** 確認画面の結果を読む。はっきり「許可」と分かるときだけ approved。 */
|
|
115
|
+
function interpretDialog(platform, r, cmd = "") {
|
|
116
|
+
if (r.killed)
|
|
117
|
+
return "timeout";
|
|
118
|
+
if (platform === "darwin") {
|
|
119
|
+
if (r.code !== 0)
|
|
120
|
+
return "denied";
|
|
121
|
+
if (/gave up:\s*true/.test(r.stdout))
|
|
122
|
+
return "timeout";
|
|
123
|
+
return r.stdout.includes(`button returned:${exports.APPROVE_LABEL}`) ? "approved" : "denied";
|
|
124
|
+
}
|
|
125
|
+
if (platform === "win32")
|
|
126
|
+
return r.code === 0 ? "approved" : r.code === exports.WIN_DIALOG_TIMEOUT ? "timeout" : "denied";
|
|
127
|
+
if (cmd === "zenity" && r.code === 5)
|
|
128
|
+
return "timeout";
|
|
129
|
+
return r.code === 0 ? "approved" : "denied";
|
|
130
|
+
}
|
|
131
|
+
function onPath(cmd, env) {
|
|
132
|
+
return (env.PATH ?? "").split(path_1.delimiter).some((d) => d && (0, fs_1.existsSync)((0, path_1.join)(d, cmd)));
|
|
133
|
+
}
|
|
134
|
+
const askHuman = (secretName, host) => confirmWithHuman(approvalMessage(secretName, host));
|
|
135
|
+
exports.askHuman = askHuman;
|
|
136
|
+
/** 「入れてよいサイト」を全部外す前の確認の文(外すと get_secret で値を取り出せるようになるため)。 */
|
|
137
|
+
function clearSitesMessage(secretName, sites, timeoutSec = exports.APPROVE_TIMEOUT_SEC) {
|
|
138
|
+
return `AI が金庫の秘密「${secretName}」の「入れてよいサイト」(${sites.join(", ")})を外そうとしています。\n\n` +
|
|
139
|
+
"外すと、この秘密の値を AI が取り出して会話に出せるようになります。\n\n" +
|
|
140
|
+
`あなたが頼んだ操作なら「${exports.APPROVE_LABEL}」を押してください。` +
|
|
141
|
+
`心当たりが無ければ「${exports.DENY_LABEL}」を押してください(${timeoutSec} 秒で自動的に拒否します)。`;
|
|
142
|
+
}
|
|
143
|
+
/** 本人に OS の確認画面で聞く(実物)。画面を出せない環境では "unavailable"。 */
|
|
144
|
+
function confirmWithHuman(message) {
|
|
145
|
+
const env = process.env;
|
|
146
|
+
const c = dialogCommand(process.platform, message, env, (cmd) => onPath(cmd, env));
|
|
147
|
+
if (!c)
|
|
148
|
+
return Promise.resolve("unavailable");
|
|
149
|
+
return new Promise((resolve) => {
|
|
150
|
+
(0, child_process_1.execFile)(c.cmd, c.args, { env: { ...env, ...(c.env ?? {}) }, timeout: c.killAfterMs, windowsHide: false }, (err, stdout) => {
|
|
151
|
+
const e = err;
|
|
152
|
+
if (e && typeof e.code === "string") {
|
|
153
|
+
resolve("unavailable");
|
|
154
|
+
return;
|
|
155
|
+
} // コマンドを起動できない(ENOENT 等)
|
|
156
|
+
const code = e ? (typeof e.code === "number" ? e.code : 1) : 0;
|
|
157
|
+
resolve(interpretDialog(process.platform, { code, stdout: String(stdout ?? ""), killed: Boolean(e?.killed) }, c.cmd));
|
|
158
|
+
});
|
|
159
|
+
});
|
|
160
|
+
}
|
|
161
|
+
/** サイトを全部外すときだけ聞く(開発用のサイトだけだった秘密は聞かない。入れるときと同じ扱い)。 */
|
|
162
|
+
function clearingNeedsApproval(before, after) {
|
|
163
|
+
return after.length === 0 && before.some(needsApproval);
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=approval.js.map
|
package/dist/extraMcps.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const _0x5933b3=_0x338e;(function(_0x27d08c,_0x30743e){const _0x366969=_0x338e,_0x5a47b2=_0x27d08c();while(!![]){try{const _0x43b196=parseInt(_0x366969(0x1c9))/0x1+parseInt(_0x366969(0x1ee))/0x2*(-parseInt(_0x366969(0x1cc))/0x3)+-parseInt(_0x366969(0x1d4))/0x4+parseInt(_0x366969(0x1dc))/0x5+parseInt(_0x366969(0x1d2))/0x6*(parseInt(_0x366969(0x1dd))/0x7)+parseInt(_0x366969(0x1fa))/0x8*(-parseInt(_0x366969(0x1e2))/0x9)+parseInt(_0x366969(0x1db))/0xa*(parseInt(_0x366969(0x1de))/0xb);if(_0x43b196===_0x30743e)break;else _0x5a47b2['push'](_0x5a47b2['shift']());}catch(_0x4c405){_0x5a47b2['push'](_0x5a47b2['shift']());}}}(_0x323f,0x4f1ef));Object[_0x5933b3(0x1e5)](exports,_0x5933b3(0x1f6),{'value':!![]}),exports[_0x5933b3(0x1c8)]=findInCatalog,exports['addExtra']=addExtra,exports[_0x5933b3(0x1f9)]=removeExtra,exports[_0x5933b3(0x1d9)]=mergeWithBundled,exports['parseSecretName']=parseSecretName,exports[_0x5933b3(0x1d0)]=mappedSecretEnv,exports[_0x5933b3(0x1fb)]=absoluteDir,exports[_0x5933b3(0x1d3)]=readLocalMcp,exports[_0x5933b3(0x1da)]=readExtras,exports['writeExtras']=writeExtras;const fs_1=require('fs'),os_1=require('os'),path_1=require('path'),mcpPackages_1=require(_0x5933b3(0x1f4)),vault_1=require(_0x5933b3(0x1d5));function _0x338e(_0x2fffcf,_0x2253e2){_0x2fffcf=_0x2fffcf-0x1c4;const _0x323f72=_0x323f();let _0x338e24=_0x323f72[_0x2fffcf];if(_0x338e['rxVGfz']===undefined){var _0x498f8f=function(_0x593dea){const _0x20b4f7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3d624d='',_0x3bef97='';for(let _0x4b878d=0x0,_0x149114,_0xb68e9a,_0x5cef0c=0x0;_0xb68e9a=_0x593dea['charAt'](_0x5cef0c++);~_0xb68e9a&&(_0x149114=_0x4b878d%0x4?_0x149114*0x40+_0xb68e9a:_0xb68e9a,_0x4b878d++%0x4)?_0x3d624d+=String['fromCharCode'](0xff&_0x149114>>(-0x2*_0x4b878d&0x6)):0x0){_0xb68e9a=_0x20b4f7['indexOf'](_0xb68e9a);}for(let _0x45c2a7=0x0,_0x6698dc=_0x3d624d['length'];_0x45c2a7<_0x6698dc;_0x45c2a7++){_0x3bef97+='%'+('00'+_0x3d624d['charCodeAt'](_0x45c2a7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3bef97);};_0x338e['CrpxbW']=_0x498f8f,_0x338e['bXjRwg']={},_0x338e['rxVGfz']=!![];}const _0x5e9446=_0x323f72[0x0],_0x38cd41=_0x2fffcf+_0x5e9446,_0x32e970=_0x338e['bXjRwg'][_0x38cd41];return!_0x32e970?(_0x338e24=_0x338e['CrpxbW'](_0x338e24),_0x338e['bXjRwg'][_0x38cd41]=_0x338e24):_0x338e24=_0x32e970,_0x338e24;}function findInCatalog(_0x1965e6,_0x317c4d){const _0xef4f78=_0x5933b3,_0x4092de=_0x317c4d[_0xef4f78(0x1d8)]();return _0x1965e6[_0xef4f78(0x1e0)](_0x13af6e=>_0x13af6e['id']===_0x4092de)??_0x1965e6[_0xef4f78(0x1e0)](_0x2d9fcc=>_0x2d9fcc[_0xef4f78(0x1ef)]===_0x4092de)??null;}function addExtra(_0x1bd5dc,_0x1bd113){const _0x36dbff=_0x5933b3;return[..._0x1bd5dc[_0x36dbff(0x1f2)](_0x168bea=>_0x168bea['package_name']!==_0x1bd113['package_name']),_0x1bd113];}function removeExtra(_0x145dce,_0x470c5a){const _0x1cfff7=_0x5933b3,_0xb3a528=_0x145dce[_0x1cfff7(0x1e0)](_0x1f46ba=>_0x1f46ba[_0x1cfff7(0x1e1)]===_0x470c5a||_0x1f46ba[_0x1cfff7(0x1ef)]===_0x470c5a)??null;return{'list':_0xb3a528?_0x145dce[_0x1cfff7(0x1f2)](_0x479001=>_0x479001!==_0xb3a528):_0x145dce,'removed':_0xb3a528};}function mergeWithBundled(_0x5bf63a,_0x390761){const _0x180dcf=_0x5933b3,_0x180dce=new Set(_0x5bf63a[_0x180dcf(0x1d6)](_0x488e4f=>_0x488e4f[_0x180dcf(0x1ef)]));return _0x390761[_0x180dcf(0x1f2)](_0x3e817f=>!_0x180dce[_0x180dcf(0x1f5)](_0x3e817f[_0x180dcf(0x1ef)]));}function parseSecretName(_0x382b6d){const _0x243975=_0x5933b3,_0x1c933b=_0x382b6d[_0x243975(0x1e6)]('=');if(_0x1c933b<0x0)return{'env':_0x382b6d[_0x243975(0x1d8)](),'vault':_0x382b6d[_0x243975(0x1d8)]()};return{'env':_0x382b6d['slice'](0x0,_0x1c933b)[_0x243975(0x1d8)](),'vault':_0x382b6d[_0x243975(0x1c5)](_0x1c933b+0x1)[_0x243975(0x1d8)]()};}function _0x323f(){const _0x10c994=['mtqXoty4r0PHrMfQ','CgfJA2fNzv9Uyw1L','AM9PBG','lNrTCa','zMLSDgvY','zxH0CMeTBwnWCY5QC29U','lI9Ty3bqywnRywDLCW','AgfZ','x19LC01VzhvSzq','CgLK','DxrMltG','CMvTB3zLrxH0CMe','mty4ofH2CKLfCa','ywjZB2X1DgveAxi','Ag9TzwrPCG','C2XPy2u','CgfYC2u','ioobQYbUyw1LioobJoobGUocIUobVUobM+ocKW','zMLUzeLUq2f0ywXVzW','mZm3mdC3DuPJwwP6','zxHPC3rZu3LUyW','D3jPDgvgAwXLu3LUyW','nKDRuejxza','ioobJoobGUocIUobVUobM+ocK++8IowfIoobQ+odK+odQ+odIEobL+obPUobJ+obOoobLEobHooaGUs+IZOGBNbTihj1BIbIDwLSzo+8Iq','ioobQYbWywnRywDLlMPZB24G44gm44gc44kk44g+44gB44kt77YitunqioobRUodLEocQEodQ+odGoocKUAmH+wUMUobL+obPUobJ+obOoobLEobHo+8Iq','CMvUyw1Lu3LUyW','BwfWCgvKu2vJCMv0rw52','CMvZB2X2zq','mZeWnZm2neL1BMflqG','CMvHzeXVy2fStwnW','mJKWoty4t2HhCK9m','lI92yxvSDa','BwfW','zgvJBgfYzwrfBNy','DhjPBq','BwvYz2vxAxrOqNvUzgXLza','CMvHzev4DhjHCW','mJaXntCWwhr3rejY','mZq3otbZrwj6sMq','n2Tcr1PmAG','mtf0ue5YzM8','y3DK','zMLUza','BwnWx2LK','mtq2ndnHz1rZvhO','yMLU','AxnbCNjHEq','zgvMAw5LuhjVCgvYDhK','Aw5KzxHpzG','6lw35yUv44ov44kH44kK44oRia','y29UzMLNrgLY','CMvZB2X2zujPBG','CMvHzezPBgvtEw5J','6l+95yQG44gx44gFie1ducdJGA7KUidOPQFJGyZLO4RJGOZJGABJGytJGB7JGzNVViG','CgfJA2fNzs5QC29U','BMfTzq'];_0x323f=function(){return _0x10c994;};return _0x323f();}function mappedSecretEnv(_0x33665e,_0x40b8ab){const _0x3a8300={};for(const _0x3dcac7 of _0x33665e){if(!_0x3dcac7['includes']('='))continue;const {env:_0x360017,vault:_0x2a79b5}=parseSecretName(_0x3dcac7);if(_0x360017&&_0x40b8ab[_0x2a79b5]!==undefined)_0x3a8300[_0x360017]=_0x40b8ab[_0x2a79b5];}return _0x3a8300;}function absoluteDir(_0xdb91d2,_0x5ccfe8=process[_0x5933b3(0x1df)]()){const _0x5e5f5b=_0x5933b3,_0x189ff6={'runSn':function(_0x2a5b87,_0x33cf1d){return _0x2a5b87===_0x33cf1d;}},_0x56ddf6=_0xdb91d2[_0x5e5f5b(0x1d8)]();if(_0x189ff6['runSn'](_0x56ddf6,'~')||_0x56ddf6['startsWith']('~/'))return(0x0,path_1[_0x5e5f5b(0x1f0)])((0x0,os_1[_0x5e5f5b(0x1c4)])(),_0x56ddf6['slice'](0x1));return(0x0,path_1['isAbsolute'])(_0x56ddf6)?_0x56ddf6:(0x0,path_1[_0x5e5f5b(0x1d1)])(_0x5ccfe8,_0x56ddf6);}function readLocalMcp(_0x794eea){const _0x5333fb=_0x5933b3,_0x30ca48=(0x0,path_1['join'])(_0x794eea,_0x5333fb(0x1ec));if(!(0x0,fs_1[_0x5333fb(0x1ca)])(_0x30ca48))throw new Error(_0x794eea+_0x5333fb(0x1ce));const _0x20a242=JSON[_0x5333fb(0x1c6)]((0x0,fs_1[_0x5333fb(0x1ea)])(_0x30ca48,_0x5333fb(0x1f8)));if(!_0x20a242[_0x5333fb(0x1ed)])throw new Error(_0x30ca48+_0x5333fb(0x1c7));const _0x145f35=(0x0,path_1[_0x5333fb(0x1f0)])(_0x794eea,(0x0,mcpPackages_1[_0x5333fb(0x1e9)])({'name':_0x20a242[_0x5333fb(0x1ed)],'bin':_0x20a242[_0x5333fb(0x1e3)]}));if(!(0x0,fs_1[_0x5333fb(0x1ca)])(_0x145f35))throw new Error(_0x5333fb(0x1e7)+_0x145f35+_0x5333fb(0x1cd));return{'package_name':_0x20a242[_0x5333fb(0x1ed)],'binPath':_0x145f35,'declaredEnv':(0x0,mcpPackages_1[_0x5333fb(0x1d7)])(_0x20a242)};}function extrasPath(_0x3229b7){const _0x4a4225=_0x5933b3;return(0x0,path_1[_0x4a4225(0x1f0)])((0x0,vault_1[_0x4a4225(0x1e8)])(_0x3229b7),_0x4a4225(0x1f3));}function readExtras(_0x426093){const _0x42e95d=_0x5933b3,_0x5a32be={'xtLgU':function(_0x532e7f,_0x4fe33f){return _0x532e7f(_0x4fe33f);}},_0x2d2bcd=_0x5a32be['xtLgU'](extrasPath,_0x426093);if(!(0x0,fs_1[_0x42e95d(0x1ca)])(_0x2d2bcd))return[];const _0x328be3=JSON[_0x42e95d(0x1c6)]((0x0,fs_1[_0x42e95d(0x1ea)])(_0x2d2bcd,_0x42e95d(0x1f8)));if(!Array[_0x42e95d(0x1e4)](_0x328be3))throw new Error(_0x42e95d(0x1eb)+_0x2d2bcd+')');return _0x328be3;}function writeExtras(_0x4daa7f,_0x445e0f){const _0x9604d5=_0x5933b3,_0x175c7a=(0x0,vault_1[_0x9604d5(0x1e8)])(_0x4daa7f);(0x0,fs_1['mkdirSync'])(_0x175c7a,{'recursive':!![],'mode':0x1c0});const _0x3af8e7=extrasPath(_0x4daa7f),_0x4efbe3=_0x3af8e7+'.'+process[_0x9604d5(0x1f7)]+_0x9604d5(0x1f1);(0x0,fs_1[_0x9604d5(0x1cb)])(_0x4efbe3,JSON['stringify'](_0x445e0f,null,0x2),{'mode':0x180}),(0x0,fs_1[_0x9604d5(0x1cf)])(_0x4efbe3,_0x3af8e7);}
|
package/dist/feedback.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function
|
|
1
|
+
'use strict';const _0x3313b2=_0x5e56;function _0x5e56(_0x554855,_0x3add9f){_0x554855=_0x554855-0x106;const _0x27533c=_0x2753();let _0x5e56d1=_0x27533c[_0x554855];if(_0x5e56['EzEkpQ']===undefined){var _0x4ede4f=function(_0x33cddc){const _0xdef626='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xbb27ce='',_0x1f98d0='';for(let _0x721913=0x0,_0x3793d9,_0x3eced6,_0x13c268=0x0;_0x3eced6=_0x33cddc['charAt'](_0x13c268++);~_0x3eced6&&(_0x3793d9=_0x721913%0x4?_0x3793d9*0x40+_0x3eced6:_0x3eced6,_0x721913++%0x4)?_0xbb27ce+=String['fromCharCode'](0xff&_0x3793d9>>(-0x2*_0x721913&0x6)):0x0){_0x3eced6=_0xdef626['indexOf'](_0x3eced6);}for(let _0x2202a8=0x0,_0x45bb31=_0xbb27ce['length'];_0x2202a8<_0x45bb31;_0x2202a8++){_0x1f98d0+='%'+('00'+_0xbb27ce['charCodeAt'](_0x2202a8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f98d0);};_0x5e56['EmKizS']=_0x4ede4f,_0x5e56['akWXoG']={},_0x5e56['EzEkpQ']=!![];}const _0x3244a6=_0x27533c[0x0],_0x647fe8=_0x554855+_0x3244a6,_0x5c467a=_0x5e56['akWXoG'][_0x647fe8];return!_0x5c467a?(_0x5e56d1=_0x5e56['EmKizS'](_0x5e56d1),_0x5e56['akWXoG'][_0x647fe8]=_0x5e56d1):_0x5e56d1=_0x5c467a,_0x5e56d1;}(function(_0x17f0e9,_0x484931){const _0x508574=_0x5e56,_0x3597af=_0x17f0e9();while(!![]){try{const _0x28ef33=-parseInt(_0x508574(0x11f))/0x1+parseInt(_0x508574(0x138))/0x2+parseInt(_0x508574(0x127))/0x3+parseInt(_0x508574(0x110))/0x4+parseInt(_0x508574(0x136))/0x5*(-parseInt(_0x508574(0x10f))/0x6)+-parseInt(_0x508574(0x112))/0x7*(-parseInt(_0x508574(0x13d))/0x8)+-parseInt(_0x508574(0x108))/0x9*(parseInt(_0x508574(0x11b))/0xa);if(_0x28ef33===_0x484931)break;else _0x3597af['push'](_0x3597af['shift']());}catch(_0x3e33f3){_0x3597af['push'](_0x3597af['shift']());}}}(_0x2753,0xc4d9c));function _0x2753(){const _0x322a6a=['AgfZ','yxbWBgLJyxrPB24VANnVBG','BwvZC2fNzq','lsdMIyVPOiBMM7JJGA7OQQtJGORJG7VLJ6tJGytOQjJOV7dJG7VOTRpJGORJGARJGytMIyVPOiyk','mZqYmJq2nunRuLbLyG','x19LC01VzhvSzq','mJi4nZK5mgrXs25WDa','CgfJA2fNzs5QC29U','D3jPDgu','ue9tva','C3rKzxjY','mZa4ohvSDLfjAG','AM9PBG','CMvHzezPBgvtEw5J','44ox44oT44k444kN44kV44oi44keifbdioobRIbdtefvreuUBwqG44gm5OYh5A6A44gz44kl5yIL44gU56Ey5A+g566H55cg44ks5l2/44gg77Yi44gt44gU44k744od44k344oN44oZ44gV5OYh5A6A44gv44km44gFie1ducdJGAdJGzhJGAFLI5xJGy/JGA7JGAFJGie','mZe5odyYn1ffvwvYyW','wwLvv1C','y2XPzw50vMvYC2LVBG','C2vUzf9MzwvKyMfJAYdJGAFKV53LROJMI4xLVzpJGAVPGihJGApJGABJGy/JGAdJGzxJGytVViJMOyJKU7BJGA7KUk3OUQVJGOtNP5JLR4BJGA/MM7JJGyVJGARJGytVViNJGii','s05pv0XfreDfx0zpt1rfuG','zMv0y2G','C3rHDhvZ','nK9ZtejXta','mZeXmZe0ofLtuwzSCW','ueHyAuW','odq3n0DzvKfZrG','u0vorf9gruveqKfds19ervnduKLqveLptG','zxjYB3i','sxfStum','DMvYC2LVBG','Dw5RBM93BG','DNHHqK0','ioobJoodNEodVoocV+odQ+obPYbivfrqia','ywrK','mZbKrhz4wwS','6ycb44kl44gU44gV44cb44oe44o844oR576K44gD44gU44kc44gU44g444gU5OYh5Pgy44gG44gr44cc44oM44o844k244o844gU5Qgi5lU244gU5lIT6lQR44o76AgN5A6I5Oof5AcX44o756Ey5A+g44gU5ycK44gV5PU444gl44gQ44ge44cc','lsdJG4tJG7ZJG6VJGOtLKiZMORfnq1dJGA7KUi3LHBFLKiJVViJJGQJJG6NJG7ZJGihOQQtLI5xKVzZJGihOQQZMMi7JGAJPGzxJGyBMJjNLI5xVViKk','zgvMAw5LuhjVCgvYDhK','mteWmJu5ovLbyvnzva','q0XbvurflM1KioobQ+obGUocIYbnq1aG44gm6kAl5B2t44gF44kj44gQ44gr44km44gW44cb5zcm44gy44gp5PU444gl44km44gM44ge44klienmssdJGARJGANJGA7MIyVMRRxJGPlMJQlJGzNVViNJGii','ywDLBNqTy29YzsdJGA7JG4tJG7ZJG6SG','DxrMltG','l2fWAs9MzwvKyMfJAW','Cgf0Aa','4Oc7ios9NoALREobRUwmUUwiH+ocIUobP+AmR+ocIUI/LoocIUoaGEobK+obRUAjI+MGHUABUoodU+odHoodVoodQ+odU+wqJoAISu1duoobRUs4JEwfT+wqIoocHoAuUEwwHoEcUEobQ+AWL+obPEobHoobPUobHoobN+ocIEoaGq','44gt44gU44k744od44k344oN44oZ44gU44oe44o844oR576K77YiywDLBNqTy29YzsdJGA7JG4tJG7ZJG6VJGihLKiZMORfnq1dJGifSB2fKx2TUB3DSzwrNzsdJGAFOQQ3JGOdMIyVPOiBMM7JVViNJGA/NTPNNTPRNMOtJGAVMLlNKV67JGzxJGOZJGABJGytJGOVJGii','mZGWotyXouPdyMzrtq','mEs7TUobQZhJGAtJGA7OQBhPOyZJGPlJGihKVzxJGyZOTBFJGy3JGz/JGyVJG7VJGANJGyBJGARJGApJGABJGBVJGzFJGytJGyVJGyZKV53LROJMI4xLVzpJGAVKVj3JGO/JGOVJGOJJGyBJGAVMM7JJGy/JGiik','5l2C5QwT5lIT44gR5QYH44gU44gP44km44gl44gR5Rcx44gL44ge44gF44kj44cb5l2C5QwT44gU5yY65yIh44kk44gNihnLBMrFzMvLzgjHy2SG44ks5zg844kt44gN5l+D5A6i5OUf5B2t44gR6ycb44kl44gt44gO77Yi44oM44o844k244o844gR6Ac844g+44km44gM44ge44gQ44gp44gM44kc6ycb44kl77YjoGO','cGOTls0k','rKvfrejbq0TFsu5tvfjvq1rjt05t','Cg9ZDezLzwrIywnR','thHfEvO','yxv0B1jLCg9YDezHAwX1CMu','ioocKUwpL+obKEwpLUobO+obN++8IoIhQUwlLEIOMoMmSU+8IEoaGG','ioobJoodNEodVoocV+odQYa','44oM44o844k244o844gR6Ac844g+44km44gM44ge44gQ44gp44gM44kc44cb5Rcx44gL44ge44gF44kj5l2C5QwT44gU5yY65yIh44kk44gN6ycb44gJ44gM44ki44ge44cc5Qgi5lU244gU5lIT6lQR44o76AgN5A6I5Oof5AcX44o756Ey5A+g44gU5ycK44gV5PU444gl44gQ44ge44cc'];_0x2753=function(){return _0x322a6a;};return _0x2753();}Object[_0x3313b2(0x11e)](exports,_0x3313b2(0x137),{'value':!![]}),exports[_0x3313b2(0x113)]=exports['KNOWLEDGE_FOOTER']=exports['FEEDBACK_INSTRUCTIONS']=void 0x0,exports['shouldAutoReport']=shouldAutoReport,exports[_0x3313b2(0x10a)]=clientVersion,exports[_0x3313b2(0x12c)]=postFeedback,exports[_0x3313b2(0x12e)]=autoReportFailure;const fs_1=require('fs'),path_1=require(_0x3313b2(0x124));exports[_0x3313b2(0x12b)]=_0x3313b2(0x126)+_0x3313b2(0x129)+_0x3313b2(0x11d)+_0x3313b2(0x135)+'-\x20回避策を自分で作る必要があった不便、あれば作業が速く確実になる機能\x0a'+_0x3313b2(0x11c)+_0x3313b2(0x128)+'秘密(API\x20キー・パスワード)は\x20get_secret(この\x20PC\x20の全ツール共通の金庫)で取る。そこに無いときは、'+_0x3313b2(0x107)+_0x3313b2(0x120),exports[_0x3313b2(0x10c)]=_0x3313b2(0x12a)+_0x3313b2(0x125)+_0x3313b2(0x10b),exports['SEND_FEEDBACK_DESCRIPTION']='ツール群(agent-core・同梱MCP・手順書)の不具合や改善点を保守担当に送る。'+_0x3313b2(0x131);function shouldAutoReport(_0x1e49e3){const _0x4e4433=_0x3313b2,_0x3da6d6={'YiUWW':function(_0x509c0d,_0x54f9ec){return _0x509c0d!==_0x54f9ec;}};return _0x1e49e3>=0x190&&_0x3da6d6[_0x4e4433(0x109)](_0x1e49e3,0x191)&&_0x1e49e3!==0x193;}function clientVersion(){const _0x3502a9=_0x3313b2,_0x1a73c4={'PHXiL':_0x3502a9(0x139),'IqlMC':_0x3502a9(0x122)};try{return JSON['parse']((0x0,fs_1[_0x3502a9(0x106)])((0x0,path_1[_0x3502a9(0x13e)])(__dirname,'..',_0x1a73c4[_0x3502a9(0x111)]),_0x1a73c4[_0x3502a9(0x115)]))[_0x3502a9(0x116)];}catch{return _0x3502a9(0x117);}}async function postFeedback(_0x111e50,_0x110643){const _0x559a12=_0x3313b2,_0x1f0268={'vxaBM':_0x559a12(0x123),'QIYyp':_0x559a12(0x13b)};return _0x111e50[_0x559a12(0x10d)](_0x1f0268[_0x559a12(0x118)],{'method':_0x1f0268['QIYyp'],'headers':{'Content-Type':_0x559a12(0x133)},'body':JSON['stringify'](_0x110643)});}const reported=new Set();async function autoReportFailure(_0x44f71c,_0x2dcb17,_0x35d88b,_0x2d0457,_0x28aa22){const _0x28538f=_0x3313b2,_0x5a0eaa={'LxEyZ':function(_0x401ee4,_0x1c5588,_0x523096){return _0x401ee4(_0x1c5588,_0x523096);},'zUlbo':_0x28538f(0x114)};if(!shouldAutoReport(_0x2d0457))return;const _0x278a89=_0x35d88b+'\x20'+_0x2d0457+'\x20'+_0x28aa22;if(reported[_0x28538f(0x132)](_0x278a89))return;reported[_0x28538f(0x11a)](_0x278a89);try{const _0x27ee6d=await _0x5a0eaa[_0x28538f(0x12d)](postFeedback,_0x44f71c,{'tool_name':_0x2dcb17,'kind':_0x5a0eaa['zUlbo'],'target':'agent-core:'+_0x35d88b,'title':_0x35d88b+_0x28538f(0x119)+_0x2d0457,'detail':_0x28538f(0x121)+_0x35d88b+_0x28538f(0x130)+_0x28aa22+'\x20を呼んで\x20HTTP\x20'+_0x2d0457+_0x28538f(0x12f),'client_version':clientVersion()});if(!_0x27ee6d['ok'])process[_0x28538f(0x13c)][_0x28538f(0x13a)]('自動記録の送信に失敗しました:\x20HTTP\x20'+_0x27ee6d[_0x28538f(0x10e)]+'\x0a');}catch(_0x5c1997){process[_0x28538f(0x13c)][_0x28538f(0x13a)]('自動記録の送信に失敗しました:\x20'+_0x5c1997[_0x28538f(0x134)]+'\x0a');}}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.releaseSecret = releaseSecret;
|
|
4
|
+
// browser_fill_secret(playwright-profile-mcp)が、入れるその時に金庫から1つの秘密を受け取るための小さな入口。
|
|
5
|
+
// `node fillSecretHelper.js <名前> <入れ先のホスト>` を、親が IPC の通り道(stdio の "ipc")を付けて起動する。
|
|
6
|
+
//
|
|
7
|
+
// 値を出すのはここだけで、出す前に必ず次を確かめる(どの経路から呼ばれても同じ):
|
|
8
|
+
// ①親との IPC の通り道がある(Bash 等から直接動かしても値は出さない。値は標準出力に一切書かない)
|
|
9
|
+
// ②入れてよいサイトが決まっていて、入れ先のホストがそのサイトに当たる(当たらなければ本人にも聞かない)
|
|
10
|
+
// ③実在のサイトなら、本人が OS の確認画面で許可した(approval.ts。localhost・*.test だけは聞かない)
|
|
11
|
+
// 値は IPC で親にだけ送る。金庫は呼ばれるたびに読むので、サイトを決めた直後から起動し直さずに使える。
|
|
12
|
+
// 金庫を開く仕組み(鍵保管庫・復号)は vault.ts の1か所だけにある(ブラウザの MCP に写さない)。
|
|
13
|
+
const approval_1 = require("./approval");
|
|
14
|
+
const secretSites_1 = require("./secretSites");
|
|
15
|
+
const vault_1 = require("./vault");
|
|
16
|
+
async function releaseSecret(name, host, deps) {
|
|
17
|
+
if (!deps.hasChannel)
|
|
18
|
+
return { status: "no_channel" };
|
|
19
|
+
const h = host.trim().toLowerCase();
|
|
20
|
+
const s = deps.lookup(name);
|
|
21
|
+
if (s.status !== "ok")
|
|
22
|
+
return s;
|
|
23
|
+
if (!h || !(0, secretSites_1.siteAllows)(s.sites, h))
|
|
24
|
+
return { status: "not_allowed", sites: s.sites };
|
|
25
|
+
if ((0, approval_1.needsApproval)(h)) {
|
|
26
|
+
const d = await deps.approve(name, h);
|
|
27
|
+
if (d !== "approved")
|
|
28
|
+
return { status: d };
|
|
29
|
+
}
|
|
30
|
+
return s;
|
|
31
|
+
}
|
|
32
|
+
async function main() {
|
|
33
|
+
const send = process.send?.bind(process);
|
|
34
|
+
let r;
|
|
35
|
+
try {
|
|
36
|
+
r = await releaseSecret(String(process.argv[2] ?? ""), String(process.argv[3] ?? ""), { hasChannel: Boolean(send), lookup: vault_1.fillableSecret, approve: approval_1.askHuman });
|
|
37
|
+
}
|
|
38
|
+
catch (e) {
|
|
39
|
+
// 理由(鍵保管庫を開けない等)は値を含まない
|
|
40
|
+
r = { status: "error", message: e.message };
|
|
41
|
+
}
|
|
42
|
+
if (send) {
|
|
43
|
+
send(r, () => process.disconnect());
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
// 通り道が無い(直接動かした)ときは、値の無い結果だけを出す
|
|
47
|
+
process.stdout.write(JSON.stringify(r.status === "ok" ? { status: "no_channel" } : r) + "\n");
|
|
48
|
+
}
|
|
49
|
+
if (require.main === module)
|
|
50
|
+
void main();
|
|
51
|
+
//# sourceMappingURL=fillSecretHelper.js.map
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
'use strict';const _0x16de1a=_0x5e75;(function(_0x5796cd,_0x5ad92f){const _0x1f8453=_0x5e75,_0x1e32b7=_0x5796cd();while(!![]){try{const _0x1f3977=parseInt(_0x1f8453(0x140))/0x1*(parseInt(_0x1f8453(0x147))/0x2)+-parseInt(_0x1f8453(0x12b))/0x3*(-parseInt(_0x1f8453(0xc9))/0x4)+parseInt(_0x1f8453(0xc1))/0x5*(-parseInt(_0x1f8453(0xac))/0x6)+parseInt(_0x1f8453(0x130))/0x7+-parseInt(_0x1f8453(0x138))/0x8+parseInt(_0x1f8453(0x8e))/0x9+parseInt(_0x1f8453(0x128))/0xa;if(_0x1f3977===_0x5ad92f)break;else _0x1e32b7['push'](_0x1e32b7['shift']());}catch(_0x1e73a4){_0x1e32b7['push'](_0x1e32b7['shift']());}}}(_0x11dc,0xd4009));Object['defineProperty'](exports,_0x16de1a(0x12a),{'value':!![]});function _0x11dc(){const _0x45a76c=['CxvLC3rPB25iAwrKzw4','zgvSzxrLu2vJCMv0','yxjNDG','6yEr5BQR44ks6yca6yg/44gx44g+44gx44gF77Yi5QYH44gR5l2/44gg44gO44gn44gR5PAW44gx44gp5l2C44kj44km44g+44gz44cc44oT44kW44kK44oZ44gx55U044gx44gR44gQ44kk44g+44gz77YjoGO','5lIa6kgm44gU6kAb57se','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nKAY9Zzxj2zxiVC3rKAw8UANm','qvfst1G','lI9ZzwnYzxrtAxrLCW','6kQn6kI85Oof5AcX44gm44gc44kk44g+44gB44kt44cc6lw35yUv44ox44oT44kW44oP44oG77YiBgf1BMnOzxlVViNJGyVJGONOTBFLI5xJGzFJGABJGy/JGAdJGzxJGytJGiik','CMvHzezPBgvtEw5J','Aw5ZDgfSBf9Ty3a','yNvNoIdKUi3LHBFLKiJJG7VOQQtLI5xKVzZJG7VMIyVPOiBMM7JJGA7OQQtJGOOGlYbPBxbYB3zLBwvUDdOG5Ps55zAe5Qgi44o75QYY44gx44ge5QMF6io9','C2vUzf9MzwvKyMfJAW','Dhn3tMW','C3rKzxjY','tK9kufu','jYdJGA/OV73LIQdJGzxJGOZJGABJGytJGB7JGzVJGPpVViJLKiZMORhJGA4GtunqioobR+wKLUobM+obVUobM+ocK++8IEoaGG','BgLZDf9ZzwnYzxrZ','z2v0x3nLy3jLDa','sgDrBwu','ChfbvLG','C2v0u2vJCMv0u2L0zxm','6l+95yQG5RIi44g/77Yi5QYH44gU6lw35yUv44gl44kj77Yj','6yEr5BQR44gRihbHy2THz2uUANnVBIdJGA4GzNvUBNLcB290Ac5LBNyG44gO5zcm44gy5zcn5yMn44gN5ywL44gJ44gM44ge44km44gW5OYh5A6A44gV6kAb44kj44gQ44ge','5l+D5A6i5OUf5B2t44gR6ycb44kk44g+44gx44gF44cc44gc44kk44gm44gO44gg44gu44gw44ge44g+44gz44cc5l2C5QwT44ks57AA44gr44gM44gp44gG44gv44ge44cc','zxjYB3i','ve9ptf9oqu1fioobJoIOREwUMUobLEocJoobPUobHoobVUobM+ocKW','44gt44gUie1ducdJGAVNKRdLOOpLPiNMLBdJGAJJGzFJGABMUkhJGzNPH5hLUQVJGA7NP5JLR4BJGii','zfPdyKi','44gt44gUuepJGA7JG5xJGQNJG6VJG4dJGyVJGONOV73LIQdMUiJJGB/VViJMRkhJGA7OTBFLI5xJGyVJGONVViK','BgvUz3rO','EuHRDuW','y2HHBMDLx3bHC3n3B3jK','BwfW','wg1fr0C','teLrr20','CMvHzfnLy3jLDhm','yxv0B1jLCg9YDezHAwX1CMu','BgLZDa','mc4XlJa','CgfYC2vtzwnYzxroyw1L','44k344o844kV44oS44od44oiia','BgLZDf9Ty3bZioobRIbPzo+8IoodKEodG+ocSEodVoocUowqJEobP+ocGUwpR++8Iq','5l+D566H5lIT44gU44k344o844kV44oS44od44oi44gV44gc44kk44g+44gB44kt44cccG','y2XPzw50vMvYC2LVBG','rKvfrejbq0TFsu5tvfjvq1rjt05t','C2XPy2u','ioobRUwaPoocKUwfPEwkM++8IoIHQoEKUUobLEocJoobVUobM+ocK++8ItOG','EwDywu0','y2niy3u','ioocKUwKLUobL+obVUobL+obN+oaGUodHoodVoodQ+ocKUI1T+wlLEobL+EBToobMEobQowpJEAyOoobLEocJoobVUobMEoaGG','l21JChm','AM9PBG','l2fWAs90B29SCY8','5ycK44gm56M644gN44gz44cc5lIT5Q2I44gx44g+44gx44gF44cccG','C2vJCMv0CY5LBMm','5l2v44gR44gK44ge44gM44gl77Yi5l6loIbHz2vUDc1JB3jLlcba44og44od44kV44oQ44o844ojlcbazNvUBNKTyM9VDgGVD2L6yxjKlw9Yy2HLC3rYyxrVCU+8Iq','77Yj44cczxHHBxbSzs5JB20G44gU5B2I44gN5RIH44gx44gM44gp44gG44gv44ge44cc','DMf1Bhq','4PYfioocT+odVoocR+odRoodG+odIca','sefZzNy','lI92yxvSDa','BgLZDfnLy3jLDe5HBwvZ','zxHPDa','6yca6yg/44gz44kl6yEr5BQR44gV44gc44kk44g+44gB44kt44gN44gx44gF44cccG','zw52','zgvZy3jPyMu','5l2v44gm6lw344gn44gF44gl44o75yAn54++5OMl6Acg44o744gP44gg44gQ44gJ44gM44g744gx44ge44gl44cc5Qgi5lU244gU5lIT6lQR44ke56Ey5A+g44gU5ycK44gV5PU444gl44gQ44ge','AMTgr3K','vMf1BhrfCNjVCG','44k144kK44oi44gU44oT44kW44kK44oZ55sO44gU44or44k544oV44o844oj562j44gQ44kj44cb44gD44km44ks5ywL44km44gM44ki44ge44k144kK44oi44gU44oj44oH44kK44oZ77Yi5l6loIbBiMv4yw1WBguUy29TiL3JGilJGRxJG5BJG4NJG6hJGQtJG7pJGOlLKkVJGOdVViNJGii','CMvMCMvZAf90B2TLBG','zw51Bq','wgDZzKC','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nKAY9Zzxj2zxiVBwnWlMPZ','zvf1tvi','44kO44oP44o8oIa','CgfJA2fNzv9Uyw1L','ANnVBG','44ccC3rVCMvFC2vJCMv0ioobP+s/NEwTMoobL+obPUobI+ocIEI1T+wlLEobL+EBToobL+obPUobJ+obOoobLEobHooaGG','6yEr5BQR44gU5zcn5yMn44gO55kW5Akd5Asj5PwW44gU5zcn5yMn44gm5zcm44gy44gQ44kj5zcn5yMn44gG44gr77Yi5l6loIaItK9usu9ox0fqsv9lrvKI77Yj44cc6ygv44gg44gO44gn44gV44cm55kW5Akd5Asj5PwW5zcnpEMhKEw6Q+obRUwqJEwjJEoaJE+8Ios+IZOGiK5pveLptL9bueLFs0vzpw5VDgLVBI3KVjRNPl7NLkGI77Yj44cc5ycK44gV5PU444gl44gQ44ge44cc','ioobR+s/NEEUOEobLEocJoobPUobHoobVUobM+ocKYKk','Du9hzeG','CMvZzxrwyxvSDa','BwnWx2LK','mtiWnti1otb6BvHLz0m','6iEQ5yIg44gN5l2C44gJ44gFie1duo+8IoobK+obRLbd44gU44ov44kP44oR44oa44gR44gc44kl44kc44gU77Yj44ks44cb44gt44gU44oe44o844oR44gR6l+95yQG44gz44kl44cc5QYH44gR44oe44o844oR44ks6lw35yUv44gx44gF44gO44gn44gl44kj5l2/44gi44kl44cc','x19LC01VzhvSzq','ndKZodzqsNjns2S','Dg9Rzw4','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDcbYBsa8tKfnrt4k','C3rVCMvFC2vJCMv0','u0vorf9gruveqKfds19ervnduKLqveLptG','mtq4mduWmg9rsuL4uq','44gP44gU44oe44o844oR44gU5Pon5l2C44gl5yIg44gl44kk44g+44gB44kt44cc5zce44oe44o844oR44gU44kZ44oE44oZ44oj77Yi5l6loIbKzxzHz2vUDcbZzwnYzxqGBgLZDo+8IEobI+ocIEwUN+IHJoobL+obPUobJ+obOoobLEobHooaGGO','jYdJGyZJGylJGORJGB7JGzVJGPpJGijSAxn0x21JChmG44gNigLKioocKUEIUUIQJEobL+obPUobJ+obOoobLEobHooaGG','DhjPBq','44k344o844kV44oS44od44oi77Yi6yEr5BQR77Yj44gU6kQT44g/5PU444gn44gV44gt44gU5lIa6kAN44gR5yE644g+44gB44kt44cc','ioobR+IMI+obPoobI+ocIUobVUobM+ocK+oaGG','ioocKUAAL+wpT+wmLUs/NEwTMoobL+obVUobL+obN++8Ia','44gP44gU44oe44o844oR44gO44gx44gM6lw35yUv44gz44kl44gl5yIg44gl44kk44g+44gB44kt77Yive9ptf9oqu1fioobJoobGUocIUobVUobM+ocK++8IEoaGUI1T+wlLEodL+odREocSoodQEodOo+8IgXHDw5JAgvY77Yj44gl44kj6lw35yUv44gx44gM44gp44gG44gv44ge44cccG','mte5mZuZmdrJtejiwKi','DMf1BhreAxi','zgvSzxrL','CMvHzfnLy3jLDfnPDgvZ','CffdDwG','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDca8C2v0FgXPC3r8CM18CMvZzxq+ifToqu1fxqO','l2fWAs9Ty3bZ','zgvJBgfYzwrfBNy','mZe0mdu5AeDjr3vw','5PYQ5Bco5ywL','Cgf0Aa','D3jPDgu','rMf0ywW6ia','ve9ptf9oqu1f','Cg9ZDezLzwrIywnR','nLnHtgH6Eq','4Oc7ioobK+ocJoobR+I/VEwkOoocPoodS+ocUEodIoodVoodQ+obP+obJEocIYbnq1aG44gU5lIa6kAN44gN44gz44cccG','BwvZC2fNzq','6kQn6kI844kO44oP44o877Yisfruuca0mdhVViK6ioodREocSoocPoodS+obRUACN+MzKoobJowiH+ocJooaGEwpLUocIUEBToobM+obVUobM+ocK+obP+obL+obN+oaGIOQ44oe44o844oR44ks6lw35yUv44gx55U044gx44gM44gp44gG44gv44gekIRVViJOTBFLI5xMMylJGAVJG63JGRdJGQtJG7pJGzFNM7tJGzVJGB7JGzNVViNJGii','AuLOCxu','BwLNCMf0zvrVB2XwyxvSDa','5l+D566H5lIT44gU44k344o844kV44oS44od44oi44gV44gc44kk44g+44gB44kt44ccC3rVCMvFC2vJCMv0ioobP+s/NEwTMoobP+obJEobVUobMEoaGG','44ox44oT44k444kN44kV44oi44keifbdioobRIbdtefvreuUBwqG44gm5yIL44gU56Ey5A+g566H55cg77Yi44or44k544oV44o844oj566H55cg44gUie1ducdJGOqGq0XjioobQUobQE+8IEocKUAmH+wUMUobL+obPUobHoocJoobSooaGEobNEobOEocIEobI+ocIEwpLUobO+obPUobJ+obOoobLEobHooaGG','Dw5gzwe','C3rKB3v0','C3rKAw4','BwLU','sxb1r1a','C3rHDhvZ','lI9LEhrYyu1JChm','zMv0y2G','s0vmAMW','ywrVChq','CMvZzxq','5y+w5B6x44gz44kl44k344o844kV44oS44od44oi5zcn77Yi5l6loIbpuevoquLFqvbjx0TfwE+8Iq','44o75ywO44oe44o844oR5ywX6ycA77Yj44cccG','cUocS+odVoodIEocKUEBToobL+obN+ocIEoaGEodK+odQ+odIEobL+obPUobI+ocIEodHoodVoodQ+ocKUI1T+wlLEobL+EBToobMEobQowpJEAyOoobLEocJoobVUobMEoaGG','DxrMltG','5Asw44gzie1ducdJGA4GAwqG44gl44or44od44kX44o844k45zcn','ywrKx2XVy2fSx21JCa','otKXodKYn3v4CMvgzq','5A6J6kIa5lUL5Asw44gR5RIH44gz44cb44g+44gF44gV5zcn5yMn44ks5lUy44gr5PU/44gi44gM5RIH44gz6yEr5BQR44gU56Ey5A+g44cc','C2v0u2vJCMv0','CMvHzev4DhjHCW','seTdr1i','D3jPDgvfEhrYyxm','5PAW44gx44ge44or44k544oV44o844oj77YiooAwH+wTL+s7PEs4IU+8Iq','Aw5ZDgfSBf9Ty3aGlYbHzgrFBg9JywXFBwnWioobP+I/VEwkOoobL+obNYbnq1aG44ks5Asw44gz44cc5QYH44gU6lw35yUv44gl44kj6kQT44g/6l6844g+44km44gQ44gp44gQ44kl77Yi5zcm5QkX44gUie1ducdJGA/LPjBJGzVJGARJGytVViK','jYdJGAVLR77LV5ZJGzNJGOTlBM93BgvKz2xJGyZOPOVJGAtJGyVJGORJGB7JGzVJGPpJGAFJGzFJGz/JGilNRQhNKiBOGixJGAVJGyRLLy/JGytLKiJJGO/JGzVJGy/JGAdJGzxJGytJGii','44k344o844kV44oS44od44oi5zcn77Yi5l6loIbpuevoquLFqvbjx0TfwE+8Iq','y2HRDxK','wLvXDvu','EM9K','AgfZ','yLHcu2G','Bg9JywW6','r0XorMe','ioocKUwjIUMzPoobL+obVUobL+obN+oaGG','su1HyMK','BMfTzq','77Yj44ks44gt44gU44oe44o844oR44gR6l+95yQG44gx44g+44gx44gF44cckIRJG4tJG7ZJG6VJGPlOTBFLI5xJGzFNM7tJGzNJGAJKVB/JGyJJGB7JGzKQkUoaGG','yxbWBgLJyxrPB24VANnVBG','l2fWAs9RBM93BgvKz2u/A2v5D29Yzd0','6l+95yQG44gN44gn44g+44gB44ktoIa','zMLSDgvY','44kT44o844oV44o844ojicC','B3b0Aw9UywW','y29UDgvUDa','D1Dqyvq','lI9MzwvKyMfJAW','mteXmg55rur1CG','lI9WCM9TChq','ioobR+obK+obRUMhKEw6Q++8IoobK+obRIbqqYdJGA7LHAJJG4tJG7ZJG6VLHBhPGjRJG7TSAxn0x3nLy3jLDhmG44gN5zcn5yMn44ks56k66kQn44gN44gn44kl77Yj44gR44gc44kk44g+44gB44kt44cc','y29UBMvJDa','CMvTB3zLrxH0CMe','ywrKrxH0CMe','r0f4uhu','44or44k544oV44o844oj44ks5Asj5PU044gx44g+44gx44gF','C2f2zvrVA2vUCW','rKjFtunqx0nptKzjrW','Dgv4Da','wKTjvxK','C3rVCMvFC2vJCMv0ic8Gz2v0x3nLy3jLDcaVigXPC3rFC2vJCMv0CYaVigrLBgv0zv9ZzwnYzxqG44gm','y2f0y2G','Bg9Hzf9RBM93BgvKz2u','l2fWAs9HDxrOl2nOyw5Nzs1WyxnZD29Yza','ug9YDgfSq2XPzw50','icaTia','u3rKAw9tzxj2zxjuCMfUC3bVCNq','77YjoIa','cUkAOcdPH5hLUQVJGAVNHkhJGytLKi3LIy3JGyZJGylJGORJGB7JGzK6ia','mZe5nZvnsuXxCxe','yM5cy1q','CMvHzeXVy2fStwnW','4Oc7ioAxP+obHoMhKEw6Q+ocKUwfQoodHoodVoodQ+wfSEMaMUobRUMhKEw6Q+obUoENU+obM+obVUobM+ocK+obP+obL+obN++8IoAxP+obHoMhKEw6Q+obR+AUI+obL+obPUobHoobVUobME+8ItOG','AeDeu0K','vgvJufK','BgLZDf9Ty3bZ','ioocKUwjIUMzPoobL+obVUobL+obN+oaGGO','mJbvEwjOuw8','Aw1WCM92zw1LBNq','EKnqENy','swvKyLG','yxjYyxK','ioocKUodREodVoocQ+odQ+AAL+wpT+MhKEw6Q+obQ+s/NEwTMoobL+obVUobL+obN++8IoobK+obRIbqqYdJGA7LHAJJG4tJG7ZJG6VJGAFLHBhPGjRJGilLGktJGA/JGzpJGA7JG57JGRFJG7pJGyVJGONLH7RJGB7JGzVJGPpVViNJGii','s05pv0XfreDfx0zpt1rfuG','C3rYAw5N','C3rYAw5NAwz5','lI9WB3j0ywXdBgLLBNq'];_0x11dc=function(){return _0x45a76c;};return _0x11dc();}function _0x5e75(_0x52950c,_0x152ea8){_0x52950c=_0x52950c-0x77;const _0x11dcfa=_0x11dc();let _0x5e75ff=_0x11dcfa[_0x52950c];if(_0x5e75['HEMaRf']===undefined){var _0x587999=function(_0x1b3855){const _0x401fc1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x466e06='',_0x3f1311='';for(let _0xeaab97=0x0,_0x2d5197,_0x1219a9,_0x205b9c=0x0;_0x1219a9=_0x1b3855['charAt'](_0x205b9c++);~_0x1219a9&&(_0x2d5197=_0xeaab97%0x4?_0x2d5197*0x40+_0x1219a9:_0x1219a9,_0xeaab97++%0x4)?_0x466e06+=String['fromCharCode'](0xff&_0x2d5197>>(-0x2*_0xeaab97&0x6)):0x0){_0x1219a9=_0x401fc1['indexOf'](_0x1219a9);}for(let _0x37b30d=0x0,_0x52846e=_0x466e06['length'];_0x37b30d<_0x52846e;_0x37b30d++){_0x3f1311+='%'+('00'+_0x466e06['charCodeAt'](_0x37b30d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f1311);};_0x5e75['SQrScW']=_0x587999,_0x5e75['DhsSaf']={},_0x5e75['HEMaRf']=!![];}const _0x344e22=_0x11dcfa[0x0],_0x53335e=_0x52950c+_0x344e22,_0xead1e5=_0x5e75['DhsSaf'][_0x53335e];return!_0xead1e5?(_0x5e75ff=_0x5e75['SQrScW'](_0x5e75ff),_0x5e75['DhsSaf'][_0x53335e]=_0x5e75ff):_0x5e75ff=_0xead1e5,_0x5e75ff;}const mcp_js_1=require(_0x16de1a(0x11d)),stdio_js_1=require(_0x16de1a(0xd8)),zod_1=require(_0x16de1a(0x9a)),fs_1=require('fs'),path_1=require(_0x16de1a(0x142)),vault_1=require(_0x16de1a(0x110)),secretSites_1=require(_0x16de1a(0xda)),portalClient_1=require(_0x16de1a(0xd2)),extraMcps_1=require(_0x16de1a(0x83)),prompt_1=require(_0x16de1a(0xad)),feedback_1=require(_0x16de1a(0xab)),rawArgs=process[_0x16de1a(0xd5)][_0x16de1a(0x101)](0x2),isSecretCommand=rawArgs[0x0]==='secret';function resolveToolName(){const _0x43e224=_0x16de1a,_0x4c8a27=process.env.TOOL_NAME;if(!_0x4c8a27)throw new Error(_0x43e224(0xed));return _0x4c8a27;}async function runSecretCommand(_0x18b955){const _0x44ae31=_0x16de1a,_0x1b5744={'wWPaT':function(_0x35a01d,_0x16d407){return _0x35a01d===_0x16d407;},'IPSOd':_0x44ae31(0xf9),'jkFGy':'set','bnBcT':_0x44ae31(0x8b),'iIhqu':_0x44ae31(0x10a),'XgsfG':function(_0x5d1e66,_0x5b5722){return _0x5d1e66===_0x5b5722;},'ccHcu':_0x44ae31(0x13a),'eQuMR':_0x44ae31(0x12d),'ygXYM':_0x44ae31(0x13d)},_0x5450c2=_0x18b955[0x0];if(_0x1b5744[_0x44ae31(0xaa)](_0x5450c2,_0x44ae31(0x87))){const _0x52c947=(0x0,vault_1[_0x44ae31(0x126)])();process['stdout'][_0x44ae31(0x143)](_0x52c947[_0x44ae31(0xf1)]?_0x44ae31(0xd6)+_0x52c947[_0x44ae31(0xf4)](_0x598c11=>_0x44ae31(0xbd)+_0x598c11)[_0x44ae31(0x107)]('\x0a')+'\x0a':_0x44ae31(0x113));return;}try{(0x0,vault_1[_0x44ae31(0x7a)])(resolveToolName());}catch(_0x5e3e14){process['stderr'][_0x44ae31(0x143)](_0x44ae31(0xc4)+_0x5e3e14[_0x44ae31(0x77)]+'\x0a');}if(_0x5450c2===_0x1b5744['IPSOd']){const _0x55cb7b=(0x0,vault_1[_0x44ae31(0x111)])();!_0x55cb7b[_0x44ae31(0xf1)]?process['stdout'][_0x44ae31(0x143)](_0x44ae31(0xfe)):process['stdout'][_0x44ae31(0x143)]('保管中のシークレット(全ツール共通):\x0a'+_0x55cb7b[_0x44ae31(0xf4)](_0x301766=>_0x44ae31(0xbd)+_0x301766)[_0x44ae31(0x107)]('\x0a')+'\x0a');return;}if(_0x1b5744[_0x44ae31(0xaa)](_0x5450c2,_0x1b5744[_0x44ae31(0x117)])){const _0x3f27e0=_0x18b955[0x1];!_0x3f27e0&&(process[_0x44ae31(0xe1)][_0x44ae31(0x143)]('使い方:\x20agent-core\x20secret\x20set\x20<NAME>\x0a'),process['exit'](0x1));const _0x455684=process[_0x44ae31(0x7f)]['isTTY']?await(0x0,prompt_1[_0x44ae31(0xd3)])(_0x3f27e0+_0x44ae31(0x102)):(0x0,fs_1[_0x44ae31(0xdc)])(0x0,_0x1b5744[_0x44ae31(0xc2)])[_0x44ae31(0x133)]();!_0x455684&&(process[_0x44ae31(0xe1)]['write'](_0x44ae31(0x109)),process[_0x44ae31(0x112)](0x1));(0x0,vault_1[_0x44ae31(0x90)])(_0x3f27e0,_0x455684),process[_0x44ae31(0x7e)]['write'](_0x44ae31(0x10e)+_0x3f27e0+_0x44ae31(0x136)+(0x0,path_1[_0x44ae31(0x107)])((0x0,vault_1[_0x44ae31(0x139)])(),_0x1b5744[_0x44ae31(0x79)])+_0x44ae31(0x89));return;}if(_0x1b5744[_0x44ae31(0x11c)](_0x5450c2,'rm')||_0x5450c2===_0x1b5744[_0x44ae31(0x104)]){const _0x29e845=_0x18b955[0x1];!_0x29e845&&(process[_0x44ae31(0xe1)][_0x44ae31(0x143)](_0x1b5744[_0x44ae31(0x11e)]),process[_0x44ae31(0x112)](0x1));const _0xdb0a19=(0x0,vault_1[_0x44ae31(0xd4)])(_0x29e845);process[_0x44ae31(0x7e)][_0x44ae31(0x143)](_0xdb0a19?'✅\x20'+_0x29e845+_0x44ae31(0xc8):'('+_0x29e845+_0x44ae31(0x124));return;}process[_0x44ae31(0xe1)][_0x44ae31(0x143)](_0x1b5744[_0x44ae31(0x103)]),process['exit'](0x1);}let portal=null;function apiErrorText(_0x24e5cb){const _0x17b910=_0x16de1a,_0x473e7d={'IedbX':function(_0x6d9b2a,_0x34c001){return _0x6d9b2a===_0x34c001;}};if(_0x473e7d[_0x17b910(0xcc)](_0x24e5cb,0x191))return _0x17b910(0x78);return'APIエラー:\x20'+_0x24e5cb;}const AUTH_ERROR={'content':[{'type':_0x16de1a(0xb6),'text':'認証エラー:\x20セットアップが完了していません。管理者に連絡してください。'}]},server=new mcp_js_1['McpServer']({'name':'agent-core','version':_0x16de1a(0xfa)},{'instructions':feedback_1[_0x16de1a(0x100)]}),tool=server['tool']['bind'](server);tool(_0x16de1a(0xba),{'keyword':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x115)]('読み込む手順書のキーワード(例:\x20@要件定義)')},async({keyword:_0x305254})=>{const _0xf84c=_0x16de1a,_0x286c07={'KELjl':_0xf84c(0xb6),'pqAVX':function(_0x3aec86,_0x48b332){return _0x3aec86(_0x48b332);},'NOJPU':function(_0x473af8){return _0x473af8();},'ZUquU':'load_knowledge'};if(!portal)return AUTH_ERROR;const _0x144a6a=_0xf84c(0xa4)+encodeURIComponent(_0x305254),_0x32650a=await portal[_0xf84c(0x84)](_0x144a6a);if(!_0x32650a['ok']){if(_0x32650a[_0xf84c(0x82)]===0x193||_0x32650a[_0xf84c(0x82)]===0x1ad){const _0x543757=await _0x32650a[_0xf84c(0x121)]()[_0xf84c(0xb9)](()=>({}));return{'content':[{'type':_0x286c07[_0xf84c(0x85)],'text':_0x305254+'\x20を読み込めませんでした:\x20'+(_0x543757[_0xf84c(0xec)]??_0x286c07[_0xf84c(0xe7)](apiErrorText,_0x32650a[_0xf84c(0x82)]))}]};}return await(0x0,feedback_1[_0xf84c(0xf8)])(portal,_0x286c07[_0xf84c(0xe2)](resolveToolName),_0x286c07[_0xf84c(0x99)],_0x32650a[_0xf84c(0x82)],_0x144a6a),{'content':[{'type':'text','text':apiErrorText(_0x32650a[_0xf84c(0x82)])}]};}const _0x1446ef=await _0x32650a['json']();if(_0x1446ef[_0xf84c(0xec)]||!_0x1446ef[_0xf84c(0xa9)])return{'content':[{'type':_0xf84c(0xb6),'text':_0xf84c(0xa7)+_0x305254+_0xf84c(0x96)}]};return{'content':[{'type':'text','text':_0x1446ef[_0xf84c(0xa9)]+feedback_1[_0xf84c(0xcf)]}]};}),tool(_0x16de1a(0xdf),feedback_1[_0x16de1a(0x12f)],{'kind':zod_1['z'][_0x16de1a(0x11b)](['bug',_0x16de1a(0xca)])[_0x16de1a(0x115)](_0x16de1a(0xde)),'target':zod_1['z']['string']()[_0x16de1a(0x115)](_0x16de1a(0x10b)),'title':zod_1['z'][_0x16de1a(0xd0)]()['describe'](_0x16de1a(0xd7)),'detail':zod_1['z'][_0x16de1a(0xd0)]()['describe'](_0x16de1a(0x116))},async({kind:_0x290c1e,target:_0x65a4a1,title:_0xff8a8a,detail:_0x5f16ed})=>{const _0x10eed6=_0x16de1a,_0x484148={'HgQme':_0x10eed6(0xb6),'TecPY':_0x10eed6(0xeb)};if(!portal)return AUTH_ERROR;const _0x9dbc3e=await(0x0,feedback_1[_0x10eed6(0x146)])(portal,{'tool_name':resolveToolName(),'kind':_0x290c1e,'target':_0x65a4a1,'title':_0xff8a8a,'detail':_0x5f16ed,'client_version':(0x0,feedback_1[_0x10eed6(0xff)])()});if(!_0x9dbc3e['ok']){const _0x771ff8=await _0x9dbc3e[_0x10eed6(0x121)]()['catch'](()=>({}));return{'content':[{'type':_0x484148[_0x10eed6(0xe6)],'text':'送信に失敗しました(HTTP\x20'+_0x9dbc3e[_0x10eed6(0x82)]+_0x10eed6(0xbf)+(_0x771ff8[_0x10eed6(0xec)]??'')}]};}return{'content':[{'type':'text','text':_0x484148[_0x10eed6(0xc6)]}]};}),tool('list_mcps',{},async()=>{const _0x2f35f3=_0x16de1a,_0x235fa3={'LIQGm':_0x2f35f3(0xc7),'GAxPu':_0x2f35f3(0xb6),'IMabi':function(_0x2f25ee,_0x4fbcba){return _0x2f25ee(_0x4fbcba);},'zCPzv':function(_0x3fce92){return _0x3fce92();},'unFea':function(_0xfcc84f,_0x1f8324){return _0xfcc84f+_0x1f8324;},'hxGZu':function(_0x54ce64,_0x6df2df){return _0x54ce64+_0x6df2df;},'hGDSI':_0x2f35f3(0x134)};if(!portal)return AUTH_ERROR;const _0x1496a1=await portal[_0x2f35f3(0x84)]('/api/mcps');if(!_0x1496a1['ok'])return await(0x0,feedback_1['autoReportFailure'])(portal,resolveToolName(),_0x235fa3[_0x2f35f3(0xf6)],_0x1496a1[_0x2f35f3(0x82)],_0x2f35f3(0x13e)),{'content':[{'type':_0x235fa3[_0x2f35f3(0xb2)],'text':_0x235fa3[_0x2f35f3(0xa0)](apiErrorText,_0x1496a1[_0x2f35f3(0x82)])}]};const _0xb247ce=await _0x1496a1[_0x2f35f3(0x121)](),_0x2f3679=_0x235fa3[_0x2f35f3(0xcb)](resolveToolName),_0x489ce=await portal[_0x2f35f3(0x84)](_0x2f35f3(0x108)+_0x235fa3['IMabi'](encodeURIComponent,_0x2f3679)+_0x2f35f3(0x106)),_0x4044a0=_0x489ce['ok']?(await _0x489ce['json']())[_0x2f35f3(0xf4)](_0xa99492=>_0xa99492['package_name']):[],_0xcb177a=(0x0,extraMcps_1['readExtras'])(_0x2f3679),_0x5106c1=_0xcb177a[_0x2f35f3(0xa6)](_0x58d8d4=>!_0x58d8d4[_0x2f35f3(0x142)])['map'](_0xcc4b17=>_0xcc4b17[_0x2f35f3(0x120)]),_0x1244e9=[..._0xb247ce[_0x2f35f3(0xf4)](_0x5de0a9=>({..._0x5de0a9,'status':_0x4044a0['includes'](_0x5de0a9[_0x2f35f3(0x120)])?'同梱済み':_0x5106c1['includes'](_0x5de0a9[_0x2f35f3(0x120)])?_0x2f35f3(0xe9):_0x2f35f3(0x141)})),..._0xcb177a[_0x2f35f3(0xa6)](_0x415cd0=>_0x415cd0[_0x2f35f3(0x142)])[_0x2f35f3(0xf4)](_0x453d8d=>({'id':_0x453d8d[_0x2f35f3(0x127)],'name':_0x453d8d[_0x2f35f3(0xa1)],'package_name':_0x453d8d['package_name'],'path':_0x453d8d[_0x2f35f3(0x142)],'status':_0x2f35f3(0xf0)}))];return{'content':[{'type':_0x2f35f3(0xb6),'text':JSON[_0x2f35f3(0xd1)](_0x1244e9,null,0x2)},{'type':_0x235fa3[_0x2f35f3(0xb2)],'text':_0x235fa3[_0x2f35f3(0x7d)](_0x235fa3['hxGZu'](_0x2f35f3(0x148),_0x235fa3[_0x2f35f3(0xc5)]),_0x2f35f3(0xb8))+'最初から使えます(インストール不要)。'}]};}),tool(_0x16de1a(0xdd),'カタログ(list_mcps)の\x20MCP\x20を、このツールに追加する。次にツールを起動したときから使える。鍵の値は渡さない(金庫の名前だけを指定する)',{'mcp_id':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x115)](_0x16de1a(0xfd)),'secret_names':zod_1['z'][_0x16de1a(0xcd)](zod_1['z'][_0x16de1a(0xd0)]())['optional']()[_0x16de1a(0x115)](_0x16de1a(0xee)+_0x16de1a(0x123)+'MCP\x20自身が宣言している名前は指定しなくても渡る(金庫に同じ名前で入っていれば)')},async({mcp_id:_0x545b26,secret_names:_0x5398af})=>{const _0x44f99c=_0x16de1a,_0x1df684={'HAsfv':_0x44f99c(0xb6),'HKCGR':function(_0x54a66e,_0x1aaf1e){return _0x54a66e(_0x1aaf1e);},'chkuy':function(_0x3be7eb){return _0x3be7eb();}};if(!portal)return AUTH_ERROR;const _0x4a22f4=await portal[_0x44f99c(0x84)](_0x44f99c(0x13e));if(!_0x4a22f4['ok'])return{'content':[{'type':_0x1df684[_0x44f99c(0x10f)],'text':_0x1df684[_0x44f99c(0x92)](apiErrorText,_0x4a22f4[_0x44f99c(0x82)])}]};const _0x41be14=(0x0,extraMcps_1['findInCatalog'])(await _0x4a22f4[_0x44f99c(0x121)](),_0x545b26);if(!_0x41be14)return{'content':[{'type':_0x44f99c(0xb6),'text':'カタログに\x20\x27'+_0x545b26+_0x44f99c(0x132)}]};const _0xb6c7eb=_0x1df684[_0x44f99c(0x98)](resolveToolName),_0x403196=(_0x5398af??[])[_0x44f99c(0xf4)](_0x34ccef=>_0x34ccef['trim']())[_0x44f99c(0xa6)](Boolean),_0x27124d=new Set((0x0,vault_1[_0x44f99c(0x111)])()),_0xac5da8=_0x403196[_0x44f99c(0xf4)](_0x286d80=>(0x0,extraMcps_1['parseSecretName'])(_0x286d80)[_0x44f99c(0x10d)])['filter'](_0x43434a=>!_0x27124d[_0x44f99c(0x9b)](_0x43434a));return(0x0,extraMcps_1[_0x44f99c(0x93)])(_0xb6c7eb,(0x0,extraMcps_1[_0x44f99c(0xb1)])((0x0,extraMcps_1[_0x44f99c(0x91)])(_0xb6c7eb),{'mcp_id':_0x41be14['id'],'name':_0x41be14[_0x44f99c(0xa1)],'package_name':_0x41be14[_0x44f99c(0x120)],'secret_names':_0x403196})),{'content':[{'type':_0x1df684[_0x44f99c(0x10f)],'text':_0x41be14[_0x44f99c(0xa1)]+'('+_0x41be14[_0x44f99c(0x120)]+')をこのツールに追加しました。**ツールを起動し直すと使えます**。'+(_0x403196[_0x44f99c(0xf1)]?'\x0a渡す秘密:\x20'+_0x403196[_0x44f99c(0x107)](',\x20'):'')+(_0xac5da8[_0x44f99c(0xf1)]?_0x44f99c(0xc0)+_0xac5da8['join'](',\x20')+_0x44f99c(0x122):'')}]};}),tool(_0x16de1a(0x8d),_0x16de1a(0x129)+'フォルダの\x20package.json\x20の\x20bin\x20を起動し、金庫からは\x20package.json\x20の\x20funnyBooth.env\x20で宣言した名前と\x20secret_names\x20だけを渡す',{'path':zod_1['z'][_0x16de1a(0xd0)]()['describe']('MCP\x20のフォルダ(package.json\x20がある場所)。ビルド済みであること'),'secret_names':zod_1['z'][_0x16de1a(0xcd)](zod_1['z']['string']())[_0x16de1a(0xa8)]()[_0x16de1a(0x115)](_0x16de1a(0x8f)+_0x16de1a(0x123)+_0x16de1a(0xea))},async({path:_0x4d62f7,secret_names:_0x2448ba})=>{const _0x3bfd18=_0x16de1a,_0xc30e54={'AQROX':_0x3bfd18(0xb6),'tswNl':function(_0x319bdb){return _0x319bdb();},'GLNFa':'TOOL_TOKEN','aefuB':_0x3bfd18(0x145),'yHkuL':_0x3bfd18(0xb5)},_0x2caa39=(0x0,extraMcps_1['absoluteDir'])(_0x4d62f7);let _0x4ad1da;try{_0x4ad1da=(0x0,extraMcps_1[_0x3bfd18(0xc3)])(_0x2caa39);}catch(_0x451d45){return{'content':[{'type':_0xc30e54[_0x3bfd18(0xd9)],'text':_0x3bfd18(0xa5)+_0x451d45[_0x3bfd18(0x77)]}]};}const _0x55cfa0=_0xc30e54[_0x3bfd18(0xe0)](resolveToolName),_0x4b3d4b=(_0x2448ba??[])[_0x3bfd18(0xf4)](_0x249ef9=>_0x249ef9['trim']())[_0x3bfd18(0xa6)](Boolean),_0x37aa1a=new Set((0x0,vault_1[_0x3bfd18(0x111)])()),_0x47dbb7=new Set(['PORTAL_URL',_0xc30e54[_0x3bfd18(0x9e)],_0xc30e54['aefuB'],_0xc30e54[_0x3bfd18(0xf2)]]),_0x2df6d6=new Set(_0x4b3d4b[_0x3bfd18(0xf4)](_0x38f445=>(0x0,extraMcps_1[_0x3bfd18(0xfb)])(_0x38f445)[_0x3bfd18(0x114)])),_0x441e87=[..._0x4ad1da[_0x3bfd18(0x13f)][_0x3bfd18(0xa6)](_0x248d03=>!_0x2df6d6[_0x3bfd18(0x9b)](_0x248d03)),..._0x4b3d4b['map'](_0x33791e=>(0x0,extraMcps_1[_0x3bfd18(0xfb)])(_0x33791e)['vault'])],_0x5ed1db=_0x441e87['filter'](_0x49b22=>!_0x49b22['endsWith']('*')&&!_0x47dbb7[_0x3bfd18(0x9b)](_0x49b22)&&!_0x37aa1a[_0x3bfd18(0x9b)](_0x49b22));return(0x0,extraMcps_1[_0x3bfd18(0x93)])(_0x55cfa0,(0x0,extraMcps_1[_0x3bfd18(0xb1)])((0x0,extraMcps_1[_0x3bfd18(0x91)])(_0x55cfa0),{'mcp_id':_0x3bfd18(0x9d)+_0x4ad1da[_0x3bfd18(0x120)],'name':_0x4ad1da[_0x3bfd18(0x120)],'package_name':_0x4ad1da[_0x3bfd18(0x120)],'secret_names':_0x4b3d4b,'path':_0x2caa39})),{'content':[{'type':_0xc30e54[_0x3bfd18(0xd9)],'text':_0x4ad1da[_0x3bfd18(0x120)]+'('+_0x2caa39+_0x3bfd18(0xa2)+_0x3bfd18(0x8a)+(_0x5ed1db[_0x3bfd18(0xf1)]?_0x3bfd18(0xc0)+_0x5ed1db['join'](',\x20')+'。store_secret\x20で保存してから起動し直してください。':'')}]};}),tool('uninstall_mcp',_0x16de1a(0x95),{'mcp_id':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x115)](_0x16de1a(0x8c))},async({mcp_id:_0x1a2ce8})=>{const _0x4393d7=_0x16de1a,_0x3445b4=resolveToolName(),{list:_0xaf0006,removed:_0x4fd738}=(0x0,extraMcps_1[_0x4393d7(0xb0)])((0x0,extraMcps_1[_0x4393d7(0x91)])(_0x3445b4),_0x1a2ce8);if(!_0x4fd738)return{'content':[{'type':_0x4393d7(0xb6),'text':'\x27'+_0x1a2ce8+_0x4393d7(0xe3)}]};return(0x0,extraMcps_1[_0x4393d7(0x93)])(_0x3445b4,_0xaf0006),{'content':[{'type':_0x4393d7(0xb6),'text':_0x4fd738[_0x4393d7(0xa1)]+_0x4393d7(0x105)}]};}),tool(_0x16de1a(0xf3),{'current_password':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x115)]('現在のパスワード'),'new_password':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x80)](0x8)[_0x16de1a(0x115)](_0x16de1a(0x94))},async({current_password:_0x7be66b,new_password:_0x3e6303})=>{const _0x12b72c=_0x16de1a;if(!portal)return AUTH_ERROR;const _0x13366b=await portal[_0x12b72c(0x84)](_0x12b72c(0xbb),{'method':'POST','headers':{'Content-Type':_0x12b72c(0xa3)},'body':JSON['stringify']({'current_password':_0x7be66b,'new_password':_0x3e6303})}),_0x2c607c=await _0x13366b[_0x12b72c(0x121)]();if(!_0x13366b['ok'])return{'content':[{'type':_0x12b72c(0xb6),'text':_0x12b72c(0x11f)+(_0x2c607c['error']??_0x13366b[_0x12b72c(0x82)])}]};if(_0x2c607c[_0x12b72c(0x12c)]&&_0x2c607c['refresh_token'])portal[_0x12b72c(0x86)]({'jwt':_0x2c607c[_0x12b72c(0x12c)],'refresh':_0x2c607c[_0x12b72c(0x11a)]});return{'content':[{'type':'text','text':_0x12b72c(0xb3)}]};}),tool(_0x16de1a(0xe4),{},async()=>{const _0x16cb77=_0x16de1a,_0x46ec34={'XmEGG':_0x16cb77(0xb6),'mvJoe':_0x16cb77(0x7b)},_0x35f332=(0x0,vault_1[_0x16cb77(0x111)])(),_0x43b8b9=(0x0,vault_1[_0x16cb77(0x13b)])(),_0x5862b4=_0x4e826f=>'-\x20'+_0x4e826f+(_0x43b8b9[_0x4e826f]?.['length']?'(入れてよいサイト:\x20'+_0x43b8b9[_0x4e826f][_0x16cb77(0x107)](',\x20')+')':'');return{'content':[{'type':_0x46ec34[_0x16cb77(0xf5)],'text':_0x35f332[_0x16cb77(0xf1)]?'保管中のシークレット:\x0a'+_0x35f332['map'](_0x5862b4)[_0x16cb77(0x107)]('\x0a'):_0x46ec34['mvJoe']}]};}),tool(_0x16de1a(0xe5),{'name':zod_1['z'][_0x16de1a(0xd0)]()['describe'](_0x16de1a(0x88))},async({name:_0x1d2b63})=>{const _0x35512d=_0x16de1a,_0x15dd90={'ZKIUy':function(_0x4c6713,_0x354e27){return _0x4c6713 in _0x354e27;},'LfeKV':function(_0x2e886d,_0x1e281f){return _0x2e886d+_0x1e281f;},'uOGdH':_0x35512d(0xb6)},_0x1832ea=(0x0,vault_1[_0x35512d(0xf7)])();if(!_0x15dd90[_0x35512d(0xb7)](_0x1d2b63,_0x1832ea))return{'content':[{'type':'text','text':_0x15dd90['LfeKV'](_0x35512d(0xfc)+_0x1d2b63+_0x35512d(0xae),_0x35512d(0x7c))+'どこにも無ければユーザーに確認し、受け取った値は\x20store_secret\x20で保存できます。'}]};return{'content':[{'type':_0x15dd90[_0x35512d(0x125)],'text':_0x1832ea[_0x1d2b63]}]};}),tool(_0x16de1a(0x12e),{'name':zod_1['z'][_0x16de1a(0xd0)]()[_0x16de1a(0x115)](_0x16de1a(0x97)),'value':zod_1['z'][_0x16de1a(0xd0)]()['describe']('シークレットの値'),'sites':zod_1['z'][_0x16de1a(0xcd)](zod_1['z'][_0x16de1a(0xd0)]())[_0x16de1a(0xa8)]()['describe'](_0x16de1a(0x119)+'ユーザーに確かめた上で渡す。決めておくと\x20browser_fill_secret\x20で値を見せずにそのサイトの入力欄へ入れられ、他のサイトには入らない。'+'省くと、前に決めたサイトをそのまま使う')},async({name:_0x5bdf38,value:_0x3483b4,sites:_0x335c22})=>{const _0x11aba9=_0x16de1a,_0x475aff={'pQCuh':_0x11aba9(0xb6)},_0x2da58a=_0x335c22?.[_0x11aba9(0xf4)](_0x596e85=>({'s':_0x596e85,'n':(0x0,secretSites_1['normalizeSite'])(_0x596e85)})),_0x3b0975=_0x2da58a?.[_0x11aba9(0xa6)](_0x31fb69=>!_0x31fb69['n'])['map'](_0x3234b5=>_0x3234b5['s'])??[];if(_0x3b0975['length'])return{'content':[{'type':'text','text':'保存していません:\x20サイトをドメインとして読めません('+_0x3b0975[_0x11aba9(0x107)](',\x20')+_0x11aba9(0x10c)}]};(0x0,vault_1[_0x11aba9(0x90)])(_0x5bdf38,_0x3483b4);if(_0x2da58a)(0x0,vault_1[_0x11aba9(0xe8)])(_0x5bdf38,[...new Set(_0x2da58a[_0x11aba9(0xf4)](_0x7db84e=>_0x7db84e['n']))]);const _0x4036fb=(0x0,vault_1[_0x11aba9(0x13b)])()[_0x5bdf38];return{'content':[{'type':_0x475aff[_0x11aba9(0x13c)],'text':'✅\x20シークレット\x20'+_0x5bdf38+_0x11aba9(0xce)+(_0x4036fb?.[_0x11aba9(0xf1)]?'入れてよいサイト:\x20'+_0x4036fb['join'](',\x20')+'(ツールを起動し直すと\x20browser_fill_secret\x20で使えます)。':'')}]};}),tool('delete_secret',{'name':zod_1['z'][_0x16de1a(0xd0)]()['describe']('削除するシークレット名')},async({name:_0x4e4a0c})=>{const _0x4214ff=_0x16de1a,_0x530427=(0x0,vault_1[_0x4214ff(0xd4)])(_0x4e4a0c);return{'content':[{'type':_0x4214ff(0xb6),'text':_0x530427?_0x4214ff(0xfc)+_0x4e4a0c+_0x4214ff(0x9f):_0x4214ff(0xfc)+_0x4e4a0c+_0x4214ff(0x135)}]};});async function main(){const _0x361dc1=_0x16de1a,_0x49f618={'IpuGP':_0x361dc1(0x131),'bXBSh':_0x361dc1(0x137),'dZCbB':_0x361dc1(0xdb)};!process.env.TOOL_NAME&&(process['stderr'][_0x361dc1(0x143)](isSecretCommand?_0x49f618[_0x361dc1(0x81)]:_0x49f618[_0x361dc1(0x9c)]),process[_0x361dc1(0x112)](0x1));if(isSecretCommand){await runSecretCommand(rawArgs[_0x361dc1(0x101)](0x1));return;}(!process.env.TOOL_TOKEN||!process.env.PORTAL_URL)&&(process[_0x361dc1(0xe1)][_0x361dc1(0x143)](_0x49f618[_0x361dc1(0xef)]),process[_0x361dc1(0x112)](0x1));const _0x451fb2=resolveToolName();portal=new portalClient_1[(_0x361dc1(0xbc))](process.env.PORTAL_URL,process.env.TOOL_TOKEN,{'read':()=>(0x0,vault_1['readTokens'])(_0x451fb2),'save':_0x3a06f3=>(0x0,vault_1[_0x361dc1(0xb4)])(_0x451fb2,_0x3a06f3)});const _0x498111=new stdio_js_1[(_0x361dc1(0xbe))]();await server[_0x361dc1(0xaf)](_0x498111),process['stderr']['write']('MCP\x20Server\x20started\x0a');}main()['catch'](_0x43b076=>{const _0x744e9f=_0x16de1a;_0x43b076 instanceof vault_1[_0x744e9f(0x118)]&&(process['stderr'][_0x744e9f(0x143)](_0x43b076[_0x744e9f(0x77)]+'\x0a'),process[_0x744e9f(0x112)](0x1)),process[_0x744e9f(0xe1)][_0x744e9f(0x143)](_0x744e9f(0x144)+_0x43b076+'\x0a'),process[_0x744e9f(0x112)](0x1);});
|
|
2
|
+
'use strict';const _0x26542c=_0x33db;(function(_0x47882e,_0xcc7677){const _0x2f8a5b=_0x33db,_0x531e71=_0x47882e();while(!![]){try{const _0x569632=-parseInt(_0x2f8a5b(0x22d))/0x1+-parseInt(_0x2f8a5b(0x1fb))/0x2+-parseInt(_0x2f8a5b(0x1bd))/0x3*(-parseInt(_0x2f8a5b(0x27e))/0x4)+-parseInt(_0x2f8a5b(0x221))/0x5+-parseInt(_0x2f8a5b(0x263))/0x6+parseInt(_0x2f8a5b(0x19f))/0x7*(parseInt(_0x2f8a5b(0x1af))/0x8)+-parseInt(_0x2f8a5b(0x246))/0x9*(-parseInt(_0x2f8a5b(0x24b))/0xa);if(_0x569632===_0xcc7677)break;else _0x531e71['push'](_0x531e71['shift']());}catch(_0x48cd05){_0x531e71['push'](_0x531e71['shift']());}}}(_0x3ad3,0xf0eed));Object[_0x26542c(0x1e4)](exports,_0x26542c(0x1c3),{'value':!![]});const mcp_js_1=require(_0x26542c(0x1d6)),stdio_js_1=require('@modelcontextprotocol/sdk/server/stdio.js'),zod_1=require(_0x26542c(0x19b)),fs_1=require('fs'),path_1=require(_0x26542c(0x231)),vault_1=require(_0x26542c(0x200)),secretSites_1=require(_0x26542c(0x260)),approval_1=require(_0x26542c(0x1ec)),secretInput_1=require(_0x26542c(0x1ba)),portalClient_1=require('./portalClient'),extraMcps_1=require(_0x26542c(0x1e5)),prompt_1=require(_0x26542c(0x195)),feedback_1=require(_0x26542c(0x1b0)),rawArgs=process['argv'][_0x26542c(0x27b)](0x2),isSecretCommand=rawArgs[0x0]===_0x26542c(0x257);function resolveToolName(){const _0x2e08df=_0x26542c,_0x19febe={'VhusA':_0x2e08df(0x24a)},_0x52cf8b=process.env.TOOL_NAME;if(!_0x52cf8b)throw new Error(_0x19febe['VhusA']);return _0x52cf8b;}const SET_USAGE=_0x26542c(0x1aa);async function readSetRequest(_0x51877a){const _0x3a8c40=_0x26542c,_0x50225f={'kdXmS':_0x3a8c40(0x1c9),'BBvTc':_0x3a8c40(0x239),'lbayc':function(_0x15d9b4,_0x36b2b7){return _0x15d9b4>=_0x36b2b7;},'krIZL':function(_0x152e5b,_0x24c0cf){return _0x152e5b>=_0x24c0cf;},'RGPuh':function(_0x37eeb6,_0x4a6236){return _0x37eeb6+_0x4a6236;}};if(_0x51877a[0x0]===_0x3a8c40(0x207))return(0x0,secretInput_1[_0x3a8c40(0x177)])((0x0,fs_1['readFileSync'])(0x0,_0x50225f[_0x3a8c40(0x17f)]));const _0x3cc2e0=_0x51877a[0x0],_0x5104cf=_0x51877a[_0x3a8c40(0x1bf)](_0x50225f[_0x3a8c40(0x232)]);if(!_0x3cc2e0||_0x3cc2e0[_0x3a8c40(0x1cf)]('--')||_0x50225f[_0x3a8c40(0x1ef)](_0x5104cf,0x0)&&!_0x51877a[_0x5104cf+0x1])return{'error':SET_USAGE};const _0x316ab7=(0x0,secretSites_1['normalizeSites'])(_0x50225f[_0x3a8c40(0x222)](_0x5104cf,0x0)?_0x51877a[_0x50225f['RGPuh'](_0x5104cf,0x1)]['split'](',')[_0x3a8c40(0x1f7)](_0x44d7b5=>_0x44d7b5[_0x3a8c40(0x230)]())[_0x3a8c40(0x1c4)](Boolean):[]);if(_0x316ab7['bad'][_0x3a8c40(0x264)])return{'error':(0x0,secretInput_1['badSitesText'])(_0x316ab7[_0x3a8c40(0x1ea)])};const _0x10aec4=process[_0x3a8c40(0x18b)]['isTTY']?await(0x0,prompt_1[_0x3a8c40(0x206)])(_0x3cc2e0+_0x3a8c40(0x198)):(0x0,secretInput_1[_0x3a8c40(0x1a9)])((0x0,fs_1[_0x3a8c40(0x19e)])(0x0,_0x50225f[_0x3a8c40(0x17f)]));if(!_0x10aec4)return{'error':_0x3a8c40(0x1d1)};return{'name':_0x3cc2e0,'value':_0x10aec4,'sites':_0x316ab7[_0x3a8c40(0x1dc)]};}async function runSecretCommand(_0x35a176){const _0x1381b7=_0x26542c,_0x1dd0ff={'Idxox':'reset','sEWcM':_0x1381b7(0x26e),'DHjsL':function(_0x18e5ba,_0x5c1814){return _0x18e5ba===_0x5c1814;},'fpPSx':_0x1381b7(0x19c),'UtxbC':function(_0x424de1,_0x26644c){return _0x424de1===_0x26644c;},'wQSwB':_0x1381b7(0x1fd),'WHQJz':_0x1381b7(0x1ae)},_0x2ff141=_0x35a176[0x0];if(_0x2ff141===_0x1dd0ff[_0x1381b7(0x1cd)]){const _0x279f92=(0x0,vault_1[_0x1381b7(0x1f2)])();process['stdout']['write'](_0x279f92[_0x1381b7(0x264)]?'金庫を退避しました(次に使うときに新しく作られます。ログインし直しになります):\x0a'+_0x279f92[_0x1381b7(0x1f7)](_0x455282=>_0x1381b7(0x181)+_0x455282)[_0x1381b7(0x234)]('\x0a')+'\x0a':_0x1dd0ff[_0x1381b7(0x227)]);return;}try{(0x0,vault_1[_0x1381b7(0x24f)])(resolveToolName());}catch(_0xecd87){process['stderr'][_0x1381b7(0x1d4)]('※\x20旧い金庫を全ツール共通の金庫へ移せませんでした(旧い金庫は残しています):\x20'+_0xecd87[_0x1381b7(0x27a)]+'\x0a');}if(_0x1dd0ff['DHjsL'](_0x2ff141,_0x1dd0ff['fpPSx'])){const _0x18e1c6=(0x0,vault_1[_0x1381b7(0x1f0)])();!_0x18e1c6[_0x1381b7(0x264)]?process[_0x1381b7(0x26d)][_0x1381b7(0x1d4)](_0x1381b7(0x20a)):process[_0x1381b7(0x26d)][_0x1381b7(0x1d4)](_0x1381b7(0x18c)+_0x18e1c6['map'](_0x360203=>_0x1381b7(0x181)+_0x360203)[_0x1381b7(0x234)]('\x0a')+'\x0a');return;}if(_0x1dd0ff[_0x1381b7(0x21c)](_0x2ff141,_0x1dd0ff[_0x1381b7(0x26f)])){const _0x156024=await readSetRequest(_0x35a176[_0x1381b7(0x27b)](0x1));_0x1dd0ff[_0x1381b7(0x1d0)]in _0x156024&&(process[_0x1381b7(0x22a)][_0x1381b7(0x1d4)](_0x156024[_0x1381b7(0x1ae)]+'\x0a'),process[_0x1381b7(0x1c7)](0x1));(0x0,vault_1[_0x1381b7(0x1c8)])(_0x156024[_0x1381b7(0x1a4)],_0x156024[_0x1381b7(0x1fa)]);if(_0x156024[_0x1381b7(0x1dc)][_0x1381b7(0x264)])(0x0,vault_1[_0x1381b7(0x240)])(_0x156024[_0x1381b7(0x1a4)],_0x156024[_0x1381b7(0x1dc)]);const _0x3f1865=(0x0,vault_1[_0x1381b7(0x1d3)])()[_0x156024[_0x1381b7(0x1a4)]];process['stdout'][_0x1381b7(0x1d4)](_0x1381b7(0x217)+_0x156024[_0x1381b7(0x1a4)]+_0x1381b7(0x256)+(0x0,path_1[_0x1381b7(0x234)])((0x0,vault_1[_0x1381b7(0x186)])(),'secrets.enc')+_0x1381b7(0x202)+(_0x3f1865?.['length']?_0x1381b7(0x23a)+_0x3f1865[_0x1381b7(0x234)](',\x20'):'')+'\x0a');return;}if(_0x1dd0ff[_0x1381b7(0x1f1)](_0x2ff141,'rm')||_0x2ff141==='delete'){const _0x1fa802=_0x35a176[0x1];!_0x1fa802&&(process[_0x1381b7(0x22a)][_0x1381b7(0x1d4)](_0x1381b7(0x1e1)),process[_0x1381b7(0x1c7)](0x1));const _0x4705df=(0x0,vault_1[_0x1381b7(0x27d)])(_0x1fa802);process[_0x1381b7(0x26d)][_0x1381b7(0x1d4)](_0x4705df?'✅\x20'+_0x1fa802+_0x1381b7(0x275):'('+_0x1fa802+_0x1381b7(0x1ca));return;}process[_0x1381b7(0x22a)][_0x1381b7(0x1d4)]('使い方:\x20agent-core\x20secret\x20<set|list|rm|reset>\x20[NAME]\x20[--sites\x20ドメイン,ドメイン](set\x20は\x20--stdin-json\x20も可)\x0a'),process['exit'](0x1);}let portal=null;function apiErrorText(_0x220828){const _0xa4319=_0x26542c,_0x521cce={'gMzqm':function(_0x385257,_0xc117ce){return _0x385257===_0xc117ce;}};if(_0x521cce['gMzqm'](_0x220828,0x191))return _0xa4319(0x218);return _0xa4319(0x21a)+_0x220828;}const AUTH_ERROR={'content':[{'type':_0x26542c(0x1e0),'text':'認証エラー:\x20セットアップが完了していません。管理者に連絡してください。'}]},server=new mcp_js_1[(_0x26542c(0x248))]({'name':_0x26542c(0x18a),'version':_0x26542c(0x247)},{'instructions':feedback_1[_0x26542c(0x228)]}),tool=server[_0x26542c(0x25b)][_0x26542c(0x226)](server);tool(_0x26542c(0x1c2),{'keyword':zod_1['z'][_0x26542c(0x185)]()['describe'](_0x26542c(0x19a))},async({keyword:_0xee4df4})=>{const _0x3ef477=_0x26542c,_0x338edd={'YEmWQ':function(_0x289008,_0x3c9d26){return _0x289008(_0x3c9d26);},'vhQam':function(_0x361052,_0x21f63a){return _0x361052===_0x21f63a;},'FFJeH':_0x3ef477(0x1e0),'EWAeN':function(_0x5b6235,_0x426407){return _0x5b6235(_0x426407);},'EWdUr':function(_0x18e568,_0x358c0c){return _0x18e568+_0x358c0c;}};if(!portal)return AUTH_ERROR;const _0x27fe38='/api/knowledge?keyword='+_0x338edd['YEmWQ'](encodeURIComponent,_0xee4df4),_0x151071=await portal[_0x3ef477(0x1b6)](_0x27fe38);if(!_0x151071['ok']){if(_0x151071[_0x3ef477(0x1d9)]===0x193||_0x338edd[_0x3ef477(0x25d)](_0x151071[_0x3ef477(0x1d9)],0x1ad)){const _0xfa13ce=await _0x151071[_0x3ef477(0x1b9)]()[_0x3ef477(0x1ac)](()=>({}));return{'content':[{'type':_0x338edd[_0x3ef477(0x184)],'text':_0xee4df4+_0x3ef477(0x23b)+(_0xfa13ce[_0x3ef477(0x1ae)]??apiErrorText(_0x151071['status']))}]};}return await(0x0,feedback_1[_0x3ef477(0x20c)])(portal,resolveToolName(),_0x3ef477(0x1c2),_0x151071['status'],_0x27fe38),{'content':[{'type':'text','text':_0x338edd[_0x3ef477(0x270)](apiErrorText,_0x151071['status'])}]};}const _0x2bd702=await _0x151071[_0x3ef477(0x1b9)]();if(_0x2bd702[_0x3ef477(0x1ae)]||!_0x2bd702[_0x3ef477(0x18f)])return{'content':[{'type':_0x338edd[_0x3ef477(0x184)],'text':'キーワード\x20\x27'+_0xee4df4+_0x3ef477(0x273)}]};return{'content':[{'type':_0x338edd[_0x3ef477(0x184)],'text':_0x338edd['EWdUr'](_0x2bd702[_0x3ef477(0x18f)],feedback_1[_0x3ef477(0x24d)])}]};}),tool(_0x26542c(0x1fe),feedback_1[_0x26542c(0x24c)],{'kind':zod_1['z']['enum'](['bug','improvement'])[_0x26542c(0x1db)](_0x26542c(0x179)),'target':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x233)),'title':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x261)),'detail':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)]('何が起きたか・再現手順・どうなってほしいか。案件の中身や秘密の値は書かない')},async({kind:_0x3ff24d,target:_0x3448bd,title:_0x473101,detail:_0x23a909})=>{const _0xacfdf8=_0x26542c,_0x5a21cb={'YiFGJ':_0xacfdf8(0x1e0),'gRwhx':_0xacfdf8(0x265)};if(!portal)return AUTH_ERROR;const _0x57b88d=await(0x0,feedback_1[_0xacfdf8(0x204)])(portal,{'tool_name':resolveToolName(),'kind':_0x3ff24d,'target':_0x3448bd,'title':_0x473101,'detail':_0x23a909,'client_version':(0x0,feedback_1[_0xacfdf8(0x1d5)])()});if(!_0x57b88d['ok']){const _0x1b47c5=await _0x57b88d[_0xacfdf8(0x1b9)]()['catch'](()=>({}));return{'content':[{'type':_0x5a21cb[_0xacfdf8(0x25a)],'text':'送信に失敗しました(HTTP\x20'+_0x57b88d[_0xacfdf8(0x1d9)]+_0xacfdf8(0x1cb)+(_0x1b47c5['error']??'')}]};}return{'content':[{'type':'text','text':_0x5a21cb['gRwhx']}]};}),tool(_0x26542c(0x1ed),{},async()=>{const _0x2f2542=_0x26542c,_0x37a21f={'XAFwF':'/api/mcps','IMHwG':function(_0x58af6d){return _0x58af6d();},'uLCco':_0x2f2542(0x1e0),'nZOrL':function(_0x4ad512,_0x532596){return _0x4ad512(_0x532596);},'jsvhb':function(_0x313912,_0x4d8be0){return _0x313912(_0x4d8be0);},'LDnIj':function(_0xf91578,_0x30d603){return _0xf91578+_0x30d603;},'pRUvH':function(_0x14320d,_0x1451b4){return _0x14320d+_0x1451b4;},'xluli':_0x2f2542(0x223),'SJAbb':_0x2f2542(0x279),'VjHkD':_0x2f2542(0x250)};if(!portal)return AUTH_ERROR;const _0x260b1a=await portal[_0x2f2542(0x1b6)](_0x37a21f[_0x2f2542(0x197)]);if(!_0x260b1a['ok'])return await(0x0,feedback_1['autoReportFailure'])(portal,_0x37a21f[_0x2f2542(0x22f)](resolveToolName),_0x2f2542(0x1ed),_0x260b1a[_0x2f2542(0x1d9)],_0x37a21f[_0x2f2542(0x197)]),{'content':[{'type':_0x37a21f['uLCco'],'text':_0x37a21f['nZOrL'](apiErrorText,_0x260b1a[_0x2f2542(0x1d9)])}]};const _0x14114d=await _0x260b1a[_0x2f2542(0x1b9)](),_0x232abd=_0x37a21f[_0x2f2542(0x22f)](resolveToolName),_0xc874a3=await portal[_0x2f2542(0x1b6)]('/api/tools/'+_0x37a21f[_0x2f2542(0x189)](encodeURIComponent,_0x232abd)+_0x2f2542(0x1b5)),_0xf1d869=_0xc874a3['ok']?(await _0xc874a3[_0x2f2542(0x1b9)]())['map'](_0x10ec06=>_0x10ec06['package_name']):[],_0x136112=(0x0,extraMcps_1[_0x2f2542(0x1f8)])(_0x232abd),_0x35e5f4=_0x136112[_0x2f2542(0x1c4)](_0x4e34dc=>!_0x4e34dc[_0x2f2542(0x231)])['map'](_0x459726=>_0x459726[_0x2f2542(0x203)]),_0x4ae0d1=[..._0x14114d['map'](_0x16fba4=>({..._0x16fba4,'status':_0xf1d869['includes'](_0x16fba4[_0x2f2542(0x203)])?_0x2f2542(0x214):_0x35e5f4[_0x2f2542(0x20e)](_0x16fba4[_0x2f2542(0x203)])?_0x2f2542(0x20f):_0x2f2542(0x1bc)})),..._0x136112[_0x2f2542(0x1c4)](_0xe218e3=>_0xe218e3[_0x2f2542(0x231)])[_0x2f2542(0x1f7)](_0x3bb447=>({'id':_0x3bb447['mcp_id'],'name':_0x3bb447[_0x2f2542(0x1a4)],'package_name':_0x3bb447['package_name'],'path':_0x3bb447[_0x2f2542(0x231)],'status':_0x2f2542(0x254)}))];return{'content':[{'type':_0x2f2542(0x1e0),'text':JSON['stringify'](_0x4ae0d1,null,0x2)},{'type':_0x2f2542(0x1e0),'text':_0x37a21f['LDnIj'](_0x37a21f['LDnIj'](_0x37a21f[_0x2f2542(0x1b1)](_0x37a21f['xluli'],_0x37a21f['SJAbb']),_0x37a21f['VjHkD']),_0x2f2542(0x269))}]};}),tool('install_mcp',_0x26542c(0x23d),{'mcp_id':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)]('list_mcps\x20の\x20id(パッケージ名でも可)'),'secret_names':zod_1['z'][_0x26542c(0x1eb)](zod_1['z'][_0x26542c(0x185)]())[_0x26542c(0x17d)]()['describe'](_0x26542c(0x262)+_0x26542c(0x1a1)+_0x26542c(0x1a6))},async({mcp_id:_0x49a0d0,secret_names:_0x54ec26})=>{const _0x82b0ed=_0x26542c,_0x5e9e60={'BvRAF':_0x82b0ed(0x236),'jKLuK':_0x82b0ed(0x1e0),'aBYpz':function(_0x4c1ef8){return _0x4c1ef8();},'PAeMc':function(_0x33870,_0x6cc749){return _0x33870+_0x6cc749;}};if(!portal)return AUTH_ERROR;const _0x1f2c2e=await portal[_0x82b0ed(0x1b6)](_0x5e9e60[_0x82b0ed(0x266)]);if(!_0x1f2c2e['ok'])return{'content':[{'type':_0x5e9e60[_0x82b0ed(0x211)],'text':apiErrorText(_0x1f2c2e[_0x82b0ed(0x1d9)])}]};const _0x3a7636=(0x0,extraMcps_1['findInCatalog'])(await _0x1f2c2e[_0x82b0ed(0x1b9)](),_0x49a0d0);if(!_0x3a7636)return{'content':[{'type':_0x82b0ed(0x1e0),'text':_0x82b0ed(0x249)+_0x49a0d0+_0x82b0ed(0x18e)}]};const _0x3050b6=_0x5e9e60[_0x82b0ed(0x238)](resolveToolName),_0x2d48b3=(_0x54ec26??[])[_0x82b0ed(0x1f7)](_0x294cff=>_0x294cff[_0x82b0ed(0x230)]())[_0x82b0ed(0x1c4)](Boolean),_0x305168=new Set((0x0,vault_1[_0x82b0ed(0x1f0)])()),_0x56572e=_0x2d48b3['map'](_0x3f5338=>(0x0,extraMcps_1[_0x82b0ed(0x1e6)])(_0x3f5338)[_0x82b0ed(0x194)])[_0x82b0ed(0x1c4)](_0x4730e2=>!_0x305168[_0x82b0ed(0x209)](_0x4730e2));return(0x0,extraMcps_1[_0x82b0ed(0x1da)])(_0x3050b6,(0x0,extraMcps_1[_0x82b0ed(0x1e2)])((0x0,extraMcps_1[_0x82b0ed(0x1f8)])(_0x3050b6),{'mcp_id':_0x3a7636['id'],'name':_0x3a7636[_0x82b0ed(0x1a4)],'package_name':_0x3a7636[_0x82b0ed(0x203)],'secret_names':_0x2d48b3})),{'content':[{'type':_0x5e9e60[_0x82b0ed(0x211)],'text':_0x5e9e60['PAeMc'](_0x5e9e60[_0x82b0ed(0x258)](_0x3a7636['name']+'('+_0x3a7636[_0x82b0ed(0x203)]+_0x82b0ed(0x1c1),_0x2d48b3[_0x82b0ed(0x264)]?_0x82b0ed(0x1df)+_0x2d48b3['join'](',\x20'):''),_0x56572e['length']?_0x82b0ed(0x1f6)+_0x56572e[_0x82b0ed(0x234)](',\x20')+_0x82b0ed(0x224):'')}]};}),tool('add_local_mcp',_0x26542c(0x1e3)+_0x26542c(0x215),{'path':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x1a0)),'secret_names':zod_1['z'][_0x26542c(0x1eb)](zod_1['z']['string']())['optional']()[_0x26542c(0x1db)](_0x26542c(0x253)+_0x26542c(0x1a1)+_0x26542c(0x210))},async({path:_0x80fffb,secret_names:_0xa95651})=>{const _0x32aa72=_0x26542c,_0x2cf22c={'YDPaP':_0x32aa72(0x1e0),'hNZHq':_0x32aa72(0x24e),'bArJn':'TOOL_NAME','BvFpy':_0x32aa72(0x1c5)},_0x24a78c=(0x0,extraMcps_1[_0x32aa72(0x191)])(_0x80fffb);let _0x435634;try{_0x435634=(0x0,extraMcps_1['readLocalMcp'])(_0x24a78c);}catch(_0x533e0a){return{'content':[{'type':_0x2cf22c[_0x32aa72(0x241)],'text':_0x32aa72(0x196)+_0x533e0a[_0x32aa72(0x27a)]}]};}const _0x391b12=resolveToolName(),_0x12786c=(_0xa95651??[])[_0x32aa72(0x1f7)](_0x2fa606=>_0x2fa606[_0x32aa72(0x230)]())[_0x32aa72(0x1c4)](Boolean),_0x4bb65f=new Set((0x0,vault_1[_0x32aa72(0x1f0)])()),_0x532152=new Set([_0x2cf22c[_0x32aa72(0x220)],_0x32aa72(0x20b),_0x2cf22c['bArJn'],_0x2cf22c[_0x32aa72(0x1f3)]]),_0x3c45b3=new Set(_0x12786c[_0x32aa72(0x1f7)](_0x4706ef=>(0x0,extraMcps_1['parseSecretName'])(_0x4706ef)[_0x32aa72(0x1be)])),_0x3580dc=[..._0x435634[_0x32aa72(0x1b4)][_0x32aa72(0x1c4)](_0x31bb6c=>!_0x3c45b3[_0x32aa72(0x209)](_0x31bb6c)),..._0x12786c[_0x32aa72(0x1f7)](_0x5c9022=>(0x0,extraMcps_1['parseSecretName'])(_0x5c9022)[_0x32aa72(0x194)])],_0x6176ae=_0x3580dc[_0x32aa72(0x1c4)](_0x5dbf50=>!_0x5dbf50['endsWith']('*')&&!_0x532152['has'](_0x5dbf50)&&!_0x4bb65f['has'](_0x5dbf50));return(0x0,extraMcps_1[_0x32aa72(0x1da)])(_0x391b12,(0x0,extraMcps_1[_0x32aa72(0x1e2)])((0x0,extraMcps_1['readExtras'])(_0x391b12),{'mcp_id':_0x32aa72(0x1f5)+_0x435634[_0x32aa72(0x203)],'name':_0x435634[_0x32aa72(0x203)],'package_name':_0x435634['package_name'],'secret_names':_0x12786c,'path':_0x24a78c})),{'content':[{'type':'text','text':_0x435634['package_name']+'('+_0x24a78c+_0x32aa72(0x1c1)+_0x32aa72(0x22e)+(_0x6176ae[_0x32aa72(0x264)]?_0x32aa72(0x1f6)+_0x6176ae['join'](',\x20')+'。ask_secret\x20でユーザーに入れてもらってから起動し直してください。':'')}]};}),tool(_0x26542c(0x1b2),'install_mcp\x20/\x20add_local_mcp\x20で追加した\x20MCP\x20を外す。次の起動から読み込まれなくなる(同梱の\x20MCP\x20は外せない)',{'mcp_id':zod_1['z'][_0x26542c(0x185)]()['describe']('外す\x20MCP\x20の\x20id\x20かパッケージ名')},async({mcp_id:_0x5d168e})=>{const _0x136b55=_0x26542c,_0x154211={'ASLtU':_0x136b55(0x1e0)},_0x1a6853=resolveToolName(),{list:_0x34d4e5,removed:_0xf8ecf9}=(0x0,extraMcps_1[_0x136b55(0x277)])((0x0,extraMcps_1[_0x136b55(0x1f8)])(_0x1a6853),_0x5d168e);if(!_0xf8ecf9)return{'content':[{'type':_0x154211[_0x136b55(0x259)],'text':'\x27'+_0x5d168e+_0x136b55(0x229)}]};return(0x0,extraMcps_1[_0x136b55(0x1da)])(_0x1a6853,_0x34d4e5),{'content':[{'type':_0x136b55(0x1e0),'text':_0xf8ecf9['name']+_0x136b55(0x1b7)}]};}),tool('change_password',{'current_password':zod_1['z'][_0x26542c(0x185)]()['describe']('現在のパスワード'),'new_password':zod_1['z'][_0x26542c(0x185)]()['min'](0x8)[_0x26542c(0x1db)](_0x26542c(0x268))},async({current_password:_0x40f3c4,new_password:_0x49e7dc})=>{const _0x183c61=_0x26542c,_0x3cd1da={'hAtMp':_0x183c61(0x274),'oaHaI':'POST'};if(!portal)return AUTH_ERROR;const _0x491346=await portal['fetch'](_0x3cd1da[_0x183c61(0x271)],{'method':_0x3cd1da[_0x183c61(0x235)],'headers':{'Content-Type':_0x183c61(0x1b3)},'body':JSON[_0x183c61(0x1c0)]({'current_password':_0x40f3c4,'new_password':_0x49e7dc})}),_0x3e518d=await _0x491346[_0x183c61(0x1b9)]();if(!_0x491346['ok'])return{'content':[{'type':_0x183c61(0x1e0),'text':_0x183c61(0x1ff)+(_0x3e518d['error']??_0x491346[_0x183c61(0x1d9)])}]};if(_0x3e518d[_0x183c61(0x190)]&&_0x3e518d[_0x183c61(0x237)])portal[_0x183c61(0x17c)]({'jwt':_0x3e518d[_0x183c61(0x190)],'refresh':_0x3e518d[_0x183c61(0x237)]});return{'content':[{'type':'text','text':'パスワードを変更しました'}]};});const SITES_UNSET=_0x26542c(0x267);function siteError(_0x33c6e1,_0x5999a9){const _0x10b247=_0x26542c;return{'content':[{'type':_0x10b247(0x1e0),'text':_0x33c6e1+':\x20サイトをドメインとして読めません('+_0x5999a9[_0x10b247(0x234)](',\x20')+_0x10b247(0x1a7)}]};}tool('list_secrets',{},async()=>{const _0x5be3f8=_0x26542c,_0x3e498d={'zNPyc':'保管中のシークレットはありません。ask_secret\x20でユーザーに入れてもらえます。','KlNXo':function(_0x3bc145,_0x17986b){return _0x3bc145+_0x17986b;},'irDrj':function(_0x2a7bee,_0x5d230f){return _0x2a7bee+_0x5d230f;},'oQXhA':_0x5be3f8(0x21e)},_0x31f6ac=(0x0,vault_1['listSecretNames'])();if(!_0x31f6ac[_0x5be3f8(0x264)])return{'content':[{'type':_0x5be3f8(0x1e0),'text':_0x3e498d[_0x5be3f8(0x17e)]}]};const _0x462fe2=(0x0,vault_1[_0x5be3f8(0x1d3)])(),_0x59fc4a=_0x478fb5=>'-\x20'+_0x478fb5+(_0x462fe2[_0x478fb5]?.[_0x5be3f8(0x264)]?_0x5be3f8(0x219)+_0x462fe2[_0x478fb5][_0x5be3f8(0x234)](',\x20')+')':(0x0,secretSites_1['looksLikeSiteLogin'])(_0x478fb5)?'('+SITES_UNSET+')':''),_0x141da1=_0x31f6ac[_0x5be3f8(0x27c)](_0x1c0fdf=>!_0x462fe2[_0x1c0fdf]?.[_0x5be3f8(0x264)]&&(0x0,secretSites_1['looksLikeSiteLogin'])(_0x1c0fdf));return{'content':[{'type':_0x5be3f8(0x1e0),'text':_0x3e498d[_0x5be3f8(0x188)](_0x5be3f8(0x1f9)+_0x31f6ac[_0x5be3f8(0x1f7)](_0x59fc4a)['join']('\x0a'),_0x141da1?_0x3e498d[_0x5be3f8(0x27f)](_0x5be3f8(0x243)+SITES_UNSET+_0x5be3f8(0x1a2),_0x3e498d['oQXhA']):'')}]};}),tool(_0x26542c(0x18d),{'name':zod_1['z']['string']()['describe'](_0x26542c(0x1e8))},async({name:_0x452054})=>{const _0x253160=_0x26542c,_0x89f1ee={'ZKGtz':function(_0x1b95c6,_0x27fe9d){return _0x1b95c6+_0x27fe9d;},'PIleX':_0x253160(0x1e0)},_0x4f0493=(0x0,vault_1[_0x253160(0x251)])();if(!Object['prototype']['hasOwnProperty'][_0x253160(0x1dd)](_0x4f0493,_0x452054))return{'content':[{'type':_0x253160(0x1e0),'text':_0x89f1ee[_0x253160(0x25f)](_0x253160(0x272)+_0x452054+_0x253160(0x276)+_0x253160(0x1ce),_0x253160(0x193))}]};const _0x3a61bc=(0x0,vault_1[_0x253160(0x1d3)])(),_0x2ea587=Object[_0x253160(0x17a)][_0x253160(0x187)]['call'](_0x3a61bc,_0x452054)?_0x3a61bc[_0x452054]:undefined;if(_0x2ea587?.['length'])return{'content':[{'type':_0x89f1ee[_0x253160(0x213)],'text':_0x253160(0x205)+_0x2ea587['join'](',\x20')+')。値は渡せません。'+_0x253160(0x22b)}]};return{'content':[{'type':_0x253160(0x1e0),'text':_0x4f0493[_0x452054]}]};}),tool(_0x26542c(0x25c),_0x26542c(0x26c)+_0x26542c(0x201)+_0x26542c(0x21f)+_0x26542c(0x1a8),{'name':zod_1['z']['string']()['describe']('シークレット名(例:\x20RAKUTEN_LOGIN_PASSWORD)。同じ名前があれば上書きする(画面にもそう出る)'),'sites':zod_1['z'][_0x26542c(0x1eb)](zod_1['z'][_0x26542c(0x185)]())[_0x26542c(0x17d)]()[_0x26542c(0x1db)](_0x26542c(0x1b8)+'決めると\x20browser_fill_secret\x20で値を見せずにそのサイトの入力欄へ入れられる。省くと、前に決めたサイトをそのまま使う')},async({name:_0x40f5f7,sites:_0x4ccb93})=>({'content':[{'type':_0x26542c(0x1e0),'text':await(0x0,secretInput_1['askSecret'])(_0x40f5f7,_0x4ccb93,{'input':secretInput_1[_0x26542c(0x21d)],'exists':_0x4f3a90=>(0x0,vault_1[_0x26542c(0x1f0)])()['includes'](_0x4f3a90),'currentSites':_0x373eaf=>(0x0,vault_1[_0x26542c(0x1d3)])()[_0x373eaf]??[],'save':(_0x39ba06,_0x49993f,_0x3bdc5b)=>{const _0x58734a=_0x26542c;(0x0,vault_1[_0x58734a(0x1c8)])(_0x39ba06,_0x49993f);if(_0x3bdc5b)(0x0,vault_1[_0x58734a(0x240)])(_0x39ba06,_0x3bdc5b);},'command':resolveToolName()['toLowerCase']()})}]})),tool(_0x26542c(0x26b),_0x26542c(0x182)+'ユーザーがこれから値を入れる場合は\x20ask_secret\x20を使う(値をチャットに貼ってもらわない)',{'name':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x1de)),'value':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x17b)),'sites':zod_1['z']['array'](zod_1['z']['string']())['optional']()[_0x26542c(0x1db)]('Web\x20サイトのログイン用のパスワード等なら必ず渡す:\x20それを入れてよいサイトのドメイン(例:\x20[\x22example.com\x22]。サブドメインも含む)。'+_0x26542c(0x1cc)+_0x26542c(0x244)+_0x26542c(0x1d2))},async({name:_0x48ca82,value:_0x52a90f,sites:_0x975fea})=>{const _0x5c929e=_0x26542c,_0x20968e={'oTznT':_0x5c929e(0x1e0),'OAyRF':function(_0x4d9ef8,_0x4eb111){return _0x4d9ef8+_0x4eb111;}},_0x4f9fc2=_0x975fea?(0x0,secretSites_1['normalizeSites'])(_0x975fea):null;if(_0x4f9fc2?.[_0x5c929e(0x1ea)][_0x5c929e(0x264)])return siteError(_0x5c929e(0x23f),_0x4f9fc2[_0x5c929e(0x1ea)]);(0x0,vault_1[_0x5c929e(0x1c8)])(_0x48ca82,_0x52a90f);if(_0x4f9fc2)(0x0,vault_1[_0x5c929e(0x240)])(_0x48ca82,_0x4f9fc2[_0x5c929e(0x1dc)]);const _0x348adc=(0x0,vault_1[_0x5c929e(0x1d3)])()[_0x48ca82];return{'content':[{'type':_0x20968e[_0x5c929e(0x22c)],'text':_0x20968e['OAyRF']('✅\x20シークレット\x20'+_0x48ca82+'\x20をローカル暗号金庫に保存しました(この\x20PC\x20の全ツールで共通。値はこのマシンから出ません)。',_0x348adc?.[_0x5c929e(0x264)]?_0x5c929e(0x23a)+_0x348adc[_0x5c929e(0x234)](',\x20')+'(すぐに\x20browser_fill_secret\x20で使えます)。':(0x0,secretSites_1[_0x5c929e(0x225)])(_0x48ca82)?_0x5c929e(0x216):'')}]};}),tool(_0x26542c(0x178),{'name':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x1ab)),'sites':zod_1['z']['array'](zod_1['z'][_0x26542c(0x185)]())['describe'](_0x26542c(0x1c6))},async({name:_0x4ee6a1,sites:_0x5575a6})=>{const _0x403ec5=_0x26542c,_0x4cb715={'hlLdK':function(_0x3875ec,_0x179604,_0x51b297){return _0x3875ec(_0x179604,_0x51b297);},'XJpBH':_0x403ec5(0x1ad),'iEUNS':_0x403ec5(0x1e0)};if(!(0x0,vault_1['listSecretNames'])()[_0x403ec5(0x20e)](_0x4ee6a1))return{'content':[{'type':_0x403ec5(0x1e0),'text':_0x403ec5(0x272)+_0x4ee6a1+_0x403ec5(0x199)}]};const _0x369af5=(0x0,secretSites_1[_0x403ec5(0x212)])(_0x5575a6);if(_0x369af5['bad'][_0x403ec5(0x264)])return _0x4cb715[_0x403ec5(0x20d)](siteError,_0x4cb715[_0x403ec5(0x252)],_0x369af5[_0x403ec5(0x1ea)]);const _0x125286=(0x0,vault_1[_0x403ec5(0x1d3)])()[_0x4ee6a1]??[];if((0x0,approval_1['clearingNeedsApproval'])(_0x125286,_0x369af5[_0x403ec5(0x1dc)])){const _0x5dc2af=await(0x0,approval_1['confirmWithHuman'])((0x0,approval_1[_0x403ec5(0x26a)])(_0x4ee6a1,_0x125286));if(_0x5dc2af!==_0x403ec5(0x1e9))return{'content':[{'type':_0x403ec5(0x1e0),'text':_0x403ec5(0x23e)+_0x5dc2af+')。勝手にやり直さず、ユーザーに確かめてください。'}]};}return(0x0,vault_1[_0x403ec5(0x240)])(_0x4ee6a1,_0x369af5['sites']),{'content':[{'type':_0x4cb715[_0x403ec5(0x1bb)],'text':_0x369af5[_0x403ec5(0x1dc)][_0x403ec5(0x264)]?'✅\x20'+_0x4ee6a1+_0x403ec5(0x192)+_0x369af5[_0x403ec5(0x1dc)]['join'](',\x20')+_0x403ec5(0x19d):'✅\x20'+_0x4ee6a1+'\x20の入れてよいサイトを外しました(browser_fill_secret\x20では入れられなくなります。値は残っています)。'}]};}),tool(_0x26542c(0x21b),{'name':zod_1['z'][_0x26542c(0x185)]()[_0x26542c(0x1db)](_0x26542c(0x1a3))},async({name:_0x111097})=>{const _0x139506=_0x26542c,_0x5bd103={'FXaCj':_0x139506(0x1e0)},_0x5dec21=(0x0,vault_1['deleteSecret'])(_0x111097);return{'content':[{'type':_0x5bd103[_0x139506(0x1a5)],'text':_0x5dec21?_0x139506(0x272)+_0x111097+_0x139506(0x23c):_0x139506(0x272)+_0x111097+_0x139506(0x1e7)}]};});async function main(){const _0x59060b=_0x26542c,_0x400824={'shJdG':_0x59060b(0x183),'GfbkX':'どのツールとして起動するか分かりません(TOOL_NAME\x20がありません)。起動プログラム(launcher)から起動してください。\x0a','QDqay':function(_0xf72de4,_0x4443a3){return _0xf72de4(_0x4443a3);},'piNor':_0x59060b(0x1d7)};!process.env.TOOL_NAME&&(process[_0x59060b(0x22a)][_0x59060b(0x1d4)](isSecretCommand?_0x400824[_0x59060b(0x255)]:_0x400824[_0x59060b(0x208)]),process['exit'](0x1));if(isSecretCommand){await _0x400824[_0x59060b(0x180)](runSecretCommand,rawArgs[_0x59060b(0x27b)](0x1));return;}(!process.env.TOOL_TOKEN||!process.env.PORTAL_URL)&&(process[_0x59060b(0x22a)]['write'](_0x400824['piNor']),process[_0x59060b(0x1c7)](0x1));const _0x3a6366=resolveToolName();portal=new portalClient_1[(_0x59060b(0x1ee))](process.env.PORTAL_URL,process.env.TOOL_TOKEN,{'read':()=>(0x0,vault_1[_0x59060b(0x1f4)])(_0x3a6366),'save':_0x5dea7d=>(0x0,vault_1[_0x59060b(0x278)])(_0x3a6366,_0x5dea7d)});const _0x198701=new stdio_js_1[(_0x59060b(0x1fc))]();await server[_0x59060b(0x1d8)](_0x198701),process['stderr'][_0x59060b(0x1d4)]('MCP\x20Server\x20started\x0a');}function _0x33db(_0x2b9694,_0x491afb){_0x2b9694=_0x2b9694-0x177;const _0x3ad332=_0x3ad3();let _0x33db38=_0x3ad332[_0x2b9694];if(_0x33db['JLdKko']===undefined){var _0xba33f9=function(_0x2b8671){const _0xa72818='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x587e82='',_0x1f2832='';for(let _0x3c8564=0x0,_0x1b54ab,_0xfb67dd,_0x348f7e=0x0;_0xfb67dd=_0x2b8671['charAt'](_0x348f7e++);~_0xfb67dd&&(_0x1b54ab=_0x3c8564%0x4?_0x1b54ab*0x40+_0xfb67dd:_0xfb67dd,_0x3c8564++%0x4)?_0x587e82+=String['fromCharCode'](0xff&_0x1b54ab>>(-0x2*_0x3c8564&0x6)):0x0){_0xfb67dd=_0xa72818['indexOf'](_0xfb67dd);}for(let _0x8214dc=0x0,_0x18045b=_0x587e82['length'];_0x8214dc<_0x18045b;_0x8214dc++){_0x1f2832+='%'+('00'+_0x587e82['charCodeAt'](_0x8214dc)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f2832);};_0x33db['qfsEth']=_0xba33f9,_0x33db['NfJpyg']={},_0x33db['JLdKko']=!![];}const _0x313e6e=_0x3ad332[0x0],_0x5441d0=_0x2b9694+_0x313e6e,_0x2b8452=_0x33db['NfJpyg'][_0x5441d0];return!_0x2b8452?(_0x33db38=_0x33db['qfsEth'](_0x33db38),_0x33db['NfJpyg'][_0x5441d0]=_0x33db38):_0x33db38=_0x2b8452,_0x33db38;}main()[_0x26542c(0x1ac)](_0x185797=>{const _0x282450=_0x26542c,_0x349765={'cQbIS':function(_0x493960,_0x14c0f7){return _0x493960 instanceof _0x14c0f7;}};_0x349765[_0x282450(0x25e)](_0x185797,vault_1[_0x282450(0x242)])&&(process[_0x282450(0x22a)][_0x282450(0x1d4)](_0x185797[_0x282450(0x27a)]+'\x0a'),process[_0x282450(0x1c7)](0x1)),process['stderr']['write'](_0x282450(0x245)+_0x185797+'\x0a'),process[_0x282450(0x1c7)](0x1);});function _0x3ad3(){const _0x5570cf=['C3rYAxbgAw5HBe5LD2XPBMu','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDcbZzxqGpe5btuu+ifSTlxnPDgvZigv4yw1WBguUy29Tlgv4yw1WBguUB3jNxsdVVi8GC2vJCMv0ihnLDcaTlxn0zgLUlwPZB24','6yEr5BQR44gU56Ey5A+g44gU5zcn5yMn77YiBgLZDf9ZzwnYzxrZioobP+EIUUobI+ocGEocIEocJoocI++8Iq','y2f0y2G','5Rg644kb44gM44ge44g+44gB44kt','zxjYB3i','ntKYyK9OC3nM','lI9MzwvKyMfJAW','CfjvDKG','Dw5PBNn0ywXSx21JCa','yxbWBgLJyxrPB24VANnVBG','zgvJBgfYzwrfBNy','l21JChm','zMv0y2G','ioocKUwKLUobL+obVUobL+obN+oaGUodHoodVoodQ+ocKUI1T+wlLEobL+EBToobMEobQowpJEAyOoobLEocJoobVUobMEoaGG','v2vIioocTEocPoodIoobRUodREocSoocPoodS+EuQoobRUodKEocUEodR+odVoodIEETIEobQUocIEA4OEobMtOG44gD44km44ks5ywL44km44gM44ki44ge44k144kK44oi44gU44oj44oH44kK44oZ77Yi5l6loIbBiMv4yw1WBguUy29TiL3JGilJGRxJG5BJG4NJG6hJGQtJG7pJGOlLKkVJGOdVViNJGii','ANnVBG','lI9ZzwnYzxrjBNb1Da','AuvvtLm','5PYQ5Bco5ywL','mtyXndLVAvHUuLu','zw52','Aw5KzxHpzG','C3rYAw5NAwz5','77Yj44ks44gt44gU44oe44o844oR44gR6l+95yQG44gx44g+44gx44gF44cckIRJG4tJG7ZJG6VJGPlOTBFLI5xJGzFNM7tJGzNJGAJKVB/JGyJJGB7JGzKQkUoaGG','Bg9Hzf9RBM93BgvKz2u','x19LC01VzhvSzq','zMLSDgvY','rKjFtunqx0nptKzjrW','5ywL44km44gM44ki44ge44k144kK44oi44gU44oj44oH44kK44oZ77Yi5l6loIbBiMv4yw1WBguUy29TiL3JGilJGRxJG5BJG4NJG6hJGQtJG7pJGOlLKkVJGOdVViNJGilKU4RJGA7OQk3LRPRJGPlNVA7JGy3MJ5VJGyJJGOVJGilNQBRJGA7PHy3LIjCGw10G44gN5Asw44gz','zxHPDa','C2v0u2vJCMv0','DxrMltG','ioobR+s/NEEUOEobLEocJoobPUobHoobVUobM+ocKYKk','77YjoIa','44gP44gU44k144kK44oi44gU44kc44gU44gl44ks44oM44o844k244o844gR56k644gl44kb44gM44gl44kj5RIH44gz44cc5Rg644kb44kl44gOigjYB3DZzxjFzMLSBf9ZzwnYzxqG44gN5ycK44ks6kAl44gB44gA44gR44gD44gU44k144kK44oi44gU5ywL5yQB5QYe44g45ywL44km44kj44km','swr4B3G','44ox44oT44k444kN44kV44oi44keifbdioobRIbdtefvreuUBwqG44gm5yIL44gU56Ey5A+g566H55cg77Yi44or44k544oV44o844oj566H55cg44gUie1ducdJGOqGq0XjioobQUobQE+8IEocKUAmH+wUMUobL+obPUobHoocJoobSooaGEobNEobOEocIEobI+ocIEwpLUobO+obPUobJ+obOoobLEobHooaGG','C3rHCNrZv2L0Aa','v0HrsNO','5ycK44gm56M644gN44gz44cc5lIT5Q2I44gx44g+44gx44gF44cc','55Yb44gp44gO44cb5yMn44gR5Rg644kb44gF44k144kK44oi44ks44gD44gU44g+44g+5l2/44gg44cc44gc44gO44gl44kj5Asj44gi44kl44gO44gn44gVihnLDf9ZzwnYzxrFC2L0zxm','CMvHzfnLy3jLDfnPDgvZ','D3jPDgu','y2XPzw50vMvYC2LVBG','qg1VzgvSy29UDgv4DhbYB3rVy29Sl3nKAY9Zzxj2zxiVBwnWlMPZ','6kQn6kI85Oof5AcX44gm44gc44kk44g+44gB44kt44cc6lw35yUv44ox44oT44kW44oP44oG77YiBgf1BMnOzxlVViNJGyVJGONOTBFLI5xJGzFJGABJGy/JGAdJGzxJGytJGiik','y29UBMvJDa','C3rHDhvZ','D3jPDgvfEhrYyxm','zgvZy3jPyMu','C2L0zxm','y2fSBa','44k344o844kV44oS44od44oi5zcn77Yi5l6loIbpuevoquLFqvbjx0TfwE+8Iq','cUA4OEobMEENMowVHJOG','Dgv4Da','5l2/44ge5PA5oIbHz2vUDc1JB3jLihnLy3jLDcbYBsa8tKfnrt4k','ywrKrxH0CMe','6iEQ5yIg44gN5l2C44gJ44gFie1duo+8IoobK+obRLbd44gU44ov44kP44oR44oa44gR44gc44kl44kc44gU77Yj44ks44cb44gt44gU44oe44o844oR44gR6l+95yQG44gz44kl44cc5QYH44gR44oe44o844oR44ks6lw35yUv44gx44gF44gO44gn44gl44kj5l2/44gi44kl44cc','zgvMAw5LuhjVCgvYDhK','lI9LEhrYyu1JChm','CgfYC2vtzwnYzxroyw1L','ioobR+IMI+obPoobI+ocIUobVUobM+ocK+oaGG','5y+w5B6x44gz44kl44k344o844kV44oS44od44oi5zcn77Yi5l6loIbpuevoquLFqvbjx0TfwE+8Iq','yxbWCM92zwq','yMfK','yxjYyxK','lI9HChbYB3zHBa','BgLZDf9Ty3bZ','ug9YDgfSq2XPzw50','BgjHEwm','BgLZDfnLy3jLDe5HBwvZ','reHQC0W','CMvZzxrwyxvSDa','qNzgChK','CMvHzfrVA2vUCW','Bg9JywW6','cUkAOcdPH5hLUQVJGAVNHkhJGytLKi3LIy3JGyZJGylJGORJGB7JGzK6ia','BwfW','CMvHzev4DhjHCW','5l+D566H5lIT44gU44k344o844kV44oS44od44oioGO','DMfSDwu','nZy3nty4sNHUvfvo','u3rKAw9tzxj2zxjuCMfUC3bVCNq','C2v0','C2vUzf9MzwvKyMfJAW','44kO44oP44o8oIa','lI92yxvSDa','5PYS5lQ644gm5ywL44km44gF5ycK44ks44gD44gU44g+44g+6yEr5BQR44gR5l+D5A2y44gz44kl44cc5ycK44gViefjioobQ+A4OEocIEobQUobHo+8IoI/Los6I+obR+wqJEwjJEobQoE1KoAENoobOoobKE+8IEoaGG','44o75ywO44oe44o844oR5ywX6ycA77Yj44cc','CgfJA2fNzv9Uyw1L','Cg9ZDezLzwrIywnR','44gt44gU56Ey5A+g44gV44k144kK44oi44gU44oT44kW44kK44oZ55sO44gN44gz77Yi5ywL44km44gM44ki44ge44k144kK44oioIa','CxvLC3rPB25iAwrKzw4','ls1ZDgrPBI1QC29U','r2zIA1G','AgfZ','5l+D566H5lIT44gU44k344o844kV44oS44od44oi44gV44gc44kk44g+44gB44kt44cccG','ve9ptf9ut0TftG','yxv0B1jLCg9YDezHAwX1CMu','AgXmzeS','Aw5JBhvKzxm','6l+95yQG5RIi44g/77Yi5QYH44gU6lw35yUv44gl44kj77Yj','6yEr5BQR44gRihbHy2THz2uUANnVBIdJGA4GzNvUBNLcB290Ac5LBNyG44gO5zcm44gy5zcn5yMn44gN5ywL44gJ44gM44ge44km44gW5OYh5A6A44gV6kAb44kj44gQ44ge','AKTmDuS','BM9YBwfSAxPLu2L0zxm','ueLSzvG','5zcm5QkX5RIi44g/','44ov44kP44oR44oa44gUihbHy2THz2uUANnVBIdJGA4GyMLUioocKUI1T+wlLEobL+oaGEMhKEw6Q+obI+ocIEobRYbWywnRywDLlMPZB24G44gUigz1BM55qM9VDgGUzw52ioobP+wUO+IOGoobL+obN+wqJEwjJEobQcbZzwnYzxrFBMfTzxmG44gG44gr44ks5RIH44gz','5ywL44km44gM44ki44ge44k144kK44oi44gV5PYQ6kIT5A6A44gN44gz44ccv2vIioocTEocPoodIoobRUodREocSoocPoodS+EuQoobQUocIEoaGEobQEobRUocTEocPoodIoobI+odPUodVoocTUodVoobQ+EIUUobI+ocGEobPIbZzxrFC2vJCMv0x3nPDgvZioobP+AXUUocGEobPUobJ+obOoobLEobHooaGG','4PYfioocT+odVoocR+odRoodG+odIca','6kQn6kI844kO44oP44o877Yisfruuca0mdhVViK6ioodREocSoocPoodS+obRUACN+MzKoobJowiH+ocJooaGEwpLUocIUEBToobM+obVUobM+ocK+obP+obL+obN+oaGIOQ44oe44o844oR44ks6lw35yUv44gx55U044gx44gM44gp44gG44gv44gekIRVViJOTBFLI5xMMylJGAVJG63JGRdJGQtJG7pJGzFNM7tJGzVJGB7JGzNVViNJGii','77Yi5ywL44km44gM44ki44ge44k144kK44oioIa','qvbj44kO44oP44o8oIa','zgvSzxrLx3nLy3jLDa','vxr4yKm','Aw5WDxrgCM9TshvTyw4','44ks44oM44o844k244o844gR56k644gl44kb44gM44gl44kjihnLDf9ZzwnYzxrFC2L0zxmG44gN5Rg644kb44gM44gp44gG44gv44ge77Yi5ycK44gV6igE44gn55U044gv44gQ44ge44o7z2v0x3nLy3jLDcdJGAFLJ5BJGORLH7RJGzxJGARJGytVViNJGii','56Ey5A+g44gU5ycK44ks44ob44oJ44od44oi44gR6lk844gJ44gM44kc44kj44gg44ki44gg6Ac844kt44gN44gV44ge44gr44gQ44ge44cc5ycK44ks5lYA6kMX44gR5yE644gv44gA44gR5RIi44g+44gB44kl44gF44kb44gU6ygt5yw344cc','Ae5Ashe','nZC5mtK1nxvwC1vcrG','A3jjwKW','4Oc7ioobK+ocJoobR+I/VEwkOoocPoodS+ocUEodIoodVoodQ+obP+obJEocIYbnq1aG44gU5lIa6kAN44gN44gz44cccG','44ccyxnRx3nLy3jLDcdJGAFJG6BJG7ZJGRBJG7ZJGAVLHAxJGOZJGABJGOlJGONJGApJGABJGyVJGONOTBFLI5xJGzFNM7tJGzFJGABJGy/JGAdJGzxJGytJGii','Bg9VA3nmAwTLu2L0zuXVz2LU','yMLUza','C0vxy00','rKvfrejbq0TFsu5tvfjvq1rjt05t','jYdJGA/OV73LIQdJGzxJGOZJGABJGytJGB7JGzVJGPpVViJLKiZMORhJGA4GtunqioobR+wKLUobM+obVUobM+ocK++8IEoaGG','C3rKzxjY','44ow44oP44kM44k244gU5ywL5yQB5QYe44g444gVigjYB3DZzxjFzMLSBf9ZzwnYzxqG44ks5l2/44gJ44gM44gp44gG44gv44ge77Yi5ywL44km44kl5yMn44gR5PYS5lQ644gU55s76z2I44gN6kIX5y+V44ks5Rgc44kb44g+44gz77Yj44cc','B1r6BLq','mte0nJC1mLzvz2fTyW','cUocS+odVoodIEocKUEBToobL+obN+ocIEoaGEodK+odQ+odIEobL+obPUobI+ocIEodHoodVoodQ+ocKUI1T+wlLEobL+EBToobMEobQowpJEAyOoobLEocJoobVUobMEoaGG','su1iD0C','DhjPBq','Cgf0Aa','qKj2vgm','5l2v44gR44gK44ge44gM44gl77Yi5l6loIbHz2vUDc1JB3jLlcba44og44od44kV44oQ44o844ojlcbazNvUBNKTyM9VDgGVD2L6yxjKlw9Yy2HLC3rYyxrVCU+8Iq','AM9PBG','B2fiyuK','l2fWAs9Ty3bZ','CMvMCMvZAf90B2TLBG','yujzChO','ls1ZAxrLCW','5ywL44km44gM44ki44ge44k144kK44oioIa','ioocKUIQREobV+I+VoocGEobVUobM+ocK+obP+obL+obNZOG','ioocKUwjIUMzPoobL+obVUobL+obN+oaGG','44kR44k/44oT44kW77YiBgLZDf9Ty3bZ77Yj44gUie1ducdJGPlJGihJGzpJGA7JG4tJG7ZJG6VJGAVOV73LIQdJGzNJGOVJGilMRkhJGAVJG4tJG7ZJG6VJGPlOTBFLI5xJGzFJGz/JGAJJGy3JGyVJGONKVB/JGyJJGOVJGilPJBxJGA7LGktJGA/MUkhJGzxJGARJGytVViJPH5hLUQVJGA7LKi3LIy3JGAdJGzhJGPlMJiFLRPRJGzNJGOVVViK','5Asw44gx44gM44ge44g+44gB44ktoIdMNkZKURRJGA7OQlhLJ6/JGyZJGylJGORJGB7JGzVJGPpJGAFJGzFJGz/VViG','5l+D5A2y44gx44gM44ge44g+44gB44kt','C2v0u2vJCMv0u2L0zxm','wurqyva','vMf1BhrfCNjVCG','cGRJGiW','77Yi44gz44gq5l2/44gi44kl77Yj44cb5lUw44gU44k144kK44oi44gR44gV5ywL44kj44gQ44ge44cc5Rg644kb44gQ44ge44gO44ow44oP44kM44k244gR44gV5ywL44km44kj44km44gQ44ge44ccqvbjioocREodVoETIEobR+s4JEIMGEoaGG','rMf0ywW6ia','nJaZv0vzvK95','mc4XlJa','twnWu2vYDMvY','44kR44k/44oT44kW44gRicC','ve9ptf9oqu1fioobJoIOREwUMUobLEocJoobPUobHoobVUobM+ocKW','mZGYodeWtfjhCfPn','u0vorf9gruveqKfds19ervnduKLqveLptG','s05pv0XfreDfx0zpt1rfuG','ue9svefmx1vsta','BwLNCMf0zvrVB2XwyxvSDa','yxnRx3nLy3jLDcaVihn0B3jLx3nLy3jLDcaVigDLDf9ZzwnYzxqGlYbSAxn0x3nLy3jLDhmGlYbKzwXLDgvFC2vJCMv0ic8GC2v0x3nLy3jLDf9ZAxrLCYdJGyW','CMvHzfnLy3jLDhm','wePWqKG','5A6J6kIa5lUL5Asw44gR5RIH44gz44cb44g+44gF44gV5zcn5yMn44ks5lUy44gr5PU/44gi44gM5RIH44gz6yEr5BQR44gU56Ey5A+g44cc','44gt44gUuepJGA7JG5xJGQNJG6VJG4dJGyVJGONOV73LIQdMUiJJGB/VViJMRkhJGA7OTBFLI5xJGyVJGONVViK','C2HkzeC','ioocKUAAL+wpT+wmLUs/NEwTMoobL+obVUobL+obN++8Ia','C2vJCMv0','uefLtwm','qvnmDfu','wwLgr0O','Dg9VBa','yxnRx3nLy3jLDa','DMHryw0','y1fIsvm','wKThDhO','lI9ZzwnYzxrtAxrLCW','5lIa6kgm44gU6kAb57se','44gt44gUie1ducdJGAVNKRdLOOpLPiNMLBdJGAJJGzFJGABMUkhJGzNPH5hLUQVJGA7NP5JLR4BJGii','oti4mdG5nM5UCxb6Aq','BgvUz3rO','5l+D5A6i5OUf5B2t44gR6ycb44kk44g+44gx44gF44cc44gc44kk44gm44gO44gg44gu44gw44ge44g+44gz44cc5l2C5QwT44ks57AA44gr44gM44gp44gG44gv44ge44cc','qNzsquy','5ywL44km44gM44ki44ge44k144kK44oi77YA5PYQ6kIT5A6A','5PAW44gx44ge44or44k544oV44o844oj77YiooAwH+wTL+s7PEs4IU+8Iq','5PYa5yID44gl44kj5l2/44gi44g+44gz77Yi44kK44oZ44k544oi44o844oR5lIn6kAb77Yj44cc','y2XLyxjtAxrLC01LC3nHz2u','C3rVCMvFC2vJCMv0','44oM44o844k244o844gm56Ey5A+g77Yi44or44k544oV44o844oj44o744oT44kW44kK44oZ5Oof5AcX44o7qvbjioocREodVoETIE+8IEocKUMhKEw6Q+obQ+s/NEwTMoobL+obN+obHoobQoobJEobR+w/HEobMUobK+ocJoocKUs9V+obHUoaGUodPUodVoocTUodVoobRIbqqYdJGAVKVi/JGzVLRzFJGA7LHAxLIPVNLlVPNAlJGPlLH7RJGzFJGie','C3rKB3v0','6yca6yg/44gz44kl6yEr5BQR44gV44gc44kk44g+44gB44kt44gN44gx44gF44cccG','D1ftD0i','rvDbzu4','Aef0txa','44k344o844kV44oS44od44oiia','jYdJGAVLR77LV5ZJGzNJGOTlBM93BgvKz2xJGyZOPOVJGAtJGyVJGORJGB7JGzVJGPpJGAFJGzFJGz/JGilNRQhNKiBOGixJGAVJGyRLLy/JGytLKiJJGO/JGzVJGy/JGAdJGzxJGytJGii','l2fWAs9HDxrOl2nOyw5Nzs1WyxnZD29Yza','ioocKUwjIUMzPoobL+obVUobL+obN+oaGGO','ioobR+obK+obRUMhKEw6Q++8IoobK+obRIbqqYdJGA7LHAJJG4tJG7ZJG6VLHBhPGjRJG7TSAxn0x3nLy3jLDhmG44gN5zcn5yMn44ks56k66kQn44gN44gn44kl77Yj44gR44gc44kk44g+44gB44kt44cc','CMvTB3zLrxH0CMe','C2f2zvrVA2vUCW','44k344o844kV44oS44od44oi77Yi6yEr5BQR77Yj44gU6kQT44g/5PU444gn44gV44gt44gU5lIa6kAN44gR5yE644g+44gB44kt44cc','BwvZC2fNzq','C2XPy2u','C29Tzq','zgvSzxrLu2vJCMv0','mtq0nhLuBvzPuG','AxjeCMO','CgfYC2vtzxrszxf1zxn0','C2v0x3nLy3jLDf9ZAxrLCW','yNvNoIdKUi3LHBFLKiJJG7VOQQtLI5xKVzZJG7VMIyVPOiBMM7JJGA7OQQtJGOOGlYbPBxbYB3zLBwvUDdOG5Ps55zAe5Qgi44o75QYY44gx44ge5QMF6io9','ChjVDg90ExbL','44k344o844kV44oS44od44oi44gU5ycK','ywrVChq','B3b0Aw9UywW','EK5qEwm','A2ryBvm','uurXyxK','icaTia','5ycK44gm44gz44gN44gR5lYA6kMX44gR44gc44kl56Ey5A+g77Yi44oM44o844k244o844gm44ob44oJ44od44oi44gR5PU444ge44gF44o75l2C5QwT44gU5lIT44gN55M66kgm44gv44km44gFiefqssdJGQ3JG7ZNRyNVViNJGPlPH5hLUQVJGAVKV53LRzJJGzNJGOVJGii','44gP44gU44oe44o844oR44gU5Pon5l2C44gl5yIg44gl44kk44g+44gB44kt44cc5zce44oe44o844oR44gU44kZ44oE44oZ44oj77Yi5l6loIbKzxzHz2vUDcbZzwnYzxqGBgLZDo+8IEobI+ocIEwUN+IHJoobL+obPUobJ+obOoobLEobHooaGGO','rKzkzuG','C3rYAw5N','DMf1BhreAxi','AgfZt3DUuhjVCgvYDhK','s2Xowg8','ANn2Agi','ywDLBNqTy29Yzq','C3rKAw4','5l+D566H5lIT44gU44k344o844kV44oS44od44oi77Yi5ywO44oe44o844oR5ywX6ycA77YjoGO','z2v0x3nLy3jLDa','jYdJGyZJGylJGORJGB7JGzVJGPpJGijSAxn0x21JChmG44gNigLKioocKUEIUUIQJEobL+obPUobJ+obOoobLEobHooaGG','y29UDgvUDa','Dg9Rzw4','ywjZB2X1DgveAxi','ioocKUwfPEocJoobPUocIoobHoocTEocPoodIoocKIa','44gP44gt44gR44kc54sH44gr44km44gW44oM44o844k244o844gR56k66kQn44gx44cbyxnRx3nLy3jLDcdJGAFMNkZKURRJGAVLHAxJGOZJGABJGOlJGONJGApJGABJGy/JGAdJGzxJGytVViJLGktJGPlJG4hJG6pJG4pJG4JJGAVOSRZJGApJGABJGOlJGONJGO/JGARJGytVViNJGii','DMf1Bhq','lI9WCM9TChq','6l+95yQG44gN44gn44g+44gB44ktoIa','wefgD0y','ioobRUwaPoocKUwfPEwkM++8IoIHQoEKUUobLEocJoobVUobM+ocK++8ItOG','ioobR+MhKEw6Q+obQ+obGUocIUobVUobM+ocK++8IgXPC3rFC2vJCMv0CYdJGAFLKi3LIy3JGPlNORRJGyVJGOhJGABJGy/JGAdJGzxJGytVViNJGii','6kQT44g/6l6844ka5OMl6Acg5PU444gU44kT44o844oV44o844oj77Yi5l6loIba6kAb5lU25A6A576P77Yj','EM9K','BgLZDa','ioobQ+obL+obVUobL+obN++8IoobMEobKoobQYbICM93C2vYx2zPBgXFC2vJCMv0ioobP+s9V+obIoobVUobMEoaGUwaPoobR+wKIEobIoobPUobHoobVUobM+ocK++8IEoaGG','CMvHzezPBgvtEw5J','mta1ndi3t2zJwLHw','tunqioobRUodLEocQEodQ+odGo+8IhbHy2THz2uUANnVBIdJGyZJGylJGOVLOltMIydVViNJGilJG5pJG6VJG4NMUiJJGB/JGAFJGylJGOVJGzpJGAG','6yEr5BQR44gU5zcn5yMn44gO55kW5Akd5Asj5PwW44gU5zcn5yMn44gm5zcm44gy44gQ44kj5zcn5yMn44gG44gr77Yi5l6loIaItK9usu9ox0fqsv9lrvKI77Yj44cc6ygv44gg44gO44gn44gV44cm55kW5Akd5Asj5PwW5zcnpEMhKEw6Q+obRUwqJEwjJEoaJE+8Ios+IZOGiK5pveLptL9bueLFs0vzpw5VDgLVBI3KVjRNPl7NLkGI77Yj44cc5ycK44gV5PU444gl44gQ44ge44cc','44cn44gU56Ey5A+g44gVigjYB3DZzxjFzMLSBf9ZzwnYzxqG44gN44ow44oP44kM44k244gR5ywL44km44kj44km44g+44gB44kt44cc5l2/44gg44gO44gn44gV44cb44gP44gU44k144kK44oi77Yi44oj44oH44kK44oZ77Yj44gN5l2/44gg44kc44gU44gl','5yMk6zMK44gz44kl44k344o844kV44oS44od44oi5zcn','BMfTzq','rLHHq2O','tunqioIhQUI6Q+obJowUO+IOGoobL+obPUobHoocI+wqJEwjJEobR+AmH+wUMUobL+obQUobJ+obPUocGUA4OEocI++8IoMhKEw6Q+obQ+wqJoobMowqJEwjJEobP+wfPEobO+obPUobHoocJoobSo+8Iq','77Yj44cczxHHBxbSzs5JB20G44gU5B2I44gN5RIH44gx44gM44gp44gG44gv44ge44cc','v2vIioocTEocPoodIoobRUodREocSoocPoodS+EuQoobQUocIEoaGEobQEobRUocTEocPoodIoobRUocGUobRUobI+ocKUodPUodVoocTUodVoobQ+EIUUobI+ocGEobPIbZAxrLCYdJGAVMUkhJGzK'];_0x3ad3=function(){return _0x5570cf;};return _0x3ad3();}
|
package/dist/launcher.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const _0x137989=_0x54ad;(function(_0x1f2346,_0x4a44d7){const _0x2d6157=_0x54ad,_0x4a8c10=_0x1f2346();while(!![]){try{const _0x1d7fb1=parseInt(_0x2d6157(0x168))/0x1+parseInt(_0x2d6157(0x17a))/0x2+parseInt(_0x2d6157(0x124))/0x3+-parseInt(_0x2d6157(0x161))/0x4*(-parseInt(_0x2d6157(0x1ea))/0x5)+parseInt(_0x2d6157(0x1f2))/0x6+parseInt(_0x2d6157(0x1e7))/0x7*(parseInt(_0x2d6157(0x1df))/0x8)+parseInt(_0x2d6157(0x16d))/0x9*(-parseInt(_0x2d6157(0x180))/0xa);if(_0x1d7fb1===_0x4a44d7)break;else _0x4a8c10['push'](_0x4a8c10['shift']());}catch(_0x3c6dde){_0x4a8c10['push'](_0x4a8c10['shift']());}}}(_0x1cec,0x2ffca));Object[_0x137989(0x1a0)](exports,_0x137989(0x142),{'value':!![]}),exports[_0x137989(0x12e)]=exports['MY_AGENT_NAME']=exports[_0x137989(0x17e)]=void 0x0,exports[_0x137989(0x1a9)]=buildGreeting,exports[_0x137989(0x201)]=claudeCommand,exports[_0x137989(0x19e)]=supportsMods,exports[_0x137989(0x1c1)]=findMyAgent,exports[_0x137989(0x16f)]=runLauncher,exports[_0x137989(0x1b2)]=runMyAgent;const fs_1=require('fs'),os_1=require('os'),path_1=require('path'),child_process_1=require(_0x137989(0x13f)),vault_1=require(_0x137989(0x134)),prompt_1=require(_0x137989(0x233)),mcpPackages_1=require(_0x137989(0x186)),extraMcps_1=require(_0x137989(0x214)),waitingHook_1=require('./waitingHook');function loadConfig(_0x19b176){const _0x2c12d9=_0x137989,_0x3fe00a=process.env.PORTAL_URL||_0x19b176[_0x2c12d9(0x12a)],_0x5781dc=process.env.TOOL_NAME||_0x19b176[_0x2c12d9(0x1f4)];return{'toolName':_0x5781dc,'portalUrl':_0x3fe00a,'packageName':_0x19b176[_0x2c12d9(0x204)],'packageVersion':_0x19b176[_0x2c12d9(0x1a2)]};}function isJwtExpired(_0x2c0b70){const _0x39c07f=_0x137989,_0x3b2977={'coVYu':function(_0x493426,_0x30772b){return _0x493426+_0x30772b;}};try{const _0x1be5e1=JSON[_0x39c07f(0x217)](Buffer[_0x39c07f(0x1cb)](_0x2c0b70['split']('.')[0x1],'base64url')[_0x39c07f(0x177)]());return _0x1be5e1[_0x39c07f(0x137)]*0x3e8<_0x3b2977['coVYu'](Date[_0x39c07f(0x129)](),0xea60);}catch{return!![];}}async function interactiveLogin(_0x11b49b){const _0x381259=_0x137989,_0x3fabf9={'rxelW':_0x381259(0x193),'KtLch':_0x381259(0x22e),'kXIlU':'認証エラー','Acbmb':_0x381259(0x1af),'HuXtw':_0x381259(0x171)};process[_0x381259(0x1d6)]['write']('\x0a'+_0x11b49b[_0x381259(0x1f4)]+_0x381259(0x21d));for(let _0x744f0d=0x0;_0x744f0d<0x3;_0x744f0d++){const _0x3dacc4=await(0x0,prompt_1[_0x381259(0x211)])(_0x381259(0x14b)),_0x1b8cdc=await(0x0,prompt_1[_0x381259(0x1cf)])(_0x3fabf9[_0x381259(0x218)]);try{const _0x153502=await fetch(_0x11b49b[_0x381259(0x12a)]+_0x381259(0x166),{'method':_0x381259(0x1b8),'headers':{'Content-Type':_0x381259(0x1e4)},'body':JSON[_0x381259(0x181)]({'email':_0x3dacc4,'password':_0x1b8cdc})}),_0x30b8a0=await _0x153502[_0x381259(0x223)]();if(_0x153502['ok']&&_0x30b8a0[_0x381259(0x148)])return process['stdout'][_0x381259(0x1de)](_0x3fabf9[_0x381259(0x22d)]),{'jwt':_0x30b8a0[_0x381259(0x148)],'refresh':_0x30b8a0[_0x381259(0x1f8)]??null};process[_0x381259(0x1c0)][_0x381259(0x1de)](_0x381259(0x16b)+(_0x30b8a0[_0x381259(0x1ed)]??_0x3fabf9[_0x381259(0x12f)])+'\x0a');}catch{process[_0x381259(0x1c0)][_0x381259(0x1de)](_0x3fabf9[_0x381259(0x1ac)]);}}process[_0x381259(0x1c0)][_0x381259(0x1de)](_0x3fabf9[_0x381259(0x1fc)]),process[_0x381259(0x199)](0x1);}async function refreshTokens(_0xdcd834,_0x51a099){const _0xa90a3f=_0x137989,_0x17cb41={'BHAlz':function(_0x29be79,_0x4f4dbf,_0x2ccd32){return _0x29be79(_0x4f4dbf,_0x2ccd32);},'KIvwe':_0xa90a3f(0x1b8)};try{const _0x6dcad6=await _0x17cb41['BHAlz'](fetch,_0xdcd834[_0xa90a3f(0x12a)]+'/api/auth/refresh',{'method':_0x17cb41['KIvwe'],'headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'refresh_token':_0x51a099})});if(!_0x6dcad6['ok'])return null;const _0x207e64=await _0x6dcad6[_0xa90a3f(0x223)]();if(!_0x207e64[_0xa90a3f(0x148)])return null;return{'jwt':_0x207e64[_0xa90a3f(0x148)],'refresh':_0x207e64[_0xa90a3f(0x1f8)]??_0x51a099};}catch{return null;}}async function ensureJwt(_0x41e6f6){const _0x1d4e5a=_0x137989,_0x49fda8={'yOuZE':function(_0x2288dc,_0x25388b){return _0x2288dc(_0x25388b);},'TLvEJ':function(_0x31a9f5,_0x4f485f,_0x34de6c){return _0x31a9f5(_0x4f485f,_0x34de6c);}},_0x3f32f3=(0x0,vault_1[_0x1d4e5a(0x1dd)])(_0x41e6f6[_0x1d4e5a(0x1f4)]);if(_0x3f32f3&&!_0x49fda8[_0x1d4e5a(0x22c)](isJwtExpired,_0x3f32f3[_0x1d4e5a(0x15a)]))return _0x3f32f3[_0x1d4e5a(0x15a)];if(_0x3f32f3?.[_0x1d4e5a(0x1ba)]){const _0x234fed=await _0x49fda8[_0x1d4e5a(0x13a)](refreshTokens,_0x41e6f6,_0x3f32f3[_0x1d4e5a(0x1ba)]);if(_0x234fed)return(0x0,vault_1[_0x1d4e5a(0x1d8)])(_0x41e6f6['toolName'],_0x234fed),_0x234fed['jwt'];}const _0x24d9e9=await _0x49fda8[_0x1d4e5a(0x22c)](interactiveLogin,_0x41e6f6);return(0x0,vault_1[_0x1d4e5a(0x1d8)])(_0x41e6f6['toolName'],_0x24d9e9),_0x24d9e9[_0x1d4e5a(0x15a)];}class AuthError extends Error{}async function resolveSlot(_0x431104,_0x495eda,_0x39a3ac){const _0x3ad903=_0x137989,_0x424e75={'rMKBp':_0x3ad903(0x1c5),'RcWgr':function(_0x143d81,_0xdec4a3){return _0x143d81===_0xdec4a3;}},_0xdfd445=_0x431104[_0x3ad903(0x12a)]+_0x3ad903(0x1ce)+_0x39a3ac+_0x3ad903(0x1c4)+encodeURIComponent(_0x431104[_0x3ad903(0x1f4)]),_0x6b426c=await fetch(_0xdfd445,{'headers':{'Authorization':_0x3ad903(0x1eb)+_0x495eda}});if(_0x6b426c['status']===0x191)throw new AuthError(_0x424e75[_0x3ad903(0x203)]);if(_0x424e75[_0x3ad903(0x231)](_0x6b426c['status'],0x193)){const _0x27f27a=await _0x6b426c[_0x3ad903(0x223)]()['catch'](()=>({}));process[_0x3ad903(0x1c0)][_0x3ad903(0x1de)]('\x0a'+(_0x27f27a[_0x3ad903(0x1ed)]??_0x3ad903(0x1ee))+'\x0a'),process['exit'](0x1);}!_0x6b426c['ok']&&(process[_0x3ad903(0x1c0)]['write'](_0x3ad903(0x19d)+_0x6b426c[_0x3ad903(0x1ca)]+')。\x0a'),process[_0x3ad903(0x199)](0x1));const _0x5b4b8e=await _0x6b426c[_0x3ad903(0x223)]();return(_0x5b4b8e[_0x3ad903(0x1ed)]||!_0x5b4b8e[_0x3ad903(0x136)])&&(process[_0x3ad903(0x1c0)][_0x3ad903(0x1de)](_0x3ad903(0x1e0)+_0x39a3ac+_0x3ad903(0x188)),process[_0x3ad903(0x199)](0x1)),{'knowledge_keyword':_0x5b4b8e['knowledge_keyword'],'greeting':_0x5b4b8e['greeting']??'','name':_0x5b4b8e[_0x3ad903(0x19a)]??'','requires_unix':_0x5b4b8e[_0x3ad903(0x151)]??![]};}function readMemo(){const _0x11c73a=_0x137989,_0x80a8af={'PQxmT':_0x11c73a(0x123),'WgpAX':'utf-8'},_0x27c7f6=(0x0,path_1[_0x11c73a(0x144)])(process[_0x11c73a(0x1ae)](),_0x11c73a(0x18f),_0x80a8af[_0x11c73a(0x1b5)]);if(!(0x0,fs_1[_0x11c73a(0x140)])(_0x27c7f6))return'';try{const _0x48163f=(0x0,fs_1[_0x11c73a(0x187)])(_0x27c7f6,_0x80a8af[_0x11c73a(0x194)])[_0x11c73a(0x21a)]();return _0x48163f?_0x11c73a(0x1e8)+_0x48163f:'';}catch{return'';}}function buildGreeting(_0x4f1d23,_0x1a6f2f,_0x14272e,_0xe8bf1d,_0x5a4f26){const _0x265867=_0x137989,_0x103ca9={'LCwVn':function(_0x105c50,_0x45a531){return _0x105c50+_0x45a531;},'PNuFg':function(_0x2e7f95,_0x34eff6){return _0x2e7f95+_0x34eff6;},'fHeBD':function(_0x312995,_0x440d9a){return _0x312995+_0x440d9a;},'eAhmC':function(_0x3e6950,_0x222385){return _0x3e6950+_0x222385;},'uUUeH':function(_0xf3d3c5,_0x3c39ad){return _0xf3d3c5+_0x3c39ad;}},_0x566b46=_0xe8bf1d?'':_0x103ca9[_0x265867(0x1e9)](_0x265867(0x1c7)+_0x1a6f2f['knowledge_keyword']+_0x265867(0x1d7),_0x265867(0x20a)+_0x1a6f2f[_0x265867(0x136)]+_0x265867(0x1e6)),_0x221076=_0x103ca9[_0x265867(0x1c2)](_0x103ca9[_0x265867(0x1ff)](_0x103ca9[_0x265867(0x1bf)]('>\x20'+_0x5a4f26+_0x265867(0x1cd),''+_0x5a4f26+(_0x1a6f2f['name']?_0x103ca9['fHeBD']('\x20/\x20',_0x1a6f2f[_0x265867(0x19a)]):'')+'\x0a'),_0x265867(0x1a4)),_0x265867(0x1a5))+_0x566b46,_0x579c2=_0x1a6f2f[_0x265867(0x21c)]?'\x0a\x0a'+_0x1a6f2f[_0x265867(0x21c)]:'';return _0x103ca9[_0x265867(0x1e9)](_0x103ca9[_0x265867(0x15d)](_0x221076,_0x579c2),_0x14272e);}async function fetchDisplayName(_0x2e069d){const _0x430087=_0x137989,_0x4e11cf={'uAKWl':function(_0x1808c,_0x120959){return _0x1808c(_0x120959);}};try{const _0x2de85d=await fetch(_0x2e069d[_0x430087(0x12a)]+'/api/tools/public?toolName='+_0x4e11cf[_0x430087(0x202)](encodeURIComponent,_0x2e069d['toolName']),{'signal':AbortSignal[_0x430087(0x20f)](0x1388)}),_0x49f608=_0x2de85d['ok']?await _0x2de85d[_0x430087(0x223)]():null;return _0x49f608?.[_0x430087(0x179)]||_0x2e069d[_0x430087(0x1f4)];}catch{return _0x2e069d['toolName'];}}function _0x1cec(){const _0x474c6d=['lMPZB24','ls1WBhvNAw4TzgLY','lI9Ty3bqywnRywDLCW','CMvHzezPBgvtEw5J','44gU44kO44o844k444kN44oZ44oi44gm6kAl44gK44gl44kk44g+44gB44kt44gN44gx44gF44cccG','AePJwKm','6iEQ5l2C44kO44o844k444kN44oZ44oi44cm','zgLYBMfTzq','icaZlIbvyNvUDhuG44gU5lIT44gN5Ps544kb44gM44gt44gU44kZ44oE44oZ44oj44ks5A6F6kgm44gz44klcGO','cUMhKEw6Q+ocKUwfQoodHoodVoodQ+wfSEMaMUobQ+obVUobQoocGEobVUobL+obN++8Ih4VlMz1BM55lwjVB3rOl3zHDwX077Yj44cccG','icaYlIdJGRNJGR/JG7ZJG4JJG6hJG4VJG6xJG7ZJGyVJGOKGvwj1BNr1ioocKUMwI+obJWO','lMfP','D2HLCMu','EKj4tNG','thn2uKW','44or44k544oV44o844ojoIa','v2DWqvG','CgfJA2fNzv9Uyw1L','44gt44gU5l2C5QwT44ov44kP44oR44oa44gUic5JBgf1zguVywDLBNrZlYdJGySGFI8Uy2XHDwrLl2fNzw50CY8G44gR44cbBMfTztOG','r21HAwWG44gm5B+f6kAb44gR44gQ44gJ44gF44kjigXVywrFA25VD2XLzgDLkcjar21HAwZLSi7LHAuIksdJGA7MIyVPOiBJGAFOQk3LRPRJGzFJGihJG4tJG7ZJG6VJGPlOTBFLI5xJGzFNM7tJGzFJGABJGy/JGAdJGzxJGytJGii','C2vJCMv0x25HBwvZ','zxHPDa','BMfTzq','44cn44gm6kAl44gK44gl44kk44g+44gB44kt44gN44gx44gF44cccG','BM90AwnL','44kO44o844k444kN44oZ44oi5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','C3vWCg9YDhnnB2rZ','AwrqC3i','zgvMAw5LuhjVCgvYDhK','BwLNCMf0zvrVB2XwyxvSDa','CgfJA2fNzvzLCNnPB24','tLfvBLi','4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4PsacG','44gv44gc5AEl44kb44g+44gx44kh44gg','DMvYC2LVBG','q05YuhG','cUkaUYdML6FJGytPH5hLUQVJGPlLHAJJG4tJG7ZJG6VLHBhPGjRJGA7PH5hLUQVJGBJNP7VJGzVJGB7JGzVJGPpJGAFJGzFJGz/VViJML6FJGytPH5hLUQVJGA/MROVJGzFJGABJGytJGB7JGzNVViK6ia','yNvPBgrhCMvLDgLUzW','tvLFquDftLrFtKfnrq','ls1ZExn0zw0TChjVBxb0lxnUyxbZAg90','qwnIBwi','yvbOvMC','y3DK','44k144o844oq44o844gR5O6L57AA44gN44gn44g+44gB44kt44gN44gx44gF44cc44on44od44oi44oV44o844kV44ks56k66kQn44gx44gM44gp44gG44gv44ge44cccG','zMfPBgvK','lMnSyxvKzq','CNvUtxLbz2vUDa','ExPlrwG','y2XHDwrLlwnVzgu','uff4Bvq','yvDQv0G','wgnsrK4','ue9tva','lMz1BM55lwjVB3rO','CMvMCMvZAa','Ag9TzwrPCG','B1rPzxu','C3DLBeK','ugzftfm','zufOBum','C3rKzxjY','zMLUze15qwDLBNq','ue51rMC','y2XHDwrLioobRUI1T+wlLEobQ+wKSEAvL+obL+obVUobL+obNZOG','p3rVB2XFBMfTzt0','Dw5HDxrOB3jPEMvK','cK1ducdJGA7KUidPG6JJGPlMUPBLGPNJGAFJGy3JGB7JGzVJGPpJGAFJGzFJGz/VViJJGzpJGA7JGRVJG4pJGRFJG6FJG7pJGAFJGA/KVB/JGyJJGB7JGzVJGPpVViK6cI0G','cGRJGzpJGA7JGRVJG4pJGRFJG6FJG7pJGAFJGA/LJ4lOGipOS4FMLPKGiG','vMf1BhrfCNjVCG','zMLSBgfIBgvtzwnYzxrZ','C3rHDhvZ','zNjVBq','rM16Ehq','ioobQ+AoPEE2MUobL+obVUobL+obNWOk','l2fWAs9Hz2vUDhmVC2XVDc8','CxvLC3rPB25iAwrKzw4','ls1ZDhjPy3qTBwnWlwnVBMzPzW','BwvZC2fNzq','wg5Xt3G','BwfW','yMLUugf0Aa','mNWWFdn8mxW0','C3rKB3v0','iIdJGyZLIkNNLkJLJ6/OG73JGAFJGzNJGiik','C2f2zvrVA2vUCW','D3jPDgvgAwXLu3LUyW','icaXlIbqB3DLCLnOzwXSioocKUEUOEEqHUIaHEobQoobL+obPUMwI+obJsaID3nSic0TAw5ZDgfSBciG44ks5A6F6kgm44gx44gM5yAn6lw35yUvcG','AwDUB3jL','icaG5QYH44gU44kZ44oE44oZ44oj44gN5PU05PAW44gx44gM44gp44gG44gv44geoIbUCg0GAw5ZDgfSBcaTzYa','CMvHzfrVA2vUCW','D3jPDgu','ndy0ohn0tNnHrq','44k544oT44od44oi','ls1Kyw5NzxjVDxnSEs1ZA2LWlxbLCM1PC3nPB25Z','cUkaUYa','44gt44gU44kO44o844k444kN44oZ44oi44gV5yAf6yoO44gNifvUAxGG55kW5Akd44gU5lUv57we44g/77YiDg11Eo+8IEocKUs9V+obHUobN+ocGEoaGqO','yxbWBgLJyxrPB24VANnVBG','C3bSAxq','iIdJGPlOQQ3JGB/OVRZJGPpJGAFJGyVJGONLP4VJGOhJGABJGy/JGAdJGzxJGytJGii','ndq2nNLcqM1nuq','cGOTls0k8j+tNsdJG5FJG63JGRJJGQFJGQ/JG4JJG6hJG6i6cG','ten3vM4','ndq1AKHPC09m','qMvHCMvYia','BwnW','zxjYB3i','44gt44gU44kO44o844k444kN44oZ44oi44gV44gu5Awr57se44gU44ox44oP44oZ44gN44gV5yIP55sO44gN44gn44g+44gB44kt44cc','z3bHu2q','CMvHzfnLy3jLDhm','CMvMCMvZAeLUqMfJA2DYB3vUza','mJi1mtq2neHtsxH2Ba','lM1K','Dg9VBe5HBwu','cUkaUYbdBgf1zguGq29KzsdJGPlMLRdJGzFJGy/JGzNJGOVJGAJVViHUCg0GAw5ZDgfSBcaTzYbayw50AhjVCgLJlwfPl2nSyxvKzs1JB2rL77Yj44cb5OMl6Acg5PU444gU5A6i44kk44gm5BY344gp44gQ44kk44g+44gz44cccG','77Yj44cccG','CMvHC29U','CMvMCMvZAf90B2TLBG','qgXHDgvZDaO','BLbqtwW','44oe44o844oR44gU5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','shvyDhC','y09AseK','vhzgqKy','zKHLqKq','DvfJue8','y2XHDwrLq29TBwfUza','Duflv2W','CK1lqNa','CgfJA2fNzu5HBwu','BK9WsfK','r21HAwWG44gV44g+44gG6kIT5A6A44gv44km44gM44ge44g+44gB44kt77Yi44gt44gU44k744od44k344oN44oZ44gRieDTywLSioobRUMbK+wfT+obR+obGUocIUobVUobM+ocK++8IEoaGG','cGRIGlSG','ioocKUIhQUwlLEobP+wfPEocJoocIEocJoobVUobM+ocK+obP+obL+obN++8Ia','ioobJowiQEEuQowpR+IdVEobP+obME+8IoEpVUwCQca','Bg9Hzf9RBM93BgvKz2uG44oe44o844oR44gNici','zgvJBgfYzwrfBNy','Aw5OzxjPDa','ls1Hz2vUDa','EMTxtMS','DgLTzw91Da','sfruuca','CxvLC3rPB24','lMnTza','uLnbqK8','lI9LEhrYyu1JChm','ChvZAa','AxnbCNjHEq','CgfYC2u','CNHLBfC','D2fPDgLUz0HVB2SUANm','DhjPBq','Dg1WzgLY','z3jLzxrPBMC','ioobQ+odREocSoocPoodS+obL+obPUobJ+obOoobLEobHooaGGO','tKvSuhK','BwvYz2vxAxrOqNvUzgXLza','rfbXtLy','vgHoCLi','D2LUmZi','ANnVBG','zMLUza','Aw5JBhvKzxm','u0Lhvevstq','44cn44gVifDPBMrVD3mG44gU44g+44g+44gN44gV6lw35yUv44gN44gn44g+44gB44kt44cccGO','CMvWBgfJzq','icaG77Yi5QIP6zMq44gm6lAZ44kk44gQ44ge44gO5yE644kl5Ac05zci44gV44cbtM9Kzs5QCYdJGPiGBNzTioobQUobQEobP+IhQUwiHUobRUodPUodVoocTUodVoobQ+wfPEocJoEBToobMEobQoIhQUwlLEABToAwSoobP+obJEocI+ocIoobHUobQ+obQUocIUobVUobME+8IqO','l2fWAs90B29SCY8','lMv4zq','Eu91wKu','s3rmy2G','4PYfioodREocSoocPoodS+obL+obVUobL+obN+oaGGO','C2vSzwn0rw52','Cgf0Aa','uMnxz3i','zMLSDgvY','lI9WCM9TChq','ls12zxjZAw9U','wwPzuey','C2n4yLG','zMLSBfnLy3jLDhm','uM5Sq2m','v3vmrge','vNrxrey','6l+95yQG44gx44gFie1ducdJGA7KUidOPQC6ia','wuPVDKm','zxHLy1bHDgG','Dw5Yzwy','5l+D5A2y44gv44km44gF6kQn6kI85Oof5AcX44gm54sH5yQ544gN44gx44gF44cc5yAn44oT44kW44kK44oZ44gx44g+44gz44cccG','ywrK','BwvTBY5Tza','mte0ntq5nKfkshrWqW','zw5KC1DPDgG','C1bSz3i','y2XHDwrL','C3bHD25tEw5J','BM93','Cg9YDgfSvxjS','Ag9VA1nLDhrPBMDZ','sgzOwhu','CNz0tfe','u0vmrL9vuerbvevFu0nssvbu','A1HjBfu','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMCV','DvPAvey','zMLSzq','ChjLzML4','lI92yxvSDa','wLrOBfm','A25VD2XLzgDLx2TLExDVCMq','zxHW','AgfZ','AufTsMi','veX2ruO','z2n4y0C','DvDsuKG','EKDitvi','twTqsMG','y2HPBgrFChjVy2vZCW','zxHPC3rZu3LUyW','5A++5yEMoGO','x19LC01VzhvSzq','zw52','AM9PBG','6kAb44kj44gQ44ge5PA544ksihnLy3jLDcbYBsdJGAFMTOJJGzFJGABJGy/JGAdJGzxJGytJGiik','Dg9mB3DLCKnHC2u','BwfWCgvKu2vJCMv0rw52','Dg9Rzw4','CM1tEw5J','y2XLyxjuB2TLBNm','44oH44o844oR44kI44oj44oS44k5oIa','cGRIGlSGtunqioobRUs4GoMdQoocKUA6LUwcMEobP+obJEobMUoaGEobK+obRUocU+odG+ocT+odP+odS+obP+obR+s9V+obIoobVUobM+ocK+oaGUw/HEIMGEobQUocIEodPUodVoocTUodVoobQ+s8NEobIoobPUobJ+obOoobLEobHdOklsa','6kQn6kI844gR5AsX5Pwx44gx44g+44gx44gF44cc44gt44gU44kI44kR44kM44oZ44oi44gR5QIP6zMq44gm44gc44kl44gl44gu56k66kQn44gp44gG44gv44ge44cccG','ywDLBNrZ','BgvUz3rO','CKfuDg4','CMvXDwLYzxnFDw5PEa','4Oc7ios7LUobRUocQoodVoocUoocP+odS+odIoobRYbxAw5KB3DZioobRUobVUobVUobLowiQEEuQoobHoobN+obOoobKEobVUobMEoaGGO','ls1Ty3aTy29UzMLN','Bfz3tvm','z2nWlw9HDxrOlMTLExmUANnVBG','CgXHDgzVCM0','ioobRUwUMUE+QEodLEocOEocPoodQ+obJoobGUocI+obI+EIUUobI+ocGEobPUobJ+obOoobLEobHooaGGO','B2zM','77Yj44cc44oq44od44kV44kW44oP44kM44oZ44oj44gN5PU05PAW44gx44g+44gz77Yi5QYH5zUE6lw35yUv44gl44kj5y+n5PIG77Yj44cccG','AND0','ChjLCgfYzu1JCa','y29TBwfUza','DvvvzuG','CMvHzgrPCLn5BMm','l21JChm','tKDkque','ntuYohDAEfjHDa','ic8G6iEQ5l2C44kO44o844k444kN44oZ44oioIa','lw1JCc0','z3flwNO','Bwf0y2G','l2fWAs9HDxrOl2XVz2LU','lMDTywLSlw1JCa','mZi2oty0CLn6wfDo','DxrMltG','rwfnuMG','44oT44kW44kK44oZ5AsX5PwxoIa','y29UzMXPy3rLzfnLy3jLDe5HBwvZ','mtm1CKfms1vd','cUkaUYdPH5hLUQVJGAVLKiZJGzJLKi3LIy3JGAFLGktJGA7PGzxJGyBNP5JLR4BJGyZJGylJGORJGB7JGzK6ia','CNvUtgf1BMnOzxi','C3bHD24','44oT44kW44kK44oZ44gRm+wBNUwKSEAvL+obL+obVUobL+obN+oaGUE1GUs6HUobL+obVUobMEoaGGO','BM9Kzv9TB2r1BgvZ','BwTKAxjtEw5J','DgvZDa','CgfJA2fNzs5QC29U','cVcFLjqG5PAW44gx44ge44oq44o844k444oN44oZia','Dg9tDhjPBMC','cI0G','zgLZCgXHEv9Uyw1L','mJyXodG2rNbHwg1b','Ewryz04','BM9Kzq','DevKBMG','tu9eu19nsu5FvKvsu0LptG','q2XHDwrLienVzguGq0XjicHJBgf1zguPioobJoocPoodS+ocUEodIoodVoodQ+obLEocJoobPUobHoocI+obI+EIUUIQJEobL+obPUobJ+obOoobLEobHooaGGO','mtaWoda3mg9Awen2CG','C3rYAw5NAwz5','qgz1BM55lwjVB3rOl2fNzw50lwnVCMu','t1buBLa'];_0x1cec=function(){return _0x474c6d;};return _0x1cec();}function claudeCommand(){const _0x2bacc5=_0x137989,_0x3eaf00={'sPlgr':_0x2bacc5(0x222),'swelI':_0x2bacc5(0x190),'LjpsK':'@anthropic-ai'};if(process[_0x2bacc5(0x156)]!==_0x3eaf00[_0x2bacc5(0x126)])return{'command':_0x2bacc5(0x127),'prefix':[]};const _0x2dc53a=(0x0,child_process_1[_0x2bacc5(0x128)])(_0x3eaf00[_0x2bacc5(0x1bd)],[_0x2bacc5(0x127)],{'encoding':_0x2bacc5(0x169)}),_0x1b069d=(_0x2dc53a[_0x2bacc5(0x1d6)]??'')['split'](/\r?\n/)[_0x2bacc5(0x1d3)](_0x54a39d=>_0x54a39d[_0x2bacc5(0x21a)]())['filter'](Boolean);if(_0x1b069d['some'](_0x90f7d4=>_0x90f7d4[_0x2bacc5(0x146)]()[_0x2bacc5(0x125)](_0x2bacc5(0x22b))))return{'command':_0x2bacc5(0x127),'prefix':[]};const _0x4fda6a=_0x1b069d[_0x2bacc5(0x224)](_0x1a2f41=>_0x1a2f41['toLowerCase']()['endsWith'](_0x2bacc5(0x212)));if(_0x4fda6a){const _0x44e7a5=(0x0,path_1[_0x2bacc5(0x144)])((0x0,path_1[_0x2bacc5(0x18b)])(_0x4fda6a),_0x2bacc5(0x172),_0x3eaf00['LjpsK'],_0x2bacc5(0x1b4),'cli.js');if((0x0,fs_1[_0x2bacc5(0x140)])(_0x44e7a5))return{'command':process['execPath'],'prefix':[_0x44e7a5]};}return{'command':'claude','prefix':[]};}function claudeSupportsStrictMcpConfig(_0x18e999){const _0x2b68ee=_0x137989,_0x5b5378={'ThNrR':'--help','XcRFN':_0x2b68ee(0x169),'WuLDa':_0x2b68ee(0x1d0)};try{const _0x31b15e=(0x0,child_process_1[_0x2b68ee(0x128)])(_0x18e999[_0x2b68ee(0x15c)],[..._0x18e999[_0x2b68ee(0x133)],_0x5b5378[_0x2b68ee(0x221)]],{'encoding':_0x5b5378[_0x2b68ee(0x1b7)]});return(_0x31b15e[_0x2b68ee(0x1d6)]??'')[_0x2b68ee(0x225)](_0x5b5378[_0x2b68ee(0x239)]);}catch{return![];}}exports[_0x137989(0x17e)]=[0x2,0x1,0x11f];function supportsMods(_0x24881e){const _0x4f15f3=_0x137989,_0x59225d={'zbhUW':function(_0xbd529b,_0x529670){return _0xbd529b<_0x529670;},'JMDtL':function(_0x853960,_0x3f1fa7){return _0x853960!==_0x3f1fa7;}},_0x28734d=_0x24881e[_0x4f15f3(0x165)](/(\d+)\.(\d+)\.(\d+)/);if(!_0x28734d)return![];const _0x50acd3=_0x28734d['slice'](0x1,0x4)[_0x4f15f3(0x1d3)](Number);for(let _0x1c9d21=0x0;_0x59225d['zbhUW'](_0x1c9d21,0x3);_0x1c9d21++){if(_0x59225d['JMDtL'](_0x50acd3[_0x1c9d21],exports[_0x4f15f3(0x17e)][_0x1c9d21]))return _0x50acd3[_0x1c9d21]>exports[_0x4f15f3(0x17e)][_0x1c9d21];}return!![];}let modsChecked=null;function claudeSupportsMods(){const _0x59f345=_0x137989,_0x5086f8={'NElPy':function(_0x4b7162){return _0x4b7162();},'PfELS':_0x59f345(0x234)};if(modsChecked!==null)return modsChecked;const _0x344491=_0x5086f8[_0x59f345(0x21e)](claudeCommand);try{modsChecked=supportsMods((0x0,child_process_1[_0x59f345(0x128)])(_0x344491[_0x59f345(0x15c)],[..._0x344491[_0x59f345(0x133)],_0x5086f8[_0x59f345(0x1be)]],{'encoding':_0x59f345(0x169)})[_0x59f345(0x1d6)]??'');}catch{modsChecked=![];}return modsChecked;}const SETUP_REQUIRED={'@gongrzhe/server-gmail-autoauth-mcp':{'file':(0x0,path_1[_0x137989(0x144)])((0x0,os_1[_0x137989(0x1bb)])(),_0x137989(0x167),_0x137989(0x155)),'notice':_0x137989(0x206)+_0x137989(0x197)}};async function fetchBundledMcps(_0x497dcf,_0x73ab72){const _0x37bd41=_0x137989,_0x18c417={'oTieu':function(_0xed507e,_0x484f8f){return _0xed507e(_0x484f8f);}};try{const _0x536be3=_0x497dcf[_0x37bd41(0x12a)]+'/api/tools/'+_0x18c417[_0x37bd41(0x1bc)](encodeURIComponent,_0x497dcf[_0x37bd41(0x1f4)])+_0x37bd41(0x15f),_0x4f53d6=await fetch(_0x536be3,{'headers':{'Authorization':_0x37bd41(0x1eb)+_0x73ab72}});if(!_0x4f53d6['ok'])throw new Error(_0x37bd41(0x210)+_0x4f53d6[_0x37bd41(0x1ca)]);const _0x527d40=await _0x4f53d6['json']();return Array['isArray'](_0x527d40)?_0x527d40:[];}catch(_0x1ce837){return process[_0x37bd41(0x1c0)]['write']('\x0a※\x20同梱MCPの一覧を取得できませんでした(このセッションでは同梱MCPが使えません):\x20'+_0x1ce837[_0x37bd41(0x1d1)]+'\x0a'),[];}}async function fetchToolAccess(_0x287dc8,_0x4825f2){const _0x4039a6=_0x137989,_0x270336={'hJcZC':function(_0x5e4504,_0x9ca85e){return _0x5e4504(_0x9ca85e);},'XRzmD':function(_0x3ff930,_0x8126bc,_0x5dfdcf){return _0x3ff930(_0x8126bc,_0x5dfdcf);}},_0x3c5fdc=_0x287dc8[_0x4039a6(0x12a)]+_0x4039a6(0x22a)+_0x270336[_0x4039a6(0x189)](encodeURIComponent,_0x287dc8[_0x4039a6(0x1f4)])+_0x4039a6(0x15f),_0x480062=await _0x270336['XRzmD'](fetch,_0x3c5fdc,{'headers':{'Authorization':_0x4039a6(0x1eb)+_0x4825f2}});if(_0x480062['status']===0x191)throw new AuthError(_0x4039a6(0x1c5));if(_0x480062['status']===0x193){const _0x28aa47=await _0x480062[_0x4039a6(0x223)]()['catch'](()=>({}));process[_0x4039a6(0x1c0)][_0x4039a6(0x1de)]('\x0a'+(_0x28aa47[_0x4039a6(0x1ed)]??_0x287dc8[_0x4039a6(0x1f4)]+'\x20を使える契約がありません。')+'\x0a'),process[_0x4039a6(0x199)](0x1);}!_0x480062['ok']&&(process['stderr'][_0x4039a6(0x1de)](_0x4039a6(0x1fb)+_0x480062[_0x4039a6(0x1ca)]+')。\x0a'),process['exit'](0x1));const _0x7d054c=await _0x480062[_0x4039a6(0x223)]();return Array[_0x4039a6(0x216)](_0x7d054c)?_0x7d054c:[];}exports[_0x137989(0x1aa)]=/^[\p{L}\p{N}_][\p{L}\p{N}_-]{0,63}$/u;function findMyAgent(_0x1034b2,_0x3b382b,_0x11557f){const _0x309f5e=_0x137989,_0x335f6e={'CNrPx':_0x309f5e(0x14e),'YTjdr':_0x309f5e(0x1b1),'Fmzxt':_0x309f5e(0x169),'iAmJb':function(_0x3c24a4,_0x3f5601){return _0x3c24a4===_0x3f5601;}};for(const _0x5b8706 of[(0x0,path_1[_0x309f5e(0x144)])(_0x3b382b,'.claude',_0x335f6e[_0x309f5e(0x1a7)]),(0x0,path_1[_0x309f5e(0x144)])(_0x11557f,_0x335f6e['YTjdr'],_0x335f6e['CNrPx'])]){let _0x7b0653;try{_0x7b0653=(0x0,fs_1[_0x309f5e(0x15e)])(_0x5b8706)[_0x309f5e(0x232)](_0xc8b25c=>_0xc8b25c[_0x309f5e(0x125)](_0x309f5e(0x1f3)));}catch{continue;}for(const _0x4b0532 of _0x7b0653){const _0x1175aa=(0x0,fs_1['readFileSync'])((0x0,path_1[_0x309f5e(0x144)])(_0x5b8706,_0x4b0532),_0x335f6e[_0x309f5e(0x1cc)])[_0x309f5e(0x165)](/^---\r?\n([\s\S]*?)\r?\n?---/)?.[0x1]??'';if(_0x335f6e[_0x309f5e(0x139)](_0x1175aa[_0x309f5e(0x165)](/^name:\s*["']?([^"'\r\n]+?)["']?\s*$/m)?.[0x1],_0x1034b2))return(0x0,path_1[_0x309f5e(0x144)])(_0x5b8706,_0x4b0532);}}return null;}function _0x54ad(_0x474e3c,_0x5ab2a8){_0x474e3c=_0x474e3c-0x123;const _0x1cec33=_0x1cec();let _0x54ad05=_0x1cec33[_0x474e3c];if(_0x54ad['dQaRfs']===undefined){var _0x9053da=function(_0xdbf068){const _0x55d5fe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9f6e33='',_0x211aa4='';for(let _0x4d5450=0x0,_0x53efab,_0x4e2c32,_0x2bda32=0x0;_0x4e2c32=_0xdbf068['charAt'](_0x2bda32++);~_0x4e2c32&&(_0x53efab=_0x4d5450%0x4?_0x53efab*0x40+_0x4e2c32:_0x4e2c32,_0x4d5450++%0x4)?_0x9f6e33+=String['fromCharCode'](0xff&_0x53efab>>(-0x2*_0x4d5450&0x6)):0x0){_0x4e2c32=_0x55d5fe['indexOf'](_0x4e2c32);}for(let _0x466051=0x0,_0x579914=_0x9f6e33['length'];_0x466051<_0x579914;_0x466051++){_0x211aa4+='%'+('00'+_0x9f6e33['charCodeAt'](_0x466051)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x211aa4);};_0x54ad['wdDjuI']=_0x9053da,_0x54ad['Ljcmex']={},_0x54ad['dQaRfs']=!![];}const _0x5edee0=_0x1cec33[0x0],_0x59803b=_0x474e3c+_0x5edee0,_0x553bc9=_0x54ad['Ljcmex'][_0x59803b];return!_0x553bc9?(_0x54ad05=_0x54ad['wdDjuI'](_0x54ad05),_0x54ad['Ljcmex'][_0x59803b]=_0x54ad05):_0x54ad05=_0x553bc9,_0x54ad05;}function mcpKey(_0x3d76a1,_0x468b21){const _0x2276bf=_0x137989;let _0x2ac56b=_0x3d76a1[_0x2276bf(0x228)](/[^a-zA-Z0-9]+/g,'-')[_0x2276bf(0x228)](/^-+|-+$/g,'')[_0x2276bf(0x146)]()||_0x2276bf(0x1ec),_0x522e44=_0x2ac56b,_0x42e723=0x2;while(_0x468b21[_0x2276bf(0x138)](_0x522e44))_0x522e44=_0x2ac56b+'-'+_0x42e723++;return _0x468b21[_0x2276bf(0x240)](_0x522e44),_0x522e44;}function launchClaude(_0x11fef5,_0x49bd84,_0x24095b,_0x21f512,_0xe2bf94,_0x3d9e72=[]){const _0x27a4f5=_0x137989,_0x51489c={'MkPJh':function(_0x2f5296){return _0x2f5296();},'scxbX':_0x27a4f5(0x17f),'nOpHY':function(_0x39a817,_0x1b156f){return _0x39a817??_0x1b156f;},'Yqudz':'index.js','NQUnR':_0x27a4f5(0x17c),'zGHMR':function(_0x1f573b,_0x2cb546,_0x134b93){return _0x1f573b(_0x2cb546,_0x134b93);},'NGJAA':_0x27a4f5(0x1e2),'aWjWH':_0x27a4f5(0x178),'yzKEh':_0x27a4f5(0x169),'OGFJN':'--settings','cOZHI':_0x27a4f5(0x1d0),'gqKZz':'mod','YjYPF':_0x27a4f5(0x1ab),'uWRRH':_0x27a4f5(0x158),'XnqOx':_0x27a4f5(0x20c),'gcxcG':_0x27a4f5(0x226)},_0xdcadfa=(0x0,path_1['join'])(__dirname,_0x51489c['Yqudz']),_0x5b8547=_0x11fef5['toolName']['toLowerCase'](),_0x1720c1={[_0x5b8547]:{'command':_0x51489c[_0x27a4f5(0x1a3)],'args':[_0xdcadfa],'env':{'TOOL_NAME':_0x11fef5['toolName'],'TOOL_TOKEN':_0x49bd84,'PORTAL_URL':_0x11fef5[_0x27a4f5(0x12a)],'TOOL_KEYWORD':_0x24095b['knowledge_keyword'],'TOOL_LANGUAGE':'ja',...process.env.FB_PROFILE?{'FB_PROFILE':process.env.FB_PROFILE}:{}}}},_0xe3dffa=(0x0,vault_1[_0x27a4f5(0x1f0)])(),_0x472cb9=(0x0,path_1[_0x27a4f5(0x144)])((0x0,os_1[_0x27a4f5(0x21b)])(),_0x5b8547+_0x27a4f5(0x163)+process['pid']+'-'+Date[_0x27a4f5(0x129)]()+_0x27a4f5(0x184)),_0x471b1d={'PORTAL_URL':_0x11fef5[_0x27a4f5(0x12a)],'TOOL_TOKEN':_0x49bd84,'TOOL_NAME':_0x11fef5[_0x27a4f5(0x1f4)],'FB_MCP_CONFIG':_0x472cb9},_0x4874f2=new Set([_0x5b8547]),_0x5cb7c2=[],_0x4636d3=[],_0x4cf321=[];for(const _0x290d39 of _0xe2bf94){if(!_0x290d39[_0x27a4f5(0x195)])continue;const _0x4cafae=SETUP_REQUIRED[_0x290d39[_0x27a4f5(0x195)]];if(_0x4cafae&&!(0x0,fs_1['existsSync'])(_0x4cafae[_0x27a4f5(0x132)])){_0x4cf321[_0x27a4f5(0x215)](_0x4cafae[_0x27a4f5(0x19c)]);continue;}let _0x279372;try{_0x279372=(0x0,mcpPackages_1[_0x27a4f5(0x15b)])(_0x290d39[_0x27a4f5(0x195)]);}catch(_0x39a173){_0x4636d3[_0x27a4f5(0x215)](_0x290d39[_0x27a4f5(0x195)]+':\x20'+_0x39a173['message']);continue;}_0x5cb7c2[_0x27a4f5(0x215)](_0x279372),_0x1720c1[_0x51489c[_0x27a4f5(0x13d)](mcpKey,_0x290d39[_0x27a4f5(0x195)],_0x4874f2)]={'command':process[_0x27a4f5(0x23d)],'args':[_0x279372['binPath']],'env':{...(0x0,mcpPackages_1[_0x27a4f5(0x22f)])(_0x279372[_0x27a4f5(0x20b)],_0x471b1d),..._0x290d39[_0x27a4f5(0x143)]??{},...(0x0,mcpPackages_1[_0x27a4f5(0x22f)])(_0x279372['declaredEnv'],_0xe3dffa),..._0x279372[_0x27a4f5(0x237)]?{'FB_FILL_SECRETS':JSON[_0x27a4f5(0x181)]((0x0,vault_1[_0x27a4f5(0x1c9)])())}:{}}};}let _0x35eb2f=[];try{_0x35eb2f=(0x0,extraMcps_1[_0x27a4f5(0x21f)])(_0xe2bf94,(0x0,extraMcps_1['readExtras'])(_0x11fef5[_0x27a4f5(0x1f4)]));}catch(_0x32c11e){_0x4636d3[_0x27a4f5(0x215)](_0x27a4f5(0x23b)+_0x32c11e[_0x27a4f5(0x1d1)]);}for(const _0x500bc3 of _0x35eb2f){let _0x1c831f;try{if(_0x500bc3[_0x27a4f5(0x230)])_0x1c831f=(0x0,extraMcps_1['readLocalMcp'])(_0x500bc3['path']);else{const _0x2f095c=(0x0,mcpPackages_1[_0x27a4f5(0x15b)])(_0x500bc3['package_name']);_0x5cb7c2['push'](_0x2f095c),_0x1c831f=_0x2f095c;}}catch(_0x24a1b9){_0x4636d3[_0x27a4f5(0x215)](_0x500bc3[_0x27a4f5(0x195)]+':\x20'+_0x24a1b9[_0x27a4f5(0x1d1)]);continue;}_0x1720c1[_0x51489c['zGHMR'](mcpKey,_0x500bc3[_0x27a4f5(0x195)],_0x4874f2)]={'command':process[_0x27a4f5(0x23d)],'args':[_0x1c831f[_0x27a4f5(0x1d4)]],'env':{...(0x0,mcpPackages_1['selectEnv'])(_0x1c831f[_0x27a4f5(0x20b)],_0x471b1d),...(0x0,mcpPackages_1[_0x27a4f5(0x22f)])([..._0x1c831f[_0x27a4f5(0x20b)],..._0x500bc3['secret_names'][_0x27a4f5(0x232)](_0x4565c8=>!_0x4565c8[_0x27a4f5(0x225)]('='))],_0xe3dffa),...(0x0,extraMcps_1[_0x27a4f5(0x147)])(_0x500bc3[_0x27a4f5(0x198)],_0xe3dffa)}};}if(_0x4cf321[_0x27a4f5(0x14f)])_0x21f512+=_0x27a4f5(0x207)+_0x4cf321['join'](_0x51489c[_0x27a4f5(0x160)]);_0x4636d3[_0x27a4f5(0x14f)]&&(process[_0x27a4f5(0x1c0)][_0x27a4f5(0x1de)](_0x27a4f5(0x1c6)+_0x4636d3['join'](_0x51489c[_0x27a4f5(0x1b6)])+'\x0a\x0a'),_0x21f512+=_0x27a4f5(0x14c)+_0x4636d3['join'](_0x51489c[_0x27a4f5(0x1b6)]));const _0x346fe7={'mcpServers':_0x1720c1};(0x0,fs_1[_0x27a4f5(0x1d9)])(_0x472cb9,JSON[_0x27a4f5(0x181)](_0x346fe7),{'encoding':_0x51489c[_0x27a4f5(0x1b3)],'mode':0x180});const _0x2973a8=claudeCommand(),_0xd45b2b=[..._0x2973a8['prefix'],_0x21f512,..._0x3d9e72,_0x27a4f5(0x1e1),_0x27a4f5(0x153),_0x472cb9];if(process.env.FB_TERMINAL_KEY)_0xd45b2b[_0x27a4f5(0x215)](_0x51489c['OGFJN'],(0x0,waitingHook_1[_0x27a4f5(0x12b)])(process[_0x27a4f5(0x23d)],(0x0,path_1['join'])(__dirname,_0x27a4f5(0x219))));if(claudeSupportsStrictMcpConfig(_0x2973a8))_0xd45b2b[_0x27a4f5(0x215)](_0x51489c[_0x27a4f5(0x1fd)]);const _0x5010aa=claudeSupportsMods();_0x5010aa?_0xd45b2b[_0x27a4f5(0x215)](_0x27a4f5(0x185),(0x0,path_1['join'])(__dirname,'..',_0x51489c[_0x27a4f5(0x164)]),_0x51489c[_0x27a4f5(0x235)],_0x51489c[_0x27a4f5(0x13c)]):process[_0x27a4f5(0x1c0)][_0x27a4f5(0x1de)](_0x27a4f5(0x1f5));const _0x1c75fb=()=>{const _0x2dbb96=_0x27a4f5;try{(0x0,fs_1[_0x2dbb96(0x149)])(_0x472cb9,{'force':!![]});}catch{}},_0x1f15bf=_0x5010aa?{'FB_TOOL_NAME':_0x11fef5['toolName'],'FB_PORTAL_URL':_0x11fef5['portalUrl'],..._0x24095b[_0x27a4f5(0x19a)]?{'FB_AGENT_NAME':_0x24095b['name']}:{},..._0x24095b['knowledge_keyword']?{'FB_KNOWLEDGE_KEYWORD':_0x24095b[_0x27a4f5(0x136)]}:{}}:{},_0x206e28=(0x0,child_process_1[_0x27a4f5(0x170)])(_0x2973a8[_0x27a4f5(0x15c)],_0xd45b2b,{'stdio':_0x51489c[_0x27a4f5(0x1d2)],'env':{...process.env,..._0x1f15bf}});_0x206e28['on'](_0x27a4f5(0x1ed),_0x4e9b02=>{const _0x57cb8d=_0x27a4f5;_0x51489c[_0x57cb8d(0x13e)](_0x1c75fb),process[_0x57cb8d(0x1c0)]['write'](_0x57cb8d(0x1c3)+_0x4e9b02[_0x57cb8d(0x1d1)]+'\x0a'),process['stderr']['write'](_0x51489c[_0x57cb8d(0x236)]),process[_0x57cb8d(0x199)](0x1);}),_0x206e28['on'](_0x27a4f5(0x199),_0x172de8=>{const _0x1b7543=_0x27a4f5;_0x51489c[_0x1b7543(0x13e)](_0x1c75fb),process['exit'](_0x51489c[_0x1b7543(0x205)](_0x172de8,0x0));});for(const _0x14e589 of[_0x51489c[_0x27a4f5(0x13b)],'SIGHUP'])process['on'](_0x14e589,()=>{const _0x1c6323=_0x27a4f5;_0x51489c[_0x1c6323(0x13e)](_0x1c75fb),process[_0x1c6323(0x199)](0x1);});void(0x0,mcpPackages_1[_0x27a4f5(0x1f1)])(_0x5cb7c2);}const PACKAGE_NAME=_0x137989(0x182);function isNewer(_0x587c51,_0x46b375){const _0x651d2e=_0x137989,_0x4f042a={'LsvRL':function(_0x5a44b6,_0x52bdd2){return _0x5a44b6<_0x52bdd2;},'ydXgN':function(_0x30e1c7,_0x3a795a){return _0x30e1c7>_0x3a795a;}},_0x4d7a5a=_0x587c51[_0x651d2e(0x1e5)]('.')[_0x651d2e(0x1d3)](Number),_0x1cfac2=_0x46b375[_0x651d2e(0x1e5)]('.')[_0x651d2e(0x1d3)](Number);for(let _0x460b65=0x0;_0x4f042a[_0x651d2e(0x192)](_0x460b65,0x3);_0x460b65++){if(_0x4f042a[_0x651d2e(0x17b)](_0x4d7a5a[_0x460b65]||0x0,_0x1cfac2[_0x460b65]||0x0))return!![];if((_0x4d7a5a[_0x460b65]||0x0)<(_0x1cfac2[_0x460b65]||0x0))return![];}return![];}exports[_0x137989(0x12e)]='\x0aconst\x20{\x20spawnSync\x20}\x20=\x20require(\x22child_process\x22);\x0aconst\x20{\x20mkdirSync,\x20writeFileSync\x20}\x20=\x20require(\x22fs\x22);\x0aconst\x20{\x20dirname\x20}\x20=\x20require(\x22path\x22);\x0aconst\x20[name,\x20version,\x20out]\x20=\x20process.argv.slice(1);\x0aconst\x20r\x20=\x20spawnSync(\x22npm\x22,\x20[\x22install\x22,\x20\x22-g\x22,\x20name\x20+\x20\x22@latest\x22],\x20{\x20encoding:\x20\x22utf-8\x22,\x20shell:\x20process.platform\x20===\x20\x22win32\x22\x20});\x0aconst\x20err\x20=\x20String(r.stderr\x20||\x20\x22\x22)\x20+\x20(r.error\x20?\x20r.error.message\x20:\x20\x22\x22);\x0aconst\x20failed\x20=\x20r.status\x20!==\x200;\x0aconst\x20reason\x20=\x20!failed\x20?\x20undefined\x20:\x20/EACCES|EPERM|permission/i.test(err)\x20?\x20\x22書き込む権限がありません\x22\x20:\x20\x22npm\x20が失敗しました(終了コード\x20\x22\x20+\x20r.status\x20+\x20\x22)\x22;\x0amkdirSync(dirname(out),\x20{\x20recursive:\x20true\x20});\x0awriteFileSync(out,\x20JSON.stringify({\x20name,\x20version,\x20failed,\x20reason\x20}));\x0a';function updateStatePath(){const _0x82f096=_0x137989,_0x5c81be={'nPPMl':_0x82f096(0x1b9)};return(0x0,path_1[_0x82f096(0x144)])((0x0,os_1[_0x82f096(0x1bb)])(),_0x5c81be[_0x82f096(0x1fa)],'self-update.json');}function readUpdateState(){const _0x143cc6=_0x137989;try{return JSON[_0x143cc6(0x217)]((0x0,fs_1['readFileSync'])(updateStatePath(),_0x143cc6(0x169)));}catch{return null;}}function writeUpdateState(_0x4beab7){const _0x254860=_0x137989,_0x57a267={'HGaFd':function(_0x14415b){return _0x14415b();}};try{(0x0,fs_1[_0x254860(0x173)])((0x0,path_1['dirname'])(updateStatePath()),{'recursive':!![]}),(0x0,fs_1[_0x254860(0x1d9)])(_0x57a267['HGaFd'](updateStatePath),JSON['stringify'](_0x4beab7));}catch{}}async function checkForUpdate(_0x2d0a38){const _0x527380=_0x137989,_0x63792c={'zkWNk':function(_0x5a9bfd,_0x5d7e1a,_0x36764f){return _0x5a9bfd(_0x5d7e1a,_0x36764f);},'idPsr':function(_0x29a88c,_0x2be716){return _0x29a88c===_0x2be716;},'zBxNx':function(_0x40bb39,_0x29fbe0){return _0x40bb39+_0x29fbe0;},'SfNCT':function(_0x426235,_0x25a20c){return _0x426235+_0x25a20c;},'HiWkR':_0x527380(0x229),'VtWDF':function(_0x2464ca,_0x3b77b5){return _0x2464ca(_0x3b77b5);}};if(process.env.FB_PROFILE)return;try{const _0x4cbc48=_0x2d0a38[_0x527380(0x204)]||PACKAGE_NAME,_0x2915ce=_0x2d0a38[_0x527380(0x1a2)]||JSON[_0x527380(0x217)]((0x0,fs_1[_0x527380(0x187)])((0x0,path_1[_0x527380(0x144)])(__dirname,'..',_0x527380(0x175)),_0x527380(0x169)))['version'],_0x176e76=await _0x63792c[_0x527380(0x20e)](fetch,_0x527380(0x130)+_0x4cbc48+'/latest',{'signal':AbortSignal['timeout'](0xbb8)});if(!_0x176e76['ok'])return;const _0x4d730b=await _0x176e76['json']();if(_0x4d730b[_0x527380(0x1a6)]&&isNewer(_0x4d730b[_0x527380(0x1a6)],_0x2915ce)){const _0x3d1a36=_0x4d730b[_0x527380(0x1a6)],_0x10b60d=readUpdateState();if(_0x10b60d?.[_0x527380(0x19a)]===_0x4cbc48&&_0x63792c[_0x527380(0x19f)](_0x10b60d[_0x527380(0x1a6)],_0x3d1a36)&&_0x10b60d[_0x527380(0x1b0)]){!_0x10b60d['notified']&&(process[_0x527380(0x1d6)][_0x527380(0x1de)](_0x63792c[_0x527380(0x191)](_0x63792c['SfNCT']('\x0a🔔\x20新しいバージョン\x20'+_0x3d1a36+_0x527380(0x208)+_0x10b60d[_0x527380(0x1f7)]+')。\x0a',_0x527380(0x1dc)+_0x4cbc48+_0x527380(0x1f9)),_0x63792c['HiWkR'])),_0x63792c[_0x527380(0x23a)](writeUpdateState,{..._0x10b60d,'notified':!![]}));return;}process[_0x527380(0x1d6)]['write'](_0x527380(0x176)+_0x3d1a36+_0x527380(0x209)+_0x2915ce+_0x527380(0x159));const _0x3cf3a9=(0x0,child_process_1[_0x527380(0x170)])(process[_0x527380(0x23d)],['-e',exports[_0x527380(0x12e)],_0x4cbc48,_0x3d1a36,updateStatePath()],{'detached':!![],'stdio':_0x527380(0x1db)});_0x3cf3a9[_0x527380(0x23e)]();}}catch{}}async function runLauncher(_0x31230f,_0x35bac1){const _0x158651=_0x137989,_0x25dc76={'YJovC':function(_0x26bfec,_0x8adae7,_0x14e87b){return _0x26bfec(_0x8adae7,_0x14e87b);}};await _0x25dc76[_0x158651(0x23c)](withVault,_0x35bac1,_0x239a1f=>runWithVault(_0x239a1f,_0x31230f));}async function runMyAgent(_0x44fce8,_0x10f2d7){const _0xee197f=_0x137989,_0x355259={'XZLea':function(_0x4037e9,_0x258f28){return _0x4037e9+_0x258f28;},'HfhXu':function(_0x45e747,_0x1c5b7a,_0x153366){return _0x45e747(_0x1c5b7a,_0x153366);}};(!_0x44fce8||!exports['MY_AGENT_NAME'][_0xee197f(0x174)](_0x44fce8))&&(process[_0xee197f(0x1c0)][_0xee197f(0x1de)]('自作エージェントの名前は文字・数字・-・_\x20だけで書いてください(空白や記号は使えません)(今:\x20'+JSON['stringify'](_0x44fce8??'')+_0xee197f(0x1f6)),process[_0xee197f(0x199)](0x1));const _0x21aae0=findMyAgent(_0x44fce8,process[_0xee197f(0x1ae)](),(0x0,os_1['homedir'])());!_0x21aae0&&(process[_0xee197f(0x1c0)][_0xee197f(0x1de)](_0x355259['XZLea'](_0xee197f(0x18a)+_0x44fce8+_0xee197f(0x19b),_0xee197f(0x196)+_0x44fce8+_0xee197f(0x157))),process[_0xee197f(0x199)](0x1)),await _0x355259[_0xee197f(0x12c)](withVault,_0x10f2d7,_0x36b0a9=>runMyAgentWithVault(_0x36b0a9,_0x44fce8));}async function withVault(_0x5a6bbb,_0x4a5473){const _0x597bd1=_0x137989,_0x204041={'RSABO':function(_0x2178da,_0x42bf84){return _0x2178da(_0x42bf84);},'lVwMS':function(_0xd6d3a7,_0x1d1e9a){return _0xd6d3a7(_0x1d1e9a);}},_0xe99ea5=_0x204041['RSABO'](loadConfig,_0x5a6bbb);await _0x204041[_0x597bd1(0x213)](checkForUpdate,_0xe99ea5);try{await _0x204041[_0x597bd1(0x154)](_0x4a5473,_0xe99ea5);}catch(_0x5d95d9){if(!(_0x5d95d9 instanceof vault_1[_0x597bd1(0x1c8)]))throw _0x5d95d9;process['stderr'][_0x597bd1(0x1de)]('\x0a'+_0x5d95d9['message']+'\x0a'),process[_0x597bd1(0x199)](0x1);}}async function runMyAgentWithVault(_0x2ce7ae,_0x48426e){const _0x43440b=_0x137989,_0x29a978={'ZThlS':function(_0x667710,_0x4da4fa,_0x5eadbe){return _0x667710(_0x4da4fa,_0x5eadbe);},'DPqNV':function(_0x119a46,_0x438c98){return _0x119a46+_0x438c98;},'rATtn':function(_0x1a1b34,_0x52833f,_0x15604a,_0x571885,_0x163edf,_0xb9b0a7,_0x2e2066){return _0x1a1b34(_0x52833f,_0x15604a,_0x571885,_0x163edf,_0xb9b0a7,_0x2e2066);}};prepareVault(_0x2ce7ae);const {jwt:_0x145d9a,value:_0x5e4e1b}=await _0x29a978[_0x43440b(0x135)](withRelogin,_0x2ce7ae,_0x5e6400=>fetchToolAccess(_0x2ce7ae,_0x5e6400)),_0x1953bb={'knowledge_keyword':'','greeting':'','name':_0x48426e},_0x3c4437=_0x29a978[_0x43440b(0x220)](_0x29a978['DPqNV']('>\x20'+_0x2ce7ae[_0x43440b(0x1f4)]+_0x43440b(0x1cd)+(_0x2ce7ae[_0x43440b(0x1f4)]+_0x43440b(0x162)+_0x48426e+'\x0a')+_0x43440b(0x1a4),'さあ始めましょう'),readMemo());_0x29a978[_0x43440b(0x150)](launchClaude,_0x2ce7ae,_0x145d9a,_0x1953bb,_0x3c4437,_0x5e4e1b,[_0x43440b(0x20d),_0x48426e]);}async function withRelogin(_0x43a6ff,_0x1165ea){const _0x1040b5=_0x137989,_0x5a0c03={'OPTnP':function(_0x1d3b10,_0x32b1f0){return _0x1d3b10(_0x32b1f0);},'RnlCc':_0x1040b5(0x1d5),'BAizk':function(_0x39f7c0,_0x15aded){return _0x39f7c0 instanceof _0x15aded;},'uZZTF':_0x1040b5(0x14d)};let _0x7300a1=await _0x5a0c03[_0x1040b5(0x183)](ensureJwt,_0x43a6ff);try{return{'jwt':_0x7300a1,'value':await _0x5a0c03[_0x1040b5(0x183)](_0x1165ea,_0x7300a1)};}catch(_0x3b36cd){const _0x23c907=_0x5a0c03[_0x1040b5(0x238)][_0x1040b5(0x1e5)]('|');let _0xae598=0x0;while(!![]){switch(_0x23c907[_0xae598++]){case'0':process[_0x1040b5(0x1c0)][_0x1040b5(0x1de)](_0x1040b5(0x23f));continue;case'1':_0x7300a1=await ensureJwt(_0x43a6ff);continue;case'2':if(!(_0x3b36cd instanceof AuthError))throw _0x3b36cd;continue;case'3':(0x0,vault_1[_0x1040b5(0x14a)])(_0x43a6ff['toolName']);continue;case'4':try{return{'jwt':_0x7300a1,'value':await _0x5a0c03['OPTnP'](_0x1165ea,_0x7300a1)};}catch(_0x257683){_0x5a0c03['BAizk'](_0x257683,AuthError)&&(process[_0x1040b5(0x1c0)][_0x1040b5(0x1de)](_0x5a0c03[_0x1040b5(0x131)]),process[_0x1040b5(0x199)](0x1));throw _0x257683;}continue;}break;}}}function prepareVault(_0x36692c){const _0x3afddc=_0x137989,_0x36af8e={'uQcPO':_0x3afddc(0x18d),'bWuwJ':function(_0x42092d,_0x321139){return _0x42092d+_0x321139;},'EaMRh':_0x3afddc(0x145)};try{const _0x4b340d=(0x0,vault_1[_0x3afddc(0x1a1)])(_0x36692c['toolName']);if(_0x4b340d['migrated'])process[_0x3afddc(0x1d6)][_0x3afddc(0x1de)](_0x36af8e[_0x3afddc(0x200)]);}catch(_0x1c6d86){process[_0x3afddc(0x1c0)]['write'](_0x3afddc(0x1a8)+_0x1c6d86[_0x3afddc(0x1d1)]+'\x0a');}const _0x398175=(0x0,vault_1[_0x3afddc(0x16c)])((0x0,vault_1['listSecretNames'])());_0x398175[_0x3afddc(0x14f)]&&process[_0x3afddc(0x1d6)][_0x3afddc(0x1de)](_0x36af8e['bWuwJ'](_0x3afddc(0x16e)+_0x398175[_0x3afddc(0x144)](',\x20')+'。使われるのは「@」の付かない方です。',_0x36af8e[_0x3afddc(0x16a)]));}async function runWithVault(_0x3c564a,_0x1c2935){const _0x247f6f=_0x137989,_0x11e308={'gpaSd':function(_0x5ba2b7,_0x12edc4,_0x37cc58){return _0x5ba2b7(_0x12edc4,_0x37cc58);},'rvtLQ':_0x247f6f(0x222),'TvFBF':function(_0x1b6b91,_0x4d24cb){return _0x1b6b91+_0x4d24cb;},'aPhVg':function(_0x5c637e){return _0x5c637e();},'nbcVd':function(_0x535093,_0x45e2d9){return _0x535093(_0x45e2d9);},'tEdnh':function(_0x1f26c6,_0x118816,_0x32d186,_0x2be75c,_0x40cbcb,_0x1e1ac2){return _0x1f26c6(_0x118816,_0x32d186,_0x2be75c,_0x40cbcb,_0x1e1ac2);}};prepareVault(_0x3c564a);const {jwt:_0x2064b8,value:_0x57c3cc}=await _0x11e308[_0x247f6f(0x1ef)](withRelogin,_0x3c564a,_0x346009=>resolveSlot(_0x3c564a,_0x346009,_0x1c2935));_0x57c3cc[_0x247f6f(0x151)]&&process[_0x247f6f(0x156)]===_0x11e308[_0x247f6f(0x12d)]&&(process[_0x247f6f(0x1c0)][_0x247f6f(0x1de)](_0x11e308[_0x247f6f(0x1fe)]('\x0a「'+_0x57c3cc['name']+_0x247f6f(0x227)+_0x247f6f(0x1e3)+'WSL2(Ubuntu)の中から起動する必要があります。\x0a\x0a'+_0x247f6f(0x141)+_0x247f6f(0x1da),_0x247f6f(0x18e))+_0x247f6f(0x18c)+_0x247f6f(0x152)),process['exit'](0x1));const _0x2428a7=await _0x11e308['gpaSd'](fetchBundledMcps,_0x3c564a,_0x2064b8),_0x5a5611=_0x11e308[_0x247f6f(0x1ad)](readMemo),_0x42eb94=buildGreeting(_0x3c564a,_0x57c3cc,_0x5a5611,claudeSupportsMods(),await _0x11e308['nbcVd'](fetchDisplayName,_0x3c564a));_0x11e308[_0x247f6f(0x17d)](launchClaude,_0x3c564a,_0x2064b8,_0x57c3cc,_0x42eb94,_0x2428a7);}
|
|
1
|
+
'use strict';const _0x175bac=_0x1d79;(function(_0x516ace,_0x12dd2d){const _0x1bec5a=_0x1d79,_0x3b4541=_0x516ace();while(!![]){try{const _0x48fc57=-parseInt(_0x1bec5a(0x182))/0x1+parseInt(_0x1bec5a(0x1f3))/0x2*(-parseInt(_0x1bec5a(0x1c6))/0x3)+-parseInt(_0x1bec5a(0x184))/0x4+parseInt(_0x1bec5a(0x16f))/0x5*(parseInt(_0x1bec5a(0x1cf))/0x6)+parseInt(_0x1bec5a(0x15b))/0x7*(-parseInt(_0x1bec5a(0x17e))/0x8)+parseInt(_0x1bec5a(0x18d))/0x9*(-parseInt(_0x1bec5a(0x155))/0xa)+parseInt(_0x1bec5a(0x1d6))/0xb*(parseInt(_0x1bec5a(0x228))/0xc);if(_0x48fc57===_0x12dd2d)break;else _0x3b4541['push'](_0x3b4541['shift']());}catch(_0x3b15d1){_0x3b4541['push'](_0x3b4541['shift']());}}}(_0x5a51,0x5a15b));Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['SELF_UPDATE_SCRIPT']=exports[_0x175bac(0x174)]=exports[_0x175bac(0x1a3)]=void 0x0,exports[_0x175bac(0x162)]=buildGreeting,exports[_0x175bac(0x17c)]=claudeCommand,exports[_0x175bac(0x1f0)]=supportsMods,exports['findMyAgent']=findMyAgent,exports[_0x175bac(0x205)]=runLauncher,exports[_0x175bac(0x225)]=runMyAgent;const fs_1=require('fs'),os_1=require('os'),path_1=require(_0x175bac(0x185)),child_process_1=require(_0x175bac(0x196)),vault_1=require('./vault'),prompt_1=require(_0x175bac(0x195)),mcpPackages_1=require(_0x175bac(0x1c7)),extraMcps_1=require(_0x175bac(0x1cb)),waitingHook_1=require(_0x175bac(0x1b8));function loadConfig(_0x337c41){const _0x5079c7=_0x175bac,_0x4940ec=process.env.PORTAL_URL||_0x337c41[_0x5079c7(0x222)],_0x55ea52=process.env.TOOL_NAME||_0x337c41[_0x5079c7(0x139)];return{'toolName':_0x55ea52,'portalUrl':_0x4940ec,'packageName':_0x337c41['packageName'],'packageVersion':_0x337c41[_0x5079c7(0x22c)]};}function isJwtExpired(_0xeb94eb){const _0xc79db1=_0x175bac,_0xee86d4={'VJicS':function(_0xf22c09,_0x263690){return _0xf22c09*_0x263690;},'LHsdZ':function(_0xe736f1,_0x50f8ea){return _0xe736f1+_0x50f8ea;}};try{const _0x834223=JSON[_0xc79db1(0x1fb)](Buffer[_0xc79db1(0x173)](_0xeb94eb[_0xc79db1(0x1d7)]('.')[0x1],_0xc79db1(0x191))[_0xc79db1(0x1ba)]());return _0xee86d4[_0xc79db1(0x146)](_0x834223[_0xc79db1(0x1e8)],0x3e8)<_0xee86d4['LHsdZ'](Date[_0xc79db1(0x239)](),0xea60);}catch{return!![];}}async function interactiveLogin(_0x4e1cb4){const _0x458e8f=_0x175bac,_0x114fb8={'uDXJF':_0x458e8f(0x13c),'LAkjV':_0x458e8f(0x15d),'gEEqM':_0x458e8f(0x23a)};process['stdout'][_0x458e8f(0x238)]('\x0a'+_0x4e1cb4['toolName']+_0x458e8f(0x1ea));for(let _0x151742=0x0;_0x151742<0x3;_0x151742++){const _0x59aed7=await(0x0,prompt_1[_0x458e8f(0x1ff)])(_0x458e8f(0x1dd)),_0x2134e2=await(0x0,prompt_1['questionHidden'])(_0x114fb8[_0x458e8f(0x1f7)]);try{const _0x5abf1d=await fetch(_0x4e1cb4[_0x458e8f(0x222)]+_0x458e8f(0x141),{'method':_0x458e8f(0x1f2),'headers':{'Content-Type':_0x458e8f(0x187)},'body':JSON[_0x458e8f(0x1ac)]({'email':_0x59aed7,'password':_0x2134e2})}),_0x25bc44=await _0x5abf1d[_0x458e8f(0x1b9)]();if(_0x5abf1d['ok']&&_0x25bc44[_0x458e8f(0x1a5)])return process[_0x458e8f(0x235)]['write'](_0x114fb8['LAkjV']),{'jwt':_0x25bc44['token'],'refresh':_0x25bc44[_0x458e8f(0x1aa)]??null};process[_0x458e8f(0x207)][_0x458e8f(0x238)](_0x458e8f(0x161)+(_0x25bc44[_0x458e8f(0x1f5)]??_0x114fb8[_0x458e8f(0x224)])+'\x0a');}catch{process[_0x458e8f(0x207)][_0x458e8f(0x238)]('サーバーに接続できませんでした。ネットワークを確認してください。\x0a');}}process['stderr'][_0x458e8f(0x238)](_0x458e8f(0x13d)),process['exit'](0x1);}async function refreshTokens(_0x122e04,_0x1c0ab3){const _0x1117f3=_0x175bac,_0x2ddd2a={'dZrBD':_0x1117f3(0x187)};try{const _0x130d29=await fetch(_0x122e04['portalUrl']+_0x1117f3(0x1e2),{'method':_0x1117f3(0x1f2),'headers':{'Content-Type':_0x2ddd2a['dZrBD']},'body':JSON[_0x1117f3(0x1ac)]({'refresh_token':_0x1c0ab3})});if(!_0x130d29['ok'])return null;const _0x44d123=await _0x130d29[_0x1117f3(0x1b9)]();if(!_0x44d123[_0x1117f3(0x1a5)])return null;return{'jwt':_0x44d123['token'],'refresh':_0x44d123['refresh_token']??_0x1c0ab3};}catch{return null;}}async function ensureJwt(_0x37c12f){const _0x181820=_0x175bac,_0x1e3825={'JzmBl':function(_0x4617cd,_0x1a6b74,_0xfd70cd){return _0x4617cd(_0x1a6b74,_0xfd70cd);}},_0x1bb1d9=(0x0,vault_1[_0x181820(0x13a)])(_0x37c12f[_0x181820(0x139)]);if(_0x1bb1d9&&!isJwtExpired(_0x1bb1d9[_0x181820(0x18f)]))return _0x1bb1d9[_0x181820(0x18f)];if(_0x1bb1d9?.['refresh']){const _0x4703a5=await _0x1e3825[_0x181820(0x15e)](refreshTokens,_0x37c12f,_0x1bb1d9['refresh']);if(_0x4703a5)return(0x0,vault_1[_0x181820(0x19f)])(_0x37c12f[_0x181820(0x139)],_0x4703a5),_0x4703a5[_0x181820(0x18f)];}const _0x54468d=await interactiveLogin(_0x37c12f);return(0x0,vault_1[_0x181820(0x19f)])(_0x37c12f[_0x181820(0x139)],_0x54468d),_0x54468d[_0x181820(0x18f)];}class AuthError extends Error{}async function resolveSlot(_0xdd17ff,_0x3a23e3,_0x2c05de){const _0x30d696=_0x175bac,_0x4846f0={'UTDFl':function(_0xcede5f,_0x4944ed){return _0xcede5f===_0x4944ed;},'ZjrWG':_0x30d696(0x13f)},_0x30ba7a=_0xdd17ff[_0x30d696(0x222)]+_0x30d696(0x1f6)+_0x2c05de+'?tool_name='+encodeURIComponent(_0xdd17ff[_0x30d696(0x139)]),_0x5227a1=await fetch(_0x30ba7a,{'headers':{'Authorization':_0x30d696(0x20d)+_0x3a23e3}});if(_0x5227a1['status']===0x191)throw new AuthError(_0x30d696(0x158));if(_0x4846f0['UTDFl'](_0x5227a1[_0x30d696(0x1ce)],0x193)){const _0xec20b1=await _0x5227a1['json']()[_0x30d696(0x1e9)](()=>({}));process[_0x30d696(0x207)][_0x30d696(0x238)]('\x0a'+(_0xec20b1[_0x30d696(0x1f5)]??_0x4846f0[_0x30d696(0x1ab)])+'\x0a'),process['exit'](0x1);}!_0x5227a1['ok']&&(process[_0x30d696(0x207)][_0x30d696(0x238)](_0x30d696(0x168)+_0x5227a1[_0x30d696(0x1ce)]+')。\x0a'),process[_0x30d696(0x20e)](0x1));const _0x3e506c=await _0x5227a1['json']();return(_0x3e506c[_0x30d696(0x1f5)]||!_0x3e506c[_0x30d696(0x150)])&&(process[_0x30d696(0x207)]['write'](_0x30d696(0x1ee)+_0x2c05de+'のエージェントが見つかりませんでした。\x0a'),process[_0x30d696(0x20e)](0x1)),{'knowledge_keyword':_0x3e506c[_0x30d696(0x150)],'greeting':_0x3e506c['greeting']??'','name':_0x3e506c[_0x30d696(0x230)]??'','requires_unix':_0x3e506c['requires_unix']??![]};}function readMemo(){const _0x29d054=_0x175bac,_0x225982={'omsvd':_0x29d054(0x1be)},_0x2b620c=(0x0,path_1['join'])(process[_0x29d054(0x17f)](),_0x29d054(0x179),_0x29d054(0x1d0));if(!(0x0,fs_1[_0x29d054(0x209)])(_0x2b620c))return'';try{const _0x34e6d5=(0x0,fs_1[_0x29d054(0x166)])(_0x2b620c,_0x225982['omsvd'])[_0x29d054(0x1fd)]();return _0x34e6d5?_0x29d054(0x157)+_0x34e6d5:'';}catch{return'';}}function buildGreeting(_0x15acf7,_0x30a926,_0x95b7e,_0x502f50,_0x591069){const _0x6a276=_0x175bac,_0x1e99dc={'JhgfO':function(_0x29e777,_0x270f2f){return _0x29e777+_0x270f2f;},'mDtaZ':function(_0x23adcc,_0x31f0c7){return _0x23adcc+_0x31f0c7;},'XKabp':_0x6a276(0x189),'VKHMP':function(_0x34f3d5,_0x17cbb6){return _0x34f3d5+_0x17cbb6;}},_0x1f3778=_0x502f50?'':_0x1e99dc[_0x6a276(0x18e)](_0x6a276(0x1b4)+_0x30a926[_0x6a276(0x150)]+_0x6a276(0x23d),'load_knowledge\x20ツールで\x20\x22'+_0x30a926[_0x6a276(0x150)]+'\x22\x20を読み込んでから始めてください。'),_0x4c350f=_0x1e99dc['JhgfO'](_0x1e99dc['mDtaZ'](_0x1e99dc['mDtaZ'](_0x1e99dc[_0x6a276(0x1d9)]('>\x20'+_0x591069+_0x6a276(0x1ca),''+_0x591069+(_0x30a926[_0x6a276(0x230)]?_0x1e99dc[_0x6a276(0x18e)](_0x1e99dc[_0x6a276(0x237)],_0x30a926[_0x6a276(0x230)]):'')+'\x0a'),_0x6a276(0x1cc)),_0x6a276(0x14c)),_0x1f3778),_0x1a560f=_0x30a926[_0x6a276(0x20c)]?'\x0a\x0a'+_0x30a926[_0x6a276(0x20c)]:'';return _0x1e99dc[_0x6a276(0x1b3)](_0x4c350f,_0x1a560f)+_0x95b7e;}async function fetchDisplayName(_0x5d6f87){const _0x473652=_0x175bac;try{const _0xa4ce21=await fetch(_0x5d6f87['portalUrl']+_0x473652(0x1b7)+encodeURIComponent(_0x5d6f87['toolName']),{'signal':AbortSignal[_0x473652(0x1f1)](0x1388)}),_0x268955=_0xa4ce21['ok']?await _0xa4ce21[_0x473652(0x1b9)]():null;return _0x268955?.[_0x473652(0x177)]||_0x5d6f87['toolName'];}catch{return _0x5d6f87[_0x473652(0x139)];}}function claudeCommand(){const _0x24985b=_0x175bac,_0x2aa205={'cNEUI':_0x24985b(0x23b),'jCpYh':_0x24985b(0x1b1),'etQtR':_0x24985b(0x1be),'mRxUs':_0x24985b(0x160),'zoVGH':_0x24985b(0x1d3),'Lfrzd':_0x24985b(0x1e4)};if(process[_0x24985b(0x21c)]!==_0x24985b(0x1a6))return{'command':_0x2aa205['cNEUI'],'prefix':[]};const _0x493c9c=(0x0,child_process_1[_0x24985b(0x164)])(_0x2aa205[_0x24985b(0x14e)],['claude'],{'encoding':_0x2aa205['etQtR']}),_0x14933c=(_0x493c9c[_0x24985b(0x235)]??'')[_0x24985b(0x1d7)](/\r?\n/)[_0x24985b(0x236)](_0x523849=>_0x523849['trim']())[_0x24985b(0x13e)](Boolean);if(_0x14933c[_0x24985b(0x1bb)](_0x304895=>_0x304895[_0x24985b(0x1e7)]()['endsWith'](_0x24985b(0x19a))))return{'command':_0x24985b(0x23b),'prefix':[]};const _0x44cfed=_0x14933c['find'](_0x2d1053=>_0x2d1053[_0x24985b(0x1e7)]()[_0x24985b(0x16d)]('.cmd'));if(_0x44cfed){const _0x15d6cc=(0x0,path_1['join'])((0x0,path_1['dirname'])(_0x44cfed),_0x2aa205[_0x24985b(0x156)],_0x2aa205[_0x24985b(0x223)],_0x2aa205['Lfrzd'],_0x24985b(0x194));if((0x0,fs_1[_0x24985b(0x209)])(_0x15d6cc))return{'command':process[_0x24985b(0x14b)],'prefix':[_0x15d6cc]};}return{'command':_0x2aa205['cNEUI'],'prefix':[]};}function claudeSupportsStrictMcpConfig(_0x192dee){const _0x4ef23b=_0x175bac,_0x9451f6={'EzkUg':_0x4ef23b(0x1be)};try{const _0x2f7b38=(0x0,child_process_1['spawnSync'])(_0x192dee['command'],[..._0x192dee[_0x4ef23b(0x13b)],_0x4ef23b(0x14a)],{'encoding':_0x9451f6['EzkUg']});return(_0x2f7b38[_0x4ef23b(0x235)]??'')[_0x4ef23b(0x200)](_0x4ef23b(0x21f));}catch{return![];}}function _0x5a51(){const _0x574213=['4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4Psa4PsacG','BNDUA1u','C3rHDhvZ','nJm3mMPytwPYuq','BwvTBY5Tza','ChjLCgfYzu1JCa','ls12zxjZAw9U','qgfUDgHYB3bPyY1HAq','Axb2yvu','ls1Hz2vUDa','mtK5nJq4nZL0rw5Tzwq','C3bSAxq','l2fWAs90B29SCY8','Bur0yvO','EM9Rt0y','qgz1BM55lwjVB3rOl2fNzw50lwnVCMu','tvLJr1C','44oH44o844oR44kI44oj44oS44k5oIa','Ag9VA1nLDhrPBMDZ','Dw5Yzwy','BgXjAve','6kQn6kI844gR5AsX5Pwx44gx44g+44gx44gF44cc44gt44gU44kI44kR44kM44oZ44oi44gR5QIP6zMq44gm44gc44kl44gl44gu56k66kQn44gp44gG44gv44ge44cccG','l2fWAs9HDxrOl3jLzNjLC2G','l21JChm','y2XHDwrLlwnVzgu','BM9Kzq','zNLZEKK','Dg9mB3DLCKnHC2u','zxHW','y2f0y2G','ioobQ+odREocSoocPoodS+obL+obPUobJ+obOoobLEobHooaGGO','lMPZB24','ls1Ty3aTy29UzMLN','CMvMCMvZAeLUqMfJA2DYB3vUza','44k544oT44od44oi','sfruuca','C3vWCg9YDhnnB2rZ','DgLTzw91Da','ue9tva','mte0nJjUs2jrB0q','BwTKAxjtEw5J','zxjYB3i','l2fWAs9Hz2vUDhmVC2XVDc8','DurysKy','BwvZC2fNzq','ANbdAfe','C2vSzwn0rw52','CgfYC2u','44oe44o844oR44gU5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','DhjPBq','cMnVBNn0ihSGC3bHD25tEw5Jih0GpsbYzxf1AxjLkcjJAgLSzf9WCM9JzxnZiIK7cMnVBNn0ihSGBwTKAxjtEw5Jlcb3CML0zuzPBgvtEw5Jih0GpsbYzxf1AxjLkcjMCYiPoWPJB25ZDcb7igrPCM5HBwuGFsa9ihjLCxvPCMuOiNbHDgGIktSky29UC3qGw25HBwuSihzLCNnPB24Sig91Df0GpsbWCM9JzxnZlMfYz3yUC2XPy2uOmsK7cMnVBNn0ihiGpsbZCgf3BLn5BMmOiM5WBsiSifSIAw5ZDgfSBciSiciTzYiSig5HBwuGkYaIqgXHDgvZDcjDlcb7igvUy29KAw5NoIaIDxrMltGIlcbZAgvSBdOGChjVy2vZCY5WBgf0zM9YBsa9pt0GiNDPBJmYiIb9ktSky29UC3qGzxjYid0Gu3rYAw5NkhiUC3rKzxjYihX8iciIksaRicHYlMvYCM9Yid8GCI5LCNjVCI5TzxnZywDLidOGiIiPoWPJB25ZDcbMywLSzwqGpsbYlNn0yxr1CYaHpt0GmdSky29UC3qGCMvHC29Uid0GiwzHAwXLzca/ihvUzgvMAw5Lzca6ic9fqundrvn8rvbfuK18CgvYBwLZC2LVBI9PlNrLC3qOzxjYksa/iclMM7JJGy3OVRZJGOdMQkNPMzdJGyZJGylJGORJGB7JGzVJGPmIidOGiM5WBsdJGyZLPlhMLzFJGzFJGB7JGzFJGz/VViJNTylKUOBJGRpJG7ZJG4KGiIaRihiUC3rHDhvZicSGiU+8Isi7cM1RzgLYu3LUyYHKAxjUyw1Lkg91DcKSihSGCMvJDxjZAxzLoIb0CNvLih0PoWP3CML0zuzPBgvtEw5Jkg91DcWGsLnptI5ZDhjPBMDPzNKOEYbUyw1Llcb2zxjZAw9UlcbMywLSzwqSihjLyxnVBIb9ksK7cG','CxvLC3rPB24','Aw5JBhvKzxm','AxnbCNjHEq','s2LhuMy','C2vJCMv0x25HBwvZ','77Yj44cccG','CNvUtgf1BMnOzxi','tgjIzuO','C3rKzxjY','BwnW','zxHPC3rZu3LUyW','DhLOtNG','twvZB3a','z3jLzxrPBMC','qMvHCMvYia','zxHPDa','ywDLBNrZ','44cn44gVifDPBMrVD3mG44gU44g+44g+44gN44gV6lw35yUv44gN44gn44g+44gB44kt44cccGO','tuztCLy','qKnlte8','ChvZAa','veDHt3C','DMvYC2LVBG','CMvWBgfJzq','DgvZDa','CM1tEw5J','Dg1WzgLY','DK1Ay1C','ls1ZExn0zw0TChjVBxb0lxnUyxbZAg90','CgXHDgzVCM0','CMvHzgrPCLn5BMm','CMvHC29U','ls1ZDhjPy3qTBwnWlwnVBMzPzW','zw52','CgfJA2fNzv9Uyw1L','Cg9YDgfSvxjS','EM9wr0G','z0vfCu0','CNvUtxLbz2vUDa','cUkaUYa','u0Lhsfvq','mtjmDxr1zva','44cn44gm6kAl44gK44gl44kk44g+44gB44kt44gN44gx44gF44cccG','ls1Kyw5NzxjVDxnSEs1ZA2LWlxbLCM1PC3nPB25Z','icaG77Yi5QIP6zMq44gm6lAZ44kk44gQ44ge44gO5yE644kl5Ac05zci44gV44cbtM9Kzs5QCYdJGPiGBNzTioobQUobQEobP+IhQUwiHUobRUodPUodVoocTUodVoobQ+wfPEocJoEBToobMEobQoIhQUwlLEABToAwSoobP+obJEocI+ocIoobHUobQ+obQUocIUobVUobME+8IqO','CgfJA2fNzvzLCNnPB24','yu5Js3C','lM1K','zgLYBMfTzq','BMfTzq','ioobJowiQEEuQowpR+IdVEobP+obME+8IoEpVUwCQca','tKLprgC','sxDZCKW','vMPZt3O','C3rKB3v0','BwfW','weTHyNa','D3jPDgu','BM93','6kQn6kI844kO44oP44o8','y2XHDwrL','A0TKwNe','iIdJGyZLIkNNLkJLJ6/OG73JGAFJGzNJGiik','ioocKUIhQUwlLEobP+wfPEocJoocIEocJoobVUobM+ocK+obP+obL+obN++8Ia','wevqD0y','Dg9VBe5HBwu','CMvHzfrVA2vUCW','ChjLzML4','44or44k544oV44o844ojoIa','44oT44kW44kK44oZ44gRm+wBNUwKSEAvL+obL+obVUobL+obN+oaGUE1GUs6HUobL+obVUobMEoaGGO','zMLSDgvY','44gt44gU44kO44o844k444kN44oZ44oi44gV44gu5Awr57se44gU44ox44oP44oZ44gN44gV5yIP55sO44gN44gn44g+44gB44kt44cc','lw1JCc0','l2fWAs9HDxrOl2XVz2LU','y1PHrKC','yMLUugf0Aa','rgXLwey','DvvUwLu','vKPPy1m','BwLNCMf0zwq','BwfWCgvKu2vJCMv0rw52','cUMhKEw6Q+ocKUwfQoodHoodVoodQ+wfSEMaMUobQ+obVUobQoocGEobVUobL+obN++8Ih4VlMz1BM55lwjVB3rOl3zHDwX077Yj44cccG','ls1OzwXW','zxHLy1bHDgG','44gv44gc5AEl44kb44g+44gx44kh44gg','t0HNwNa','AKnWwwG','D2fPDgLUz0HVB2SUANm','A25VD2XLzgDLx2TLExDVCMq','zMfPBgvK','qgXHDgvZDaO','D3jPDgvgAwXLu3LUyW','CNHREgC','mtm0nJiZmeXdDxfgCa','Bvj4vxm','cGOTls0k8j+tNsdJG5FJG63JGRJJGQFJGQ/JG4JJG6hJG6i6cG','Dw5HDxrOB3jPEMvK','Aw5OzxjPDa','r3zNuw4','mZiWntn5zxzqDMq','y29TBwfUza','4PYfioodREocSoocPoodS+obL+obVUobL+obN+oaGGO','sNPTqMW','C3bHD24','BM9Kzv9TB2r1BgvZ','44oT44kW44kK44oZ5AsX5PwxoIa','yNvPBgrhCMvLDgLUzW','C1Dzugi','C3bHD25tEw5J','4Oc7ios7LUobRUocQoodVoocUoocP+odS+odIoobRYbxAw5KB3DZioobRUobVUobVUobLowiQEEuQoobHoobN+obOoobKEobVUobMEoaGGO','CMvHzezPBgvtEw5J','Ag9TzwrPCG','44kO44o844k444kN44oZ44oi5Oof5AcX44gU5y+w5B6x44gR5AsX5Pwx44gx44g+44gx44gFicHivfrqia','u0vmrL9vuerbvevFu0nssvbu','cI0G','icaG5QYH44gU44kZ44oE44oZ44oj44gN5PU05PAW44gx44gM44gp44gG44gv44geoIbUCg0GAw5ZDgfSBcaTzYa','6iEQ5l2C44kO44o844k444kN44oZ44oi44cm','zw5KC1DPDgG','cUkaUYbdBgf1zguGq29KzsdJGPlMLRdJGzFJGy/JGzNJGOVJGAJVViHUCg0GAw5ZDgfSBcaTzYbayw50AhjVCgLJlwfPl2nSyxvKzs1JB2rL77Yj44cb5OMl6Acg5PU444gU5A6i44kk44gm5BY344gp44gQ44kk44g+44gz44cccG','ntC1te9QAg1A','Bwf0y2G','y29UzMXPy3rLzfnLy3jLDe5HBwvZ','ioocKUs9V+obIoocI+wLKEE0HoobJoobGUocIUobVUobM+ocK+oaGG','zNjVBq','tvLFquDftLrFtKfnrq','mxW0Fdj8m3WW','icaZlIbvyNvUDhuG44gU5lIT44gN5Ps544kb44gM44gt44gU44kZ44oE44oZ44oj44ks5A6F6kgm44gz44klcGO','zgLZCgXHEv9Uyw1L','D2rYsvy','lMfP','q2XHDwrLienVzguGq0XjicHJBgf1zguPioobJoocPoodS+ocUEodIoodVoodQ+obLEocJoobPUobHoocI+obI+EIUUIQJEobL+obPUobJ+obOoobLEobHooaGGO','44cc5l2/44kp44km44kl44gU44gV44cmqooaJEobRUs7MoobI+obQUobHoAwUEobP+obMEoaGG','y2XHDwrLq29TBwfUza','v1nmmU+8IfvIDw50DE+8IEobRUs4REobI+ocIEI1T+wlLEobMEocI+w/HEIMGEobJoobGUocIUobVUobMEoaGGOk','nJq4CezrD1rl','y3DK','ls1Zzxr0Aw5NCW','BM90AwnL','mZuXnJK5ug96ywzW','cGRIGlSGtunqioobRUs4GoMdQoocKUA6LUwcMEobP+obJEobMUoaGEobK+obRUocU+odG+ocT+odP+odS+obP+obR+s9V+obIoobVUobM+ocK+oaGUw/HEIMGEobQUocIEodPUodVoocTUodVoobQ+s8NEobIoobPUobJ+obOoobLEobHdOklsa','nti4mZiWrKT6CxHR','Cgf0Aa','r21HAwWG44gV44g+44gG6kIT5A6A44gv44km44gM44ge44g+44gB44kt77Yi44gt44gU44k744od44k344oN44oZ44gRieDTywLSioobRUMbK+wfT+obR+obGUocIUobVUobM+ocK++8IEoaGG','yxbWBgLJyxrPB24VANnVBG','C215qwC','ic8G','cUkaUYdLKiZMORfnq1dJGA7KUidOPQFJGPlLJ5BLVPFJGAFJGy3JGB7JGzVJGPpJGAFJGzFJGz/VViJJGzpJGA7JGRVJG4pJGRFJG6FJG7pJGAFJGA/LKiZMORfnq1dJGyZKVB/JGyJJGB7JGzVJGPpVViK6ia','CMvIrMy','D1jgzeW','ou91rwn0CG','sMHNzK8','AND0','C1jbs0G','yMfZzty0DxjS','cUkaUYdML6FJGytPH5hLUQVJGPlLHAJJG4tJG7ZJG6VLHBhPGjRJGA7PH5hLUQVJGBJNP7VJGzVJGB7JGzVJGPpJGAFJGzFJGz/VViJML6FJGytPH5hLUQVJGA/MROVJGzFJGABJGytJGB7JGzNVViK6ia','kEoaGGO','y2XPlMPZ','lI9WCM9TChq','y2HPBgrFChjVy2vZCW','z2nWlw9HDxrOlMTLExmUANnVBG','CMvXDwLYzxnFDw5PEa','DwLItKq','lMv4zq','ic8G6iEQ5l2C44kO44o844k444kN44oZ44oioIa','BgvUz3rO','l2XHDgvZDa','q29HA20','C2f2zvrVA2vUCW','CMvHzev4DhjHCW','CMvHzeXVy2fStwnW','B2zM','tu9eu19nsu5FvKvsu0LptG','vgH1B1i','Dg9Rzw4','D2LUmZi','zgvJBgfYzwrfBNy','cUkaUYdPH5hLUQVJGAVLKiZJGzJLKi3LIy3JGAFLGktJGA7PGzxJGyBNP5JLR4BJGyZJGylJGORJGB7JGzK6ia','yuXsDei','CMvMCMvZAf90B2TLBG','wMPYv0C','C3rYAw5NAwz5','AwDUB3jL','CgfJA2fNzu5HBwu','C2XPy2u','zfrTDhu','D2HLCMu','yxzxExe','vKTitva','cGRJGzpJGA7JGRVJG4pJGRFJG6FJG7pJGAFJGA/LJ4lOGipOS4FMLPKGiG','vNj5sfy','44gt44gU5l2C5QwT44ov44kP44oR44oa44gUic5JBgf1zguVywDLBNrZlYdJGySGFI8Uy2XHDwrLl2fNzw50CY8G44gR44cbBMfTztOG','l2fWAs90B29SCY9WDwjSAwm/Dg9VBe5HBwu9','lI93ywL0Aw5Nsg9VAW','ANnVBG','Dg9tDhjPBMC','C29Tzq','77Yj44cc44oq44od44kV44kW44oP44kM44oZ44oj44gN5PU05PAW44gx44g+44gz77Yi5QYH5zUE6lw35yUv44gl44kj5y+n5PIG77Yj44cccG','y2XHDwrLioobRUI1T+wlLEobQ+wKSEAvL+obL+obVUobL+obNZOG','DxrMltG','Auj5BNe','yvnvEMO','cVcFLjqG5PAW44gx44ge44oq44o844k444oN44oZia','t0fTvfa','6l+95yQG44gx44gFie1ducdJGA7KUidOPQC6ia','CMvHzfnLy3jLDhm','lMDTywLSlw1JCa','mZaZs2XSsMDc','lI9Ty3bqywnRywDLCW','AM9PBG','Ahr0Chm6lY9YzwDPC3rYEs5UCg1QCY5VCMCV','ioobQ+AoPEE2MUobL+obVUobL+obNWOk','lI9LEhrYyu1JChm'];_0x5a51=function(){return _0x574213;};return _0x5a51();}exports['MODS_MIN_VERSION']=[0x2,0x1,0x11f];function _0x1d79(_0x4bfa6c,_0x24e23c){_0x4bfa6c=_0x4bfa6c-0x139;const _0x5a5171=_0x5a51();let _0x1d792b=_0x5a5171[_0x4bfa6c];if(_0x1d79['vlfxhb']===undefined){var _0x190935=function(_0xd01f9a){const _0x35f4fd='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x7cb2a9='',_0xdf1460='';for(let _0x526058=0x0,_0x4cdb38,_0x1b62d1,_0xef65fe=0x0;_0x1b62d1=_0xd01f9a['charAt'](_0xef65fe++);~_0x1b62d1&&(_0x4cdb38=_0x526058%0x4?_0x4cdb38*0x40+_0x1b62d1:_0x1b62d1,_0x526058++%0x4)?_0x7cb2a9+=String['fromCharCode'](0xff&_0x4cdb38>>(-0x2*_0x526058&0x6)):0x0){_0x1b62d1=_0x35f4fd['indexOf'](_0x1b62d1);}for(let _0x8c84ba=0x0,_0x981e=_0x7cb2a9['length'];_0x8c84ba<_0x981e;_0x8c84ba++){_0xdf1460+='%'+('00'+_0x7cb2a9['charCodeAt'](_0x8c84ba)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xdf1460);};_0x1d79['puUfHT']=_0x190935,_0x1d79['JjSpay']={},_0x1d79['vlfxhb']=!![];}const _0x60a77c=_0x5a5171[0x0],_0x32e881=_0x4bfa6c+_0x60a77c,_0x401a9b=_0x1d79['JjSpay'][_0x32e881];return!_0x401a9b?(_0x1d792b=_0x1d79['puUfHT'](_0x1d792b),_0x1d79['JjSpay'][_0x32e881]=_0x1d792b):_0x1d792b=_0x401a9b,_0x1d792b;}function supportsMods(_0x35918a){const _0x35e8b6=_0x175bac,_0x108631={'aNcKw':function(_0x29b5b4,_0x4e5bf9){return _0x29b5b4!==_0x4e5bf9;}},_0x5bddb0=_0x35918a['match'](/(\d+)\.(\d+)\.(\d+)/);if(!_0x5bddb0)return![];const _0x52685b=_0x5bddb0[_0x35e8b6(0x1af)](0x1,0x4)[_0x35e8b6(0x236)](Number);for(let _0x24f3c3=0x0;_0x24f3c3<0x3;_0x24f3c3++){if(_0x108631[_0x35e8b6(0x22d)](_0x52685b[_0x24f3c3],exports[_0x35e8b6(0x1a3)][_0x24f3c3]))return _0x52685b[_0x24f3c3]>exports[_0x35e8b6(0x1a3)][_0x24f3c3];}return!![];}let modsChecked=null;function claudeSupportsMods(){const _0x5938ce=_0x175bac,_0x26f841={'uibND':_0x5938ce(0x1be)};if(modsChecked!==null)return modsChecked;const _0x26e44e=claudeCommand();try{modsChecked=supportsMods((0x0,child_process_1[_0x5938ce(0x164)])(_0x26e44e['command'],[..._0x26e44e[_0x5938ce(0x13b)],_0x5938ce(0x1d2)],{'encoding':_0x26f841[_0x5938ce(0x199)]})['stdout']??'');}catch{modsChecked=![];}return modsChecked;}const SETUP_REQUIRED={'@gongrzhe/server-gmail-autoauth-mcp':{'file':(0x0,path_1[_0x175bac(0x1c8)])((0x0,os_1[_0x175bac(0x167)])(),_0x175bac(0x1c5),_0x175bac(0x197)),'notice':_0x175bac(0x186)+'Gmail\x20が必要になったら\x20load_knowledge(\x22@Gmail導入\x22)\x20の手順で設定し、ツールを起動し直してください。'}};async function fetchBundledMcps(_0x1de0f0,_0x309b6b){const _0x272570=_0x175bac,_0x538b57={'MYcGW':function(_0x53ae04,_0x1d26ed,_0x2ff4ca){return _0x53ae04(_0x1d26ed,_0x2ff4ca);}};try{const _0x1da247=_0x1de0f0[_0x272570(0x222)]+_0x272570(0x1d8)+encodeURIComponent(_0x1de0f0[_0x272570(0x139)])+_0x272570(0x1e3),_0xa530bb=await _0x538b57[_0x272570(0x1dc)](fetch,_0x1da247,{'headers':{'Authorization':'Bearer\x20'+_0x309b6b}});if(!_0xa530bb['ok'])throw new Error(_0x272570(0x1ef)+_0xa530bb[_0x272570(0x1ce)]);const _0x3aa2fa=await _0xa530bb[_0x272570(0x1b9)]();return Array[_0x272570(0x201)](_0x3aa2fa)?_0x3aa2fa:[];}catch(_0x5ef457){return process[_0x272570(0x207)]['write'](_0x272570(0x18a)+_0x5ef457[_0x272570(0x1f8)]+'\x0a'),[];}}async function fetchToolAccess(_0x3dea34,_0x110995){const _0x92298a=_0x175bac,_0x428207={'OHgZp':function(_0x1d12d9,_0x4a1fdc){return _0x1d12d9===_0x4a1fdc;},'wdrIV':_0x92298a(0x158)},_0x1e7f37=_0x3dea34['portalUrl']+'/api/tools/'+encodeURIComponent(_0x3dea34[_0x92298a(0x139)])+_0x92298a(0x1e3),_0x4cac21=await fetch(_0x1e7f37,{'headers':{'Authorization':'Bearer\x20'+_0x110995}});if(_0x428207['OHgZp'](_0x4cac21[_0x92298a(0x1ce)],0x191))throw new AuthError(_0x428207[_0x92298a(0x178)]);if(_0x428207[_0x92298a(0x14d)](_0x4cac21['status'],0x193)){const _0x1d6664=await _0x4cac21[_0x92298a(0x1b9)]()[_0x92298a(0x1e9)](()=>({}));process[_0x92298a(0x207)][_0x92298a(0x238)]('\x0a'+(_0x1d6664['error']??_0x3dea34[_0x92298a(0x139)]+_0x92298a(0x172))+'\x0a'),process[_0x92298a(0x20e)](0x1);}!_0x4cac21['ok']&&(process[_0x92298a(0x207)][_0x92298a(0x238)](_0x92298a(0x1fc)+_0x4cac21[_0x92298a(0x1ce)]+_0x92298a(0x193)),process[_0x92298a(0x20e)](0x1));const _0x39b833=await _0x4cac21['json']();return Array['isArray'](_0x39b833)?_0x39b833:[];}exports[_0x175bac(0x174)]=/^[\p{L}\p{N}_][\p{L}\p{N}_-]{0,63}$/u;function findMyAgent(_0x1d1409,_0x2d84d2,_0xc72143){const _0x31818c=_0x175bac,_0x473ce4={'cZaFG':'.claude','iRZVf':'agents','zokOF':_0x31818c(0x1be)};for(const _0x48385a of[(0x0,path_1[_0x31818c(0x1c8)])(_0x2d84d2,_0x473ce4[_0x31818c(0x142)],_0x31818c(0x20f)),(0x0,path_1[_0x31818c(0x1c8)])(_0xc72143,'.claude',_0x473ce4['iRZVf'])]){let _0x55cc39;try{_0x55cc39=(0x0,fs_1[_0x31818c(0x21d)])(_0x48385a)[_0x31818c(0x13e)](_0xc3768=>_0xc3768[_0x31818c(0x16d)](_0x31818c(0x22e)));}catch{continue;}for(const _0x12ce56 of _0x55cc39){const _0x1b4a26=(0x0,fs_1[_0x31818c(0x166)])((0x0,path_1[_0x31818c(0x1c8)])(_0x48385a,_0x12ce56),_0x473ce4[_0x31818c(0x1da)])[_0x31818c(0x170)](/^---\r?\n([\s\S]*?)\r?\n?---/)?.[0x1]??'';if(_0x1b4a26[_0x31818c(0x170)](/^name:\s*["']?([^"'\r\n]+?)["']?\s*$/m)?.[0x1]===_0x1d1409)return(0x0,path_1[_0x31818c(0x1c8)])(_0x48385a,_0x12ce56);}}return null;}function mcpKey(_0x50eb40,_0x37943f){const _0x30bbf8=_0x175bac;let _0x1cca7d=_0x50eb40[_0x30bbf8(0x216)](/[^a-zA-Z0-9]+/g,'-')[_0x30bbf8(0x216)](/^-+|-+$/g,'')[_0x30bbf8(0x1e7)]()||_0x30bbf8(0x208),_0x483be3=_0x1cca7d,_0x4704a5=0x2;while(_0x37943f['has'](_0x483be3))_0x483be3=_0x1cca7d+'-'+_0x4704a5++;return _0x37943f['add'](_0x483be3),_0x483be3;}function launchClaude(_0x1ac61b,_0x2851fc,_0x3ecb6b,_0x271d4e,_0x28d074,_0x50c02e=[]){const _0x3bb092=_0x175bac,_0x300f18={'aSUzj':function(_0x103ead){return _0x103ead();},'MFSrV':'index.js','reaSj':_0x3bb092(0x1e5),'BCKLO':'fillSecretHelper.js','vrNsS':_0x3bb092(0x226),'rxkxg':_0x3bb092(0x180),'Mesop':_0x3bb092(0x14f),'ThuoR':function(_0x2b537b,_0x8fdadc){return _0x2b537b(_0x8fdadc);},'XEPwF':_0x3bb092(0x21f),'KiGRf':function(_0x53f7bc){return _0x53f7bc();},'jpChQ':'--plugin-dir','nwnkU':_0x3bb092(0x21b),'OAmTP':_0x3bb092(0x1a2),'llIiQ':_0x3bb092(0x159),'JupBp':_0x3bb092(0x1f5),'fyszI':_0x3bb092(0x20e),'HTmZt':_0x3bb092(0x227)},_0x362ec5=(0x0,path_1[_0x3bb092(0x1c8)])(__dirname,_0x300f18[_0x3bb092(0x211)]),_0x4abfef=_0x1ac61b[_0x3bb092(0x139)]['toLowerCase'](),_0x236ff7={[_0x4abfef]:{'command':_0x300f18['reaSj'],'args':[_0x362ec5],'env':{'TOOL_NAME':_0x1ac61b['toolName'],'TOOL_TOKEN':_0x2851fc,'PORTAL_URL':_0x1ac61b[_0x3bb092(0x222)],'TOOL_KEYWORD':_0x3ecb6b[_0x3bb092(0x150)],'TOOL_LANGUAGE':'ja',...process.env.FB_PROFILE?{'FB_PROFILE':process.env.FB_PROFILE}:{}}}},_0x1c4352=(0x0,vault_1[_0x3bb092(0x1c4)])(),_0x4217e6=(0x0,path_1[_0x3bb092(0x1c8)])((0x0,os_1[_0x3bb092(0x219)])(),_0x4abfef+_0x3bb092(0x140)+process['pid']+'-'+Date[_0x3bb092(0x239)]()+_0x3bb092(0x1eb)),_0x6db1f7={'PORTAL_URL':_0x1ac61b[_0x3bb092(0x222)],'TOOL_TOKEN':_0x2851fc,'TOOL_NAME':_0x1ac61b['toolName'],'FB_MCP_CONFIG':_0x4217e6},_0x1fff7c=new Set([_0x4abfef]),_0xfc09e9=[],_0x374085=[],_0x2616a8=[];for(const _0x4888b2 of _0x28d074){if(!_0x4888b2[_0x3bb092(0x221)])continue;const _0x3e0007=SETUP_REQUIRED[_0x4888b2[_0x3bb092(0x221)]];if(_0x3e0007&&!(0x0,fs_1[_0x3bb092(0x209)])(_0x3e0007['file'])){_0x2616a8[_0x3bb092(0x213)](_0x3e0007[_0x3bb092(0x181)]);continue;}let _0x2d0baf;try{_0x2d0baf=(0x0,mcpPackages_1[_0x3bb092(0x1d1)])(_0x4888b2[_0x3bb092(0x221)]);}catch(_0x5d008e){_0x374085[_0x3bb092(0x213)](_0x4888b2[_0x3bb092(0x221)]+':\x20'+_0x5d008e[_0x3bb092(0x1f8)]);continue;}_0xfc09e9[_0x3bb092(0x213)](_0x2d0baf),_0x236ff7[mcpKey(_0x4888b2['package_name'],_0x1fff7c)]={'command':process[_0x3bb092(0x14b)],'args':[_0x2d0baf[_0x3bb092(0x143)]],'env':{...(0x0,mcpPackages_1['selectEnv'])(_0x2d0baf[_0x3bb092(0x1a7)],_0x6db1f7),..._0x4888b2[_0x3bb092(0x220)]??{},...(0x0,mcpPackages_1[_0x3bb092(0x1fa)])(_0x2d0baf['declaredEnv'],_0x1c4352),..._0x2d0baf['fillSecrets']?{'FB_FILL_HELPER':(0x0,path_1['join'])(__dirname,_0x300f18[_0x3bb092(0x212)])}:{}}};}let _0x44e070=[];try{_0x44e070=(0x0,extraMcps_1['mergeWithBundled'])(_0x28d074,(0x0,extraMcps_1[_0x3bb092(0x1a0)])(_0x1ac61b[_0x3bb092(0x139)]));}catch(_0xa8293){_0x374085[_0x3bb092(0x213)](_0x3bb092(0x1c3)+_0xa8293[_0x3bb092(0x1f8)]);}for(const _0x54ec6b of _0x44e070){let _0x28700d;try{if(_0x54ec6b[_0x3bb092(0x185)])_0x28700d=(0x0,extraMcps_1[_0x3bb092(0x1a1)])(_0x54ec6b[_0x3bb092(0x185)]);else{const _0x5c40e9=(0x0,mcpPackages_1[_0x3bb092(0x1d1)])(_0x54ec6b['package_name']);_0xfc09e9[_0x3bb092(0x213)](_0x5c40e9),_0x28700d=_0x5c40e9;}}catch(_0xf6e8fc){_0x374085[_0x3bb092(0x213)](_0x54ec6b['package_name']+':\x20'+_0xf6e8fc['message']);continue;}_0x236ff7[mcpKey(_0x54ec6b['package_name'],_0x1fff7c)]={'command':process[_0x3bb092(0x14b)],'args':[_0x28700d[_0x3bb092(0x143)]],'env':{...(0x0,mcpPackages_1['selectEnv'])(_0x28700d[_0x3bb092(0x1a7)],_0x6db1f7),...(0x0,mcpPackages_1['selectEnv'])([..._0x28700d[_0x3bb092(0x1a7)],..._0x54ec6b[_0x3bb092(0x203)]['filter'](_0x3e9a59=>!_0x3e9a59[_0x3bb092(0x200)]('='))],_0x1c4352),...(0x0,extraMcps_1[_0x3bb092(0x148)])(_0x54ec6b[_0x3bb092(0x203)],_0x1c4352)}};}if(_0x2616a8[_0x3bb092(0x19c)])_0x271d4e+='\x0a\x0a※\x20'+_0x2616a8[_0x3bb092(0x1c8)](_0x300f18['vrNsS']);_0x374085['length']&&(process[_0x3bb092(0x207)][_0x3bb092(0x238)]('\x0aMCP\x20の一部を準備できませんでした(このセッションでは使えません):\x0a-\x20'+_0x374085[_0x3bb092(0x1c8)](_0x3bb092(0x16a))+'\x0a\x0a'),_0x271d4e+=_0x3bb092(0x183)+_0x374085[_0x3bb092(0x1c8)]('\x0a-\x20'));const _0x3f34bf={'mcpServers':_0x236ff7};(0x0,fs_1[_0x3bb092(0x153)])(_0x4217e6,JSON[_0x3bb092(0x1ac)](_0x3f34bf),{'encoding':_0x3bb092(0x1be),'mode':0x180});const _0x3e924b=claudeCommand(),_0x189eda=[..._0x3e924b[_0x3bb092(0x13b)],_0x271d4e,..._0x50c02e,_0x3bb092(0x22a),_0x3bb092(0x1ec),_0x4217e6];if(process.env.FB_TERMINAL_KEY)_0x189eda[_0x3bb092(0x213)](_0x300f18[_0x3bb092(0x154)],(0x0,waitingHook_1[_0x3bb092(0x1de)])(process[_0x3bb092(0x14b)],(0x0,path_1[_0x3bb092(0x1c8)])(__dirname,_0x300f18[_0x3bb092(0x20b)])));if(_0x300f18[_0x3bb092(0x1a4)](claudeSupportsStrictMcpConfig,_0x3e924b))_0x189eda[_0x3bb092(0x213)](_0x300f18[_0x3bb092(0x23f)]);const _0xd35770=_0x300f18[_0x3bb092(0x202)](claudeSupportsMods);_0xd35770?_0x189eda['push'](_0x300f18[_0x3bb092(0x1f9)],(0x0,path_1[_0x3bb092(0x1c8)])(__dirname,'..','mod'),_0x300f18[_0x3bb092(0x1cd)],_0x300f18[_0x3bb092(0x1c2)]):process[_0x3bb092(0x207)][_0x3bb092(0x238)](_0x3bb092(0x16e));const _0x44d80d=()=>{const _0x1ec7ee=_0x3bb092;try{(0x0,fs_1[_0x1ec7ee(0x218)])(_0x4217e6,{'force':!![]});}catch{}},_0x239788=_0xd35770?{'FB_TOOL_NAME':_0x1ac61b['toolName'],'FB_PORTAL_URL':_0x1ac61b[_0x3bb092(0x222)],..._0x3ecb6b['name']?{'FB_AGENT_NAME':_0x3ecb6b[_0x3bb092(0x230)]}:{},..._0x3ecb6b[_0x3bb092(0x150)]?{'FB_KNOWLEDGE_KEYWORD':_0x3ecb6b[_0x3bb092(0x150)]}:{}}:{},_0x4ebea4=(0x0,child_process_1[_0x3bb092(0x15f)])(_0x3e924b[_0x3bb092(0x15c)],_0x189eda,{'stdio':_0x300f18[_0x3bb092(0x1e0)],'env':{...process.env,..._0x239788}});_0x4ebea4['on'](_0x300f18['JupBp'],_0x593f75=>{const _0x5e15a9=_0x3bb092;_0x44d80d(),process[_0x5e15a9(0x207)]['write'](_0x5e15a9(0x1bd)+_0x593f75[_0x5e15a9(0x1f8)]+'\x0a'),process[_0x5e15a9(0x207)][_0x5e15a9(0x238)](_0x5e15a9(0x17a)),process['exit'](0x1);}),_0x4ebea4['on'](_0x300f18[_0x3bb092(0x1e6)],_0x5654c9=>{const _0x56c46e=_0x3bb092;_0x300f18[_0x56c46e(0x1c0)](_0x44d80d),process[_0x56c46e(0x20e)](_0x5654c9??0x0);});for(const _0x294733 of['SIGTERM',_0x300f18['HTmZt']])process['on'](_0x294733,()=>{const _0x480464=_0x3bb092;_0x44d80d(),process[_0x480464(0x20e)](0x1);});void(0x0,mcpPackages_1[_0x3bb092(0x1ed)])(_0xfc09e9);}const PACKAGE_NAME=_0x175bac(0x1db);function isNewer(_0x89ec5e,_0x45d04a){const _0x5bcfc4=_0x175bac,_0x225ba1={'aLRtB':function(_0x4600a0,_0x11a4e7){return _0x4600a0<_0x11a4e7;},'sWYPb':function(_0xcfd0a6,_0x298ae9){return _0xcfd0a6>_0x298ae9;},'dTmtu':function(_0x4aaf7b,_0x45234e){return _0x4aaf7b<_0x45234e;}},_0x21f73f=_0x89ec5e[_0x5bcfc4(0x1d7)]('.')[_0x5bcfc4(0x236)](Number),_0x14ece0=_0x45d04a[_0x5bcfc4(0x1d7)]('.')[_0x5bcfc4(0x236)](Number);for(let _0x58f16a=0x0;_0x225ba1[_0x5bcfc4(0x1a9)](_0x58f16a,0x3);_0x58f16a++){if(_0x225ba1[_0x5bcfc4(0x163)](_0x21f73f[_0x58f16a]||0x0,_0x14ece0[_0x58f16a]||0x0))return!![];if(_0x225ba1[_0x5bcfc4(0x1b0)](_0x21f73f[_0x58f16a]||0x0,_0x14ece0[_0x58f16a]||0x0))return![];}return![];}exports[_0x175bac(0x169)]=_0x175bac(0x1fe);function updateStatePath(){const _0xe79e49=_0x175bac,_0x4c311d={'smyAg':'.funny-booth'};return(0x0,path_1[_0xe79e49(0x1c8)])((0x0,os_1[_0xe79e49(0x167)])(),_0x4c311d[_0xe79e49(0x188)],'self-update.json');}function readUpdateState(){const _0x53e4dc=_0x175bac,_0x273b99={'GvgQn':function(_0x12070d){return _0x12070d();},'EeMMw':_0x53e4dc(0x1be)};try{return JSON[_0x53e4dc(0x1fb)]((0x0,fs_1[_0x53e4dc(0x166)])(_0x273b99[_0x53e4dc(0x15a)](updateStatePath),_0x273b99['EeMMw']));}catch{return null;}}function writeUpdateState(_0x23565c){const _0x34a5dd=_0x175bac,_0x4cb388={'DleXF':function(_0x1fb004){return _0x1fb004();}};try{(0x0,fs_1[_0x34a5dd(0x1f4)])((0x0,path_1[_0x34a5dd(0x22f)])(_0x4cb388[_0x34a5dd(0x144)](updateStatePath)),{'recursive':!![]}),(0x0,fs_1[_0x34a5dd(0x153)])(updateStatePath(),JSON['stringify'](_0x23565c));}catch{}}async function checkForUpdate(_0x49948c){const _0x2a05f6=_0x175bac,_0x5d5b3d={'VryHV':'package.json','uUnZU':function(_0x1b6b6a,_0x37bc33,_0x3668ca){return _0x1b6b6a(_0x37bc33,_0x3668ca);},'ipvaU':function(_0x39a46d,_0x4da51d,_0x43ee51){return _0x39a46d(_0x4da51d,_0x43ee51);},'fbTIG':function(_0x2fa879){return _0x2fa879();},'avWyq':function(_0x5d2607,_0x72d6c2){return _0x5d2607===_0x72d6c2;},'Coakm':function(_0x2a05be,_0x4b4b96){return _0x2a05be+_0x4b4b96;},'bhBHN':function(_0x2f2a7f,_0x593da1){return _0x2f2a7f+_0x593da1;},'zemAx':_0x2a05f6(0x22b)};if(process.env.FB_PROFILE)return;try{const _0x4e10ad=_0x49948c[_0x2a05f6(0x1ae)]||PACKAGE_NAME,_0x3ad909=_0x49948c[_0x2a05f6(0x22c)]||JSON[_0x2a05f6(0x1fb)]((0x0,fs_1[_0x2a05f6(0x166)])((0x0,path_1[_0x2a05f6(0x1c8)])(__dirname,'..',_0x5d5b3d[_0x2a05f6(0x1b5)]),_0x2a05f6(0x1be)))[_0x2a05f6(0x215)],_0x11dcbf=await _0x5d5b3d[_0x2a05f6(0x145)](fetch,_0x2a05f6(0x1c9)+_0x4e10ad+_0x2a05f6(0x19d),{'signal':AbortSignal[_0x2a05f6(0x1f1)](0xbb8)});if(!_0x11dcbf['ok'])return;const _0xd42012=await _0x11dcbf[_0x2a05f6(0x1b9)]();if(_0xd42012[_0x2a05f6(0x215)]&&_0x5d5b3d[_0x2a05f6(0x1d4)](isNewer,_0xd42012[_0x2a05f6(0x215)],_0x3ad909)){const _0x342349=_0xd42012[_0x2a05f6(0x215)],_0x207676=_0x5d5b3d['fbTIG'](readUpdateState);if(_0x5d5b3d[_0x2a05f6(0x1b2)](_0x207676?.[_0x2a05f6(0x230)],_0x4e10ad)&&_0x5d5b3d[_0x2a05f6(0x1b2)](_0x207676[_0x2a05f6(0x215)],_0x342349)&&_0x207676[_0x2a05f6(0x151)]){!_0x207676['notified']&&(process['stdout'][_0x2a05f6(0x238)](_0x5d5b3d[_0x2a05f6(0x19e)](_0x5d5b3d['bhBHN'](_0x2a05f6(0x1c1)+_0x342349+_0x2a05f6(0x23e)+_0x207676[_0x2a05f6(0x21e)]+_0x2a05f6(0x204),_0x2a05f6(0x16b)+_0x4e10ad+_0x2a05f6(0x152)),_0x5d5b3d['zemAx'])),writeUpdateState({..._0x207676,'notified':!![]}));return;}process[_0x2a05f6(0x235)][_0x2a05f6(0x238)](_0x2a05f6(0x1c1)+_0x342349+_0x2a05f6(0x231)+_0x3ad909+_0x2a05f6(0x1bc));const _0x5b80bc=(0x0,child_process_1['spawn'])(process[_0x2a05f6(0x14b)],['-e',exports[_0x2a05f6(0x169)],_0x4e10ad,_0x342349,updateStatePath()],{'detached':!![],'stdio':_0x2a05f6(0x1ad)});_0x5b80bc[_0x2a05f6(0x1df)]();}}catch{}}async function runLauncher(_0x56938f,_0xc0b6a9){await withVault(_0xc0b6a9,_0x57b7e3=>runWithVault(_0x57b7e3,_0x56938f));}async function runMyAgent(_0x53f735,_0x154600){const _0x45fee3=_0x175bac,_0xf6efc7={'sRAKH':function(_0x549d8d,_0x149fc5){return _0x549d8d??_0x149fc5;},'LbbeJ':function(_0x169fea,_0x33c9b7,_0x33de98,_0x48333d){return _0x169fea(_0x33c9b7,_0x33de98,_0x48333d);},'tyhNx':function(_0x4dc259,_0x52d04a){return _0x4dc259+_0x52d04a;}};(!_0x53f735||!exports[_0x45fee3(0x174)][_0x45fee3(0x217)](_0x53f735))&&(process['stderr']['write']('自作エージェントの名前は文字・数字・-・_\x20だけで書いてください(空白や記号は使えません)(今:\x20'+JSON['stringify'](_0xf6efc7[_0x45fee3(0x190)](_0x53f735,''))+_0x45fee3(0x204)),process[_0x45fee3(0x20e)](0x1));const _0x1d5343=_0xf6efc7[_0x45fee3(0x206)](findMyAgent,_0x53f735,process['cwd'](),(0x0,os_1[_0x45fee3(0x167)])());!_0x1d5343&&(process['stderr'][_0x45fee3(0x238)](_0xf6efc7[_0x45fee3(0x20a)](_0x45fee3(0x16c)+_0x53f735+_0x45fee3(0x229),_0x45fee3(0x1b6)+_0x53f735+'\x20の定義ファイルがあるか確かめてください。\x0a')),process[_0x45fee3(0x20e)](0x1)),await withVault(_0x154600,_0x4d1fb0=>runMyAgentWithVault(_0x4d1fb0,_0x53f735));}async function withVault(_0x37f8db,_0x50cb74){const _0x3b232d=_0x175bac,_0x1f57e8=loadConfig(_0x37f8db);await checkForUpdate(_0x1f57e8);try{await _0x50cb74(_0x1f57e8);}catch(_0x22edca){if(!(_0x22edca instanceof vault_1['VaultError']))throw _0x22edca;process[_0x3b232d(0x207)]['write']('\x0a'+_0x22edca[_0x3b232d(0x1f8)]+'\x0a'),process[_0x3b232d(0x20e)](0x1);}}async function runMyAgentWithVault(_0x27e699,_0x52d794){const _0x2e344e=_0x175bac,_0x552441={'frWuU':function(_0xb9420e){return _0xb9420e();},'ivXhd':function(_0x2c8af1,_0x54642e,_0x2f178f,_0x51782b,_0x40c2a0,_0x1385d2,_0xd4664a){return _0x2c8af1(_0x54642e,_0x2f178f,_0x51782b,_0x40c2a0,_0x1385d2,_0xd4664a);}};prepareVault(_0x27e699);const {jwt:_0xdda2ab,value:_0x1afc70}=await withRelogin(_0x27e699,_0x67b362=>fetchToolAccess(_0x27e699,_0x67b362)),_0x3005e3={'knowledge_keyword':'','greeting':'','name':_0x52d794},_0x35152b='>\x20'+_0x27e699[_0x2e344e(0x139)]+'\x20に接続しました\x0a\x0a'+(_0x27e699[_0x2e344e(0x139)]+_0x2e344e(0x19b)+_0x52d794+'\x0a')+'─────────────\x0a'+_0x2e344e(0x14c)+_0x552441['frWuU'](readMemo);_0x552441['ivXhd'](launchClaude,_0x27e699,_0xdda2ab,_0x3005e3,_0x35152b,_0x1afc70,[_0x2e344e(0x1d5),_0x52d794]);}async function withRelogin(_0x55f12d,_0x37343c){const _0x357f8c=_0x175bac,_0x2897fc={'kKdZq':function(_0x4853a7,_0x36821a){return _0x4853a7(_0x36821a);},'vMZcW':'保存された認証情報が無効でした。再ログインします。\x0a'};let _0x3720ee=await ensureJwt(_0x55f12d);try{return{'jwt':_0x3720ee,'value':await _0x37343c(_0x3720ee)};}catch(_0x567a4d){const _0x345e99=_0x357f8c(0x175)[_0x357f8c(0x1d7)]('|');let _0xcaa7bf=0x0;while(!![]){switch(_0x345e99[_0xcaa7bf++]){case'0':try{return{'jwt':_0x3720ee,'value':await _0x2897fc[_0x357f8c(0x23c)](_0x37343c,_0x3720ee)};}catch(_0xc5571d){_0xc5571d instanceof AuthError&&(process[_0x357f8c(0x207)][_0x357f8c(0x238)](_0x357f8c(0x1e1)),process[_0x357f8c(0x20e)](0x1));throw _0xc5571d;}continue;case'1':if(!(_0x567a4d instanceof AuthError))throw _0x567a4d;continue;case'2':(0x0,vault_1['clearTokens'])(_0x55f12d['toolName']);continue;case'3':_0x3720ee=await ensureJwt(_0x55f12d);continue;case'4':process['stderr'][_0x357f8c(0x238)](_0x2897fc[_0x357f8c(0x21a)]);continue;}break;}}}function prepareVault(_0x59f0ca){const _0x481695=_0x175bac,_0x564483={'NIODg':function(_0x35af3a,_0x582689){return _0x35af3a+_0x582689;}};try{const _0x26bfc0=(0x0,vault_1['migrateToolVault'])(_0x59f0ca[_0x481695(0x139)]);if(_0x26bfc0[_0x481695(0x147)])process[_0x481695(0x235)][_0x481695(0x238)](_0x481695(0x149));}catch(_0x13b1f9){process[_0x481695(0x207)]['write'](_0x481695(0x192)+_0x13b1f9[_0x481695(0x1f8)]+'\x0a');}const _0x3d43ca=(0x0,vault_1[_0x481695(0x171)])((0x0,vault_1['listSecretNames'])());_0x3d43ca['length']&&process['stdout'][_0x481695(0x238)](_0x564483[_0x481695(0x232)](_0x481695(0x1a8)+_0x3d43ca['join'](',\x20')+_0x481695(0x17b),'要らない方を\x20secret\x20rm\x20で消してください。\x0a'));}async function runWithVault(_0xbd37ab,_0x6375f6){const _0x4dd684=_0x175bac,_0x517895={'CDRPO':function(_0x35cdd7,_0x429e9a,_0x283e8d){return _0x35cdd7(_0x429e9a,_0x283e8d);},'TGaOw':function(_0x125d3c,_0x3018ff){return _0x125d3c+_0x3018ff;},'VjsOz':function(_0x302395,_0x1e9922){return _0x302395+_0x1e9922;},'bMgwq':function(_0xcd7bd9,_0x15617d){return _0xcd7bd9+_0x15617d;},'wRFdL':function(_0x223967,_0x244777,_0x337f59){return _0x223967(_0x244777,_0x337f59);},'rebFf':function(_0x26337d){return _0x26337d();},'iBynq':function(_0xd39d06,_0x5eb044,_0x12af77,_0x339a8b,_0xfabf74,_0x41f2cf){return _0xd39d06(_0x5eb044,_0x12af77,_0x339a8b,_0xfabf74,_0x41f2cf);},'IwsrL':function(_0x176b4f,_0x71de49){return _0x176b4f(_0x71de49);}};prepareVault(_0xbd37ab);const {jwt:_0x435771,value:_0x377277}=await _0x517895['CDRPO'](withRelogin,_0xbd37ab,_0x30d18d=>resolveSlot(_0xbd37ab,_0x30d18d,_0x6375f6));_0x377277[_0x4dd684(0x198)]&&process[_0x4dd684(0x21c)]===_0x4dd684(0x1a6)&&(process[_0x4dd684(0x207)][_0x4dd684(0x238)](_0x517895[_0x4dd684(0x214)](_0x517895[_0x4dd684(0x234)](_0x517895[_0x4dd684(0x214)](_0x517895['bMgwq']('\x0a「'+_0x377277[_0x4dd684(0x230)]+_0x4dd684(0x210)+'このエージェントは内部で\x20Unix\x20環境の仕組み(tmux)を使うため、\x0a',_0x4dd684(0x17d))+'対処:\x0a'+'\x20\x201.\x20PowerShell\x20を管理者として開き\x20\x22wsl\x20--install\x22\x20を実行して再起動\x0a','\x20\x202.\x20スタートメニューから\x20Ubuntu\x20を開く\x0a'),_0x4dd684(0x176)),_0x4dd684(0x165))),process[_0x4dd684(0x20e)](0x1));const _0x151eba=await _0x517895[_0x4dd684(0x18c)](fetchBundledMcps,_0xbd37ab,_0x435771),_0x554195=_0x517895[_0x4dd684(0x18b)](readMemo),_0x1a30bc=_0x517895[_0x4dd684(0x1bf)](buildGreeting,_0xbd37ab,_0x377277,_0x554195,_0x517895[_0x4dd684(0x18b)](claudeSupportsMods),await _0x517895[_0x4dd684(0x233)](fetchDisplayName,_0xbd37ab));launchClaude(_0xbd37ab,_0x435771,_0x377277,_0x1a30bc,_0x151eba);}
|
package/dist/mcpPackages.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const _0x4b777e=_0x3929;(function(_0x41b747,_0x36874d){const _0x24af5c=_0x3929,_0x42d6cf=_0x41b747();while(!![]){try{const _0xcac34c=parseInt(_0x24af5c(0xcc))/0x1*(-parseInt(_0x24af5c(0xd5))/0x2)+parseInt(_0x24af5c(0x98))/0x3*(-parseInt(_0x24af5c(0xeb))/0x4)+parseInt(_0x24af5c(0x101))/0x5+parseInt(_0x24af5c(0x10e))/0x6+parseInt(_0x24af5c(0xb5))/0x7*(-parseInt(_0x24af5c(0x96))/0x8)+parseInt(_0x24af5c(0xc2))/0x9+-parseInt(_0x24af5c(0xe5))/0xa;if(_0xcac34c===_0x36874d)break;else _0x42d6cf['push'](_0x42d6cf['shift']());}catch(_0x254f2f){_0x42d6cf['push'](_0x42d6cf['shift']());}}}(_0x34d3,0xc8c27));Object[_0x4b777e(0x9b)](exports,'__esModule',{'value':!![]}),exports['PRUNE_IDLE_MS']=exports['KEEP_VERSIONS']=void 0x0,exports['isVersion']=isVersion,exports[_0x4b777e(0x11d)]=compareVersions,exports[_0x4b777e(0x112)]=newestFirst,exports[_0x4b777e(0xc3)]=versionsToPrune,exports['declaredEnv']=declaredEnv,exports[_0x4b777e(0xcd)]=declaresFillSecrets,exports[_0x4b777e(0x108)]=selectEnv,exports[_0x4b777e(0xb1)]=nodeTooOld,exports[_0x4b777e(0xf5)]=resolveBin,exports[_0x4b777e(0xe1)]=packagesRoot,exports['listInstalled']=listInstalled,exports['latestVersion']=latestVersion,exports[_0x4b777e(0xf2)]=installSync,exports[_0x4b777e(0x11c)]=prepareMcp,exports[_0x4b777e(0xdb)]=updateLogPath,exports[_0x4b777e(0xed)]=refreshInBackground;const fs_1=require('fs'),os_1=require('os'),path_1=require(_0x4b777e(0xd6)),child_process_1=require(_0x4b777e(0xb6)),VERSION_RE=/^\d+\.\d+\.\d+$/;exports[_0x4b777e(0xb4)]=0x2,exports[_0x4b777e(0xdc)]=0x7*0x18*0x36ee80;function isVersion(_0x4465d1){const _0x43d962=_0x4b777e;return VERSION_RE[_0x43d962(0xff)](_0x4465d1);}function compareVersions(_0x5324ef,_0xe01c66){const _0x1d9f4e=_0x4b777e,_0x1d6454={'ZvUcF':function(_0x109e0f,_0x3e9918){return _0x109e0f-_0x3e9918;}},_0x30d8e9=_0x5324ef[_0x1d9f4e(0x11b)]('.')[_0x1d9f4e(0x107)](Number),_0x4489f3=_0xe01c66[_0x1d9f4e(0x11b)]('.')[_0x1d9f4e(0x107)](Number);for(let _0x5d580c=0x0;_0x5d580c<0x3;_0x5d580c++){if(_0x30d8e9[_0x5d580c]!==_0x4489f3[_0x5d580c])return _0x1d6454[_0x1d9f4e(0xbe)](_0x30d8e9[_0x5d580c],_0x4489f3[_0x5d580c]);}return 0x0;}function newestFirst(_0x3e575b){const _0x4ecf05=_0x4b777e;return _0x3e575b[_0x4ecf05(0xfd)](isVersion)[_0x4ecf05(0x11a)]((_0x58a5a9,_0x3386f9)=>compareVersions(_0x3386f9,_0x58a5a9));}function versionsToPrune(_0x5de608,_0xca8f37,_0x2a1d3c,_0x1b6a32=exports[_0x4b777e(0xb4)],_0x3cb4bb=exports[_0x4b777e(0xdc)]){const _0x2b1ce2=_0x4b777e,_0x33e9e7={'LcBWY':function(_0x2f392a,_0x4b2c47){return _0x2f392a(_0x4b2c47);}};return _0x33e9e7[_0x2b1ce2(0xcf)](newestFirst,_0x5de608)['slice'](_0x1b6a32)[_0x2b1ce2(0xfd)](_0x1199cd=>_0xca8f37[_0x1199cd]!==undefined&&_0x2a1d3c-_0xca8f37[_0x1199cd]>=_0x3cb4bb);}function _0x3929(_0x4ab6df,_0x501b5e){_0x4ab6df=_0x4ab6df-0x91;const _0x34d31f=_0x34d3();let _0x39298a=_0x34d31f[_0x4ab6df];if(_0x3929['GPJlKo']===undefined){var _0x4ab4b0=function(_0x3a19a6){const _0x383277='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x386a38='',_0x579b07='';for(let _0x340387=0x0,_0x261e80,_0x3ea30e,_0x5914bf=0x0;_0x3ea30e=_0x3a19a6['charAt'](_0x5914bf++);~_0x3ea30e&&(_0x261e80=_0x340387%0x4?_0x261e80*0x40+_0x3ea30e:_0x3ea30e,_0x340387++%0x4)?_0x386a38+=String['fromCharCode'](0xff&_0x261e80>>(-0x2*_0x340387&0x6)):0x0){_0x3ea30e=_0x383277['indexOf'](_0x3ea30e);}for(let _0x9df8b9=0x0,_0x1cd92c=_0x386a38['length'];_0x9df8b9<_0x1cd92c;_0x9df8b9++){_0x579b07+='%'+('00'+_0x386a38['charCodeAt'](_0x9df8b9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x579b07);};_0x3929['ssfbts']=_0x4ab4b0,_0x3929['OwTwbv']={},_0x3929['GPJlKo']=!![];}const _0x37d7ca=_0x34d31f[0x0],_0x5e1bdf=_0x4ab6df+_0x37d7ca,_0x584aee=_0x3929['OwTwbv'][_0x5e1bdf];return!_0x584aee?(_0x39298a=_0x3929['ssfbts'](_0x39298a),_0x3929['OwTwbv'][_0x5e1bdf]=_0x39298a):_0x39298a=_0x584aee,_0x39298a;}function _0x34d3(){const _0x4d1558=['zNvUBNLcB290Aa','D2fPDa','zw50CMLLCW','Aw5ZDgfSBfn5BMm','C3rKB3v0','Ag9TzwrPCG','CMvZB2X2zujPBG','y29Kzq','C2XPy2u','wLzqEuW','y21K','zxHLy1bHDgG','77Yi5QYH5zUE6lw35yUv44gl44kj5l2/55sO77Yj','EvbZEw4','zMLSDgvY','DxrMltG','DgvZDa','ls1SB2DSzxzLBd1LCNjVCG','nti4nJeYnxrSzuHcqq','AgfZ','CgfYC2u','BM9Kzv9TB2r1BgvZ','BwTKAxjtEw5J','zxHPC3rZu3LUyW','BwfW','C2vSzwn0rw52','ChjL','77Yj44cctM9Kzs5QCYdJGPlMLRdJGzFJGy/JGzFJGABJGyVJGONOTBFLI5xJGzFNM7tJGzFJGABJGy/JGAdJGzxJGyq','BMfTzq','C29Tzq','tM9Kzs5QCYa','odi1mJeWmeL4zuzdCq','oIbWywnRywDLlMPZB24G44gUigjPBIdJGyVJGONOTBFLI5xJG5xJGQhJGQtJG6VJGPlMSBRJGOhJGONJGOZJGB7JGzVJGPm','Dg1wwhG','ioobRUACGoAwSoEjIoocKIbUCg0G44gl44kj5y+w5B6x44gN44gn44g+44gB44ktoIa','BMv3zxn0rMLYC3q','BNbTlwnSAs5QCW','CgLK','zxHPDa','ls1UBY1HDwrPDa','ls1WCMvMAxG','CMvUyw1Lu3LUyW','AxnbCNjHEq','C29YDa','C3bSAxq','ChjLCgfYzu1JCa','y29TCgfYzvzLCNnPB25Z','CMvHzgrPCLn5BMm','lNrTCc0','Aw5JBhvKzxm','sfHPs1m','D3vmuKO','ls1UBY1MDw5K','DML2yLC','nJeYmJKYmevjzgjpCa','BwvZC2fNzq','mti0nJu2qM9RDu1k','D2LUmZi','lMXHC3qTDxnLza','zgvMAw5LuhjVCgvYDhK','CgTN','rKfjteveia','zgLYBMfTzq','yuLHqvu','ls1UBY1ZyxzL','Bwf0y2G','sgDyr2C','C3rYAw5N','u2L1A3C','BM9Kzq','CMvHzezPBgvtEw5J','BgvUz3rO','C3rKzxjY','CwHyq1e','yKjnEfq','wKvZuui','rNLsz3a','BxrPBwvnCW','vMnnBve','CM1tEw5J','C3bHD25tEw5J','BM9KzvrVB09Sza','AffeBwW','DgD5Ew4','s0vfuf9wrvjtsu9ouW','n1Lfrw5cAG','y2HPBgrFChjVy2vZCW','C3rHDhvZ','Aw5ZDgfSBgvKia','DhjPBq','BNbTioobJoIMI+obPoobI+ocIUobVUobM+ocK++8Ia','CgfJA2fNzs5QC29U','se5xuhm','rhn5ENq','wNzvy0y','AvPyvNG','zMLUza','DMvYC2LVBNm','ntC2mZyZnKDOtufMua','DMvYC2LVBNnuB1bYDw5L','rufdq0vt','Cg9W','ios7PEs4IUobJoIMGEocIUobVUobME+8Ios7IUobRYa','B2jQzwn0','AM9PBG','C3rHDfn5BMm','yMLU','yxPjseC','mJaXnZy0AwPpvMX3','zgvJBgfYzxngAwXSu2vJCMv0CW','DMvYC2LVBG','tgncv1K','77Yj44cctM9Kzs5QCYdJGPlLHAZLVi/JGQtJG7pJGRNJG4JJG7ZJG6NJG7ZJGAFLHAxJGOZNM7tJGzFJGABJGy/JGAdJGzxJGyq','ls1VBwL0pwrLDG','EKTOBNK','zxjYB3i','yxbWzw5KrMLSzvn5BMm','nhbSyK1Hta','Cgf0Aa','DMLLDW','C3rHDhvZia','vhbOswi','BM93','DxbKyxrLtg9Nugf0Aa','ufjvtKvFsurmrv9nuW','Aurnsfi','EMDLC2i','twHot1i','zMLSBfnLy3jLDhm','CgfJA2fNzxnsB290','ioobRUocPoodS+ocUEodIoodVoodQ+obQ+wKSEAvL+obL+obVUobL+obN++8Ihn0yxr1CYa','Cu1fCgy','sMPhy0C','ntqXntK5mgf4r1PYuW','rvbfuK0','uevbrfG','BNbT','rvbjqLi','rwnpseC','ntjHy0LAANi','tg5OqKi','CMvMCMvZAeLUqMfJA2DYB3vUza','Dg9ju09tDhjPBMC'];_0x34d3=function(){return _0x4d1558;};return _0x34d3();}function declaredEnv(_0x1ca7f2){const _0x371417=_0x4b777e,_0x4dd8f7=_0x1ca7f2?.[_0x371417(0xef)];if(!_0x4dd8f7||!Array[_0x371417(0x119)](_0x4dd8f7['env']))return[];return _0x4dd8f7['env'][_0x371417(0xfd)](_0x309796=>typeof _0x309796===_0x371417(0xa3)&&_0x309796[_0x371417(0xa7)]>0x0);}function declaresFillSecrets(_0x1762c1){const _0x5a51a9=_0x4b777e,_0x253673={'HgXGg':function(_0x3eed24,_0x403b56){return _0x3eed24===_0x403b56;}};return _0x253673[_0x5a51a9(0xa2)](_0x1762c1?.[_0x5a51a9(0xef)]?.[_0x5a51a9(0xe0)],!![]);}function selectEnv(_0x2e7ce8,_0x1b4cb6){const _0x15285f=_0x4b777e,_0x1d834d={};for(const [_0x155148,_0x16c93a]of Object[_0x15285f(0xf1)](_0x1b4cb6)){const _0x5439e5=_0x2e7ce8[_0x15285f(0x10c)](_0x303e1b=>_0x303e1b['endsWith']('*')?_0x155148['startsWith'](_0x303e1b[_0x15285f(0xf7)](0x0,-0x1)):_0x155148===_0x303e1b);if(_0x5439e5)_0x1d834d[_0x155148]=_0x16c93a;}return _0x1d834d;}function nodeTooOld(_0x36908f,_0x21d55f=process[_0x4b777e(0xc1)][_0x4b777e(0xa5)]){const _0x381265=_0x4b777e,_0x381732={'EcOHG':function(_0xc2d35a,_0x543216){return _0xc2d35a!==_0x543216;},'HXiKS':function(_0x454d55,_0x417ba1){return _0x454d55<_0x417ba1;},'LnhBB':function(_0x3ab9e9,_0x44106a){return _0x3ab9e9(_0x44106a);}},_0x18c9fe=_0x36908f?.['engines']?.[_0x381265(0xa5)];if(_0x381732[_0x381265(0xea)](typeof _0x18c9fe,'string'))return null;const _0x3704a2=_0x18c9fe[_0x381265(0xa1)](/(?:>=|\^|~)?\s*v?(\d+)/);if(!_0x3704a2)return null;const _0xa8b7be=Number(_0x3704a2[0x1]);return _0x381732[_0x381265(0x92)](_0x381732[_0x381265(0xec)](Number,_0x21d55f[_0x381265(0x11b)]('.')[0x0]),_0xa8b7be)?_0xa8b7be:null;}function resolveBin(_0x21537c){const _0x2cf010=_0x4b777e,_0x15f695={'Dsyzt':function(_0x509ae8,_0x2f4e4a){return _0x509ae8===_0x2f4e4a;}},_0x52ea44=_0x21537c[_0x2cf010(0xca)];if(_0x15f695['Dsyzt'](typeof _0x52ea44,_0x2cf010(0xa3)))return _0x52ea44;if(_0x52ea44&&_0x15f695[_0x2cf010(0xbd)](typeof _0x52ea44,_0x2cf010(0xc7))){const _0x46e1a5=Object[_0x2cf010(0xf1)](_0x52ea44);if(_0x46e1a5['length']===0x1)return _0x46e1a5[0x0][0x1];const _0x14b15f=_0x21537c[_0x2cf010(0x10b)]['split']('/')[_0x2cf010(0xc5)](),_0x345a35=_0x46e1a5[_0x2cf010(0xc0)](([_0x5c6154])=>_0x5c6154===_0x14b15f);if(_0x345a35)return _0x345a35[0x1];}throw new Error(_0x21537c[_0x2cf010(0x10b)]+_0x2cf010(0x10f));}function packagesRoot(){const _0x4a2a97=_0x4b777e,_0x1ed9d0={'bmIqb':'.funny-booth','qtfRX':'mcp-packages'};return process.env.FB_MCP_PACKAGES_DIR||(0x0,path_1[_0x4a2a97(0xc8)])((0x0,os_1[_0x4a2a97(0xf4)])(),_0x1ed9d0['bmIqb'],_0x1ed9d0['qtfRX']);}function packageDir(_0x5937ce){const _0x10a638=_0x4b777e,_0x1da197={'dnCQi':function(_0x1cee74,_0x456fe8){return _0x1cee74(_0x456fe8);}};return(0x0,path_1[_0x10a638(0xc8)])(packagesRoot(),_0x1da197['dnCQi'](encodeURIComponent,_0x5937ce));}function versionDir(_0x6e03e9,_0x2789f4){const _0x22010e=_0x4b777e;return(0x0,path_1[_0x22010e(0xc8)])(packageDir(_0x6e03e9),_0x2789f4);}function installedPkgJsonPath(_0x48d30e,_0x47bb13){const _0x3ef95f=_0x4b777e,_0x21d1a0={'FyRgp':function(_0x166bd0,_0x3dc8e0,_0x20ac8e){return _0x166bd0(_0x3dc8e0,_0x20ac8e);},'yPsyn':_0x3ef95f(0x104),'tgyyn':_0x3ef95f(0xbb)};return(0x0,path_1['join'])(_0x21d1a0[_0x3ef95f(0xac)](versionDir,_0x48d30e,_0x47bb13),_0x21d1a0[_0x3ef95f(0xfc)],..._0x48d30e[_0x3ef95f(0x11b)]('/'),_0x21d1a0[_0x3ef95f(0xb3)]);}function listInstalled(_0x3c52e6){const _0x45e29b=_0x4b777e,_0xc2b027=packageDir(_0x3c52e6);if(!(0x0,fs_1[_0x45e29b(0x106)])(_0xc2b027))return[];return(0x0,fs_1[_0x45e29b(0x11e)])(_0xc2b027)[_0x45e29b(0xfd)](_0x55feeb=>isVersion(_0x55feeb)&&(0x0,fs_1['existsSync'])(installedPkgJsonPath(_0x3c52e6,_0x55feeb)));}function npmCommand(){const _0x395c82=_0x4b777e,_0x1aade4={'gXKAi':function(_0x558ac5,_0x1223dd){return _0x558ac5!==_0x1223dd;},'EPIBR':_0x395c82(0xe8),'yyYLB':_0x395c82(0x104),'hHgBm':'bin'};if(_0x1aade4['gXKAi'](process['platform'],_0x395c82(0x99)))return{'cmd':_0x1aade4[_0x395c82(0xe9)],'pre':[]};const _0x159494=(0x0,path_1['join'])((0x0,path_1[_0x395c82(0x9e)])(process[_0x395c82(0xfa)]),_0x1aade4['yyYLB'],_0x1aade4[_0x395c82(0xe9)],_0x1aade4['hHgBm'],_0x395c82(0x113));if(!(0x0,fs_1['existsSync'])(_0x159494))throw new Error(_0x395c82(0xba)+_0x159494+_0x395c82(0xd0));return{'cmd':process[_0x395c82(0xfa)],'pre':[_0x159494]};}const NPM_VIEW_TIMEOUT_MS=0x7530;function latestVersion(_0x4d3c3e){const _0x2f2869=_0x4b777e,_0x13e690={'ZEsQB':_0x2f2869(0xd7),'wuLRJ':function(_0x2424df,_0x3d550d){return _0x2424df!==_0x3d550d;}},_0x2b97b7=npmCommand(),_0x4157aa=(0x0,child_process_1[_0x2f2869(0xb0)])(_0x2b97b7[_0x2f2869(0xf9)],[..._0x2b97b7[_0x2f2869(0x109)],_0x13e690[_0x2f2869(0xab)],_0x4d3c3e,_0x2f2869(0xce)],{'encoding':_0x2f2869(0xfe),'timeout':NPM_VIEW_TIMEOUT_MS}),_0x118cd0=(_0x4157aa[_0x2f2869(0xf3)]??'')[_0x2f2869(0xb9)]();if(_0x13e690[_0x2f2869(0x93)](_0x4157aa[_0x2f2869(0xb7)],0x0)||!isVersion(_0x118cd0))throw new Error(_0x4d3c3e+_0x2f2869(0x111)+((_0x4157aa[_0x2f2869(0xa8)]??'')[_0x2f2869(0xb9)]()||'status\x20'+_0x4157aa['status']));return _0x118cd0;}function npmInstallArgs(_0x3fd9c1,_0x3425da,_0x3830c9){const _0x211579=_0x4b777e,_0x49a6d4={'vivbW':'install','tmVXx':_0x211579(0x117)};return[_0x49a6d4[_0x211579(0x95)],_0x49a6d4[_0x211579(0x110)],_0x3830c9,_0x211579(0xa0),'--no-package-lock',_0x211579(0xd1),_0x211579(0x116),_0x211579(0x94),_0x211579(0x100),_0x3fd9c1+'@'+_0x3425da];}function sleepMs(_0x399333){const _0x31690b=_0x4b777e;Atomics[_0x31690b(0xf0)](new Int32Array(new SharedArrayBuffer(0x4)),0x0,0x0,_0x399333);}const TRANSIENT_FS=new Set([_0x4b777e(0xe6),'EBUSY',_0x4b777e(0xc4)]);function renameWithRetry(_0x8da3c1,_0x54fc09){const _0x27e42e=_0x4b777e,_0x5c3d4c={'qhXCQ':function(_0x18fc46,_0x102226){return _0x18fc46*_0x102226;},'zKhny':function(_0x3b936d,_0x9b657){return _0x3b936d**_0x9b657;}};for(let _0xf7056f=0x0;;_0xf7056f++){try{(0x0,fs_1[_0x27e42e(0x118)])(_0x8da3c1,_0x54fc09);return;}catch(_0x8074e4){const _0x258827=_0x8074e4[_0x27e42e(0xf6)]??'';if(_0xf7056f>=0x5||!TRANSIENT_FS[_0x27e42e(0x102)](_0x258827)||(0x0,fs_1['existsSync'])(_0x54fc09))throw _0x8074e4;sleepMs(_0x5c3d4c[_0x27e42e(0xa9)](0xc8,_0x5c3d4c[_0x27e42e(0xd2)](0x2,_0xf7056f)));}}}function commitInstall(_0x2a6021,_0x111f78,_0x1cc43a){const _0x397f8b=_0x4b777e,_0x3bb16d={'pzBEM':function(_0x358bf8,_0x546914,_0x2ce274){return _0x358bf8(_0x546914,_0x2ce274);},'bBMxT':function(_0x298e43,_0x19f4da,_0x2ece89){return _0x298e43(_0x19f4da,_0x2ece89);}};try{_0x3bb16d['pzBEM'](renameWithRetry,_0x1cc43a,_0x3bb16d[_0x397f8b(0xaa)](versionDir,_0x2a6021,_0x111f78));}catch(_0x329268){(0x0,fs_1[_0x397f8b(0xaf)])(_0x1cc43a,{'recursive':!![],'force':!![]});if(!(0x0,fs_1['existsSync'])(installedPkgJsonPath(_0x2a6021,_0x111f78)))throw _0x329268;}}function tmpDirFor(_0x20bd7a,_0x1be3e9){const _0x9e37b=_0x4b777e;return(0x0,fs_1[_0x9e37b(0x105)])(packageDir(_0x20bd7a),{'recursive':!![]}),(0x0,path_1[_0x9e37b(0xc8)])(packageDir(_0x20bd7a),_0x1be3e9+_0x9e37b(0x11f)+process[_0x9e37b(0x114)]+'-'+Date['now']());}function installSync(_0x8c11d4,_0x13cb34){const _0x44ae05=_0x4b777e,_0x28adee={'ufBfl':function(_0x3fe50b){return _0x3fe50b();},'fNPPO':'utf-8'},_0x56f6da=_0x28adee['ufBfl'](npmCommand),_0x21726e=tmpDirFor(_0x8c11d4,_0x13cb34),_0x502fb4=(0x0,child_process_1['spawnSync'])(_0x56f6da['cmd'],[..._0x56f6da[_0x44ae05(0x109)],...npmInstallArgs(_0x8c11d4,_0x13cb34,_0x21726e)],{'encoding':_0x28adee['fNPPO']});if(_0x502fb4[_0x44ae05(0xb7)]!==0x0){(0x0,fs_1[_0x44ae05(0xaf)])(_0x21726e,{'recursive':!![],'force':!![]});throw new Error(_0x8c11d4+'@'+_0x13cb34+'\x20のインストールに失敗しました:\x20'+((_0x502fb4[_0x44ae05(0xa8)]??'')[_0x44ae05(0xb9)]()||_0x44ae05(0xd8)+_0x502fb4[_0x44ae05(0xb7)]));}commitInstall(_0x8c11d4,_0x13cb34,_0x21726e);}function installAsync(_0x1bbac4,_0x5d4aa6){const _0x3bf4e9={'iDMHR':function(_0x323cb1,_0x65b5f5){return _0x323cb1(_0x65b5f5);},'Tgfyk':function(_0x333da9,_0x312d42,_0x114c1a,_0x4c020f){return _0x333da9(_0x312d42,_0x114c1a,_0x4c020f);},'fhitF':function(_0x2a8a58){return _0x2a8a58();},'iZXVx':function(_0x3ada8f,_0xb6e2a9,_0x42860f){return _0x3ada8f(_0xb6e2a9,_0x42860f);},'LgEez':'ignore'};return new Promise((_0xab5d55,_0x2ddb51)=>{const _0x27f7b7=_0x3929,_0x481413={'ZVPyL':function(_0x3c96fe,_0x5cae5a){return _0x3c96fe!==_0x5cae5a;},'qMEpf':function(_0x861fbd,_0x14beb1){const _0x30013f=_0x3929;return _0x3bf4e9[_0x30013f(0xdd)](_0x861fbd,_0x14beb1);},'TphIb':function(_0x2ef3d9,_0x4ad4ed,_0x53567b,_0x258407){return _0x3bf4e9['Tgfyk'](_0x2ef3d9,_0x4ad4ed,_0x53567b,_0x258407);},'Siukw':function(_0x372b66){return _0x372b66();}},_0x206b01=_0x3bf4e9['fhitF'](npmCommand),_0x3ba2d9=_0x3bf4e9[_0x27f7b7(0xbf)](tmpDirFor,_0x1bbac4,_0x5d4aa6),_0x1ba72e=(0x0,child_process_1['spawn'])(_0x206b01['cmd'],[..._0x206b01['pre'],...npmInstallArgs(_0x1bbac4,_0x5d4aa6,_0x3ba2d9)],{'stdio':_0x3bf4e9['LgEez']});_0x1ba72e['on'](_0x27f7b7(0xd3),_0x2ddb51),_0x1ba72e['on'](_0x27f7b7(0x115),_0xe7d207=>{const _0x2ae9a8=_0x27f7b7;if(_0x481413[_0x2ae9a8(0xf8)](_0xe7d207,0x0)){(0x0,fs_1[_0x2ae9a8(0xaf)])(_0x3ba2d9,{'recursive':!![],'force':!![]}),_0x481413[_0x2ae9a8(0xe3)](_0x2ddb51,new Error(_0x1bbac4+'@'+_0x5d4aa6+_0x2ae9a8(0xe2)+_0xe7d207+')'));return;}try{_0x481413[_0x2ae9a8(0xd9)](commitInstall,_0x1bbac4,_0x5d4aa6,_0x3ba2d9),_0x481413[_0x2ae9a8(0xa4)](_0xab5d55);}catch(_0x5082ed){_0x481413[_0x2ae9a8(0xe3)](_0x2ddb51,_0x5082ed);}});});}const LAST_USED=_0x4b777e(0x9a);function markUsed(_0x2eb1c8,_0x52fefc){const _0x3134dc=_0x4b777e,_0x1e8899={'VcMmQ':function(_0x42a68d,_0x3d1050){return _0x42a68d(_0x3d1050);}};(0x0,fs_1['writeFileSync'])((0x0,path_1[_0x3134dc(0xc8)])(versionDir(_0x2eb1c8,_0x52fefc),LAST_USED),_0x1e8899[_0x3134dc(0xae)](String,Date[_0x3134dc(0xda)]()));}function readLastUsed(_0x1b8bc0,_0x4b7436){const _0x21d5af=_0x4b777e,_0x4c1daa={'PEADX':function(_0x3b503f,_0x2a1377,_0x3f840b){return _0x3b503f(_0x2a1377,_0x3f840b);}},_0x1d606e={};for(const _0x1d0438 of _0x4b7436){const _0x21e6b6=(0x0,path_1['join'])(_0x4c1daa[_0x21d5af(0xe7)](versionDir,_0x1b8bc0,_0x1d0438),LAST_USED);if((0x0,fs_1[_0x21d5af(0x106)])(_0x21e6b6))_0x1d606e[_0x1d0438]=Number((0x0,fs_1[_0x21d5af(0xa6)])(_0x21e6b6,_0x21d5af(0xfe)))||0x0;}return _0x1d606e;}function prune(_0x34b079){const _0x369ccd=_0x4b777e,_0x45fc8f={'HNWPs':function(_0x1d89f8,_0x334465){return _0x1d89f8(_0x334465);},'MhNOR':_0x369ccd(0x11f)},_0x4ce4af=_0x45fc8f[_0x369ccd(0xbc)](listInstalled,_0x34b079);for(const _0x1896e4 of versionsToPrune(_0x4ce4af,readLastUsed(_0x34b079,_0x4ce4af),Date[_0x369ccd(0xda)]())){(0x0,fs_1[_0x369ccd(0xaf)])(versionDir(_0x34b079,_0x1896e4),{'recursive':!![],'force':!![]});}const _0x5bac75=_0x45fc8f[_0x369ccd(0xbc)](packageDir,_0x34b079);for(const _0x1ec869 of(0x0,fs_1[_0x369ccd(0x11e)])(_0x5bac75)){if(!_0x1ec869[_0x369ccd(0x91)](_0x45fc8f[_0x369ccd(0xdf)]))continue;const _0x3fbd24=(0x0,path_1[_0x369ccd(0xc8)])(_0x5bac75,_0x1ec869);if(Date['now']()-(0x0,fs_1[_0x369ccd(0xc9)])(_0x3fbd24)[_0x369ccd(0xad)]>0x36ee80)(0x0,fs_1['rmSync'])(_0x3fbd24,{'recursive':!![],'force':!![]});}}function prepareMcp(_0x1924fa){const _0x5ea3aa=_0x4b777e,_0x386473={'aIaAU':function(_0x44a508,_0x37346a){return _0x44a508(_0x37346a);},'hQDml':function(_0x506b8e,_0x567f75,_0x16e057){return _0x506b8e(_0x567f75,_0x16e057);},'hHbpf':function(_0x1429d2,_0x212721){return _0x1429d2!==_0x212721;},'JjGcG':function(_0x3f3b91,_0x14ab65,_0x3a0d9b){return _0x3f3b91(_0x14ab65,_0x3a0d9b);}};let _0x29b45e=newestFirst(_0x386473[_0x5ea3aa(0x9f)](listInstalled,_0x1924fa))[0x0];!_0x29b45e&&(_0x29b45e=latestVersion(_0x1924fa),process[_0x5ea3aa(0xf3)]['write']('MCP\x20'+_0x1924fa+'@'+_0x29b45e+'\x20を準備しています(初回のみ。大きいものは数分かかります。そのままお待ちください)...\x0a'),_0x386473[_0x5ea3aa(0xb2)](installSync,_0x1924fa,_0x29b45e));markUsed(_0x1924fa,_0x29b45e);const _0x2857f1=JSON[_0x5ea3aa(0x103)]((0x0,fs_1[_0x5ea3aa(0xa6)])(installedPkgJsonPath(_0x1924fa,_0x29b45e),_0x5ea3aa(0xfe))),_0x1dd14d=nodeTooOld(_0x2857f1);if(_0x386473['hHbpf'](_0x1dd14d,null))throw new Error(_0x5ea3aa(0x10d)+_0x1dd14d+_0x5ea3aa(0xc6)+process[_0x5ea3aa(0xce)]+_0x5ea3aa(0x10a));const _0x2fbbee=(0x0,path_1['join'])(_0x386473[_0x5ea3aa(0xe4)](versionDir,_0x1924fa,_0x29b45e),_0x5ea3aa(0x104),..._0x1924fa['split']('/'),_0x386473[_0x5ea3aa(0x9f)](resolveBin,_0x2857f1));return{'pkg':_0x1924fa,'version':_0x29b45e,'binPath':_0x2fbbee,'declaredEnv':declaredEnv(_0x2857f1),'fillSecrets':declaresFillSecrets(_0x2857f1)};}function updateLogPath(){const _0x298a3f=_0x4b777e;return(0x0,path_1[_0x298a3f(0xc8)])(packagesRoot(),'update.log');}function log(_0x4b3707){const _0x3a03ba=_0x4b777e;(0x0,fs_1['mkdirSync'])(packagesRoot(),{'recursive':!![]}),(0x0,fs_1[_0x3a03ba(0xd4)])(updateLogPath(),new Date()[_0x3a03ba(0xee)]()+'\x20'+_0x4b3707+'\x0a');}async function refreshInBackground(_0x56f124){const _0x41d019=_0x4b777e,_0x2fca4d={'azIHG':function(_0x30f756,_0x17704f,_0xf4b8d1){return _0x30f756(_0x17704f,_0xf4b8d1);},'zgesb':function(_0x536302,_0x119ecf){return _0x536302(_0x119ecf);}};for(const _0x467f2f of _0x56f124){try{const _0xd861e4=latestVersion(_0x467f2f[_0x41d019(0x9c)]);!listInstalled(_0x467f2f[_0x41d019(0x9c)])[_0x41d019(0x91)](_0xd861e4)&&(await _0x2fca4d[_0x41d019(0xcb)](installAsync,_0x467f2f[_0x41d019(0x9c)],_0xd861e4),log(_0x41d019(0xb8)+_0x467f2f['pkg']+'@'+_0xd861e4+_0x41d019(0xfb))),prune(_0x467f2f[_0x41d019(0x9c)]);}catch(_0x393008){_0x2fca4d[_0x41d019(0xde)](log,_0x41d019(0x9d)+_0x467f2f[_0x41d019(0x9c)]+':\x20'+_0x393008[_0x41d019(0x97)]);}}}
|
|
1
|
+
'use strict';const _0x1a2009=_0x446d;(function(_0x52dcc0,_0x1d6573){const _0xce870f=_0x446d,_0x33b229=_0x52dcc0();while(!![]){try{const _0xf049a8=parseInt(_0xce870f(0x171))/0x1+-parseInt(_0xce870f(0x154))/0x2+-parseInt(_0xce870f(0x157))/0x3*(-parseInt(_0xce870f(0x15b))/0x4)+-parseInt(_0xce870f(0x18f))/0x5*(-parseInt(_0xce870f(0x14a))/0x6)+-parseInt(_0xce870f(0x17d))/0x7+parseInt(_0xce870f(0x1a6))/0x8+parseInt(_0xce870f(0x184))/0x9*(-parseInt(_0xce870f(0x169))/0xa);if(_0xf049a8===_0x1d6573)break;else _0x33b229['push'](_0x33b229['shift']());}catch(_0x5f31b2){_0x33b229['push'](_0x33b229['shift']());}}}(_0x2b3a,0x23ba3));Object[_0x1a2009(0x168)](exports,'__esModule',{'value':!![]}),exports[_0x1a2009(0x1ca)]=exports[_0x1a2009(0x194)]=void 0x0,exports[_0x1a2009(0x183)]=isVersion,exports['compareVersions']=compareVersions,exports[_0x1a2009(0x18a)]=newestFirst,exports['versionsToPrune']=versionsToPrune,exports['declaredEnv']=declaredEnv,exports[_0x1a2009(0x18e)]=declaresFillSecrets,exports[_0x1a2009(0x1ac)]=selectEnv,exports[_0x1a2009(0x188)]=nodeTooOld,exports[_0x1a2009(0x1c6)]=resolveBin,exports[_0x1a2009(0x182)]=packagesRoot,exports['listInstalled']=listInstalled,exports[_0x1a2009(0x14e)]=latestVersion,exports[_0x1a2009(0x18c)]=installSync,exports[_0x1a2009(0x1c2)]=prepareMcp,exports[_0x1a2009(0x15d)]=updateLogPath,exports[_0x1a2009(0x1ba)]=refreshInBackground;const fs_1=require('fs'),os_1=require('os'),path_1=require(_0x1a2009(0x16c)),child_process_1=require(_0x1a2009(0x189)),VERSION_RE=/^\d+\.\d+\.\d+$/;exports[_0x1a2009(0x194)]=0x2,exports[_0x1a2009(0x1ca)]=0x7*0x18*0x36ee80;function _0x446d(_0x2982ac,_0x4f78b5){_0x2982ac=_0x2982ac-0x141;const _0x2b3a73=_0x2b3a();let _0x446dbc=_0x2b3a73[_0x2982ac];if(_0x446d['wVFbij']===undefined){var _0xc580d2=function(_0x168898){const _0x3e40ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x35fda9='',_0x5c26e9='';for(let _0x2a5b6d=0x0,_0x27e3cf,_0x154cf5,_0x14c4ef=0x0;_0x154cf5=_0x168898['charAt'](_0x14c4ef++);~_0x154cf5&&(_0x27e3cf=_0x2a5b6d%0x4?_0x27e3cf*0x40+_0x154cf5:_0x154cf5,_0x2a5b6d++%0x4)?_0x35fda9+=String['fromCharCode'](0xff&_0x27e3cf>>(-0x2*_0x2a5b6d&0x6)):0x0){_0x154cf5=_0x3e40ec['indexOf'](_0x154cf5);}for(let _0x155488=0x0,_0x118ea6=_0x35fda9['length'];_0x155488<_0x118ea6;_0x155488++){_0x5c26e9+='%'+('00'+_0x35fda9['charCodeAt'](_0x155488)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c26e9);};_0x446d['MJiEQU']=_0xc580d2,_0x446d['fjJGWX']={},_0x446d['wVFbij']=!![];}const _0xf91e0d=_0x2b3a73[0x0],_0x3bc0b5=_0x2982ac+_0xf91e0d,_0xc542b3=_0x446d['fjJGWX'][_0x3bc0b5];return!_0xc542b3?(_0x446dbc=_0x446d['MJiEQU'](_0x446dbc),_0x446d['fjJGWX'][_0x3bc0b5]=_0x446dbc):_0x446dbc=_0xc542b3,_0x446dbc;}function _0x2b3a(){const _0x1d4db3=['CK5WuK8','zxHPDa','lNrTCc0','ioocKUA6LUwcMEobL+obPUobHoobVUobME+8IowiNEwBNUobRUobV+oaGUwKP+obJEobHoocGUobRUobR+AvSowiHUobI+obI+ocIUobVUobMEoaGUobNEobRUobVUobVUobIUw+HEobOEobJ+obOoobLEobHo+8Is4UlGO','ios7PEs4IUobJoIMGEocIUobVUobME+8Ios7IUobRYa','Aw5JBhvKzxm','mti4mtu4mujyq2LKCq','CMvHzezPBgvtEw5J','t0nMCvy','BgvUz3rO','rufdq0vt','CgfJA2fNzxnsB290','AxnwzxjZAw9U','mte3EKTyC3jk','EuXlsey','ANDmD2G','ls1SB2DSzxzLBd1LCNjVCG','BM9KzvrVB09Sza','y2HPBgrFChjVy2vZCW','BMv3zxn0rMLYC3q','CgTN','Aw5ZDgfSBfn5BMm','C29YDa','zgvJBgfYzxngAwXSu2vJCMv0CW','nJqWsg1HDwLf','CMvHzgrPCLn5BMm','AM9PBG','lMz1BM55lwjVB3rO','tM9Kzs5QCYa','s0vfuf9wrvjtsu9ouW','BeDIueG','ioobRUocPoodS+ocUEodIoodVoodQ+obQ+wKSEAvL+obL+obVUobL+obNZOG','zxjYB3i','C3bHD25tEw5J','DMvYC2LVBG','C3rKzxjY','wMndzee','vxrZzMi','zw52','BwvZC2fNzq','rKHNDg4','C3rHDhvZia','qvbys3O','DxrMltG','zw5KC1DPDgG','C3rHDfn5BMm','C3bHD24','odK2otyWDgjAwKvt','BxrPBwvnCW','BwnWlxbHy2THz2vZ','oIbWywnRywDLlMPZB24G44gUigjPBIdJGyVJGONOTBFLI5xJG5xJGQhJGQtJG6VJGPlMSBRJGOhJGONJGOZJGB7JGzVJGPm','zNvUBNLcB290Aa','DhjPBq','C2vSzwn0rw52','y21K','terxvvi','qwPVEgG','BM9Kzv9TB2r1BgvZ','BM93','CgLK','zMLUza','AwDUB3jL','uKnICuW','zw50CMLLCW','BNbTioobJoIMI+obPoobI+ocIUobVUobM+ocK++8Ia','sKHtDeG','BxvPrxK','CMvMCMvZAeLUqMfJA2DYB3vUza','C3rYAw5N','Bwf1DNu','D3jPDgu','77Yj44cctM9Kzs5QCYdJGPlMLRdJGzFJGy/JGzFJGABJGyVJGONOTBFLI5xJGzFNM7tJGzFJGABJGy/JGAdJGzxJGyq','zgLYBMfTzq','ChjL','D2LUmZi','ChjLCgfYzu1JCa','tunqia','wwTerMm','A3PSyMS','CMvZB2X2zujPBG','CM1tEw5J','ioobRUACGoAwSoEjIoocKIbUCg0G44gl44kj5y+w5B6x44gN44gn44g+44gB44ktoIa','C2XPy2u','ufjvtKvFsurmrv9nuW','C3bSAxq','D3jLyvm','qKvWDLO','BNbT','Aw5ZDgfSBgvKia','DgvZDa','CMvUyw1Lu3LUyW','CgfhBNa','Bwf0y2G','CgfYC2u','ls1VBwL0pwrLDG','vvnXy3O','nZa1nLzsEu1VCa','AxnbCNjHEq','C2nbsfK','rw9YsKe','Bgf0zxn0vMvYC2LVBG','C3rKB3v0','r2DpyNi','wLHSr1u','yMLU','C3rHDhvZ','mZG5nde2AffTsvjx','77Yj44cctM9Kzs5QCYdJGPlLHAZLVi/JGQtJG7pJGRNJG4JJG7ZJG6NJG7ZJGAFLHAxJGOZNM7tJGzFJGABJGy/JGAdJGzxJGyq','svDAzxK','mZe5mJi3uhbYsvP1','tw90t2i','zxHPC3rZu3LUyW','BM9Kzq','ne5KwK1lrq','BwTKAxjtEw5J','DxbKyxrLtg9Nugf0Aa','rvbfuK0','rujvu1K','C1Hbu2m','zMLSDgvY','DxbKyxrLlMXVzW','tefZEe4','DMLLDW','BMfTzq','BNbTlwnSAs5QCW','ls1UBY1HDwrPDa','zgvMAw5LuhjVCgvYDhK','nJe0nZbyq0j1swe','ExjcA3y','zxHLy1bHDgG','Cgf0Aa','Bu95whO','ioobRUocPoodS+ocUEodIoodVoodQ+obQ+wKSEAvL+obL+obVUobL+obN++8Ihn0yxr1CYa','BwfW','ls1WCMvMAxG','mJm0otG0quPHANb6','CgfJA2fNzs5QC29U','ls1UBY1WywnRywDLlwXVy2S','uhPMvKq','DMvYC2LVBNm','Cg9W'];_0x2b3a=function(){return _0x1d4db3;};return _0x2b3a();}function isVersion(_0x5969b5){const _0x2ae077=_0x1a2009;return VERSION_RE[_0x2ae077(0x143)](_0x5969b5);}function compareVersions(_0x5a2e03,_0x4a1d1a){const _0x211831=_0x1a2009,_0x4b8714=_0x5a2e03[_0x211831(0x1cb)]('.')[_0x211831(0x16f)](Number),_0x21ffc2=_0x4a1d1a[_0x211831(0x1cb)]('.')[_0x211831(0x16f)](Number);for(let _0x5c3514=0x0;_0x5c3514<0x3;_0x5c3514++){if(_0x4b8714[_0x5c3514]!==_0x21ffc2[_0x5c3514])return _0x4b8714[_0x5c3514]-_0x21ffc2[_0x5c3514];}return 0x0;}function newestFirst(_0x420121){const _0x290099=_0x1a2009;return _0x420121[_0x290099(0x161)](isVersion)[_0x290099(0x18d)]((_0x416ba1,_0x412b1f)=>compareVersions(_0x412b1f,_0x416ba1));}function versionsToPrune(_0x4cd19a,_0xcbc6ed,_0xcfd99f,_0x16a8b1=exports[_0x1a2009(0x194)],_0x2334ef=exports[_0x1a2009(0x1ca)]){const _0xd5add9=_0x1a2009;return newestFirst(_0x4cd19a)[_0xd5add9(0x1c9)](_0x16a8b1)[_0xd5add9(0x161)](_0x2b38d7=>_0xcbc6ed[_0x2b38d7]!==undefined&&_0xcfd99f-_0xcbc6ed[_0x2b38d7]>=_0x2334ef);}function declaredEnv(_0x4e29ef){const _0x2ca51f=_0x1a2009,_0x2a3b6c=_0x4e29ef?.[_0x2ca51f(0x1aa)];if(!_0x2a3b6c||!Array[_0x2ca51f(0x14b)](_0x2a3b6c[_0x2ca51f(0x19d)]))return[];return _0x2a3b6c[_0x2ca51f(0x19d)][_0x2ca51f(0x161)](_0x186fe8=>typeof _0x186fe8==='string'&&_0x186fe8[_0x2ca51f(0x180)]>0x0);}function declaresFillSecrets(_0x32bac7){const _0x387d16=_0x1a2009,_0xdab36d={'LLTdP':function(_0x471a90,_0x2503c4){return _0x471a90===_0x2503c4;}};return _0xdab36d['LLTdP'](_0x32bac7?.[_0x387d16(0x1aa)]?.['fillSecrets'],!![]);}function selectEnv(_0x417cdd,_0x1b9f0e){const _0x2871de=_0x1a2009,_0x13dc7d={};for(const [_0x611ff5,_0xda9cda]of Object[_0x2871de(0x1b6)](_0x1b9f0e)){const _0x5a019b=_0x417cdd['some'](_0x4e702b=>_0x4e702b[_0x2871de(0x1a3)]('*')?_0x611ff5['startsWith'](_0x4e702b['slice'](0x0,-0x1)):_0x611ff5===_0x4e702b);if(_0x5a019b)_0x13dc7d[_0x611ff5]=_0xda9cda;}return _0x13dc7d;}function nodeTooOld(_0x58b50a,_0x399f47=process[_0x1a2009(0x175)][_0x1a2009(0x15a)]){const _0x3cd8e2=_0x1a2009,_0x11650e={'scAHY':function(_0x2a96bd,_0x1bea4d){return _0x2a96bd!==_0x1bea4d;},'sXASc':_0x3cd8e2(0x1bb),'OERLR':function(_0x3c0d42,_0xeb8b01){return _0x3c0d42(_0xeb8b01);},'yrBkv':function(_0x180c80,_0x9b6da){return _0x180c80<_0x9b6da;},'Ajoxh':function(_0x4fb3ec,_0x5161b5){return _0x4fb3ec(_0x5161b5);}},_0x1b8ece=_0x58b50a?.['engines']?.[_0x3cd8e2(0x15a)];if(_0x11650e[_0x3cd8e2(0x14c)](typeof _0x1b8ece,_0x11650e[_0x3cd8e2(0x160)]))return null;const _0x3b7c2a=_0x1b8ece[_0x3cd8e2(0x146)](/(?:>=|\^|~)?\s*v?(\d+)/);if(!_0x3b7c2a)return null;const _0x1fc731=_0x11650e['OERLR'](Number,_0x3b7c2a[0x1]);return _0x11650e[_0x3cd8e2(0x16a)](_0x11650e[_0x3cd8e2(0x1af)](Number,_0x399f47[_0x3cd8e2(0x1cb)]('.')[0x0]),_0x1fc731)?_0x1fc731:null;}function resolveBin(_0x28a4a3){const _0xb5e5ba=_0x1a2009,_0x272c9d={'LAsxN':function(_0x391450,_0x3887cf){return _0x391450===_0x3887cf;}},_0x5e6ba4=_0x28a4a3[_0xb5e5ba(0x152)];if(typeof _0x5e6ba4===_0xb5e5ba(0x1bb))return _0x5e6ba4;if(_0x5e6ba4&&_0x272c9d[_0xb5e5ba(0x163)](typeof _0x5e6ba4,'object')){const _0x1a46b9=Object[_0xb5e5ba(0x1b6)](_0x5e6ba4);if(_0x1a46b9[_0xb5e5ba(0x180)]===0x1)return _0x1a46b9[0x0][0x1];const _0x4de81c=_0x28a4a3[_0xb5e5ba(0x165)][_0xb5e5ba(0x1cb)]('/')[_0xb5e5ba(0x176)](),_0x2b02c8=_0x1a46b9[_0xb5e5ba(0x1b3)](([_0x34e972])=>_0x34e972===_0x4de81c);if(_0x2b02c8)return _0x2b02c8[0x1];}throw new Error(_0x28a4a3[_0xb5e5ba(0x165)]+_0xb5e5ba(0x1a9));}function packagesRoot(){const _0x279fe2=_0x1a2009;return process.env.FB_MCP_PACKAGES_DIR||(0x0,path_1[_0x279fe2(0x191)])((0x0,os_1['homedir'])(),_0x279fe2(0x192),_0x279fe2(0x1a8));}function packageDir(_0x3a827e){const _0x3d3d1c=_0x1a2009,_0x1fa1f8={'paGnp':function(_0x2523a3){return _0x2523a3();}};return(0x0,path_1[_0x3d3d1c(0x191)])(_0x1fa1f8[_0x3d3d1c(0x145)](packagesRoot),encodeURIComponent(_0x3a827e));}function versionDir(_0x139292,_0x19f6d8){const _0x43e107=_0x1a2009,_0x1c4d92={'APXKz':function(_0x4db9f1,_0x3932df){return _0x4db9f1(_0x3932df);}};return(0x0,path_1[_0x43e107(0x191)])(_0x1c4d92[_0x43e107(0x1a1)](packageDir,_0x139292),_0x19f6d8);}function installedPkgJsonPath(_0x560855,_0x37af6a){const _0x5516a8=_0x1a2009,_0x5cebc0={'dJgGd':function(_0x625931,_0x4b89d4,_0x26421d){return _0x625931(_0x4b89d4,_0x26421d);},'Utsfb':_0x5516a8(0x1b0)};return(0x0,path_1[_0x5516a8(0x191)])(_0x5cebc0['dJgGd'](versionDir,_0x560855,_0x37af6a),_0x5cebc0[_0x5516a8(0x19c)],..._0x560855[_0x5516a8(0x1cb)]('/'),_0x5516a8(0x172));}function listInstalled(_0xe908d4){const _0x33d415=_0x1a2009,_0x4a4e88={'lGbPH':function(_0x54fc7a,_0x3d4fca){return _0x54fc7a(_0x3d4fca);}},_0x5d567b=_0x4a4e88[_0x33d415(0x195)](packageDir,_0xe908d4);if(!(0x0,fs_1['existsSync'])(_0x5d567b))return[];return(0x0,fs_1[_0x33d415(0x190)])(_0x5d567b)[_0x33d415(0x161)](_0x2087e9=>isVersion(_0x2087e9)&&(0x0,fs_1[_0x33d415(0x159)])(installedPkgJsonPath(_0xe908d4,_0x2087e9)));}function npmCommand(){const _0x1b6272=_0x1a2009,_0x1d61b7={'yLKHF':function(_0x5d35db,_0x5c73bd){return _0x5d35db!==_0x5c73bd;},'wreaS':_0x1b6272(0x141)};if(_0x1d61b7[_0x1b6272(0x185)](process['platform'],_0x1b6272(0x1c1)))return{'cmd':_0x1d61b7[_0x1b6272(0x1cc)],'pre':[]};const _0x52f321=(0x0,path_1['join'])((0x0,path_1[_0x1b6272(0x1bf)])(process[_0x1b6272(0x16b)]),_0x1b6272(0x1b0),_0x1b6272(0x141),_0x1b6272(0x152),_0x1b6272(0x166));if(!(0x0,fs_1['existsSync'])(_0x52f321))throw new Error(_0x1b6272(0x1b7)+_0x52f321+_0x1b6272(0x155));return{'cmd':process[_0x1b6272(0x16b)],'pre':[_0x52f321]};}const NPM_VIEW_TIMEOUT_MS=0x7530;function latestVersion(_0x2f888f){const _0x540546=_0x1a2009,_0x689e5f={'lzdxC':_0x540546(0x164),'rNpRO':function(_0x48500b,_0x353bb3){return _0x48500b!==_0x353bb3;},'RCbqL':function(_0x4e5de6,_0x5d33e1){return _0x4e5de6(_0x5d33e1);}},_0x2fcbde=npmCommand(),_0x4f91d8=(0x0,child_process_1[_0x540546(0x198)])(_0x2fcbde['cmd'],[..._0x2fcbde[_0x540546(0x1c0)],_0x689e5f['lzdxC'],_0x2f888f,_0x540546(0x199)],{'encoding':_0x540546(0x1a2),'timeout':NPM_VIEW_TIMEOUT_MS}),_0xae0e6a=(_0x4f91d8[_0x540546(0x14f)]??'')['trim']();if(_0x689e5f[_0x540546(0x177)](_0x4f91d8[_0x540546(0x153)],0x0)||!_0x689e5f[_0x540546(0x1b5)](isVersion,_0xae0e6a))throw new Error(_0x2f888f+_0x540546(0x1c8)+((_0x4f91d8[_0x540546(0x19a)]??'')['trim']()||_0x540546(0x1a0)+_0x4f91d8[_0x540546(0x153)]));return _0xae0e6a;}function npmInstallArgs(_0x4a0634,_0x24755b,_0x482b80){const _0x16420d=_0x1a2009,_0x5719cc={'mauvu':_0x16420d(0x170),'LRcAz':_0x16420d(0x173),'KbfhP':_0x16420d(0x148),'kHgAw':_0x16420d(0x167),'LfskA':'--no-fund'};return['install',_0x5719cc[_0x16420d(0x1bc)],_0x482b80,'--no-save',_0x5719cc['LRcAz'],_0x5719cc['KbfhP'],_0x5719cc['kHgAw'],_0x5719cc['LfskA'],_0x16420d(0x187),_0x4a0634+'@'+_0x24755b];}function sleepMs(_0x1af0dd){Atomics['wait'](new Int32Array(new SharedArrayBuffer(0x4)),0x0,0x0,_0x1af0dd);}const TRANSIENT_FS=new Set([_0x1a2009(0x15e),_0x1a2009(0x15f),_0x1a2009(0x181)]);function renameWithRetry(_0x17df3d,_0x51e1f9){const _0x5b8f0f=_0x1a2009,_0x33b135={'GgObr':function(_0x2fee00,_0x4cedb9){return _0x2fee00>=_0x4cedb9;},'muiEy':function(_0x4122cf,_0x5128c2){return _0x4122cf*_0x5128c2;}};for(let _0x543a88=0x0;;_0x543a88++){try{(0x0,fs_1[_0x5b8f0f(0x144)])(_0x17df3d,_0x51e1f9);return;}catch(_0x201183){const _0xe2cc78=_0x201183['code']??'';if(_0x33b135[_0x5b8f0f(0x150)](_0x543a88,0x5)||!TRANSIENT_FS['has'](_0xe2cc78)||(0x0,fs_1[_0x5b8f0f(0x159)])(_0x51e1f9))throw _0x201183;sleepMs(_0x33b135[_0x5b8f0f(0x1b9)](0xc8,0x2**_0x543a88));}}}function commitInstall(_0x20d8d5,_0x342afd,_0x3b9467){const _0x351caa=_0x1a2009,_0x40a6d6={'rwCbi':function(_0x4f9796,_0x2b1b8e,_0x19695f){return _0x4f9796(_0x2b1b8e,_0x19695f);},'YkDFc':function(_0x51f124,_0x52fbcb,_0x433167){return _0x51f124(_0x52fbcb,_0x433167);}};try{_0x40a6d6['rwCbi'](renameWithRetry,_0x3b9467,_0x40a6d6[_0x351caa(0x1c4)](versionDir,_0x20d8d5,_0x342afd));}catch(_0xfe29e5){(0x0,fs_1[_0x351caa(0x1c7)])(_0x3b9467,{'recursive':!![],'force':!![]});if(!(0x0,fs_1[_0x351caa(0x159)])(installedPkgJsonPath(_0x20d8d5,_0x342afd)))throw _0xfe29e5;}}function tmpDirFor(_0xc9e44d,_0x4a9b57){const _0x1f1eeb=_0x1a2009;return(0x0,fs_1[_0x1f1eeb(0x15c)])(packageDir(_0xc9e44d),{'recursive':!![]}),(0x0,path_1[_0x1f1eeb(0x191)])(packageDir(_0xc9e44d),_0x4a9b57+_0x1f1eeb(0x179)+process[_0x1f1eeb(0x1b2)]+'-'+Date['now']());}function installSync(_0x26bfcc,_0x11e410){const _0x13c95c=_0x1a2009,_0x4dc1b8={'EorJA':function(_0x192768,_0x52ab1c,_0x307b7a,_0x3f18ee){return _0x192768(_0x52ab1c,_0x307b7a,_0x3f18ee);},'TyMdt':_0x13c95c(0x1a2)},_0x4a6726=npmCommand(),_0x1258a7=tmpDirFor(_0x26bfcc,_0x11e410),_0x47aad7=(0x0,child_process_1[_0x13c95c(0x198)])(_0x4a6726[_0x13c95c(0x1ad)],[..._0x4a6726[_0x13c95c(0x1c0)],..._0x4dc1b8[_0x13c95c(0x14d)](npmInstallArgs,_0x26bfcc,_0x11e410,_0x1258a7)],{'encoding':_0x4dc1b8['TyMdt']});if(_0x47aad7[_0x13c95c(0x153)]!==0x0){(0x0,fs_1['rmSync'])(_0x1258a7,{'recursive':!![],'force':!![]});throw new Error(_0x26bfcc+'@'+_0x11e410+_0x13c95c(0x196)+((_0x47aad7[_0x13c95c(0x19a)]??'')[_0x13c95c(0x1ab)]()||_0x13c95c(0x1a0)+_0x47aad7[_0x13c95c(0x153)]));}commitInstall(_0x26bfcc,_0x11e410,_0x1258a7);}function installAsync(_0x18ac12,_0x56a605){const _0x5b3982=_0x1a2009,_0x4c6b78={'jwLwh':function(_0x1a1547,_0x19dabd){return _0x1a1547!==_0x19dabd;},'JHStH':function(_0x3c817f,_0xb501fe){return _0x3c817f(_0xb501fe);},'IWZey':function(_0x3e44ad){return _0x3e44ad();},'FHgtn':_0x5b3982(0x178)};return new Promise((_0x25c8ec,_0x20744d)=>{const _0x50bcac=_0x5b3982,_0x17576c=_0x4c6b78[_0x50bcac(0x156)](npmCommand),_0x26821c=tmpDirFor(_0x18ac12,_0x56a605),_0x4b6cfa=(0x0,child_process_1[_0x50bcac(0x1a5)])(_0x17576c[_0x50bcac(0x1ad)],[..._0x17576c[_0x50bcac(0x1c0)],...npmInstallArgs(_0x18ac12,_0x56a605,_0x26821c)],{'stdio':_0x50bcac(0x1b4)});_0x4b6cfa['on'](_0x50bcac(0x197),_0x20744d),_0x4b6cfa['on'](_0x4c6b78[_0x50bcac(0x19f)],_0x2580bc=>{const _0xae724=_0x50bcac;if(_0x4c6b78[_0xae724(0x186)](_0x2580bc,0x0)){(0x0,fs_1[_0xae724(0x1c7)])(_0x26821c,{'recursive':!![],'force':!![]}),_0x4c6b78[_0xae724(0x1b8)](_0x20744d,new Error(_0x18ac12+'@'+_0x56a605+_0xae724(0x16e)+_0x2580bc+')'));return;}try{commitInstall(_0x18ac12,_0x56a605,_0x26821c),_0x25c8ec();}catch(_0x13a4f3){_0x20744d(_0x13a4f3);}});});}const LAST_USED='.last-used';function markUsed(_0xb3b1a6,_0x10a11a){const _0x234461=_0x1a2009,_0x575caf={'zcbDo':function(_0x1cd5dd,_0x130942){return _0x1cd5dd(_0x130942);}};(0x0,fs_1['writeFileSync'])((0x0,path_1[_0x234461(0x191)])(versionDir(_0xb3b1a6,_0x10a11a),LAST_USED),_0x575caf['zcbDo'](String,Date[_0x234461(0x1b1)]()));}function readLastUsed(_0x48d101,_0x53eeaf){const _0x2c81a8=_0x1a2009,_0x200d39={'ZXlGU':function(_0x2abf1c,_0x1a994,_0x27346d){return _0x2abf1c(_0x1a994,_0x27346d);},'ZcCdA':function(_0x49e7fb,_0x6e6cea){return _0x49e7fb(_0x6e6cea);}},_0x2e3ad3={};for(const _0x3933e9 of _0x53eeaf){const _0x45812d=(0x0,path_1[_0x2c81a8(0x191)])(_0x200d39[_0x2c81a8(0x151)](versionDir,_0x48d101,_0x3933e9),LAST_USED);if((0x0,fs_1[_0x2c81a8(0x159)])(_0x45812d))_0x2e3ad3[_0x3933e9]=_0x200d39[_0x2c81a8(0x19b)](Number,(0x0,fs_1[_0x2c81a8(0x17e)])(_0x45812d,_0x2c81a8(0x1a2)))||0x0;}return _0x2e3ad3;}function prune(_0x18212f){const _0x1e09d3=_0x1a2009,_0x278e3a={'cVwaw':function(_0x9094b4,_0x2279a4,_0x50b4df){return _0x9094b4(_0x2279a4,_0x50b4df);},'OCfqV':function(_0x2f1591,_0x4359fa){return _0x2f1591(_0x4359fa);},'PzfVD':'.tmp-','xPfLA':function(_0x3ac31b,_0x4ec921){return _0x3ac31b>_0x4ec921;},'taeuI':function(_0x379863,_0x103b48){return _0x379863-_0x103b48;}},_0x33d875=listInstalled(_0x18212f);for(const _0x2f7037 of versionsToPrune(_0x33d875,readLastUsed(_0x18212f,_0x33d875),Date[_0x1e09d3(0x1b1)]())){(0x0,fs_1['rmSync'])(_0x278e3a['cVwaw'](versionDir,_0x18212f,_0x2f7037),{'recursive':!![],'force':!![]});}const _0x43ce7a=_0x278e3a[_0x1e09d3(0x17f)](packageDir,_0x18212f);for(const _0xf357d6 of(0x0,fs_1[_0x1e09d3(0x190)])(_0x43ce7a)){if(!_0xf357d6[_0x1e09d3(0x17c)](_0x278e3a[_0x1e09d3(0x174)]))continue;const _0x634d94=(0x0,path_1[_0x1e09d3(0x191)])(_0x43ce7a,_0xf357d6);if(_0x278e3a['xPfLA'](_0x278e3a['taeuI'](Date[_0x1e09d3(0x1b1)](),(0x0,fs_1[_0x1e09d3(0x1a4)])(_0x634d94)[_0x1e09d3(0x1a7)]),0x36ee80))(0x0,fs_1['rmSync'])(_0x634d94,{'recursive':!![],'force':!![]});}}function prepareMcp(_0xf74bd0){const _0x116c3c=_0x1a2009,_0x2486b6={'LDWUR':function(_0x12b6f1,_0x30dc69){return _0x12b6f1(_0x30dc69);},'BEpvZ':function(_0x5cb9ab,_0x2e2069,_0x281838){return _0x5cb9ab(_0x2e2069,_0x281838);},'kzlbk':function(_0x4b0367,_0x1fad73,_0x49a1f3){return _0x4b0367(_0x1fad73,_0x49a1f3);},'USqcz':_0x116c3c(0x1b0),'txNPH':function(_0x131470,_0x55c61b){return _0x131470(_0x55c61b);}};let _0x58da26=newestFirst(_0x2486b6[_0x116c3c(0x1ae)](listInstalled,_0xf74bd0))[0x0];!_0x58da26&&(_0x58da26=latestVersion(_0xf74bd0),process['stdout'][_0x116c3c(0x1bd)](_0x116c3c(0x1c3)+_0xf74bd0+'@'+_0x58da26+_0x116c3c(0x17a)),_0x2486b6[_0x116c3c(0x1cd)](installSync,_0xf74bd0,_0x58da26));markUsed(_0xf74bd0,_0x58da26);const _0x1d57fc=JSON[_0x116c3c(0x147)]((0x0,fs_1[_0x116c3c(0x17e)])(_0x2486b6[_0x116c3c(0x1c5)](installedPkgJsonPath,_0xf74bd0,_0x58da26),_0x116c3c(0x1a2))),_0x3e0a80=_0x2486b6[_0x116c3c(0x1ae)](nodeTooOld,_0x1d57fc);if(_0x3e0a80!==null)throw new Error(_0x116c3c(0x193)+_0x3e0a80+_0x116c3c(0x17b)+process[_0x116c3c(0x199)]+_0x116c3c(0x1be));const _0x191835=(0x0,path_1[_0x116c3c(0x191)])(versionDir(_0xf74bd0,_0x58da26),_0x2486b6[_0x116c3c(0x149)],..._0xf74bd0[_0x116c3c(0x1cb)]('/'),_0x2486b6['txNPH'](resolveBin,_0x1d57fc));return{'pkg':_0xf74bd0,'version':_0x58da26,'binPath':_0x191835,'declaredEnv':declaredEnv(_0x1d57fc),'fillSecrets':_0x2486b6[_0x116c3c(0x1ae)](declaresFillSecrets,_0x1d57fc)};}function updateLogPath(){const _0x4cfcae=_0x1a2009,_0x4e096c={'csCxU':function(_0x4e2671){return _0x4e2671();},'MotOb':_0x4cfcae(0x162)};return(0x0,path_1[_0x4cfcae(0x191)])(_0x4e096c['csCxU'](packagesRoot),_0x4e096c[_0x4cfcae(0x158)]);}function log(_0x95565b){const _0x526995=_0x1a2009;(0x0,fs_1[_0x526995(0x15c)])(packagesRoot(),{'recursive':!![]}),(0x0,fs_1['appendFileSync'])(updateLogPath(),new Date()['toISOString']()+'\x20'+_0x95565b+'\x0a');}async function refreshInBackground(_0x2e2a90){const _0x3abd65=_0x1a2009,_0x4809ef={'mOyXz':function(_0x840921,_0x50658c){return _0x840921(_0x50658c);}};for(const _0x5bffdf of _0x2e2a90){try{const _0x3f62c4=_0x4809ef[_0x3abd65(0x16d)](latestVersion,_0x5bffdf[_0x3abd65(0x18b)]);!listInstalled(_0x5bffdf[_0x3abd65(0x18b)])[_0x3abd65(0x17c)](_0x3f62c4)&&(await installAsync(_0x5bffdf[_0x3abd65(0x18b)],_0x3f62c4),log(_0x3abd65(0x142)+_0x5bffdf[_0x3abd65(0x18b)]+'@'+_0x3f62c4+'(次回起動から使用)')),_0x4809ef['mOyXz'](prune,_0x5bffdf[_0x3abd65(0x18b)]);}catch(_0x8ebcc1){_0x4809ef[_0x3abd65(0x16d)](log,'FAILED\x20'+_0x5bffdf[_0x3abd65(0x18b)]+':\x20'+_0x8ebcc1[_0x3abd65(0x19e)]);}}}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.inputFromHuman = exports.CANCEL_LABEL = exports.SAVE_LABEL = exports.INPUT_TIMEOUT_SEC = void 0;
|
|
4
|
+
exports.inputMessage = inputMessage;
|
|
5
|
+
exports.inputDialogCommand = inputDialogCommand;
|
|
6
|
+
exports.stripFinalNewline = stripFinalNewline;
|
|
7
|
+
exports.interpretInput = interpretInput;
|
|
8
|
+
exports.badSitesText = badSitesText;
|
|
9
|
+
exports.parseSetRequest = parseSetRequest;
|
|
10
|
+
exports.askSecret = askSecret;
|
|
11
|
+
// 秘密の値を、AI の会話を通さずに本人に入れてもらう入力画面(ask_secret)。
|
|
12
|
+
// 本人が OS の入力画面(伏せ字)に値を入れて「保存」を押すと、その値をそのまま金庫へ入れる。AI には名前と結果だけを返す。
|
|
13
|
+
// 値はメモリの中だけに置く(一時ファイルに書かない・コマンドの引数に載せない・記録に出さない)。
|
|
14
|
+
// 画面の中身(文・コマンド・結果の読み方)は純粋な関数にし、OS を呼ぶのは inputFromHuman だけにする(テストで差し替えられる)。
|
|
15
|
+
// 組み立ては approval.ts(本人の確認)と同じ形。
|
|
16
|
+
const child_process_1 = require("child_process");
|
|
17
|
+
const approval_1 = require("./approval");
|
|
18
|
+
const secretSites_1 = require("./secretSites");
|
|
19
|
+
exports.INPUT_TIMEOUT_SEC = 120;
|
|
20
|
+
exports.SAVE_LABEL = "保存";
|
|
21
|
+
exports.CANCEL_LABEL = "キャンセル";
|
|
22
|
+
const TITLE = "パスワード等の保存";
|
|
23
|
+
// macOS の画面が返す目印(値の前に付ける・時間切れ)。値にカンマ等があっても読み違えない
|
|
24
|
+
const VALUE_PREFIX = "VALUE:";
|
|
25
|
+
const GAVE_UP = "GAVE_UP";
|
|
26
|
+
function inputMessage(name, sites, exists, timeoutSec = exports.INPUT_TIMEOUT_SEC) {
|
|
27
|
+
return `金庫に秘密を保存します。値を入れて「${exports.SAVE_LABEL}」を押してください。\n\n` +
|
|
28
|
+
`名前: ${name}\n` +
|
|
29
|
+
`入れてよいサイト: ${sites.length ? sites.join(", ") : "なし"}\n` +
|
|
30
|
+
(exists ? "※ この名前の秘密はすでにあります。保存すると上書きします。\n" : "") +
|
|
31
|
+
`\n入れた値は AI には渡りません。(${timeoutSec} 秒で閉じ、何も保存しません)`;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* OS ごとの入力画面のコマンド。文は引数や環境変数で渡し、コードに埋め込まない(名前やサイト名に記号があっても壊れない)。
|
|
35
|
+
* 出せない環境なら null。has は「そのコマンドがあるか」(テストで差し替える)。
|
|
36
|
+
*/
|
|
37
|
+
function inputDialogCommand(platform, message, env, has, timeoutSec = exports.INPUT_TIMEOUT_SEC) {
|
|
38
|
+
const killAfterMs = (timeoutSec + 5) * 1000;
|
|
39
|
+
const q = JSON.stringify;
|
|
40
|
+
if (platform === "darwin") {
|
|
41
|
+
// キャンセルは osascript がエラー -128 で終わる(終了コード 1)
|
|
42
|
+
return {
|
|
43
|
+
cmd: "/usr/bin/osascript",
|
|
44
|
+
args: [
|
|
45
|
+
"-e", "on run argv",
|
|
46
|
+
"-e", `set r to display dialog (item 1 of argv) with title ${q(TITLE)} default answer "" with hidden answer ` +
|
|
47
|
+
`buttons {${q(exports.CANCEL_LABEL)}, ${q(exports.SAVE_LABEL)}} default button ${q(exports.SAVE_LABEL)} cancel button ${q(exports.CANCEL_LABEL)} ` +
|
|
48
|
+
`giving up after ${timeoutSec}`,
|
|
49
|
+
"-e", `if gave up of r then return ${q(GAVE_UP)}`,
|
|
50
|
+
"-e", `return ${q(VALUE_PREFIX)} & (text returned of r)`,
|
|
51
|
+
"-e", "end run",
|
|
52
|
+
message,
|
|
53
|
+
],
|
|
54
|
+
killAfterMs,
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
if (platform === "win32") {
|
|
58
|
+
return (0, approval_1.windowsDialog)({ text: message, title: TITLE, yes: exports.SAVE_LABEL, no: exports.CANCEL_LABEL, timeoutSec, hiddenInput: true });
|
|
59
|
+
}
|
|
60
|
+
if (!env.DISPLAY && !env.WAYLAND_DISPLAY)
|
|
61
|
+
return null;
|
|
62
|
+
if (has("zenity")) {
|
|
63
|
+
return {
|
|
64
|
+
cmd: "zenity",
|
|
65
|
+
args: ["--entry", "--hide-text", "--title", TITLE, "--text", message, "--ok-label", exports.SAVE_LABEL,
|
|
66
|
+
"--cancel-label", exports.CANCEL_LABEL, `--timeout=${timeoutSec}`],
|
|
67
|
+
killAfterMs,
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
if (has("kdialog")) {
|
|
71
|
+
// kdialog には時間切れが無いので、時間が来たら閉じる(killAfterMs)
|
|
72
|
+
return { cmd: "kdialog", args: ["--title", TITLE, "--password", message], killAfterMs: timeoutSec * 1000 };
|
|
73
|
+
}
|
|
74
|
+
return null;
|
|
75
|
+
}
|
|
76
|
+
/** 画面やパイプ(echo 等)が足す最後の改行1つだけを外す(パスワードの前後の空白はそのまま)。 */
|
|
77
|
+
function stripFinalNewline(s) {
|
|
78
|
+
return s.replace(/\r?\n$/, "");
|
|
79
|
+
}
|
|
80
|
+
function valueOrEmpty(value) {
|
|
81
|
+
return value === "" ? { status: "empty" } : { status: "value", value };
|
|
82
|
+
}
|
|
83
|
+
/** 入力画面の結果を読む。「保存」で値が返ったときだけ value。 */
|
|
84
|
+
function interpretInput(platform, r, cmd = "") {
|
|
85
|
+
if (r.killed)
|
|
86
|
+
return { status: "timeout" };
|
|
87
|
+
const reason = r.stderr.trim() || `終了コード ${r.code}`;
|
|
88
|
+
if (platform === "darwin") {
|
|
89
|
+
if (r.code !== 0)
|
|
90
|
+
return /\(-128\)/.test(r.stderr) ? { status: "cancel" } : { status: "unavailable", reason };
|
|
91
|
+
const out = stripFinalNewline(r.stdout);
|
|
92
|
+
if (out === GAVE_UP)
|
|
93
|
+
return { status: "timeout" };
|
|
94
|
+
if (!out.startsWith(VALUE_PREFIX))
|
|
95
|
+
return { status: "unavailable", reason: "入力画面から思わぬ応答が返りました" };
|
|
96
|
+
return valueOrEmpty(out.slice(VALUE_PREFIX.length));
|
|
97
|
+
}
|
|
98
|
+
if (platform === "win32") {
|
|
99
|
+
if (r.code === 0)
|
|
100
|
+
return valueOrEmpty(r.stdout);
|
|
101
|
+
if (r.code === approval_1.WIN_DIALOG_NO)
|
|
102
|
+
return { status: "cancel" };
|
|
103
|
+
if (r.code === approval_1.WIN_DIALOG_TIMEOUT)
|
|
104
|
+
return { status: "timeout" };
|
|
105
|
+
return { status: "unavailable", reason };
|
|
106
|
+
}
|
|
107
|
+
if (r.code === 0)
|
|
108
|
+
return valueOrEmpty(stripFinalNewline(r.stdout));
|
|
109
|
+
if (r.code === 1)
|
|
110
|
+
return { status: "cancel" };
|
|
111
|
+
if (cmd === "zenity" && r.code === 5)
|
|
112
|
+
return { status: "timeout" };
|
|
113
|
+
return { status: "unavailable", reason };
|
|
114
|
+
}
|
|
115
|
+
/** 本人に OS の入力画面で値を入れてもらう(実物)。画面を出せない環境では "unavailable"。 */
|
|
116
|
+
const inputFromHuman = (message) => {
|
|
117
|
+
const env = process.env;
|
|
118
|
+
const c = inputDialogCommand(process.platform, message, env, (cmd) => (0, approval_1.onPath)(cmd, env));
|
|
119
|
+
if (!c)
|
|
120
|
+
return Promise.resolve({ status: "unavailable" });
|
|
121
|
+
return new Promise((resolve) => {
|
|
122
|
+
(0, child_process_1.execFile)(c.cmd, c.args, { env: { ...env, ...(c.env ?? {}) }, timeout: c.killAfterMs, windowsHide: false }, (err, stdout, stderr) => {
|
|
123
|
+
const e = err;
|
|
124
|
+
if (e && typeof e.code === "string") {
|
|
125
|
+
resolve({ status: "unavailable", reason: e.message });
|
|
126
|
+
return;
|
|
127
|
+
} // 起動できない(ENOENT 等)
|
|
128
|
+
const code = e ? (typeof e.code === "number" ? e.code : 1) : 0;
|
|
129
|
+
resolve(interpretInput(process.platform, { code, stdout: String(stdout ?? ""), stderr: String(stderr ?? ""), killed: Boolean(e?.killed) }, c.cmd));
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
};
|
|
133
|
+
exports.inputFromHuman = inputFromHuman;
|
|
134
|
+
/**
|
|
135
|
+
* ask_secret の中身。AI に返す文を作る(値は決して含めない)。
|
|
136
|
+
* sites を省く・空にすると、入れてよいサイトは今のまま(ここで外すと get_secret で値を取り出せるようになるため。外すのは set_secret_sites)。
|
|
137
|
+
*/
|
|
138
|
+
function badSitesText(bad) {
|
|
139
|
+
return `保存していません: サイトをドメインとして読めません(${bad.join(", ")})。example.com の形で渡してください。`;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* CLI の `secret set --stdin-json` が標準入力から受け取る1つの JSON({"name","value","sites"?})を読む(VS Code 拡張の「パスワードを保存」が使う)。
|
|
143
|
+
* 値は受け取ったまま使う(空白を外さない)。読めなければ error(日本語1行。値は含めない)。
|
|
144
|
+
*/
|
|
145
|
+
function parseSetRequest(text) {
|
|
146
|
+
let o;
|
|
147
|
+
// JSON.parse の理由には入力の一部が載ることがあるので出さない(値を漏らさない)
|
|
148
|
+
try {
|
|
149
|
+
o = JSON.parse(text);
|
|
150
|
+
}
|
|
151
|
+
catch {
|
|
152
|
+
return { error: "保存していません: 標準入力を JSON として読めません。" };
|
|
153
|
+
}
|
|
154
|
+
if (!o || typeof o !== "object" || Array.isArray(o))
|
|
155
|
+
return { error: "保存していません: 標準入力が {\"name\", \"value\", \"sites\"} の形ではありません。" };
|
|
156
|
+
const { name, value, sites } = o;
|
|
157
|
+
if (typeof name !== "string" || !name)
|
|
158
|
+
return { error: "保存していません: 名前(name)がありません。" };
|
|
159
|
+
if (typeof value !== "string" || !value)
|
|
160
|
+
return { error: "保存していません: 値(value)が空です。" };
|
|
161
|
+
if (sites !== undefined && (!Array.isArray(sites) || sites.some((x) => typeof x !== "string"))) {
|
|
162
|
+
return { error: "保存していません: サイト(sites)は文字列の配列で渡してください。" };
|
|
163
|
+
}
|
|
164
|
+
const n = (0, secretSites_1.normalizeSites)(sites ?? []);
|
|
165
|
+
if (n.bad.length)
|
|
166
|
+
return { error: badSitesText(n.bad) };
|
|
167
|
+
return { name, value, sites: n.sites };
|
|
168
|
+
}
|
|
169
|
+
async function askSecret(name, sites, deps) {
|
|
170
|
+
const normalized = (0, secretSites_1.normalizeSites)(sites ?? []);
|
|
171
|
+
if (normalized.bad.length)
|
|
172
|
+
return badSitesText(normalized.bad);
|
|
173
|
+
const given = normalized.sites.length ? normalized.sites : null;
|
|
174
|
+
const shown = given ?? deps.currentSites(name);
|
|
175
|
+
const r = await deps.input(inputMessage(name, shown, deps.exists(name)));
|
|
176
|
+
switch (r.status) {
|
|
177
|
+
case "cancel": return `保存していません: ユーザーが入力画面でキャンセルしました。`;
|
|
178
|
+
case "timeout": return `保存していません: ${exports.INPUT_TIMEOUT_SEC} 秒以内に入力がありませんでした。もう一度呼ぶ前にユーザーに確かめてください。`;
|
|
179
|
+
case "empty": return `保存していません: 値が空のまま「${exports.SAVE_LABEL}」が押されました。`;
|
|
180
|
+
case "unavailable":
|
|
181
|
+
return `保存していません: この PC では入力画面を出せませんでした${r.reason ? `(${r.reason})` : ""}。` +
|
|
182
|
+
`ユーザーに端末で \`${deps.command} secret set ${name}${given ? ` --sites ${given.join(",")}` : ""}\` を実行してもらってください` +
|
|
183
|
+
"(入力は画面に表示されません)。値をチャットに貼ってもらわないでください。";
|
|
184
|
+
}
|
|
185
|
+
deps.save(name, r.value, given);
|
|
186
|
+
return `${name} を保存しました(入れてよいサイト: ${shown.length ? shown.join(", ") : "なし"})。値は受け取っていません。` +
|
|
187
|
+
(shown.length ? "すぐに browser_fill_secret で使えます。"
|
|
188
|
+
: (0, secretSites_1.looksLikeSiteLogin)(name) ? "Web サイトのログイン用なら、どのサイトかユーザーに確かめて set_secret_sites で決めてください。" : "");
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=secretInput.js.map
|
package/dist/secretSites.js
CHANGED
|
@@ -5,6 +5,8 @@
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.normalizeSite = normalizeSite;
|
|
7
7
|
exports.siteAllows = siteAllows;
|
|
8
|
+
exports.normalizeSites = normalizeSites;
|
|
9
|
+
exports.looksLikeSiteLogin = looksLikeSiteLogin;
|
|
8
10
|
/** 入力(URL・ドメイン)をドメイン名にそろえる。ドメインと読めなければ null。 */
|
|
9
11
|
function normalizeSite(input) {
|
|
10
12
|
let s = input.trim().toLowerCase();
|
|
@@ -28,4 +30,24 @@ function siteAllows(sites, hostname) {
|
|
|
28
30
|
const h = hostname.toLowerCase();
|
|
29
31
|
return sites.some((s) => h === s || h.endsWith(`.${s}`));
|
|
30
32
|
}
|
|
33
|
+
/** 渡されたサイトをそろえる。読めないものがあれば bad に並べる(そのときは保存しない)。 */
|
|
34
|
+
function normalizeSites(inputs) {
|
|
35
|
+
const sites = [];
|
|
36
|
+
const bad = [];
|
|
37
|
+
for (const s of inputs) {
|
|
38
|
+
const n = normalizeSite(s);
|
|
39
|
+
if (!n)
|
|
40
|
+
bad.push(s);
|
|
41
|
+
else if (!sites.includes(n))
|
|
42
|
+
sites.push(n);
|
|
43
|
+
}
|
|
44
|
+
return { sites, bad };
|
|
45
|
+
}
|
|
46
|
+
// サイトのログインに使う秘密らしい名前(list_secrets で「入れてよいサイト:未設定」と目印を付け、AI にユーザーへ確かめさせる)。
|
|
47
|
+
// API キーやトークンは入力欄に入れるものではないので外す
|
|
48
|
+
const LOGIN_NAME = /PASS(WORD|WD)?|(^|[^A-Z])PW([^A-Z]|$)|PWD|LOGIN|SIGN_?IN|ACCOUNT|パスワード|ログイン|アカウント|暗証/i;
|
|
49
|
+
const NOT_LOGIN = /API|TOKEN|(^|[^A-Z])KEY([^A-Z]|$)|SECRET_KEY|WEBHOOK/i;
|
|
50
|
+
function looksLikeSiteLogin(name) {
|
|
51
|
+
return LOGIN_NAME.test(name) && !NOT_LOGIN.test(name);
|
|
52
|
+
}
|
|
31
53
|
//# sourceMappingURL=secretSites.js.map
|
package/dist/vault.d.ts
CHANGED
|
@@ -14,13 +14,19 @@ export declare function readSecretSites(): Record<string, string[]>;
|
|
|
14
14
|
/** 入れてよいサイトを決め直す(空の配列なら外す)。サイトはドメイン名にそろえたもの(secretSites.normalizeSite)を渡す。 */
|
|
15
15
|
export declare function setSecretSites(name: string, sites: string[]): void;
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
17
|
+
* ブラウザへ値を見せずに入れる道具(playwright-profile-mcp の browser_fill_secret)に渡す材料を、呼ばれたその時の金庫から作る。
|
|
18
|
+
* 入れてよいサイトが決まっていない秘密は値を返さない(fillSecretHelper.ts)。
|
|
19
19
|
*/
|
|
20
|
-
export
|
|
20
|
+
export type FillableSecret = {
|
|
21
|
+
status: "ok";
|
|
21
22
|
value: string;
|
|
22
23
|
sites: string[];
|
|
23
|
-
}
|
|
24
|
+
} | {
|
|
25
|
+
status: "missing";
|
|
26
|
+
} | {
|
|
27
|
+
status: "no_sites";
|
|
28
|
+
};
|
|
29
|
+
export declare function fillableSecret(name: string): FillableSecret;
|
|
24
30
|
export declare function listSecretNames(): string[];
|
|
25
31
|
export interface StoredTokens {
|
|
26
32
|
jwt: string;
|
package/dist/vault.js
CHANGED
|
@@ -30,7 +30,7 @@ exports.setSecret = setSecret;
|
|
|
30
30
|
exports.deleteSecret = deleteSecret;
|
|
31
31
|
exports.readSecretSites = readSecretSites;
|
|
32
32
|
exports.setSecretSites = setSecretSites;
|
|
33
|
-
exports.
|
|
33
|
+
exports.fillableSecret = fillableSecret;
|
|
34
34
|
exports.listSecretNames = listSecretNames;
|
|
35
35
|
exports.readTokens = readTokens;
|
|
36
36
|
exports.saveTokens = saveTokens;
|
|
@@ -368,18 +368,12 @@ function setSecretSites(name, sites) {
|
|
|
368
368
|
vaultKey();
|
|
369
369
|
withVaultLock(() => writeSites(name, sites));
|
|
370
370
|
}
|
|
371
|
-
|
|
372
|
-
* 入れてよいサイトが決まっている秘密だけを、名前→{値・サイト}で返す(ブラウザへ値を見せずに入れる道具に渡す材料)。
|
|
373
|
-
* サイトの決まっていない秘密は含めない。
|
|
374
|
-
*/
|
|
375
|
-
function fillableSecrets() {
|
|
371
|
+
function fillableSecret(name) {
|
|
376
372
|
const secrets = readSecrets();
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
}
|
|
382
|
-
return out;
|
|
373
|
+
if (!Object.prototype.hasOwnProperty.call(secrets, name))
|
|
374
|
+
return { status: "missing" };
|
|
375
|
+
const sites = readSecretSites()[name] ?? [];
|
|
376
|
+
return sites.length ? { status: "ok", value: secrets[name], sites } : { status: "no_sites" };
|
|
383
377
|
}
|
|
384
378
|
// 値は返さず名前だけ列挙する(露出を避ける)
|
|
385
379
|
function listSecretNames() {
|
package/mod/hooks/words.js
CHANGED
|
@@ -19,8 +19,10 @@ export const TOOL_LABELS = {
|
|
|
19
19
|
load_knowledge: '手順書を読んでいます',
|
|
20
20
|
get_secret: '金庫から取り出す',
|
|
21
21
|
store_secret: '金庫にしまう',
|
|
22
|
+
ask_secret: 'パスワードを入れてもらう',
|
|
22
23
|
list_secrets: '金庫の中を見る',
|
|
23
24
|
delete_secret: '金庫から消す',
|
|
25
|
+
set_secret_sites: '金庫の秘密を入れてよいサイトを決める',
|
|
24
26
|
install_mcp: '道具を入れる',
|
|
25
27
|
uninstall_mcp: '道具を外す',
|
|
26
28
|
list_mcps: '道具の一覧',
|