This commit is contained in:
khaneliman
2026-06-05 16:40:14 +00:00
parent dee41b2312
commit 211be6a123

View File

@@ -20694,6 +20694,553 @@ absolute path or JSON value</p>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.enable"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.enable"><code class="option">programs.antigravity-cli.enable</code>
</a>
</span>
</dt>
<dd>
<p>Whether to enable Antigravity CLI.</p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">false
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">true
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.enableMcpIntegration"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.enableMcpIntegration"><code class="option">programs.antigravity-cli.enableMcpIntegration</code>
</a>
</span>
</dt>
<dd>
<p>Whether to integrate the MCP servers config from
<code class="option">programs.mcp.servers</code> into
<code class="option">programs.antigravity-cli.mcpServers</code>.</p><p>Note: Any servers already present in
<code class="option">programs.antigravity-cli.mcpServers</code>
is not overridden by servers present under the same
name in <code class="option">programs.mcp.servers</code></p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">false
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.package"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.package"><code class="option">programs.antigravity-cli.package</code>
</a>
</span>
</dt>
<dd>
<p>The antigravity-cli package to use.</p>
<p><span class="emphasis"><em>Type:</em></span>
null or package</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">pkgs.antigravity-cli
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.commands"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.commands"><code class="option">programs.antigravity-cli.commands</code>
</a>
</span>
</dt>
<dd>
<p>An attribute set of Gemini CLI custom commands to migrate to
Antigravity CLI global skills.</p><p>The name of the attribute set will be the name of each generated
skill directory.</p>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (open submodule of string)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">changelog = {
prompt =
&#x27;&#x27;
Your task is to parse the `&lt;version&gt;`, `&lt;change_type&gt;`, and `&lt;message&gt;` from their input and use the `write_file` tool to correctly update the `CHANGELOG.md` file.
&#x27;&#x27;;
description = &quot;Adds a new entry to the project&#x27;s CHANGELOG.md file.&quot;;
};
&quot;git/fix&quot; = { # Becomes /git:fix
prompt = &quot;Please analyze the staged git changes and provide a code fix for the issue described here: {{args}}.&quot;;
description = &quot;Generates a fix for a given GitHub issue.&quot;;
};
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.commands._name_.description"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.commands._name_.description"><code class="option">programs.antigravity-cli.commands.&lt;name&gt;.description</code>
</a>
</span>
</dt>
<dd>
<p>A brief, one-line description of what the command does.
This text will be displayed next to your command in the /help menu.
If you omit this field, a generic description will be generated from the filename.</p>
<p><span class="emphasis"><em>Type:</em></span>
string</p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.commands._name_.prompt"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.commands._name_.prompt"><code class="option">programs.antigravity-cli.commands.&lt;name&gt;.prompt</code>
</a>
</span>
</dt>
<dd>
<p>The prompt that will be sent to the Gemini model when the command is executed.
This can be a single-line or multi-line string.
The special placeholder {{args}} will be replaced with the text the user typed after the command name.</p>
<p><span class="emphasis"><em>Type:</em></span>
string</p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.context"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.context"><code class="option">programs.antigravity-cli.context</code>
</a>
</span>
</dt>
<dd>
<p>Global context(s) for Antigravity CLI.</p><p>The attribute name becomes the filename, with a <code class="filename">.md</code>
extension added automatically. Each value is either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Inline content as a string</p></li><li class="listitem"><p>A path to a file containing the content</p></li></ul></div><p>The configured files are written to <code class="filename">~/.gemini/</code>.</p><p>Note: You can customize which context file names Antigravity CLI looks for by setting
<code class="literal">settings.context.fileName</code>. For example:</p><pre><code class="programlisting nix">settings = {
context.fileName = [&quot;AGENTS.md&quot;, &quot;CONTEXT.md&quot;, &quot;GEMINI.md&quot;];
};
</code></pre>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (strings concatenated with “\n” or absolute path)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
GEMINI = &#x27;&#x27;
# Global Context
You are a helpful AI assistant for software development.
## Coding Standards
- Follow consistent code style
- Write clear comments
- Test your changes
&#x27;&#x27;;
AGENTS = ./path/to/agents.md;
CONTEXT = &#x27;&#x27;
Additional context instructions here.
&#x27;&#x27;;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.defaultModel"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.defaultModel"><code class="option">programs.antigravity-cli.defaultModel</code>
</a>
</span>
</dt>
<dd>
<p>The default model to use for the CLI.
Will be set as $GEMINI_MODEL when configured.</p>
<p><span class="emphasis"><em>Type:</em></span>
null or string</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">null
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">&quot;gemini-2.5-flash&quot;
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.mcpServers"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.mcpServers"><code class="option">programs.antigravity-cli.mcpServers</code>
</a>
</span>
</dt>
<dd>
<p>MCP server configuration written to
<code class="filename">~/.gemini/config/mcp_config.json</code>.</p><p>Remote servers use <code class="literal">serverUrl</code>; <code class="literal">url</code> and <code class="literal">httpUrl</code> are accepted
for migration and converted automatically.</p>
<p><span class="emphasis"><em>Type:</em></span>
JSON value</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
filesystem = {
args = [
&quot;-y&quot;
&quot;@modelcontextprotocol/server-filesystem&quot;
&quot;/tmp&quot;
];
command = &quot;npx&quot;;
};
github = {
serverUrl = &quot;https://api.githubcopilot.com/mcp/&quot;;
};
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.permissions"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.permissions"><code class="option">programs.antigravity-cli.permissions</code>
</a>
</span>
</dt>
<dd>
<p>Antigravity CLI fine-grained permissions written to
<code class="option">programs.antigravity-cli.settings.permissions</code>.</p>
<p><span class="emphasis"><em>Type:</em></span>
null or (submodule)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">null
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
allow = [ &quot;command(git)&quot; ];
deny = [ &quot;command(rm -rf)&quot; ];
ask = [ &quot;command(*)&quot; ];
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.permissions.allow"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.permissions.allow"><code class="option">programs.antigravity-cli.permissions.allow</code>
</a>
</span>
</dt>
<dd>
<p>Permissions to allow without prompting.</p>
<p><span class="emphasis"><em>Type:</em></span>
list of string</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">[ ]
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.permissions.ask"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.permissions.ask"><code class="option">programs.antigravity-cli.permissions.ask</code>
</a>
</span>
</dt>
<dd>
<p>Permissions to ask before using.</p>
<p><span class="emphasis"><em>Type:</em></span>
list of string</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">[ ]
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.permissions.deny"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.permissions.deny"><code class="option">programs.antigravity-cli.permissions.deny</code>
</a>
</span>
</dt>
<dd>
<p>Permissions to deny without prompting.</p>
<p><span class="emphasis"><em>Type:</em></span>
list of string</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">[ ]
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.policies"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.policies"><code class="option">programs.antigravity-cli.policies</code>
</a>
</span>
</dt>
<dd>
<p>An attribute set of Gemini CLI policy definitions to create in
<code class="filename">~/.gemini/policies/</code> when
<code class="option">programs.antigravity-cli.package</code> is a <code class="literal">gemini-cli</code>
package.</p><p>Antigravity CLI configures permissions in
<code class="option">programs.antigravity-cli.settings.permissions</code> or
<code class="option">programs.antigravity-cli.permissions</code>.</p>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (absolute path or TOML value)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
&quot;my-rules&quot; = {
rule = [
{
toolName = &quot;run_shell_command&quot;;
commandPrefix = &quot;git &quot;;
decision = &quot;ask_user&quot;;
priority = 100;
}
];
};
&quot;other-rules&quot; = ./path/to/rules.toml;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.settings"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.settings"><code class="option">programs.antigravity-cli.settings</code>
</a>
</span>
</dt>
<dd>
<p>Configuration written to
<code class="filename">~/.gemini/antigravity-cli/settings.json</code>.</p>
<p><span class="emphasis"><em>Type:</em></span>
JSON value</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
altScreenMode = &quot;always&quot;;
artifactReviewPolicy = &quot;agent-decides&quot;;
colorScheme = &quot;tokyo night&quot;;
toolPermission = &quot;proceed-in-sandbox&quot;;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.skills"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.skills"><code class="option">programs.antigravity-cli.skills</code>
</a>
</span>
</dt>
<dd>
<p>Custom skills for Antigravity CLI.</p><p>This option can be either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>An attribute set defining skills</p></li><li class="listitem"><p>A path to a directory containing skill folders</p></li></ul></div><p>If an attribute set is used, the attribute name becomes the
skill directory name, and the value is either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Inline content as a string (creates <code class="literal">~/.gemini/config/skills/&lt;name&gt;/SKILL.md</code>)</p></li><li class="listitem"><p>A path to a file (creates <code class="literal">~/.gemini/config/skills/&lt;name&gt;/SKILL.md</code>)</p></li><li class="listitem"><p>A path to a directory (symlinks <code class="literal">~/.gemini/config/skills/&lt;name&gt;/</code> to that directory)</p></li></ul></div><p>If a path is used, it is expected to contain one folder per
skill name, each containing a <code class="filename">SKILL.md</code>. The directory is
symlinked to <code class="filename">~/.gemini/config/skills/</code>.</p>
<p><span class="emphasis"><em>Type:</em></span>
(attribute set of (strings concatenated with “\n” or absolute path)) or absolute path</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
xlsx = ./skills/xlsx/SKILL.md;
data-analysis = ./skills/data-analysis;
pdf-processing = &#x27;&#x27;
---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
---
# PDF Processing
## Quick start
Use pdfplumber to extract text from PDFs:
```python
import pdfplumber
with pdfplumber.open(&quot;document.pdf&quot;) as pdf:
text = pdf.pages[0].extract_text()
```
&#x27;&#x27;;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.antigravity-cli.useLegacyGeminiConfig"></a><a class="term" href="options.xhtml#opt-programs.antigravity-cli.useLegacyGeminiConfig"><code class="option">programs.antigravity-cli.useLegacyGeminiConfig</code>
</a>
</span>
</dt>
<dd>
<p>Whether to write configuration to the legacy Gemini CLI locations.</p><p>This is enabled automatically when
<code class="option">programs.antigravity-cli.package</code> is a <code class="literal">gemini-cli</code> package.</p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">false
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/antigravity-cli.nix" target="_top">
&lt;home-manager/modules/programs/antigravity-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.anup.enable"></a><a class="term" href="options.xhtml#opt-programs.anup.enable"><code class="option">programs.anup.enable</code>
@@ -40932,400 +41479,6 @@ attribute set of string</p>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.enable"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.enable"><code class="option">programs.gemini-cli.enable</code>
</a>
</span>
</dt>
<dd>
<p>Whether to enable gemini-cli.</p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">false
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">true
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.enableMcpIntegration"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.enableMcpIntegration"><code class="option">programs.gemini-cli.enableMcpIntegration</code>
</a>
</span>
</dt>
<dd>
<p>Whether to integrate the MCP servers config from
<code class="option">programs.mcp.servers</code> into
<code class="option">programs.gemini-cli.settings.mcpServers</code>.</p><p>Note: Any servers already present in
<code class="option">programs.gemini-cli.settings.mcpServers</code>
is not overridden by servers present under the same
name in <code class="option">programs.mcp.servers</code></p>
<p><span class="emphasis"><em>Type:</em></span>
boolean</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">false
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.package"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.package"><code class="option">programs.gemini-cli.package</code>
</a>
</span>
</dt>
<dd>
<p>The gemini-cli package to use.</p>
<p><span class="emphasis"><em>Type:</em></span>
null or package</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">pkgs.gemini-cli
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.commands"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.commands"><code class="option">programs.gemini-cli.commands</code>
</a>
</span>
</dt>
<dd>
<p>An attribute set of custom commands that will be globally available.
The name of the attribute set will be the name of each command.
You may use subdirectories to create namespaced commands, such as <code class="literal">git/fix</code> becoming <code class="literal">/git:fix</code>.
See https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/commands.md#custom-commands for more information.</p>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (open submodule of string)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">changelog = {
prompt =
&#x27;&#x27;
Your task is to parse the `&lt;version&gt;`, `&lt;change_type&gt;`, and `&lt;message&gt;` from their input and use the `write_file` tool to correctly update the `CHANGELOG.md` file.
&#x27;&#x27;;
description = &quot;Adds a new entry to the project&#x27;s CHANGELOG.md file.&quot;;
};
&quot;git/fix&quot; = { # Becomes /git:fix
prompt = &quot;Please analyze the staged git changes and provide a code fix for the issue described here: {{args}}.&quot;;
description = &quot;Generates a fix for a given GitHub issue.&quot;;
};
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.commands._name_.description"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.commands._name_.description"><code class="option">programs.gemini-cli.commands.&lt;name&gt;.description</code>
</a>
</span>
</dt>
<dd>
<p>A brief, one-line description of what the command does.
This text will be displayed next to your command in the /help menu.
If you omit this field, a generic description will be generated from the filename.</p>
<p><span class="emphasis"><em>Type:</em></span>
string</p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.commands._name_.prompt"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.commands._name_.prompt"><code class="option">programs.gemini-cli.commands.&lt;name&gt;.prompt</code>
</a>
</span>
</dt>
<dd>
<p>The prompt that will be sent to the Gemini model when the command is executed.
This can be a single-line or multi-line string.
The special placeholder {{args}} will be replaced with the text the user typed after the command name.</p>
<p><span class="emphasis"><em>Type:</em></span>
string</p>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.context"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.context"><code class="option">programs.gemini-cli.context</code>
</a>
</span>
</dt>
<dd>
<p>Global context(s) for gemini-cli.</p><p>The attribute name becomes the filename, with a <code class="filename">.md</code>
extension added automatically. Each value is either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Inline content as a string</p></li><li class="listitem"><p>A path to a file containing the content</p></li></ul></div><p>The configured files are written to <code class="filename">~/.gemini/</code>.</p><p>Note: You can customize which context file names gemini-cli looks for by setting
<code class="literal">settings.context.fileName</code>. For example:</p><pre><code class="programlisting nix">settings = {
context.fileName = [&quot;AGENTS.md&quot;, &quot;CONTEXT.md&quot;, &quot;GEMINI.md&quot;];
};
</code></pre>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (strings concatenated with “\n” or absolute path)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
GEMINI = &#x27;&#x27;
# Global Context
You are a helpful AI assistant for software development.
## Coding Standards
- Follow consistent code style
- Write clear comments
- Test your changes
&#x27;&#x27;;
AGENTS = ./path/to/agents.md;
CONTEXT = &#x27;&#x27;
Additional context instructions here.
&#x27;&#x27;;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.defaultModel"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.defaultModel"><code class="option">programs.gemini-cli.defaultModel</code>
</a>
</span>
</dt>
<dd>
<p>The default model to use for the CLI.
Will be set as $GEMINI_MODEL when configured.</p>
<p><span class="emphasis"><em>Type:</em></span>
null or string</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">null
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">&quot;gemini-2.5-flash&quot;
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.policies"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.policies"><code class="option">programs.gemini-cli.policies</code>
</a>
</span>
</dt>
<dd>
<p>An attribute set of policy definitions to create in <code class="literal">~/.gemini/policies/</code>.
The attribute name becomes the filename with <code class="literal">.toml</code> extension automatically added.
The value can be either an attribute set representing the TOML policy or a path to a TOML file.</p>
<p><span class="emphasis"><em>Type:</em></span>
attribute set of (absolute path or TOML value)</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
&quot;my-rules&quot; = {
rule = [
{
toolName = &quot;run_shell_command&quot;;
commandPrefix = &quot;git &quot;;
decision = &quot;ask_user&quot;;
priority = 100;
}
];
};
&quot;other-rules&quot; = ./path/to/rules.toml;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.settings"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.settings"><code class="option">programs.gemini-cli.settings</code>
</a>
</span>
</dt>
<dd>
<p>JSON config for gemini-cli</p>
<p><span class="emphasis"><em>Type:</em></span>
JSON value</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
context = {
loadMemoryFromIncludeDirectories = true;
};
general = {
preferredEditor = &quot;nvim&quot;;
previewFeatures = true;
vimMode = true;
};
ide = {
enabled = true;
};
privacy = {
usageStatisticsEnabled = false;
};
security = {
auth = {
selectedType = &quot;oauth-personal&quot;;
};
};
tools = {
autoAccept = false;
};
ui = {
theme = &quot;Default&quot;;
};
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gemini-cli.skills"></a><a class="term" href="options.xhtml#opt-programs.gemini-cli.skills"><code class="option">programs.gemini-cli.skills</code>
</a>
</span>
</dt>
<dd>
<p>Custom skills for gemini-cli.</p><p>This option can be either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>An attribute set defining skills</p></li><li class="listitem"><p>A path to a directory containing skill folders</p></li></ul></div><p>If an attribute set is used, the attribute name becomes the
skill directory name, and the value is either:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>Inline content as a string (creates <code class="literal">~/.gemini/skills/&lt;name&gt;/SKILL.md</code>)</p></li><li class="listitem"><p>A path to a file (creates <code class="literal">~/.gemini/skills/&lt;name&gt;/SKILL.md</code>)</p></li><li class="listitem"><p>A path to a directory (symlinks <code class="literal">~/.gemini/skills/&lt;name&gt;/</code> to that directory)</p></li></ul></div><p>If a path is used, it is expected to contain one folder per
skill name, each containing a <code class="filename">SKILL.md</code>. The directory is
symlinked to <code class="filename">~/.gemini/skills/</code>.</p>
<p><span class="emphasis"><em>Type:</em></span>
(attribute set of (strings concatenated with “\n” or absolute path)) or absolute path</p>
<p><span class="emphasis"><em>Default:</em></span></p><pre><code class="programlisting nix">{ }
</code></pre>
<p><span class="emphasis"><em>Example:</em></span></p><pre><code class="programlisting nix">{
xlsx = ./skills/xlsx/SKILL.md;
data-analysis = ./skills/data-analysis;
pdf-processing = &#x27;&#x27;
---
name: pdf-processing
description: Extract text and tables from PDF files, fill forms, merge documents. Use when working with PDF files or when the user mentions PDFs, forms, or document extraction.
---
# PDF Processing
## Quick start
Use pdfplumber to extract text from PDFs:
```python
import pdfplumber
with pdfplumber.open(&quot;document.pdf&quot;) as pdf:
text = pdf.pages[0].extract_text()
```
&#x27;&#x27;;
}
</code></pre>
<p><span class="emphasis"><em>Declared by:</em></span></p>
<table border="0" summary="Simple list" class="simplelist">
<tr><td>
<code class="filename"><a class="filename" href="https://github.com/nix-community/home-manager/blob/master/modules/programs/gemini-cli.nix" target="_top">
&lt;home-manager/modules/programs/gemini-cli.nix&gt;
</a></code>
</td></tr>
</table>
</dd>
<dt>
<span class="term">
<a id="opt-programs.gh.enable"></a><a class="term" href="options.xhtml#opt-programs.gh.enable"><code class="option">programs.gh.enable</code>