diff --git a/options.xhtml b/options.xhtml index 273b50c28..bc24cf974 100644 --- a/options.xhtml +++ b/options.xhtml @@ -20694,6 +20694,553 @@ absolute path or JSON value

+
+ + programs.antigravity-cli.enable + + +
+
+

Whether to enable Antigravity CLI.

+ +

Type: +boolean

+ +

Default:

false
+
+ +

Example:

true
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.enableMcpIntegration + + +
+
+

Whether to integrate the MCP servers config from +programs.mcp.servers into +programs.antigravity-cli.mcpServers.

Note: Any servers already present in +programs.antigravity-cli.mcpServers +is not overridden by servers present under the same +name in programs.mcp.servers

+ +

Type: +boolean

+ +

Default:

false
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.package + + +
+
+

The antigravity-cli package to use.

+ +

Type: +null or package

+ +

Default:

pkgs.antigravity-cli
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.commands + + +
+
+

An attribute set of Gemini CLI custom commands to migrate to +Antigravity CLI global skills.

The name of the attribute set will be the name of each generated +skill directory.

+ +

Type: +attribute set of (open submodule of string)

+ +

Default:

{ }
+
+ +

Example:

changelog = {
+  prompt =
+    ''
+    Your task is to parse the `<version>`, `<change_type>`, and `<message>` from their input and use the `write_file` tool to correctly update the `CHANGELOG.md` file.
+    '';
+  description = "Adds a new entry to the project's CHANGELOG.md file.";
+};
+"git/fix" = { # Becomes /git:fix
+  prompt = "Please analyze the staged git changes and provide a code fix for the issue described here: {{args}}.";
+  description = "Generates a fix for a given GitHub issue.";
+};
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.commands.<name>.description + + +
+
+

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.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.commands.<name>.prompt + + +
+
+

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.

+ +

Type: +string

+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.context + + +
+
+

Global context(s) for Antigravity CLI.

The attribute name becomes the filename, with a .md +extension added automatically. Each value is either:

The configured files are written to ~/.gemini/.

Note: You can customize which context file names Antigravity CLI looks for by setting +settings.context.fileName. For example:

settings = {
+  context.fileName = ["AGENTS.md", "CONTEXT.md", "GEMINI.md"];
+};
+
+ +

Type: +attribute set of (strings concatenated with “\n” or absolute path)

+ +

Default:

{ }
+
+ +

Example:

{
+  GEMINI = ''
+    # Global Context
+
+    You are a helpful AI assistant for software development.
+
+    ## Coding Standards
+
+    - Follow consistent code style
+    - Write clear comments
+    - Test your changes
+  '';
+
+  AGENTS = ./path/to/agents.md;
+
+  CONTEXT = ''
+    Additional context instructions here.
+  '';
+}
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.defaultModel + + +
+
+

The default model to use for the CLI. +Will be set as $GEMINI_MODEL when configured.

+ +

Type: +null or string

+ +

Default:

null
+
+ +

Example:

"gemini-2.5-flash"
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.mcpServers + + +
+
+

MCP server configuration written to +~/.gemini/config/mcp_config.json.

Remote servers use serverUrl; url and httpUrl are accepted +for migration and converted automatically.

+ +

Type: +JSON value

+ +

Default:

{ }
+
+ +

Example:

{
+  filesystem = {
+    args = [
+      "-y"
+      "@modelcontextprotocol/server-filesystem"
+      "/tmp"
+    ];
+    command = "npx";
+  };
+  github = {
+    serverUrl = "https://api.githubcopilot.com/mcp/";
+  };
+}
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.permissions + + +
+
+

Antigravity CLI fine-grained permissions written to +programs.antigravity-cli.settings.permissions.

+ +

Type: +null or (submodule)

+ +

Default:

null
+
+ +

Example:

{
+  allow = [ "command(git)" ];
+  deny = [ "command(rm -rf)" ];
+  ask = [ "command(*)" ];
+}
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.permissions.allow + + +
+
+

