git-iris 2.1.0

AI-powered Git workflow assistant for smart commits, code reviews, changelogs, and release notes
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
.TH GIT-IRIS 1 "May 2026" "git-iris 2.0.9" "User Commands"
.SH NAME
git-iris \- agentic Git companion
.SH SYNOPSIS
.B git-iris
[\fIGLOBAL OPTIONS\fR]
\fICOMMAND \fR[\fICOMMAND OPTIONS\fR]
.SH DESCRIPTION
.B git-iris
is powered by Iris, an intelligent agent that actively explores your codebase to understand what you're building. Rather than dumping context and hoping for the best, Iris uses tools to gather precisely the information she needs\(emanalyzing diffs, exploring file relationships, and building understanding iteratively. This agent-first architecture delivers contextual commit messages, thorough code reviews, structured changelogs, and comprehensive release notes.
.PP
When run without a subcommand, Git-Iris launches Iris Studio (see the \fBstudio\fR command) with auto-detected mode.
.SH GLOBAL OPTIONS
.TP
.BR \-l ", " \-\-log
Log debug messages to a file
.TP
.BR \-\-log-file =\fIPATH\fR
Specify a custom log file path
.TP
.BR \-q ", " \-\-quiet
Suppress non-essential output (spinners, waiting messages, etc.)
.TP
.BR \-v ", " \-\-version
Display the version
.TP
.BR \-r ", " \-\-repo =\fIURL\fR
Repository URL to use instead of local repository
.TP
.BR \-\-debug
Enable debug mode with gorgeous color-coded output showing agent execution details
.TP
.BR \-\-theme =\fINAME\fR
Override theme for this session (use 'git-iris themes' to list available)
.SH "COMMON OPTIONS"
The following options are accepted by every feature command (\fBgen\fR, \fBreview\fR, \fBpr\fR, \fBchangelog\fR, \fBrelease-notes\fR, \fBstudio\fR, \fBconfig\fR, \fBproject-config\fR):
.TP
.BR \-\-provider =\fIPROVIDER\fR
Override default LLM provider
.TP
.BR \-\-model =\fIMODEL\fR
Override model for this operation
.TP
.BR \-i ", " \-\-instructions =\fIINSTR\fR
Custom instructions for this operation
.TP
.BR \-\-preset =\fIPRESET\fR
Select an instruction preset (use 'git-iris list-presets' to see available presets)
.TP
.BR \-\-gitmoji
Enable Gitmoji
.TP
.BR \-\-no-gitmoji
Disable Gitmoji
.TP
.BR \-\-critic
Enable critic verification pass
.TP
.BR \-\-no-critic
Disable critic verification pass
.TP
.BR \-r ", " \-\-repo =\fIURL\fR
Repository URL to use instead of local repository (also available as a global flag)
.SH COMMANDS
.TP
.B gen
Generate a commit message with Iris (alias: \fBcommit\fR)
.TP
.B review
Have Iris review staged changes, a specific commit, or a branch comparison and provide feedback
.TP
.B pr
Generate a pull request description for commit ranges or branch comparisons
.TP
.B changelog
Generate a changelog between two Git references
.TP
.B release-notes
Generate comprehensive release notes
.TP
.B studio
Launch Iris Studio, the unified TUI for exploring code, generating commits, reviewing changes, and more
.TP
.B config
Configure Git-Iris settings and providers
.TP
.B project-config
Create or update a project-specific configuration file
.TP
.B list-presets
List available instruction presets
.TP
.B themes
List available themes
.TP
.B completions
Generate shell completions (bash, zsh, fish, elvish, powershell)
.TP
.B hook
Install or uninstall the prepare-commit-msg Git hook
.SH "GEN COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-a ", " \-\-auto-commit
Automatically commit with the generated message
.TP
.BR \-p ", " \-\-print
Print the generated message to stdout and exit
.TP
.BR \-\-no-verify
Skip verification steps (pre/post commit hooks)
.TP
.BR \-\-amend
Amend the previous commit with staged changes (requires \fB--print\fR or \fB--auto-commit\fR)
.SH "REVIEW COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-p ", " \-\-print
Print the generated review to stdout and exit
.TP
.BR \-\-raw
Output raw markdown without any console formatting
.TP
.BR \-\-include-unstaged
Include unstaged changes in the review
.TP
.BR \-\-commit =\fICOMMIT_ID\fR
Review a specific commit by ID (hash, branch, or reference)
.TP
.BR \-\-from =\fIBRANCH\fR
Starting branch for comparison (defaults to the repository's primary branch). Used with \fB--to\fR for branch comparison reviews.
.TP
.BR \-\-to =\fIBRANCH\fR
Target branch for comparison (e.g., 'feature-branch', 'pr-branch'). Used with \fB--from\fR for branch comparison reviews. If only \fB--to\fR is specified, \fB--from\fR defaults to the repository's primary branch.
.TP
.BR \-\-github-review
Publish the generated review as a GitHub PR review comment
.TP
.BR \-\-pr =\fINUMBER\fR
GitHub pull request number to publish to (auto-detects from branch when omitted)
.TP
.BR \-\-github-inline-comments
Add validated inline comments for review findings whose file and line references appear in the PR diff
.TP
.BR \-\-github-review-event =\fIEVENT\fR
GitHub review event to submit: \fIcomment\fR (default), \fIrequest-changes\fR, or \fIapprove\fR
.SH "PR COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-p ", " \-\-print
Print the generated PR description to stdout and exit
.TP
.BR \-\-raw
Output raw markdown without any console formatting
.TP
.BR \-c ", " \-\-copy
Copy raw markdown to the clipboard (for pasting into GitHub/GitLab)
.TP
.BR \-\-from =\fIREF\fR
Starting branch, commit, or commitish for comparison. For single commit analysis, specify just this parameter with a commit hash (e.g., \fB--from abc1234\fR). For reviewing multiple commits, use commitish syntax (e.g., \fB--from HEAD~3\fR to review the last 3 commits).
.TP
.BR \-\-to =\fIREF\fR
Target branch, commit, or commitish for comparison (defaults to HEAD)
.TP
.BR \-\-update ", " \-\-github-update
Update the GitHub PR body with the generated description
.TP
.BR \-\-pr =\fINUMBER\fR
GitHub pull request number to update (auto-detects from branch when omitted)
.SH "CHANGELOG COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-\-from =\fIREF\fR
Starting Git reference (commit hash, tag, or branch name). Required.
.TP
.BR \-\-to =\fIREF\fR
Ending Git reference (defaults to HEAD if not specified)
.TP
.BR \-\-raw
Output raw markdown without any console formatting
.TP
.BR \-\-update
Update the changelog file with the new changes
.TP
.BR \-\-file =\fIFILE\fR
Path to the changelog file (defaults to CHANGELOG.md)
.TP
.BR \-\-version-name =\fIVERSION\fR
Explicit version name to use in the changelog instead of getting it from Git
.SH "RELEASE-NOTES COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-\-from =\fIREF\fR
Starting Git reference (commit hash, tag, or branch name). Required.
.TP
.BR \-\-to =\fIREF\fR
Ending Git reference (defaults to HEAD if not specified)
.TP
.BR \-\-raw
Output raw markdown without any console formatting
.TP
.BR \-\-update
Update the release notes file with the new content
.TP
.BR \-\-file =\fIFILE\fR
Path to the release notes file (defaults to RELEASE_NOTES.md)
.TP
.BR \-\-version-name =\fIVERSION\fR
Explicit version name to use in the release notes instead of getting it from Git
.SH "STUDIO COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-\-mode =\fIMODE\fR
Initial mode to launch in: \fIexplore\fR, \fIcommit\fR, \fIreview\fR, \fIpr\fR, \fIchangelog\fR, or \fIrelease-notes\fR
.TP
.BR \-\-from =\fIREF\fR
Starting ref for PR/changelog comparison (defaults to the repository's primary branch)
.TP
.BR \-\-to =\fIREF\fR
Ending ref for PR/changelog comparison (defaults to HEAD)
.SH "CONFIG COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR, plus:
.TP
.BR \-\-api-key =\fIKEY\fR
Set API key for the specified provider
.TP
.BR \-\-fast-model =\fIMODEL\fR
Set fast model for the specified provider (used for status updates and simple tasks)
.TP
.BR \-\-token-limit =\fILIMIT\fR
Set token limit for the specified provider
.TP
.BR \-\-param =\fIKEY\fR=\fIVALUE\fR
Set additional parameters for the specified provider (repeatable)
.TP
.BR \-\-subagent-timeout =\fISECONDS\fR
Set timeout in seconds for parallel subagent tasks (default: 120)
.TP
.BR \-\-subagent-max-turns =\fIN\fR
Set turn budget for parallel subagent tasks (default: 20)
.SH "PROJECT-CONFIG COMMAND OPTIONS"
Accepts all options listed in \fBCOMMON OPTIONS\fR (which set per-project defaults), plus:
.TP
.BR \-\-fast-model =\fIMODEL\fR
Set fast model for the specified provider (used for status updates and simple tasks)
.TP
.BR \-\-token-limit =\fILIMIT\fR
Set token limit for the specified provider
.TP
.BR \-\-param =\fIKEY\fR=\fIVALUE\fR
Set additional parameters for the specified provider (repeatable)
.TP
.BR \-\-subagent-timeout =\fISECONDS\fR
Set timeout in seconds for parallel subagent tasks (default: 120)
.TP
.BR \-\-subagent-max-turns =\fIN\fR
Set turn budget for parallel subagent tasks (default: 20)
.TP
.BR \-p ", " \-\-print
Print the current project configuration
.SH "HOOK COMMAND OPTIONS"
The \fBhook\fR command takes one of the following subcommands:
.TP
.B install [\-\-force]
Install the prepare-commit-msg hook. Pass \fB--force\fR to overwrite an existing hook that wasn't installed by git-iris.
.TP
.B uninstall
Uninstall the prepare-commit-msg hook.
.SH "COMPLETIONS COMMAND OPTIONS"
.TP
.B SHELL
Shell to generate completions for: \fIbash\fR, \fIzsh\fR, \fIfish\fR, \fIelvish\fR, or \fIpowershell\fR.
.SH "SUPPORTED LLM PROVIDERS"
Git-Iris supports the following LLM providers:
.TP
.B openai
GPT models by OpenAI (default: gpt-5.4, API key required)
.TP
.B anthropic
Claude models by Anthropic (default: claude-opus-4-6, API key required)
.TP
.B google
Gemini models by Google (default: gemini-3-pro-preview, API key required)
.SH EXAMPLES
Generate a commit message:
.PP
.nf
.RS
git-iris gen
.RE
.fi
.PP
Generate a commit message with custom instructions:
.PP
.nf
.RS
git-iris gen -i "Focus on performance improvements"
.RE
.fi
.PP
Generate a commit message using a specific preset:
.PP
.nf
.RS
git-iris gen --preset conventional
.RE
.fi
.PP
Amend the previous commit with staged changes:
.PP
.nf
.RS
git-iris gen --amend --auto-commit
.RE
.fi
.PP
Have Iris review your code:
.PP
.nf
.RS
git-iris review
.RE
.fi
.PP
Publish a review to a GitHub PR with inline comments:
.PP
.nf
.RS
git-iris review --github-review --github-inline-comments --pr 42
.RE
.fi
.PP
Generate a changelog between two versions:
.PP
.nf
.RS
git-iris changelog --from v1.0.0 --to v1.1.0
.RE
.fi
.PP
Generate release notes:
.PP
.nf
.RS
git-iris release-notes --from v1.0.0 --to v1.1.0 --preset conventional
.RE
.fi
.PP
Configure the OpenAI provider:
.PP
.nf
.RS
git-iris config --provider openai --api-key YOUR_API_KEY
.RE
.fi
.PP
Set a faster model for status updates:
.PP
.nf
.RS
git-iris config --provider anthropic --fast-model claude-haiku-4-5-20251001
.RE
.fi
.PP
Create or update project-specific configuration:
.PP
.nf
.RS
git-iris project-config --provider anthropic --preset security
.RE
.fi
.PP
Generate a PR description and copy it to the clipboard:
.PP
.nf
.RS
git-iris pr --from main --to feature-branch --copy
.RE
.fi
.PP
Update an existing GitHub PR body in place:
.PP
.nf
.RS
git-iris pr --update --pr 123
.RE
.fi
.PP
Launch Iris Studio in review mode:
.PP
.nf
.RS
git-iris studio --mode review
.RE
.fi
.PP
List all available presets:
.PP
.nf
.RS
git-iris list-presets
.RE
.fi
.PP
List available themes:
.PP
.nf
.RS
git-iris themes
.RE
.fi
.PP
Install shell completions for zsh:
.PP
.nf
.RS
git-iris completions zsh >> ~/.zshrc
.RE
.fi
.PP
Install the prepare-commit-msg Git hook:
.PP
.nf
.RS
git-iris hook install
.RE
.fi
.SH FILES
Git-Iris resolves its personal config directory in this order:
.TP
.I $XDG_CONFIG_HOME/git-iris/config.toml
Used when \fBXDG_CONFIG_HOME\fR is set (non-empty). Highest precedence.
.TP
.I $HOME/.config/git-iris/config.toml
Default location on Linux, WSL, and modern macOS setups.
.TP
.I ~/Library/Application Support/git-iris/config.toml
Honored on macOS only if it already exists (legacy location). New macOS installs use \fI~/.config/git-iris/config.toml\fR.
.TP
.I .irisconfig
Project-specific configuration, stored in the repository root. Overrides personal config for the current repository.
.SH ENVIRONMENT
.TP
.B XDG_CONFIG_HOME
When set, used as the base directory for personal Git-Iris configuration (see \fBFILES\fR).
.TP
.B EDITOR
The editor to use when editing commit messages. If not set, defaults to vim.
.TP
.B OPENAI_API_KEY
API key for the OpenAI provider (alternative to \fBgit-iris config --api-key\fR).
.TP
.B ANTHROPIC_API_KEY
API key for the Anthropic provider.
.TP
.B GOOGLE_API_KEY
API key for the Google provider.
.SH BUGS
Report bugs to: https://github.com/hyperb1iss/git-iris/issues
.SH AUTHOR
Written by Stefanie Jane and the Git-Iris contributors.
.SH COPYRIGHT
Copyright \(co 2024-2026 Git-Iris Contributors. License Apache-2.0: Apache License, Version 2.0 <https://www.apache.org/licenses/LICENSE-2.0>
.SH SEE ALSO
git(1), git-commit(1)
.PP
Full documentation and usage examples: <https://github.com/hyperb1iss/git-iris>