@thacio/auditaria 0.30.12 → 0.30.13

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.
Files changed (68) hide show
  1. package/README.md +14 -10
  2. package/bundle/docs/admin/enterprise-controls.md +115 -0
  3. package/bundle/docs/changelogs/index.md +20 -1
  4. package/bundle/docs/changelogs/latest.md +359 -293
  5. package/bundle/docs/changelogs/preview.md +296 -349
  6. package/bundle/docs/cli/checkpointing.md +2 -3
  7. package/bundle/docs/cli/cli-reference.md +4 -5
  8. package/bundle/docs/cli/commands.md +376 -650
  9. package/bundle/docs/cli/custom-commands.md +3 -0
  10. package/bundle/docs/cli/enterprise.md +1 -1
  11. package/bundle/docs/cli/gemini-md.md +20 -12
  12. package/bundle/docs/cli/headless.md +34 -372
  13. package/bundle/docs/cli/keyboard-shortcuts.md +36 -35
  14. package/bundle/docs/cli/plan-mode.md +5 -1
  15. package/bundle/docs/cli/rewind.md +11 -11
  16. package/bundle/docs/cli/session-management.md +61 -44
  17. package/bundle/docs/cli/settings.md +10 -5
  18. package/bundle/docs/cli/skills.md +15 -8
  19. package/bundle/docs/cli/themes.md +85 -51
  20. package/bundle/docs/cli/tutorials/automation.md +187 -0
  21. package/bundle/docs/cli/tutorials/file-management.md +142 -0
  22. package/bundle/docs/cli/tutorials/mcp-setup.md +105 -0
  23. package/bundle/docs/cli/tutorials/memory-management.md +126 -0
  24. package/bundle/docs/cli/tutorials/session-management.md +105 -0
  25. package/bundle/docs/cli/tutorials/shell-commands.md +107 -0
  26. package/bundle/docs/cli/tutorials/skills-getting-started.md +36 -31
  27. package/bundle/docs/cli/tutorials/task-planning.md +93 -0
  28. package/bundle/docs/cli/tutorials/web-tools.md +78 -0
  29. package/bundle/docs/core/policy-engine.md +4 -2
  30. package/bundle/docs/core/subagents.md +38 -38
  31. package/bundle/docs/extensions/best-practices.md +102 -53
  32. package/bundle/docs/extensions/index.md +37 -21
  33. package/bundle/docs/extensions/reference.md +148 -216
  34. package/bundle/docs/extensions/releasing.md +93 -122
  35. package/bundle/docs/extensions/writing-extensions.md +87 -76
  36. package/bundle/docs/get-started/configuration.md +103 -61
  37. package/bundle/docs/get-started/examples.md +39 -119
  38. package/bundle/docs/get-started/index.md +5 -4
  39. package/bundle/docs/get-started/installation.md +110 -77
  40. package/bundle/docs/index.md +156 -108
  41. package/bundle/docs/releases.md +2 -2
  42. package/bundle/docs/sidebar.json +101 -61
  43. package/bundle/docs/tools/activate-skill.md +43 -0
  44. package/bundle/docs/tools/ask-user.md +1 -1
  45. package/bundle/docs/tools/file-system.md +43 -133
  46. package/bundle/docs/tools/index.md +92 -91
  47. package/bundle/docs/tools/internal-docs.md +46 -0
  48. package/bundle/docs/tools/mcp-server.md +2 -2
  49. package/bundle/docs/tools/memory.md +21 -40
  50. package/bundle/docs/tools/shell.md +43 -88
  51. package/bundle/docs/tools/todos.md +22 -44
  52. package/bundle/docs/tools/web-fetch.md +22 -46
  53. package/bundle/docs/tools/web-search.md +19 -29
  54. package/bundle/gemini.js +138221 -136590
  55. package/bundle/mcp-bridge.js +154 -143
  56. package/bundle/node_modules/@browserbasehq/stagehand/dist/index.js +430 -257
  57. package/bundle/node_modules/@thacio/auditaria-search/dist/tsconfig.tsbuildinfo +1 -1
  58. package/bundle/web-client/components/EditorPanel.js +57 -36
  59. package/bundle/web-client/components/FileTreePanel.js +77 -2
  60. package/bundle/web-client/index.html +5 -1
  61. package/bundle/web-client/managers/EditorManager.js +190 -24
  62. package/bundle/web-client/styles/themes.css +376 -0
  63. package/bundle/web-client/utils/theme-manager.js +33 -1
  64. package/package.json +6 -6
  65. package/bundle/docs/architecture.md +0 -80
  66. package/bundle/docs/cli/index.md +0 -67
  67. package/bundle/docs/cli/tutorials.md +0 -87
  68. package/bundle/docs/get-started/configuration-v1.md +0 -882
