@traisetech/autopilot 2.3.0 → 2.5.0
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/CHANGELOG.md +28 -1
- package/README.md +215 -202
- package/bin/autopilot.js +9 -2
- package/docs/CONFIGURATION.md +103 -103
- package/docs/DESIGN_PRINCIPLES.md +114 -114
- package/docs/TEAM-MODE.md +51 -51
- package/docs/TROUBLESHOOTING.md +21 -21
- package/package.json +75 -69
- package/src/commands/config.js +110 -110
- package/src/commands/dashboard.mjs +151 -151
- package/src/commands/doctor.js +127 -153
- package/src/commands/guide.js +63 -0
- package/src/commands/init.js +8 -9
- package/src/commands/insights.js +237 -237
- package/src/commands/leaderboard.js +116 -116
- package/src/commands/pause.js +18 -18
- package/src/commands/preset.js +121 -121
- package/src/commands/resume.js +17 -17
- package/src/commands/start.js +41 -41
- package/src/commands/status.js +73 -39
- package/src/commands/stop.js +58 -50
- package/src/commands/undo.js +84 -84
- package/src/config/defaults.js +23 -16
- package/src/config/ignore.js +14 -31
- package/src/config/loader.js +80 -80
- package/src/core/commit.js +45 -52
- package/src/core/commitMessageGenerator.js +130 -0
- package/src/core/configValidator.js +92 -0
- package/src/core/events.js +110 -110
- package/src/core/focus.js +2 -1
- package/src/core/gemini.js +15 -15
- package/src/core/git.js +29 -2
- package/src/core/history.js +69 -69
- package/src/core/notifier.js +61 -0
- package/src/core/retryQueue.js +152 -0
- package/src/core/safety.js +224 -210
- package/src/core/state.js +69 -71
- package/src/core/watcher.js +193 -66
- package/src/index.js +70 -70
- package/src/utils/banner.js +6 -6
- package/src/utils/crypto.js +18 -18
- package/src/utils/identity.js +41 -41
- package/src/utils/logger.js +86 -68
- package/src/utils/paths.js +62 -62
- package/src/utils/process.js +141 -141
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,35 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
|
|
4
|
+
## [2.5.0] - 2026-03-28
|
|
5
|
+
|
|
6
|
+
### Added (v2.5.0)
|
|
7
|
+
|
|
8
|
+
- **VS Code Extension Engine**:
|
|
9
|
+
- Implemented `.autopilot-state.json` for real-time state synchronization (PID, status, uptime, branch, etc.).
|
|
10
|
+
- Added `.autopilot.log` with automatic rotation (500KB cap) for fast, incremental streaming in extension UI.
|
|
11
|
+
- Implemented 5s heartbeat in watcher to keep remote UIs perfectly synchronized.
|
|
12
|
+
- **Improved Process Lifecycle**:
|
|
13
|
+
- `autopilot stop` now performs deep cleanup of state, log, and PID files.
|
|
14
|
+
- Enforced `.autopilot-state.json` and `.autopilot.log` as reserved system files, auto-ignored by the watcher.
|
|
15
|
+
|
|
16
|
+
### Improved (v2.5.0)
|
|
17
|
+
|
|
18
|
+
- **Logger Engine**: Pipe all CLI output to `.autopilot.log` by default.
|
|
19
|
+
- **Persistence**: Re-aligned `startedAt` timestamps to ISO strings for cross-tool compatibility.
|
|
20
|
+
|
|
21
|
+
## [2.4.0] - 2026-03-10
|
|
22
|
+
|
|
23
|
+
### Added (v2.4.0)
|
|
24
|
+
|
|
25
|
+
- **Focus Engine Upgrades**: Improved detection of deep work sessions and productivity streaks.
|
|
26
|
+
- **Enhanced AI Logic**: More accurate conventional commit categorization for mixed changes.
|
|
27
|
+
|
|
3
28
|
## [2.3.0] - 2026-02-18
|
|
4
29
|
|
|
5
|
-
### Added
|
|
30
|
+
### Added (v2.3.0)
|
|
31
|
+
|
|
32
|
+
|
|
6
33
|
- **Production-Ready Leaderboard**:
|
|
7
34
|
- Implemented secure Row-Level Security (RLS) policies for anonymized stat synchronization.
|
|
8
35
|
- Enhanced API response to include real-time global ranking.
|
package/README.md
CHANGED
|
@@ -1,202 +1,215 @@
|
|
|
1
|
-
# 🚀 Autopilot
|
|
2
|
-
|
|
3
|
-
<div align="center">
|
|
4
|
-
|
|
5
|
-

