@codeflyai/codefly 0.24.0 → 0.24.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/bundle/builtin/skill-creator/SKILL.md +382 -0
- package/bundle/builtin/skill-creator/scripts/init_skill.cjs +235 -0
- package/bundle/builtin/skill-creator/scripts/package_skill.cjs +102 -0
- package/bundle/builtin/skill-creator/scripts/validate_skill.cjs +127 -0
- package/bundle/codefly.js +318024 -294904
- package/bundle/docs/architecture.md +3 -3
- package/bundle/docs/assets/monitoring-dashboard-logs.png +0 -0
- package/bundle/docs/assets/monitoring-dashboard-metrics.png +0 -0
- package/bundle/docs/assets/monitoring-dashboard-overview.png +0 -0
- package/bundle/docs/changelogs/index.md +134 -0
- package/bundle/docs/changelogs/latest.md +355 -210
- package/bundle/docs/changelogs/preview.md +318 -115
- package/bundle/docs/cli/commands.md +21 -0
- package/bundle/docs/cli/custom-commands.md +9 -9
- package/bundle/docs/cli/index.md +6 -2
- package/bundle/docs/cli/keyboard-shortcuts.md +61 -78
- package/bundle/docs/cli/model-routing.md +7 -2
- package/bundle/docs/cli/model.md +1 -1
- package/bundle/docs/cli/openspec.md +164 -0
- package/bundle/docs/cli/sandbox.md +1 -1
- package/bundle/docs/cli/settings.md +80 -60
- package/bundle/docs/cli/skills.md +188 -0
- package/bundle/docs/cli/system-prompt.md +32 -0
- package/bundle/docs/cli/telemetry.md +38 -3
- package/bundle/docs/cli/themes.md +0 -2
- package/bundle/docs/cli/tutorials/skills-getting-started.md +124 -0
- package/bundle/docs/cli/tutorials.md +4 -0
- package/bundle/docs/core/index.md +4 -0
- package/bundle/docs/core/memport.md +2 -0
- package/bundle/docs/core/policy-engine.md +3 -2
- package/bundle/docs/extensions/getting-started-extensions.md +39 -2
- package/bundle/docs/get-started/configuration.md +127 -71
- package/bundle/docs/get-started/gemini-3.md +2 -17
- package/bundle/docs/hooks/reference.md +245 -116
- package/bundle/docs/index.md +2 -0
- package/bundle/docs/local-development.md +1 -1
- package/bundle/docs/releases.md +1 -1
- package/bundle/docs/sidebar.json +5 -5
- package/bundle/docs/tools/database-schema.md +231 -0
- package/bundle/docs/tools/index.md +7 -0
- package/bundle/docs/tools/mcp-server.md +26 -2
- package/bundle/docs/tools/shell.md +1 -1
- package/bundle/docs/tools/swagger-schema.md +236 -0
- package/bundle/docs/troubleshooting.md +23 -5
- package/bundle/policies/agent.toml +1 -1
- package/bundle/policies/plan.toml +70 -0
- package/bundle/policies/read-only.toml +0 -5
- package/bundle/policies/yolo.toml +1 -0
- package/package.json +12 -5
- package/bundle/docs/get-started/deployment.md +0 -143
|
@@ -8,43 +8,50 @@ available combinations.
|
|
|
8
8
|
|
|
9
9
|
#### Basic Controls
|
|
10
10
|
|
|
11
|
-
| Action
|
|
12
|
-
|
|
|
13
|
-
| Confirm the current selection or choice.
|
|
14
|
-
| Dismiss dialogs or cancel the current focus.
|
|
11
|
+
| Action | Keys |
|
|
12
|
+
| --------------------------------------------------------------- | ---------- |
|
|
13
|
+
| Confirm the current selection or choice. | `Enter` |
|
|
14
|
+
| Dismiss dialogs or cancel the current focus. | `Esc` |
|
|
15
|
+
| Cancel the current request or quit the CLI when input is empty. | `Ctrl + C` |
|
|
16
|
+
| Exit the CLI when the input buffer is empty. | `Ctrl + D` |
|
|
15
17
|
|
|
16
18
|
#### Cursor Movement
|
|
17
19
|
|
|
18
|
-
| Action
|
|
19
|
-
|
|
|
20
|
-
| Move the cursor to the start of the line.
|
|
21
|
-
| Move the cursor to the end of the line.
|
|
20
|
+
| Action | Keys |
|
|
21
|
+
| ------------------------------------------- | ------------------------------------------------------------ |
|
|
22
|
+
| Move the cursor to the start of the line. | `Ctrl + A`<br />`Home (no Shift, Ctrl)` |
|
|
23
|
+
| Move the cursor to the end of the line. | `Ctrl + E`<br />`End (no Shift, Ctrl)` |
|
|
24
|
+
| Move the cursor up one line. | `Up Arrow (no Shift, Alt, Ctrl, Cmd)` |
|
|
25
|
+
| Move the cursor down one line. | `Down Arrow (no Shift, Alt, Ctrl, Cmd)` |
|
|
26
|
+
| Move the cursor one character to the left. | `Left Arrow (no Shift, Alt, Ctrl, Cmd)`<br />`Ctrl + B` |
|
|
27
|
+
| Move the cursor one character to the right. | `Right Arrow (no Shift, Alt, Ctrl, Cmd)`<br />`Ctrl + F` |
|
|
28
|
+
| Move the cursor one word to the left. | `Ctrl + Left Arrow`<br />`Alt + Left Arrow`<br />`Alt + B` |
|
|
29
|
+
| Move the cursor one word to the right. | `Ctrl + Right Arrow`<br />`Alt + Right Arrow`<br />`Alt + F` |
|
|
22
30
|
|
|
23
31
|
#### Editing
|
|
24
32
|
|
|
25
|
-
| Action | Keys
|
|
26
|
-
| ------------------------------------------------ |
|
|
27
|
-
| Delete from the cursor to the end of the line. | `Ctrl + K`
|
|
28
|
-
| Delete from the cursor to the start of the line. | `Ctrl + U`
|
|
29
|
-
| Clear all text in the input field. | `Ctrl + C`
|
|
30
|
-
| Delete the previous word. | `Ctrl + Backspace`<br />`
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
| Clear the terminal screen and redraw the UI. | `Ctrl + L` |
|
|
33
|
+
| Action | Keys |
|
|
34
|
+
| ------------------------------------------------ | --------------------------------------------------------- |
|
|
35
|
+
| Delete from the cursor to the end of the line. | `Ctrl + K` |
|
|
36
|
+
| Delete from the cursor to the start of the line. | `Ctrl + U` |
|
|
37
|
+
| Clear all text in the input field. | `Ctrl + C` |
|
|
38
|
+
| Delete the previous word. | `Ctrl + Backspace`<br />`Alt + Backspace`<br />`Ctrl + W` |
|
|
39
|
+
| Delete the next word. | `Ctrl + Delete`<br />`Alt + Delete` |
|
|
40
|
+
| Delete the character to the left. | `Backspace`<br />`Ctrl + H` |
|
|
41
|
+
| Delete the character to the right. | `Delete`<br />`Ctrl + D` |
|
|
42
|
+
| Undo the most recent text edit. | `Ctrl + Z (no Shift)` |
|
|
43
|
+
| Redo the most recent undone text edit. | `Shift + Ctrl + Z` |
|
|
37
44
|
|
|
38
45
|
#### Scrolling
|
|
39
46
|
|
|
40
|
-
| Action | Keys
|
|
41
|
-
| ------------------------ |
|
|
42
|
-
| Scroll content up. | `Shift + Up Arrow`
|
|
43
|
-
| Scroll content down. | `Shift + Down Arrow`
|
|
44
|
-
| Scroll to the top. | `Home`
|
|
45
|
-
| Scroll to the bottom. | `End`
|
|
46
|
-
| Scroll up by one page. | `Page Up`
|
|
47
|
-
| Scroll down by one page. | `Page Down`
|
|
47
|
+
| Action | Keys |
|
|
48
|
+
| ------------------------ | --------------------------------- |
|
|
49
|
+
| Scroll content up. | `Shift + Up Arrow` |
|
|
50
|
+
| Scroll content down. | `Shift + Down Arrow` |
|
|
51
|
+
| Scroll to the top. | `Ctrl + Home`<br />`Shift + Home` |
|
|
52
|
+
| Scroll to the bottom. | `Ctrl + End`<br />`Shift + End` |
|
|
53
|
+
| Scroll up by one page. | `Page Up` |
|
|
54
|
+
| Scroll down by one page. | `Page Down` |
|
|
48
55
|
|
|
49
56
|
#### History & Search
|
|
50
57
|
|
|
@@ -53,8 +60,9 @@ available combinations.
|
|
|
53
60
|
| Show the previous entry in history. | `Ctrl + P (no Shift)` |
|
|
54
61
|
| Show the next entry in history. | `Ctrl + N (no Shift)` |
|
|
55
62
|
| Start reverse search through history. | `Ctrl + R` |
|
|
56
|
-
|
|
|
63
|
+
| Submit the selected reverse-search match. | `Enter (no Ctrl)` |
|
|
57
64
|
| Accept a suggestion while reverse searching. | `Tab` |
|
|
65
|
+
| Browse and rewind previous interactions. | `Double Esc` |
|
|
58
66
|
|
|
59
67
|
#### Navigation
|
|
60
68
|
|
|
@@ -77,66 +85,41 @@ available combinations.
|
|
|
77
85
|
|
|
78
86
|
#### Text Input
|
|
79
87
|
|
|
80
|
-
| Action
|
|
81
|
-
|
|
|
82
|
-
| Submit the current prompt.
|
|
83
|
-
| Insert a newline without submitting.
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
| Action | Keys |
|
|
88
|
-
| ---------------------------------------------- | ------------------------- |
|
|
89
|
-
| Open the current prompt in an external editor. | `Ctrl + X` |
|
|
90
|
-
| Paste from the clipboard. | `Ctrl + V`<br />`Cmd + V` |
|
|
88
|
+
| Action | Keys |
|
|
89
|
+
| ---------------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
90
|
+
| Submit the current prompt. | `Enter (no Shift, Alt, Ctrl, Cmd)` |
|
|
91
|
+
| Insert a newline without submitting. | `Ctrl + Enter`<br />`Cmd + Enter`<br />`Alt + Enter`<br />`Shift + Enter`<br />`Ctrl + J` |
|
|
92
|
+
| Open the current prompt in an external editor. | `Ctrl + X` |
|
|
93
|
+
| Paste from the clipboard. | `Ctrl + V`<br />`Cmd + V`<br />`Alt + V` |
|
|
91
94
|
|
|
92
95
|
#### App Controls
|
|
93
96
|
|
|
94
|
-
| Action
|
|
95
|
-
|
|
|
96
|
-
| Toggle detailed error information.
|
|
97
|
-
| Toggle the full TODO list.
|
|
98
|
-
|
|
|
99
|
-
| Toggle Markdown rendering.
|
|
100
|
-
| Toggle copy mode when
|
|
101
|
-
|
|
|
102
|
-
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
|
107
|
-
|
|
|
108
|
-
| Cancel the current request or quit the CLI. | `Ctrl + C` |
|
|
109
|
-
| Exit the CLI when the input buffer is empty. | `Ctrl + D` |
|
|
97
|
+
| Action | Keys |
|
|
98
|
+
| ----------------------------------------------------------------------------------------------------- | ---------------- |
|
|
99
|
+
| Toggle detailed error information. | `F12` |
|
|
100
|
+
| Toggle the full TODO list. | `Ctrl + T` |
|
|
101
|
+
| Show IDE context details. | `Ctrl + G` |
|
|
102
|
+
| Toggle Markdown rendering. | `Alt + M` |
|
|
103
|
+
| Toggle copy mode when in alternate buffer mode. | `Ctrl + S` |
|
|
104
|
+
| Toggle YOLO (auto-approval) mode for tool calls. | `Ctrl + Y` |
|
|
105
|
+
| Cycle through approval modes: default (prompt), auto_edit (auto-approve edits), and plan (read-only). | `Shift + Tab` |
|
|
106
|
+
| Expand a height-constrained response to show additional lines when not in alternate buffer mode. | `Ctrl + S` |
|
|
107
|
+
| Focus the shell input from the gemini input. | `Tab (no Shift)` |
|
|
108
|
+
| Focus the Gemini input from the shell input. | `Tab` |
|
|
109
|
+
| Clear the terminal screen and redraw the UI. | `Ctrl + L` |
|
|
110
|
+
| Restart the application. | `R` |
|
|
110
111
|
|
|
111
112
|
<!-- KEYBINDINGS-AUTOGEN:END -->
|
|
112
113
|
|
|
113
114
|
## Additional context-specific shortcuts
|
|
114
115
|
|
|
115
|
-
- `
|
|
116
|
-
|
|
117
|
-
- `Option+M` (macOS): Entering `µ` with Option+M also toggles Markdown
|
|
118
|
-
rendering, matching `Cmd+M`.
|
|
116
|
+
- `Option+B/F/M` (macOS only): Are interpreted as `Cmd+B/F/M` even if your
|
|
117
|
+
terminal isn't configured to send Meta with Option.
|
|
119
118
|
- `!` on an empty prompt: Enter or exit shell mode.
|
|
120
119
|
- `\` (at end of a line) + `Enter`: Insert a newline without leaving single-line
|
|
121
120
|
mode.
|
|
122
|
-
- `
|
|
123
|
-
|
|
124
|
-
editing text.
|
|
125
|
-
- `Ctrl+F` or `Right Arrow`: Move the cursor one character to the right; with an
|
|
126
|
-
embedded shell attached, `Ctrl+F` still toggles focus.
|
|
127
|
-
- `Ctrl+D` or `Delete`: Remove the character immediately to the right of the
|
|
128
|
-
cursor.
|
|
129
|
-
- `Ctrl+H` or `Backspace`: Remove the character immediately to the left of the
|
|
130
|
-
cursor.
|
|
131
|
-
- `Ctrl+Left Arrow` / `Meta+Left Arrow` / `Meta+B`: Move one word to the left.
|
|
132
|
-
- `Ctrl+Right Arrow` / `Meta+Right Arrow` / `Meta+F`: Move one word to the
|
|
133
|
-
right.
|
|
134
|
-
- `Ctrl+W`: Delete the word to the left of the cursor (in addition to
|
|
135
|
-
`Ctrl+Backspace` / `Cmd+Backspace`).
|
|
136
|
-
- `Ctrl+Z` / `Ctrl+Shift+Z`: Undo or redo the most recent text edit.
|
|
137
|
-
- `Meta+Enter`: Open the current input in an external editor (alias for
|
|
138
|
-
`Ctrl+X`).
|
|
139
|
-
- `Esc` pressed twice quickly: Clear the current input buffer.
|
|
121
|
+
- `Esc` pressed twice quickly: Clear the input prompt if it is not empty,
|
|
122
|
+
otherwise browse and rewind previous interactions.
|
|
140
123
|
- `Up Arrow` / `Down Arrow`: When the cursor is at the top or bottom of a
|
|
141
124
|
single-line input, navigate backward or forward through prompt history.
|
|
142
125
|
- `Number keys (1-9, multi-digit)` inside selection dialogs: Jump directly to
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
# Model routing
|
|
2
2
|
|
|
3
3
|
Gemini CLI includes a model routing feature that automatically switches to a
|
|
4
4
|
fallback model in case of a model failure. This feature is enabled by default
|
|
@@ -11,12 +11,17 @@ health and automatically routes requests to available models based on defined
|
|
|
11
11
|
policies.
|
|
12
12
|
|
|
13
13
|
1. **Model failure:** If the currently selected model fails (e.g., due to quota
|
|
14
|
-
or server errors), the CLI will
|
|
14
|
+
or server errors), the CLI will initiate the fallback process.
|
|
15
15
|
|
|
16
16
|
2. **User consent:** Depending on the failure and the model's policy, the CLI
|
|
17
17
|
may prompt you to switch to a fallback model (by default always prompts
|
|
18
18
|
you).
|
|
19
19
|
|
|
20
|
+
Some internal utility calls (such as prompt completion and classification)
|
|
21
|
+
use a silent fallback chain for `gemini-2.5-flash-lite` and will fall back
|
|
22
|
+
to `gemini-2.5-flash` and `gemini-2.5-pro` without prompting or changing the
|
|
23
|
+
configured model.
|
|
24
|
+
|
|
20
25
|
3. **Model switch:** If approved, or if the policy allows for silent fallback,
|
|
21
26
|
the CLI will use an available fallback model for the current turn or the
|
|
22
27
|
remainder of the session.
|
package/bundle/docs/cli/model.md
CHANGED
|
@@ -39,7 +39,7 @@ To enable Gemini 3 Pro and Gemini 3 Flash (if available), enable
|
|
|
39
39
|
|
|
40
40
|
You can also use the `--model` flag to specify a particular Gemini model on
|
|
41
41
|
startup. For more details, refer to the
|
|
42
|
-
[configuration documentation](
|
|
42
|
+
[configuration documentation](../get-started/configuration.md).
|
|
43
43
|
|
|
44
44
|
Changes to these settings will be applied to all subsequent interactions with
|
|
45
45
|
Gemini CLI.
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
# OpenSpec CLI
|
|
2
|
+
|
|
3
|
+
OpenSpec is an AI-native system for spec-driven development, integrated directly
|
|
4
|
+
into Codefly CLI. It provides a structured workflow for creating, validating,
|
|
5
|
+
and implementing changes in your codebase using a "spec-first" approach.
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
The `openspec` command allows you to:
|
|
10
|
+
|
|
11
|
+
- **Initialize** OpenSpec in your project.
|
|
12
|
+
- **Manage Changes:** Create, list, show, and archive change proposals.
|
|
13
|
+
- **Validate:** Ensure your specs and changes adhere to the schema and project
|
|
14
|
+
rules.
|
|
15
|
+
- **Generate Instructions:** Get step-by-step guidance for creating artifacts
|
|
16
|
+
(proposals, designs, tasks).
|
|
17
|
+
- **Workflow Automation:** Check status and fast-forward through the development
|
|
18
|
+
lifecycle.
|
|
19
|
+
|
|
20
|
+
## Getting Started
|
|
21
|
+
|
|
22
|
+
### Initialization
|
|
23
|
+
|
|
24
|
+
To start using OpenSpec in your project, run the init command:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
codefly openspec init
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
This will:
|
|
31
|
+
|
|
32
|
+
1. Check for write permissions.
|
|
33
|
+
2. Create the `.openspec/` directory structure.
|
|
34
|
+
3. Prompt you to select AI tools (skills) to configure (e.g.,
|
|
35
|
+
`openspec-explore`, `openspec-new-change`).
|
|
36
|
+
4. Generate skill files (`SKILL.md`) and configuration.
|
|
37
|
+
|
|
38
|
+
**Options:**
|
|
39
|
+
|
|
40
|
+
- `--tools <tools>`: Configure tools non-interactively (e.g., `all`, `none`, or
|
|
41
|
+
`claude,cursor`).
|
|
42
|
+
- `--force`: Auto-cleanup legacy files without prompting.
|
|
43
|
+
|
|
44
|
+
## Core Workflow
|
|
45
|
+
|
|
46
|
+
The typical OpenSpec workflow involves creating a "change", defining its specs,
|
|
47
|
+
implementing it, and then archiving it.
|
|
48
|
+
|
|
49
|
+
### 1. Create a New Change
|
|
50
|
+
|
|
51
|
+
Start a new piece of work (feature, fix, refactor) by creating a change
|
|
52
|
+
container:
|
|
53
|
+
|
|
54
|
+
```bash
|
|
55
|
+
codefly openspec new change <name>
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
- `<name>`: A short, kebab-case name for your change (e.g., `add-auth-flow`).
|
|
59
|
+
- `--description <text>`: Optional description for the change.
|
|
60
|
+
- `--schema <name>`: Workflow schema to use (defaults to `spec-driven`).
|
|
61
|
+
|
|
62
|
+
This creates a directory at `openspec/changes/<name>/` with placeholders for
|
|
63
|
+
your artifacts.
|
|
64
|
+
|
|
65
|
+
### 2. View and Manage Changes
|
|
66
|
+
|
|
67
|
+
List all active changes:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
codefly openspec list
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Show details of a specific change:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
codefly openspec show <change-name>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
- `--json`: Output as JSON.
|
|
80
|
+
- `--deltas-only`: Show only the delta specs (requirements added/modified).
|
|
81
|
+
|
|
82
|
+
### 3. Check Status and Instructions
|
|
83
|
+
|
|
84
|
+
Check the status of artifacts for a change:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
codefly openspec status --change <change-name>
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
Get instructions for the next step in your workflow:
|
|
91
|
+
|
|
92
|
+
```bash
|
|
93
|
+
codefly openspec instructions <artifact-id> --change <change-name>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
- `<artifact-id>`: The artifact you want to work on (e.g., `proposal`, `design`,
|
|
97
|
+
`tasks`).
|
|
98
|
+
- Use `openspec instructions apply` to get instructions for the implementation
|
|
99
|
+
phase.
|
|
100
|
+
|
|
101
|
+
### 4. Validation
|
|
102
|
+
|
|
103
|
+
Validate your changes and specs to ensure they meet the required format and
|
|
104
|
+
schema:
|
|
105
|
+
|
|
106
|
+
```bash
|
|
107
|
+
codefly openspec validate <change-name>
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
- `--strict`: Enable strict validation mode.
|
|
111
|
+
- `--json`: Output results as JSON.
|
|
112
|
+
- `--all`: Validate all changes and specs.
|
|
113
|
+
|
|
114
|
+
### 5. Archiving
|
|
115
|
+
|
|
116
|
+
When a change is complete and merged, archive it to keep your workspace clean:
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
codefly openspec archive <change-name>
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
- Moves the change to `openspec/changes/archive/YYYY-MM-DD-<name>/`.
|
|
123
|
+
- Updates main specs based on the change's delta specs.
|
|
124
|
+
- `-y, --yes`: Skip confirmation prompts.
|
|
125
|
+
- `--skip-specs`: Skip updating main specs (for doc-only or tooling changes).
|
|
126
|
+
|
|
127
|
+
## Advanced Usage
|
|
128
|
+
|
|
129
|
+
### Shell Completions
|
|
130
|
+
|
|
131
|
+
Generate shell completion scripts for your shell (Bash, Zsh, Fish, PowerShell):
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
codefly openspec completion install <shell>
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Configuration
|
|
138
|
+
|
|
139
|
+
Update OpenSpec instruction files and skills:
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
codefly openspec update
|
|
143
|
+
```
|
|
144
|
+
|
|
145
|
+
View available workflow schemas:
|
|
146
|
+
|
|
147
|
+
```bash
|
|
148
|
+
codefly openspec schemas
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
View resolved template paths for a schema:
|
|
152
|
+
|
|
153
|
+
```bash
|
|
154
|
+
codefly openspec templates --schema <name>
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## Legacy Commands (Deprecated)
|
|
158
|
+
|
|
159
|
+
The following commands are deprecated in favor of the verb-first style:
|
|
160
|
+
|
|
161
|
+
- `openspec change list` -> Use `openspec list`
|
|
162
|
+
- `openspec change show` -> Use `openspec show`
|
|
163
|
+
- `openspec change validate` -> Use `openspec validate`
|
|
164
|
+
- `openspec spec show` -> Use `openspec show --type spec`
|
|
@@ -18,45 +18,51 @@ Note: Workspace settings override user settings.
|
|
|
18
18
|
Here is a list of all the available settings, grouped by category and ordered as
|
|
19
19
|
they appear in the UI.
|
|
20
20
|
|
|
21
|
+
<!-- SETTINGS-AUTOGEN:START -->
|
|
22
|
+
|
|
21
23
|
### General
|
|
22
24
|
|
|
23
|
-
| UI Label | Setting | Description
|
|
24
|
-
| ------------------------------- | ---------------------------------- |
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
| Enable
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
| Enable Session Cleanup | `general.sessionRetention.enabled` | Enable automatic session cleanup
|
|
25
|
+
| UI Label | Setting | Description | Default |
|
|
26
|
+
| ------------------------------- | ---------------------------------- | ------------------------------------------------------------- | ------- |
|
|
27
|
+
| Language | `general.language` | The language for the CLI interface. | `"en"` |
|
|
28
|
+
| Preview Features (e.g., models) | `general.previewFeatures` | Enable preview features (e.g., preview models). | `false` |
|
|
29
|
+
| Vim Mode | `general.vimMode` | Enable Vim keybindings | `false` |
|
|
30
|
+
| Enable Auto Update | `general.enableAutoUpdate` | Enable automatic updates. | `true` |
|
|
31
|
+
| Enable Prompt Completion | `general.enablePromptCompletion` | Enable AI-powered prompt completion suggestions while typing. | `false` |
|
|
32
|
+
| Debug Keystroke Logging | `general.debugKeystrokeLogging` | Enable debug logging of keystrokes to the console. | `false` |
|
|
33
|
+
| Enable Session Cleanup | `general.sessionRetention.enabled` | Enable automatic session cleanup | `false` |
|
|
32
34
|
|
|
33
35
|
### Output
|
|
34
36
|
|
|
35
|
-
| UI Label | Setting | Description | Default
|
|
36
|
-
| ------------- | --------------- | ------------------------------------------------------ |
|
|
37
|
-
| Output Format | `output.format` | The format of the CLI output. Can be `text` or `json`. | `text`
|
|
37
|
+
| UI Label | Setting | Description | Default |
|
|
38
|
+
| ------------- | --------------- | ------------------------------------------------------ | -------- |
|
|
39
|
+
| Output Format | `output.format` | The format of the CLI output. Can be `text` or `json`. | `"text"` |
|
|
38
40
|
|
|
39
41
|
### UI
|
|
40
42
|
|
|
41
|
-
| UI Label | Setting
|
|
42
|
-
| ------------------------------ |
|
|
43
|
-
| Hide Window Title | `ui.hideWindowTitle`
|
|
44
|
-
| Show
|
|
45
|
-
|
|
|
46
|
-
|
|
|
47
|
-
| Hide
|
|
48
|
-
| Hide
|
|
49
|
-
| Hide
|
|
50
|
-
| Hide
|
|
51
|
-
| Hide
|
|
52
|
-
| Hide
|
|
53
|
-
|
|
|
54
|
-
|
|
|
55
|
-
| Show
|
|
56
|
-
|
|
|
57
|
-
|
|
|
58
|
-
|
|
|
59
|
-
|
|
|
43
|
+
| UI Label | Setting | Description | Default |
|
|
44
|
+
| ------------------------------ | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
|
45
|
+
| Hide Window Title | `ui.hideWindowTitle` | Hide the window title bar | `false` |
|
|
46
|
+
| Show Thoughts in Title | `ui.showStatusInTitle` | Show Gemini CLI model thoughts in the terminal window title during the working phase | `false` |
|
|
47
|
+
| Dynamic Window Title | `ui.dynamicWindowTitle` | Update the terminal window title with current status icons (Ready: ◇, Action Required: ✋, Working: ✦) | `true` |
|
|
48
|
+
| Show Home Directory Warning | `ui.showHomeDirectoryWarning` | Show a warning when running Gemini CLI in the home directory. | `true` |
|
|
49
|
+
| Hide Tips | `ui.hideTips` | Hide helpful tips in the UI | `false` |
|
|
50
|
+
| Hide Banner | `ui.hideBanner` | Hide the application banner | `false` |
|
|
51
|
+
| Hide Context Summary | `ui.hideContextSummary` | Hide the context summary (GEMINI.md, MCP servers) above the input. | `false` |
|
|
52
|
+
| Hide CWD | `ui.footer.hideCWD` | Hide the current working directory path in the footer. | `false` |
|
|
53
|
+
| Hide Sandbox Status | `ui.footer.hideSandboxStatus` | Hide the sandbox status indicator in the footer. | `false` |
|
|
54
|
+
| Hide Model Info | `ui.footer.hideModelInfo` | Hide the model name and context usage in the footer. | `false` |
|
|
55
|
+
| Hide Context Window Percentage | `ui.footer.hideContextPercentage` | Hides the context window remaining percentage. | `true` |
|
|
56
|
+
| Hide Footer | `ui.hideFooter` | Hide the footer from the UI | `false` |
|
|
57
|
+
| Show Memory Usage | `ui.showMemoryUsage` | Display memory usage information in the UI | `false` |
|
|
58
|
+
| Show Line Numbers | `ui.showLineNumbers` | Show line numbers in the chat. | `true` |
|
|
59
|
+
| Show Citations | `ui.showCitations` | Show citations for generated text in the chat. | `false` |
|
|
60
|
+
| Show Model Info In Chat | `ui.showModelInfoInChat` | Show the model name in the chat for each model turn. | `false` |
|
|
61
|
+
| Use Full Width | `ui.useFullWidth` | Use the entire width of the terminal for output. | `true` |
|
|
62
|
+
| Use Alternate Screen Buffer | `ui.useAlternateBuffer` | Use an alternate screen buffer for the UI, preserving shell history. | `false` |
|
|
63
|
+
| Incremental Rendering | `ui.incrementalRendering` | Enable incremental rendering for the UI. This option will reduce flickering but may cause rendering artifacts. Only supported when useAlternateBuffer is enabled. | `true` |
|
|
64
|
+
| Enable Loading Phrases | `ui.accessibility.enableLoadingPhrases` | Enable loading phrases during operations. | `true` |
|
|
65
|
+
| Screen Reader Mode | `ui.accessibility.screenReader` | Render output in plain-text to be more screen reader accessible | `false` |
|
|
60
66
|
|
|
61
67
|
### IDE
|
|
62
68
|
|
|
@@ -69,45 +75,59 @@ they appear in the UI.
|
|
|
69
75
|
| UI Label | Setting | Description | Default |
|
|
70
76
|
| ----------------------- | ---------------------------- | -------------------------------------------------------------------------------------- | ------- |
|
|
71
77
|
| Max Session Turns | `model.maxSessionTurns` | Maximum number of user/model/tool turns to keep in a session. -1 means unlimited. | `-1` |
|
|
72
|
-
| Compression Threshold | `model.compressionThreshold` | The fraction of context usage at which to trigger context compression (e.g. 0.2, 0.3). | `0.
|
|
78
|
+
| Compression Threshold | `model.compressionThreshold` | The fraction of context usage at which to trigger context compression (e.g. 0.2, 0.3). | `0.5` |
|
|
73
79
|
| Skip Next Speaker Check | `model.skipNextSpeakerCheck` | Skip the next speaker check. | `true` |
|
|
74
80
|
|
|
75
81
|
### Context
|
|
76
82
|
|
|
77
|
-
| UI Label | Setting | Description
|
|
78
|
-
| ------------------------------------ | ------------------------------------------------- |
|
|
79
|
-
| Memory Discovery Max Dirs | `context.discoveryMaxDirs` | Maximum number of directories to search for memory.
|
|
80
|
-
| Load Memory From Include Directories | `context.loadMemoryFromIncludeDirectories` | Controls how /memory refresh loads
|
|
81
|
-
| Respect .gitignore | `context.fileFiltering.respectGitIgnore` | Respect .gitignore files when searching.
|
|
82
|
-
| Respect .codeflyignore | `context.fileFiltering.
|
|
83
|
-
| Enable Recursive File Search | `context.fileFiltering.enableRecursiveFileSearch` | Enable recursive file search functionality when completing @ references in the prompt.
|
|
84
|
-
|
|
|
83
|
+
| UI Label | Setting | Description | Default |
|
|
84
|
+
| ------------------------------------ | ------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | ------- |
|
|
85
|
+
| Memory Discovery Max Dirs | `context.discoveryMaxDirs` | Maximum number of directories to search for memory. | `200` |
|
|
86
|
+
| Load Memory From Include Directories | `context.loadMemoryFromIncludeDirectories` | Controls how /memory refresh loads GEMINI.md files. When true, include directories are scanned; when false, only the current directory is used. | `false` |
|
|
87
|
+
| Respect .gitignore | `context.fileFiltering.respectGitIgnore` | Respect .gitignore files when searching. | `true` |
|
|
88
|
+
| Respect .codeflyignore | `context.fileFiltering.respectCodeflyIgnore` | Respect .codeflyignore files when searching. | `true` |
|
|
89
|
+
| Enable Recursive File Search | `context.fileFiltering.enableRecursiveFileSearch` | Enable recursive file search functionality when completing @ references in the prompt. | `true` |
|
|
90
|
+
| Enable Fuzzy Search | `context.fileFiltering.enableFuzzySearch` | Enable fuzzy search when searching for files. | `true` |
|
|
85
91
|
|
|
86
92
|
### Tools
|
|
87
93
|
|
|
88
|
-
| UI Label | Setting | Description
|
|
89
|
-
| -------------------------------- | ------------------------------------ |
|
|
90
|
-
| Enable Interactive Shell | `tools.shell.enableInteractiveShell` | Use node-pty for an interactive shell experience. Fallback to child_process still applies.
|
|
91
|
-
| Show Color | `tools.shell.showColor` | Show color in shell output.
|
|
92
|
-
| Auto Accept | `tools.autoAccept` | Automatically accept and execute tool calls that are considered safe (e.g., read-only operations).
|
|
93
|
-
|
|
|
94
|
-
|
|
|
95
|
-
| Tool Output Truncation
|
|
96
|
-
| Tool Output Truncation
|
|
94
|
+
| UI Label | Setting | Description | Default |
|
|
95
|
+
| -------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- |
|
|
96
|
+
| Enable Interactive Shell | `tools.shell.enableInteractiveShell` | Use node-pty for an interactive shell experience. Fallback to child_process still applies. | `true` |
|
|
97
|
+
| Show Color | `tools.shell.showColor` | Show color in shell output. | `false` |
|
|
98
|
+
| Auto Accept | `tools.autoAccept` | Automatically accept and execute tool calls that are considered safe (e.g., read-only operations). | `false` |
|
|
99
|
+
| Approval Mode | `tools.approvalMode` | The default approval mode for tool execution. 'default' prompts for approval, 'auto_edit' auto-approves edit tools, and 'plan' is read-only mode. 'yolo' is not supported yet. | `"default"` |
|
|
100
|
+
| Use Ripgrep | `tools.useRipgrep` | Use ripgrep for file content search instead of the fallback implementation. Provides faster search performance. | `true` |
|
|
101
|
+
| Enable Tool Output Truncation | `tools.enableToolOutputTruncation` | Enable truncation of large tool outputs. | `true` |
|
|
102
|
+
| Tool Output Truncation Threshold | `tools.truncateToolOutputThreshold` | Truncate tool output if it is larger than this many characters. Set to -1 to disable. | `4000000` |
|
|
103
|
+
| Tool Output Truncation Lines | `tools.truncateToolOutputLines` | The number of lines to keep when truncating tool output. | `1000` |
|
|
104
|
+
| Disable LLM Correction | `tools.disableLLMCorrection` | Disable LLM-based error correction for edit tools. When enabled, tools will fail immediately if exact string matches are not found, instead of attempting to self-correct. | `true` |
|
|
97
105
|
|
|
98
106
|
### Security
|
|
99
107
|
|
|
100
|
-
| UI Label
|
|
101
|
-
|
|
|
102
|
-
| Disable YOLO Mode
|
|
103
|
-
|
|
|
104
|
-
|
|
|
105
|
-
|
|
|
106
|
-
|
|
|
108
|
+
| UI Label | Setting | Description | Default |
|
|
109
|
+
| ------------------------------------- | ----------------------------------------------- | ------------------------------------------------------------------------------- | ----------- |
|
|
110
|
+
| Disable YOLO Mode | `security.disableYoloMode` | Disable YOLO mode, even if enabled by a flag. | `false` |
|
|
111
|
+
| Allow Permanent Tool Approval | `security.enablePermanentToolApproval` | Enable the "Allow for all future sessions" option in tool confirmation dialogs. | `false` |
|
|
112
|
+
| Blocks extensions from Git | `security.blockGitExtensions` | Blocks installing and loading extensions from Git. | `false` |
|
|
113
|
+
| Folder Trust | `security.folderTrust.enabled` | Setting to track whether Folder trust is enabled. | `false` |
|
|
114
|
+
| Enable Environment Variable Redaction | `security.environmentVariableRedaction.enabled` | Enable redaction of environment variables that may contain secrets. | `false` |
|
|
115
|
+
| API Key | `security.auth.openai.apiKey` | OpenAI API key. | `undefined` |
|
|
116
|
+
| Model | `security.auth.openai.model` | OpenAI model (e.g., gpt-4o). | `undefined` |
|
|
117
|
+
| Base URL | `security.auth.openai.baseUrl` | OpenAI Base URL. | `undefined` |
|
|
107
118
|
|
|
108
119
|
### Experimental
|
|
109
120
|
|
|
110
|
-
| UI Label
|
|
111
|
-
|
|
|
112
|
-
|
|
|
113
|
-
|
|
|
121
|
+
| UI Label | Setting | Description | Default |
|
|
122
|
+
| ---------------- | ---------------------------- | ----------------------------------------------------------------------------------- | ------- |
|
|
123
|
+
| Agent Skills | `experimental.skills` | Enable Agent Skills (experimental). | `false` |
|
|
124
|
+
| Use OSC 52 Paste | `experimental.useOSC52Paste` | Use OSC 52 sequence for pasting instead of clipboardy (useful for remote sessions). | `false` |
|
|
125
|
+
| Plan | `experimental.plan` | Enable planning features (Plan Mode and tools). | `false` |
|
|
126
|
+
|
|
127
|
+
### HooksConfig
|
|
128
|
+
|
|
129
|
+
| UI Label | Setting | Description | Default |
|
|
130
|
+
| ------------------ | --------------------------- | ------------------------------------------------ | ------- |
|
|
131
|
+
| Hook Notifications | `hooksConfig.notifications` | Show visual indicators when hooks are executing. | `true` |
|
|
132
|
+
|
|
133
|
+
<!-- SETTINGS-AUTOGEN:END -->
|