ihui-cli 0.0.0-stage → 1.0.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/LICENSE +201 -0
- package/NOTICE +44 -0
- package/README.md +219 -2
- package/dist/index.js +129648 -0
- package/dist/messages/cli/en.json +533 -0
- package/dist/messages/cli/ja.json +533 -0
- package/dist/messages/cli/ko.json +533 -0
- package/dist/messages/cli/zh-CN.json +533 -0
- package/dist/messages/cli/zh-TW.json +533 -0
- package/dist/messages/shared/en.json +2489 -0
- package/dist/messages/shared/ja.json +2489 -0
- package/dist/messages/shared/ko.json +2489 -0
- package/dist/messages/shared/zh-CN.json +2489 -0
- package/dist/messages/shared/zh-TW.json +2489 -0
- package/package.json +31 -4
package/LICENSE
ADDED
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
|
6
|
+
|
|
7
|
+
1. Definitions.
|
|
8
|
+
|
|
9
|
+
"License" shall mean the terms and conditions for use, reproduction,
|
|
10
|
+
and distribution as defined by Sections 1 through 9 of this document.
|
|
11
|
+
|
|
12
|
+
"Licensor" shall mean the copyright owner or entity authorized by
|
|
13
|
+
the copyright owner that is granting the License.
|
|
14
|
+
|
|
15
|
+
"Legal Entity" shall mean the union of the acting entity and all
|
|
16
|
+
other entities that control, are controlled by, or are under common
|
|
17
|
+
control with that entity. For the purposes of this definition,
|
|
18
|
+
"control" means (i) the power, direct or indirect, to cause the
|
|
19
|
+
direction or management of such entity, whether by contract or
|
|
20
|
+
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
|
21
|
+
outstanding shares, or (iii) beneficial ownership of such entity.
|
|
22
|
+
|
|
23
|
+
"You" (or "Your") shall mean an individual or Legal Entity
|
|
24
|
+
exercising permissions granted by this License.
|
|
25
|
+
|
|
26
|
+
"Source" form shall mean the preferred form for making modifications,
|
|
27
|
+
including but not limited to software source code, documentation
|
|
28
|
+
source, and configuration files.
|
|
29
|
+
|
|
30
|
+
"Object" form shall mean any form resulting from mechanical
|
|
31
|
+
transformation or translation of a Source form, including but
|
|
32
|
+
not limited to compiled object code, generated documentation,
|
|
33
|
+
and conversions to other media types.
|
|
34
|
+
|
|
35
|
+
"Work" shall mean the work of authorship, whether in Source or
|
|
36
|
+
Object form, made available under the License, as indicated by a
|
|
37
|
+
copyright notice that is included in or attached to the work
|
|
38
|
+
(an example is provided in the Appendix below).
|
|
39
|
+
|
|
40
|
+
"Derivative Works" shall mean any work, whether in Source or Object
|
|
41
|
+
form, that is based on (or derived from) the Work and for which the
|
|
42
|
+
editorial revisions, annotations, elaborations, or other modifications
|
|
43
|
+
represent, as a whole, an original work of authorship. For the purposes
|
|
44
|
+
of this License, Derivative Works shall not include works that remain
|
|
45
|
+
separable from, or merely link (or bind by name) to the interfaces of,
|
|
46
|
+
the Work and Derivative Works thereof.
|
|
47
|
+
|
|
48
|
+
"Contribution" shall mean any work of authorship, including
|
|
49
|
+
the original version of the Work and any modifications or additions
|
|
50
|
+
to that Work or Derivative Works thereof, that is intentionally
|
|
51
|
+
submitted to Licensor for inclusion in the Work by the copyright owner
|
|
52
|
+
or by an individual or Legal Entity authorized to submit on behalf of
|
|
53
|
+
the copyright owner. For the purposes of this definition, "submitted"
|
|
54
|
+
means any form of electronic, verbal, or written communication sent
|
|
55
|
+
to the Licensor or its representatives, including but not limited to
|
|
56
|
+
communication on electronic mailing lists, source code control systems,
|
|
57
|
+
and issue tracking systems that are managed by, or on behalf of, the
|
|
58
|
+
Licensor for the purpose of discussing and improving the Work, but
|
|
59
|
+
excluding communication that is conspicuously marked or otherwise
|
|
60
|
+
designated in writing by the copyright owner as "Not a Contribution."
|
|
61
|
+
|
|
62
|
+
"Contributor" shall mean Licensor and any individual or Legal Entity
|
|
63
|
+
on behalf of whom a Contribution has been received by Licensor and
|
|
64
|
+
subsequently incorporated within the Work.
|
|
65
|
+
|
|
66
|
+
2. Grant of Copyright License. Subject to the terms and conditions of
|
|
67
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
68
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
69
|
+
copyright license to reproduce, prepare Derivative Works of,
|
|
70
|
+
publicly display, publicly perform, sublicense, and distribute the
|
|
71
|
+
Work and such Derivative Works in Source or Object form.
|
|
72
|
+
|
|
73
|
+
3. Grant of Patent License. Subject to the terms and conditions of
|
|
74
|
+
this License, each Contributor hereby grants to You a perpetual,
|
|
75
|
+
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
|
76
|
+
(except as stated in this section) patent license to make, have made,
|
|
77
|
+
use, offer to sell, sell, import, and otherwise transfer the Work,
|
|
78
|
+
where such license applies only to those patent claims licensable
|
|
79
|
+
by such Contributor that are necessarily infringed by their
|
|
80
|
+
Contribution(s) alone or by combination of their Contribution(s)
|
|
81
|
+
with the Work to which such Contribution(s) was submitted. If You
|
|
82
|
+
institute patent litigation against any entity (including a
|
|
83
|
+
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
|
84
|
+
or a Contribution incorporated within the Work constitutes direct
|
|
85
|
+
or contributory patent infringement, then any patent licenses
|
|
86
|
+
granted to You under this License for that Work shall terminate
|
|
87
|
+
as of the date such litigation is filed.
|
|
88
|
+
|
|
89
|
+
4. Redistribution. You may reproduce and distribute copies of the
|
|
90
|
+
Work or Derivative Works thereof in any medium, with or without
|
|
91
|
+
modifications, and in Source or Object form, provided that You
|
|
92
|
+
meet the following conditions:
|
|
93
|
+
|
|
94
|
+
(a) You must give any other recipients of the Work or
|
|
95
|
+
Derivative Works a copy of this License; and
|
|
96
|
+
|
|
97
|
+
(b) You must cause any modified files to carry prominent notices
|
|
98
|
+
stating that You changed the files; and
|
|
99
|
+
|
|
100
|
+
(c) You must retain, in the Source form of any Derivative Works
|
|
101
|
+
that You distribute, all copyright, patent, trademark, and
|
|
102
|
+
attribution notices from the Source form of the Work,
|
|
103
|
+
excluding those notices that do not pertain to any part of
|
|
104
|
+
the Derivative Works; and
|
|
105
|
+
|
|
106
|
+
(d) If the Work includes a "NOTICE" text file as part of its
|
|
107
|
+
distribution, then any Derivative Works that You distribute must
|
|
108
|
+
include a readable copy of the attribution notices contained
|
|
109
|
+
within such NOTICE file, excluding those notices that do not
|
|
110
|
+
pertain to any part of the Derivative Works, in at least one
|
|
111
|
+
of the following places: within a NOTICE text file distributed
|
|
112
|
+
as part of the Derivative Works; within the Source form or
|
|
113
|
+
documentation, if provided along with the Derivative Works; or,
|
|
114
|
+
within a display generated by the Derivative Works, if and
|
|
115
|
+
wherever such third-party notices normally appear. The contents
|
|
116
|
+
of the NOTICE file are for informational purposes only and
|
|
117
|
+
do not modify the License. You may add Your own attribution
|
|
118
|
+
notices within Derivative Works that You distribute, alongside
|
|
119
|
+
or as an addendum to the NOTICE text from the Work, provided
|
|
120
|
+
that such additional attribution notices cannot be construed
|
|
121
|
+
as modifying the License.
|
|
122
|
+
|
|
123
|
+
You may add Your own copyright statement to Your modifications and
|
|
124
|
+
may provide additional or different license terms and conditions
|
|
125
|
+
for use, reproduction, or distribution of Your modifications, or
|
|
126
|
+
for any such Derivative Works as a whole, provided Your use,
|
|
127
|
+
reproduction, and distribution of the Work otherwise complies with
|
|
128
|
+
the conditions stated in this License.
|
|
129
|
+
|
|
130
|
+
5. Submission of Contributions. Unless You explicitly state otherwise,
|
|
131
|
+
any Contribution intentionally submitted for inclusion in the Work
|
|
132
|
+
by You to the Licensor shall be under the terms and conditions of
|
|
133
|
+
this License, without any additional terms or conditions.
|
|
134
|
+
Notwithstanding the above, nothing herein shall supersede or modify
|
|
135
|
+
the terms of any separate license agreement you may have executed
|
|
136
|
+
with Licensor regarding such Contributions.
|
|
137
|
+
|
|
138
|
+
6. Trademarks. This License does not grant permission to use the trade
|
|
139
|
+
names, trademarks, service marks, or product names of the Licensor,
|
|
140
|
+
except as required for reasonable and customary use in describing the
|
|
141
|
+
origin of the Work and reproducing the content of the NOTICE file.
|
|
142
|
+
|
|
143
|
+
7. Disclaimer of Warranty. Unless required by applicable law or
|
|
144
|
+
agreed to in writing, Licensor provides the Work (and each
|
|
145
|
+
Contributor provides its Contributions) on an "AS IS" BASIS,
|
|
146
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
147
|
+
implied, including, without limitation, any warranties or conditions
|
|
148
|
+
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
|
149
|
+
PARTICULAR PURPOSE. You are solely responsible for determining the
|
|
150
|
+
appropriateness of using or redistributing the Work and assume any
|
|
151
|
+
risks associated with Your exercise of permissions under this License.
|
|
152
|
+
|
|
153
|
+
8. Limitation of Liability. In no event and under no legal theory,
|
|
154
|
+
whether in tort (including negligence), contract, or otherwise,
|
|
155
|
+
unless required by applicable law (such as deliberate and grossly
|
|
156
|
+
negligent acts) or agreed to in writing, shall any Contributor be
|
|
157
|
+
liable to You for damages, including any direct, indirect, special,
|
|
158
|
+
incidental, or consequential damages of any character arising as a
|
|
159
|
+
result of this License or out of the use or inability to use the
|
|
160
|
+
Work (including but not limited to damages for loss of goodwill,
|
|
161
|
+
work stoppage, computer failure or malfunction, or any and all
|
|
162
|
+
other commercial damages or losses), even if such Contributor
|
|
163
|
+
has been advised of the possibility of such damages.
|
|
164
|
+
|
|
165
|
+
9. Accepting Warranty or Additional Liability. While redistributing
|
|
166
|
+
the Work or Derivative Works thereof, You may choose to offer,
|
|
167
|
+
and charge a fee for, acceptance of support, warranty, indemnity,
|
|
168
|
+
or other liability obligations and/or rights consistent with this
|
|
169
|
+
License. However, in accepting such obligations, You may act only
|
|
170
|
+
on Your own behalf and on Your sole responsibility, not on behalf
|
|
171
|
+
of any other Contributor, and only if You agree to indemnify,
|
|
172
|
+
defend, and hold each Contributor harmless for any liability
|
|
173
|
+
incurred by, or claims asserted against, such Contributor by reason
|
|
174
|
+
of your accepting any such warranty or additional liability.
|
|
175
|
+
|
|
176
|
+
END OF TERMS AND CONDITIONS
|
|
177
|
+
|
|
178
|
+
APPENDIX: How to apply the Apache License to your work.
|
|
179
|
+
|
|
180
|
+
To apply the Apache License to your work, attach the following
|
|
181
|
+
boilerplate notice, with the fields enclosed by brackets "[]"
|
|
182
|
+
replaced with your own identifying information. (Don't include
|
|
183
|
+
the brackets!) The text should be enclosed in the appropriate
|
|
184
|
+
comment syntax for the file format. We also recommend that a
|
|
185
|
+
file or class name and description of purpose be included on the
|
|
186
|
+
same "printed page" as the copyright notice for easier
|
|
187
|
+
identification within third-party archives.
|
|
188
|
+
|
|
189
|
+
Copyright 2026 IHUI AI Contributors
|
|
190
|
+
|
|
191
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
192
|
+
you may not use this file except in compliance with the License.
|
|
193
|
+
You may obtain a copy of the License at
|
|
194
|
+
|
|
195
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
196
|
+
|
|
197
|
+
Unless required by applicable law or agreed to in writing, software
|
|
198
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
199
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
200
|
+
implied. See the License for the specific language governing permissions
|
|
201
|
+
and limitations under the License.
|
package/NOTICE
ADDED
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
IHUI-AI (智汇AI)
|
|
2
|
+
Copyright 2026 Li Chunchuan (李春川) · https://aizhs.top
|
|
3
|
+
|
|
4
|
+
This product includes software developed by IHUI AI (https://aizhs.top).
|
|
5
|
+
|
|
6
|
+
------------------------------------------------------------------
|
|
7
|
+
|
|
8
|
+
License:
|
|
9
|
+
This project is licensed under the Apache License 2.0 (see LICENSE).
|
|
10
|
+
Commercial use, modification and redistribution are permitted under
|
|
11
|
+
the terms of the Apache License 2.0 without separate authorization.
|
|
12
|
+
|
|
13
|
+
Under Apache-2.0 §4(b)(d), every copy (including modified versions)
|
|
14
|
+
you distribute must:
|
|
15
|
+
- retain this NOTICE file and the copyright statements;
|
|
16
|
+
- include the full License and NOTICE with the copy;
|
|
17
|
+
- carry prominent notices stating that you changed the files;
|
|
18
|
+
- prominently credit the source <https://aizhs.top>.
|
|
19
|
+
|
|
20
|
+
Source file headers carry a one-line visible copyright attribution;
|
|
21
|
+
please retain it when redistributing (Apache-2.0 §4 attribution notice).
|
|
22
|
+
|
|
23
|
+
------------------------------------------------------------------
|
|
24
|
+
|
|
25
|
+
第三方来源台账(Inbound third-party provenance ledger):
|
|
26
|
+
上面两段讲的是**出站**(别人复制我们的代码时必须保留什么)。本节讲**入站**:
|
|
27
|
+
本仓库携带的第三方 / 嵌入 / 复制内容,逐条登记在
|
|
28
|
+
config/third-party-provenance/embedded.json (打进产物的组件,如 vendored crate)
|
|
29
|
+
config/third-party-provenance/copied.json (复制进仓的源码与素材)
|
|
30
|
+
config/third-party-provenance/overrides.json (被 override 换掉来源的依赖)
|
|
31
|
+
config/third-party-provenance/mechanisms.json (只吸收机制、不带走代码的借鉴)
|
|
32
|
+
每条登记上游项目、获取来源、revision(不可考则显式 null 并说明)、许可证、
|
|
33
|
+
许可原文的位置与 sha256、本仓是否改过(Apache-2.0 §4(b) 要求标注修改),
|
|
34
|
+
以及"仍需审计"的义务清单。
|
|
35
|
+
判据:node scripts/provenance-ledger.mjs(--report 出人读盘点,--self-test 出取证),
|
|
36
|
+
入口 pnpm check:provenance。它同时反向核查:盘上任何 vendored 目录或带第三方
|
|
37
|
+
版权 / SPDX 头的文件,若台账里没有对应条目即判红。
|
|
38
|
+
|
|
39
|
+
分发本仓库任何部分(含 vendored 目录内的文件)时,除保留本 NOTICE 外,
|
|
40
|
+
还必须按台账登记的各自许可保留其上游版权声明与许可原文:
|
|
41
|
+
apps/desktop/src-tauri/vendor/tray-icon-0.24.2/ —— tray-icon (tauri-apps),
|
|
42
|
+
MIT OR Apache-2.0,许可原文随目录内的 LICENSE-APACHE / LICENSE-MIT 一并分发;
|
|
43
|
+
本仓对该副本的 Windows 后端修改见该条目 modification 字段。
|
|
44
|
+
本节是登记面的指针,不构成对上述任何组件的再授权;各组件许可以上述文件为准。
|
package/README.md
CHANGED
|
@@ -1,3 +1,220 @@
|
|
|
1
|
-
|
|
1
|
+
<!--
|
|
2
|
+
© 2026 IHUI AI (智汇AI) · 版权所有者: 李春川 (Li Chunchuan) · https://aizhs.top
|
|
3
|
+
Provenance-watermarked. 未授权商用可被溯源追责 (Apache-2.0 须保留本声明与 NOTICE)。
|
|
4
|
+
[IHUI-AI-PROVENANCE]:
|
|
5
|
+
-->
|
|
2
6
|
|
|
3
|
-
|
|
7
|
+
# IHUI AI CLI
|
|
8
|
+
|
|
9
|
+
> 全栈 AI 编码代理命令行工具 — 对标 Claude Code / OpenAI Codex,9 种安装方式,跨平台运行。
|
|
10
|
+
|
|
11
|
+
## 安装
|
|
12
|
+
|
|
13
|
+
### 1. npm(全平台)
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install -g ihui-cli
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### 2. curl 一键安装(macOS / Linux)
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
curl -fsSL https://aizhs.top/install.sh | bash
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
指定版本:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
curl -fsSL https://aizhs.top/install.sh | bash -s -- --version 1.0.0
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
### 3. PowerShell 一键安装(Windows)
|
|
32
|
+
|
|
33
|
+
```powershell
|
|
34
|
+
irm https://aizhs.top/install.ps1 | iex
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
指定版本:
|
|
38
|
+
|
|
39
|
+
```powershell
|
|
40
|
+
irm https://aizhs.top/install.ps1 | iex -Version 1.0.0
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
### 4. Homebrew(macOS / Linux)
|
|
44
|
+
|
|
45
|
+
```bash
|
|
46
|
+
brew install ihui
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
> 需先添加 tap:`brew tap ihui/ihui`
|
|
50
|
+
|
|
51
|
+
### 5. Scoop(Windows)
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
scoop install ihui
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
> 需先添加 bucket:`scoop bucket add ihui https://github.com/IHUI-INF-AI/IHUI-AI`
|
|
58
|
+
|
|
59
|
+
### 6. Winget(Windows)
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
winget install IHUI.IHUI
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
### 7. Docker(全平台)
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
docker run --rm -v "$(pwd):/workspace" ghcr.io/ihui/ai-cli
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
交互模式:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
docker run --rm -it -v "$(pwd):/workspace" ghcr.io/ihui/ai-cli chat
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 8. Snap(Linux)
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
sudo snap install ihui --classic
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 9. AppImage(Linux)
|
|
84
|
+
|
|
85
|
+
从 [GitHub Releases](https://github.com/IHUI-INF-AI/IHUI-AI/releases) 下载 `IHUI-x86_64.AppImage`:
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
chmod +x IHUI-x86_64.AppImage
|
|
89
|
+
./IHUI-x86_64.AppImage --help
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### 10. 单文件二进制(SEA,无 Node 依赖)
|
|
93
|
+
|
|
94
|
+
由 Node 22 SEA(Single Executable Applications)打包:esbuild 单文件 bundle → SEA blob → postject 注入 node.exe。exe 内嵌构建期版本与 10 份 i18n 语言包 assets,部署到任意目录无需 Node 运行时、无需仓库文件。
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
# 从源码构建(本机需 node 22+ 与 esbuild/postject)
|
|
98
|
+
pnpm --filter ihui-cli build:sea
|
|
99
|
+
# 产物:apps/cli/dist-sea/ihui.exe(旁随带 package.json,可随 exe 一同分发以保留 engines 元信息,缺省亦可用)
|
|
100
|
+
|
|
101
|
+
# 发布前强制烟雾测试:拷到仓库外空目录验收(版本/i18n/版本闸门都依赖内嵌数据)
|
|
102
|
+
cp apps/cli/dist-sea/ihui.exe /tmp/sea-accept/ && cd /tmp/sea-accept
|
|
103
|
+
./ihui.exe --version # 必须输出真实版本(非 0.0.0)
|
|
104
|
+
./ihui.exe --help # 必须输出中文描述(非裸键名如 cliEntry.tagline)
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
分发与安装脚本(`scripts/install.sh` / `install.ps1`)的二进制下载通道按
|
|
108
|
+
`releases/latest/download/ihui-<os>-<arch>.<ext>` 契约消费 GitHub Release 资产
|
|
109
|
+
(由 `release-cli.yml` 的 build-binary 矩阵产出)。
|
|
110
|
+
|
|
111
|
+
## 快速开始
|
|
112
|
+
|
|
113
|
+
### 示例 1:启动交互式 REPL
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
ihui
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
不带参数即进入交互式 REPL;多轮对话也可显式写 `ihui chat`。
|
|
120
|
+
|
|
121
|
+
### 示例 2:单次执行 agent 任务
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
ihui agent "为 src/utils.ts 添加单元测试"
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### 示例 3:配置 API key 和模型
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# 非交互:环境变量 + 启动参数
|
|
131
|
+
export IHUI_API_KEY="ihui_your_api_key"
|
|
132
|
+
ihui -m gpt-4o "为 src/utils.ts 添加单元测试"
|
|
133
|
+
|
|
134
|
+
# 或落盘到统一配置文件(生成模板、查看路径)
|
|
135
|
+
ihui settings init
|
|
136
|
+
ihui settings path
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
改单个配置项在 REPL 内进行:`/config list` · `/config get <key>` · `/config set <key> <value>`。
|
|
140
|
+
|
|
141
|
+
## 命令列表
|
|
142
|
+
|
|
143
|
+
| 命令 | 说明 |
|
|
144
|
+
| --- | --- |
|
|
145
|
+
| `ihui agent [prompt]` | 启动 AI 编码代理,执行编码任务 |
|
|
146
|
+
| `ihui` / `ihui chat` | 进入交互式 REPL(多轮对话) |
|
|
147
|
+
| `ihui settings <init\|path>` | 创建 / 定位统一配置文件(改配置项用 REPL 内的 `/config`) |
|
|
148
|
+
| `ihui undo [steps]` | 回滚最近 N 步文件改动(默认 1 步) |
|
|
149
|
+
| `ihui redo [steps]` | 重做最近 N 步被 undo 的改动 |
|
|
150
|
+
| `ihui share [session-id]` | 生成可分享的会话快照 |
|
|
151
|
+
| `ihui mode [mode]` | 查看或切换交互模式:plan(只读调研)/ build(执行修改)/ review(审查 diff) |
|
|
152
|
+
| `ihui hooks-auto <discover\|conflicts\|test>` | 自动发现多目录 hook 脚本 / 检测冲突 / 沙箱试跑 |
|
|
153
|
+
| `ihui serve` | 启动 Agent 内核 HTTP/WS server(端口 8841),供远程驱动 |
|
|
154
|
+
| `ihui connect <url>` | 作为客户端连接远程 Agent server |
|
|
155
|
+
| `ihui capabilities remote list --server <url>` | 查询远程端的能力清单 |
|
|
156
|
+
|
|
157
|
+
运行 `ihui --help` 查看完整命令列表和选项。
|
|
158
|
+
|
|
159
|
+
## 配置说明
|
|
160
|
+
|
|
161
|
+
### API Key
|
|
162
|
+
|
|
163
|
+
支持多种 LLM 提供商,通过环境变量或配置文件设置:
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
# 环境变量(推荐)
|
|
167
|
+
export IHUI_API_KEY="ihui_your_api_key"
|
|
168
|
+
|
|
169
|
+
# 或写入统一配置文件(生成模板后编辑 apiKey 字段;也可 `ihui login` 换取 JWT)
|
|
170
|
+
ihui settings init
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
配置文件路径:`~/.ihui/settings.json`
|
|
174
|
+
|
|
175
|
+
### 模型选择
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# 单次指定
|
|
179
|
+
ihui -m gpt-4o "任务描述"
|
|
180
|
+
|
|
181
|
+
# 持久化:REPL 内 /config set defaultModel gpt-4o,或直接改 settings.json 的 defaultModel 字段
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
支持的模型包括 OpenAI GPT 系列、Anthropic Claude 系列、国产大模型(智谱 GLM、百度文心、阿里通义等)。
|
|
185
|
+
|
|
186
|
+
## 环境要求
|
|
187
|
+
|
|
188
|
+
- **Node.js** >= 20.10.0(使用 npm / Homebrew / Snap / curl 安装方式时)
|
|
189
|
+
- **Docker**(使用 Docker 安装方式时)
|
|
190
|
+
- **操作系统**: macOS 12+ / Windows 10+ / Linux(Ubuntu 20.04+ / Debian 11+ / CentOS 8+)
|
|
191
|
+
|
|
192
|
+
## 文档
|
|
193
|
+
|
|
194
|
+
- [完整文档](https://github.com/IHUI-INF-AI/IHUI-AI#readme)
|
|
195
|
+
- [架构设计](https://github.com/IHUI-INF-AI/IHUI-AI/blob/main/docs/architecture.md)
|
|
196
|
+
- [变更日志](https://github.com/IHUI-INF-AI/IHUI-AI/releases)
|
|
197
|
+
- [问题反馈](https://github.com/IHUI-INF-AI/IHUI-AI/issues)
|
|
198
|
+
|
|
199
|
+
## Code signing policy
|
|
200
|
+
|
|
201
|
+
Free code signing provided by SignPath.io, certificate by SignPath Foundation.
|
|
202
|
+
|
|
203
|
+
- **Scope**: starting with the first SignPath-approved release, every distributed Windows binary (`ihui.exe` from GitHub Releases) is Authenticode-signed during the GitHub Actions release pipeline. Builds from before that release are unsigned.
|
|
204
|
+
- **Team roles** (single-maintainer project): Authors / Committers: [@IHUI-INF-AI](https://github.com/IHUI-INF-AI); Reviewers: same; Approvers (signing approval for each release): same. All accounts interacting with the signing pipeline use multi-factor authentication.
|
|
205
|
+
- **Builds**: every release artifact is produced by the GitHub Actions workflow in this repository from the release tag's source tree. The signing request for each release is approved manually by the Approver in the SignPath portal before artifacts are published.
|
|
206
|
+
|
|
207
|
+
## Privacy statement
|
|
208
|
+
|
|
209
|
+
This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it. The only outbound connections, each triggered by user-configured features, are:
|
|
210
|
+
|
|
211
|
+
- **AI API calls**: sent to the user-configured IHUI API endpoint (default `https://api.aizhs.top`) when the user runs a chat/agent task;
|
|
212
|
+
- **Version check**: contacts the user-configured API endpoint and `registry.npmjs.org` to check for CLI updates — disable entirely with the environment variable `IHUI_NO_UPDATE_CHECK=1`;
|
|
213
|
+
- **Telemetry**: disabled by default (`settings.telemetry.enabled = false`, fully no-op). If explicitly enabled by the user, events go only to the user-configured endpoint.
|
|
214
|
+
|
|
215
|
+
Crash logs are written locally to `~/.ihui/crash-logs` and never leave the machine automatically.
|
|
216
|
+
|
|
217
|
+
## License
|
|
218
|
+
|
|
219
|
+
Apache-2.0 — see [LICENSE](../../LICENSE).
|
|
220
|
+
<!-- -->
|