@ty_krystal/sei-ai 0.1.12 → 0.1.13
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/README.md +34 -45
- package/dist/commands/api-docs.d.ts +0 -1
- package/dist/commands/call.d.ts +0 -1
- package/dist/commands/dict/add-category.d.ts +0 -1
- package/dist/commands/dict/add-item.d.ts +0 -1
- package/dist/commands/dict/list.d.ts +0 -1
- package/dist/commands/init/base-data.d.ts +0 -1
- package/dist/commands/query-sql.d.ts +0 -1
- package/dist/commands/query.d.ts +0 -1
- package/dist/commands/relogin.d.ts +0 -1
- package/dist/commands/save.d.ts +0 -1
- package/dist/core/command-base/sei-command.d.ts +0 -2
- package/dist/core/command-base/sei-command.js +0 -3
- package/dist/core/config.js +1 -3
- package/dist/core/sei-client.js +6 -17
- package/dist/core/types.d.ts +0 -4
- package/dist/hooks/command_not_found.d.ts +3 -0
- package/dist/hooks/command_not_found.js +36 -0
- package/oclif.manifest.json +1 -111
- package/package.json +6 -2
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ $ npm install -g @ty_krystal/sei-ai
|
|
|
20
20
|
$ sei-ai COMMAND
|
|
21
21
|
running command...
|
|
22
22
|
$ sei-ai (--version)
|
|
23
|
-
@ty_krystal/sei-ai/0.1.
|
|
23
|
+
@ty_krystal/sei-ai/0.1.13 linux-x64 node-v24.17.0
|
|
24
24
|
$ sei-ai --help [COMMAND]
|
|
25
25
|
USAGE
|
|
26
26
|
$ sei-ai COMMAND
|
|
@@ -58,9 +58,9 @@ Export and render OpenAPI docs
|
|
|
58
58
|
|
|
59
59
|
```
|
|
60
60
|
USAGE
|
|
61
|
-
$ sei-ai api-docs [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
62
|
-
|
|
63
|
-
|
|
61
|
+
$ sei-ai api-docs [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
62
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--format <value>]
|
|
63
|
+
[--keyword <value>] [--output <value>]
|
|
64
64
|
|
|
65
65
|
FLAGS
|
|
66
66
|
--account=<value> AI 登录账号
|
|
@@ -72,7 +72,6 @@ FLAGS
|
|
|
72
72
|
--format=<value> [default: markdown] 输出格式
|
|
73
73
|
--keyword=<value> 过滤关键字
|
|
74
74
|
--output=<value> 输出文件路径
|
|
75
|
-
--role=<value> AI 登录角色
|
|
76
75
|
--timeout=<value> 请求超时(毫秒)
|
|
77
76
|
--token=<value> 固定 token
|
|
78
77
|
|
|
@@ -88,9 +87,9 @@ Call a SEI endpoint
|
|
|
88
87
|
|
|
89
88
|
```
|
|
90
89
|
USAGE
|
|
91
|
-
$ sei-ai call METHOD PATH [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
92
|
-
[--account
|
|
93
|
-
[--allow-
|
|
90
|
+
$ sei-ai call METHOD PATH [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
91
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-empty]
|
|
92
|
+
[--allow-failure] [--file <value>] [--json <value>] [--no-token] [--stdin]
|
|
94
93
|
|
|
95
94
|
ARGUMENTS
|
|
96
95
|
METHOD HTTP method
|
|
@@ -108,7 +107,6 @@ FLAGS
|
|
|
108
107
|
--file=<value> JSON file path
|
|
109
108
|
--json=<value> JSON payload
|
|
110
109
|
--no-token 不附带 token
|
|
111
|
-
--role=<value> AI 登录角色
|
|
112
110
|
--stdin Read JSON payload from stdin
|
|
113
111
|
--timeout=<value> 请求超时(毫秒)
|
|
114
112
|
--token=<value> 固定 token
|
|
@@ -125,8 +123,8 @@ Add a dictionary category
|
|
|
125
123
|
|
|
126
124
|
```
|
|
127
125
|
USAGE
|
|
128
|
-
$ sei-ai dict:add-category NAME TYPECODE [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
129
|
-
|
|
126
|
+
$ sei-ai dict:add-category NAME TYPECODE [--config <value>] [--base-url <value>] [--ai-key <value>] [--account
|
|
127
|
+
<value>] [--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>]
|
|
130
128
|
[--allow-failure] [--body <value>] [--code <value>] [--ctype <value>] [--dict-flag <value>] [--ename <value>]
|
|
131
129
|
[--memo <value>] [--sort <value>] [--sysid <value>] [--uuid <value>]
|
|
132
130
|
|
|
@@ -148,7 +146,6 @@ FLAGS
|
|
|
148
146
|
--dict-flag=<value> 字典标记
|
|
149
147
|
--ename=<value> 英文名
|
|
150
148
|
--memo=<value> 备注
|
|
151
|
-
--role=<value> AI 登录角色
|
|
152
149
|
--sort=<value> 排序号
|
|
153
150
|
--sysid=<value> 系统编号
|
|
154
151
|
--timeout=<value> 请求超时(毫秒)
|
|
@@ -167,10 +164,10 @@ Add a dictionary item
|
|
|
167
164
|
|
|
168
165
|
```
|
|
169
166
|
USAGE
|
|
170
|
-
$ sei-ai dict:add-item CODE NAME TYPECODE [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
171
|
-
<value>] [--account <value>] [--account-
|
|
172
|
-
|
|
173
|
-
|
|
167
|
+
$ sei-ai dict:add-item CODE NAME TYPECODE [--config <value>] [--base-url <value>] [--ai-key <value>] [--account
|
|
168
|
+
<value>] [--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>]
|
|
169
|
+
[--allow-failure] [--body <value>] [--ctype <value>] [--dict-flag <value>] [--ename <value>] [--memo <value>]
|
|
170
|
+
[--parent <value>] [--sort <value>] [--sysid <value>] [--uuid <value>]
|
|
174
171
|
|
|
175
172
|
ARGUMENTS
|
|
176
173
|
CODE 字典项编码
|
|
@@ -191,7 +188,6 @@ FLAGS
|
|
|
191
188
|
--ename=<value> 英文名
|
|
192
189
|
--memo=<value> 备注
|
|
193
190
|
--parent=<value> 父级编号
|
|
194
|
-
--role=<value> AI 登录角色
|
|
195
191
|
--sort=<value> 排序号
|
|
196
192
|
--sysid=<value> 系统编号
|
|
197
193
|
--timeout=<value> 请求超时(毫秒)
|
|
@@ -210,9 +206,9 @@ List dictionary entries
|
|
|
210
206
|
|
|
211
207
|
```
|
|
212
208
|
USAGE
|
|
213
|
-
$ sei-ai dict:list [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
214
|
-
|
|
215
|
-
[--
|
|
209
|
+
$ sei-ai dict:list [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
210
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-failure]
|
|
211
|
+
[--flat] [--keyword <value>] [--size <value>] [--type <value>]
|
|
216
212
|
|
|
217
213
|
FLAGS
|
|
218
214
|
--account=<value> AI 登录账号
|
|
@@ -224,7 +220,6 @@ FLAGS
|
|
|
224
220
|
--config=<value> 配置文件路径
|
|
225
221
|
--flat 只输出平铺结果
|
|
226
222
|
--keyword=<value> 过滤关键字
|
|
227
|
-
--role=<value> AI 登录角色
|
|
228
223
|
--size=<value> [default: 1000] 返回条数
|
|
229
224
|
--timeout=<value> 请求超时(毫秒)
|
|
230
225
|
--token=<value> 固定 token
|
|
@@ -262,10 +257,10 @@ Initialize base data
|
|
|
262
257
|
|
|
263
258
|
```
|
|
264
259
|
USAGE
|
|
265
|
-
$ sei-ai init:base-data [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
260
|
+
$ sei-ai init:base-data [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
261
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--admin-name
|
|
262
|
+
<value>] [--admin-password <value>] [--admin-role <value>] [--admin-role-name <value>] [--admin-uid <value>]
|
|
263
|
+
[--allow-failure] [--reset-admin-password] [--sql-file <value>] [--sysid <value>]
|
|
269
264
|
|
|
270
265
|
FLAGS
|
|
271
266
|
--account=<value> AI 登录账号
|
|
@@ -281,7 +276,6 @@ FLAGS
|
|
|
281
276
|
--base-url=<value> SEI 基础地址
|
|
282
277
|
--config=<value> 配置文件路径
|
|
283
278
|
--reset-admin-password 重置管理员密码
|
|
284
|
-
--role=<value> AI 登录角色
|
|
285
279
|
--sql-file=<value> 初始化 SQL 文件
|
|
286
280
|
--sysid=<value> 系统编号
|
|
287
281
|
--timeout=<value> 请求超时(毫秒)
|
|
@@ -589,9 +583,9 @@ Query SEI data
|
|
|
589
583
|
|
|
590
584
|
```
|
|
591
585
|
USAGE
|
|
592
|
-
$ sei-ai query [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
593
|
-
|
|
594
|
-
[--
|
|
586
|
+
$ sei-ai query [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
587
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-failure]
|
|
588
|
+
[--file <value>] [--json <value>] [--stdin]
|
|
595
589
|
|
|
596
590
|
FLAGS
|
|
597
591
|
--account=<value> AI 登录账号
|
|
@@ -603,7 +597,6 @@ FLAGS
|
|
|
603
597
|
--config=<value> 配置文件路径
|
|
604
598
|
--file=<value> JSON file path
|
|
605
599
|
--json=<value> JSON payload
|
|
606
|
-
--role=<value> AI 登录角色
|
|
607
600
|
--stdin Read JSON payload from stdin
|
|
608
601
|
--timeout=<value> 请求超时(毫秒)
|
|
609
602
|
--token=<value> 固定 token
|
|
@@ -620,9 +613,9 @@ Query SEI with SQL
|
|
|
620
613
|
|
|
621
614
|
```
|
|
622
615
|
USAGE
|
|
623
|
-
$ sei-ai query-sql SQL [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
624
|
-
|
|
625
|
-
[--
|
|
616
|
+
$ sei-ai query-sql SQL [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
617
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-failure]
|
|
618
|
+
[--page <value>] [--size <value>]
|
|
626
619
|
|
|
627
620
|
ARGUMENTS
|
|
628
621
|
SQL SQL 语句
|
|
@@ -636,7 +629,6 @@ FLAGS
|
|
|
636
629
|
--base-url=<value> SEI 基础地址
|
|
637
630
|
--config=<value> 配置文件路径
|
|
638
631
|
--page=<value> [default: 1] 页码
|
|
639
|
-
--role=<value> AI 登录角色
|
|
640
632
|
--size=<value> [default: 20] 每页条数
|
|
641
633
|
--timeout=<value> 请求超时(毫秒)
|
|
642
634
|
--token=<value> 固定 token
|
|
@@ -656,8 +648,8 @@ Refresh the login token
|
|
|
656
648
|
|
|
657
649
|
```
|
|
658
650
|
USAGE
|
|
659
|
-
$ sei-ai relogin [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
660
|
-
|
|
651
|
+
$ sei-ai relogin [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
652
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>]
|
|
661
653
|
|
|
662
654
|
FLAGS
|
|
663
655
|
--account=<value> AI 登录账号
|
|
@@ -666,7 +658,6 @@ FLAGS
|
|
|
666
658
|
--ai-key=<value> AI 登录密钥
|
|
667
659
|
--base-url=<value> SEI 基础地址
|
|
668
660
|
--config=<value> 配置文件路径
|
|
669
|
-
--role=<value> AI 登录角色
|
|
670
661
|
--timeout=<value> 请求超时(毫秒)
|
|
671
662
|
--token=<value> 固定 token
|
|
672
663
|
|
|
@@ -682,9 +673,9 @@ Save SEI data
|
|
|
682
673
|
|
|
683
674
|
```
|
|
684
675
|
USAGE
|
|
685
|
-
$ sei-ai save [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
686
|
-
|
|
687
|
-
[--
|
|
676
|
+
$ sei-ai save [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
677
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-failure]
|
|
678
|
+
[--file <value>] [--json <value>] [--stdin]
|
|
688
679
|
|
|
689
680
|
FLAGS
|
|
690
681
|
--account=<value> AI 登录账号
|
|
@@ -696,7 +687,6 @@ FLAGS
|
|
|
696
687
|
--config=<value> 配置文件路径
|
|
697
688
|
--file=<value> JSON file path
|
|
698
689
|
--json=<value> JSON payload
|
|
699
|
-
--role=<value> AI 登录角色
|
|
700
690
|
--stdin Read JSON payload from stdin
|
|
701
691
|
--timeout=<value> 请求超时(毫秒)
|
|
702
692
|
--token=<value> 固定 token
|
|
@@ -713,9 +703,9 @@ Query SEI with SQL
|
|
|
713
703
|
|
|
714
704
|
```
|
|
715
705
|
USAGE
|
|
716
|
-
$ sei-ai sql SQL [--config <value>] [--base-url <value>] [--ai-key <value>] [--
|
|
717
|
-
|
|
718
|
-
[--
|
|
706
|
+
$ sei-ai sql SQL [--config <value>] [--base-url <value>] [--ai-key <value>] [--account <value>]
|
|
707
|
+
[--account-project <value>] [--account-checkcode <value>] [--token <value>] [--timeout <value>] [--allow-failure]
|
|
708
|
+
[--page <value>] [--size <value>]
|
|
719
709
|
|
|
720
710
|
ARGUMENTS
|
|
721
711
|
SQL SQL 语句
|
|
@@ -729,7 +719,6 @@ FLAGS
|
|
|
729
719
|
--base-url=<value> SEI 基础地址
|
|
730
720
|
--config=<value> 配置文件路径
|
|
731
721
|
--page=<value> [default: 1] 页码
|
|
732
|
-
--role=<value> AI 登录角色
|
|
733
722
|
--size=<value> [default: 20] 每页条数
|
|
734
723
|
--timeout=<value> 请求超时(毫秒)
|
|
735
724
|
--token=<value> 固定 token
|
|
@@ -8,7 +8,6 @@ export default class ApiDocsCommand extends SeiCommand {
|
|
|
8
8
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
9
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
11
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
package/dist/commands/call.d.ts
CHANGED
|
@@ -15,7 +15,6 @@ export default class CallCommand extends SeiCommand {
|
|
|
15
15
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
17
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
18
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
19
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
20
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -19,7 +19,6 @@ export default class DictAddCategoryCommand extends SeiCommand {
|
|
|
19
19
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
20
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
21
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
22
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
23
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
24
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -20,7 +20,6 @@ export default class DictAddItemCommand extends SeiCommand {
|
|
|
20
20
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
21
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
22
22
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
23
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
24
23
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
25
24
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
26
25
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -10,7 +10,6 @@ export default class DictListCommand extends SeiCommand {
|
|
|
10
10
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
12
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
15
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -14,7 +14,6 @@ export default class InitBaseDataCommand extends SeiCommand {
|
|
|
14
14
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
15
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
16
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
18
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
19
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -12,7 +12,6 @@ export default class QuerySqlCommand extends SeiCommand {
|
|
|
12
12
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
13
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
14
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
15
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
16
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
17
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
package/dist/commands/query.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ export default class QueryCommand extends SeiCommand {
|
|
|
9
9
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -5,7 +5,6 @@ export default class ReloginCommand extends SeiCommand {
|
|
|
5
5
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
6
6
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
7
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
8
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
9
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
package/dist/commands/save.d.ts
CHANGED
|
@@ -9,7 +9,6 @@ export default class SaveCommand extends SeiCommand {
|
|
|
9
9
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
10
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
11
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
12
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
13
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
14
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -6,7 +6,6 @@ export declare abstract class SeiCommand extends Command {
|
|
|
6
6
|
config: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
7
|
'base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
8
|
'ai-key': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
-
role: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
9
|
account: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
10
|
'account-project': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
11
|
'account-checkcode': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -34,7 +33,6 @@ export interface SeiAuthSettingsOptions {
|
|
|
34
33
|
baseUrl?: string;
|
|
35
34
|
token?: string;
|
|
36
35
|
aiKey?: string;
|
|
37
|
-
role?: string;
|
|
38
36
|
account?: string;
|
|
39
37
|
accountProject?: string;
|
|
40
38
|
accountCheckcode?: string;
|
|
@@ -12,7 +12,6 @@ export class SeiCommand extends Command {
|
|
|
12
12
|
config: Flags.string({ description: '配置文件路径' }),
|
|
13
13
|
'base-url': Flags.string({ description: 'SEI 基础地址' }),
|
|
14
14
|
'ai-key': Flags.string({ description: 'AI 登录密钥' }),
|
|
15
|
-
role: Flags.string({ aliases: ['profile'], description: 'AI 登录角色' }),
|
|
16
15
|
account: Flags.string({ description: 'AI 登录账号' }),
|
|
17
16
|
'account-project': Flags.string({ description: 'AI 登录项目' }),
|
|
18
17
|
'account-checkcode': Flags.string({ description: 'AI 登录验证码' }),
|
|
@@ -36,7 +35,6 @@ export class SeiCommand extends Command {
|
|
|
36
35
|
baseUrl: options.baseUrl,
|
|
37
36
|
token: options.token,
|
|
38
37
|
aiKey: options.aiKey,
|
|
39
|
-
role: options.role,
|
|
40
38
|
account: options.account,
|
|
41
39
|
accountProject: options.accountProject,
|
|
42
40
|
accountCheckcode: options.accountCheckcode,
|
|
@@ -58,7 +56,6 @@ export class SeiCommand extends Command {
|
|
|
58
56
|
baseUrl: stringFlag(flags, 'base-url'),
|
|
59
57
|
token: stringFlag(flags, 'token'),
|
|
60
58
|
aiKey: stringFlag(flags, 'ai-key'),
|
|
61
|
-
role: stringFlag(flags, 'role') ?? stringFlag(flags, 'profile'),
|
|
62
59
|
account: stringFlag(flags, 'account'),
|
|
63
60
|
accountProject: stringFlag(flags, 'account-project'),
|
|
64
61
|
accountCheckcode: stringFlag(flags, 'account-checkcode'),
|
package/dist/core/config.js
CHANGED
|
@@ -20,10 +20,8 @@ export function normalizeConfig(input = {}, env = process.env) {
|
|
|
20
20
|
tokenEnv: stringOrEnv(auth.tokenEnv, env.SEI_TOKEN ? 'SEI_TOKEN' : 'SEI_TOKEN'),
|
|
21
21
|
aiKey: stringOrEnv(auth.aiKey, env.SEI_AI_LOGIN_KEY),
|
|
22
22
|
aiKeyEnv: stringOrEnv(auth.aiKeyEnv, env.SEI_AI_LOGIN_KEY ? 'SEI_AI_LOGIN_KEY' : 'SEI_AI_LOGIN_KEY'),
|
|
23
|
-
account: stringOrEnv(auth.account, env.SEI_AI_LOGIN_ACCOUNT),
|
|
23
|
+
account: stringOrEnv(auth.account, env.SEI_AI_LOGIN_ACCOUNT) || 'admin',
|
|
24
24
|
accountEnv: stringOrEnv(auth.accountEnv, env.SEI_AI_LOGIN_ACCOUNT ? 'SEI_AI_LOGIN_ACCOUNT' : 'SEI_AI_LOGIN_ACCOUNT'),
|
|
25
|
-
role: stringOrEnv(auth.role, env.SEI_AI_LOGIN_ROLE),
|
|
26
|
-
roleEnv: stringOrEnv(auth.roleEnv, env.SEI_AI_LOGIN_ROLE ? 'SEI_AI_LOGIN_ROLE' : 'SEI_AI_LOGIN_ROLE'),
|
|
27
25
|
},
|
|
28
26
|
tools: {
|
|
29
27
|
query: tools.query !== false,
|
package/dist/core/sei-client.js
CHANGED
|
@@ -2,7 +2,7 @@ import { chmod, mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
|
2
2
|
import { homedir } from 'node:os';
|
|
3
3
|
import { dirname, resolve } from 'node:path';
|
|
4
4
|
import { createHash } from 'node:crypto';
|
|
5
|
-
import { ACCOUNT_CHECK_CODE_PATH, ACCOUNT_LOGIN_DEFAULT_CHECKCODE, ACCOUNT_LOGIN_DEFAULT_OS, ACCOUNT_LOGIN_DEFAULT_PROJECT, ACCOUNT_LOGIN_DEFAULT_TYPE, DDL_EXECUTE_PATH, DEFAULT_AI_KEY, DEFAULT_QUERY_SQL_PAGE, DEFAULT_QUERY_SQL_SIZE, DEFAULT_TIMEOUT_MS, LOGIN_PATH, OPENAPI_DOCS_PATH, QUERY_PATH, QUERY_SQL_PATH, SAVE_PATH, TOKEN_CACHE_DIR_NAME, TOKEN_CACHE_FILE_PREFIX, TOKEN_CACHE_FILE_SUFFIX, TOKEN_CACHE_VERSION, } from './constants.js';
|
|
5
|
+
import { ACCOUNT_CHECK_CODE_PATH, ACCOUNT_LOGIN_DEFAULT_CHECKCODE, ACCOUNT_LOGIN_DEFAULT_OS, ACCOUNT_LOGIN_DEFAULT_PROJECT, ACCOUNT_LOGIN_DEFAULT_TYPE, BASE_SEED_DEFAULT_ADMIN_UID, DDL_EXECUTE_PATH, DEFAULT_AI_KEY, DEFAULT_QUERY_SQL_PAGE, DEFAULT_QUERY_SQL_SIZE, DEFAULT_TIMEOUT_MS, LOGIN_PATH, OPENAPI_DOCS_PATH, QUERY_PATH, QUERY_SQL_PATH, SAVE_PATH, TOKEN_CACHE_DIR_NAME, TOKEN_CACHE_FILE_PREFIX, TOKEN_CACHE_FILE_SUFFIX, TOKEN_CACHE_VERSION, } from './constants.js';
|
|
6
6
|
import { SeiMcpError } from './errors.js';
|
|
7
7
|
import { makeUrl, normalizeBaseUrl, toPositiveInteger, truncateText } from './utils.js';
|
|
8
8
|
export function createSeiClient(config, logger, fetchImpl = fetch) {
|
|
@@ -41,8 +41,7 @@ export function createSeiAuthSettings(config, options = {}) {
|
|
|
41
41
|
mode: config.auth.mode,
|
|
42
42
|
token: firstText(options.token, config.auth.token, process.env.SEI_TOKEN),
|
|
43
43
|
aiKey: firstText(options.aiKey, config.auth.aiKey, process.env.SEI_AI_LOGIN_KEY, DEFAULT_AI_KEY),
|
|
44
|
-
|
|
45
|
-
account: firstText(options.account, config.auth.account, process.env.SEI_AI_LOGIN_ACCOUNT),
|
|
44
|
+
account: firstText(options.account, config.auth.account, process.env.SEI_AI_LOGIN_ACCOUNT, BASE_SEED_DEFAULT_ADMIN_UID),
|
|
46
45
|
accountProject: firstText(options.accountProject, process.env.SEI_AI_LOGIN_ACCOUNT_PROJECT, ACCOUNT_LOGIN_DEFAULT_PROJECT),
|
|
47
46
|
accountCheckcode: firstText(options.accountCheckcode, process.env.SEI_AI_LOGIN_ACCOUNT_CHECKCODE, ACCOUNT_LOGIN_DEFAULT_CHECKCODE),
|
|
48
47
|
timeoutMs: normalizeTimeout(options.timeoutMs),
|
|
@@ -240,7 +239,7 @@ async function loginThroughSettings(settings, logger, fetchImpl, options) {
|
|
|
240
239
|
canRefresh: true,
|
|
241
240
|
};
|
|
242
241
|
}
|
|
243
|
-
const token = await loginWithAi(settings, logger, fetchImpl
|
|
242
|
+
const token = await loginWithAi(settings, logger, fetchImpl);
|
|
244
243
|
if (options.useCache) {
|
|
245
244
|
await saveCachedToken(settings, token, logger);
|
|
246
245
|
}
|
|
@@ -250,14 +249,11 @@ async function loginThroughSettings(settings, logger, fetchImpl, options) {
|
|
|
250
249
|
canRefresh: true,
|
|
251
250
|
};
|
|
252
251
|
}
|
|
253
|
-
async function loginWithAi(settings, logger, fetchImpl
|
|
252
|
+
async function loginWithAi(settings, logger, fetchImpl) {
|
|
254
253
|
if (!settings.aiKey) {
|
|
255
254
|
throw new SeiMcpError('ai-login 模式需要配置 aiKey', 'INVALID_REQUEST');
|
|
256
255
|
}
|
|
257
256
|
const payload = { mcp: settings.aiKey };
|
|
258
|
-
if (role) {
|
|
259
|
-
payload.role = role;
|
|
260
|
-
}
|
|
261
257
|
const response = await requestJsonOnce(settings, logger, fetchImpl, 'POST', LOGIN_PATH, payload, null, {
|
|
262
258
|
timeoutMs: settings.timeoutMs,
|
|
263
259
|
});
|
|
@@ -265,7 +261,7 @@ async function loginWithAi(settings, logger, fetchImpl, role) {
|
|
|
265
261
|
return token;
|
|
266
262
|
}
|
|
267
263
|
async function loginAsAccount(settings, logger, fetchImpl) {
|
|
268
|
-
const adminToken = await loginWithAi(settings, logger, fetchImpl
|
|
264
|
+
const adminToken = await loginWithAi(settings, logger, fetchImpl);
|
|
269
265
|
const row = await fetchAccountLoginRow(settings, logger, fetchImpl, adminToken, settings.account);
|
|
270
266
|
const passport = toText(getRowField(row, '_UID', 'uid', 'passport')) || settings.account;
|
|
271
267
|
const password = toText(getRowField(row, '_PWD', 'pwd', 'password'));
|
|
@@ -431,9 +427,6 @@ async function loadCachedToken(settings) {
|
|
|
431
427
|
if (data.baseUrl !== normalizeBaseUrl(settings.baseUrl)) {
|
|
432
428
|
return null;
|
|
433
429
|
}
|
|
434
|
-
if ((toText(data.role) || null) !== (settings.account ? null : settings.role || null)) {
|
|
435
|
-
return null;
|
|
436
|
-
}
|
|
437
430
|
if ((toText(data.account) || null) !== (settings.account || null)) {
|
|
438
431
|
return null;
|
|
439
432
|
}
|
|
@@ -450,7 +443,6 @@ async function saveCachedToken(settings, token, logger) {
|
|
|
450
443
|
await writeFile(path, JSON.stringify({
|
|
451
444
|
version: TOKEN_CACHE_VERSION,
|
|
452
445
|
baseUrl: normalizeBaseUrl(settings.baseUrl),
|
|
453
|
-
role: settings.account ? null : settings.role || null,
|
|
454
446
|
account: settings.account || null,
|
|
455
447
|
token: token.trim(),
|
|
456
448
|
}, null, 2) + '\n', 'utf8');
|
|
@@ -463,7 +455,7 @@ async function saveCachedToken(settings, token, logger) {
|
|
|
463
455
|
}
|
|
464
456
|
}
|
|
465
457
|
function getTokenCachePath(settings) {
|
|
466
|
-
const identity =
|
|
458
|
+
const identity = `account:${settings.account || BASE_SEED_DEFAULT_ADMIN_UID}`;
|
|
467
459
|
const scope = `${normalizeBaseUrl(settings.baseUrl)}\0${identity}`;
|
|
468
460
|
const hash = createHash('sha256').update(scope).digest('hex').slice(0, 16);
|
|
469
461
|
return resolve(getTokenCacheDir(), `${TOKEN_CACHE_FILE_PREFIX}${hash}${TOKEN_CACHE_FILE_SUFFIX}`);
|
|
@@ -518,9 +510,6 @@ function normalizeTimeout(value) {
|
|
|
518
510
|
}
|
|
519
511
|
return DEFAULT_TIMEOUT_MS;
|
|
520
512
|
}
|
|
521
|
-
function resolveRole(role, fallback) {
|
|
522
|
-
return firstText(role, fallback, process.env.SEI_AI_LOGIN_ROLE).toLowerCase();
|
|
523
|
-
}
|
|
524
513
|
function firstText(...values) {
|
|
525
514
|
for (const value of values) {
|
|
526
515
|
const text = toText(value);
|
package/dist/core/types.d.ts
CHANGED
|
@@ -16,8 +16,6 @@ export interface SeiMcpConfig {
|
|
|
16
16
|
aiKeyEnv: string;
|
|
17
17
|
account: string;
|
|
18
18
|
accountEnv: string;
|
|
19
|
-
role: string;
|
|
20
|
-
roleEnv: string;
|
|
21
19
|
};
|
|
22
20
|
tools: {
|
|
23
21
|
query: boolean;
|
|
@@ -93,7 +91,6 @@ export interface SeiAuthSettings {
|
|
|
93
91
|
mode: 'ai-login' | 'token';
|
|
94
92
|
token: string;
|
|
95
93
|
aiKey: string;
|
|
96
|
-
role: string;
|
|
97
94
|
account: string;
|
|
98
95
|
accountProject: string;
|
|
99
96
|
accountCheckcode: string;
|
|
@@ -103,7 +100,6 @@ export interface SeiCommandOptions {
|
|
|
103
100
|
baseUrl?: string;
|
|
104
101
|
token?: string;
|
|
105
102
|
aiKey?: string;
|
|
106
|
-
role?: string;
|
|
107
103
|
account?: string;
|
|
108
104
|
accountProject?: string;
|
|
109
105
|
accountCheckcode?: string;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { cyan, yellow } from 'ansis';
|
|
2
|
+
const hook = async function (options) {
|
|
3
|
+
const commandIDs = [...options.config.commandIDs, ...options.config.commands.flatMap((command) => command.aliases)];
|
|
4
|
+
if (commandIDs.length === 0) {
|
|
5
|
+
this.warn(`${yellow(options.id)} is not a ${options.config.bin} command.`);
|
|
6
|
+
this.error(`Run ${cyan.bold(`${options.config.bin} help`)} for a list of available commands.`, { exit: 127 });
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
const suggestion = commandIDs
|
|
10
|
+
.map((command) => ({ command, distance: levenshteinDistance(options.id, command) }))
|
|
11
|
+
.sort((left, right) => left.distance - right.distance || left.command.localeCompare(right.command))[0]?.command;
|
|
12
|
+
this.warn(`${yellow(options.id)} is not a ${options.config.bin} command.`);
|
|
13
|
+
if (suggestion && suggestion !== options.id) {
|
|
14
|
+
this.warn(`Did you mean ${cyan.bold(suggestion)}?`);
|
|
15
|
+
}
|
|
16
|
+
this.error(`Run ${cyan.bold(`${options.config.bin} help`)} for a list of available commands.`, { exit: 127 });
|
|
17
|
+
};
|
|
18
|
+
export default hook;
|
|
19
|
+
function levenshteinDistance(left, right) {
|
|
20
|
+
const rows = left.length + 1;
|
|
21
|
+
const cols = right.length + 1;
|
|
22
|
+
const matrix = Array.from({ length: rows }, () => new Array(cols).fill(0));
|
|
23
|
+
for (let row = 0; row < rows; row += 1) {
|
|
24
|
+
matrix[row][0] = row;
|
|
25
|
+
}
|
|
26
|
+
for (let col = 0; col < cols; col += 1) {
|
|
27
|
+
matrix[0][col] = col;
|
|
28
|
+
}
|
|
29
|
+
for (let row = 1; row < rows; row += 1) {
|
|
30
|
+
for (let col = 1; col < cols; col += 1) {
|
|
31
|
+
const substitutionCost = left[row - 1] === right[col - 1] ? 0 : 1;
|
|
32
|
+
matrix[row][col] = Math.min(matrix[row - 1][col] + 1, matrix[row][col - 1] + 1, matrix[row - 1][col - 1] + substitutionCost);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return matrix[rows - 1][cols - 1];
|
|
36
|
+
}
|
package/oclif.manifest.json
CHANGED
|
@@ -26,16 +26,6 @@
|
|
|
26
26
|
"multiple": false,
|
|
27
27
|
"type": "option"
|
|
28
28
|
},
|
|
29
|
-
"role": {
|
|
30
|
-
"aliases": [
|
|
31
|
-
"profile"
|
|
32
|
-
],
|
|
33
|
-
"description": "AI 登录角色",
|
|
34
|
-
"name": "role",
|
|
35
|
-
"hasDynamicHelp": false,
|
|
36
|
-
"multiple": false,
|
|
37
|
-
"type": "option"
|
|
38
|
-
},
|
|
39
29
|
"account": {
|
|
40
30
|
"description": "AI 登录账号",
|
|
41
31
|
"name": "account",
|
|
@@ -141,16 +131,6 @@
|
|
|
141
131
|
"multiple": false,
|
|
142
132
|
"type": "option"
|
|
143
133
|
},
|
|
144
|
-
"role": {
|
|
145
|
-
"aliases": [
|
|
146
|
-
"profile"
|
|
147
|
-
],
|
|
148
|
-
"description": "AI 登录角色",
|
|
149
|
-
"name": "role",
|
|
150
|
-
"hasDynamicHelp": false,
|
|
151
|
-
"multiple": false,
|
|
152
|
-
"type": "option"
|
|
153
|
-
},
|
|
154
134
|
"account": {
|
|
155
135
|
"description": "AI 登录账号",
|
|
156
136
|
"name": "account",
|
|
@@ -272,16 +252,6 @@
|
|
|
272
252
|
"multiple": false,
|
|
273
253
|
"type": "option"
|
|
274
254
|
},
|
|
275
|
-
"role": {
|
|
276
|
-
"aliases": [
|
|
277
|
-
"profile"
|
|
278
|
-
],
|
|
279
|
-
"description": "AI 登录角色",
|
|
280
|
-
"name": "role",
|
|
281
|
-
"hasDynamicHelp": false,
|
|
282
|
-
"multiple": false,
|
|
283
|
-
"type": "option"
|
|
284
|
-
},
|
|
285
255
|
"account": {
|
|
286
256
|
"description": "AI 登录账号",
|
|
287
257
|
"name": "account",
|
|
@@ -439,16 +409,6 @@
|
|
|
439
409
|
"multiple": false,
|
|
440
410
|
"type": "option"
|
|
441
411
|
},
|
|
442
|
-
"role": {
|
|
443
|
-
"aliases": [
|
|
444
|
-
"profile"
|
|
445
|
-
],
|
|
446
|
-
"description": "AI 登录角色",
|
|
447
|
-
"name": "role",
|
|
448
|
-
"hasDynamicHelp": false,
|
|
449
|
-
"multiple": false,
|
|
450
|
-
"type": "option"
|
|
451
|
-
},
|
|
452
412
|
"account": {
|
|
453
413
|
"description": "AI 登录账号",
|
|
454
414
|
"name": "account",
|
|
@@ -590,16 +550,6 @@
|
|
|
590
550
|
"multiple": false,
|
|
591
551
|
"type": "option"
|
|
592
552
|
},
|
|
593
|
-
"role": {
|
|
594
|
-
"aliases": [
|
|
595
|
-
"profile"
|
|
596
|
-
],
|
|
597
|
-
"description": "AI 登录角色",
|
|
598
|
-
"name": "role",
|
|
599
|
-
"hasDynamicHelp": false,
|
|
600
|
-
"multiple": false,
|
|
601
|
-
"type": "option"
|
|
602
|
-
},
|
|
603
553
|
"account": {
|
|
604
554
|
"description": "AI 登录账号",
|
|
605
555
|
"name": "account",
|
|
@@ -706,16 +656,6 @@
|
|
|
706
656
|
"multiple": false,
|
|
707
657
|
"type": "option"
|
|
708
658
|
},
|
|
709
|
-
"role": {
|
|
710
|
-
"aliases": [
|
|
711
|
-
"profile"
|
|
712
|
-
],
|
|
713
|
-
"description": "AI 登录角色",
|
|
714
|
-
"name": "role",
|
|
715
|
-
"hasDynamicHelp": false,
|
|
716
|
-
"multiple": false,
|
|
717
|
-
"type": "option"
|
|
718
|
-
},
|
|
719
659
|
"account": {
|
|
720
660
|
"description": "AI 登录账号",
|
|
721
661
|
"name": "account",
|
|
@@ -849,16 +789,6 @@
|
|
|
849
789
|
"multiple": false,
|
|
850
790
|
"type": "option"
|
|
851
791
|
},
|
|
852
|
-
"role": {
|
|
853
|
-
"aliases": [
|
|
854
|
-
"profile"
|
|
855
|
-
],
|
|
856
|
-
"description": "AI 登录角色",
|
|
857
|
-
"name": "role",
|
|
858
|
-
"hasDynamicHelp": false,
|
|
859
|
-
"multiple": false,
|
|
860
|
-
"type": "option"
|
|
861
|
-
},
|
|
862
792
|
"account": {
|
|
863
793
|
"description": "AI 登录账号",
|
|
864
794
|
"name": "account",
|
|
@@ -965,16 +895,6 @@
|
|
|
965
895
|
"multiple": false,
|
|
966
896
|
"type": "option"
|
|
967
897
|
},
|
|
968
|
-
"role": {
|
|
969
|
-
"aliases": [
|
|
970
|
-
"profile"
|
|
971
|
-
],
|
|
972
|
-
"description": "AI 登录角色",
|
|
973
|
-
"name": "role",
|
|
974
|
-
"hasDynamicHelp": false,
|
|
975
|
-
"multiple": false,
|
|
976
|
-
"type": "option"
|
|
977
|
-
},
|
|
978
898
|
"account": {
|
|
979
899
|
"description": "AI 登录账号",
|
|
980
900
|
"name": "account",
|
|
@@ -1069,16 +989,6 @@
|
|
|
1069
989
|
"multiple": false,
|
|
1070
990
|
"type": "option"
|
|
1071
991
|
},
|
|
1072
|
-
"role": {
|
|
1073
|
-
"aliases": [
|
|
1074
|
-
"profile"
|
|
1075
|
-
],
|
|
1076
|
-
"description": "AI 登录角色",
|
|
1077
|
-
"name": "role",
|
|
1078
|
-
"hasDynamicHelp": false,
|
|
1079
|
-
"multiple": false,
|
|
1080
|
-
"type": "option"
|
|
1081
|
-
},
|
|
1082
992
|
"account": {
|
|
1083
993
|
"description": "AI 登录账号",
|
|
1084
994
|
"name": "account",
|
|
@@ -1151,16 +1061,6 @@
|
|
|
1151
1061
|
"multiple": false,
|
|
1152
1062
|
"type": "option"
|
|
1153
1063
|
},
|
|
1154
|
-
"role": {
|
|
1155
|
-
"aliases": [
|
|
1156
|
-
"profile"
|
|
1157
|
-
],
|
|
1158
|
-
"description": "AI 登录角色",
|
|
1159
|
-
"name": "role",
|
|
1160
|
-
"hasDynamicHelp": false,
|
|
1161
|
-
"multiple": false,
|
|
1162
|
-
"type": "option"
|
|
1163
|
-
},
|
|
1164
1064
|
"account": {
|
|
1165
1065
|
"description": "AI 登录账号",
|
|
1166
1066
|
"name": "account",
|
|
@@ -1267,16 +1167,6 @@
|
|
|
1267
1167
|
"multiple": false,
|
|
1268
1168
|
"type": "option"
|
|
1269
1169
|
},
|
|
1270
|
-
"role": {
|
|
1271
|
-
"aliases": [
|
|
1272
|
-
"profile"
|
|
1273
|
-
],
|
|
1274
|
-
"description": "AI 登录角色",
|
|
1275
|
-
"name": "role",
|
|
1276
|
-
"hasDynamicHelp": false,
|
|
1277
|
-
"multiple": false,
|
|
1278
|
-
"type": "option"
|
|
1279
|
-
},
|
|
1280
1170
|
"account": {
|
|
1281
1171
|
"description": "AI 登录账号",
|
|
1282
1172
|
"name": "account",
|
|
@@ -1346,5 +1236,5 @@
|
|
|
1346
1236
|
"enableJsonFlag": false
|
|
1347
1237
|
}
|
|
1348
1238
|
},
|
|
1349
|
-
"version": "0.1.
|
|
1239
|
+
"version": "0.1.13"
|
|
1350
1240
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ty_krystal/sei-ai",
|
|
3
3
|
"description": "SEI CLI generated with oclif",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.13",
|
|
5
5
|
"author": "tanyu",
|
|
6
6
|
"bin": {
|
|
7
7
|
"sei-ai": "./bin/run.js"
|
|
@@ -26,6 +26,7 @@
|
|
|
26
26
|
"mocha": "^11",
|
|
27
27
|
"oclif": "^4",
|
|
28
28
|
"shx": "^0.3.4",
|
|
29
|
+
"tsx": "^4.22.0",
|
|
29
30
|
"ts-node": "^10",
|
|
30
31
|
"typescript": "^5"
|
|
31
32
|
},
|
|
@@ -56,6 +57,9 @@
|
|
|
56
57
|
"strategy": "explicit",
|
|
57
58
|
"target": "./dist/commands.js"
|
|
58
59
|
},
|
|
60
|
+
"hooks": {
|
|
61
|
+
"command_not_found": "./dist/hooks/command_not_found.js"
|
|
62
|
+
},
|
|
59
63
|
"plugins": [
|
|
60
64
|
"@oclif/plugin-help",
|
|
61
65
|
"@oclif/plugin-plugins"
|
|
@@ -77,7 +81,7 @@
|
|
|
77
81
|
"publish:npm": "npm publish --access public",
|
|
78
82
|
"start": "node ./bin/run.js",
|
|
79
83
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
80
|
-
"test": "pnpm run build &&
|
|
84
|
+
"test": "pnpm run build && node --import tsx --test test/**/*.test.ts",
|
|
81
85
|
"version": "oclif readme && git add README.md"
|
|
82
86
|
},
|
|
83
87
|
"types": "dist/index.d.ts"
|