@@ -1,19 +1,8 @@
1
- # Auditaria configuration
2
-
3
- > **Note on configuration format, 9/17/25:** The format of the `settings.json`
4
- > file has been updated to a new, more organized structure.
5
- >
6
- > - The new format will be supported in the stable release starting
7
- > **[09/10/25]**.
8
- > - Automatic migration from the old format to the new format will begin on
9
- > **[09/17/25]**.
10
- >
11
- > For details on the previous format, please see the
12
- > [v1 Configuration documentation](./configuration-v1.md).
13
-
14
- Auditaria offers several ways to configure its behavior, including environment
15
- variables, command-line arguments, and settings files. This document outlines
16
- the different configuration methods and available settings.
1
+ # Auditaria CLI configuration
2
+
3
+ Auditaria CLI offers several ways to configure its behavior, including
4
+ environment variables, command-line arguments, and settings files. This document
5
+ outlines the different configuration methods and available settings.
17
6
 
18
7
  ## Configuration layers
19
8
 
@@ -33,8 +22,8 @@ overridden by higher numbers):
33
22
 
34
23
  ## Settings files
35
24
 
36
- Auditaria uses JSON settings files for persistent configuration. There are four
37
- locations for these files:
25
+ Auditaria CLI uses JSON settings files for persistent configuration. There are
26
+ four locations for these files:
38
27
 
39
28
  > **Tip:** JSON-aware editors can use autocomplete and validation by pointing to
40
29
  > the generated schema at `schemas/settings.schema.json` in this repository.
@@ -52,22 +41,22 @@ locations for these files:
52
41
  user, project, or system override settings.
53
42
  - **User settings file:**
54
43
  - **Location:** `~/.gemini/settings.json` (where `~` is your home directory).
55
- - **Scope:** Applies to all Auditaria sessions for the current user. User
44
+ - **Scope:** Applies to all Auditaria CLI sessions for the current user. User
56
45
  settings override system defaults.
57
46
  - **Project settings file:**
58
47
  - **Location:** `.gemini/settings.json` within your project's root directory.
59
- - **Scope:** Applies only when running Auditaria from that specific project.
60
- Project settings override user settings and system defaults.
48
+ - **Scope:** Applies only when running Auditaria CLI from that specific
49
+ project. Project settings override user settings and system defaults.
61
50
  - **System settings file:**
62
51
  - **Location:** `/etc/gemini-cli/settings.json` (Linux),
63
52
  `C:\ProgramData\gemini-cli\settings.json` (Windows) or
64
53
  `/Library/Application Support/GeminiCli/settings.json` (macOS). The path can
65
54
  be overridden using the `GEMINI_CLI_SYSTEM_SETTINGS_PATH` environment
66
55
  variable.
67
- - **Scope:** Applies to all Auditaria sessions on the system, for all users.
68
- System settings act as overrides, taking precedence over all other settings
69
- files. May be useful for system administrators at enterprises to have
70
- controls over users' Auditaria setups.
56
+ - **Scope:** Applies to all Auditaria CLI sessions on the system, for all
57
+ users. System settings act as overrides, taking precedence over all other
58
+ settings files. May be useful for system administrators at enterprises to
59
+ have controls over users' Auditaria CLI setups.
71
60
 
72
61
  **Note on environment variables in settings:** String values within your
73
62
  `settings.json` and `gemini-extension.json` files can reference environment
