autonomous-flow-daemon 1.1.0 → 1.6.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 +39 -0
- package/README.ko.md +124 -164
- package/README.md +99 -170
- package/package.json +11 -5
- package/src/adapters/index.ts +246 -35
- package/src/cli.ts +71 -1
- package/src/commands/benchmark.ts +187 -0
- package/src/commands/diagnose.ts +56 -14
- package/src/commands/doctor.ts +243 -0
- package/src/commands/evolution.ts +107 -0
- package/src/commands/fix.ts +22 -2
- package/src/commands/hooks.ts +136 -0
- package/src/commands/mcp.ts +129 -0
- package/src/commands/restart.ts +14 -0
- package/src/commands/score.ts +164 -96
- package/src/commands/start.ts +74 -15
- package/src/commands/stats.ts +103 -0
- package/src/commands/status.ts +157 -0
- package/src/commands/stop.ts +23 -4
- package/src/commands/sync.ts +253 -20
- package/src/commands/vaccine.ts +177 -0
- package/src/constants.ts +25 -1
- package/src/core/boast.ts +27 -12
- package/src/core/db.ts +74 -3
- package/src/core/evolution.ts +215 -0
- package/src/core/hologram/engine.ts +71 -0
- package/src/core/hologram/fallback.ts +11 -0
- package/src/core/hologram/incremental.ts +227 -0
- package/src/core/hologram/py-extractor.ts +132 -0
- package/src/core/hologram/ts-extractor.ts +320 -0
- package/src/core/hologram/types.ts +25 -0
- package/src/core/hologram.ts +64 -236
- package/src/core/hook-manager.ts +259 -0
- package/src/core/i18n/messages.ts +43 -0
- package/src/core/immune.ts +8 -123
- package/src/core/log-rotate.ts +33 -0
- package/src/core/log-utils.ts +38 -0
- package/src/core/lru-map.ts +61 -0
- package/src/core/notify.ts +27 -19
- package/src/core/rule-engine.ts +287 -0
- package/src/core/semantic-diff.ts +432 -0
- package/src/core/telemetry.ts +94 -0
- package/src/core/vaccine-registry.ts +212 -0
- package/src/core/workspace.ts +28 -0
- package/src/core/yaml-minimal.ts +176 -0
- package/src/daemon/client.ts +34 -6
- package/src/daemon/event-batcher.ts +108 -0
- package/src/daemon/guards.ts +13 -0
- package/src/daemon/http-routes.ts +293 -0
- package/src/daemon/mcp-handler.ts +270 -0
- package/src/daemon/server.ts +439 -353
- package/src/daemon/types.ts +100 -0
- package/src/daemon/workspace-map.ts +92 -0
- package/src/platform.ts +23 -2
- package/src/version.ts +15 -0
package/README.md
CHANGED
|
@@ -9,16 +9,12 @@
|
|
|
9
9
|
<a href="https://github.com/dotoricode/autonomous-flow-daemon">
|
|
10
10
|
<img src="demo.gif" width="850" alt="afd demo" style="border-radius: 12px; box-shadow: 0 20px 40px rgba(0,0,0,0.4);">
|
|
11
11
|
</a>
|
|
12
|
-
<br>
|
|
13
|
-
<br>
|
|
14
|
-
<b>🛡️ Immortal Context Flow:</b>
|
|
15
|
-
<em>"afd restores critical config files with <b>near-zero latency</b>, ensuring your AI workflow remains unbroken and cost-efficient."</em>
|
|
16
12
|
</p>
|
|
17
13
|
|
|
18
14
|
---
|
|
19
15
|
|
|
20
16
|
<p align="center">
|
|
21
|
-
<img src="https://img.shields.io/badge/version-1.
|
|
17
|
+
<img src="https://img.shields.io/badge/version-1.6.0-blue?style=flat-square" alt="version" />
|
|
22
18
|
<a href="https://www.npmjs.com/package/autonomous-flow-daemon"><img src="https://img.shields.io/npm/v/autonomous-flow-daemon?style=flat-square&logo=npm&color=cb0000" alt="npm" /></a>
|
|
23
19
|
<img src="https://img.shields.io/badge/runtime-Bun-f472b6?style=flat-square&logo=bun" alt="Bun" />
|
|
24
20
|
<img src="https://img.shields.io/badge/license-MIT-green?style=flat-square" alt="MIT" />
|
|
@@ -33,49 +29,76 @@
|
|
|
33
29
|
|
|
34
30
|
## Why afd?
|
|
35
31
|
|
|
36
|
-
> [afd]
|
|
32
|
+
> [afd] AI agent deleted '.claudeignore' | Self-healed in 184ms | Context preserved.
|
|
37
33
|
|
|
38
|
-
|
|
34
|
+
Your AI agent deletes a config, corrupts a hook file, wipes `.cursorrules`. Without `afd`, you stop everything, diagnose the breakage, manually fix it: **30 minutes gone**.
|
|
39
35
|
|
|
40
|
-
With `afd`, the daemon noticed in 10ms, restored the file in 184ms, and logged it silently. **You never even saw it happen.**
|
|
36
|
+
With `afd`, the daemon noticed in 10ms, restored the file in 184ms, and logged it silently. **You never even saw it happen.** Running as a native Bun daemon, it consumes < 0.1% CPU and ~40MB RAM — zero interference with your workflow.
|
|
41
37
|
|
|
42
38
|
| Situation | Without afd | With afd |
|
|
43
39
|
|:----------|:------------|:---------|
|
|
44
40
|
| AI deletes `.claudeignore` | 30 min manual fix | **0.2s auto-heal** |
|
|
45
41
|
| Hook file corrupted | Re-inject hooks, restart session | **Silent background repair** |
|
|
46
42
|
| `git checkout` triggers 50 file events | AI goes haywire | **Mass-event suppressor kicks in** |
|
|
47
|
-
|
|
|
43
|
+
| AI reads 8 large files (114KB) | ~28,600 tokens consumed | **~1,700 tokens via hologram (94% saved)** |
|
|
48
44
|
|
|
49
45
|
---
|
|
50
46
|
|
|
51
|
-
##
|
|
47
|
+
## Key Features
|
|
52
48
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
49
|
+
| Feature | What it does |
|
|
50
|
+
|:--------|:-------------|
|
|
51
|
+
| **S.E.A.M Auto-Heal** | Detects file deletion/corruption and restores it in < 270ms |
|
|
52
|
+
| **Hologram Extraction** | Serves 80-93% lighter file skeletons to AI agents via MCP, slashing token costs |
|
|
53
|
+
| **Smart File Reader** | `afd_read` — small files served raw, large files auto-compressed; supports line-range reads |
|
|
54
|
+
| **Workspace Map** | `afd://workspace-map` — full file tree + export signatures in one call |
|
|
55
|
+
| **Hologram L1** | Import-aware compression — only imported symbols get full signatures (85%+ savings) |
|
|
56
|
+
| **Quarantine Zone** | Backs up corrupted files to `.afd/quarantine/` before restoring |
|
|
57
|
+
| **Self-Evolution** | Analyzes quarantined failures and writes prevention rules to `afd-lessons.md` |
|
|
58
|
+
| **Mistake History** | PreToolUse hook injects past mistakes as warnings before file edits |
|
|
59
|
+
| **Double-Tap Heuristic** | Delete once = auto-heal; delete again within 30s = respected as intent |
|
|
60
|
+
| **Vaccine Network** | Export learned antibodies via `afd sync` for cross-project immunity |
|
|
61
|
+
| **MCP Integration** | `afd mcp install` auto-registers the daemon as an MCP server |
|
|
62
|
+
| **HUD Defense Counter** | Status bar shows defense count + reason summary at a glance |
|
|
58
63
|
|
|
59
64
|
---
|
|
60
65
|
|
|
61
|
-
##
|
|
66
|
+
## Token Savings — Real Measured Data
|
|
62
67
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
|
68
|
-
|
|
69
|
-
|
|
|
70
|
-
|
|
|
71
|
-
|
|
|
68
|
+
The hologram system is afd's biggest value driver for AI-assisted development. Here's what we measured in a real session:
|
|
69
|
+
|
|
70
|
+
### Session Snapshot (measured during a real coding session)
|
|
71
|
+
|
|
72
|
+
| Metric | Value |
|
|
73
|
+
|:-------|:------|
|
|
74
|
+
| Hologram requests | 8 calls |
|
|
75
|
+
| Target files total size | ~114.5 KB (8 files, avg 14.3 KB each) |
|
|
76
|
+
| Original token cost | ~28,600 tokens |
|
|
77
|
+
| After hologram compression | ~1,700 tokens |
|
|
78
|
+
| **Tokens saved** | **~26,900 tokens (94% reduction)** |
|
|
79
|
+
|
|
80
|
+
### How It Scales
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
Session tokens (at ctx ~15%): ~150,000 ████████████████
|
|
84
|
+
Tokens saved by hologram: ~26,900 ██░░░░░░░░░░░░░░ (18% of session)
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
At ctx 50%+, file reads dominate the token budget. Without hologram, reading 8 large files costs ~28.6K tokens each time. With hologram, **each file costs 1/16th** of its original footprint — and the gap widens with every repeated read.
|
|
88
|
+
|
|
89
|
+
### Three Layers of Token Optimization
|
|
90
|
+
|
|
91
|
+
| Layer | Tool | Savings | How |
|
|
92
|
+
|:------|:-----|:--------|:----|
|
|
93
|
+
| **L0 Hologram** | `afd_hologram` | 80%+ | Strip function bodies, keep type signatures |
|
|
94
|
+
| **L1 Hologram** | `afd_hologram` + `contextFile` | 85%+ | Filter to only imported symbols |
|
|
95
|
+
| **Smart Reader** | `afd_read` | Auto | Files < 10KB raw, >= 10KB auto-hologram |
|
|
96
|
+
| **Workspace Map** | `afd://workspace-map` | N/A | Entire project structure in one call |
|
|
72
97
|
|
|
73
98
|
---
|
|
74
99
|
|
|
75
100
|
## The One-Command Experience
|
|
76
101
|
|
|
77
|
-
> **Zero-Config. Total Protection.**
|
|
78
|
-
|
|
79
102
|
```bash
|
|
80
103
|
npx @dotoricode/afd start
|
|
81
104
|
```
|
|
@@ -86,27 +109,24 @@ Or install locally:
|
|
|
86
109
|
bun link && afd start
|
|
87
110
|
```
|
|
88
111
|
|
|
89
|
-
That's it.
|
|
112
|
+
That's it. `afd` takes over from here:
|
|
90
113
|
|
|
91
|
-
- **Auto-Injection** — Installs `PreToolUse` hooks into Claude Code silently.
|
|
92
|
-
- **Sense (Watcher)** — 10ms real-time monitoring of critical configs
|
|
93
|
-
- **Auto-Heal** — Silent background repair
|
|
114
|
+
- **Auto-Injection** — Installs `PreToolUse` hooks into Claude Code silently.
|
|
115
|
+
- **Sense (Watcher)** — 10ms real-time monitoring of critical configs.
|
|
116
|
+
- **Auto-Heal** — Silent background repair using the S.E.A.M cycle.
|
|
94
117
|
|
|
95
118
|
```
|
|
96
119
|
$ afd start
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
Targets: .claude/, CLAUDE.md, .cursorrules, .claudeignore, .gitignore, mcp-config.json, .mcp.json
|
|
120
|
+
Daemon started (pid 4812, port 52413)
|
|
121
|
+
Smart Discovery: Watching 7 AI-context targets
|
|
100
122
|
Hook injected into .claude/hooks.json
|
|
101
123
|
```
|
|
102
124
|
|
|
103
|
-
> You type `afd start`. Then you forget about it. That's the entire UX.
|
|
104
|
-
|
|
105
125
|
---
|
|
106
126
|
|
|
107
127
|
## The S.E.A.M Cycle
|
|
108
128
|
|
|
109
|
-
|
|
129
|
+
Every file event flows through four stages:
|
|
110
130
|
|
|
111
131
|
```mermaid
|
|
112
132
|
graph LR
|
|
@@ -123,177 +143,88 @@ graph LR
|
|
|
123
143
|
| Stage | What Happens | Speed |
|
|
124
144
|
|:------|:-------------|:------|
|
|
125
145
|
| **Sense** | Chokidar watcher detects `add`, `change`, `unlink` events | < 10ms |
|
|
126
|
-
| **Extract** |
|
|
127
|
-
| **Adapt** | Matches symptom to
|
|
146
|
+
| **Extract** | Generates hologram (type skeleton) & runs health checks | < 5ms |
|
|
147
|
+
| **Adapt** | Matches symptom to antibody, quarantines corrupted state | < 1ms |
|
|
128
148
|
| **Mutate** | Applies RFC 6902 JSON-Patch to restore the file | < 25ms |
|
|
129
149
|
|
|
130
150
|
> Full cycle: **< 270ms** from file deletion to full recovery.
|
|
131
151
|
|
|
132
|
-
### Watch Targets
|
|
133
|
-
|
|
134
|
-
These files are monitored in real-time. Immune files (IMM-*) are automatically restored on deletion:
|
|
135
|
-
|
|
136
|
-
| Target | Type | Antibody | Auto-Restore |
|
|
137
|
-
|:-------|:-----|:---------|:-------------|
|
|
138
|
-
| `.claude/` | Directory | IMM-002 (`hooks.json`) | ✅ |
|
|
139
|
-
| `CLAUDE.md` | File | IMM-003 | ✅ |
|
|
140
|
-
| `.claudeignore` | File | IMM-001 | ✅ |
|
|
141
|
-
| `.cursorrules` | File | — | Event logging only |
|
|
142
|
-
| `.gitignore` | File | — | Event logging only |
|
|
143
|
-
| `mcp-config.json` | File | — | 🔍 Smart Discovery |
|
|
144
|
-
| `.mcp.json` | File | — | 🔍 Smart Discovery |
|
|
145
|
-
| `.ai/` | Directory | — | 🔍 Smart Discovery |
|
|
146
|
-
| `.windsurfrules` | File | — | 🔍 Smart Discovery |
|
|
147
|
-
|
|
148
|
-
> Antibodies are **auto-seeded on startup** with each file's current content, and **refreshed on every change** — so restores always reflect the latest version.
|
|
149
|
-
>
|
|
150
|
-
> 🔍 **Smart Discovery** scans for 12+ known AI-config patterns at startup (< 0.1ms) and adds any found files to the active watch list automatically.
|
|
151
|
-
|
|
152
152
|
---
|
|
153
153
|
|
|
154
154
|
## Commands
|
|
155
155
|
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
|
159
|
-
|
|
160
|
-
| `afd
|
|
161
|
-
| `afd fix` |
|
|
162
|
-
| `afd
|
|
163
|
-
| `afd
|
|
164
|
-
| `afd
|
|
165
|
-
| `afd
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
afd start # Start daemon, inject hooks, begin watching
|
|
171
|
-
afd fix # Scan for issues, auto-patch, learn antibodies
|
|
172
|
-
afd score # Full diagnostic dashboard (localized)
|
|
173
|
-
afd sync # Export antibodies to .afd/global-vaccine-payload.json
|
|
174
|
-
afd lang ko # Switch to Korean / afd lang en for English
|
|
175
|
-
afd stop # Shift summary + graceful shutdown
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
---
|
|
179
|
-
|
|
180
|
-
## Dashboard: `afd score`
|
|
181
|
-
|
|
182
|
-
```
|
|
183
|
-
┌──────────────────────────────────────────────┐
|
|
184
|
-
│ afd score — Daemon Diagnostics │
|
|
185
|
-
├──────────────────────────────────────────────┤
|
|
186
|
-
│ Ecosystem : Claude Code │
|
|
187
|
-
├──────────────────────────────────────────────┤
|
|
188
|
-
│ Uptime : 1h 23m │
|
|
189
|
-
│ Events : 156 │
|
|
190
|
-
│ Files Found : 8 │
|
|
191
|
-
├──────────────────────────────────────────────┤
|
|
192
|
-
│ Immune System │
|
|
193
|
-
│ ────────────────────────────── │
|
|
194
|
-
│ Antibodies : 7 │
|
|
195
|
-
│ Level : Fortified │
|
|
196
|
-
│ Auto-healed : 3 background events │
|
|
197
|
-
├──────────────────────────────────────────────┤
|
|
198
|
-
│ 📈 Value Delivered │
|
|
199
|
-
│ ────────────────────────────── │
|
|
200
|
-
│ Tokens saved : ~2.9K │
|
|
201
|
-
│ Time saved : ~40 min │
|
|
202
|
-
│ Cost saved : ~$0.01 │
|
|
203
|
-
├──────────────────────────────────────────────┤
|
|
204
|
-
│ 🗣️ The immune system holds. Another day, │
|
|
205
|
-
│ another heal. 💪 │
|
|
206
|
-
└──────────────────────────────────────────────┘
|
|
207
|
-
```
|
|
208
|
-
|
|
209
|
-
> The dashboard is fully localized. Run `afd lang ko` and every label switches to Korean.
|
|
156
|
+
| Command | What it does |
|
|
157
|
+
|:--------|:-------------|
|
|
158
|
+
| `afd start` | Daemon spawn + Smart Discovery + Hook injection + MCP registration |
|
|
159
|
+
| `afd stop` | Shift summary report & graceful shutdown (`--clean` to remove hooks & MCP) |
|
|
160
|
+
| `afd score` | Health dashboard with evolution & hologram metrics |
|
|
161
|
+
| `afd fix` | Symptom detection with hologram context & antibody learning |
|
|
162
|
+
| `afd sync` | Vaccine payload export/import (`--push`, `--pull`, `--remote <url>`) |
|
|
163
|
+
| `afd restart` | Stop + start in one command |
|
|
164
|
+
| `afd status` | Quick health check — daemon, hooks, MCP, defenses |
|
|
165
|
+
| `afd doctor` | Comprehensive health analysis with auto-fix recommendations |
|
|
166
|
+
| `afd evolution` | Analyze quarantined failures & generate prevention rules |
|
|
167
|
+
| `afd mcp install` | Register afd as MCP server in project + global config |
|
|
168
|
+
| `afd vaccine` | List, search, install, publish community antibodies |
|
|
169
|
+
| `afd lang` | Switch display language (`afd lang ko` / `afd lang en`) |
|
|
210
170
|
|
|
211
171
|
---
|
|
212
172
|
|
|
213
173
|
## Advanced Intelligence
|
|
214
174
|
|
|
215
|
-
### Double-Tap Heuristic
|
|
175
|
+
### Double-Tap Heuristic
|
|
216
176
|
|
|
217
177
|
`afd` distinguishes **accidents** from **intent**:
|
|
218
178
|
|
|
219
179
|
```
|
|
220
|
-
$ rm .claudeignore # First tap
|
|
221
|
-
$ rm .claudeignore # Second tap within 30s
|
|
222
|
-
[afd]
|
|
180
|
+
$ rm .claudeignore # First tap -> afd heals it silently
|
|
181
|
+
$ rm .claudeignore # Second tap within 30s -> "You meant it."
|
|
182
|
+
[afd] Antibody IMM-001 retired. Double-tap detected. Standing down.
|
|
223
183
|
```
|
|
224
184
|
|
|
225
185
|
| Scenario | Response |
|
|
226
186
|
|:---------|:---------|
|
|
227
187
|
| Single delete (accident) | Auto-heal + record first tap |
|
|
228
188
|
| Re-delete within 30s (intent) | Antibody goes dormant, deletion respected |
|
|
229
|
-
| Re-delete after 30s | Fresh first tap, heals again |
|
|
230
189
|
| 3+ deletes in 1s (git checkout) | Mass-event detected, all suppression paused |
|
|
231
190
|
|
|
232
|
-
### Vaccine Network
|
|
233
|
-
|
|
234
|
-
Export learned antibodies for your entire team:
|
|
191
|
+
### Vaccine Network
|
|
235
192
|
|
|
236
193
|
```bash
|
|
237
|
-
afd sync
|
|
238
|
-
#
|
|
194
|
+
afd sync # Export to .afd/global-vaccine-payload.json
|
|
195
|
+
afd sync --push # Push vaccines to remote
|
|
196
|
+
afd sync --pull # Pull vaccines from remote
|
|
239
197
|
```
|
|
240
198
|
|
|
241
|
-
The payload is sanitized (no absolute paths, no secrets) and portable.
|
|
242
|
-
|
|
243
|
-
### Hologram Extraction
|
|
199
|
+
The payload is sanitized (no absolute paths, no secrets) and portable.
|
|
244
200
|
|
|
245
|
-
|
|
201
|
+
### Self-Evolution
|
|
246
202
|
|
|
203
|
+
```bash
|
|
204
|
+
afd evolution
|
|
247
205
|
```
|
|
248
|
-
Original: 2,450 chars → Hologram: 380 chars (84% savings)
|
|
249
|
-
```
|
|
250
|
-
|
|
251
|
-
This keeps your AI agent's context window lean without losing structural understanding.
|
|
252
|
-
|
|
253
|
-
---
|
|
254
|
-
|
|
255
|
-
## Status Line
|
|
256
206
|
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
```
|
|
260
|
-
🛡️ afd: OFF # Daemon not running
|
|
261
|
-
🛡️ afd: ON # Running, no heals
|
|
262
|
-
🛡️ afd: ON 🩹1 # 1 auto-heal event
|
|
263
|
-
🛡️ afd: ON | 🩹 3 Healed | last: IMM-003 # Detailed view
|
|
264
|
-
```
|
|
207
|
+
Analyzes quarantined failures and writes prevention rules to `afd-lessons.md`. AI agents read this before editing immune-critical files — turning past failures into future prevention.
|
|
265
208
|
|
|
266
209
|
---
|
|
267
210
|
|
|
268
|
-
##
|
|
269
|
-
|
|
270
|
-
`afd` can be registered as a **Model Context Protocol (MCP) server** inside Claude Code, allowing the daemon to start automatically when Claude Code launches.
|
|
211
|
+
## MCP Setup
|
|
271
212
|
|
|
272
|
-
|
|
213
|
+
`afd` provides four MCP tools and one resource:
|
|
273
214
|
|
|
274
|
-
|
|
215
|
+
| MCP Tool | Purpose |
|
|
216
|
+
|:---------|:--------|
|
|
217
|
+
| `afd_read` | Smart file reader — raw for small files, auto-hologram for large, optional line ranges |
|
|
218
|
+
| `afd_hologram` | Token-efficient type skeleton of any TS/JS file (80%+ savings) |
|
|
219
|
+
| `afd_diagnose` | Health diagnosis with symptoms and hologram context |
|
|
220
|
+
| `afd_score` | Runtime stats: uptime, heals, hologram savings |
|
|
275
221
|
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
"afd": {
|
|
280
|
-
"command": "bun",
|
|
281
|
-
"args": ["run", "src/cli.ts", "start"]
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
}
|
|
285
|
-
```
|
|
286
|
-
|
|
287
|
-
### Manual
|
|
222
|
+
| MCP Resource | Purpose |
|
|
223
|
+
|:-------------|:--------|
|
|
224
|
+
| `afd://workspace-map` | Full file tree with export signatures in one call |
|
|
288
225
|
|
|
289
226
|
```bash
|
|
290
|
-
afd
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
Once registered, Claude Code will display the live status line:
|
|
294
|
-
|
|
295
|
-
```
|
|
296
|
-
🛡️ afd: ON | 🩹 3 Healed | last: IMM-003
|
|
227
|
+
afd mcp install # Registers in .mcp.json + ~/.claude.json
|
|
297
228
|
```
|
|
298
229
|
|
|
299
230
|
---
|
|
@@ -307,7 +238,6 @@ Once registered, Claude Code will display the live status line:
|
|
|
307
238
|
| Watching | **Chokidar** | Cross-platform, battle-tested file watcher |
|
|
308
239
|
| Patching | **RFC 6902 JSON-Patch** | Deterministic, composable file mutations |
|
|
309
240
|
| CLI | **Commander.js** | Standard, zero-surprise command parsing |
|
|
310
|
-
| i18n | **Built-in engine** | Zero-dependency locale switching in 0.01ms |
|
|
311
241
|
|
|
312
242
|
---
|
|
313
243
|
|
|
@@ -327,11 +257,10 @@ npx @dotoricode/afd start
|
|
|
327
257
|
|
|
328
258
|
- **Bun** >= 1.0
|
|
329
259
|
- **OS**: Windows, macOS, Linux
|
|
330
|
-
- **Target**: Claude Code, Cursor (ecosystem auto-detected)
|
|
260
|
+
- **Target**: Claude Code, Cursor, Windsurf, Codex (ecosystem auto-detected)
|
|
331
261
|
|
|
332
262
|
---
|
|
333
263
|
|
|
334
264
|
## License
|
|
335
265
|
|
|
336
266
|
MIT
|
|
337
|
-
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "autonomous-flow-daemon",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.6.0",
|
|
4
4
|
"description": "Zero-config immunity for AI coding workflows. Self-heals broken configs in < 270ms.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -26,14 +26,20 @@
|
|
|
26
26
|
"dev-tools"
|
|
27
27
|
],
|
|
28
28
|
"scripts": {
|
|
29
|
-
"
|
|
30
|
-
"
|
|
29
|
+
"dev": "bun --watch src/cli.ts",
|
|
30
|
+
"score": "bun src/cli.ts score",
|
|
31
|
+
"start": "bun src/cli.ts start",
|
|
31
32
|
"test": "bun test"
|
|
32
33
|
},
|
|
33
34
|
"dependencies": {
|
|
34
35
|
"chokidar": "^4.0.3",
|
|
35
36
|
"commander": "^13.1.0",
|
|
36
|
-
"typescript": "^6.0.2"
|
|
37
|
+
"typescript": "^6.0.2",
|
|
38
|
+
"web-tree-sitter": "^0.26.8"
|
|
37
39
|
},
|
|
38
|
-
"license": "MIT"
|
|
40
|
+
"license": "MIT",
|
|
41
|
+
"optionalDependencies": {
|
|
42
|
+
"tree-sitter-python": "^0.25.0",
|
|
43
|
+
"tree-sitter-typescript": "^0.23.2"
|
|
44
|
+
}
|
|
39
45
|
}
|