faf 1.0.1 → 1.0.3
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 +5 -1
- package/bin/faf.js +14 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -13,8 +13,10 @@ npm install -g faf
|
|
|
13
13
|
## Usage
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
+
faf # Auto-detect your project, create .faf, score it
|
|
16
17
|
faf init # Initialize .faf from your project
|
|
17
18
|
faf auto # Zero-to-context instantly
|
|
19
|
+
faf go # Guided interview to 100%
|
|
18
20
|
faf bi-sync # Keep .faf and CLAUDE.md in sync
|
|
19
21
|
```
|
|
20
22
|
|
|
@@ -27,6 +29,8 @@ FAF encapsulates project goals, stack, rules, and architecture in a structured Y
|
|
|
27
29
|
- **faf-cli** - CLI toolchain (this package wraps it)
|
|
28
30
|
- **claude-faf-mcp** - Official Anthropic MCP integration
|
|
29
31
|
- **faf-mcp** - MCP server implementation
|
|
32
|
+
- **grok-faf-mcp** - xAI Grok MCP server
|
|
33
|
+
- **gemini-faf-mcp** - Google Gemini MCP server
|
|
30
34
|
|
|
31
35
|
## Links
|
|
32
36
|
|
|
@@ -36,7 +40,7 @@ FAF encapsulates project goals, stack, rules, and architecture in a structured Y
|
|
|
36
40
|
|
|
37
41
|
## Downloads
|
|
38
42
|
|
|
39
|
-
|
|
43
|
+
50,000+ downloads across the FAF ecosystem.
|
|
40
44
|
|
|
41
45
|
## License
|
|
42
46
|
|
package/bin/faf.js
CHANGED
|
@@ -4,11 +4,22 @@
|
|
|
4
4
|
* FAF - Foundational AI-context Format
|
|
5
5
|
* IANA-registered: application/vnd.faf+yaml
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* Passes through to faf-cli's CLI entry point.
|
|
8
8
|
* Install: npm install -g faf
|
|
9
|
-
* Usage: faf init | faf auto | faf
|
|
9
|
+
* Usage: faf | faf init | faf auto | faf go
|
|
10
10
|
*
|
|
11
11
|
* https://faf.one
|
|
12
12
|
*/
|
|
13
13
|
|
|
14
|
-
require('
|
|
14
|
+
const { execFileSync } = require('child_process');
|
|
15
|
+
const path = require('path');
|
|
16
|
+
|
|
17
|
+
// Resolve faf-cli's main, then swap index.js for cli.js
|
|
18
|
+
const mainEntry = require.resolve('faf-cli');
|
|
19
|
+
const cliEntry = path.join(path.dirname(mainEntry), 'cli.js');
|
|
20
|
+
|
|
21
|
+
try {
|
|
22
|
+
execFileSync(process.execPath, [cliEntry, ...process.argv.slice(2)], { stdio: 'inherit' });
|
|
23
|
+
} catch (e) {
|
|
24
|
+
process.exit(e.status || 1);
|
|
25
|
+
}
|