faf-cli 3.4.3 → 3.4.5
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 +110 -242
- package/dist/big-orange/compare.js +3 -3
- package/dist/big-orange/compare.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +18 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/demo.d.ts +20 -0
- package/dist/commands/demo.d.ts.map +1 -0
- package/dist/commands/demo.js +205 -0
- package/dist/commands/demo.js.map +1 -0
- package/dist/commands/drift.js +16 -16
- package/dist/commands/drift.js.map +1 -1
- package/dist/commands/git.js +16 -16
- package/dist/commands/git.js.map +1 -1
- package/dist/commands/score-v3.js +21 -23
- package/dist/commands/score-v3.js.map +1 -1
- package/dist/commands/yolo.d.ts.map +1 -1
- package/dist/commands/yolo.js +17 -11
- package/dist/commands/yolo.js.map +1 -1
- package/dist/framework-detector.d.ts +1 -0
- package/dist/framework-detector.d.ts.map +1 -1
- package/dist/framework-detector.js +12 -0
- package/dist/framework-detector.js.map +1 -1
- package/dist/github/repo-selector.d.ts.map +1 -1
- package/dist/github/repo-selector.js +14 -17
- package/dist/github/repo-selector.js.map +1 -1
- package/dist/utils/yaml-generator.d.ts +1 -0
- package/dist/utils/yaml-generator.d.ts.map +1 -1
- package/dist/utils/yaml-generator.js +2 -1
- package/dist/utils/yaml-generator.js.map +1 -1
- package/package.json +1 -1
- package/project.faf +1 -1
package/README.md
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
</div>
|
|
7
7
|
</div>
|
|
8
8
|
|
|
9
|
-
>
|
|
9
|
+
> **.FAF optimizes AI for your codebase.** At 100% (Gold Code), AI stops guessing and starts knowing. Live bi-sync between `.faf` ↔ `CLAUDE.md` means zero context-drift — your project DNA stays aligned with AI, forever.
|
|
10
10
|
|
|
11
11
|
[](https://www.npmjs.com/package/faf-cli)
|
|
12
12
|
[](https://github.com/Wolfe-Jam/homebrew-faf)
|
|
@@ -15,324 +15,192 @@
|
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
18
|
-
##
|
|
18
|
+
## The Problem: Context-Drift
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
AI assistants forget. They misunderstand. They drift.
|
|
21
21
|
|
|
22
|
-
|
|
23
|
-
faf init
|
|
24
|
-
# Detects: .claude/agents/, .claude/commands/, CLAUDE.md, .mcp.json
|
|
25
|
-
# Output includes claude_code: section with subagents, commands, permissions, mcp_servers
|
|
26
|
-
```
|
|
22
|
+
Every new session, every new file, every new developer — AI starts guessing again. Your codebase context leaks away. Yesterday's perfect assistant becomes today's confused intern.
|
|
27
23
|
|
|
28
|
-
|
|
24
|
+
**.FAF fixes this permanently.**
|
|
29
25
|
|
|
30
26
|
---
|
|
31
27
|
|
|
32
|
-
##
|
|
33
|
-
|
|
34
|
-
**Problem:** AI needs persistent project context to work at its best.
|
|
35
|
-
|
|
36
|
-
**Solution:** The .faf format provides that context. This CLI creates, scores, and improves .faf files from your codebase in the IANA-registered format.
|
|
37
|
-
|
|
38
|
-
**How it works:** Run `faf init` to create your .faf file. Get a score (0-100%) showing context quality. Higher scores = AI more in-tune with your project. Use `faf auto` and other commands to improve your score quickly.
|
|
39
|
-
|
|
40
|
-
**Install:**
|
|
41
|
-
```bash
|
|
42
|
-
# npm (works everywhere)
|
|
43
|
-
npm install -g faf-cli
|
|
44
|
-
|
|
45
|
-
# Homebrew (macOS/Linux)
|
|
46
|
-
brew install faf-cli
|
|
47
|
-
```
|
|
28
|
+
## The Solution: Gold Code
|
|
48
29
|
|
|
49
|
-
**Quick start:**
|
|
50
|
-
```bash
|
|
51
|
-
cd your-project
|
|
52
|
-
faf init # Creates project.faf file
|
|
53
|
-
faf score # Check AI-readiness (0-100%)
|
|
54
30
|
```
|
|
31
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
32
|
+
🏆 FAF AI-READINESS SCORE: 100/100 — GOLD CODE
|
|
33
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
55
34
|
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
- **claude-faf-mcp** ([npm](https://www.npmjs.com/package/claude-faf-mcp)): MCP server for Claude Desktop via protocol integration
|
|
59
|
-
|
|
60
|
-
Same .faf format, different execution layers. Same Project DNA and scoring. Same capabilities (create, score, improve). Choose based on your workflow.
|
|
35
|
+
At 100%, AI is optimized. No more guessing.
|
|
36
|
+
Peak AI performance activated.
|
|
61
37
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
38
|
+
├─ Project DNA locked in ├─ Zero context-drift
|
|
39
|
+
├─ Architecture understood ├─ Eternal bi-sync active
|
|
40
|
+
├─ Domain model captured ├─ Team alignment permanent
|
|
41
|
+
└─ Every session starts smart └─ AI works WITH you, not around you
|
|
65
42
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
<div align="center">
|
|
69
|
-
<img src="https://raw.githubusercontent.com/Wolfe-Jam/faf/main/assets/Project-faf-pckg-json-README.png" alt="project.faf file positioning" width="600" />
|
|
70
|
-
<p><em>project.faf lives at the project root, between package.json and README.md</em></p>
|
|
71
|
-
</div>
|
|
72
|
-
|
|
73
|
-
At 55% you are building your project with half a blueprint and basically flipping a coin with AI. .FAF defines, and AI becomes optimized for Context with the project.faf file.
|
|
43
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
44
|
+
```
|
|
74
45
|
|
|
75
46
|
---
|
|
76
47
|
|
|
77
|
-
##
|
|
48
|
+
## 💎 Lifecycle Value
|
|
78
49
|
|
|
79
|
-
|
|
50
|
+
Setup savings get you started. Lifecycle optimization keeps you ahead.
|
|
80
51
|
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
```
|
|
52
|
+
| When | Without FAF | With FAF |
|
|
53
|
+
|------|-------------|----------|
|
|
54
|
+
| **Day 1** | 20 min setup per dev | 0 min — instant context |
|
|
55
|
+
| **Month 1** | AI forgets between sessions | AI remembers everything |
|
|
56
|
+
| **Year 1** | New devs re-explain everything | New devs inherit full context |
|
|
57
|
+
| **Year 3+** | Institutional knowledge lost | Project DNA preserved forever |
|
|
88
58
|
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
```bash
|
|
92
|
-
# Initialize with IANA-registered format
|
|
93
|
-
faf init
|
|
59
|
+
**Setup savings: 20 minutes. Lifecycle savings: Infinite.**
|
|
94
60
|
|
|
95
|
-
|
|
96
|
-
# Content-Type: application/vnd.faf+yaml
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
**What just happened:**
|
|
100
|
-
- Created project.faf file (IANA-registered format)
|
|
101
|
-
- Generated project DNA (architecture, dependencies, quality score)
|
|
102
|
-
- Ready for any AI (Claude Code, Gemini, Cursor, Codex, Warp, etc.)
|
|
103
|
-
- Official Internet standard format
|
|
61
|
+
---
|
|
104
62
|
|
|
105
|
-
|
|
63
|
+
## ⚡ Quick Start
|
|
106
64
|
|
|
107
65
|
```bash
|
|
108
|
-
#
|
|
109
|
-
faf
|
|
66
|
+
# Install
|
|
67
|
+
npm install -g faf-cli # or: brew install faf-cli
|
|
110
68
|
|
|
111
|
-
#
|
|
112
|
-
|
|
69
|
+
# Initialize
|
|
70
|
+
cd your-project
|
|
71
|
+
faf init # Creates project.faf
|
|
113
72
|
|
|
114
|
-
#
|
|
115
|
-
faf
|
|
73
|
+
# Check your score
|
|
74
|
+
faf score # 0-100% AI-readiness
|
|
116
75
|
|
|
117
|
-
#
|
|
118
|
-
faf
|
|
76
|
+
# Reach Gold Code
|
|
77
|
+
faf auto # Auto-enhance to 100%
|
|
119
78
|
```
|
|
120
79
|
|
|
121
|
-
**That's it!** Your AI now has perfect context.
|
|
122
|
-
|
|
123
80
|
---
|
|
124
81
|
|
|
125
|
-
##
|
|
126
|
-
|
|
127
|
-
Boost your score by 25-35% with human context - the information only YOU know about your project.
|
|
82
|
+
## What's New in v3.4.5
|
|
128
83
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
# Preview what can be extracted
|
|
133
|
-
faf readme
|
|
134
|
-
|
|
135
|
-
# Apply extracted content to empty slots
|
|
136
|
-
faf readme --apply
|
|
137
|
-
|
|
138
|
-
# Overwrite all slots (even filled ones)
|
|
139
|
-
faf readme --apply --force
|
|
140
|
-
```
|
|
84
|
+
**Claude Code 2.1.0 Support** — Now detects `.claude/skills/`, `.claude/commands/`, and YAML-style `allowed-tools`.
|
|
141
85
|
|
|
142
|
-
|
|
86
|
+
**Boris-Flow 14/14** — Integration tests updated for Claude Code 2.1.0 validation.
|
|
143
87
|
|
|
144
88
|
```bash
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
faf human-set what "Customer dashboard with real-time analytics"
|
|
148
|
-
faf human-set why "10x faster than previous solution"
|
|
149
|
-
|
|
150
|
-
# Interactive mode (terminal only)
|
|
151
|
-
faf human
|
|
89
|
+
./tests/boris-flow.test.sh
|
|
90
|
+
# Validates: version, init, auto, score, skills, commands, subagents
|
|
152
91
|
```
|
|
153
92
|
|
|
154
|
-
|
|
93
|
+
**`faf demo sync`** — Live bi-sync demonstration.
|
|
155
94
|
|
|
156
95
|
```bash
|
|
157
|
-
|
|
158
|
-
faf
|
|
159
|
-
|
|
160
|
-
# Output shows quality levels:
|
|
161
|
-
# empty - Not filled
|
|
162
|
-
# generic - Placeholder or too short
|
|
163
|
-
# good - Quality content
|
|
164
|
-
# excellent - High-value content
|
|
165
|
-
|
|
166
|
-
# Lock good content from being overwritten
|
|
167
|
-
faf check --protect
|
|
168
|
-
|
|
169
|
-
# Remove all protections
|
|
170
|
-
faf check --unlock
|
|
96
|
+
faf demo sync # Run the demo
|
|
97
|
+
faf demo sync --fast # Speed run
|
|
171
98
|
```
|
|
172
99
|
|
|
173
|
-
Protected fields are skipped by `faf readme` and `faf auto`, preventing accidental overwrites of quality content.
|
|
174
|
-
|
|
175
|
-
---
|
|
176
|
-
|
|
177
|
-
## Core Features
|
|
178
|
-
|
|
179
|
-
### 44 Championship Commands
|
|
180
|
-
- **faf auto** - Zero to Podium in one command
|
|
181
|
-
- **faf init** - Create project.faf from your project
|
|
182
|
-
- **faf readme** - Smart 6 Ws extraction from README.md
|
|
183
|
-
- **faf human** - Interactive human context entry
|
|
184
|
-
- **faf human-set** - Non-interactive field setting (Claude Code compatible)
|
|
185
|
-
- **faf check** - Quality inspection + field protection
|
|
186
|
-
- **faf enhance** - Real AI analysis and improvements
|
|
187
|
-
- **faf score** - AI-readiness scoring (0-100%)
|
|
188
|
-
- **faf formats** - 153 formats across 17-level pyramid
|
|
189
|
-
- **faf bi-sync** - Bidirectional .faf ↔ CLAUDE.md (8ms!)
|
|
190
|
-
- **faf dna** - Evolution journey tracking
|
|
191
|
-
|
|
192
|
-
Run `faf --help` for complete command reference
|
|
193
|
-
|
|
194
|
-
### IANA-Registered Standard
|
|
195
|
-
- Official MIME type: `application/vnd.faf+yaml`
|
|
196
|
-
- Recognized at Internet scale (same as PDF, JSON, XML)
|
|
197
|
-
- Proper HTTP Content-Type headers
|
|
198
|
-
- Browser and email client support
|
|
199
|
-
- Universal format for AI context
|
|
200
|
-
|
|
201
|
-
### Championship Performance
|
|
202
|
-
- **<50ms** all commands target
|
|
203
|
-
- **18ms** average execution
|
|
204
|
-
- **8ms** bi-sync achieved
|
|
205
|
-
- **0ms** operations possible (unmeasurable speed!)
|
|
206
|
-
- F1-grade engineering
|
|
207
|
-
|
|
208
|
-
### Universal AI Support
|
|
209
|
-
Works with Claude Code, OpenAI Codex CLI, Gemini CLI, Cursor, Warp, Copilot, Windsurf, and all AI coding assistants.
|
|
210
|
-
|
|
211
|
-
**PLUS:** AI-Automation platforms (n8n, OpenAI Builder, Google Opal, Make.com)
|
|
212
|
-
|
|
213
100
|
---
|
|
214
101
|
|
|
215
|
-
##
|
|
102
|
+
## 🔄 Eternal Bi-Sync
|
|
216
103
|
|
|
217
|
-
|
|
104
|
+
The magic: `.faf` ↔ `CLAUDE.md` stay synchronized in milliseconds.
|
|
218
105
|
|
|
219
|
-
|
|
106
|
+
```
|
|
107
|
+
project.faf ←──── 8ms ────→ CLAUDE.md
|
|
108
|
+
│ │
|
|
109
|
+
└── Single source of truth ──┘
|
|
110
|
+
```
|
|
220
111
|
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
type: cli # 9 slots (project + human)
|
|
225
|
-
type: frontend # 16 slots (+ frontend + universal)
|
|
226
|
-
type: backend-api # 17 slots (+ backend + universal)
|
|
227
|
-
type: fullstack # 21 slots (all categories)
|
|
112
|
+
```bash
|
|
113
|
+
faf bi-sync # Sync once
|
|
114
|
+
faf bi-sync --watch # Continuous sync
|
|
228
115
|
```
|
|
229
116
|
|
|
230
|
-
|
|
117
|
+
---
|
|
231
118
|
|
|
232
|
-
|
|
233
|
-
`cli` `library` `npm-package` `pip-package` `crate` `gem` `chrome-extension` `firefox-extension` `safari-extension` `terraform` `kubernetes` `docker` `ansible` `github-action` `embedded` `arduino` `wasm` `jupyter` `smart-contract` `e2e-tests`
|
|
119
|
+
## Tier System: From Blind to Optimized
|
|
234
120
|
|
|
235
|
-
|
|
236
|
-
|
|
121
|
+
| Tier | Score | Status |
|
|
122
|
+
|------|-------|--------|
|
|
123
|
+
| 🏆 **Trophy** | 100% | **AI Optimized** — Gold Code |
|
|
124
|
+
| 🥇 **Gold** | 99%+ | Near-perfect context |
|
|
125
|
+
| 🥈 **Silver** | 95%+ | Excellent |
|
|
126
|
+
| 🥉 **Bronze** | 85%+ | Production ready |
|
|
127
|
+
| 🟢 **Green** | 70%+ | Solid foundation |
|
|
128
|
+
| 🟡 **Yellow** | 55%+ | AI flipping coins |
|
|
129
|
+
| 🔴 **Red** | <55% | AI working blind |
|
|
130
|
+
| 🤍 **White** | 0% | No context at all |
|
|
237
131
|
|
|
238
|
-
**
|
|
239
|
-
`mcp-server` `data-science` `ml-model` `data-pipeline` `n8n-workflow` `python-app`
|
|
132
|
+
**At 55%, AI is guessing half the time.** At 100%, AI is optimized.
|
|
240
133
|
|
|
241
|
-
|
|
242
|
-
`frontend` `svelte` `react` `vue` `angular` `astro`
|
|
134
|
+
---
|
|
243
135
|
|
|
244
|
-
|
|
245
|
-
`backend-api` `node-api` `python-api` `go-api` `rust-api` `graphql` `microservice` `strapi`
|
|
136
|
+
## Core Commands
|
|
246
137
|
|
|
247
|
-
|
|
248
|
-
|
|
138
|
+
| Command | Purpose |
|
|
139
|
+
|---------|---------|
|
|
140
|
+
| `faf init` | Create project.faf from your codebase |
|
|
141
|
+
| `faf score` | Check AI-readiness (0-100%) |
|
|
142
|
+
| `faf auto` | Auto-enhance to Gold Code |
|
|
143
|
+
| `faf bi-sync` | Sync .faf ↔ CLAUDE.md (8ms) |
|
|
144
|
+
| `faf readme` | Extract 6 Ws from README (+25-35% boost) |
|
|
145
|
+
| `faf human` | Interactive human context entry |
|
|
146
|
+
| `faf human-set` | Non-interactive field setting |
|
|
147
|
+
| `faf formats` | Show 153 detected formats |
|
|
148
|
+
| `faf demo sync` | Live bi-sync demonstration |
|
|
249
149
|
|
|
250
|
-
|
|
150
|
+
Run `faf --help` for all 44 commands.
|
|
251
151
|
|
|
252
|
-
|
|
152
|
+
---
|
|
253
153
|
|
|
254
|
-
|
|
255
|
-
|-------|---------|-------|---------|
|
|
256
|
-
| `api` | backend-api | `k8s` | kubernetes |
|
|
257
|
-
| `cli-tool` | cli | `rn` | react-native |
|
|
258
|
-
| `flask` | python-api | `expo` | react-native |
|
|
259
|
-
| `fastapi` | python-api | `turbo` | turborepo |
|
|
260
|
-
| `express` | node-api | `next` | nextjs |
|
|
261
|
-
| `tf` | terraform | `gha` | github-action |
|
|
154
|
+
## Human Context (The 6 Ws)
|
|
262
155
|
|
|
263
|
-
|
|
156
|
+
Boost your score by 25-35% with human context — the information only YOU know.
|
|
264
157
|
|
|
265
|
-
|
|
158
|
+
```bash
|
|
159
|
+
# Auto-extract from README
|
|
160
|
+
faf readme --apply
|
|
266
161
|
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
162
|
+
# Manual entry
|
|
163
|
+
faf human-set who "Frontend team at Acme Corp"
|
|
164
|
+
faf human-set what "Customer dashboard with real-time analytics"
|
|
165
|
+
faf human-set why "10x faster than previous solution"
|
|
271
166
|
```
|
|
272
167
|
|
|
273
|
-
Formats: array `[a, b]`, string `"a, b"`, or shorthand `hosting` → `stack.hosting`
|
|
274
|
-
|
|
275
|
-
---
|
|
276
|
-
|
|
277
|
-
## Documentation
|
|
278
|
-
|
|
279
|
-
- **[CHANGELOG](./CHANGELOG.md)** - Version history and release notes
|
|
280
|
-
- **[FAQ](./docs/FAQ.md)** - Common questions
|
|
281
|
-
- **[Commands Reference](https://faf.one/docs/commands)** - All 41 commands
|
|
282
|
-
- **[Website](https://faf.one)** - Complete guide and documentation
|
|
283
|
-
- **[Discord Community](https://discord.com/invite/56fPBUJKfk)** - Join the discussion
|
|
284
|
-
|
|
285
168
|
---
|
|
286
169
|
|
|
287
|
-
##
|
|
288
|
-
|
|
289
|
-
> "README for the AI era" — Gemini CLI
|
|
290
|
-
|
|
291
|
-
**Persistent Context** - Your project's DNA lives in `project.faf`, readable by any AI or human
|
|
170
|
+
## CLI vs MCP
|
|
292
171
|
|
|
293
|
-
|
|
172
|
+
| Tool | Use Case |
|
|
173
|
+
|------|----------|
|
|
174
|
+
| **faf-cli** (this) | Terminal, scripts, CI/CD, automation |
|
|
175
|
+
| **claude-faf-mcp** | Claude Desktop via MCP protocol |
|
|
294
176
|
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
**Championship Engineering** - F1-inspired performance with strict TypeScript, zero runtime errors
|
|
177
|
+
Same .faf format. Same scoring. Same Gold Code. Different execution layer.
|
|
298
178
|
|
|
299
179
|
---
|
|
300
180
|
|
|
301
|
-
## Ecosystem
|
|
181
|
+
## 📦 Ecosystem
|
|
302
182
|
|
|
303
|
-
- **[
|
|
304
|
-
- **[
|
|
305
|
-
- **[Chrome Extension](https://chromewebstore.google.com/detail/lnecebepmpjpilldfmndnaofbfjkjlkm)**
|
|
306
|
-
- **[faf.one](https://faf.one)**
|
|
183
|
+
- **[claude-faf-mcp](https://npmjs.com/package/claude-faf-mcp)** — MCP server (52 tools)
|
|
184
|
+
- **[faf-wasm](https://www.npmjs.com/package/faf-wasm)** — WASM SDK (<5ms scoring)
|
|
185
|
+
- **[Chrome Extension](https://chromewebstore.google.com/detail/lnecebepmpjpilldfmndnaofbfjkjlkm)** — Browser integration
|
|
186
|
+
- **[faf.one](https://faf.one)** — Official website
|
|
307
187
|
|
|
308
188
|
---
|
|
309
189
|
|
|
310
|
-
##
|
|
190
|
+
## 📚 Documentation
|
|
311
191
|
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
cd faf-cli
|
|
316
|
-
|
|
317
|
-
# Install & Build
|
|
318
|
-
npm install
|
|
319
|
-
npm run build
|
|
320
|
-
|
|
321
|
-
# Test
|
|
322
|
-
npm test
|
|
323
|
-
|
|
324
|
-
# Link locally
|
|
325
|
-
npm link
|
|
326
|
-
```
|
|
192
|
+
- **[CHANGELOG](./CHANGELOG.md)** — Version history
|
|
193
|
+
- **[Website](https://faf.one)** — Complete guide
|
|
194
|
+
- **[Discord](https://discord.com/invite/56fPBUJKfk)** — Community
|
|
327
195
|
|
|
328
196
|
---
|
|
329
197
|
|
|
330
|
-
## License
|
|
198
|
+
## 📄 License
|
|
331
199
|
|
|
332
|
-
MIT License
|
|
200
|
+
MIT License — Free and open source
|
|
333
201
|
|
|
334
202
|
---
|
|
335
203
|
|
|
336
|
-
**
|
|
204
|
+
**Zero drift. Eternal sync. AI optimized.** 🏆
|
|
337
205
|
|
|
338
206
|
*"It's so logical if it didn't exist, AI would have built it itself" — Claude*
|
|
@@ -145,10 +145,10 @@ function getChampionshipEmoji(score) {
|
|
|
145
145
|
if (score >= 55) {
|
|
146
146
|
return '🟡';
|
|
147
147
|
} // Yellow (Caution)
|
|
148
|
-
if (score
|
|
148
|
+
if (score > 0) {
|
|
149
149
|
return '🔴';
|
|
150
|
-
} // Red
|
|
151
|
-
return '🤍'; // White
|
|
150
|
+
} // Red <55%
|
|
151
|
+
return '🤍'; // White 0%
|
|
152
152
|
}
|
|
153
153
|
/**
|
|
154
154
|
* Calculate delta metrics between two responses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/big-orange/compare.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"compare.js","sourceRoot":"","sources":["../../src/big-orange/compare.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AA4lD/C,OAAO,EAAE,OAAO,EAAE,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -78,6 +78,7 @@ const chat_1 = require("./commands/chat");
|
|
|
78
78
|
const convert_1 = require("./commands/convert");
|
|
79
79
|
const notifications_1 = require("./commands/notifications");
|
|
80
80
|
const skills_1 = require("./commands/skills");
|
|
81
|
+
const demo_1 = require("./commands/demo");
|
|
81
82
|
const drift_1 = require("./commands/drift");
|
|
82
83
|
const git_1 = require("./commands/git");
|
|
83
84
|
const taf_1 = require("./commands/taf");
|
|
@@ -1079,6 +1080,23 @@ Claude Code Consistency:
|
|
|
1079
1080
|
• Fresh start for .faf system
|
|
1080
1081
|
• Removes temporary files and cached data`)
|
|
1081
1082
|
.action((options) => (0, clear_1.clearCommand)(options));
|
|
1083
|
+
// 🎬 faf demo - Live Demonstrations
|
|
1084
|
+
commander_1.program
|
|
1085
|
+
.command('demo [subcommand]')
|
|
1086
|
+
.description('Live demonstrations of FAF capabilities')
|
|
1087
|
+
.option('--speed <speed>', 'Demo pacing: fast, normal, slow (default: normal)')
|
|
1088
|
+
.option('--no-cleanup', 'Keep demo changes in files')
|
|
1089
|
+
.addHelpText('after', `
|
|
1090
|
+
Examples:
|
|
1091
|
+
$ faf demo # Show available demos
|
|
1092
|
+
$ faf demo sync # Live bi-sync demonstration
|
|
1093
|
+
$ faf demo sync --fast # Speed up the demo
|
|
1094
|
+
$ faf demo sync --slow # Slow down for presentations
|
|
1095
|
+
|
|
1096
|
+
Available demos:
|
|
1097
|
+
sync Live .faf <-> CLAUDE.md synchronization
|
|
1098
|
+
Shows real-time bidirectional sync with timestamps`)
|
|
1099
|
+
.action(withAnalyticsTracking('demo', (subcommand, options) => (0, demo_1.demoCommand)(subcommand, options)));
|
|
1082
1100
|
// 🍊 faf drift - Context-Drift Analyzer
|
|
1083
1101
|
commander_1.program
|
|
1084
1102
|
.command('drift')
|