@@ -77,14 +66,15 @@ an environment variable `MY_API_TOKEN`, you could use it in `settings.json` like
77
66
  this: `"apiKey": "$MY_API_TOKEN"`. Additionally, each extension can have its own
78
67
  `.env` file in its directory, which will be loaded automatically.
79
68
 
80
- > **Note for Enterprise Users:** For guidance on deploying and managing Gemini
81
- > CLI in a corporate environment, please see the
69
+ > **Note for Enterprise Users:** For guidance on deploying and managing
70
+ > Auditaria CLI in a corporate environment, please see the
82
71
  > [Enterprise Configuration](../cli/enterprise.md) documentation.
83
72
 
84
73
  ### The `.gemini` directory in your project
85
74
 
86
75
  In addition to a project settings file, a project's `.gemini` directory can
87
- contain other project-specific files related to Auditaria's operation, such as:
76
+ contain other project-specific files related to Auditaria CLI's operation, such
77
+ as:
88
78
 
89
79
  - [Custom sandbox profiles](#sandboxing) (e.g.,
90
80
  `.gemini/sandbox-macos-custom.sb`, `.gemini/sandbox.Dockerfile`).
@@ -96,6 +86,13 @@ their corresponding top-level category object in your `settings.json` file.
96
86
 
97
87
  <!-- SETTINGS-AUTOGEN:START -->
98
88
 
89
+ #### `policyPaths`
90
+
91
+ - **`policyPaths`** (array):
92
+ - **Description:** Additional policy files or directories to load.
93
+ - **Default:** `[]`
94
+ - **Requires restart:** Yes
95
+
99
96
  #### `general`
100
97
 
101
98
  - **`general.preferredEditor`** (string):
@@ -125,6 +122,11 @@ their corresponding top-level category object in your `settings.json` file.
125
122
  - **Description:** Enable update notification prompts.
126
123
  - **Default:** `true`
127
124
 
125
+ - **`general.enableNotifications`** (boolean):
126
+ - **Description:** Enable run-event notifications for action-required prompts
127
+ and session completion. Currently macOS only.
128
+ - **Default:** `false`
129
+
128
130
  - **`general.checkpointing.enabled`** (boolean):
129
131
  - **Description:** Enable session checkpointing for recovery
130
132
  - **Default:** `false`
@@ -150,8 +152,8 @@ their corresponding top-level category object in your `settings.json` file.
150
152
  - **Default:** `false`
151
153
 
152
154
  - **`general.sessionRetention.maxAge`** (string):
153
- - **Description:** Maximum age of sessions to keep (e.g., "30d", "7d", "24h",
154
- "1w")
155
+ - **Description:** Automatically delete chats older than this time period
156
+ (e.g., "30d", "7d", "24h", "1w")
155
157
  - **Default:** `undefined`
156
158
 
157
159
  - **`general.sessionRetention.maxCount`** (number):
@@ -163,6 +165,11 @@ their corresponding top-level category object in your `settings.json` file.
163
165
  - **Description:** Minimum retention period (safety limit, defaults to "1d")
164
166
  - **Default:** `"1d"`
165
167
 
168
+ - **`general.sessionRetention.warningAcknowledged`** (boolean):
169
+ - **Description:** INTERNAL: Whether the user has acknowledged the session
170
+ retention warning
171
+ - **Default:** `false`
172
+
166
173
  #### `output`
167
174
 
168
175
  - **`output.format`** (enum):
@@ -201,8 +208,8 @@ their corresponding top-level category object in your `settings.json` file.
201
208
  - **Values:** `"off"`, `"full"`
202
209
 
203
210
  - **`ui.showStatusInTitle`** (boolean):
204
- - **Description:** Show Auditaria model thoughts in the terminal window title
205
- during the working phase
211
+ - **Description:** Show Auditaria CLI model thoughts in the terminal window
212
+ title during the working phase
206
213
  - **Default:** `false`
207
214
 
208
215
  - **`ui.dynamicWindowTitle`** (boolean):
@@ -211,11 +218,16 @@ their corresponding top-level category object in your `settings.json` file.
211
218
  - **Default:** `true`
212
219
 
213
220
  - **`ui.showHomeDirectoryWarning`** (boolean):