|
|
6
|
-
|
|
7
|
-
**An intelligent Git automation CLI that safely commits and pushes your code so you can focus on building.**
|
|
8
|
-
|
|
9
|
-
[](https://www.npmjs.com/package/@traisetech/autopilot)
|
|
10
|
-
[](https://opensource.org/licenses/MIT)
|
|
11
|
-
[](https://nodejs.org)
|
|
12
|
-
[](https://www.npmjs.com/package/@traisetech/autopilot)
|
|
13
|
-
[](https://github.com/PraiseTechzw/autopilot-cli/stargazers)
|
|
14
|
-
[](https://github.com/PraiseTechzw/autopilot-cli/actions)
|
|
15
|
-
[](http://makeapullrequest.com)
|
|
16
|
-
|
|
17
|
-
**Built by [Praise Masunga](https://github.com/PraiseTechzw) (PraiseTechzw)**
|
|
18
|
-
|
|
19
|
-
[Features](#-features) • [Installation](#-installation) • [How It Works](#-how-autopilot-works) • [Safety & Guarantees](#-safety--guarantees) • [Commands](#-commands)
|
|
20
|
-
|
|
21
|
-
</div>
|
|
22
|
-
|
|
23
|
-
---
|
|
24
|
-
|
|
25
|
-
## 📖 Table of Contents
|
|
26
|
-
|
|
27
|
-
- [How Autopilot Works](#-how-autopilot-works)
|
|
28
|
-
- [Safety & Guarantees](#-safety--guarantees)
|
|
29
|
-
- [Failure & Recovery](#-failure--recovery)
|
|
30
|
-
- [AI & Privacy](#-ai--privacy)
|
|
31
|
-
- [Leaderboard & Metrics](#-leaderboard--metrics)
|
|
32
|
-
- [Installation](#-installation)
|
|
33
|
-
- [Quick Start](#-quick-start)
|
|
34
|
-
- [Commands](#-commands)
|
|
35
|
-
- [Configuration](#-configuration)
|
|
36
|
-
- [Contributing](#-contributing)
|
|
37
|
-
- [License](#-license)
|
|
38
|
-
|
|
39
|
-
---
|
|
40
|
-
|
|
41
|
-
## 🔍 How Autopilot Works
|
|
42
|
-
|
|
43
|
-
Autopilot is a local CLI tool that runs in the background of your terminal. It watches your file system for changes and automates the Git workflow based on your configuration.
|
|
44
|
-
|
|
45
|
-
**No Magic. Just Automation.**
|
|
46
|
-
|
|
47
|
-
1. **Watch**: It monitors your project directory for file modifications, creations, and deletions.
|
|
48
|
-
2. **Wait**: It uses a smart debounce timer (default: 20s) to wait until you stop typing.
|
|
49
|
-
3. **Check**: It verifies the repository status (branch, remote, conflicts) before acting.
|
|
50
|
-
4. **Commit**: It stages changes and creates a commit. If AI is enabled, it generates a meaningful message; otherwise, it uses a smart template.
|
|
51
|
-
5. **Push**: It pushes to your remote repository (optional, enabled by default).
|
|
52
|
-
|
|
53
|
-
You can stop, pause, or undo Autopilot at any time.
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## 🛡️ Safety & Guarantees
|
|
58
|
-
|
|
59
|
-
We prioritize the safety of your code above all else. Autopilot follows strict rules to ensure your work is never lost or corrupted.
|
|
60
|
-
|
|
61
|
-
### Non-Negotiable Guarantees
|
|
62
|
-
|
|
63
|
-
- **Never force-pushes**: Autopilot only performs standard `git push` operations. It will never overwrite remote history.
|
|
64
|
-
- **Never commits ignored files**: It strictly respects your `.gitignore` and `.autopilotignore` rules.
|
|
65
|
-
- **Never operates during merge/rebase**: If your repo is in a merge, rebase, or cherry-pick state, Autopilot pauses automatically.
|
|
66
|
-
- **Never transmits source code without opt-in**: Your code stays local. It is only sent to an AI provider (Gemini/Grok) if you explicitly enable AI features and provide your own API key.
|
|
67
|
-
- **Pauses when uncertain**: If a git error occurs, a conflict is detected, or the network fails, Autopilot pauses and waits for your intervention.
|
|
68
|
-
- **Allows all actions to be undone**: The `autopilot undo` command safely reverts the last automated commit without losing your file changes.
|
|
69
|
-
|
|
70
|
-
---
|
|
71
|
-
|
|
72
|
-
## ⚠️ Failure & Recovery
|
|
73
|
-
|
|
74
|
-
What happens when things go wrong? Autopilot is designed to fail safely.
|
|
75
|
-
|
|
76
|
-
- **Merge Conflicts**: If a `git pull` results in a conflict, Autopilot aborts the operation and notifies you. It will not attempt to resolve conflicts automatically.
|
|
77
|
-
- **Network Issues**: If the internet disconnects, Autopilot will queue commits locally and attempt to push when connectivity is restored (if auto-push is enabled).
|
|
78
|
-
- **Accidental Commits**: If Autopilot commits something you didn't intend, simply run `autopilot undo`. Your files will remain modified in your working directory, but the commit will be removed.
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## 🤖 AI & Privacy
|
|
83
|
-
|
|
84
|
-
Autopilot offers **optional** AI integration (Google Gemini or xAI Grok) to generate context-aware commit messages.
|
|
85
|
-
|
|
86
|
-
- **Opt-In Only**: AI features are disabled by default. You must enable them and provide your own API key.
|
|
87
|
-
- **Data Usage**: When enabled, only the `git diff` (text changes) is sent to the AI provider to generate the message.
|
|
88
|
-
- **Privacy**: Your code is not trained on by Autopilot. We do not store or proxy your code. Interactions are directly between your machine and the AI provider.
|
|
89
|
-
- **Ranking**: AI usage does not affect your position on the Leaderboard.
|
|
90
|
-
|
|
91
|
-
---
|
|
92
|
-
|
|
93
|
-
## 🏆 Leaderboard & Metrics
|
|
94
|
-
|
|
95
|
-
Autopilot includes a Focus Engine that tracks your local productivity (coding time, commit streaks). You can optionally sync this data to the global Leaderboard.
|
|
96
|
-
|
|
97
|
-
- **Participation is Opt-In**: You must explicitly enable syncing with `autopilot config set leaderboard.sync true`.
|
|
98
|
-
- **Privacy-Safe**: We do not send your email or username directly. IDs are hashed/anonymized.
|
|
99
|
-
- **No Code Collected**: The leaderboard tracks *metrics* (time, counts), not code. No file contents are ever synced.
|
|
100
|
-
- **Insight over Competition**: The goal is to help you understand your habits, not to gamify commit spam. Rankings favor consistency and quality.
|
|
101
|
-
|
|
102
|
-
---
|
|
103
|
-
|
|
104
|
-
## ⬇️ Installation
|
|
105
|
-
|
|
106
|
-
Install Autopilot globally using npm:
|
|
107
|
-
|
|
108
|
-
```bash
|
|
109
|
-
npm install -g @traisetech/autopilot
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
Or run it directly via npx:
|
|
113
|
-
|
|
114
|
-
```bash
|
|
115
|
-
npx @traisetech/autopilot start
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
---
|
|
119
|
-
|
|
120
|
-
## 🚀 Quick Start
|
|
121
|
-
|
|
122
|
-
1. **Navigate to your Git repository:**
|
|
123
|
-
```bash
|
|
124
|
-
cd /path/to/my-project
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
2. **Initialize Autopilot:**
|
|
128
|
-
```bash
|
|
129
|
-
autopilot init
|
|
130
|
-
```
|
|
131
|
-
Follow the interactive prompts to configure settings (or accept defaults).
|
|
132
|
-
|
|
133
|
-
3. **Start the watcher:**
|
|
134
|
-
```bash
|
|
135
|
-
autopilot start
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
**Autopilot is now running!** It will monitor file changes and automatically commit/push them based on your configuration.
|
|
139
|
-
|
|
140
|
-
4. **View the Dashboard:**
|
|
141
|
-
Open a new terminal and run:
|
|
142
|
-
```bash
|
|
143
|
-
autopilot dashboard
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
---
|
|
147
|
-
|
|
148
|
-
##
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
1
|
+
# 🚀 Autopilot
|
|
2
|
+
|
|
3
|
+
<div align="center">
|
|
4
|
+
|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
**An intelligent Git automation CLI that safely commits and pushes your code so you can focus on building.**
|
|
8
|
+
|
|
9
|
+
[](https://www.npmjs.com/package/@traisetech/autopilot)
|
|
10
|
+
[](https://opensource.org/licenses/MIT)
|
|
11
|
+
[](https://nodejs.org)
|
|
12
|
+
[](https://www.npmjs.com/package/@traisetech/autopilot)
|
|
13
|
+
[](https://github.com/PraiseTechzw/autopilot-cli/stargazers)
|
|
14
|
+
[](https://github.com/PraiseTechzw/autopilot-cli/actions)
|
|
15
|
+
[](http://makeapullrequest.com)
|
|
16
|
+
|
|
17
|
+
**Built by [Praise Masunga](https://github.com/PraiseTechzw) (PraiseTechzw)**
|
|
18
|
+
|
|
19
|
+
[Features](#-features) • [Installation](#-installation) • [How It Works](#-how-autopilot-works) • [Safety & Guarantees](#-safety--guarantees) • [Commands](#-commands)
|
|
20
|
+
|
|
21
|
+
</div>
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## 📖 Table of Contents
|
|
26
|
+
|
|
27
|
+
- [How Autopilot Works](#-how-autopilot-works)
|
|
28
|
+
- [Safety & Guarantees](#-safety--guarantees)
|
|
29
|
+
- [Failure & Recovery](#-failure--recovery)
|
|
30
|
+
- [AI & Privacy](#-ai--privacy)
|
|
31
|
+
- [Leaderboard & Metrics](#-leaderboard--metrics)
|
|
32
|
+
- [Installation](#-installation)
|
|
33
|
+
- [Quick Start](#-quick-start)
|
|
34
|
+
- [Commands](#-commands)
|
|
35
|
+
- [Configuration](#-configuration)
|
|
36
|
+
- [Contributing](#-contributing)
|
|
37
|
+
- [License](#-license)
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 🔍 How Autopilot Works
|
|
42
|
+
|
|
43
|
+
Autopilot is a local CLI tool that runs in the background of your terminal. It watches your file system for changes and automates the Git workflow based on your configuration.
|
|
44
|
+
|
|
45
|
+
**No Magic. Just Automation.**
|
|
46
|
+
|
|
47
|
+
1. **Watch**: It monitors your project directory for file modifications, creations, and deletions.
|
|
48
|
+
2. **Wait**: It uses a smart debounce timer (default: 20s) to wait until you stop typing.
|
|
49
|
+
3. **Check**: It verifies the repository status (branch, remote, conflicts) before acting.
|
|
50
|
+
4. **Commit**: It stages changes and creates a commit. If AI is enabled, it generates a meaningful message; otherwise, it uses a smart template.
|
|
51
|
+
5. **Push**: It pushes to your remote repository (optional, enabled by default).
|
|
52
|
+
|
|
53
|
+
You can stop, pause, or undo Autopilot at any time.
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## 🛡️ Safety & Guarantees
|
|
58
|
+
|
|
59
|
+
We prioritize the safety of your code above all else. Autopilot follows strict rules to ensure your work is never lost or corrupted.
|
|
60
|
+
|
|
61
|
+
### Non-Negotiable Guarantees
|
|
62
|
+
|
|
63
|
+
- **Never force-pushes**: Autopilot only performs standard `git push` operations. It will never overwrite remote history.
|
|
64
|
+
- **Never commits ignored files**: It strictly respects your `.gitignore` and `.autopilotignore` rules.
|
|
65
|
+
- **Never operates during merge/rebase**: If your repo is in a merge, rebase, or cherry-pick state, Autopilot pauses automatically.
|
|
66
|
+
- **Never transmits source code without opt-in**: Your code stays local. It is only sent to an AI provider (Gemini/Grok) if you explicitly enable AI features and provide your own API key.
|
|
67
|
+
- **Pauses when uncertain**: If a git error occurs, a conflict is detected, or the network fails, Autopilot pauses and waits for your intervention.
|
|
68
|
+
- **Allows all actions to be undone**: The `autopilot undo` command safely reverts the last automated commit without losing your file changes.
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## ⚠️ Failure & Recovery
|
|
73
|
+
|
|
74
|
+
What happens when things go wrong? Autopilot is designed to fail safely.
|
|
75
|
+
|
|
76
|
+
- **Merge Conflicts**: If a `git pull` results in a conflict, Autopilot aborts the operation and notifies you. It will not attempt to resolve conflicts automatically.
|
|
77
|
+
- **Network Issues**: If the internet disconnects, Autopilot will queue commits locally and attempt to push when connectivity is restored (if auto-push is enabled).
|
|
78
|
+
- **Accidental Commits**: If Autopilot commits something you didn't intend, simply run `autopilot undo`. Your files will remain modified in your working directory, but the commit will be removed.
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## 🤖 AI & Privacy
|
|
83
|
+
|
|
84
|
+
Autopilot offers **optional** AI integration (Google Gemini or xAI Grok) to generate context-aware commit messages.
|
|
85
|
+
|
|
86
|
+
- **Opt-In Only**: AI features are disabled by default. You must enable them and provide your own API key.
|
|
87
|
+
- **Data Usage**: When enabled, only the `git diff` (text changes) is sent to the AI provider to generate the message.
|
|
88
|
+
- **Privacy**: Your code is not trained on by Autopilot. We do not store or proxy your code. Interactions are directly between your machine and the AI provider.
|
|
89
|
+
- **Ranking**: AI usage does not affect your position on the Leaderboard.
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 🏆 Leaderboard & Metrics
|
|
94
|
+
|
|
95
|
+
Autopilot includes a Focus Engine that tracks your local productivity (coding time, commit streaks). You can optionally sync this data to the global Leaderboard.
|
|
96
|
+
|
|
97
|
+
- **Participation is Opt-In**: You must explicitly enable syncing with `autopilot config set leaderboard.sync true`.
|
|
98
|
+
- **Privacy-Safe**: We do not send your email or username directly. IDs are hashed/anonymized.
|
|
99
|
+
- **No Code Collected**: The leaderboard tracks *metrics* (time, counts), not code. No file contents are ever synced.
|
|
100
|
+
- **Insight over Competition**: The goal is to help you understand your habits, not to gamify commit spam. Rankings favor consistency and quality.
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## ⬇️ Installation
|
|
105
|
+
|
|
106
|
+
Install Autopilot globally using npm:
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
npm install -g @traisetech/autopilot
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
Or run it directly via npx:
|
|
113
|
+
|
|
114
|
+
```bash
|
|
115
|
+
npx @traisetech/autopilot start
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
## 🚀 Quick Start
|
|
121
|
+
|
|
122
|
+
1. **Navigate to your Git repository:**
|
|
123
|
+
```bash
|
|
124
|
+
cd /path/to/my-project
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
2. **Initialize Autopilot:**
|
|
128
|
+
```bash
|
|
129
|
+
autopilot init
|
|
130
|
+
```
|
|
131
|
+
Follow the interactive prompts to configure settings (or accept defaults).
|
|
132
|
+
|
|
133
|
+
3. **Start the watcher:**
|
|
134
|
+
```bash
|
|
135
|
+
autopilot start
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
**Autopilot is now running!** It will monitor file changes and automatically commit/push them based on your configuration.
|
|
139
|
+
|
|
140
|
+
4. **View the Dashboard:**
|
|
141
|
+
Open a new terminal and run:
|
|
142
|
+
```bash
|
|
143
|
+
autopilot dashboard
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
---
|
|
147
|
+
|
|
148
|
+
## 🎨 VS Code Extension (Recommended)
|
|
149
|
+
|
|
150
|
+
Prefer a GUI? Use our official **Autopilot VS Code Extension**:
|
|
151
|
+
|
|
152
|
+
- **Live Sidebar**: Monitor status, branch, and queue at a glance.
|
|
153
|
+
- **Integrated Logs**: View color-coded process output directly in your editor.
|
|
154
|
+
- **Quick Actions**: Start, stop, pause, and undo with a single click from the status bar.
|
|
155
|
+
- **Settings UI**: Form-based configuration of your `.autopilotrc.json`.
|
|
156
|
+
|
|
157
|
+
**[Install from the VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=praisetechzw.autopilot-vscode)**
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## 🛠️ Commands
|
|
162
|
+
|
|
163
|
+
| Command | Description |
|
|
164
|
+
|---------|-------------|
|
|
165
|
+
| `autopilot init` | Initialize configuration in the current repo. |
|
|
166
|
+
| `autopilot start` | Start the watcher process (foreground). |
|
|
167
|
+
| `autopilot stop` | Stop the running watcher process. |
|
|
168
|
+
| `autopilot status` | Check if Autopilot is running. |
|
|
169
|
+
| `autopilot dashboard` | View real-time status and activity UI. |
|
|
170
|
+
| `autopilot undo` | Revert the last Autopilot commit. |
|
|
171
|
+
| `autopilot pause` | Temporarily pause automation. |
|
|
172
|
+
| `autopilot resume` | Resume automation. |
|
|
173
|
+
| `autopilot insights` | View productivity stats and analytics. |
|
|
174
|
+
| `autopilot doctor` | Diagnose configuration and environment issues. |
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## ⚙️ Configuration
|
|
179
|
+
|
|
180
|
+
Autopilot uses an `.autopilotrc.json` file in your project root.
|
|
181
|
+
|
|
182
|
+
```json
|
|
183
|
+
{
|
|
184
|
+
"debounceSeconds": 20,
|
|
185
|
+
"minSecondsBetweenCommits": 180,
|
|
186
|
+
"autoPush": true,
|
|
187
|
+
"blockBranches": ["main", "master"],
|
|
188
|
+
"teamMode": true,
|
|
189
|
+
"preventSecrets": true,
|
|
190
|
+
"ai": {
|
|
191
|
+
"enabled": true,
|
|
192
|
+
"provider": "gemini"
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
See [docs/CONFIGURATION.md](docs/CONFIGURATION.md) for full details.
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## 🤝 Contributing
|
|
202
|
+
|
|
203
|
+
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
|
|
204
|
+
|
|
205
|
+
1. Fork the repo
|
|
206
|
+
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
|
|
207
|
+
3. Commit your changes (`git commit -m 'feat: add amazing feature'`)
|
|
208
|
+
4. Push to the branch (`git push origin feature/amazing-feature`)
|
|
209
|
+
5. Open a Pull Request
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
## 📄 License
|
|
214
|
+
|
|
215
|
+
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
package/bin/autopilot.js
CHANGED
|
@@ -14,6 +14,7 @@ const doctor = require('../src/commands/doctor');
|
|
|
14
14
|
const presetCommand = require('../src/commands/preset');
|
|
15
15
|
const configCommand = require('../src/commands/config');
|
|
16
16
|
const interactiveCommand = require('../src/commands/interactive');
|
|
17
|
+
const guideCommand = require('../src/commands/guide');
|
|
17
18
|
const pkg = require('../package.json');
|
|
18
19
|
const logger = require('../src/utils/logger');
|
|
19
20
|
const { checkForUpdate } = require('../src/utils/update-check');
|
|
@@ -32,7 +33,8 @@ const commands = {
|
|
|
32
33
|
doctor: doctor,
|
|
33
34
|
preset: presetCommand,
|
|
34
35
|
config: configCommand,
|
|
35
|
-
interactive: interactiveCommand
|
|
36
|
+
interactive: interactiveCommand,
|
|
37
|
+
guide: guideCommand
|
|
36
38
|
};
|
|
37
39
|
|
|
38
40
|
// Runtime assertion to prevent wiring errors
|
|
@@ -130,6 +132,11 @@ program
|
|
|
130
132
|
.option('-g, --global', 'Set the preference globally')
|
|
131
133
|
.action(interactiveCommand);
|
|
132
134
|
|
|
135
|
+
program
|
|
136
|
+
.command('guide')
|
|
137
|
+
.description('Interactive guide to using Autopilot')
|
|
138
|
+
.action(guideCommand);
|
|
139
|
+
|
|
133
140
|
program
|
|
134
141
|
.command('doctor')
|
|
135
142
|
.description('Diagnose and validate autopilot setup')
|
|
@@ -142,5 +149,5 @@ program
|
|
|
142
149
|
|
|
143
150
|
(async () => {
|
|
144
151
|
await checkForUpdate();
|
|
145
|
-
program.
|
|
152
|
+
await program.parseAsync(process.argv);
|
|
146
153
|
})();
|