Permissions to allow without prompting.

+ +

Type: +list of string

+ +

Default:

[ ]
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.permissions.ask + + +
+
+

Permissions to ask before using.

+ +

Type: +list of string

+ +

Default:

[ ]
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.permissions.deny + + +
+
+

Permissions to deny without prompting.

+ +

Type: +list of string

+ +

Default:

[ ]
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.policies + + +
+
+

An attribute set of Gemini CLI policy definitions to create in +~/.gemini/policies/ when +programs.antigravity-cli.package is a gemini-cli +package.

Antigravity CLI configures permissions in +programs.antigravity-cli.settings.permissions or +programs.antigravity-cli.permissions.

+ +

Type: +attribute set of (absolute path or TOML value)

+ +

Default:

{ }
+
+ +

Example:

{
+  "my-rules" = {
+    rule = [
+      {
+        toolName = "run_shell_command";
+        commandPrefix = "git ";
+        decision = "ask_user";
+        priority = 100;
+      }
+    ];
+  };
+  "other-rules" = ./path/to/rules.toml;
+}
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.settings + + +
+
+

Configuration written to +~/.gemini/antigravity-cli/settings.json.

+ +

Type: +JSON value

+ +

Default:

{ }
+
+ +

Example:

{
+  altScreenMode = "always";
+  artifactReviewPolicy = "agent-decides";
+  colorScheme = "tokyo night";
+  toolPermission = "proceed-in-sandbox";
+}
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.skills + + +
+
+

Custom skills for Antigravity CLI.

This option can be either:

If an attribute set is used, the attribute name becomes the +skill directory name, and the value is either:

If a path is used, it is expected to contain one folder per +skill name, each containing a SKILL.md. The directory is +symlinked to ~/.gemini/config/skills/.

+ +

Type: +(attribute set of (strings concatenated with “\n” or absolute path)) or absolute path

+ +

Default:

{ }
+
+ +

Example:

