@dongowu/git-ai-cli 1.0.20 → 1.0.21
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 +158 -153
- package/README_EN.md +165 -141
- package/dist/cli_main.js +66 -0
- package/dist/cli_main.js.map +1 -1
- package/dist/commands/branch.d.ts +11 -0
- package/dist/commands/branch.d.ts.map +1 -0
- package/dist/commands/branch.js +279 -0
- package/dist/commands/branch.js.map +1 -0
- package/dist/commands/commit.d.ts.map +1 -1
- package/dist/commands/commit.js +26 -1
- package/dist/commands/commit.js.map +1 -1
- package/dist/commands/config_manage.d.ts.map +1 -1
- package/dist/commands/config_manage.js +212 -3
- package/dist/commands/config_manage.js.map +1 -1
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +76 -10
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/msg.d.ts.map +1 -1
- package/dist/commands/msg.js +12 -1
- package/dist/commands/msg.js.map +1 -1
- package/dist/commands/pr.d.ts +8 -0
- package/dist/commands/pr.d.ts.map +1 -0
- package/dist/commands/pr.js +96 -0
- package/dist/commands/pr.js.map +1 -0
- package/dist/commands/release.d.ts +8 -0
- package/dist/commands/release.d.ts.map +1 -0
- package/dist/commands/release.js +95 -0
- package/dist/commands/release.js.map +1 -0
- package/dist/commands/report.d.ts.map +1 -1
- package/dist/commands/report.js +9 -1
- package/dist/commands/report.js.map +1 -1
- package/dist/types.d.ts +26 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/utils/ai.d.ts +22 -0
- package/dist/utils/ai.d.ts.map +1 -1
- package/dist/utils/ai.js +699 -33
- package/dist/utils/ai.js.map +1 -1
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +93 -0
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/git.d.ts +8 -0
- package/dist/utils/git.d.ts.map +1 -1
- package/dist/utils/git.js +88 -0
- package/dist/utils/git.js.map +1 -1
- package/package.json +1 -1
- package/release_notes.md +3 -4
package/README.md
CHANGED
|
@@ -18,234 +18,239 @@
|
|
|
18
18
|
<p align="center">
|
|
19
19
|
<a href="./README_EN.md">English</a> •
|
|
20
20
|
<a href="#-快速开始">快速开始</a> •
|
|
21
|
-
<a href="
|
|
22
|
-
<a href="
|
|
23
|
-
<a href="
|
|
21
|
+
<a href="#-使用指南推荐流程">使用指南</a> •
|
|
22
|
+
<a href="#-配置">配置</a> •
|
|
23
|
+
<a href="#-命令速查">命令</a>
|
|
24
24
|
</p>
|
|
25
25
|
|
|
26
26
|
---
|
|
27
27
|
|
|
28
|
-
**git-ai-cli**
|
|
28
|
+
**git-ai-cli** 不只是 Commit Message 生成器,它是你的**全能 AI 开发助手**:理解 diff、识别分支意图、统一团队规范、自动生成周报/PR/Release Notes。
|
|
29
29
|
|
|
30
30
|
---
|
|
31
31
|
|
|
32
32
|
## 🚀 快速开始
|
|
33
33
|
|
|
34
34
|
```bash
|
|
35
|
-
# 1
|
|
35
|
+
# 1) 安装
|
|
36
36
|
npm install -g @dongowu/git-ai-cli
|
|
37
37
|
|
|
38
|
-
# 2
|
|
38
|
+
# 2) 初始化 (自动探测本地模型或配置 API)
|
|
39
39
|
git-ai init
|
|
40
40
|
|
|
41
|
-
# 3
|
|
41
|
+
# 3) 使用
|
|
42
42
|
git add .
|
|
43
43
|
git-ai
|
|
44
44
|
```
|
|
45
45
|
|
|
46
46
|
---
|
|
47
47
|
|
|
48
|
-
##
|
|
49
|
-
|
|
50
|
-
### 1. 🇨🇳 极致本土化 & 隐私优先
|
|
51
|
-
- **DeepSeek/Qwen 深度优化**:内置专家级提示词,针对中文代码语境优化,不只是翻译 Diff,而是理解“意图”。
|
|
52
|
-
- **Ollama 零配置**:自动探测本地运行的 Ollama 模型(如 `llama3`, `deepseek-coder`),无需手动输入模型名。数据完全不出网,绝对安全。
|
|
53
|
-
|
|
54
|
-
### 2. 🧠 上下文感知 (Context Aware)
|
|
55
|
-
- **风格学习**:自动分析您最近的 10 次提交记录,模仿您的语气、格式(如 Emoji 使用习惯)和语言风格。
|
|
56
|
-
- **分支感知**:读取当前分支名(如 `feat/user-login`, `fix/JIRA-123`),生成包含 Issue ID 或功能模块的规范提交信息。
|
|
57
|
-
|
|
58
|
-
### 3. 🤖 Agent 智能体 (New)
|
|
59
|
-
从单纯的“文本生成”进化为“智能代码专家”。
|
|
60
|
-
- **Smart Diff**: 遇到超大变更不再瞎编。Agent 会自动分析统计数据,只读取核心文件的代码,大幅降低 Token 限制带来的影响。
|
|
61
|
-
- **影响分析 (Impact Analysis)**: 修改了核心 API?Agent 会主动**搜索整个代码库**(`git grep`),检查调用方是否同步修改,并在 Commit Body 中提示潜在风险。
|
|
62
|
-
- **Git Flow 护航**: 在 `release/*` 或 `hotfix/*` 分支上自动开启深度检查,守卫生产环境。
|
|
63
|
-
|
|
64
|
-
### 4. ⚙️ 工程化配置 (Project Config)
|
|
65
|
-
- **项目级配置**:支持在项目根目录创建 `.git-ai.json`,团队统一共享模型和 Prompt 配置(优先级 > 全局配置)。
|
|
66
|
-
- **智能忽略**:支持 `.git-aiignore` 文件,排除自动生成文件(如 `package-lock.json`)或大文件,节省 Token 并提高准确性。
|
|
67
|
-
|
|
68
|
-
### 4. 🪝 无感集成 (Git Hook)
|
|
69
|
-
- **零打扰**:安装 Hook 后,只需执行 `git commit`(不带 `-m`),AI 自动填充消息并打开编辑器。
|
|
70
|
-
- **兼容性**:完美兼容现有 Git 工作流,支持 `git commit --no-verify` 跳过。
|
|
71
|
-
|
|
72
|
-
### 4. 📊 智能周报 (AI Report)
|
|
73
|
-
- **一键生成**:`git-ai report` 自动分析你最近的代码提交。
|
|
74
|
-
- **价值导向**:将零碎的 Commit 转化为结构化的“核心产出”、“问题修复”和“技术优化”报告。
|
|
75
|
-
|
|
76
|
-
---
|
|
48
|
+
## ✅ 使用指南(推荐流程)
|
|
77
49
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
50
|
+
1) **安装与初始化**
|
|
51
|
+
```bash
|
|
52
|
+
npm install -g @dongowu/git-ai-cli
|
|
53
|
+
git-ai init
|
|
54
|
+
```
|
|
82
55
|
|
|
56
|
+
2) **团队配置(推荐)**:在项目根目录写 `.git-ai.json`
|
|
83
57
|
```json
|
|
84
58
|
{
|
|
85
59
|
"provider": "deepseek",
|
|
86
60
|
"baseUrl": "https://api.deepseek.com/v1",
|
|
87
61
|
"model": "deepseek-reasoner",
|
|
88
62
|
"agentModel": "deepseek-chat",
|
|
89
|
-
"locale": "
|
|
90
|
-
"enableFooter":
|
|
63
|
+
"locale": "en",
|
|
64
|
+
"enableFooter": false,
|
|
65
|
+
"rulesPreset": "conventional",
|
|
66
|
+
"fallbackModels": ["deepseek-chat", "qwen-turbo"],
|
|
67
|
+
"policy": { "strict": true },
|
|
68
|
+
"rules": {
|
|
69
|
+
"types": ["feat", "fix", "docs", "refactor", "perf", "test", "chore", "build", "ci"],
|
|
70
|
+
"maxSubjectLength": 50,
|
|
71
|
+
"requireScope": false,
|
|
72
|
+
"issuePattern": "[A-Z]+-\\d+",
|
|
73
|
+
"issuePlacement": "footer",
|
|
74
|
+
"issueFooterPrefix": "Refs",
|
|
75
|
+
"requireIssue": false
|
|
76
|
+
},
|
|
77
|
+
"branch": {
|
|
78
|
+
"types": ["feat", "fix", "docs"],
|
|
79
|
+
"pattern": "{type}/{issue?}{name}",
|
|
80
|
+
"issueSeparator": "-",
|
|
81
|
+
"nameMaxLength": 50
|
|
82
|
+
}
|
|
91
83
|
}
|
|
92
84
|
```
|
|
93
85
|
|
|
94
|
-
|
|
95
|
-
- `model`:基础模式生成提交信息的模型
|
|
96
|
-
- `agentModel`:Agent 模式(`-a`)专用模型(建议选择稳定支持 tools 的模型;DeepSeek 常用 `deepseek-chat`)
|
|
97
|
-
- `locale`:仅支持 `zh` / `en`
|
|
98
|
-
- `apiKey` 建议通过环境变量或全局配置设置,不要提交到仓库
|
|
99
|
-
|
|
100
|
-
### 命令行配置(可脚本化)
|
|
101
|
-
|
|
86
|
+
3) **日常提交**
|
|
102
87
|
```bash
|
|
103
|
-
|
|
104
|
-
git-ai
|
|
88
|
+
git add .
|
|
89
|
+
git-ai
|
|
90
|
+
```
|
|
105
91
|
|
|
106
|
-
|
|
107
|
-
|
|
92
|
+
4) **Hook 无感集成(强烈推荐)**
|
|
93
|
+
```bash
|
|
94
|
+
git-ai hook install
|
|
95
|
+
# 失败阻断提交(可选)
|
|
96
|
+
GIT_AI_HOOK_STRICT=1 git commit
|
|
97
|
+
# 失败时关闭兜底(可选)
|
|
98
|
+
GIT_AI_HOOK_FALLBACK=0 git commit
|
|
99
|
+
```
|
|
108
100
|
|
|
109
|
-
|
|
110
|
-
|
|
101
|
+
5) **脚本 / CI**
|
|
102
|
+
```bash
|
|
103
|
+
git-ai msg --json
|
|
104
|
+
```
|
|
111
105
|
|
|
112
|
-
|
|
113
|
-
|
|
106
|
+
6) **创建分支(交互式)**
|
|
107
|
+
```bash
|
|
108
|
+
git-ai branch
|
|
114
109
|
```
|
|
115
110
|
|
|
116
|
-
|
|
111
|
+
7) **PR / Release / Report**
|
|
112
|
+
```bash
|
|
113
|
+
# PR 描述
|
|
114
|
+
git-ai pr --base main --head HEAD
|
|
117
115
|
|
|
118
|
-
|
|
119
|
-
-
|
|
120
|
-
- `GIT_AI_API_KEY`(也支持 `DEEPSEEK_API_KEY`、`OPENAI_API_KEY`)
|
|
121
|
-
- `GIT_AI_TIMEOUT_MS`(请求超时,默认 120000)
|
|
122
|
-
- `GIT_AI_MAX_DIFF_CHARS`(控制 diff 截断长度)
|
|
123
|
-
- `GIT_AI_MAX_OUTPUT_TOKENS`(控制输出 token 上限)
|
|
124
|
-
- `GIT_AI_AUTO_AGENT=0`(关闭自动 Agent;仍可用 `-a` 强制开启)
|
|
125
|
-
- `GIT_AI_DISABLE_AGENT=1`(完全禁用 Agent)
|
|
126
|
-
- `GIT_AI_RECENT_COMMITS_ALL=1`(Recent Commits 不限制作者)
|
|
127
|
-
- `GIT_AI_RECENT_COMMITS_FALLBACK=0`(禁用“无作者回退”)
|
|
128
|
-
- `GIT_AI_DISABLE_UPDATE=1`(关闭更新检查)
|
|
129
|
-
- `GIT_AI_UPDATE_INTERVAL_HOURS=24`(更新检查间隔,单位小时)
|
|
130
|
-
- `GIT_AI_MSG_DELIM=<<<GIT_AI_END>>>`(`git-ai msg -n` 多候选分隔符)
|
|
131
|
-
- `GIT_AI_DEBUG=1`(打印更详细错误)
|
|
132
|
-
|
|
133
|
-
OpenCommit 兼容变量(可直接复用):
|
|
134
|
-
- `OCO_AI_PROVIDER` / `OCO_MODEL` / `OCO_API_KEY`
|
|
135
|
-
- `OCO_TOKENS_MAX_INPUT` / `OCO_TOKENS_MAX_OUTPUT`
|
|
136
|
-
|
|
137
|
-
### 忽略文件 `.git-aiignore`
|
|
138
|
-
在项目根目录创建,用于排除不想发送给 AI 的文件(语法同 `.gitignore`):
|
|
116
|
+
# Release Notes
|
|
117
|
+
git-ai release --from v1.0.0 --to HEAD
|
|
139
118
|
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
dist/
|
|
143
|
-
*.min.js
|
|
119
|
+
# 周报
|
|
120
|
+
git-ai report --days 7
|
|
144
121
|
```
|
|
145
122
|
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
### 常见问题
|
|
149
|
-
|
|
150
|
-
**1) 401 / API Key 无效**
|
|
151
|
-
- 先看生效配置:`git-ai config get --json --local`
|
|
152
|
-
- 再检查环境变量是否覆盖:`GIT_AI_API_KEY / DEEPSEEK_API_KEY / OPENAI_API_KEY / OCO_API_KEY`
|
|
123
|
+
---
|
|
153
124
|
|
|
154
|
-
|
|
155
|
-
- 通过 `.git-aiignore` / `.opencommitignore` 忽略大文件(lock/build/map)
|
|
156
|
-
- 或设置 `GIT_AI_MAX_DIFF_CHARS`(也兼容 `OCO_TOKENS_MAX_INPUT`)
|
|
125
|
+
## ✨ 核心特性
|
|
157
126
|
|
|
158
|
-
**
|
|
159
|
-
-
|
|
127
|
+
- **DeepSeek/Qwen 深度优化**:理解意图而不是简单翻译 diff
|
|
128
|
+
- **本地模型隐私优先**:Ollama / LM Studio 即插即用
|
|
129
|
+
- **上下文感知**:分支规则、提交风格学习、智能 scope
|
|
130
|
+
- **Agent 智能体**:大改动时自动做影响分析
|
|
131
|
+
- **团队规则**:规则模板 + 强校验(policy)
|
|
132
|
+
- **Hook 集成**:无感生成提交信息
|
|
133
|
+
- **AI 报告**:日报/周报/PR/Release Notes 一键生成
|
|
160
134
|
|
|
161
135
|
---
|
|
162
136
|
|
|
163
|
-
##
|
|
164
|
-
|
|
165
|
-
###
|
|
166
|
-
|
|
137
|
+
## ⚙️ 配置
|
|
138
|
+
|
|
139
|
+
### 项目级配置 `.git-ai.json`
|
|
140
|
+
- `provider / baseUrl / model / agentModel`
|
|
141
|
+
- `locale`: `zh` / `en`
|
|
142
|
+
- `outputFormat`: `text` / `json`
|
|
143
|
+
- `rulesPreset`: `conventional` / `angular` / `minimal`
|
|
144
|
+
- `fallbackModels`: 主模型失败时的回退模型列表
|
|
145
|
+
- `policy.strict`: 是否阻断不合规提交
|
|
146
|
+
- `rules`: 提交规范(类型、scope、长度、issue 等)
|
|
147
|
+
- `branch`: 分支规范(类型、pattern、长度等)
|
|
148
|
+
|
|
149
|
+
### 规则与策略
|
|
150
|
+
- `issuePattern`: 任务号正则(如 `PROJ-123` / `#123`)
|
|
151
|
+
- `issuePlacement`: `scope | subject | footer`
|
|
152
|
+
- `requireIssue`: 是否必须包含任务号
|
|
153
|
+
- `policy.strict`: 不合规则阻断提交
|
|
154
|
+
- `branch.pattern`: 分支模板(如 `{type}/{issue?}{name}`)
|
|
155
|
+
- `branch.types`: 分支类型列表
|
|
156
|
+
- `branch.issueSeparator`: issue 分隔符(默认 `-`)
|
|
157
|
+
- `branch.nameMaxLength`: 分支名长度上限
|
|
158
|
+
|
|
159
|
+
### CLI 设置(可脚本化)
|
|
167
160
|
```bash
|
|
168
|
-
|
|
169
|
-
git-ai
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
### 场景二:Git Flow 最佳实践 (Hook) 🌟 推荐
|
|
161
|
+
# 查看当前生效配置
|
|
162
|
+
git-ai config get --json
|
|
173
163
|
|
|
174
|
-
|
|
164
|
+
# 设置规则模板 / 严格策略 / 回退模型
|
|
165
|
+
git-ai config set rulesPreset conventional
|
|
166
|
+
git-ai config set policy '{"strict":true}'
|
|
167
|
+
git-ai config set fallbackModels "deepseek-chat,qwen-turbo"
|
|
175
168
|
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
git-ai
|
|
169
|
+
# 设置规则(JSON 或 @文件)
|
|
170
|
+
git-ai config set rules '{"types":["feat","fix"]}'
|
|
171
|
+
git-ai config set rules @rules.json --local
|
|
179
172
|
|
|
180
|
-
#
|
|
181
|
-
git-ai
|
|
173
|
+
# 设置分支规则
|
|
174
|
+
git-ai config set branch '{"types":["feat","fix"],"pattern":"{type}/{issue?}{name}"}'
|
|
182
175
|
```
|
|
183
176
|
|
|
184
|
-
|
|
185
|
-
```bash
|
|
186
|
-
git checkout -b feature/awesome-login
|
|
187
|
-
# ... 写代码 ...
|
|
188
|
-
git add .
|
|
189
|
-
git commit # ✨ AI 自动帮你写好了 "feat(login): implement awesome login logic"
|
|
190
|
-
```
|
|
177
|
+
---
|
|
191
178
|
|
|
192
|
-
|
|
179
|
+
## 🛠 命令速查
|
|
193
180
|
|
|
194
|
-
|
|
181
|
+
| 命令 | 说明 |
|
|
182
|
+
|------|------|
|
|
183
|
+
| `git-ai init` | 初始化配置 |
|
|
184
|
+
| `git-ai config get/set/describe` | 配置管理 |
|
|
185
|
+
| `git-ai` / `git-ai commit` | 交互式提交 |
|
|
186
|
+
| `git-ai -a` | Agent 模式 |
|
|
187
|
+
| `git-ai msg` | 仅输出消息(脚本/Hook) |
|
|
188
|
+
| `git-ai branch` | 交互式创建分支 |
|
|
189
|
+
| `git-ai hook install/remove` | Git Hook 管理 |
|
|
190
|
+
| `git-ai report` | 生成 AI 周报 |
|
|
191
|
+
| `git-ai pr` | 生成 PR 描述 |
|
|
192
|
+
| `git-ai release` | 生成 Release Notes |
|
|
195
193
|
|
|
196
|
-
|
|
197
|
-
# 生成本周日报/周报
|
|
198
|
-
git-ai report
|
|
194
|
+
---
|
|
199
195
|
|
|
200
|
-
|
|
201
|
-
git-ai report --days 30
|
|
196
|
+
## ⚡ 环境变量(常用)
|
|
202
197
|
|
|
203
|
-
|
|
204
|
-
|
|
198
|
+
- `GIT_AI_PROVIDER` / `GIT_AI_BASE_URL` / `GIT_AI_MODEL` / `GIT_AI_AGENT_MODEL`
|
|
199
|
+
- `GIT_AI_API_KEY`(也支持 `DEEPSEEK_API_KEY`, `OPENAI_API_KEY`)
|
|
200
|
+
- `GIT_AI_TIMEOUT_MS`
|
|
201
|
+
- `GIT_AI_MAX_DIFF_CHARS` / `GIT_AI_MAX_OUTPUT_TOKENS`
|
|
202
|
+
- `GIT_AI_RULES_PRESET`
|
|
203
|
+
- `GIT_AI_FALLBACK_MODELS`
|
|
204
|
+
- `GIT_AI_POLICY_STRICT`
|
|
205
|
+
- `GIT_AI_ISSUE_PATTERN` / `GIT_AI_ISSUE_PLACEMENT` / `GIT_AI_REQUIRE_ISSUE`
|
|
206
|
+
- `GIT_AI_OUTPUT_FORMAT=json`
|
|
207
|
+
- `GIT_AI_MSG_DELIM=<<<GIT_AI_END>>>`
|
|
208
|
+
- `GIT_AI_HOOK_STRICT=1` / `GIT_AI_HOOK_FALLBACK=0`
|
|
209
|
+
- `GIT_AI_BRANCH_PATTERN` / `GIT_AI_BRANCH_TYPES`
|
|
210
|
+
- `GIT_AI_BRANCH_ISSUE_SEPARATOR` / `GIT_AI_BRANCH_NAME_MAXLEN`
|
|
211
|
+
|
|
212
|
+
---
|
|
205
213
|
|
|
206
|
-
|
|
207
|
-
|
|
214
|
+
## 🧩 忽略文件 `.git-aiignore`
|
|
215
|
+
|
|
216
|
+
```text
|
|
217
|
+
package-lock.json
|
|
218
|
+
dist/
|
|
219
|
+
*.min.js
|
|
208
220
|
```
|
|
209
221
|
|
|
222
|
+
同时兼容 OpenCommit 的 `.opencommitignore`。
|
|
223
|
+
|
|
210
224
|
---
|
|
211
225
|
|
|
212
|
-
##
|
|
226
|
+
## ❓常见问题
|
|
213
227
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
| `git-ai config get` | | 查看当前生效配置(支持 `--json` / `--local`) |
|
|
218
|
-
| `git-ai config set <key> <value>` | | 设置配置(支持 `--local` / `--json`) |
|
|
219
|
-
| `git-ai config describe` | | 查看可配置项与环境变量覆盖 |
|
|
220
|
-
| `git-ai` | | 交互式生成并提交 |
|
|
221
|
-
| `git-ai -a` | | **Agent 模式** (深度分析 & 影响检查) |
|
|
222
|
-
| `git-ai -y` | | 跳过确认直接提交 |
|
|
223
|
-
| `git-ai -n 3` | | 生成 3 条候选消息 |
|
|
224
|
-
| `git-ai -l en` | | 强制输出语言(en/zh) |
|
|
225
|
-
| `git-ai hook install` | | **安装 Git Hook** (支持 `--global`) |
|
|
226
|
-
| `git-ai hook remove` | | 移除 Git Hook |
|
|
227
|
-
| `git-ai report` | | **生成 AI 周报** (支持 `--days`) |
|
|
228
|
-
| `git-ai msg` | | 仅输出消息(供脚本调用) |
|
|
228
|
+
**1) 401 / API Key 无效**
|
|
229
|
+
- 先看配置:`git-ai config get --json --local`
|
|
230
|
+
- 检查环境变量是否覆盖
|
|
229
231
|
|
|
230
|
-
|
|
232
|
+
**2) Diff 被截断**
|
|
233
|
+
- 用 `.git-aiignore` 忽略大文件
|
|
234
|
+
- 或设置 `GIT_AI_MAX_DIFF_CHARS`
|
|
231
235
|
|
|
232
|
-
|
|
236
|
+
**3) Agent 自动回退**
|
|
237
|
+
- 设置 `GIT_AI_DEBUG=1` 查看原因
|
|
238
|
+
|
|
239
|
+
---
|
|
233
240
|
|
|
234
241
|
## 🤖 支持的模型
|
|
235
242
|
|
|
236
243
|
| 类型 | 服务商 | 优势 | 配置方式 |
|
|
237
244
|
|------|--------|------|----------|
|
|
238
|
-
| **本地隐私** | **Ollama** |
|
|
245
|
+
| **本地隐私** | **Ollama** | 免费、离线、隐私 | `git-ai init` 自动探测 |
|
|
239
246
|
| | **LM Studio** | 兼容性好 | 手动输入 URL |
|
|
240
|
-
| **国内高速** | **DeepSeek** |
|
|
241
|
-
| | **通义千问** |
|
|
242
|
-
| | **智谱/Moonshot** |
|
|
247
|
+
| **国内高速** | **DeepSeek** | 性价比高 | API Key |
|
|
248
|
+
| | **通义千问** | 长文本能力强 | API Key |
|
|
249
|
+
| | **智谱/Moonshot** | 国内主流 | API Key |
|
|
243
250
|
| **国际通用** | **OpenAI** | GPT-4o 基准能力 | API Key |
|
|
244
251
|
|
|
245
252
|
---
|
|
246
253
|
|
|
247
|
-
|
|
248
|
-
|
|
249
254
|
## 📄 License
|
|
250
255
|
|
|
251
256
|
[MIT](LICENSE)
|