grov 0.5.6 → 0.5.7
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 +41 -2
- package/dist/commands/doctor.js +4 -3
- package/dist/commands/init.js +14 -10
- package/dist/commands/login.js +11 -2
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -166,6 +166,7 @@ grov proxy-status # Show active sessions
|
|
|
166
166
|
grov status # Show captured tasks
|
|
167
167
|
grov login # Login to cloud dashboard
|
|
168
168
|
grov sync # Sync memories to team dashboard
|
|
169
|
+
grov doctor # Diagnose setup issues
|
|
169
170
|
grov disable # Disable grov
|
|
170
171
|
grov drift-test # Test drift detection
|
|
171
172
|
```
|
|
@@ -213,7 +214,7 @@ Browse, search, and manage your team's AI knowledge at [app.grov.dev](https://ap
|
|
|
213
214
|
## Environment Variables
|
|
214
215
|
|
|
215
216
|
```bash
|
|
216
|
-
# Required for
|
|
217
|
+
# Required for memory sync and drift detection
|
|
217
218
|
export ANTHROPIC_API_KEY=sk-ant-...
|
|
218
219
|
|
|
219
220
|
# Optional
|
|
@@ -222,7 +223,45 @@ export PROXY_HOST=127.0.0.1 # Proxy host
|
|
|
222
223
|
export PROXY_PORT=8080 # Proxy port
|
|
223
224
|
```
|
|
224
225
|
|
|
225
|
-
Without an API key, Grov uses basic extraction and
|
|
226
|
+
Without an API key, Grov uses basic extraction and **memories will not sync**.
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## Troubleshooting
|
|
231
|
+
|
|
232
|
+
### Memories not syncing?
|
|
233
|
+
|
|
234
|
+
Run `grov doctor` to diagnose:
|
|
235
|
+
|
|
236
|
+
```bash
|
|
237
|
+
grov doctor
|
|
238
|
+
```
|
|
239
|
+
|
|
240
|
+
This checks your proxy, API key, login, sync status, and local database.
|
|
241
|
+
|
|
242
|
+
### ⚠️ Common Issue: API Key Not Persisting
|
|
243
|
+
|
|
244
|
+
**Using `export ANTHROPIC_API_KEY=...` directly in terminal only works in THAT terminal session.** When you open a new terminal, the key is gone.
|
|
245
|
+
|
|
246
|
+
**Fix:** Add the key to your shell profile so it persists:
|
|
247
|
+
|
|
248
|
+
```bash
|
|
249
|
+
# For zsh (macOS default):
|
|
250
|
+
echo 'export ANTHROPIC_API_KEY=sk-ant-...' >> ~/.zshrc
|
|
251
|
+
source ~/.zshrc
|
|
252
|
+
|
|
253
|
+
# For bash:
|
|
254
|
+
echo 'export ANTHROPIC_API_KEY=sk-ant-...' >> ~/.bashrc
|
|
255
|
+
source ~/.bashrc
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
Then run `grov doctor` to verify:
|
|
259
|
+
|
|
260
|
+
```
|
|
261
|
+
✓ ANTHROPIC_API_KEY: Set
|
|
262
|
+
```
|
|
263
|
+
|
|
264
|
+
Get your API key at: https://console.anthropic.com/settings/keys
|
|
226
265
|
|
|
227
266
|
---
|
|
228
267
|
|
package/dist/commands/doctor.js
CHANGED
|
@@ -19,10 +19,11 @@ export async function doctor() {
|
|
|
19
19
|
// Check API key
|
|
20
20
|
const apiKey = process.env.ANTHROPIC_API_KEY;
|
|
21
21
|
const hasApiKey = !!(apiKey && apiKey.length > 10);
|
|
22
|
+
const shell = process.env.SHELL?.includes('zsh') ? '~/.zshrc' : '~/.bashrc';
|
|
22
23
|
const apiKeyFix = process.platform === 'win32'
|
|
23
|
-
? '
|
|
24
|
-
: 'export ANTHROPIC_API_KEY=sk-ant-...
|
|
25
|
-
printCheck('ANTHROPIC_API_KEY', hasApiKey, 'Set', '
|
|
24
|
+
? 'setx ANTHROPIC_API_KEY "sk-ant-..." (permanent) or add to System Environment Variables'
|
|
25
|
+
: `Add to ${shell}: echo 'export ANTHROPIC_API_KEY=sk-ant-...' >> ${shell} && source ${shell}`;
|
|
26
|
+
printCheck('ANTHROPIC_API_KEY', hasApiKey, 'Set', 'NOT SET - memories will not sync!', apiKeyFix);
|
|
26
27
|
// Check login
|
|
27
28
|
const creds = readCredentials();
|
|
28
29
|
printCheck('Login', !!creds, creds ? `Logged in as ${creds.email}` : 'Not logged in', 'Not logged in', 'grov login');
|
package/dist/commands/init.js
CHANGED
|
@@ -13,24 +13,28 @@ export async function init() {
|
|
|
13
13
|
}
|
|
14
14
|
console.log(`\nSettings file: ${getSettingsPath()}`);
|
|
15
15
|
// Check for API key and provide helpful instructions
|
|
16
|
+
const shell = process.env.SHELL?.includes('zsh') ? '~/.zshrc' : '~/.bashrc';
|
|
16
17
|
if (!process.env.ANTHROPIC_API_KEY) {
|
|
17
|
-
console.log('\n'
|
|
18
|
-
console.log(' ANTHROPIC_API_KEY
|
|
19
|
-
console.log('
|
|
20
|
-
console.log('\
|
|
21
|
-
console.log(' 1. Get your API key at:');
|
|
18
|
+
console.log('\n╔═══════════════════════════════════════════════════════════╗');
|
|
19
|
+
console.log('║ ⚠️ ANTHROPIC_API_KEY NOT SET - MEMORIES WILL NOT SYNC! ║');
|
|
20
|
+
console.log('╚═══════════════════════════════════════════════════════════╝');
|
|
21
|
+
console.log('\n 1. Get your API key at:');
|
|
22
22
|
console.log(' https://console.anthropic.com/settings/keys\n');
|
|
23
|
-
console.log(' 2. Add to your shell
|
|
24
|
-
console.log('
|
|
25
|
-
console.log(' 3.
|
|
23
|
+
console.log(' 2. Add PERMANENTLY to your shell (not just "export" in terminal):');
|
|
24
|
+
console.log(` echo 'export ANTHROPIC_API_KEY=sk-ant-...' >> ${shell}\n`);
|
|
25
|
+
console.log(' 3. Apply changes:');
|
|
26
|
+
console.log(` source ${shell}\n`);
|
|
27
|
+
console.log(' ⚠️ Using "export" alone only works in THAT terminal!');
|
|
28
|
+
console.log(' The key will be gone when you open a new terminal.\n');
|
|
26
29
|
}
|
|
27
30
|
else {
|
|
28
|
-
console.log('\n ANTHROPIC_API_KEY found');
|
|
31
|
+
console.log('\n ✓ ANTHROPIC_API_KEY found');
|
|
29
32
|
}
|
|
30
33
|
console.log('\n--- Next Steps ---');
|
|
31
34
|
console.log('1. Terminal 1: grov proxy');
|
|
32
35
|
console.log('2. Terminal 2: claude');
|
|
33
|
-
console.log('\
|
|
36
|
+
console.log('\nRun "grov doctor" to verify your setup is complete.');
|
|
37
|
+
console.log('Grov will automatically capture reasoning and inject context.');
|
|
34
38
|
}
|
|
35
39
|
catch (error) {
|
|
36
40
|
console.error('Failed to configure grov:', error instanceof Error ? error.message : 'Unknown error');
|
package/dist/commands/login.js
CHANGED
|
@@ -142,8 +142,17 @@ export async function login() {
|
|
|
142
142
|
console.log('║ ║');
|
|
143
143
|
console.log('╚═════════════════════════════════════════╝');
|
|
144
144
|
console.log(`\nSyncing to: ${selectedTeam.name}`);
|
|
145
|
-
|
|
146
|
-
|
|
145
|
+
// Check API key and warn if not set
|
|
146
|
+
if (!process.env.ANTHROPIC_API_KEY) {
|
|
147
|
+
const shell = process.env.SHELL?.includes('zsh') ? '~/.zshrc' : '~/.bashrc';
|
|
148
|
+
console.log('\n⚠️ WARNING: ANTHROPIC_API_KEY not set - memories will NOT sync!');
|
|
149
|
+
console.log('\n Add PERMANENTLY to your shell (not just "export"):');
|
|
150
|
+
console.log(` echo 'export ANTHROPIC_API_KEY=sk-ant-...' >> ${shell}`);
|
|
151
|
+
console.log(` source ${shell}`);
|
|
152
|
+
console.log('\n Get your key at: https://console.anthropic.com/settings/keys');
|
|
153
|
+
}
|
|
154
|
+
console.log('\nRun "grov doctor" to verify your setup is complete.');
|
|
155
|
+
console.log('View memories at: https://app.grov.dev/memories\n');
|
|
147
156
|
}
|
|
148
157
|
else {
|
|
149
158
|
console.log('\n✓ Logged in. Sync not enabled.');
|
package/package.json
CHANGED