faf-mcp 1.0.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 +34 -0
- package/CLAUDE.md +73 -0
- package/LICENSE +22 -0
- package/README.md +165 -0
- package/assets/Project-faf-pckg-json-README.png +0 -0
- package/assets/icons/faf-icon-128.png +0 -0
- package/assets/icons/faf-icon-256.png +0 -0
- package/assets/icons/faf-icon-48.png +0 -0
- package/assets/icons/faf-icon-512.png +0 -0
- package/assets/icons/orange-smiley.svg +6 -0
- package/dist/src/compiler/index.d.ts +7 -0
- package/dist/src/compiler/index.js +24 -0
- package/dist/src/compiler/index.js.map +1 -0
- package/dist/src/compiler/scorer.d.ts +53 -0
- package/dist/src/compiler/scorer.js +189 -0
- package/dist/src/compiler/scorer.js.map +1 -0
- package/dist/src/compiler/slot-validator.d.ts +32 -0
- package/dist/src/compiler/slot-validator.js +293 -0
- package/dist/src/compiler/slot-validator.js.map +1 -0
- package/dist/src/compiler/type-detector.d.ts +62 -0
- package/dist/src/compiler/type-detector.js +388 -0
- package/dist/src/compiler/type-detector.js.map +1 -0
- package/dist/src/config/visibility.d.ts +41 -0
- package/dist/src/config/visibility.js +158 -0
- package/dist/src/config/visibility.js.map +1 -0
- package/dist/src/faf-core/commands/audit.d.ts +21 -0
- package/dist/src/faf-core/commands/audit.js +83 -0
- package/dist/src/faf-core/commands/audit.js.map +1 -0
- package/dist/src/faf-core/commands/auto.d.ts +25 -0
- package/dist/src/faf-core/commands/auto.js +74 -0
- package/dist/src/faf-core/commands/auto.js.map +1 -0
- package/dist/src/faf-core/commands/bi-sync.d.ts +26 -0
- package/dist/src/faf-core/commands/bi-sync.js +157 -0
- package/dist/src/faf-core/commands/bi-sync.js.map +1 -0
- package/dist/src/faf-core/commands/doctor.d.ts +17 -0
- package/dist/src/faf-core/commands/doctor.js +198 -0
- package/dist/src/faf-core/commands/doctor.js.map +1 -0
- package/dist/src/faf-core/commands/enhance.d.ts +46 -0
- package/dist/src/faf-core/commands/enhance.js +360 -0
- package/dist/src/faf-core/commands/enhance.js.map +1 -0
- package/dist/src/faf-core/commands/formats.d.ts +22 -0
- package/dist/src/faf-core/commands/formats.js +117 -0
- package/dist/src/faf-core/commands/formats.js.map +1 -0
- package/dist/src/faf-core/commands/init.d.ts +26 -0
- package/dist/src/faf-core/commands/init.js +114 -0
- package/dist/src/faf-core/commands/init.js.map +1 -0
- package/dist/src/faf-core/commands/innit.d.ts +7 -0
- package/dist/src/faf-core/commands/innit.js +13 -0
- package/dist/src/faf-core/commands/innit.js.map +1 -0
- package/dist/src/faf-core/commands/migrate.d.ts +15 -0
- package/dist/src/faf-core/commands/migrate.js +86 -0
- package/dist/src/faf-core/commands/migrate.js.map +1 -0
- package/dist/src/faf-core/commands/quick.d.ts +16 -0
- package/dist/src/faf-core/commands/quick.js +184 -0
- package/dist/src/faf-core/commands/quick.js.map +1 -0
- package/dist/src/faf-core/commands/score.d.ts +47 -0
- package/dist/src/faf-core/commands/score.js +49 -0
- package/dist/src/faf-core/commands/score.js.map +1 -0
- package/dist/src/faf-core/commands/sync.d.ts +16 -0
- package/dist/src/faf-core/commands/sync.js +210 -0
- package/dist/src/faf-core/commands/sync.js.map +1 -0
- package/dist/src/faf-core/commands/update.d.ts +12 -0
- package/dist/src/faf-core/commands/update.js +46 -0
- package/dist/src/faf-core/commands/update.js.map +1 -0
- package/dist/src/faf-core/commands/validate.d.ts +21 -0
- package/dist/src/faf-core/commands/validate.js +81 -0
- package/dist/src/faf-core/commands/validate.js.map +1 -0
- package/dist/src/faf-core/compiler/faf-compiler.d.ts +138 -0
- package/dist/src/faf-core/compiler/faf-compiler.js +794 -0
- package/dist/src/faf-core/compiler/faf-compiler.js.map +1 -0
- package/dist/src/faf-core/engines/dependency-tsa.d.ts +88 -0
- package/dist/src/faf-core/engines/dependency-tsa.js +361 -0
- package/dist/src/faf-core/engines/dependency-tsa.js.map +1 -0
- package/dist/src/faf-core/engines/fab-formats-processor.d.ts +166 -0
- package/dist/src/faf-core/engines/fab-formats-processor.js +1274 -0
- package/dist/src/faf-core/engines/fab-formats-processor.js.map +1 -0
- package/dist/src/faf-core/engines/faf-dna.d.ts +159 -0
- package/dist/src/faf-core/engines/faf-dna.js +554 -0
- package/dist/src/faf-core/engines/faf-dna.js.map +1 -0
- package/dist/src/faf-core/engines/relentless-context-extractor.d.ts +100 -0
- package/dist/src/faf-core/engines/relentless-context-extractor.js +625 -0
- package/dist/src/faf-core/engines/relentless-context-extractor.js.map +1 -0
- package/dist/src/faf-core/fix-once/colors.d.ts +104 -0
- package/dist/src/faf-core/fix-once/colors.js +236 -0
- package/dist/src/faf-core/fix-once/colors.js.map +1 -0
- package/dist/src/faf-core/fix-once/types.d.ts +257 -0
- package/dist/src/faf-core/fix-once/types.js +26 -0
- package/dist/src/faf-core/fix-once/types.js.map +1 -0
- package/dist/src/faf-core/fix-once/yaml.d.ts +57 -0
- package/dist/src/faf-core/fix-once/yaml.js +172 -0
- package/dist/src/faf-core/fix-once/yaml.js.map +1 -0
- package/dist/src/faf-core/generators/faf-generator-championship.d.ts +16 -0
- package/dist/src/faf-core/generators/faf-generator-championship.js +462 -0
- package/dist/src/faf-core/generators/faf-generator-championship.js.map +1 -0
- package/dist/src/faf-core/utils/balance-visualizer.d.ts +37 -0
- package/dist/src/faf-core/utils/balance-visualizer.js +197 -0
- package/dist/src/faf-core/utils/balance-visualizer.js.map +1 -0
- package/dist/src/faf-core/utils/championship-style.d.ts +109 -0
- package/dist/src/faf-core/utils/championship-style.js +219 -0
- package/dist/src/faf-core/utils/championship-style.js.map +1 -0
- package/dist/src/faf-core/utils/chrome-extension-detector.d.ts +73 -0
- package/dist/src/faf-core/utils/chrome-extension-detector.js +268 -0
- package/dist/src/faf-core/utils/chrome-extension-detector.js.map +1 -0
- package/dist/src/faf-core/utils/fafignore-parser.d.ts +20 -0
- package/dist/src/faf-core/utils/fafignore-parser.js +178 -0
- package/dist/src/faf-core/utils/fafignore-parser.js.map +1 -0
- package/dist/src/faf-core/utils/file-utils.d.ts +112 -0
- package/dist/src/faf-core/utils/file-utils.js +846 -0
- package/dist/src/faf-core/utils/file-utils.js.map +1 -0
- package/dist/src/faf-core/utils/native-file-finder.d.ts +115 -0
- package/dist/src/faf-core/utils/native-file-finder.js +211 -0
- package/dist/src/faf-core/utils/native-file-finder.js.map +1 -0
- package/dist/src/faf-core/utils/platform-detector.d.ts +30 -0
- package/dist/src/faf-core/utils/platform-detector.js +218 -0
- package/dist/src/faf-core/utils/platform-detector.js.map +1 -0
- package/dist/src/faf-core/utils/technical-credit.d.ts +35 -0
- package/dist/src/faf-core/utils/technical-credit.js +286 -0
- package/dist/src/faf-core/utils/technical-credit.js.map +1 -0
- package/dist/src/faf-core/utils/yaml-generator.d.ts +41 -0
- package/dist/src/faf-core/utils/yaml-generator.js +360 -0
- package/dist/src/faf-core/utils/yaml-generator.js.map +1 -0
- package/dist/src/handlers/behavioral-instruction.d.ts +16 -0
- package/dist/src/handlers/behavioral-instruction.js +43 -0
- package/dist/src/handlers/behavioral-instruction.js.map +1 -0
- package/dist/src/handlers/championship-tools.d.ts +113 -0
- package/dist/src/handlers/championship-tools.js +2602 -0
- package/dist/src/handlers/championship-tools.js.map +1 -0
- package/dist/src/handlers/engine-adapter.d.ts +28 -0
- package/dist/src/handlers/engine-adapter.js +603 -0
- package/dist/src/handlers/engine-adapter.js.map +1 -0
- package/dist/src/handlers/fileHandler.d.ts +36 -0
- package/dist/src/handlers/fileHandler.js +246 -0
- package/dist/src/handlers/fileHandler.js.map +1 -0
- package/dist/src/handlers/resources.d.ts +18 -0
- package/dist/src/handlers/resources.js +78 -0
- package/dist/src/handlers/resources.js.map +1 -0
- package/dist/src/handlers/tool-registry.d.ts +23 -0
- package/dist/src/handlers/tool-registry.js +68 -0
- package/dist/src/handlers/tool-registry.js.map +1 -0
- package/dist/src/handlers/tool-types.d.ts +167 -0
- package/dist/src/handlers/tool-types.js +7 -0
- package/dist/src/handlers/tool-types.js.map +1 -0
- package/dist/src/handlers/tools.d.ts +25 -0
- package/dist/src/handlers/tools.js +1168 -0
- package/dist/src/handlers/tools.js.map +1 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.js +17 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/server.d.ts +28 -0
- package/dist/src/server.js +179 -0
- package/dist/src/server.js.map +1 -0
- package/dist/src/test-all-functions.d.ts +15 -0
- package/dist/src/test-all-functions.js +163 -0
- package/dist/src/test-all-functions.js.map +1 -0
- package/dist/src/types/mcp-tools.d.ts +53 -0
- package/dist/src/types/mcp-tools.js +77 -0
- package/dist/src/types/mcp-tools.js.map +1 -0
- package/dist/src/types/project-types.d.ts +22 -0
- package/dist/src/types/project-types.js +85 -0
- package/dist/src/types/project-types.js.map +1 -0
- package/dist/src/types/slots.d.ts +39 -0
- package/dist/src/types/slots.js +162 -0
- package/dist/src/types/slots.js.map +1 -0
- package/dist/src/types/tool-visibility.d.ts +36 -0
- package/dist/src/types/tool-visibility.js +510 -0
- package/dist/src/types/tool-visibility.js.map +1 -0
- package/dist/src/utils/auto-path-detection.d.ts +26 -0
- package/dist/src/utils/auto-path-detection.js +198 -0
- package/dist/src/utils/auto-path-detection.js.map +1 -0
- package/dist/src/utils/championship-format.d.ts +30 -0
- package/dist/src/utils/championship-format.js +79 -0
- package/dist/src/utils/championship-format.js.map +1 -0
- package/dist/src/utils/cli-detector.d.ts +20 -0
- package/dist/src/utils/cli-detector.js +230 -0
- package/dist/src/utils/cli-detector.js.map +1 -0
- package/dist/src/utils/display-protocol.d.ts +57 -0
- package/dist/src/utils/display-protocol.js +131 -0
- package/dist/src/utils/display-protocol.js.map +1 -0
- package/dist/src/utils/faf-file-finder.d.ts +59 -0
- package/dist/src/utils/faf-file-finder.js +139 -0
- package/dist/src/utils/faf-file-finder.js.map +1 -0
- package/dist/src/utils/fuzzy-detector.d.ts +56 -0
- package/dist/src/utils/fuzzy-detector.js +221 -0
- package/dist/src/utils/fuzzy-detector.js.map +1 -0
- package/dist/src/utils/path-resolver.d.ts +51 -0
- package/dist/src/utils/path-resolver.js +214 -0
- package/dist/src/utils/path-resolver.js.map +1 -0
- package/dist/src/utils/type-guards.d.ts +9 -0
- package/dist/src/utils/type-guards.js +27 -0
- package/dist/src/utils/type-guards.js.map +1 -0
- package/dist/src/utils/username-detector.d.ts +27 -0
- package/dist/src/utils/username-detector.js +90 -0
- package/dist/src/utils/username-detector.js.map +1 -0
- package/dist/src/utils/visual-style.d.ts +62 -0
- package/dist/src/utils/visual-style.js +164 -0
- package/dist/src/utils/visual-style.js.map +1 -0
- package/dist/src/version.d.ts +9 -0
- package/dist/src/version.js +37 -0
- package/dist/src/version.js.map +1 -0
- package/package.json +114 -0
- package/scripts/discord-sync-curated.js +233 -0
- package/scripts/discord-sync-final.js +218 -0
- package/scripts/discord-sync-simple.js +175 -0
- package/scripts/discord-sync-working.js +187 -0
- package/scripts/discord-sync.js +181 -0
- package/scripts/postinstall.js +46 -0
- package/skill/SKILL.md +385 -0
package/skill/SKILL.md
ADDED
|
@@ -0,0 +1,385 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: faf-expert
|
|
3
|
+
description: Expert in .faf (Foundational AI-context Format) files for persistent project context. Use when working with .faf files, project DNA, CLAUDE.md bi-sync, faf-cli commands, MCP server configuration, or AI-readiness scoring (0-100%). Updated for v2.8.0 Tool Visibility System.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# FAF Expert - Project DNA Specialist
|
|
7
|
+
|
|
8
|
+
## What is .faf?
|
|
9
|
+
|
|
10
|
+
`.faf` is the universal format for persistent AI project context - "Project DNA ✨ for ANY AI".
|
|
11
|
+
|
|
12
|
+
**Core Concepts:**
|
|
13
|
+
- **Foundational AI-context Format** - YAML-based project context file
|
|
14
|
+
- **Persistent Context** - Survives across sessions, tools, and AI assistants
|
|
15
|
+
- **Universal** - Works with Claude, ChatGPT, Gemini, Cursor, any AI
|
|
16
|
+
- **Measurable** - Championship scoring system (0-100% AI-readiness)
|
|
17
|
+
- **Official Anthropic MCP Steward** - PR #2759 MERGED
|
|
18
|
+
|
|
19
|
+
## When to Use This Skill
|
|
20
|
+
|
|
21
|
+
Activate this skill when:
|
|
22
|
+
- Creating or updating `.faf` files
|
|
23
|
+
- Working with `CLAUDE.md` files
|
|
24
|
+
- Running `faf` CLI commands (init, auto, score, formats, bi-sync)
|
|
25
|
+
- Scoring project AI-readiness
|
|
26
|
+
- Setting up MCP server (claude-faf-mcp)
|
|
27
|
+
- Configuring tool visibility (v2.8.0+)
|
|
28
|
+
- Discussing project context or documentation
|
|
29
|
+
|
|
30
|
+
## Key Files
|
|
31
|
+
|
|
32
|
+
- **`.faf`** - YAML format, machine-readable project context
|
|
33
|
+
- **`CLAUDE.md`** - Markdown format, human-readable project guide
|
|
34
|
+
- **Bi-Sync** - `.faf ↔ CLAUDE.md` kept in sync automatically
|
|
35
|
+
- **`project.faf`** - v1.2.0 standard naming
|
|
36
|
+
|
|
37
|
+
## Common Commands
|
|
38
|
+
|
|
39
|
+
### faf-cli Commands
|
|
40
|
+
```bash
|
|
41
|
+
faf init # Create .faf from project
|
|
42
|
+
faf auto # Auto-detect stack and create .faf
|
|
43
|
+
faf score # Rate AI-readiness (0-100%)
|
|
44
|
+
faf formats # List 153+ supported formats
|
|
45
|
+
faf bi-sync # Sync .faf ↔ CLAUDE.md
|
|
46
|
+
faf status # Check project AI-readiness
|
|
47
|
+
faf validate # Validate .faf structure
|
|
48
|
+
faf doctor # Diagnose and fix issues
|
|
49
|
+
faf migrate # Migrate to latest format
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### MCP Tools (claude-faf-mcp v2.8.0+)
|
|
53
|
+
|
|
54
|
+
**v2.8.0 introduces Tool Visibility System:**
|
|
55
|
+
- **21 Core Tools** (default) - Essential workflow
|
|
56
|
+
- **51 Total Tools** (opt-in) - All features
|
|
57
|
+
|
|
58
|
+
**Configuration:**
|
|
59
|
+
```json
|
|
60
|
+
{
|
|
61
|
+
"mcpServers": {
|
|
62
|
+
"faf": {
|
|
63
|
+
"command": "npx",
|
|
64
|
+
"args": ["-y", "claude-faf-mcp@2.8.0"],
|
|
65
|
+
"env": {
|
|
66
|
+
"FAF_MCP_SHOW_ADVANCED": "false"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
**Core Tools (21):**
|
|
74
|
+
- Essential Workflow: `faf`, `faf_auto`, `faf_init`, `faf_innit`, `faf_status`
|
|
75
|
+
- Quality: `faf_score`, `faf_validate`, `faf_doctor`, `faf_audit`
|
|
76
|
+
- Intelligence: `faf_formats`, `faf_stacks`, `faf_skills`
|
|
77
|
+
- Sync: `faf_sync`, `faf_bi_sync`, `faf_update`, `faf_migrate`
|
|
78
|
+
- AI: `faf_chat`, `faf_enhance`
|
|
79
|
+
- Help: `faf_index`, `faf_faq`, `faf_about`
|
|
80
|
+
|
|
81
|
+
**Advanced Tools (30+):**
|
|
82
|
+
Set `FAF_MCP_SHOW_ADVANCED: "true"` to enable:
|
|
83
|
+
- Display variants: `faf_display`, `faf_show`, `faf_check`
|
|
84
|
+
- Trust system: `faf_trust`, `faf_trust_confidence`, `faf_trust_garage`
|
|
85
|
+
- File operations: `faf_read`, `faf_write`, `faf_list`, `faf_exists`, etc.
|
|
86
|
+
- DNA tracking: `faf_dna`, `faf_log`, `faf_auth`, `faf_recover`
|
|
87
|
+
- Utilities: `faf_choose`, `faf_clear`, `faf_share`, `faf_credit`
|
|
88
|
+
|
|
89
|
+
## AI-Readiness Scoring
|
|
90
|
+
|
|
91
|
+
**Championship Tiers:**
|
|
92
|
+
- 🏆 **95-100%** - Championship (Gold)
|
|
93
|
+
- 🥇 **85-94%** - Podium (Silver)
|
|
94
|
+
- 🥈 **70-84%** - Points (Bronze)
|
|
95
|
+
- 🥉 **55-69%** - Midfield
|
|
96
|
+
- 🟢 **40-54%** - Backmarker
|
|
97
|
+
- 🟡 **25-39%** - Struggling
|
|
98
|
+
- 🔴 **10-24%** - Critical
|
|
99
|
+
- 🤍 **0-9%** - DNF (Did Not Finish)
|
|
100
|
+
|
|
101
|
+
**Target:** 85%+ for production projects
|
|
102
|
+
|
|
103
|
+
## .faf File Structure
|
|
104
|
+
|
|
105
|
+
```yaml
|
|
106
|
+
# Basic .faf structure
|
|
107
|
+
format: typescript-nextjs
|
|
108
|
+
language: typescript
|
|
109
|
+
framework: nextjs
|
|
110
|
+
version: "14.0.0"
|
|
111
|
+
|
|
112
|
+
structure:
|
|
113
|
+
- src/
|
|
114
|
+
- components/
|
|
115
|
+
- pages/
|
|
116
|
+
|
|
117
|
+
dependencies:
|
|
118
|
+
react: "^18.0.0"
|
|
119
|
+
next: "^14.0.0"
|
|
120
|
+
|
|
121
|
+
testing: jest
|
|
122
|
+
deployment: vercel
|
|
123
|
+
|
|
124
|
+
# v1.2.0+ additions
|
|
125
|
+
project_name: "My Project"
|
|
126
|
+
ai_readiness_score: 87
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
## Best Practices
|
|
130
|
+
|
|
131
|
+
1. **Start with `faf auto`** - Let it detect your stack
|
|
132
|
+
2. **Review and refine** - Auto-detection is 85% accurate, tweak as needed
|
|
133
|
+
3. **Run `faf score`** - Target 85%+ for championship context
|
|
134
|
+
4. **Use `faf bi-sync`** - Keep .faf and CLAUDE.md in sync
|
|
135
|
+
5. **Update regularly** - As project evolves, update context
|
|
136
|
+
6. **Use core tools first** - Advanced tools are opt-in for specific needs
|
|
137
|
+
|
|
138
|
+
## The FAF Family
|
|
139
|
+
|
|
140
|
+
**6 Championship Integrations:**
|
|
141
|
+
- React (20M/week npm downloads) 🏆
|
|
142
|
+
- TypeScript (40M/week) 🏆
|
|
143
|
+
- Next.js (5M/week) 🏆
|
|
144
|
+
- Vite (9M/week) 🥇
|
|
145
|
+
- Svelte (400K/week) 🥇
|
|
146
|
+
- n8n (401K/week - TURBO only) 🥇
|
|
147
|
+
|
|
148
|
+
## Installation
|
|
149
|
+
|
|
150
|
+
### faf-cli (npm)
|
|
151
|
+
```bash
|
|
152
|
+
npm install -g faf-cli
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
### faf-cli (Homebrew)
|
|
156
|
+
```bash
|
|
157
|
+
brew install faf-cli
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
### claude-faf-mcp (MCP Server)
|
|
161
|
+
Add to `~/Library/Application Support/Claude/claude_desktop_config.json`:
|
|
162
|
+
```json
|
|
163
|
+
{
|
|
164
|
+
"mcpServers": {
|
|
165
|
+
"faf": {
|
|
166
|
+
"command": "npx",
|
|
167
|
+
"args": ["-y", "claude-faf-mcp@latest"]
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
**For advanced tools:**
|
|
174
|
+
```json
|
|
175
|
+
{
|
|
176
|
+
"mcpServers": {
|
|
177
|
+
"faf": {
|
|
178
|
+
"command": "npx",
|
|
179
|
+
"args": ["-y", "claude-faf-mcp@latest"],
|
|
180
|
+
"env": {
|
|
181
|
+
"FAF_MCP_SHOW_ADVANCED": "true"
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
## v2.8.0 Tool Visibility System
|
|
189
|
+
|
|
190
|
+
**Problem Solved:** Reduced cognitive load from 51 tools to 21 core tools.
|
|
191
|
+
|
|
192
|
+
**How It Works:**
|
|
193
|
+
- **Default:** Shows 21 essential tools
|
|
194
|
+
- **Opt-in:** Enable all 51 tools via environment variable
|
|
195
|
+
- **Smart Filtering:** Tools categorized by purpose
|
|
196
|
+
- **Backward Compatible:** Existing setups continue working
|
|
197
|
+
|
|
198
|
+
**Categories:**
|
|
199
|
+
- `workflow` - Essential commands
|
|
200
|
+
- `quality` - Scoring and validation
|
|
201
|
+
- `intelligence` - Format/stack detection
|
|
202
|
+
- `sync` - Context synchronization
|
|
203
|
+
- `ai` - AI enhancement features
|
|
204
|
+
- `help` - Documentation
|
|
205
|
+
- `trust` - Trust validation
|
|
206
|
+
- `file` - File operations
|
|
207
|
+
- `utility` - Misc tools
|
|
208
|
+
|
|
209
|
+
**Configuration Priority:**
|
|
210
|
+
1. Environment variable (`FAF_MCP_SHOW_ADVANCED`)
|
|
211
|
+
2. Config file (`~/.fafrc`)
|
|
212
|
+
3. Default (core only)
|
|
213
|
+
|
|
214
|
+
## Philosophy
|
|
215
|
+
|
|
216
|
+
**The Noodle Philosophy 🍜**
|
|
217
|
+
- YAML noodles for AI (machine-readable)
|
|
218
|
+
- Converts to markdown/TXT for humans (human-readable)
|
|
219
|
+
- Interconnected context, not flat data
|
|
220
|
+
|
|
221
|
+
**Format-First**
|
|
222
|
+
- The format is the foundation
|
|
223
|
+
- Without .faf, there is no universal context
|
|
224
|
+
- Format-driven architecture
|
|
225
|
+
|
|
226
|
+
**Official Stewardship**
|
|
227
|
+
- Anthropic-approved MCP server (PR #2759 MERGED)
|
|
228
|
+
- Account Managers for all things .FAF in Anthropic ecosystem
|
|
229
|
+
- Governance responsibility for format specification
|
|
230
|
+
|
|
231
|
+
## Brand Values
|
|
232
|
+
|
|
233
|
+
- **NO BS ZONE** - Only real stats, verified claims
|
|
234
|
+
- **Championship Standards** - <50ms performance, 1,000+ tests
|
|
235
|
+
- **Free Forever** - MIT license, open source
|
|
236
|
+
- **Trust is Everything** - Built on credibility
|
|
237
|
+
- **Professional, Boring, Trusted** - F1-grade engineering
|
|
238
|
+
|
|
239
|
+
## Stats (Real, Verified - November 2025)
|
|
240
|
+
|
|
241
|
+
- **11,000+ total downloads** (CLI + MCP combined)
|
|
242
|
+
- **5,000+ MCP downloads** (weekly: 800+)
|
|
243
|
+
- **6,000+ CLI downloads**
|
|
244
|
+
- **79 tests passing** (57 MCP + 22 visibility)
|
|
245
|
+
- **153+ formats validated** (TURBO-CAT engine)
|
|
246
|
+
- **<10ms tool filtering** (5x better than 50ms target)
|
|
247
|
+
- **Zero regressions** in v2.8.0 release
|
|
248
|
+
- **WJTTC Gold Certified** - F1-inspired testing standards
|
|
249
|
+
- **Anthropic-approved** MCP server (Official steward)
|
|
250
|
+
|
|
251
|
+
## Version History
|
|
252
|
+
|
|
253
|
+
- **v3.1.1** - faf-cli latest
|
|
254
|
+
- **v2.8.0** - MCP Tool Visibility System (CURRENT)
|
|
255
|
+
- **v2.7.3** - Previous MCP stable
|
|
256
|
+
- **v1.2.0** - project.faf standard naming
|
|
257
|
+
|
|
258
|
+
## Resources
|
|
259
|
+
|
|
260
|
+
- **Website:** https://faf.one
|
|
261
|
+
- **CLI npm:** https://npmjs.com/package/faf-cli
|
|
262
|
+
- **MCP npm:** https://npmjs.com/package/claude-faf-mcp
|
|
263
|
+
- **GitHub:** https://github.com/Wolfe-Jam/faf-cli
|
|
264
|
+
- **Homebrew:** `brew install faf-cli`
|
|
265
|
+
- **Chrome Extension:** Chrome Web Store (Google approved)
|
|
266
|
+
|
|
267
|
+
## Testing Standards
|
|
268
|
+
|
|
269
|
+
**WJTTC (WolfeJam Technical & Testing Center)**
|
|
270
|
+
- F1-Inspired testing methodology
|
|
271
|
+
- 3 Tiers: Brake Systems, Engine Systems, Aerodynamics
|
|
272
|
+
- Philosophy: "We break things so others never have to know they were broken"
|
|
273
|
+
- All tests reported and documented
|
|
274
|
+
- Gold certification for production releases
|
|
275
|
+
|
|
276
|
+
## Troubleshooting
|
|
277
|
+
|
|
278
|
+
### MCP Server Not Loading
|
|
279
|
+
```bash
|
|
280
|
+
# Check logs
|
|
281
|
+
tail -f ~/Library/Logs/Claude/mcp-server-claude-faf-mcp.log
|
|
282
|
+
|
|
283
|
+
# Verify config
|
|
284
|
+
cat ~/Library/Application\ Support/Claude/claude_desktop_config.json
|
|
285
|
+
|
|
286
|
+
# Test locally
|
|
287
|
+
node /path/to/claude-faf-mcp/dist/src/index.js
|
|
288
|
+
```
|
|
289
|
+
|
|
290
|
+
### Tool Count Verification
|
|
291
|
+
```bash
|
|
292
|
+
# Should show 21 core tools (default)
|
|
293
|
+
# Or 51 tools (advanced mode)
|
|
294
|
+
# Check console output when MCP loads
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
### CLI Not Found
|
|
298
|
+
```bash
|
|
299
|
+
# Install globally
|
|
300
|
+
npm install -g faf-cli
|
|
301
|
+
|
|
302
|
+
# Or via Homebrew
|
|
303
|
+
brew install faf-cli
|
|
304
|
+
|
|
305
|
+
# Verify installation
|
|
306
|
+
faf --version
|
|
307
|
+
```
|
|
308
|
+
|
|
309
|
+
## Advanced Usage
|
|
310
|
+
|
|
311
|
+
### Custom Config File
|
|
312
|
+
Create `~/.fafrc`:
|
|
313
|
+
```json
|
|
314
|
+
{
|
|
315
|
+
"showAdvanced": true
|
|
316
|
+
}
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
Or key=value format:
|
|
320
|
+
```
|
|
321
|
+
FAF_SHOW_ADVANCED=true
|
|
322
|
+
```
|
|
323
|
+
|
|
324
|
+
### Local Development
|
|
325
|
+
```bash
|
|
326
|
+
# Use local build
|
|
327
|
+
{
|
|
328
|
+
"mcpServers": {
|
|
329
|
+
"faf": {
|
|
330
|
+
"command": "node",
|
|
331
|
+
"args": ["/path/to/claude-faf-mcp/dist/src/index.js"],
|
|
332
|
+
"env": {
|
|
333
|
+
"FAF_MCP_SHOW_ADVANCED": "false"
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
---
|
|
341
|
+
|
|
342
|
+
## Skill Control
|
|
343
|
+
|
|
344
|
+
**To disable this skill temporarily:**
|
|
345
|
+
```bash
|
|
346
|
+
# Rename directory to disable
|
|
347
|
+
mv ~/.claude/skills/faf-expert ~/.claude/skills/faf-expert.disabled
|
|
348
|
+
```
|
|
349
|
+
|
|
350
|
+
**To re-enable:**
|
|
351
|
+
```bash
|
|
352
|
+
# Rename back to enable
|
|
353
|
+
mv ~/.claude/skills/faf-expert.disabled ~/.claude/skills/faf-expert
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
**Or just delete the directory to remove completely.**
|
|
357
|
+
|
|
358
|
+
---
|
|
359
|
+
|
|
360
|
+
## How to Get This Skill
|
|
361
|
+
|
|
362
|
+
**Option 1: Manual Installation**
|
|
363
|
+
1. Copy this SKILL.md file
|
|
364
|
+
2. Create directory: `~/.claude/skills/faf-expert/`
|
|
365
|
+
3. Save as: `~/.claude/skills/faf-expert/SKILL.md`
|
|
366
|
+
4. Restart Claude Code
|
|
367
|
+
|
|
368
|
+
**Option 2: Git Clone (if published)**
|
|
369
|
+
```bash
|
|
370
|
+
# Coming soon - published skills repository
|
|
371
|
+
git clone [skills-repo] ~/.claude/skills/faf-expert
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
**Option 3: From FAF CLI (future)**
|
|
375
|
+
```bash
|
|
376
|
+
# Planned feature
|
|
377
|
+
faf skill install faf-expert
|
|
378
|
+
```
|
|
379
|
+
|
|
380
|
+
---
|
|
381
|
+
|
|
382
|
+
*Made with 🧡 by wolfejam.dev*
|
|
383
|
+
*Official Anthropic MCP Steward*
|
|
384
|
+
*Championship Edition v2.8.0* 🏎️✨
|
|
385
|
+
*IANA-Registered Format: application/vnd.faf+yaml*
|