{
+  xlsx = ./skills/xlsx/SKILL.md;
+  data-analysis = ./skills/data-analysis;
+  pdf-processing = ''
+    ---
+    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("document.pdf") as pdf:
+        text = pdf.pages[0].extract_text()
+    ```
+  '';
+}
+
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
+
+ + programs.antigravity-cli.useLegacyGeminiConfig + + +
+
+

Whether to write configuration to the legacy Gemini CLI locations.

This is enabled automatically when +programs.antigravity-cli.package is a gemini-cli package.

+ +

Type: +boolean

+ +

Default:

false
+
+ +

Declared by:

+ + +
+ +<home-manager/modules/programs/antigravity-cli.nix> + +
+
programs.anup.enable @@ -40932,400 +41479,6 @@ attribute set of string

-
- - programs.gemini-cli.enable - - -
-
-

Whether to enable gemini-cli.

- -

Type: -boolean

- -

Default:

false
-
- -

Example:

true
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.enableMcpIntegration - - -
-
-

Whether to integrate the MCP servers config from -programs.mcp.servers into -programs.gemini-cli.settings.mcpServers.

Note: Any servers already present in -programs.gemini-cli.settings.mcpServers -is not overridden by servers present under the same -name in programs.mcp.servers

- -

Type: -boolean

- -

Default:

false
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.package - - -
-
-

The gemini-cli package to use.

- -

Type: -null or package

- -

Default:

pkgs.gemini-cli
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.commands - - -
-
-

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 git/fix becoming /git:fix. -See https://github.com/google-gemini/gemini-cli/blob/main/docs/cli/commands.md#custom-commands for more information.

- -

Type: -attribute set of (open submodule of string)

- -

Default:

{ }
-
- -

Example:

changelog = {
-  prompt =
-    ''
-    Your task is to parse the `<version>`, `<change_type>`, and `<message>` from their input and use the `write_file` tool to correctly update the `CHANGELOG.md` file.
-    '';
-  description = "Adds a new entry to the project's CHANGELOG.md file.";
-};
-"git/fix" = { # Becomes /git:fix
-  prompt = "Please analyze the staged git changes and provide a code fix for the issue described here: {{args}}.";
-  description = "Generates a fix for a given GitHub issue.";
-};
-
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.commands.<name>.description - - -
-
-

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.

- -

Type: -string

- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.commands.<name>.prompt - - -
-
-

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.

- -

Type: -string

- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.context - - -
-
-

Global context(s) for gemini-cli.

The attribute name becomes the filename, with a .md -extension added automatically. Each value is either:

The configured files are written to ~/.gemini/.

Note: You can customize which context file names gemini-cli looks for by setting -settings.context.fileName. For example:

settings = {
-  context.fileName = ["AGENTS.md", "CONTEXT.md", "GEMINI.md"];
-};
-
- -

Type: -attribute set of (strings concatenated with “\n” or absolute path)

- -

Default:

{ }
-
- -

Example:

{
-  GEMINI = ''
-    # Global Context
-
-    You are a helpful AI assistant for software development.
-
-    ## Coding Standards
-
-    - Follow consistent code style
-    - Write clear comments
-    - Test your changes
-  '';
-
-  AGENTS = ./path/to/agents.md;
-
-  CONTEXT = ''
-    Additional context instructions here.
-  '';
-}
-
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.defaultModel - - -
-
-

The default model to use for the CLI. -Will be set as $GEMINI_MODEL when configured.

- -

Type: -null or string

- -

Default:

null
-
- -

Example:

"gemini-2.5-flash"
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.policies - - -
-
-

An attribute set of policy definitions to create in ~/.gemini/policies/. -The attribute name becomes the filename with .toml extension automatically added. -The value can be either an attribute set representing the TOML policy or a path to a TOML file.

- -

Type: -attribute set of (absolute path or TOML value)

- -

Default:

{ }
-
- -

Example:

{
-  "my-rules" = {
-    rule = [
-      {
-        toolName = "run_shell_command";
-        commandPrefix = "git ";
-        decision = "ask_user";
-        priority = 100;
-      }
-    ];
-  };
-  "other-rules" = ./path/to/rules.toml;
-}
-
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.settings - - -
-
-

JSON config for gemini-cli

- -

Type: -JSON value

- -

Default:

{ }
-
- -

Example:

{
-  context = {
-    loadMemoryFromIncludeDirectories = true;
-  };
-  general = {
-    preferredEditor = "nvim";
-    previewFeatures = true;
-    vimMode = true;
-  };
-  ide = {
-    enabled = true;
-  };
-  privacy = {
-    usageStatisticsEnabled = false;
-  };
-  security = {
-    auth = {
-      selectedType = "oauth-personal";
-    };
-  };
-  tools = {
-    autoAccept = false;
-  };
-  ui = {
-    theme = "Default";
-  };
-}
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
-
- - programs.gemini-cli.skills - - -
-
-

Custom skills for gemini-cli.

This option can be either:

If an attribute set is used, the attribute name becomes the -skill directory name, and the value is either:

If a path is used, it is expected to contain one folder per -skill name, each containing a SKILL.md. The directory is -symlinked to ~/.gemini/skills/.

- -

Type: -(attribute set of (strings concatenated with “\n” or absolute path)) or absolute path

- -

Default:

{ }
-
- -

Example:

{
-  xlsx = ./skills/xlsx/SKILL.md;
-  data-analysis = ./skills/data-analysis;
-  pdf-processing = ''
-    ---
-    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("document.pdf") as pdf:
-        text = pdf.pages[0].extract_text()
-    ```
-  '';
-}
-
-
- -

Declared by:

- - -
- -<home-manager/modules/programs/gemini-cli.nix> - -
-
programs.gh.enable