@aalis/plugin-okx-trading 0.9.2 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +22 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +88 -35
- package/dist/index.js.map +1 -1
- package/dist/tools/_shared.d.ts +2 -2
- package/dist/tools/_shared.d.ts.map +1 -1
- package/package.json +10 -6
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,23 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
/**
|
|
2
|
+
* 动真金白银 / 改仓位:visibility restricted(最低等级 2,仅信任档/owner 可驱动)。
|
|
3
|
+
* 堵"任意 visitor 驱动 LLM 用 owner 真钱下单/划转"。不加逐单 confirm —— okx 刻意保留
|
|
4
|
+
* 实时/算法交易能力(见实盘安全闸注释),改用「等级门禁 + 一次性显式 confirmRealMoney」。
|
|
5
|
+
* 注意:与 ACCOUNT_READ_OKX_TOOLS 必须互斥——capabilityMinLevel 里 risk 会遮蔽
|
|
6
|
+
* visibility,二者同标会把门槛从 2 反降到 1。
|
|
7
|
+
*/
|
|
8
|
+
export declare const MUTATING_OKX_TOOLS: Set<string>;
|
|
9
|
+
/**
|
|
10
|
+
* 账户读:risk sensitive(挡等级 0 的陌生群成员经 LLM 读 owner 真实资金数据;
|
|
11
|
+
* owner 与已授权用户不受影响)。判据是**语义**(读账户/订单/资金流水/链上地址),
|
|
12
|
+
* 不是文件归属——trade/algo/transfer 文件里的查询工具同样在列(对抗审计抓过
|
|
13
|
+
* 按文件包装漏掉 9 个同类工具的教训)。行情/量化数据(market/rubik)是公开数据,
|
|
14
|
+
* 不在此列,维持 public。
|
|
15
|
+
*/
|
|
16
|
+
export declare const ACCOUNT_READ_OKX_TOOLS: Set<string>;
|
|
17
|
+
declare const _default: import("@aalis/core").PluginDefinition<{
|
|
18
|
+
tools: import("@aalis/core/dist/composition/descriptors.js").OptionalUse<import("@aalis/api-tools").ToolService, import("@aalis/api-tools").BoundTools>;
|
|
19
|
+
logger: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Logger, import("@aalis/core").Logger>;
|
|
20
|
+
config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
|
|
21
|
+
}>;
|
|
22
|
+
export default _default;
|
|
11
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AA6GA;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB,aAa7B,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,sBAAsB,aAgCjC,CAAC;;;;;;AAOH,wBAOG"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { tools } from '@aalis/api-tools';
|
|
2
|
+
import { config, definePlugin, logger, optional } from '@aalis/core';
|
|
2
3
|
import { OkxClient } from './client.js';
|
|
3
4
|
import { registerAccountTools } from './tools/account.js';
|
|
4
5
|
import { registerAlgoTools } from './tools/algo.js';
|
|
@@ -7,12 +8,7 @@ import { registerOrderQueryTools } from './tools/orders.js';
|
|
|
7
8
|
import { registerRubikTools } from './tools/rubik.js';
|
|
8
9
|
import { registerTradeTools } from './tools/trade.js';
|
|
9
10
|
import { registerTransferTools } from './tools/transfer.js';
|
|
10
|
-
|
|
11
|
-
export const name = '@aalis/plugin-okx-trading';
|
|
12
|
-
export const displayName = 'OKX 交易';
|
|
13
|
-
export const subsystem = 'external';
|
|
14
|
-
export const inject = { optional: ['tools'] };
|
|
15
|
-
export const configSchema = {
|
|
11
|
+
const configSchema = {
|
|
16
12
|
apiKey: {
|
|
17
13
|
type: 'string',
|
|
18
14
|
label: 'API Key',
|
|
@@ -88,11 +84,82 @@ function resolveConfig(config) {
|
|
|
88
84
|
maxPageLimit,
|
|
89
85
|
};
|
|
90
86
|
}
|
|
87
|
+
// ===== 工具权限三分名单(模块级导出,测试做补集断言防漏网)=====
|
|
88
|
+
/**
|
|
89
|
+
* 动真金白银 / 改仓位:visibility restricted(最低等级 2,仅信任档/owner 可驱动)。
|
|
90
|
+
* 堵"任意 visitor 驱动 LLM 用 owner 真钱下单/划转"。不加逐单 confirm —— okx 刻意保留
|
|
91
|
+
* 实时/算法交易能力(见实盘安全闸注释),改用「等级门禁 + 一次性显式 confirmRealMoney」。
|
|
92
|
+
* 注意:与 ACCOUNT_READ_OKX_TOOLS 必须互斥——capabilityMinLevel 里 risk 会遮蔽
|
|
93
|
+
* visibility,二者同标会把门槛从 2 反降到 1。
|
|
94
|
+
*/
|
|
95
|
+
export const MUTATING_OKX_TOOLS = new Set([
|
|
96
|
+
'okx_place_order',
|
|
97
|
+
'okx_cancel_order',
|
|
98
|
+
'okx_amend_order',
|
|
99
|
+
'okx_set_leverage',
|
|
100
|
+
'okx_set_position_mode',
|
|
101
|
+
'okx_adjust_margin',
|
|
102
|
+
'okx_batch_place_orders',
|
|
103
|
+
'okx_batch_cancel_orders',
|
|
104
|
+
'okx_close_position',
|
|
105
|
+
'okx_place_algo_order',
|
|
106
|
+
'okx_cancel_algo_order',
|
|
107
|
+
'okx_transfer',
|
|
108
|
+
]);
|
|
109
|
+
/**
|
|
110
|
+
* 账户读:risk sensitive(挡等级 0 的陌生群成员经 LLM 读 owner 真实资金数据;
|
|
111
|
+
* owner 与已授权用户不受影响)。判据是**语义**(读账户/订单/资金流水/链上地址),
|
|
112
|
+
* 不是文件归属——trade/algo/transfer 文件里的查询工具同样在列(对抗审计抓过
|
|
113
|
+
* 按文件包装漏掉 9 个同类工具的教训)。行情/量化数据(market/rubik)是公开数据,
|
|
114
|
+
* 不在此列,维持 public。
|
|
115
|
+
*/
|
|
116
|
+
export const ACCOUNT_READ_OKX_TOOLS = new Set([
|
|
117
|
+
// account.ts —— 余额/持仓/账单/杠杆/费率等账户全貌
|
|
118
|
+
'okx_get_account_config',
|
|
119
|
+
'okx_get_asset_balances',
|
|
120
|
+
'okx_get_balance',
|
|
121
|
+
'okx_get_bills',
|
|
122
|
+
'okx_get_bills_archive',
|
|
123
|
+
'okx_get_currencies',
|
|
124
|
+
'okx_get_interest_accrued',
|
|
125
|
+
'okx_get_leverage_info',
|
|
126
|
+
'okx_get_max_avail_size',
|
|
127
|
+
'okx_get_max_size',
|
|
128
|
+
'okx_get_positions',
|
|
129
|
+
'okx_get_positions_history',
|
|
130
|
+
'okx_get_risk_state',
|
|
131
|
+
'okx_get_trade_fee',
|
|
132
|
+
// orders.ts —— 挂单/历史订单/成交
|
|
133
|
+
'okx_get_fills',
|
|
134
|
+
'okx_get_order_history',
|
|
135
|
+
'okx_get_pending_orders',
|
|
136
|
+
// trade.ts 里的查询孪生体
|
|
137
|
+
'okx_get_fills_archive',
|
|
138
|
+
'okx_get_order_detail',
|
|
139
|
+
// transfer.ts —— 资金流水/充提记录/链上充值地址
|
|
140
|
+
'okx_get_asset_bills',
|
|
141
|
+
'okx_get_deposit_address',
|
|
142
|
+
'okx_get_deposit_history',
|
|
143
|
+
'okx_get_transfer_state',
|
|
144
|
+
'okx_get_withdrawal_history',
|
|
145
|
+
// algo.ts —— 算法单查询
|
|
146
|
+
'okx_get_algo_order_history',
|
|
147
|
+
'okx_get_pending_algo_orders',
|
|
148
|
+
]);
|
|
91
149
|
// ===== 插件入口 =====
|
|
92
|
-
|
|
150
|
+
const uses = { tools: optional(tools), logger, config };
|
|
151
|
+
export default definePlugin({
|
|
152
|
+
name: '@aalis/plugin-okx-trading',
|
|
153
|
+
displayName: 'OKX 交易',
|
|
154
|
+
subsystem: 'external',
|
|
155
|
+
configSchema,
|
|
156
|
+
uses,
|
|
157
|
+
apply: registerOkxTools,
|
|
158
|
+
});
|
|
159
|
+
function registerOkxTools({ tools: baseTools, logger, config }) {
|
|
93
160
|
const cfg = resolveConfig(config);
|
|
94
161
|
if (!cfg.apiKey || !cfg.secretKey || !cfg.passphrase) {
|
|
95
|
-
|
|
162
|
+
logger.warn('OKX 交易插件缺少 API 凭证,已跳过初始化');
|
|
96
163
|
return;
|
|
97
164
|
}
|
|
98
165
|
const client = new OkxClient({
|
|
@@ -102,36 +169,22 @@ export function apply(ctx, config) {
|
|
|
102
169
|
timeoutMs: cfg.timeoutMs,
|
|
103
170
|
});
|
|
104
171
|
const modeLabel = cfg.demo ? '模拟盘' : '实盘';
|
|
105
|
-
|
|
106
|
-
const baseTools = useToolService(ctx);
|
|
172
|
+
logger.info(`OKX 交易插件已初始化 (${modeLabel})`);
|
|
107
173
|
baseTools.registerGroup({
|
|
108
174
|
name: 'okx',
|
|
109
175
|
label: 'OKX 交易',
|
|
110
176
|
description: `OKX 虚拟币交易工具集 (${modeLabel}),提供行情查询、账户管理、下单交易等功能`,
|
|
111
177
|
});
|
|
112
|
-
//
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
'okx_batch_place_orders',
|
|
123
|
-
'okx_batch_cancel_orders',
|
|
124
|
-
'okx_close_position',
|
|
125
|
-
'okx_place_algo_order',
|
|
126
|
-
'okx_cancel_algo_order',
|
|
127
|
-
'okx_transfer',
|
|
128
|
-
]);
|
|
129
|
-
// 工具代理:自动注入 groups;动账户的工具自动标 restricted(不公开给低档用户)。
|
|
130
|
-
const reg = tool => baseTools.register({
|
|
131
|
-
...tool,
|
|
132
|
-
groups: ['okx'],
|
|
133
|
-
visibility: MUTATING_OKX_TOOLS.has(tool.definition.function.name) ? 'restricted' : tool.visibility,
|
|
134
|
-
});
|
|
178
|
+
// 工具代理:自动注入 groups;权限档在这一个点按三分名单派发(见模块级名单注释)。
|
|
179
|
+
const reg = tool => {
|
|
180
|
+
const toolName = tool.definition.function.name;
|
|
181
|
+
return baseTools.register({
|
|
182
|
+
...tool,
|
|
183
|
+
groups: ['okx'],
|
|
184
|
+
visibility: MUTATING_OKX_TOOLS.has(toolName) ? 'restricted' : tool.visibility,
|
|
185
|
+
risk: ACCOUNT_READ_OKX_TOOLS.has(toolName) ? 'sensitive' : tool.risk,
|
|
186
|
+
});
|
|
187
|
+
};
|
|
135
188
|
registerMarketTools(reg, client);
|
|
136
189
|
registerRubikTools(reg, client);
|
|
137
190
|
registerAccountTools(reg, client, { defaultLimit: cfg.defaultPageLimit, maxLimit: cfg.maxPageLimit });
|
|
@@ -140,7 +193,7 @@ export function apply(ctx, config) {
|
|
|
140
193
|
// 不加逐单人工确认(保留实时/算法交易能力)——以「一次性显式确认 + 启动告警」替代。
|
|
141
194
|
const tradingArmed = cfg.demo || cfg.confirmRealMoney;
|
|
142
195
|
if (!cfg.demo) {
|
|
143
|
-
|
|
196
|
+
logger.warn(cfg.confirmRealMoney
|
|
144
197
|
? '⚠️ OKX 实盘模式:LLM 可用真实资金下单/撤单/划转/提币,且无逐单人工确认,请确认这是本意。'
|
|
145
198
|
: 'OKX 处于实盘(demo:false)但未设 confirmRealMoney:true,已禁用交易/策略/划转工具(仅保留查询)。');
|
|
146
199
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/_shared.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export type RegFn =
|
|
1
|
+
import type { BoundTools } from '@aalis/api-tools';
|
|
2
|
+
export type RegFn = BoundTools['register'];
|
|
3
3
|
/** 分页 limit 参数的 default 与硬上限(OKX API 单页一般 100,个别 300)。 */
|
|
4
4
|
export interface PageLimitCfg {
|
|
5
5
|
defaultLimit: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"_shared.d.ts","sourceRoot":"","sources":["../../src/tools/_shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;AAE3C,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,mDAAmD;AACnD,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAI9E;AAED,0BAA0B;AAC1B,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,SAAK,GAAG,OAAO,CAK9D;AAED,wBAAgB,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAE1C"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aalis/plugin-okx-trading",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -24,22 +24,26 @@
|
|
|
24
24
|
"dist"
|
|
25
25
|
],
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@aalis/schema-config": ">=0.
|
|
28
|
-
"@aalis/api-tools": ">=0.
|
|
27
|
+
"@aalis/schema-config": ">=0.12.0 <1.0.0",
|
|
28
|
+
"@aalis/api-tools": ">=0.9.0 <1.0.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^22.0.0",
|
|
32
32
|
"typescript": "^5.7.0",
|
|
33
|
-
"@aalis/core": "0.
|
|
34
|
-
"@aalis/api-webui": "0.
|
|
33
|
+
"@aalis/core": "0.17.0",
|
|
34
|
+
"@aalis/api-webui": "0.10.0"
|
|
35
35
|
},
|
|
36
36
|
"peerDependencies": {
|
|
37
|
-
"@aalis/core": ">=0.
|
|
37
|
+
"@aalis/core": ">=0.17.0 <1.0.0"
|
|
38
38
|
},
|
|
39
39
|
"aalis": {
|
|
40
40
|
"service": {
|
|
41
41
|
"optional": [
|
|
42
42
|
"tools"
|
|
43
|
+
],
|
|
44
|
+
"required": [
|
|
45
|
+
"config",
|
|
46
|
+
"logger"
|
|
43
47
|
]
|
|
44
48
|
}
|
|
45
49
|
},
|