faf-cli 6.0.8 → 6.0.10

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.
Files changed (3) hide show
  1. package/README.md +46 -9
  2. package/dist/cli.js +169 -164
  3. package/package.json +5 -4
package/README.md CHANGED
@@ -29,6 +29,8 @@ project/
29
29
 
30
30
  **Git-Native.** `project.faf` versions with your code — every clone, every fork, every checkout gets full AI context. No setup, no drift, no re-explaining.
31
31
 
32
+ 10 lines of structured YAML gives AI more context than 550 lines of prose. [Read why →](https://faf.one/blog/sunset-edition)
33
+
32
34
  ---
33
35
 
34
36
  ## Install
@@ -61,15 +63,15 @@ v6 is a ground-up rewrite. All-in on Bun — same toolchain as Claude Code.
61
63
  | **Language** | TypeScript | TypeScript |
62
64
  | **Compile** | Bun bytecode | `bun build --compile` |
63
65
 
64
- 312 tests in ~10s. 290KB bundle in 2.4s. Single portable binary, 4 platforms. npx backward-compatible.
66
+ 375 tests in ~19s. 95KB package in 1s. Single portable binary, 4 platforms. npx backward-compatible.
65
67
 
66
- 26 commands. 312 tests. 5,292 lines. 93% smaller than v5.
68
+ 26 commands. 375 tests. 3,182 lines. 94% smaller than v5.
67
69
 
68
70
  ```
69
71
  commands → interop → core → wasm
70
72
  ```
71
73
 
72
- The WASM scoring kernel (`faf-scoring-kernel` 2.0.0) does the math. Bun does the delivery.
74
+ The WASM scoring kernel (`faf-scoring-kernel`) does the math. Bun does the delivery.
73
75
 
74
76
  ---
75
77
 
@@ -127,11 +129,46 @@ bunx faf-cli go # Interactive interview to gold code
127
129
  | Tier | Score | Status |
128
130
  |------|-------|--------|
129
131
  | 🏆 Trophy | 100% | AI Optimized — Gold Code |
130
- | 🥇 Gold | 99%+ | Near-perfect |
131
- | 🥈 Silver | 95%+ | Excellent |
132
- | 🥉 Bronze | 85%+ | Production ready |
133
- | 🟡 Yellow | 55%+ | AI flipping coins |
134
- | 🔴 Red | <55% | AI working blind |
132
+ | Gold | 99%+ | Near-perfect |
133
+ | Silver | 95%+ | Excellent |
134
+ | Bronze | 85%+ | Production ready |
135
+ | Green | 70%+ | Solid foundation |
136
+ | Yellow | 55%+ | AI flipping coins |
137
+ | ○ Red | <55% | AI working blind |
138
+ | ♡ White | 0% | No context |
139
+
140
+ ---
141
+
142
+ ## Project Types
143
+
144
+ faf-cli auto-detects your project type and activates the right slots:
145
+
146
+ | Type | Detection | Active Slots |
147
+ |------|-----------|-------------|
148
+ | **mcp** | `@modelcontextprotocol/sdk`, `fastmcp`, `mcp`, `rmcp` | project + backend + universal + human |
149
+ | **fullstack** | Next.js, Nuxt, frontend + backend | project + frontend + backend + universal + human |
150
+ | **svelte** | SvelteKit / Svelte | project + frontend + backend + universal + human |
151
+ | **backend** | FastAPI, Express, Django, Flask | project + backend + universal + human |
152
+ | **frontend** | React, Vue, Angular (no backend) | project + frontend + human |
153
+ | **cli** | `bin` field in package.json | project + human |
154
+ | **library** | No framework signals | project + human |
155
+
156
+ ### MCP Server Detection
157
+
158
+ 10 MCP frameworks supported. Your MCP server gets the right type, backend, and framework sub-type automatically:
159
+
160
+ ```yaml
161
+ project:
162
+ type: mcp
163
+ framework: fastmcp # or: mcp-sdk-ts, mcp-sdk-py, rmcp
164
+ stack:
165
+ backend: FastMCP # auto-filled from MCP SDK
166
+ api_type: MCP (stdio/SSE) # auto-filled
167
+ ```
168
+
169
+ ### Python & Rust Support
170
+
171
+ Project name and description read from `pyproject.toml` and `Cargo.toml` — not just `package.json`. Python deps (FastAPI, SQLAlchemy, Django) and Rust deps (rmcp, tokio) detected from manifests.
135
172
 
136
173
  ---
137
174
 
@@ -177,7 +214,7 @@ src/
177
214
  ## Testing
178
215
 
179
216
  ```bash
180
- bun test # 312 tests, 39 files, ~12s
217
+ bun test # 375 tests, 41 files, ~19s
181
218
  ```
182
219
 
183
220
  Full e2e lifecycle test runs every command in sequence: init → auto → score → edit → sync → export → compile → decompile → taf → recover → check. Test reports in `reports/`.