214
- - **Description:** Show a warning when running Gemini CLI in the home
221
+ - **Description:** Show a warning when running Auditaria CLI in the home
215
222
  directory.
216
223
  - **Default:** `true`
217
224
  - **Requires restart:** Yes
218
225
 
226
+ - **`ui.showCompatibilityWarnings`** (boolean):
227
+ - **Description:** Show warnings about terminal or OS compatibility issues.
228
+ - **Default:** `true`
229
+ - **Requires restart:** Yes
230
+
219
231
  - **`ui.hideTips`** (boolean):
220
232
  - **Description:** Hide helpful tips in the UI
221
233
  - **Default:** `false`
@@ -478,6 +490,19 @@ their corresponding top-level category object in your `settings.json` file.
478
490
  }
479
491
  }
480
492
  },
493
+ "fast-ack-helper": {
494
+ "extends": "base",
495
+ "modelConfig": {
496
+ "model": "gemini-2.5-flash-lite",
497
+ "generateContentConfig": {
498
+ "temperature": 0.2,
499
+ "maxOutputTokens": 120,
500
+ "thinkingConfig": {
501
+ "thinkingBudget": 0
502
+ }
503
+ }
504
+ }
505
+ },
481
506
  "edit-corrector": {
482
507
  "extends": "base",
483
508
  "modelConfig": {
@@ -621,6 +646,11 @@ their corresponding top-level category object in your `settings.json` file.
621
646
  - **Description:** The format to use when importing memory.
622
647
  - **Default:** `undefined`
623
648
 
649
+ - **`context.includeDirectoryTree`** (boolean):
650
+ - **Description:** Whether to include the directory tree of the current
651
+ working directory in the initial request to the model.
652
+ - **Default:** `true`
653
+
624
654
  - **`context.discoveryMaxDirs`** (number):
625
655
  - **Description:** Maximum number of directories to search for memory.
626
656
  - **Default:** `200`
@@ -912,8 +942,15 @@ their corresponding top-level category object in your `settings.json` file.
912
942
  - **Requires restart:** Yes
913
943
 
914
944
  - **`experimental.useOSC52Paste`** (boolean):
915
- - **Description:** Use OSC 52 sequence for pasting instead of clipboardy
916
- (useful for remote sessions).
945
+ - **Description:** Use OSC 52 for pasting. This may be more robust than the
946
+ default system when using remote terminal sessions (if your terminal is
947
+ configured to allow it).
948
+ - **Default:** `false`
949
+
950
+ - **`experimental.useOSC52Copy`** (boolean):
951
+ - **Description:** Use OSC 52 for copying. This may be more robust than the
952
+ default system when using remote terminal sessions (if your terminal is
953
+ configured to allow it).
917
954
  - **Default:** `false`
918
955
 
919
956
  - **`experimental.plan`** (boolean):
@@ -921,6 +958,11 @@ their corresponding top-level category object in your `settings.json` file.
921
958
  - **Default:** `false`
922
959
  - **Requires restart:** Yes
923
960
 
961
+ - **`experimental.modelSteering`** (boolean):
962
+ - **Description:** Enable model steering (user hints) to guide the model
963
+ during tool execution.
964
+ - **Default:** `false`
965
+
924
966
  #### `skills`
925
967
 
926
968
  - **`skills.enabled`** (boolean):
@@ -1034,7 +1076,7 @@ their corresponding top-level category object in your `settings.json` file.
1034
1076
  #### `mcpServers`
1035
1077
 
1036
1078
  Configures connections to one or more Model-Context Protocol (MCP) servers for
1037
- discovering and using custom tools. Auditaria attempts to connect to each
1079
+ discovering and using custom tools. Auditaria CLI attempts to connect to each
1038
1080
  configured MCP server to discover available tools. If multiple MCP servers
1039
1081
  expose a tool with the same name, the tool names will be prefixed with the
1040
1082
  server alias you defined in the configuration (e.g.,
@@ -1076,8 +1118,8 @@ specified, the order of precedence is `httpUrl`, then `url`, then `command`.
1076
1118
 
1077
1119
  #### `telemetry`
1078
1120
 
1079
- Configures logging and metrics collection for Auditaria. For more information,
1080
- see [Telemetry](../cli/telemetry.md).
1121
+ Configures logging and metrics collection for Auditaria CLI. For more
1122
+ information, see [Telemetry](../cli/telemetry.md).
1081
1123
 
1082
1124
  - **Properties:**
1083
1125
  - **`enabled`** (boolean): Whether or not telemetry is enabled.
@@ -1208,8 +1250,8 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1208
1250
  - Overrides the hardcoded default
1209
1251
  - Example: `export GEMINI_MODEL="gemini-3-flash-preview"`
1210
1252
  - **`GEMINI_CLI_HOME`**:
1211
- - Specifies the root directory for Gemini CLI's user-level configuration and
1212
- storage.
1253
+ - Specifies the root directory for Auditaria CLI's user-level configuration
1254
+ and storage.
1213
1255
  - By default, this is the user's system home directory. The CLI will create a
1214
1256
  `.gemini` folder inside this directory.
1215
1257
  - Useful for shared compute environments or keeping CLI state isolated.
@@ -1314,10 +1356,10 @@ the `advanced.excludedEnvVars` setting in your `settings.json` file.
1314
1356
 
1315
1357
  ### Environment variable redaction
1316
1358
 
1317
- To prevent accidental leakage of sensitive information, Gemini CLI automatically
1318
- redacts potential secrets from environment variables when executing tools (such
1319
- as shell commands). This "best effort" redaction applies to variables inherited
1320
- from the system or loaded from `.env` files.
1359
+ To prevent accidental leakage of sensitive information, Auditaria CLI
1360
+ automatically redacts potential secrets from environment variables when
1361
+ executing tools (such as shell commands). This "best effort" redaction applies
1362
+ to variables inherited from the system or loaded from `.env` files.
1321
1363
 
1322
1364
  **Default Redaction Rules:**
1323
1365
 
@@ -1367,10 +1409,9 @@ for that specific session.
1367
1409
  - Specifies the Gemini model to use for this session.
1368
1410
  - Example: `npm start -- --model gemini-3-pro-preview`
1369
1411
  - **`--prompt <your_prompt>`** (**`-p <your_prompt>`**):
1370
- - Used to pass a prompt directly to the command. This invokes Auditaria in a
1371
- non-interactive mode.
1372
- - For scripting examples, use the `--output-format json` flag to get
1373
- structured output.
1412
+ - **Deprecated:** Use positional arguments instead.
1413
+ - Used to pass a prompt directly to the command. This invokes Auditaria CLI in
1414
+ a non-interactive mode.
1374
1415
  - **`--prompt-interactive <your_prompt>`** (**`-i <your_prompt>`**):
1375
1416
  - Starts an interactive session with the provided prompt as the initial input.
1376
1417
  - The prompt is processed within the interactive session, not before it.
@@ -1423,20 +1464,21 @@ for that specific session.
1423
1464
  - Resume a previous chat session. Use "latest" for the most recent session,
1424
1465
  provide a session index number, or provide a full session UUID.
1425
1466
  - If no session_id is provided, defaults to "latest".
1426
- - Example: `gemini --resume 5` or `gemini --resume latest` or
1427
- `gemini --resume a1b2c3d4-e5f6-7890-abcd-ef1234567890` or `gemini --resume`
1467
+ - Example: `auditaria --resume 5` or `auditaria --resume latest` or
1468
+ `auditaria --resume a1b2c3d4-e5f6-7890-abcd-ef1234567890` or
1469
+ `auditaria --resume`
1428
1470
  - See [Session Management](../cli/session-management.md) for more details.
1429
1471
  - **`--list-sessions`**:
1430
1472
  - List all available chat sessions for the current project and exit.
1431
1473
  - Shows session indices, dates, message counts, and preview of first user
1432
1474
  message.
1433
- - Example: `gemini --list-sessions`
1475
+ - Example: `auditaria --list-sessions`
1434
1476
  - **`--delete-session <identifier>`**:
1435
1477
  - Delete a specific chat session by its index number or full session UUID.
1436
1478
  - Use `--list-sessions` first to see available sessions, their indices, and
1437
1479
  UUIDs.
1438
- - Example: `gemini --delete-session 3` or
1439
- `gemini --delete-session a1b2c3d4-e5f6-7890-abcd-ef1234567890`
1480
+ - Example: `auditaria --delete-session 3` or
1481
+ `auditaria --delete-session a1b2c3d4-e5f6-7890-abcd-ef1234567890`
1440
1482
  - **`--include-directories <dir1,dir2,...>`**:
1441
1483
  - Includes additional directories in the workspace for multi-directory
1442
1484
  support.
@@ -1559,12 +1601,12 @@ conventions and context.
1559
1601
 
1560
1602
  By understanding and utilizing these configuration layers and the hierarchical
1561
1603
  nature of context files, you can effectively manage the AI's memory and tailor
1562
- the Auditaria's responses to your specific needs and projects.
1604
+ the Auditaria CLI's responses to your specific needs and projects.
1563
1605
 
1564
1606
  ## Sandboxing
1565
1607
 
1566
- The Auditaria can execute potentially unsafe operations (like shell commands and
1567
- file modifications) within a sandboxed environment to protect your system.
1608
+ The Auditaria CLI can execute potentially unsafe operations (like shell commands
1609
+ and file modifications) within a sandboxed environment to protect your system.
1568
1610
 
1569
1611
  Sandboxing is disabled by default, but you can enable it in a few ways:
1570
1612
 
@@ -1588,17 +1630,17 @@ FROM gemini-cli-sandbox
1588
1630
  ```
1589
1631
 
1590
1632
  When `.gemini/sandbox.Dockerfile` exists, you can use `BUILD_SANDBOX`
1591
- environment variable when running Auditaria to automatically build the custom
1592
- sandbox image:
1633
+ environment variable when running Auditaria CLI to automatically build the
1634
+ custom sandbox image:
1593
1635
 
1594
1636
  ```bash
1595
- BUILD_SANDBOX=1 auditaria -s
1637
+ BUILD_SANDBOX=1 gemini -s
1596
1638
  ```
1597
1639
 
1598
1640
  ## Usage statistics
1599
1641
 
1600
- To help us improve the Auditaria, we collect anonymized usage statistics. This
1601
- data helps us understand how the CLI is used, identify common issues, and
1642
+ To help us improve the Auditaria CLI, we collect anonymized usage statistics.
1643
+ This data helps us understand how the CLI is used, identify common issues, and
1602
1644
  prioritize new features.
1603
1645
 
1604
1646
  **What we collect:**
@@ -1,13 +1,18 @@
1
1
  # Gemini CLI examples
2
2
 
3
- Not sure where to get started with Gemini CLI? This document covers examples on
4
- how to use Gemini CLI for a variety of tasks.
3
+ Gemini CLI helps you automate common engineering tasks by combining AI reasoning
4
+ with local system tools. This document provides examples of how to use the CLI
5
+ for file management, code analysis, and data transformation.
5
6
 
6
- **Note:** Results are examples intended to showcase potential use cases. Your
7
- results may vary.
7
+ > **Note:** These examples demonstrate potential capabilities. Your actual
8
+ > results can vary based on the model used and your project environment.
8
9
 
9
10
  ## Rename your photographs based on content
10
11
 
12
+ You can use Gemini CLI to automate file management tasks that require visual
13
+ analysis. In this example, Gemini CLI renames images based on their actual
14
+ subject matter.
15
+
11
16
  Scenario: You have a folder containing the following files:
12
17
 
13
18
  ```bash
@@ -22,9 +27,9 @@ Give Gemini the following prompt:
22
27
  Rename the photos in my "photos" directory based on their contents.
23
28
  ```
24
29
 
25
- Result: Gemini will ask for permission to rename your files.
30
+ Result: Gemini asks for permission to rename your files.
26
31
 
27
- Select **Allow once** and your files will be renamed:
32
+ Select **Allow once** and your files are renamed:
28
33
 
29
34
  ```bash
30
35
  photos/yellow_flowers.png
@@ -34,6 +39,9 @@ photos/green_android_robot.png
34
39
 
35
40
  ## Explain a repository by reading its code
36
41
 
42
+ Gemini CLI is effective for rapid codebase exploration. The following example
43
+ shows how to ask Gemini CLI to fetch, analyze, and summarize a remote project.
44
+
37
45
  Scenario: You want to understand how a popular open-source utility works by
38
46
  inspecting its code, not just its README.
39
47
 
@@ -43,15 +51,14 @@ Give Gemini CLI the following prompt:
43
51
  Clone the 'chalk' repository from https://github.com/chalk/chalk, read its key source files, and explain how it works.
44
52
  ```
45
53
 
46
- Result: Gemini will perform a sequence of actions to answer your request.
54
+ Result: Gemini performs a sequence of actions to answer your request.
47
55
 
48
- 1. First, it will ask for permission to run `git clone` to download the
49
- repository.
50
- 2. Next, it will find the important source files and ask for permission to read
56
+ 1. First, it asks for permission to run `git clone` to download the repository.
57
+ 2. Next, it finds the important source files and asks for permission to read
51
58
  them.
52
- 3. Finally, after analyzing the code, it will provide a summary.
59
+ 3. Finally, after analyzing the code, it provides a summary.
53
60
 
54
- Gemini CLI will return an explanation based on the actual source code:
61
+ Gemini CLI returns an explanation based on the actual source code:
55
62
 
56
63
  ```markdown
57
64
  The `chalk` library is a popular npm package for styling terminal output with
@@ -74,25 +81,11 @@ colors. After analyzing the source code, here's how it works:
74
81
 
75
82
  ## Combine two spreadsheets into one spreadsheet
76
83
 
77
- Scenario: You have two .csv files: `Revenue - 2023.csv` and
78
- `Revenue - 2024.csv`. Each file contains monthly revenue figures, like so:
79
-
80
- ```csv
81
- January,0
82
- February,0
83
- March,0
84
- April,900
85
- May,1000
86
- June,1000
87
- July,1200
88
- August,1800
89
- September,2000
90
- October,2400
91
- November,3400
92
- December,2100
93
- ```
84
+ Gemini CLI can process and transform data across multiple files. Use this
85
+ capability to merge reports or reformat data sets without manual copying.
94
86
 
95
- You want to combine these two .csv files into a single .csv file.
87
+ Scenario: You have two .csv files: `Revenue - 2023.csv` and
88
+ `Revenue - 2024.csv`. Each file contains monthly revenue figures.
96
89
 
97
90
  Give Gemini CLI the following prompt:
98
91
 
@@ -100,9 +93,8 @@ Give Gemini CLI the following prompt:
100
93
  Combine the two .csv files into a single .csv file, with each year a different column.
101
94
  ```
102
95
 
103
- Result: Gemini CLI will read each file and then ask for permission to write a
104
- new file. Provide your permission and Gemini CLI will provide the following
105
- .csv:
96
+ Result: Gemini CLI reads each file and then asks for permission to write a new
97
+ file. Provide your permission and Gemini CLI provides the combined data:
106
98
 
107
99
  ```csv
108
100
  Month,2023,2024
@@ -122,6 +114,10 @@ December,2100,9000
122
114
 
123
115
  ## Run unit tests
124
116
 
117
+ Gemini CLI can generate boilerplate code and tests based on your existing
118
+ implementation. This example demonstrates how to request code coverage for a
119
+ JavaScript component.
120
+
125
121
  Scenario: You've written a simple login page. You wish to write unit tests to
126
122
  ensure that your login page has code coverage.
127
123
 
@@ -131,89 +127,13 @@ Give Gemini CLI the following prompt:
131
127
  Write unit tests for Login.js.
132
128
  ```
133
129
 
134
- Result: Gemini CLI will ask for permission to write a new file and create a test
135
- for your login page
136
-
137
- ```javascript
138
- import React from 'react';
139
- import { render, fireEvent, waitFor } from '@testing-library/react';
140
- import Login from './Login';
141
-
142
- // Mock the API call for login
143
- jest.mock('./api', () => ({
144
- login: jest.fn(),
145
- }));
146
-
147
- describe('Login component', () => {
148
- it('renders the login form correctly', () => {
149
- const { getByLabelText, getByText } = render(<Login />);
150
-
151
- expect(getByLabelText('Username')).toBeInTheDocument();
152
- expect(getByLabelText('Password')).toBeInTheDocument();
153
- expect(getByText('Login')).toBeInTheDocument();
154
- });
155
-
156
- it('shows an error message with invalid credentials', async () => {
157
- const { getByLabelText, getByText, findByText } = render(<Login />);
158
- const usernameInput = getByLabelText('Username');
159
- const passwordInput = getByLabelText('Password');
160
- const loginButton = getByText('Login');
161
-
162
- // Mock the API to return an error
163
- require('./api').login.mockRejectedValue(new Error('Invalid credentials'));
164
-
165
- fireEvent.change(usernameInput, { target: { value: 'testuser' } });
166
- fireEvent.change(passwordInput, { target: { value: 'wrongpassword' } });
167
- fireEvent.click(loginButton);
168
-
169
- const errorMessage = await findByText('Invalid credentials');
170
- expect(errorMessage).toBeInTheDocument();
171
- });
172
-
173
- it('logs in successfully with valid credentials', async () => {
174
- const onLoginSuccess = jest.fn();
175
- const { getByLabelText, getByText } = render(
176
- <Login onLoginSuccess={onLoginSuccess} />,
177
- );
178
- const usernameInput = getByLabelText('Username');
179
- const passwordInput = getByLabelText('Password');
180
- const loginButton = getByText('Login');
181
-
182
- // Mock the API to return a success message
183
- require('./api').login.mockResolvedValue({ success: true });
184
-
185
- fireEvent.change(usernameInput, { target: { value: 'testuser' } });
186
- fireEvent.change(passwordInput, { target: { value: 'correctpassword' } });
187
- fireEvent.click(loginButton);
188
-
189
- await waitFor(() => {
190
- expect(onLoginSuccess).toHaveBeenCalled();
191
- });
192
- });
193
-
194
- it('disables the submit button while submitting', async () => {
195
- const { getByLabelText, getByText } = render(<Login />);
196
- const usernameInput = getByLabelText('Username');
197
- const passwordInput = getByLabelText('Password');
198
- const loginButton = getByText('Login');
199
-
200
- // Mock the API to have a delay
201
- require('./api').login.mockImplementation(
202
- () =>
203
- new Promise((resolve) =>
204
- setTimeout(() => resolve({ success: true }), 1000),
205
- ),
206
- );
207
-
208
- fireEvent.change(usernameInput, { target: { value: 'testuser' } });
209
- fireEvent.change(passwordInput, { target: { value: 'correctpassword' } });
210
- fireEvent.click(loginButton);
211
-
212
- expect(loginButton).toBeDisabled();
213
-
214
- await waitFor(() => {
215
- expect(loginButton).not.toBeDisabled();
216
- });
217
- });
218
- });
219
- ```
130
+ Result: Gemini CLI asks for permission to write a new file and creates a test
131
+ for your login page.
132
+
133
+ ## Next steps
134
+
135
+ - Follow the [File management](../cli/tutorials/file-management.md) guide to
136
+ start working with your codebase.
137
+ - Follow the [Quickstart](./index.md) to start your first session.
138
+ - See the [Cheatsheet](../cli/cli-reference.md) for a quick reference of
139
+ available commands.
@@ -64,8 +64,9 @@ and more.
64
64
 
65
65
  To explore the power of Gemini CLI, see [Gemini CLI examples](./examples.md).
66
66
 
67
- ## What's next?
67
+ ## Next steps
68
68
 
69
- - Find out more about [Gemini CLI's tools](../tools/index.md).
70
- - Review [Gemini CLI's commands](../cli/commands.md).
71
- - Learn how to [get started with Gemini 3](./gemini-3.md).
69
+ - Follow the [File management](../cli/tutorials/file-management.md) guide to
70
+ start working with your codebase.
71
+ - See [Shell commands](../cli/tutorials/shell-commands.md) to learn about
72
+ terminal integration.