@hopping-dev/hub 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/hopping-skill/SKILL.md +221 -0
- package/dist/approval/manager.d.ts +60 -0
- package/dist/approval/manager.d.ts.map +1 -0
- package/dist/approval/manager.js +101 -0
- package/dist/approval/manager.js.map +1 -0
- package/dist/approval/session-memory.d.ts +37 -0
- package/dist/approval/session-memory.d.ts.map +1 -0
- package/dist/approval/session-memory.js +63 -0
- package/dist/approval/session-memory.js.map +1 -0
- package/dist/cli/config-writer.d.ts +57 -0
- package/dist/cli/config-writer.d.ts.map +1 -0
- package/dist/cli/config-writer.js +318 -0
- package/dist/cli/config-writer.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +82 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/path-resolver.d.ts +48 -0
- package/dist/cli/path-resolver.d.ts.map +1 -0
- package/dist/cli/path-resolver.js +212 -0
- package/dist/cli/path-resolver.js.map +1 -0
- package/dist/cli/setup.d.ts +10 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +268 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/cloud/connector.d.ts +74 -0
- package/dist/cloud/connector.d.ts.map +1 -0
- package/dist/cloud/connector.js +524 -0
- package/dist/cloud/connector.js.map +1 -0
- package/dist/cloud/index.d.ts +3 -0
- package/dist/cloud/index.d.ts.map +1 -0
- package/dist/cloud/index.js +6 -0
- package/dist/cloud/index.js.map +1 -0
- package/dist/config/manager.d.ts +76 -0
- package/dist/config/manager.d.ts.map +1 -0
- package/dist/config/manager.js +296 -0
- package/dist/config/manager.js.map +1 -0
- package/dist/dev-mode.d.ts +30 -0
- package/dist/dev-mode.d.ts.map +1 -0
- package/dist/dev-mode.js +53 -0
- package/dist/dev-mode.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +354 -0
- package/dist/index.js.map +1 -0
- package/dist/ipc/index.d.ts +12 -0
- package/dist/ipc/index.d.ts.map +1 -0
- package/dist/ipc/index.js +15 -0
- package/dist/ipc/index.js.map +1 -0
- package/dist/ipc/watcher.d.ts +226 -0
- package/dist/ipc/watcher.d.ts.map +1 -0
- package/dist/ipc/watcher.js +745 -0
- package/dist/ipc/watcher.js.map +1 -0
- package/dist/local/approval-dialog.d.ts +30 -0
- package/dist/local/approval-dialog.d.ts.map +1 -0
- package/dist/local/approval-dialog.js +214 -0
- package/dist/local/approval-dialog.js.map +1 -0
- package/dist/local/index.d.ts +8 -0
- package/dist/local/index.d.ts.map +1 -0
- package/dist/local/index.js +13 -0
- package/dist/local/index.js.map +1 -0
- package/dist/local/local-approval.d.ts +55 -0
- package/dist/local/local-approval.d.ts.map +1 -0
- package/dist/local/local-approval.js +125 -0
- package/dist/local/local-approval.js.map +1 -0
- package/dist/local/notifier.d.ts +19 -0
- package/dist/local/notifier.d.ts.map +1 -0
- package/dist/local/notifier.js +110 -0
- package/dist/local/notifier.js.map +1 -0
- package/dist/local/sanitize.d.ts +20 -0
- package/dist/local/sanitize.d.ts.map +1 -0
- package/dist/local/sanitize.js +28 -0
- package/dist/local/sanitize.js.map +1 -0
- package/dist/mcp/file-extractor.d.ts +11 -0
- package/dist/mcp/file-extractor.d.ts.map +1 -0
- package/dist/mcp/file-extractor.js +74 -0
- package/dist/mcp/file-extractor.js.map +1 -0
- package/dist/mcp/risk-level.d.ts +44 -0
- package/dist/mcp/risk-level.d.ts.map +1 -0
- package/dist/mcp/risk-level.js +127 -0
- package/dist/mcp/risk-level.js.map +1 -0
- package/dist/mcp/schemas.d.ts +83 -0
- package/dist/mcp/schemas.d.ts.map +1 -0
- package/dist/mcp/schemas.js +84 -0
- package/dist/mcp/schemas.js.map +1 -0
- package/dist/mcp/summary.d.ts +11 -0
- package/dist/mcp/summary.d.ts.map +1 -0
- package/dist/mcp/summary.js +150 -0
- package/dist/mcp/summary.js.map +1 -0
- package/dist/mcp/tools.d.ts +45 -0
- package/dist/mcp/tools.d.ts.map +1 -0
- package/dist/mcp/tools.js +1217 -0
- package/dist/mcp/tools.js.map +1 -0
- package/dist/pairing/auto-pairing.d.ts +37 -0
- package/dist/pairing/auto-pairing.d.ts.map +1 -0
- package/dist/pairing/auto-pairing.js +144 -0
- package/dist/pairing/auto-pairing.js.map +1 -0
- package/dist/pairing/binding-poller.d.ts +26 -0
- package/dist/pairing/binding-poller.d.ts.map +1 -0
- package/dist/pairing/binding-poller.js +108 -0
- package/dist/pairing/binding-poller.js.map +1 -0
- package/dist/pairing/pairing-server.d.ts +14 -0
- package/dist/pairing/pairing-server.d.ts.map +1 -0
- package/dist/pairing/pairing-server.js +277 -0
- package/dist/pairing/pairing-server.js.map +1 -0
- package/dist/pairing/qr-display.d.ts +14 -0
- package/dist/pairing/qr-display.d.ts.map +1 -0
- package/dist/pairing/qr-display.js +40 -0
- package/dist/pairing/qr-display.js.map +1 -0
- package/dist/policy/engine.d.ts +31 -0
- package/dist/policy/engine.d.ts.map +1 -0
- package/dist/policy/engine.js +187 -0
- package/dist/policy/engine.js.map +1 -0
- package/dist/policy/store.d.ts +26 -0
- package/dist/policy/store.d.ts.map +1 -0
- package/dist/policy/store.js +70 -0
- package/dist/policy/store.js.map +1 -0
- package/dist/policy/system-policies.d.ts +15 -0
- package/dist/policy/system-policies.d.ts.map +1 -0
- package/dist/policy/system-policies.js +265 -0
- package/dist/policy/system-policies.js.map +1 -0
- package/dist/policy/tool-mapping.d.ts +45 -0
- package/dist/policy/tool-mapping.d.ts.map +1 -0
- package/dist/policy/tool-mapping.js +88 -0
- package/dist/policy/tool-mapping.js.map +1 -0
- package/dist/policy/tool-registry.json +85 -0
- package/dist/store/db.d.ts +17 -0
- package/dist/store/db.d.ts.map +1 -0
- package/dist/store/db.js +193 -0
- package/dist/store/db.js.map +1 -0
- package/dist/store/index.d.ts +4 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +7 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/metadata.d.ts +31 -0
- package/dist/store/metadata.d.ts.map +1 -0
- package/dist/store/metadata.js +178 -0
- package/dist/store/metadata.js.map +1 -0
- package/dist/store/operations.d.ts +26 -0
- package/dist/store/operations.d.ts.map +1 -0
- package/dist/store/operations.js +171 -0
- package/dist/store/operations.js.map +1 -0
- package/dist/utils/json.d.ts +7 -0
- package/dist/utils/json.d.ts.map +1 -0
- package/dist/utils/json.js +33 -0
- package/dist/utils/json.js.map +1 -0
- package/dist/utils/logger.d.ts +13 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +58 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/open-browser.d.ts +8 -0
- package/dist/utils/open-browser.d.ts.map +1 -0
- package/dist/utils/open-browser.js +38 -0
- package/dist/utils/open-browser.js.map +1 -0
- package/node_modules/@hopping/shared/dist/types.d.ts +649 -0
- package/node_modules/@hopping/shared/dist/types.js +48 -0
- package/node_modules/@hopping/shared/dist/types.js.map +1 -0
- package/node_modules/@hopping/shared/package.json +14 -0
- package/node_modules/@hopping/shared/tsconfig.json +16 -0
- package/node_modules/@hopping/shared/types.d.ts +650 -0
- package/node_modules/@hopping/shared/types.d.ts.map +1 -0
- package/node_modules/@hopping/shared/types.js +48 -0
- package/node_modules/@hopping/shared/types.js.map +1 -0
- package/node_modules/@hopping/shared/types.ts +895 -0
- package/package.json +52 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { CloudConnector } from '../cloud/connector';
|
|
2
|
+
import type { ApprovalManager } from '../approval/manager';
|
|
3
|
+
import type { HubDatabase } from '../store';
|
|
4
|
+
import type { Logger } from '../utils/logger';
|
|
5
|
+
import type { ConfigManager } from '../config/manager';
|
|
6
|
+
export interface AutoPairingOptions {
|
|
7
|
+
cloudUrl: string;
|
|
8
|
+
configManager: ConfigManager;
|
|
9
|
+
logger: Logger;
|
|
10
|
+
approvalManager: ApprovalManager;
|
|
11
|
+
store?: HubDatabase;
|
|
12
|
+
onCloudConnectorUpdate: (connector: CloudConnector) => void;
|
|
13
|
+
signal?: AbortSignal;
|
|
14
|
+
}
|
|
15
|
+
export interface AutoPairingResult {
|
|
16
|
+
agentId: string;
|
|
17
|
+
agentName: string;
|
|
18
|
+
connectedToCloud: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* startAutoPairing — 完整自動配對流程編排
|
|
22
|
+
*
|
|
23
|
+
* 流程:
|
|
24
|
+
* 1. POST /agents/register → 取得 { agentId, token, pairingCode }
|
|
25
|
+
* 2. saveAfterPairing → 存入 ~/.hopping/config.json
|
|
26
|
+
* 3. displayQRCode → stderr 顯示 QR
|
|
27
|
+
* 3.5. startPairingServer → 本機 HTTP server(PNG QR 頁面)+ openBrowser(graceful degradation)
|
|
28
|
+
* 4. pollBindingStatus → 每 3s 輪詢直到 bound=true
|
|
29
|
+
* 4.5. pairingServer.notifyPaired() → 頁面更新為成功 + 2s 後 server 自動關閉
|
|
30
|
+
* 5. 建立 CloudConnector → connect() → 通知 onCloudConnectorUpdate
|
|
31
|
+
*
|
|
32
|
+
* 錯誤處理:
|
|
33
|
+
* - register 失敗 → reject(Hub 繼續以 local-only 模式運行,由呼叫者處理)
|
|
34
|
+
* - CloudConnector.connect() 失敗 → resolve with connectedToCloud: false(自動重連)
|
|
35
|
+
*/
|
|
36
|
+
export declare function startAutoPairing(opts: AutoPairingOptions): Promise<AutoPairingResult>;
|
|
37
|
+
//# sourceMappingURL=auto-pairing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-pairing.d.ts","sourceRoot":"","sources":["../../src/pairing/auto-pairing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAYvD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,aAAa,CAAC;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,eAAe,EAAE,eAAe,CAAC;IACjC,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,sBAAsB,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5D,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAMD;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA+I3F"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.startAutoPairing = startAutoPairing;
|
|
4
|
+
const connector_1 = require("../cloud/connector");
|
|
5
|
+
const qr_display_1 = require("./qr-display");
|
|
6
|
+
const binding_poller_1 = require("./binding-poller");
|
|
7
|
+
const pairing_server_1 = require("./pairing-server");
|
|
8
|
+
const open_browser_1 = require("../utils/open-browser");
|
|
9
|
+
// ============================================
|
|
10
|
+
// startAutoPairing
|
|
11
|
+
// ============================================
|
|
12
|
+
/**
|
|
13
|
+
* startAutoPairing — 完整自動配對流程編排
|
|
14
|
+
*
|
|
15
|
+
* 流程:
|
|
16
|
+
* 1. POST /agents/register → 取得 { agentId, token, pairingCode }
|
|
17
|
+
* 2. saveAfterPairing → 存入 ~/.hopping/config.json
|
|
18
|
+
* 3. displayQRCode → stderr 顯示 QR
|
|
19
|
+
* 3.5. startPairingServer → 本機 HTTP server(PNG QR 頁面)+ openBrowser(graceful degradation)
|
|
20
|
+
* 4. pollBindingStatus → 每 3s 輪詢直到 bound=true
|
|
21
|
+
* 4.5. pairingServer.notifyPaired() → 頁面更新為成功 + 2s 後 server 自動關閉
|
|
22
|
+
* 5. 建立 CloudConnector → connect() → 通知 onCloudConnectorUpdate
|
|
23
|
+
*
|
|
24
|
+
* 錯誤處理:
|
|
25
|
+
* - register 失敗 → reject(Hub 繼續以 local-only 模式運行,由呼叫者處理)
|
|
26
|
+
* - CloudConnector.connect() 失敗 → resolve with connectedToCloud: false(自動重連)
|
|
27
|
+
*/
|
|
28
|
+
async function startAutoPairing(opts) {
|
|
29
|
+
const { cloudUrl, configManager, logger, approvalManager, store, onCloudConnectorUpdate, signal, } = opts;
|
|
30
|
+
// ── Step 1: 向 Cloud 註冊(userId=null 狀態)──────────────────────────────
|
|
31
|
+
logger.info('Auto-pairing:向 Cloud 註冊 Agent...');
|
|
32
|
+
const registerUrl = `${cloudUrl}/api/v1/agents/register`;
|
|
33
|
+
let agentId;
|
|
34
|
+
let token;
|
|
35
|
+
let pairingCode;
|
|
36
|
+
try {
|
|
37
|
+
const response = await fetch(registerUrl, {
|
|
38
|
+
method: 'POST',
|
|
39
|
+
headers: { 'Content-Type': 'application/json' },
|
|
40
|
+
body: JSON.stringify({
|
|
41
|
+
name: `Hub-${Date.now()}`,
|
|
42
|
+
agentType: 'generic_mcp',
|
|
43
|
+
}),
|
|
44
|
+
signal,
|
|
45
|
+
});
|
|
46
|
+
if (!response.ok) {
|
|
47
|
+
throw new Error(`Register failed: HTTP ${response.status}`);
|
|
48
|
+
}
|
|
49
|
+
const wrapped = (await response.json());
|
|
50
|
+
const data = wrapped.data;
|
|
51
|
+
agentId = data.agentId;
|
|
52
|
+
token = data.token;
|
|
53
|
+
pairingCode = data.pairingCode;
|
|
54
|
+
logger.info('Auto-pairing:Agent 已註冊', { agentId, pairingCode });
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
if (err instanceof Error && err.name === 'AbortError') {
|
|
58
|
+
throw err;
|
|
59
|
+
}
|
|
60
|
+
logger.error('Auto-pairing:向 Cloud 註冊失敗', {
|
|
61
|
+
error: err instanceof Error ? err.message : 'Unknown error',
|
|
62
|
+
});
|
|
63
|
+
throw err;
|
|
64
|
+
}
|
|
65
|
+
// ── Step 2: 儲存 token 至本地設定 ─────────────────────────────────────────
|
|
66
|
+
await configManager.saveAfterPairing(agentId, token, cloudUrl);
|
|
67
|
+
logger.info('Auto-pairing:token 已儲存至 ~/.hopping/config.json');
|
|
68
|
+
// ── Step 3: 在 stderr 顯示 QR Code ───────────────────────────────────────
|
|
69
|
+
await (0, qr_display_1.displayQRCode)(pairingCode, { cloudUrl });
|
|
70
|
+
// ── Step 3.5: 啟動本機配對 Web Server + 開瀏覽器(graceful degradation)─
|
|
71
|
+
let pairingServer = null;
|
|
72
|
+
try {
|
|
73
|
+
pairingServer = await (0, pairing_server_1.startPairingServer)({ pairingCode, token, cloudUrl, signal });
|
|
74
|
+
logger.info('Auto-pairing:配對頁面已啟動', { url: pairingServer.url });
|
|
75
|
+
process.stderr.write(`[HopPing] 配對頁面:${pairingServer.url}\n`);
|
|
76
|
+
await (0, open_browser_1.openBrowser)(pairingServer.url);
|
|
77
|
+
}
|
|
78
|
+
catch (err) {
|
|
79
|
+
logger.warn('Auto-pairing:無法啟動本機配對 Server,繼續使用 ASCII QR', {
|
|
80
|
+
error: err instanceof Error ? err.message : 'Unknown error',
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
// ── Step 4: 輪詢 binding-status ──────────────────────────────────────────
|
|
84
|
+
logger.info('Auto-pairing:等待手機掃碼綁定...');
|
|
85
|
+
let bindingResult;
|
|
86
|
+
try {
|
|
87
|
+
bindingResult = await (0, binding_poller_1.pollBindingStatus)({
|
|
88
|
+
token,
|
|
89
|
+
cloudUrl,
|
|
90
|
+
intervalMs: 3000,
|
|
91
|
+
maxAttempts: 0, // 無限輪詢
|
|
92
|
+
signal,
|
|
93
|
+
});
|
|
94
|
+
logger.info('Auto-pairing:Mobile 已掃碼綁定', {
|
|
95
|
+
agentId: bindingResult.agentId,
|
|
96
|
+
name: bindingResult.name,
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
catch (err) {
|
|
100
|
+
if (err instanceof Error && err.name === 'AbortError') {
|
|
101
|
+
void pairingServer?.close().catch(() => { });
|
|
102
|
+
throw err;
|
|
103
|
+
}
|
|
104
|
+
logger.error('Auto-pairing:輪詢 binding-status 失敗', {
|
|
105
|
+
error: err instanceof Error ? err.message : 'Unknown error',
|
|
106
|
+
});
|
|
107
|
+
void pairingServer?.close().catch(() => { });
|
|
108
|
+
throw err;
|
|
109
|
+
}
|
|
110
|
+
// ── Step 4.5: 通知配對頁面成功(頁面更新 + 2s 後 server 自動關閉)────────
|
|
111
|
+
pairingServer?.notifyPaired();
|
|
112
|
+
// ── Step 5: 建立 CloudConnector 並連線 ───────────────────────────────────
|
|
113
|
+
const cloudConnector = new connector_1.CloudConnector({
|
|
114
|
+
cloudUrl,
|
|
115
|
+
agentToken: token,
|
|
116
|
+
logger,
|
|
117
|
+
approvalManager,
|
|
118
|
+
store,
|
|
119
|
+
});
|
|
120
|
+
onCloudConnectorUpdate(cloudConnector);
|
|
121
|
+
let connectedToCloud = false;
|
|
122
|
+
try {
|
|
123
|
+
await cloudConnector.connect();
|
|
124
|
+
connectedToCloud = cloudConnector.isConnected;
|
|
125
|
+
if (connectedToCloud) {
|
|
126
|
+
logger.info('Auto-pairing:Cloud Gateway 已連線');
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
logger.warn('Auto-pairing:Cloud Gateway 初始連線超時,自動重連中');
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
catch (err) {
|
|
133
|
+
logger.error('Auto-pairing:CloudConnector.connect() 失敗,自動重連中', {
|
|
134
|
+
error: err instanceof Error ? err.message : 'Unknown error',
|
|
135
|
+
});
|
|
136
|
+
// connect() 失敗不 throw,Hub 以 local-only 模式繼續運行並自動重連
|
|
137
|
+
}
|
|
138
|
+
return {
|
|
139
|
+
agentId: bindingResult.agentId,
|
|
140
|
+
agentName: bindingResult.name,
|
|
141
|
+
connectedToCloud,
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=auto-pairing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auto-pairing.js","sourceRoot":"","sources":["../../src/pairing/auto-pairing.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export interface BindingResult {
|
|
2
|
+
agentId: string;
|
|
3
|
+
name: string;
|
|
4
|
+
agentType: string;
|
|
5
|
+
}
|
|
6
|
+
export interface PollBindingStatusOptions {
|
|
7
|
+
token: string;
|
|
8
|
+
cloudUrl: string;
|
|
9
|
+
/** 輪詢間隔(毫秒),預設 3000 */
|
|
10
|
+
intervalMs?: number;
|
|
11
|
+
/** 最大嘗試次數,0 = 無限,預設 0 */
|
|
12
|
+
maxAttempts?: number;
|
|
13
|
+
/** 取消訊號(Hub shutdown 時使用) */
|
|
14
|
+
signal?: AbortSignal;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* pollBindingStatus — 輪詢 binding-status 直到 bound=true
|
|
18
|
+
*
|
|
19
|
+
* - 每 intervalMs 毫秒呼叫 GET /agents/binding-status
|
|
20
|
+
* - 網路錯誤 → 靜默重試(debug log)
|
|
21
|
+
* - HTTP 401/403 → 立即 reject(token 無效)
|
|
22
|
+
* - HTTP 429 → 暫時將間隔加倍
|
|
23
|
+
* - signal.aborted → reject with AbortError
|
|
24
|
+
*/
|
|
25
|
+
export declare function pollBindingStatus(opts: PollBindingStatusOptions): Promise<BindingResult>;
|
|
26
|
+
//# sourceMappingURL=binding-poller.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binding-poller.d.ts","sourceRoot":"","sources":["../../src/pairing/binding-poller.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yBAAyB;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6BAA6B;IAC7B,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,aAAa,CAAC,CA6E9F"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// ============================================
|
|
3
|
+
// Binding Poller — 輪詢 GET /agents/binding-status
|
|
4
|
+
// ============================================
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.pollBindingStatus = pollBindingStatus;
|
|
7
|
+
/**
|
|
8
|
+
* pollBindingStatus — 輪詢 binding-status 直到 bound=true
|
|
9
|
+
*
|
|
10
|
+
* - 每 intervalMs 毫秒呼叫 GET /agents/binding-status
|
|
11
|
+
* - 網路錯誤 → 靜默重試(debug log)
|
|
12
|
+
* - HTTP 401/403 → 立即 reject(token 無效)
|
|
13
|
+
* - HTTP 429 → 暫時將間隔加倍
|
|
14
|
+
* - signal.aborted → reject with AbortError
|
|
15
|
+
*/
|
|
16
|
+
async function pollBindingStatus(opts) {
|
|
17
|
+
const { token, cloudUrl, intervalMs = 3000, maxAttempts = 0, signal } = opts;
|
|
18
|
+
const url = `${cloudUrl}/api/v1/agents/binding-status`;
|
|
19
|
+
let attempts = 0;
|
|
20
|
+
let currentInterval = intervalMs;
|
|
21
|
+
while (true) {
|
|
22
|
+
// 檢查取消訊號
|
|
23
|
+
if (signal?.aborted) {
|
|
24
|
+
const err = new Error('Polling aborted');
|
|
25
|
+
err.name = 'AbortError';
|
|
26
|
+
throw err;
|
|
27
|
+
}
|
|
28
|
+
attempts++;
|
|
29
|
+
try {
|
|
30
|
+
const response = await fetch(url, {
|
|
31
|
+
headers: { Authorization: `Bearer ${token}` },
|
|
32
|
+
signal,
|
|
33
|
+
});
|
|
34
|
+
if (response.status === 401 || response.status === 403) {
|
|
35
|
+
throw new Error(`Authentication failed: HTTP ${response.status}`);
|
|
36
|
+
}
|
|
37
|
+
if (response.status === 429) {
|
|
38
|
+
// Rate limited → 暫時將間隔加倍,然後繼續等待
|
|
39
|
+
currentInterval = intervalMs * 2;
|
|
40
|
+
}
|
|
41
|
+
else if (response.ok) {
|
|
42
|
+
// 成功回應 → 重置間隔
|
|
43
|
+
currentInterval = intervalMs;
|
|
44
|
+
const wrapped = (await response.json());
|
|
45
|
+
const data = wrapped.data;
|
|
46
|
+
if (data.bound) {
|
|
47
|
+
return {
|
|
48
|
+
agentId: data.agentId,
|
|
49
|
+
name: data.name,
|
|
50
|
+
agentType: data.agentType,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
catch (err) {
|
|
56
|
+
// 401/403 直接拋出
|
|
57
|
+
if (err instanceof Error && err.message.startsWith('Authentication failed')) {
|
|
58
|
+
throw err;
|
|
59
|
+
}
|
|
60
|
+
// AbortError 直接拋出
|
|
61
|
+
if (err instanceof Error && err.name === 'AbortError') {
|
|
62
|
+
throw err;
|
|
63
|
+
}
|
|
64
|
+
// 其他網路錯誤 → 靜默繼續(下次再試)
|
|
65
|
+
}
|
|
66
|
+
// 檢查最大嘗試次數
|
|
67
|
+
if (maxAttempts > 0 && attempts >= maxAttempts) {
|
|
68
|
+
throw new Error(`Max attempts (${maxAttempts}) reached without binding`);
|
|
69
|
+
}
|
|
70
|
+
// 等待下一次輪詢
|
|
71
|
+
await sleep(currentInterval, signal);
|
|
72
|
+
// 等待後重置 429 的加倍間隔(下次用原始間隔)
|
|
73
|
+
if (currentInterval !== intervalMs) {
|
|
74
|
+
currentInterval = intervalMs;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
// Fix: { once: true } 只在事件觸發時自動移除 listener——若 abort 從未發生,
|
|
79
|
+
// listener 會隨每次 poll iteration 累積造成記憶體洩漏。
|
|
80
|
+
// 修正方式:timer resolve 時手動 removeEventListener。
|
|
81
|
+
function sleep(ms, signal) {
|
|
82
|
+
return new Promise((resolve, reject) => {
|
|
83
|
+
if (signal?.aborted) {
|
|
84
|
+
const err = new Error('Polling aborted');
|
|
85
|
+
err.name = 'AbortError';
|
|
86
|
+
reject(err);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
let onAbort;
|
|
90
|
+
const timer = setTimeout(() => {
|
|
91
|
+
// timer 正常觸發 → 清除 abort listener 避免洩漏
|
|
92
|
+
if (signal && onAbort) {
|
|
93
|
+
signal.removeEventListener('abort', onAbort);
|
|
94
|
+
}
|
|
95
|
+
resolve();
|
|
96
|
+
}, ms);
|
|
97
|
+
if (signal) {
|
|
98
|
+
onAbort = () => {
|
|
99
|
+
clearTimeout(timer);
|
|
100
|
+
const err = new Error('Polling aborted');
|
|
101
|
+
err.name = 'AbortError';
|
|
102
|
+
reject(err);
|
|
103
|
+
};
|
|
104
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=binding-poller.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binding-poller.js","sourceRoot":"","sources":["../../src/pairing/binding-poller.ts"],"names":[],"mappings":";AAAA,+CAA+C;AAC/C,iDAAiD;AACjD,+CAA+C;;AA4B/C,8CA6EC;AAtFD;;;;;;;;GAQG;AACI,KAAK,UAAU,iBAAiB,CAAC,IAA8B;IACpE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,GAAG,IAAI,EAAE,WAAW,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE7E,MAAM,GAAG,GAAG,GAAG,QAAQ,+BAA+B,CAAC;IACvD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,IAAI,eAAe,GAAG,UAAU,CAAC;IAEjC,OAAO,IAAI,EAAE,CAAC;QACZ,SAAS;QACT,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACzC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;YACxB,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,QAAQ,EAAE,CAAC;QAEX,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;gBAC7C,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBACvD,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;YACpE,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;gBAC5B,gCAAgC;gBAChC,eAAe,GAAG,UAAU,GAAG,CAAC,CAAC;YACnC,CAAC;iBAAM,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACvB,cAAc;gBACd,eAAe,GAAG,UAAU,CAAC;gBAE7B,MAAM,OAAO,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAOrC,CAAC;gBACF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;gBAE1B,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,OAAO,EAAE,IAAI,CAAC,OAAO;wBACrB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,SAAS,EAAE,IAAI,CAAC,SAAS;qBAC1B,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,eAAe;YACf,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBAC5E,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,kBAAkB;YAClB,IAAI,GAAG,YAAY,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACtD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,sBAAsB;QACxB,CAAC;QAED,WAAW;QACX,IAAI,WAAW,GAAG,CAAC,IAAI,QAAQ,IAAI,WAAW,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,iBAAiB,WAAW,2BAA2B,CAAC,CAAC;QAC3E,CAAC;QAED,UAAU;QACV,MAAM,KAAK,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;QAErC,2BAA2B;QAC3B,IAAI,eAAe,KAAK,UAAU,EAAE,CAAC;YACnC,eAAe,GAAG,UAAU,CAAC;QAC/B,CAAC;IACH,CAAC;AACH,CAAC;AAED,0DAA0D;AAC1D,0CAA0C;AAC1C,8CAA8C;AAC9C,SAAS,KAAK,CAAC,EAAU,EAAE,MAAoB;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACzC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,CAAC;YACZ,OAAO;QACT,CAAC;QAED,IAAI,OAAiC,CAAC;QAEtC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,sCAAsC;YACtC,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;gBACtB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,GAAG,GAAS,EAAE;gBACnB,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBACzC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC;gBACxB,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC,CAAC;YACF,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface PairingServerOptions {
|
|
2
|
+
pairingCode: string;
|
|
3
|
+
token: string;
|
|
4
|
+
cloudUrl: string;
|
|
5
|
+
signal?: AbortSignal;
|
|
6
|
+
}
|
|
7
|
+
export interface PairingServer {
|
|
8
|
+
url: string;
|
|
9
|
+
port: number;
|
|
10
|
+
notifyPaired(): void;
|
|
11
|
+
close(): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
export declare function startPairingServer(opts: PairingServerOptions): Promise<PairingServer>;
|
|
14
|
+
//# sourceMappingURL=pairing-server.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pairing-server.d.ts","sourceRoot":"","sources":["../../src/pairing/pairing-server.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,IAAI,IAAI,CAAC;IACrB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAmKD,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,aAAa,CAAC,CA8F3F"}
|