@agentbrain/cli 1.4.19 → 1.4.33
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 +334 -296
- package/dist/commands/disable.js +6 -6
- package/dist/commands/disable.js.map +1 -1
- package/dist/commands/doom.d.ts +3 -0
- package/dist/commands/doom.d.ts.map +1 -0
- package/dist/commands/doom.js +63 -0
- package/dist/commands/doom.js.map +1 -0
- package/dist/commands/handoff.js +3 -3
- package/dist/commands/handoff.js.map +1 -1
- package/dist/commands/init.js +4 -4
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/setup.js +4 -4
- package/dist/commands/setup.js.map +1 -1
- package/dist/index.js +17 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,50 +1,99 @@
|
|
|
1
1
|
# @agentbrain/cli
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
> Smart context generation for coding agents - Keep AI assistants in sync with your codebase
|
|
4
|
+
|
|
5
|
+
Command-line interface for AgentBrain. Automatically generates and maintains context documentation that helps coding agents (Claude, Cursor, Windsurf) understand your codebase instantly.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/@agentbrain/cli)
|
|
8
|
+
[](https://opensource.org/licenses/MIT)
|
|
9
|
+
|
|
10
|
+
---
|
|
4
11
|
|
|
5
12
|
## Installation
|
|
6
13
|
|
|
14
|
+
### Global Installation (Recommended)
|
|
15
|
+
|
|
7
16
|
```bash
|
|
8
17
|
npm install -g @agentbrain/cli
|
|
9
18
|
```
|
|
10
19
|
|
|
20
|
+
### Local Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
npm install --save-dev @agentbrain/cli
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### Verify Installation
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
agentbrain --version
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
|
|
11
34
|
## Quick Start
|
|
12
35
|
|
|
36
|
+
### One-Command Setup
|
|
37
|
+
|
|
13
38
|
```bash
|
|
14
|
-
# ONE-TIME SETUP: Complete automated setup
|
|
15
39
|
cd /path/to/your/project
|
|
16
40
|
agentbrain setup
|
|
17
|
-
|
|
18
|
-
# That's it! AgentBrain now:
|
|
19
|
-
# ✓ Generates context automatically on commits
|
|
20
|
-
# ✓ Injects loading instructions into agent files
|
|
21
|
-
# ✓ Keeps everything in sync with your codebase
|
|
22
41
|
```
|
|
23
42
|
|
|
24
|
-
|
|
43
|
+
**That's it!** AgentBrain now:
|
|
44
|
+
- ✓ Generates context automatically on every commit
|
|
45
|
+
- ✓ Injects loading instructions into your agent files
|
|
46
|
+
- ✓ Detects and warns about doom loops
|
|
47
|
+
- ✓ Keeps everything in sync with your codebase
|
|
25
48
|
|
|
26
|
-
|
|
27
|
-
# Configure your API key
|
|
28
|
-
agentbrain config
|
|
49
|
+
### What Gets Created
|
|
29
50
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
agentbrain
|
|
51
|
+
- `.agentbrain/context.md` - Full repository intelligence
|
|
52
|
+
- `.agentbrain/dependency-map.md` - Service relationships
|
|
53
|
+
- `.agentbrain/patterns.md` - Coding patterns and conventions
|
|
54
|
+
- `CLAUDE.md` / `.cursorrules` / `.windsurfrules` - Agent loading instructions
|
|
55
|
+
- `.git/hooks/post-commit` - Smart auto-regeneration hook
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Core Concepts
|
|
60
|
+
|
|
61
|
+
### Smart Context Generation
|
|
62
|
+
|
|
63
|
+
AgentBrain analyzes your codebase and generates three intelligence documents:
|
|
64
|
+
|
|
65
|
+
1. **Context** - Architecture, key files, and technical overview
|
|
66
|
+
2. **Dependency Map** - How services/modules relate to each other
|
|
67
|
+
3. **Patterns** - Coding patterns, conventions, and best practices
|
|
68
|
+
|
|
69
|
+
### Automatic Regeneration
|
|
33
70
|
|
|
34
|
-
|
|
35
|
-
agentbrain standards
|
|
71
|
+
After setup, context updates automatically in the background when you commit **source file changes**. Commits complete instantly (~0.05s) while regeneration happens in the background.
|
|
36
72
|
|
|
37
|
-
|
|
38
|
-
|
|
73
|
+
**Smart Filtering:** Only regenerates when source code changes (skips docs/config updates to save time and API costs).
|
|
74
|
+
|
|
75
|
+
### Doom Loop Detection
|
|
76
|
+
|
|
77
|
+
AgentBrain automatically detects when you're modifying the same files repeatedly in commits - a sign you may be stuck in a loop. When detected:
|
|
78
|
+
|
|
79
|
+
- ⚠ Warning displayed on next CLI command
|
|
80
|
+
- 🔔 Alert included in MCP tool responses
|
|
81
|
+
- 📝 Appended to handoff documents
|
|
82
|
+
- 💡 Suggests running `agentbrain spec` to plan a fix
|
|
83
|
+
|
|
84
|
+
**Check manually:**
|
|
85
|
+
```bash
|
|
86
|
+
agentbrain doom
|
|
39
87
|
```
|
|
40
88
|
|
|
89
|
+
---
|
|
90
|
+
|
|
41
91
|
## Commands
|
|
42
92
|
|
|
43
|
-
### `
|
|
93
|
+
### `setup` - Complete Automated Setup
|
|
44
94
|
|
|
45
|
-
|
|
95
|
+
One-command setup for AgentBrain in your repository.
|
|
46
96
|
|
|
47
|
-
**Usage:**
|
|
48
97
|
```bash
|
|
49
98
|
agentbrain setup [options]
|
|
50
99
|
```
|
|
@@ -53,429 +102,418 @@ agentbrain setup [options]
|
|
|
53
102
|
- `--path <path>` - Repository path (default: current directory)
|
|
54
103
|
- `--skip-hooks` - Skip git hooks installation
|
|
55
104
|
- `--skip-agent-files` - Skip agent file injection
|
|
105
|
+
- `--no-confirm` - Skip all confirmation prompts
|
|
56
106
|
|
|
57
107
|
**What it does:**
|
|
58
108
|
1. Detects which agents you use (Claude Code, Cursor, Windsurf)
|
|
59
109
|
2. Generates initial context documentation
|
|
60
|
-
3. Injects context loading instructions
|
|
61
|
-
4. Installs smart git hooks
|
|
62
|
-
5. Sets up
|
|
110
|
+
3. Injects context loading instructions
|
|
111
|
+
4. Installs smart git hooks
|
|
112
|
+
5. Sets up doom loop detection
|
|
63
113
|
|
|
64
|
-
**
|
|
65
|
-
- Creates `agentbrain/` directory with context docs
|
|
66
|
-
- Updates `CLAUDE.md`, `.cursorrules`, and/or `.windsurfrules`
|
|
67
|
-
- Installs `.git/hooks/post-commit` for smart auto-regeneration
|
|
114
|
+
**Cost:** ~$0.02-0.05 for initial generation (cached repeats are free)
|
|
68
115
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
116
|
+
---
|
|
117
|
+
|
|
118
|
+
### `init` - Regenerate Context
|
|
119
|
+
|
|
120
|
+
Manually regenerate all context documentation.
|
|
73
121
|
|
|
74
|
-
|
|
75
|
-
agentbrain
|
|
122
|
+
```bash
|
|
123
|
+
agentbrain init [options]
|
|
76
124
|
```
|
|
77
125
|
|
|
78
|
-
**
|
|
126
|
+
**Options:**
|
|
127
|
+
- `--path <path>` - Repository path
|
|
128
|
+
- `--no-confirm` - Skip confirmation prompt
|
|
129
|
+
- `--silent` - Suppress output (for scripts)
|
|
79
130
|
|
|
80
|
-
**
|
|
81
|
-
|
|
131
|
+
**Use when:**
|
|
132
|
+
- You want to force a fresh regeneration
|
|
133
|
+
- Context feels stale or inaccurate
|
|
134
|
+
- After major codebase changes
|
|
82
135
|
|
|
83
|
-
|
|
136
|
+
**Cost:** ~$0.02-0.05 per regeneration (same git hash = free from cache)
|
|
84
137
|
|
|
85
138
|
---
|
|
86
139
|
|
|
87
|
-
### `
|
|
140
|
+
### `spec` - Create Task Specifications
|
|
88
141
|
|
|
89
|
-
Generate
|
|
142
|
+
Generate AI-guided task specifications with problem analysis and architecture planning.
|
|
90
143
|
|
|
91
|
-
**Usage:**
|
|
92
144
|
```bash
|
|
93
|
-
agentbrain
|
|
145
|
+
agentbrain spec "<task description>" [options]
|
|
94
146
|
```
|
|
95
147
|
|
|
96
148
|
**Options:**
|
|
97
|
-
- `--path <path>` - Repository path
|
|
98
|
-
- `--
|
|
99
|
-
- `--no-cache` - Skip cache and regenerate
|
|
100
|
-
- `--dry-run` - Preview without generating (free!)
|
|
149
|
+
- `--path <path>` - Repository path
|
|
150
|
+
- `--load <slug>` - Load existing spec by slug
|
|
101
151
|
|
|
102
|
-
**
|
|
103
|
-
Creates three files in `agentbrain/` directory:
|
|
104
|
-
- `context.md` - Navigation guide with exact file paths and function names
|
|
105
|
-
- `dependency-map.md` - Actual code dependencies showing imports and data flow
|
|
106
|
-
- `patterns.md` - Coding patterns and conventions found in the codebase
|
|
107
|
-
|
|
108
|
-
**Example:**
|
|
152
|
+
**Examples:**
|
|
109
153
|
```bash
|
|
110
|
-
#
|
|
111
|
-
agentbrain
|
|
112
|
-
|
|
113
|
-
# Generate for current directory
|
|
114
|
-
agentbrain init
|
|
154
|
+
# Create new spec
|
|
155
|
+
agentbrain spec "add user authentication with OAuth"
|
|
115
156
|
|
|
116
|
-
#
|
|
117
|
-
agentbrain
|
|
157
|
+
# Load existing spec
|
|
158
|
+
agentbrain spec --load add-user-authentication
|
|
118
159
|
```
|
|
119
160
|
|
|
120
|
-
**
|
|
161
|
+
**What it creates:**
|
|
162
|
+
- Problem analysis and context
|
|
163
|
+
- Technical approach and architecture
|
|
164
|
+
- Implementation steps
|
|
165
|
+
- Testing strategy
|
|
166
|
+
- Done criteria
|
|
167
|
+
|
|
168
|
+
**Specs are saved to:** `.agentbrain/specs/<task-slug>.md`
|
|
169
|
+
|
|
170
|
+
**Cost:** ~$0.01-0.03 per spec generation
|
|
121
171
|
|
|
122
172
|
---
|
|
123
173
|
|
|
124
|
-
### `
|
|
174
|
+
### `doom` - Detect Doom Loops
|
|
125
175
|
|
|
126
|
-
|
|
176
|
+
Analyze git history to detect if you're modifying the same files repeatedly.
|
|
127
177
|
|
|
128
|
-
**Usage:**
|
|
129
178
|
```bash
|
|
130
|
-
agentbrain
|
|
179
|
+
agentbrain doom [options]
|
|
131
180
|
```
|
|
132
181
|
|
|
133
182
|
**Options:**
|
|
134
|
-
- `--path <path>` - Repository path
|
|
183
|
+
- `--path <path>` - Repository path
|
|
184
|
+
- `--commits <n>` - Number of recent commits to analyze (default: 10)
|
|
185
|
+
- `--threshold <n>` - Minimum occurrences to flag (default: 4)
|
|
186
|
+
- `--json` - Output as JSON for programmatic use
|
|
135
187
|
|
|
136
|
-
**
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
- `.windsurfrules` - For Windsurf
|
|
150
|
-
|
|
151
|
-
**Example:**
|
|
152
|
-
```bash
|
|
153
|
-
agentbrain standards
|
|
154
|
-
# Follow the interactive prompts
|
|
188
|
+
**Example Output:**
|
|
189
|
+
```
|
|
190
|
+
Analyzing last 10 commits...
|
|
191
|
+
|
|
192
|
+
⚠ Doom loop detected!
|
|
193
|
+
|
|
194
|
+
These files appear repeatedly:
|
|
195
|
+
apps/api/src/main.ts (9 times · 90%)
|
|
196
|
+
apps/api/src/auth.ts (6 times · 60%)
|
|
197
|
+
|
|
198
|
+
Suggestions:
|
|
199
|
+
→ Stop coding. Investigate root cause first.
|
|
200
|
+
→ Run: agentbrain spec "fix [problem description]"
|
|
155
201
|
```
|
|
156
202
|
|
|
157
|
-
**
|
|
203
|
+
**Automatic Detection:**
|
|
204
|
+
After commits, doom detection runs in the background. Warning shown on next command if detected.
|
|
158
205
|
|
|
159
206
|
---
|
|
160
207
|
|
|
161
|
-
### `
|
|
208
|
+
### `doctor` - Health Diagnostics
|
|
162
209
|
|
|
163
|
-
|
|
210
|
+
Run health checks on your AgentBrain setup.
|
|
164
211
|
|
|
165
|
-
**Usage:**
|
|
166
212
|
```bash
|
|
167
|
-
agentbrain
|
|
213
|
+
agentbrain doctor [options]
|
|
168
214
|
```
|
|
169
215
|
|
|
170
216
|
**Options:**
|
|
171
|
-
- `--path <path>` - Repository path
|
|
172
|
-
- `--
|
|
173
|
-
- `--commits <number>` - Number of recent commits to include (default: 5)
|
|
174
|
-
|
|
175
|
-
**Output:**
|
|
176
|
-
Creates `agentbrain/handoff.md` with:
|
|
177
|
-
- Summary of changes
|
|
178
|
-
- Current state
|
|
179
|
-
- Context & decisions
|
|
180
|
-
- Next steps
|
|
181
|
-
- Blockers & questions
|
|
182
|
-
|
|
183
|
-
**Example:**
|
|
184
|
-
```bash
|
|
185
|
-
# After making changes
|
|
186
|
-
agentbrain handoff --goal "Implement user authentication"
|
|
217
|
+
- `--path <path>` - Repository path
|
|
218
|
+
- `--json` - Output as JSON
|
|
187
219
|
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
220
|
+
**Checks:**
|
|
221
|
+
- ✓ Git repository status
|
|
222
|
+
- ✓ Context files exist and are valid
|
|
223
|
+
- ✓ Agent files are configured
|
|
224
|
+
- ✓ Git hooks installed correctly
|
|
225
|
+
- ✓ API configuration
|
|
191
226
|
|
|
192
|
-
**
|
|
227
|
+
**Use when:**
|
|
228
|
+
- Setup isn't working as expected
|
|
229
|
+
- Context generation fails
|
|
230
|
+
- Git hooks not firing
|
|
193
231
|
|
|
194
232
|
---
|
|
195
233
|
|
|
196
|
-
### `
|
|
234
|
+
### `status` - Auto-Update Status
|
|
197
235
|
|
|
198
|
-
|
|
236
|
+
View status of background context updates.
|
|
199
237
|
|
|
200
|
-
**Usage:**
|
|
201
238
|
```bash
|
|
202
|
-
agentbrain
|
|
239
|
+
agentbrain status [options]
|
|
203
240
|
```
|
|
204
241
|
|
|
205
242
|
**Options:**
|
|
206
|
-
- `--
|
|
243
|
+
- `--path <path>` - Repository path
|
|
207
244
|
|
|
208
|
-
**
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
245
|
+
**Shows:**
|
|
246
|
+
- Recent update history from `.agentbrain/update.log`
|
|
247
|
+
- Success/failure status
|
|
248
|
+
- Update duration
|
|
249
|
+
- Git hash for each update
|
|
250
|
+
|
|
251
|
+
---
|
|
212
252
|
|
|
213
|
-
|
|
214
|
-
|
|
253
|
+
### `standards` - Generate Coding Standards
|
|
254
|
+
|
|
255
|
+
Generate coding standards documentation based on your codebase patterns.
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
agentbrain standards [options]
|
|
215
259
|
```
|
|
216
260
|
|
|
217
|
-
**
|
|
218
|
-
-
|
|
219
|
-
|
|
261
|
+
**Options:**
|
|
262
|
+
- `--path <path>` - Repository path
|
|
263
|
+
|
|
264
|
+
**Creates:** `.agentbrain/standards.md`
|
|
220
265
|
|
|
221
|
-
|
|
266
|
+
**Cost:** ~$0.01-0.02 per generation
|
|
222
267
|
|
|
223
268
|
---
|
|
224
269
|
|
|
225
|
-
### `
|
|
270
|
+
### `handoff` - Generate Session Handoff
|
|
226
271
|
|
|
227
|
-
|
|
272
|
+
Generate session handoff document with recent changes and context.
|
|
228
273
|
|
|
229
|
-
**Usage:**
|
|
230
274
|
```bash
|
|
231
|
-
agentbrain
|
|
275
|
+
agentbrain handoff [options]
|
|
232
276
|
```
|
|
233
277
|
|
|
234
278
|
**Options:**
|
|
235
|
-
- `--
|
|
236
|
-
- `--
|
|
237
|
-
- `--
|
|
238
|
-
- `--full` - Complete uninstall (removes everything)
|
|
239
|
-
- `--yes` - Skip confirmation prompts
|
|
279
|
+
- `--path <path>` - Repository path
|
|
280
|
+
- `--goal <goal>` - Session goal (optional)
|
|
281
|
+
- `--commits <n>` - Number of recent commits (default: 5)
|
|
240
282
|
|
|
241
|
-
**
|
|
242
|
-
If you run `agentbrain disable` without options, you'll be prompted to select what to remove.
|
|
283
|
+
**Creates:** `.agentbrain/handoff.md`
|
|
243
284
|
|
|
244
|
-
**
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
285
|
+
**Includes:**
|
|
286
|
+
- Recent changes summary
|
|
287
|
+
- Session context
|
|
288
|
+
- Next steps recommendations
|
|
289
|
+
- ⚠ Doom loop warning (if detected)
|
|
248
290
|
|
|
249
|
-
|
|
250
|
-
|
|
291
|
+
**Cost:** ~$0.01-0.02 per generation
|
|
292
|
+
|
|
293
|
+
---
|
|
294
|
+
|
|
295
|
+
### `config` - Configure API Settings
|
|
251
296
|
|
|
252
|
-
|
|
253
|
-
agentbrain disable --remove-files
|
|
297
|
+
Configure AI provider API keys and settings.
|
|
254
298
|
|
|
255
|
-
|
|
256
|
-
agentbrain
|
|
299
|
+
```bash
|
|
300
|
+
agentbrain config
|
|
257
301
|
```
|
|
258
302
|
|
|
259
|
-
**
|
|
260
|
-
|
|
303
|
+
**Interactive setup for:**
|
|
304
|
+
- Provider selection (OpenAI, Anthropic, or both)
|
|
305
|
+
- API key configuration
|
|
306
|
+
- Model selection
|
|
261
307
|
|
|
262
|
-
|
|
308
|
+
**Supports:**
|
|
309
|
+
- OpenAI (GPT-4, GPT-4 Turbo)
|
|
310
|
+
- Anthropic (Claude 3.5 Sonnet, Claude 3 Opus)
|
|
263
311
|
|
|
264
|
-
|
|
312
|
+
---
|
|
265
313
|
|
|
266
|
-
|
|
314
|
+
### `disable` - Disable AgentBrain
|
|
267
315
|
|
|
268
|
-
|
|
316
|
+
Disable AgentBrain features in your repository.
|
|
269
317
|
|
|
270
318
|
```bash
|
|
271
|
-
|
|
272
|
-
export ANTHROPIC_API_KEY="sk-ant-..."
|
|
273
|
-
|
|
274
|
-
# OpenAI
|
|
275
|
-
export OPENAI_API_KEY="sk-..."
|
|
319
|
+
agentbrain disable [options]
|
|
276
320
|
```
|
|
277
321
|
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
322
|
+
**Options:**
|
|
323
|
+
- `--path <path>` - Repository path
|
|
324
|
+
- `--remove-hooks` - Remove git hooks
|
|
325
|
+
- `--remove-agent-files` - Remove agent file modifications
|
|
281
326
|
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
EOF
|
|
287
|
-
```
|
|
327
|
+
**Use when:**
|
|
328
|
+
- Temporarily disabling automation
|
|
329
|
+
- Troubleshooting issues
|
|
330
|
+
- Removing AgentBrain from project
|
|
288
331
|
|
|
289
|
-
|
|
290
|
-
- `.env.local` in current directory
|
|
291
|
-
- `.env` in current directory
|
|
292
|
-
- `.env.local` in git repository root
|
|
293
|
-
- `.env` in git repository root
|
|
332
|
+
**Note:** Does not delete `.agentbrain/` directory or context files.
|
|
294
333
|
|
|
295
|
-
|
|
334
|
+
---
|
|
296
335
|
|
|
297
|
-
|
|
336
|
+
## MCP Integration
|
|
298
337
|
|
|
299
|
-
|
|
338
|
+
AgentBrain provides a Model Context Protocol (MCP) server that enables AI agents to access repository intelligence directly.
|
|
300
339
|
|
|
340
|
+
**Install MCP Server:**
|
|
301
341
|
```bash
|
|
302
|
-
agentbrain
|
|
342
|
+
npm install -g @agentbrain/mcp-server
|
|
303
343
|
```
|
|
304
344
|
|
|
305
|
-
|
|
345
|
+
**See:** [@agentbrain/mcp-server](https://www.npmjs.com/package/@agentbrain/mcp-server) for setup instructions.
|
|
346
|
+
|
|
347
|
+
**MCP Tools Include Doom Warnings:**
|
|
348
|
+
- `load_context` - Returns `doom_warning` field if loop detected
|
|
349
|
+
- `load_spec` - Returns `doom_warning` field if loop detected
|
|
350
|
+
- `save_handoff` - Appends doom section to handoff document
|
|
306
351
|
|
|
307
352
|
---
|
|
308
353
|
|
|
309
|
-
##
|
|
354
|
+
## Troubleshooting
|
|
310
355
|
|
|
311
|
-
|
|
312
|
-
2. ✅ `.env.local` in current directory
|
|
313
|
-
3. ✅ `.env` in current directory
|
|
314
|
-
4. ✅ `.env.local` in git root
|
|
315
|
-
5. ✅ `.env` in git root
|
|
316
|
-
6. ✅ `~/.agentbrain/config.json`
|
|
356
|
+
### Context Not Regenerating on Commits
|
|
317
357
|
|
|
318
|
-
|
|
358
|
+
**Check git hooks:**
|
|
359
|
+
```bash
|
|
360
|
+
agentbrain doctor
|
|
361
|
+
```
|
|
319
362
|
|
|
320
|
-
|
|
363
|
+
**Verify hook is installed:**
|
|
364
|
+
```bash
|
|
365
|
+
cat .git/hooks/post-commit
|
|
366
|
+
# or for Husky:
|
|
367
|
+
cat .husky/post-commit
|
|
368
|
+
```
|
|
321
369
|
|
|
322
|
-
|
|
370
|
+
**Reinstall hooks:**
|
|
371
|
+
```bash
|
|
372
|
+
agentbrain disable --remove-hooks
|
|
373
|
+
agentbrain setup
|
|
374
|
+
```
|
|
323
375
|
|
|
324
|
-
|
|
376
|
+
---
|
|
325
377
|
|
|
326
|
-
###
|
|
378
|
+
### Hook Errors After Commits
|
|
327
379
|
|
|
328
|
-
|
|
380
|
+
**Check update log:**
|
|
381
|
+
```bash
|
|
382
|
+
cat .agentbrain/update.log
|
|
383
|
+
```
|
|
329
384
|
|
|
330
|
-
|
|
385
|
+
**Common issues:**
|
|
386
|
+
- API key not configured: Run `agentbrain config`
|
|
387
|
+
- Permission errors: Check file permissions on `.agentbrain/`
|
|
388
|
+
- Path issues: Hook uses fallback paths to find `agentbrain` binary
|
|
331
389
|
|
|
332
|
-
|
|
390
|
+
---
|
|
333
391
|
|
|
334
|
-
###
|
|
392
|
+
### Context Feels Stale
|
|
335
393
|
|
|
336
|
-
|
|
337
|
-
```
|
|
338
|
-
|
|
339
|
-
@agentbrain/context.md
|
|
340
|
-
@agentbrain/dependency-map.md
|
|
341
|
-
@agentbrain/patterns.md
|
|
394
|
+
**Force regeneration:**
|
|
395
|
+
```bash
|
|
396
|
+
agentbrain init --no-confirm
|
|
342
397
|
```
|
|
343
398
|
|
|
344
|
-
|
|
399
|
+
**Check cache:**
|
|
400
|
+
Cache is tied to git hash. If you haven't committed changes, old cache is used.
|
|
345
401
|
|
|
346
|
-
|
|
402
|
+
---
|
|
347
403
|
|
|
348
|
-
|
|
349
|
-
|-----------|--------|-----------|--------|
|
|
350
|
-
| Init (small) | 10-20K | $0.02-0.05 | $0.02-0.04 |
|
|
351
|
-
| Init (medium) | 30-50K | $0.08-0.15 | $0.07-0.12 |
|
|
352
|
-
| Standards | 5-8K | $0.01-0.02 | $0.01-0.02 |
|
|
353
|
-
| Handoff | 3-5K | $0.01 | $0.01 |
|
|
354
|
-
| **Cached repeat** | 0 | **$0.00** | **$0.00** |
|
|
404
|
+
### Doom Loop False Positives
|
|
355
405
|
|
|
356
|
-
**
|
|
406
|
+
**Adjust sensitivity:**
|
|
407
|
+
```bash
|
|
408
|
+
# Check last 15 commits, flag if file appears 6+ times
|
|
409
|
+
agentbrain doom --commits 15 --threshold 6
|
|
410
|
+
```
|
|
357
411
|
|
|
358
|
-
|
|
412
|
+
**Excluded patterns:**
|
|
413
|
+
- Lock files (package-lock.json, etc.)
|
|
414
|
+
- AgentBrain files (CLAUDE.md, .cursorrules, etc.)
|
|
415
|
+
- Markdown files
|
|
359
416
|
|
|
360
|
-
|
|
417
|
+
---
|
|
361
418
|
|
|
362
|
-
|
|
363
|
-
# 1. One-time setup (do once per repo)
|
|
364
|
-
cd /path/to/project
|
|
365
|
-
agentbrain setup
|
|
419
|
+
### API Costs Too High
|
|
366
420
|
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
421
|
+
**Smart regeneration already optimized:**
|
|
422
|
+
- Only regenerates on source file changes
|
|
423
|
+
- Skips docs/config updates
|
|
424
|
+
- Caches by git hash
|
|
371
425
|
|
|
372
|
-
|
|
373
|
-
|
|
426
|
+
**Further reduce costs:**
|
|
427
|
+
- Use `--skip-hooks` during development sprints
|
|
428
|
+
- Manually regenerate only when needed: `agentbrain init`
|
|
429
|
+
- Disable temporarily: `agentbrain disable`
|
|
374
430
|
|
|
375
|
-
|
|
376
|
-
```
|
|
431
|
+
---
|
|
377
432
|
|
|
378
|
-
###
|
|
433
|
+
### Husky Compatibility
|
|
379
434
|
|
|
380
|
-
|
|
381
|
-
# 1. Initial setup
|
|
382
|
-
cd /path/to/project
|
|
383
|
-
agentbrain config
|
|
435
|
+
AgentBrain detects and supports Husky automatically.
|
|
384
436
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
agentbrain init # Actually generate
|
|
437
|
+
**Husky v9+ (recommended):**
|
|
438
|
+
Hook installs directly to `.husky/post-commit`
|
|
388
439
|
|
|
389
|
-
|
|
390
|
-
|
|
440
|
+
**Custom hook paths:**
|
|
441
|
+
Detects `git config core.hooksPath` and installs there
|
|
391
442
|
|
|
392
|
-
|
|
393
|
-
# ... make changes ...
|
|
394
|
-
agentbrain handoff --goal "Add authentication feature"
|
|
443
|
+
**No conflicts:** AgentBrain hook runs alongside existing hooks
|
|
395
444
|
|
|
396
|
-
|
|
397
|
-
agentbrain init # Only costs money if git hash changed
|
|
398
|
-
```
|
|
445
|
+
---
|
|
399
446
|
|
|
400
|
-
##
|
|
447
|
+
## Files & Directories
|
|
401
448
|
|
|
402
|
-
###
|
|
449
|
+
### Generated Files
|
|
403
450
|
|
|
404
|
-
Set your API key:
|
|
405
|
-
```bash
|
|
406
|
-
agentbrain config
|
|
407
|
-
# or
|
|
408
|
-
export ANTHROPIC_API_KEY="sk-ant-..."
|
|
409
451
|
```
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
452
|
+
.agentbrain/
|
|
453
|
+
├── context.md # Full repository intelligence
|
|
454
|
+
├── dependency-map.md # Service relationships
|
|
455
|
+
├── patterns.md # Coding patterns
|
|
456
|
+
├── standards.md # Coding standards (optional)
|
|
457
|
+
├── handoff.md # Session handoff (optional)
|
|
458
|
+
├── update.log # Auto-update history
|
|
459
|
+
└── specs/ # Task specifications
|
|
460
|
+
└── <task-slug>.md
|
|
416
461
|
```
|
|
417
462
|
|
|
418
|
-
###
|
|
463
|
+
### Agent Files (Modified)
|
|
419
464
|
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
npm config set prefix '~/.npm-global'
|
|
424
|
-
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
|
|
425
|
-
source ~/.bashrc
|
|
426
|
-
```
|
|
465
|
+
- `CLAUDE.md` - Claude Code loading instructions
|
|
466
|
+
- `.cursorrules` - Cursor loading instructions
|
|
467
|
+
- `.windsurfrules` - Windsurf loading instructions
|
|
427
468
|
|
|
428
|
-
|
|
469
|
+
### Git Hooks
|
|
429
470
|
|
|
430
|
-
|
|
471
|
+
- `.git/hooks/post-commit` - Standard installation
|
|
472
|
+
- `.husky/post-commit` - Husky installation
|
|
431
473
|
|
|
432
|
-
|
|
433
|
-
for project in ~/projects/*; do
|
|
434
|
-
echo "Processing $project..."
|
|
435
|
-
agentbrain init --path "$project"
|
|
436
|
-
done
|
|
437
|
-
```
|
|
474
|
+
---
|
|
438
475
|
|
|
439
|
-
|
|
476
|
+
## Best Practices
|
|
440
477
|
|
|
441
|
-
|
|
442
|
-
# In CI pipeline
|
|
443
|
-
export ANTHROPIC_API_KEY="${ANTHROPIC_KEY}"
|
|
444
|
-
agentbrain init --path . --no-cache
|
|
445
|
-
# Commit generated docs to repo
|
|
446
|
-
git add agentbrain/
|
|
447
|
-
git commit -m "Update context docs"
|
|
448
|
-
```
|
|
478
|
+
### When to Use AgentBrain
|
|
449
479
|
|
|
450
|
-
|
|
480
|
+
✅ **Good for:**
|
|
481
|
+
- Active development with AI assistants
|
|
482
|
+
- Onboarding new developers
|
|
483
|
+
- Complex codebases with multiple services
|
|
484
|
+
- Keeping AI agents in sync with changes
|
|
451
485
|
|
|
452
|
-
|
|
486
|
+
❌ **Skip if:**
|
|
487
|
+
- Early prototyping (context not stable yet)
|
|
488
|
+
- API costs are a major concern
|
|
489
|
+
- Repository is < 10 files
|
|
453
490
|
|
|
454
|
-
|
|
455
|
-
# For large repos, limit files
|
|
456
|
-
agentbrain init --max-files 50
|
|
491
|
+
### Workflow Tips
|
|
457
492
|
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
493
|
+
1. **Initial setup:** Run `agentbrain setup` once
|
|
494
|
+
2. **Let automation work:** Commits regenerate context automatically
|
|
495
|
+
3. **Check doom warnings:** If shown, investigate before continuing
|
|
496
|
+
4. **Use specs:** Plan complex tasks with `agentbrain spec`
|
|
497
|
+
5. **Handoff cleanly:** Generate handoff at session end
|
|
461
498
|
|
|
462
|
-
###
|
|
499
|
+
### Cost Management
|
|
463
500
|
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
501
|
+
- Initial setup: ~$0.02-0.05
|
|
502
|
+
- Auto-regeneration: ~$0.02-0.05 per commit (only on source changes)
|
|
503
|
+
- Specs: ~$0.01-0.03 each
|
|
504
|
+
- **Expected monthly cost:** $1-5 for typical projects
|
|
468
505
|
|
|
469
|
-
|
|
506
|
+
---
|
|
470
507
|
|
|
471
|
-
|
|
472
|
-
- [@agentbrain/mcp-server](../mcp-server) - MCP server for agents
|
|
508
|
+
## Links
|
|
473
509
|
|
|
474
|
-
|
|
510
|
+
- **npm:** https://www.npmjs.com/package/@agentbrain/cli
|
|
511
|
+
- **GitHub:** https://github.com/benmalcom/agentbrain
|
|
512
|
+
- **MCP Server:** https://www.npmjs.com/package/@agentbrain/mcp-server
|
|
513
|
+
- **Core Library:** https://www.npmjs.com/package/@agentbrain/core
|
|
475
514
|
|
|
476
|
-
|
|
477
|
-
- Documentation: [Full docs](https://github.com/benmalcom/agentbrain)
|
|
515
|
+
---
|
|
478
516
|
|
|
479
517
|
## License
|
|
480
518
|
|
|
481
|
-
MIT
|
|
519
|
+
MIT © AgentBrain
|
package/dist/commands/disable.js
CHANGED
|
@@ -29,7 +29,7 @@ export function createDisableCommand() {
|
|
|
29
29
|
message: 'What would you like to remove?',
|
|
30
30
|
choices: [
|
|
31
31
|
{ name: 'Git hooks (post-commit auto-regeneration)', value: 'hooks', checked: true },
|
|
32
|
-
{ name: 'Generated context files (agentbrain/ directory)', value: 'files' },
|
|
32
|
+
{ name: 'Generated context files (.agentbrain/ directory)', value: 'files' },
|
|
33
33
|
{ name: 'Agent config files (CLAUDE.md, .cursorrules, etc.)', value: 'agent-files' },
|
|
34
34
|
],
|
|
35
35
|
},
|
|
@@ -48,7 +48,7 @@ export function createDisableCommand() {
|
|
|
48
48
|
if (removeHooks)
|
|
49
49
|
summary.push('• Remove git hooks');
|
|
50
50
|
if (removeFiles)
|
|
51
|
-
summary.push('• Delete agentbrain/ directory');
|
|
51
|
+
summary.push('• Delete .agentbrain/ directory');
|
|
52
52
|
if (removeAgentFiles)
|
|
53
53
|
summary.push('• Delete agent config files');
|
|
54
54
|
console.log(chalk.yellow('\nThis will:'));
|
|
@@ -84,18 +84,18 @@ export function createDisableCommand() {
|
|
|
84
84
|
}
|
|
85
85
|
// Remove generated files
|
|
86
86
|
if (removeFiles) {
|
|
87
|
-
const agentbrainDir = join(repoPath, 'agentbrain');
|
|
87
|
+
const agentbrainDir = join(repoPath, '.agentbrain');
|
|
88
88
|
if (existsSync(agentbrainDir)) {
|
|
89
89
|
try {
|
|
90
90
|
await rm(agentbrainDir, { recursive: true, force: true });
|
|
91
|
-
console.log(chalk.green('✓ Removed agentbrain/ directory'));
|
|
91
|
+
console.log(chalk.green('✓ Removed .agentbrain/ directory'));
|
|
92
92
|
}
|
|
93
93
|
catch (error) {
|
|
94
|
-
console.error(chalk.red(`✗ Failed to remove agentbrain/: ${error instanceof Error ? error.message : String(error)}`));
|
|
94
|
+
console.error(chalk.red(`✗ Failed to remove .agentbrain/: ${error instanceof Error ? error.message : String(error)}`));
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
97
|
else {
|
|
98
|
-
console.log(chalk.gray(' No agentbrain/ directory found'));
|
|
98
|
+
console.log(chalk.gray(' No .agentbrain/ directory found'));
|
|
99
99
|
}
|
|
100
100
|
}
|
|
101
101
|
// Remove agent files
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"disable.js","sourceRoot":"","sources":["../../src/commands/disable.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAE/B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,QAAQ,MAAM,UAAU,CAAA;AAC/B,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAoB,MAAM,kBAAkB,CAAA;AAExF,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;SACnC,WAAW,CAAC,sDAAsD,CAAC;SACnE,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;SACjD,MAAM,CAAC,gBAAgB,EAAE,qCAAqC,CAAC;SAC/D,MAAM,CAAC,sBAAsB,EAAE,2DAA2D,CAAC;SAC3F,MAAM,CAAC,QAAQ,EAAE,yCAAyC,CAAC;SAC3D,MAAM,CAAC,OAAO,EAAE,2BAA2B,CAAC;SAC5C,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QAE9B,6CAA6C;QAC7C,IAAI,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAA;QACrD,IAAI,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,IAAI,CAAA;QACrD,IAAI,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAA;QAE/D,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/F,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,CAAA;YAE9D,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;gBACpC;oBACE,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE,gCAAgC;oBACzC,OAAO,EAAE;wBACP,EAAE,IAAI,EAAE,2CAA2C,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE;wBACpF,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"disable.js","sourceRoot":"","sources":["../../src/commands/disable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doom.d.ts","sourceRoot":"","sources":["../../src/commands/doom.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,wBAAgB,iBAAiB,IAAI,OAAO,CAoE3C"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
// agentbrain doom - detect doom loops in git history
|
|
2
|
+
import { Command } from 'commander';
|
|
3
|
+
import chalk from 'chalk';
|
|
4
|
+
import { analyzeDoomLoop } from '@agentbrain/core';
|
|
5
|
+
export function createDoomCommand() {
|
|
6
|
+
const doom = new Command('doom')
|
|
7
|
+
.description('Detect doom loops - files modified repeatedly in recent commits')
|
|
8
|
+
.option('--path <path>', 'Repository path', process.cwd())
|
|
9
|
+
.option('--commits <number>', 'Number of commits to analyze', '10')
|
|
10
|
+
.option('--threshold <number>', 'Threshold for doom loop detection', '4')
|
|
11
|
+
.option('--json', 'Output results as JSON')
|
|
12
|
+
.action(async (options) => {
|
|
13
|
+
const { path, commits, threshold, json } = options;
|
|
14
|
+
if (!json) {
|
|
15
|
+
console.log(chalk.blue.bold('\n🧠 AgentBrain\n'));
|
|
16
|
+
}
|
|
17
|
+
try {
|
|
18
|
+
const result = await analyzeDoomLoop(path, parseInt(commits), parseInt(threshold));
|
|
19
|
+
// JSON output mode
|
|
20
|
+
if (json) {
|
|
21
|
+
console.log(JSON.stringify(result, null, 2));
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
// Human-readable output mode
|
|
25
|
+
if (result.detected) {
|
|
26
|
+
console.log(chalk.yellow.bold('⚠ Possible doom loop detected\n'));
|
|
27
|
+
console.log(`These files were modified ${threshold}+ times in the last ${result.commitsAnalyzed} commits:\n`);
|
|
28
|
+
for (const file of result.files) {
|
|
29
|
+
console.log(chalk.red(` ${file.path}`) +
|
|
30
|
+
chalk.gray(` (${file.commitCount} times - ${file.percentage}%)`));
|
|
31
|
+
}
|
|
32
|
+
console.log(chalk.yellow('\nSuggestions:'));
|
|
33
|
+
console.log(chalk.gray(' → Stop coding. Investigate root cause first.'));
|
|
34
|
+
console.log(chalk.gray(' → Run: agentbrain spec "fix [problem description]"'));
|
|
35
|
+
console.log(chalk.gray(' → Consider: revert to last working state and start fresh'));
|
|
36
|
+
console.log('');
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
console.log(chalk.green('✓ No doom loop detected'));
|
|
40
|
+
console.log(chalk.gray(`ℹ Analyzed last ${result.commitsAnalyzed} commits — all files look healthy\n`));
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
if (json) {
|
|
45
|
+
console.error(JSON.stringify({ error: error instanceof Error ? error.message : 'Unknown error' }));
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
if (error instanceof Error) {
|
|
49
|
+
if (error.message.includes('Not a git repository')) {
|
|
50
|
+
console.error(chalk.red('✗ Error: Not a git repository'));
|
|
51
|
+
console.error(chalk.gray('Run this command from a git repository\n'));
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
console.error(chalk.red('✗ Error:'), error.message, '\n');
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
process.exit(1);
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
return doom;
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=doom.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doom.js","sourceRoot":"","sources":["../../src/commands/doom.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/handoff.js
CHANGED
|
@@ -66,7 +66,7 @@ async function runHandoff(options) {
|
|
|
66
66
|
spin?.succeed('Handoff generation complete!');
|
|
67
67
|
}
|
|
68
68
|
// Write to disk
|
|
69
|
-
const outputDir = join(repoPath, 'agentbrain');
|
|
69
|
+
const outputDir = join(repoPath, '.agentbrain');
|
|
70
70
|
if (!existsSync(outputDir)) {
|
|
71
71
|
await mkdir(outputDir, { recursive: true });
|
|
72
72
|
}
|
|
@@ -74,7 +74,7 @@ async function runHandoff(options) {
|
|
|
74
74
|
await writeFile(filePath, result.doc.content, 'utf-8');
|
|
75
75
|
if (!auto) {
|
|
76
76
|
displayGeneratedFiles([
|
|
77
|
-
{ name: 'agentbrain/handoff.md', description: 'Session handoff document' },
|
|
77
|
+
{ name: '.agentbrain/handoff.md', description: 'Session handoff document' },
|
|
78
78
|
]);
|
|
79
79
|
if (result.tokenCount > 0) {
|
|
80
80
|
const cost = aiConfig.provider === 'anthropic' ? (result.tokenCount / 1_000_000) * 3.0 : (result.tokenCount / 1_000_000) * 2.5;
|
|
@@ -85,7 +85,7 @@ async function runHandoff(options) {
|
|
|
85
85
|
}
|
|
86
86
|
success('Handoff document generated!');
|
|
87
87
|
console.log('\n📌 Next steps:\n');
|
|
88
|
-
console.log(' • Share agentbrain/handoff.md with the next developer or session');
|
|
88
|
+
console.log(' • Share .agentbrain/handoff.md with the next developer or session');
|
|
89
89
|
console.log(' • Reference it at the start of your next session for context');
|
|
90
90
|
console.log();
|
|
91
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/commands/handoff.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../src/commands/handoff.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/init.js
CHANGED
|
@@ -107,7 +107,7 @@ async function runInit(options) {
|
|
|
107
107
|
genSpin?.succeed('Context generation complete!');
|
|
108
108
|
}
|
|
109
109
|
// Write files to disk
|
|
110
|
-
const outputDir = join(repoPath, 'agentbrain');
|
|
110
|
+
const outputDir = join(repoPath, '.agentbrain');
|
|
111
111
|
if (!existsSync(outputDir)) {
|
|
112
112
|
await mkdir(outputDir, { recursive: true });
|
|
113
113
|
}
|
|
@@ -139,9 +139,9 @@ async function runInit(options) {
|
|
|
139
139
|
// Display summary
|
|
140
140
|
if (!silent) {
|
|
141
141
|
displayGeneratedFiles([
|
|
142
|
-
{ name: 'agentbrain/context.md', description: 'Full repo intelligence' },
|
|
143
|
-
{ name: 'agentbrain/dependency-map.md', description: 'Service relationships' },
|
|
144
|
-
{ name: 'agentbrain/patterns.md', description: 'Coding patterns' },
|
|
142
|
+
{ name: '.agentbrain/context.md', description: 'Full repo intelligence' },
|
|
143
|
+
{ name: '.agentbrain/dependency-map.md', description: 'Service relationships' },
|
|
144
|
+
{ name: '.agentbrain/patterns.md', description: 'Coding patterns' },
|
|
145
145
|
]);
|
|
146
146
|
displayActualCost(result.totalTokens, result.cost);
|
|
147
147
|
const nextSteps = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,uCAAuC;AAEvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EACL,YAAY,EACZ,eAAe,EACf,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,GACjB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EACL,aAAa,EACb,OAAO,EACP,KAAK,EACL,IAAI,EACJ,OAAO,EACP,gBAAgB,EAChB,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,eAAe,CAAA;AAEtB,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,MAAM,CAAC;SAC5B,WAAW,CAAC,oDAAoD,CAAC;SACjE,MAAM,CAAC,eAAe,EAAE,iBAAiB,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;SACzD,MAAM,CAAC,sBAAsB,EAAE,0BAA0B,EAAE,KAAK,CAAC;SACjE,MAAM,CAAC,YAAY,EAAE,2BAA2B,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,iDAAiD,CAAC;SAC1E,MAAM,CAAC,WAAW,EAAE,0DAA0D,CAAC;SAC/E,MAAM,CAAC,UAAU,EAAE,iCAAiC,CAAC;SACrD,MAAM,CAAC,cAAc,EAAE,2BAA2B,CAAC;SACnD,MAAM,CAAC,aAAa,EAAE,2BAA2B,CAAC;SAClD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;QACxB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpB,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAA;YACrE,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CAAC,CAAA;IAEJ,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,OAStB;IACC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAE7B,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,aAAa,EAAE,CAAA;IACjB,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAA;IAC9B,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;IACrC,MAAM,WAAW,GAAG,CAAC,OAAO,CAAC,OAAO,CAAA;IACpC,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,CAAA;IAElC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,IAAI,CAAC,eAAe,QAAQ,EAAE,CAAC,CAAA;IACjC,CAAC;IAED,iBAAiB;IACjB,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE,CAAA;IAErC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC;IAED,kBAAkB;IAClB,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAA;IAC9D,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IAE/D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,IAAI,EAAE,OAAO,CAAC,SAAS,UAAU,CAAC,UAAU,oBAAoB,UAAU,CAAC,aAAa,CAAC,MAAM,iBAAiB,CAAC,CAAA;QACjH,OAAO,CAAC,GAAG,EAAE,CAAA;QACb,gBAAgB,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAA;IAC/C,CAAC;IAED,gBAAgB;IAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAC5B,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAExE,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,uCAAuC,CAAC,CAAA;QAC/C,CAAC;QACD,OAAM;IACR,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC;YAC9B,OAAO,EAAE,wBAAwB;YACjC,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,IAAI,CAAC,WAAW,CAAC,CAAA;YACnB,CAAC;YACD,OAAM;QACR,CAAC;IACH,CAAC;IAED,mBAAmB;IACnB,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,iCAAiC,CAAC,CAAA;IAC1E,IAAI,YAAY,GAAG,EAAE,CAAA;IAErB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC;QACnC,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,QAAQ;QACR,UAAU;QACV,UAAU,EAAE,CAAC,GAAG,EAAE,EAAE;YAClB,IAAI,CAAC,MAAM,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;gBACpC,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CAAC,IAAI,GAAG,GAAG,CAAA;gBACpB,CAAC;gBACD,YAAY,GAAG,GAAG,CAAA;YACpB,CAAC;QACH,CAAC;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,OAAO,CAAC,8BAA8B,CAAC,CAAA;IAClD,CAAC;IAED,sBAAsB;IACtB,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;IAC/C,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,IAAI,KAAK,CAAA;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC1C,MAAM,SAAS,CAAC,QAAQ,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IACjD,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAA;QAErC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,CAAA;YAClC,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAErE,IAAI,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,OAAO,CAAC,GAAG,EAAE,CAAA;gBACb,IAAI,CAAC,wDAAwD,CAAC,CAAA;gBAC9D,KAAK,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,gBAAgB,EAAE,CAAC;oBAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;oBACpE,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,EAAE,CAAA;YACb,IAAI,CAAC,uGAAuG,CAAC,CAAA;QAC/G,CAAC;IACH,CAAC;IAED,kBAAkB;IAClB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,qBAAqB,CAAC;YACpB,EAAE,IAAI,EAAE,wBAAwB,EAAE,WAAW,EAAE,wBAAwB,EAAE;YACzE,EAAE,IAAI,EAAE,+BAA+B,EAAE,WAAW,EAAE,uBAAuB,EAAE;YAC/E,EAAE,IAAI,EAAE,yBAAyB,EAAE,WAAW,EAAE,iBAAiB,EAAE;SACpE,CAAC,CAAA;QAEF,iBAAiB,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAElD,MAAM,SAAS,GAAa,EAAE,CAAA;QAE9B,0DAA0D;QAC1D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;QAC/D,IAAI,OAAO,GAAG,KAAK,CAAA;QACnB,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;gBACjD,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,SAAS,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;QAChF,CAAC;QAED,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,SAAS,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAA;QACrF,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,gBAAgB,CAAC,SAAS,CAAC,CAAA;QAC7B,CAAC;QAED,OAAO,CAAC,qCAAqC,CAAC,CAAA;IAChD,CAAC;AACH,CAAC"}
|
package/dist/commands/setup.js
CHANGED
|
@@ -99,7 +99,7 @@ async function runSetup(options) {
|
|
|
99
99
|
});
|
|
100
100
|
spin.succeed('Context generated!');
|
|
101
101
|
// Write files
|
|
102
|
-
const outputDir = join(repoPath, 'agentbrain');
|
|
102
|
+
const outputDir = join(repoPath, '.agentbrain');
|
|
103
103
|
if (!existsSync(outputDir)) {
|
|
104
104
|
await mkdir(outputDir, { recursive: true });
|
|
105
105
|
}
|
|
@@ -150,9 +150,9 @@ async function runSetup(options) {
|
|
|
150
150
|
// Summary
|
|
151
151
|
console.log();
|
|
152
152
|
displayGeneratedFiles([
|
|
153
|
-
{ name: 'agentbrain/context.md', description: 'Full repo intelligence' },
|
|
154
|
-
{ name: 'agentbrain/dependency-map.md', description: 'Service relationships' },
|
|
155
|
-
{ name: 'agentbrain/patterns.md', description: 'Coding patterns' },
|
|
153
|
+
{ name: '.agentbrain/context.md', description: 'Full repo intelligence' },
|
|
154
|
+
{ name: '.agentbrain/dependency-map.md', description: 'Service relationships' },
|
|
155
|
+
{ name: '.agentbrain/patterns.md', description: 'Coding patterns' },
|
|
156
156
|
]);
|
|
157
157
|
displayActualCost(result.totalTokens, result.cost);
|
|
158
158
|
console.log();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
// AgentBrain CLI entry point
|
|
3
3
|
import { Command } from 'commander';
|
|
4
|
+
import { checkPendingDoomWarning } from '@agentbrain/core';
|
|
4
5
|
import { createConfigCommand } from './commands/config.js';
|
|
5
6
|
import { createInitCommand } from './commands/init.js';
|
|
6
7
|
import { createStandardsCommand } from './commands/standards.js';
|
|
@@ -10,11 +11,25 @@ import { createDisableCommand } from './commands/disable.js';
|
|
|
10
11
|
import { createDoctorCommand } from './commands/doctor.js';
|
|
11
12
|
import { createStatusCommand } from './commands/status.js';
|
|
12
13
|
import { createSpecCommand } from './commands/spec.js';
|
|
14
|
+
import { createDoomCommand } from './commands/doom.js';
|
|
13
15
|
const program = new Command();
|
|
14
16
|
program
|
|
15
17
|
.name('agentbrain')
|
|
16
18
|
.description('Generate smart context docs for coding agents')
|
|
17
|
-
.version('1.4.
|
|
19
|
+
.version('1.4.33')
|
|
20
|
+
.hook('preAction', async () => {
|
|
21
|
+
// Check for pending doom warnings before every command
|
|
22
|
+
try {
|
|
23
|
+
const warning = await checkPendingDoomWarning(process.cwd());
|
|
24
|
+
if (warning) {
|
|
25
|
+
// Write to stderr so it doesn't interfere with command output
|
|
26
|
+
console.error('\n' + warning);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
// Silently ignore errors (e.g., not in a git repo)
|
|
31
|
+
}
|
|
32
|
+
});
|
|
18
33
|
// Add commands
|
|
19
34
|
program.addCommand(createSetupCommand());
|
|
20
35
|
program.addCommand(createInitCommand());
|
|
@@ -23,6 +38,7 @@ program.addCommand(createStandardsCommand());
|
|
|
23
38
|
program.addCommand(createHandoffCommand());
|
|
24
39
|
program.addCommand(createDoctorCommand());
|
|
25
40
|
program.addCommand(createStatusCommand());
|
|
41
|
+
program.addCommand(createDoomCommand());
|
|
26
42
|
program.addCommand(createConfigCommand());
|
|
27
43
|
program.addCommand(createDisableCommand());
|
|
28
44
|
// Parse arguments
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,6BAA6B;AAE7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAEtD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,OAAO,CAAC,QAAQ,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,6BAA6B;AAE7B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAEtD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,OAAO,CAAC,QAAQ,CAAC;KACjB,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,EAAE;IAC5B,uDAAuD;IACvD,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,uBAAuB,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;QAC5D,IAAI,OAAO,EAAE,CAAC;YACZ,8DAA8D;YAC9D,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,OAAO,CAAC,CAAA;QAC/B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,eAAe;AACf,OAAO,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC,CAAA;AACxC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACvC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACvC,OAAO,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC,CAAA;AAC5C,OAAO,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAA;AAC1C,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AACzC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AACzC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAA;AACvC,OAAO,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAAA;AACzC,OAAO,CAAC,UAAU,CAAC,oBAAoB,EAAE,CAAC,CAAA;AAE1C,kBAAkB;AAClB,OAAO,CAAC,KAAK,EAAE,CAAA;AACf,aAAa"}
|