citadel-ai 1.4.2 → 1.5.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/README.fr.md +233 -0
- package/README.md +17 -4
- package/dist/cli/ide-rules.js +36 -1
- package/dist/cli/ide-rules.js.map +1 -1
- package/dist/cli/init.js +108 -3
- package/dist/cli/init.js.map +1 -1
- package/package.json +3 -2
package/README.fr.md
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
# 🏰 CITADEL
|
|
2
|
+
|
|
3
|
+
**Tu vibecodes. Ta démo marche. Mais est-ce que ton projet repose sur du sable ?**
|
|
4
|
+
|
|
5
|
+
CITADEL aide les vibe coders sérieux à construire avec de la structure, de la mémoire et de la review — pour que leur MVP ne s'effondre pas sous les erreurs cachées.
|
|
6
|
+
|
|
7
|
+
[](https://www.npmjs.com/package/citadel-ai)
|
|
8
|
+
[](https://opensource.org/licenses/MIT)
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npx citadel-ai init
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Fonctionne avec **Claude Code** · **Cursor** · **Antigravity** · **Windsurf**
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## C'est pour toi ?
|
|
19
|
+
|
|
20
|
+
### CITADEL est fait pour
|
|
21
|
+
|
|
22
|
+
- Les solo founders qui construisent leur MVP avec l'IA
|
|
23
|
+
- Les opérationnels et PMs qui vibecodent des outils internes
|
|
24
|
+
- Les growth builders qui shippent vite sans équipe dev dédiée
|
|
25
|
+
- Les développeurs non-traditionnels qui veulent des garde-fous, pas du gatekeeping
|
|
26
|
+
|
|
27
|
+
### CITADEL n'est PAS fait pour
|
|
28
|
+
|
|
29
|
+
- Ceux qui cherchent des prompts one-shot
|
|
30
|
+
- Les devs seniors qui ont déjà une discipline d'architecture solide
|
|
31
|
+
- Les équipes qui ont besoin d'une plateforme CI/CD de production
|
|
32
|
+
- Les débutants complets qui n'ont jamais rien construit avec l'IA
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## Le problème
|
|
37
|
+
|
|
38
|
+
Quand tu vibecodes sans structure :
|
|
39
|
+
|
|
40
|
+
- L'IA skip l'architecture — elle génère du code qui marche aujourd'hui et casse demain
|
|
41
|
+
- Personne ne review — le builder valide son propre travail (et rate ses propres erreurs)
|
|
42
|
+
- Le contexte se perd — l'IA oublie ce qui a été décidé 3 messages plus tôt
|
|
43
|
+
- Aucun standard — code spaghetti, magic numbers, business logic partout
|
|
44
|
+
- La sécurité est un afterthought — auth, encryption, compliance arrivent "plus tard" (jamais)
|
|
45
|
+
|
|
46
|
+
Tu te retrouves avec un prototype qui démo bien et qui s'effondre en utilisation réelle.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Ce que CITADEL fait
|
|
51
|
+
|
|
52
|
+
CITADEL installe une couche de gouvernance dans ton IDE IA. Il ne remplace pas ton IA — il la fait travailler comme une équipe disciplinée au lieu d'un improvisateur solo.
|
|
53
|
+
|
|
54
|
+
**Force la réflexion stratégique d'abord.** Avant tout code, un C-Suite virtuel pose des questions sur ton produit, ton architecture, la sécurité, les données et la croissance. Tu réponds. Ensuite les specs sont rédigées. Pas l'inverse.
|
|
55
|
+
|
|
56
|
+
**Sépare la construction de la review.** L'agent qui écrit le code n'est jamais celui qui le review. Comme dans toute organisation d'ingénierie sérieuse.
|
|
57
|
+
|
|
58
|
+
**Impose des checks de sécurité avant le shipping.** 5 gates obligatoires de l'inception au déploiement. La sécurité a un droit de veto — sans exception.
|
|
59
|
+
|
|
60
|
+
**Garde la mémoire du projet entre les sessions.** Décisions, erreurs, choix d'architecture — tout est persisté localement. L'IA ne repart pas de zéro à chaque fois.
|
|
61
|
+
|
|
62
|
+
**Charge uniquement ce qui est nécessaire.** Au lieu de charger les 42 profils d'agents en contexte (et de cramer ton quota de tokens), CITADEL ne charge que l'équipe pertinente pour la phase en cours. 88% de tokens en moins.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## Sans CITADEL / Avec CITADEL
|
|
67
|
+
|
|
68
|
+
| | Sans | Avec CITADEL |
|
|
69
|
+
|--|------|-------------|
|
|
70
|
+
| Démarrage | "Fais-moi une app" → l'IA fonce dans le code | Le C-Suite demande : c'est pour qui ? quelles données ? quelle sécurité ? |
|
|
71
|
+
| Architecture | Ce que l'IA décide sur le moment | ADR explicite, reviewé par un agent architecture dédié |
|
|
72
|
+
| Qualité du code | On espère que ça tient | Standards enforcés : 200 lignes/fichier, erreurs typées, pas de magic numbers |
|
|
73
|
+
| Review | Tu relis toi-même (et tu rates des trucs) | Agents checkers indépendants avec une perspective différente |
|
|
74
|
+
| Sécurité | "On ajoutera l'auth plus tard" | Review sécurité à chaque gate. Droit de veto sur le déploiement |
|
|
75
|
+
| Session suivante | L'IA a tout oublié | La mémoire persiste décisions, erreurs et contexte projet |
|
|
76
|
+
| Consommation tokens | Contexte complet à chaque message (~14K tokens) | Chargement par phase (~1 800 tokens par phase) |
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
## Comment ça marche — 5 étapes
|
|
81
|
+
|
|
82
|
+
### Étape 1 : Clarifier ce que tu construis
|
|
83
|
+
Le C-Suite (produit, architecture, sécurité, données, croissance) pose des questions avant que quoi que ce soit ne soit rédigé.
|
|
84
|
+
|
|
85
|
+
### Étape 2 : Verrouiller la stratégie
|
|
86
|
+
PRD, décisions d'architecture, exigences sécurité, modèle de données — tout écrit dans `.citadel/specs/` après tes réponses.
|
|
87
|
+
|
|
88
|
+
### Étape 3 : Construire avec séparation des rôles
|
|
89
|
+
Des agents makers spécialisés construisent par domaine (backend, frontend, mobile, API, auth, data). Chacun suit des standards de code stricts.
|
|
90
|
+
|
|
91
|
+
### Étape 4 : Reviewer avant de shipper
|
|
92
|
+
Des agents checkers indépendants valident la qualité du code, les tests, la performance, la sécurité, l'accessibilité. Builder ≠ reviewer — toujours.
|
|
93
|
+
|
|
94
|
+
### Étape 5 : Shipper avec mémoire
|
|
95
|
+
Décisions, erreurs et contexte persistent dans `.citadel/memory/`. La session suivante reprend là où tu t'es arrêté.
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## Démarrage rapide
|
|
100
|
+
|
|
101
|
+
### Option 1 : Copie-colle dans ton chat IA (le plus simple)
|
|
102
|
+
|
|
103
|
+
Ouvre ton IDE IA (Cursor, Antigravity, Claude Code, Windsurf) et colle ça :
|
|
104
|
+
|
|
105
|
+
```
|
|
106
|
+
Lance cette commande dans le terminal : npx citadel-ai init
|
|
107
|
+
Puis lis le fichier CLAUDE.md ou GEMINI.md qui a été créé et suis ses instructions.
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
Ton IA fait le reste. Décris ce que tu veux construire.
|
|
111
|
+
|
|
112
|
+
### Option 2 : Une commande dans le terminal
|
|
113
|
+
|
|
114
|
+
Ouvre le terminal dans ton IDE (appuie sur `` Ctrl+` `` dans la plupart des IDEs) et tape :
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
npx citadel-ai init
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
Retourne dans ton chat IA et commence à parler.
|
|
121
|
+
|
|
122
|
+
### Jamais utilisé un terminal ?
|
|
123
|
+
|
|
124
|
+
Voir [GETTING-STARTED.md](GETTING-STARTED.md) — un guide pas-à-pas sans aucun prérequis.
|
|
125
|
+
|
|
126
|
+
---
|
|
127
|
+
|
|
128
|
+
## Ce qui est installé
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
ton-projet/
|
|
132
|
+
├── CLAUDE.md ← Chargé auto par Claude Code
|
|
133
|
+
├── GEMINI.md ← Chargé auto par Antigravity
|
|
134
|
+
├── .cursorrules ← Chargé auto par Cursor
|
|
135
|
+
├── .windsurfrules ← Chargé auto par Windsurf
|
|
136
|
+
├── .claude/commands/ ← /citadel-help, /citadel-build, /citadel-review...
|
|
137
|
+
├── .cursor/commands/
|
|
138
|
+
├── .citadel/
|
|
139
|
+
│ ├── agents/ ← 42 personas d'agents complètes (référence)
|
|
140
|
+
│ ├── teams/ ← 10 fichiers équipe (chargement par phase)
|
|
141
|
+
│ ├── specs/ ← PRD, ADR, Sécurité, Data Model, Growth
|
|
142
|
+
│ ├── memory/ ← État persistant (gitignored)
|
|
143
|
+
│ └── gates/ ← Suivi des gates (gitignored)
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Tout est installé. L'IDE ne lit que ce qui est contextuel.
|
|
147
|
+
|
|
148
|
+
| IDE | Comment démarrer |
|
|
149
|
+
|-----|-----------------|
|
|
150
|
+
| Claude Code | `/citadel-help` |
|
|
151
|
+
| Cursor | `/citadel-help` |
|
|
152
|
+
| Antigravity | Commence à chatter |
|
|
153
|
+
| Windsurf | Commence à chatter |
|
|
154
|
+
|
|
155
|
+
CLI optionnel (nécessite une clé API) :
|
|
156
|
+
```bash
|
|
157
|
+
export ANTHROPIC_API_KEY=sk-ant-... # ou OPENAI_API_KEY
|
|
158
|
+
npx citadel-ai run
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## Pourquoi c'est différent
|
|
164
|
+
|
|
165
|
+
La plupart des frameworks IA donnent **plus d'agents**. CITADEL donne **plus de discipline**.
|
|
166
|
+
|
|
167
|
+
- **Organisation > cerveau unique.** 42 agents avec des rôles, règles et personnalités distincts — mais chargés par phase, pas tous en même temps.
|
|
168
|
+
- **Gouvernance > vitesse.** Questions avant specs. Review avant ship. Veto sécurité avant déploiement.
|
|
169
|
+
- **Mémoire > amnésie.** Décisions, choix d'architecture et erreurs passées persistent localement entre les sessions.
|
|
170
|
+
- **Efficacité > force brute.** Chargement de contexte par phase : ~1 800 tokens au lieu de ~14 000.
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Les 42 agents
|
|
175
|
+
|
|
176
|
+
Chaque agent a une persona complète : nom, inspiration, philosophie, voix, règles immuables et system prompt. Tout stocké dans `.citadel/agents/`.
|
|
177
|
+
|
|
178
|
+
**Stratégie (C-Suite) :** ATLAS (Orchestrateur) · LINUS (CTO) · MARTY (CPO) · SEAN (CGO) · BRUCE (CISO) · MONICA (CDO)
|
|
179
|
+
|
|
180
|
+
**Constructeurs (Makers) :** UNCLE BOB · DAN · STEIPETE · KELSEY · JONY · TERESA · STRUNK · DJ PATIL · CYRUS · CHAMATH · FILIPPO · MOXIE · MAX · CODD · KARPATHY · HARRISON · ALEX · GRACE · CHARITY · RICH
|
|
181
|
+
|
|
182
|
+
**Validateurs (Checkers) :** GUIDO · KENT · BRENDAN · JAKOB · RAZOR · LISA · NATE · ALEYDA · PEEP · CHARLIE · WINDOW · DATE · DEMING · FLYWAY · AARON · TRAIL
|
|
183
|
+
|
|
184
|
+
`npx citadel-ai agents` les liste tous avec leurs rôles et équipes.
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Limites connues
|
|
189
|
+
|
|
190
|
+
- **Early stage.** C'est la v1, en développement actif. Des aspérités sont à prévoir.
|
|
191
|
+
- **Pas autonome.** CITADEL structure le travail IA — il ne tourne pas sans supervision.
|
|
192
|
+
- **Pas un remplacement d'équipe.** Excellent pour les MVPs et l'outillage interne. Pour scaler en production, il faut de vrais développeurs et un CTO.
|
|
193
|
+
- **Dépendant de l'IDE.** Le chargement par phase dépend de comment ton IDE lit les fichiers de contexte. Le comportement varie.
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## Roadmap
|
|
198
|
+
|
|
199
|
+
- [ ] Wizard d'onboarding (10 premières minutes guidées)
|
|
200
|
+
- [ ] Vidéo démo (60 secondes)
|
|
201
|
+
- [ ] Optimisations spécifiques par IDE
|
|
202
|
+
- [ ] Système de plugins pour agents personnalisés
|
|
203
|
+
- [ ] Cas d'usage non-code (équipes growth, marketing, ops)
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
## Commandes CLI
|
|
208
|
+
|
|
209
|
+
| Commande | Description |
|
|
210
|
+
|---------|-------------|
|
|
211
|
+
| `npx citadel-ai init` | Installe CITADEL dans ton projet |
|
|
212
|
+
| `npx citadel-ai run` | CLI interactif (nécessite clé API) |
|
|
213
|
+
| `npx citadel-ai agents` | Liste les 42 agents |
|
|
214
|
+
| `npx citadel-ai status` | Phase & gate en cours |
|
|
215
|
+
| `npx citadel-ai help` | Toutes les commandes |
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## Contribuer
|
|
220
|
+
|
|
221
|
+
CITADEL est construit pour les gens qui construisent avec l'IA sans être développeurs traditionnels. Si c'est toi, tu es le bienvenu ici.
|
|
222
|
+
|
|
223
|
+
Voir [CONTRIBUTING.md](CONTRIBUTING.md) pour les guidelines.
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## Licence
|
|
228
|
+
|
|
229
|
+
MIT
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
Construit avec 🏰 par des humains qui parlent aux machines.
|
package/README.md
CHANGED
|
@@ -57,7 +57,7 @@ CITADEL installs a governance layer into your AI IDE. It doesn't replace your AI
|
|
|
57
57
|
|
|
58
58
|
**Enforces safety checks before shipping.** 5 mandatory gates from inception to deployment. Security has veto power — no exceptions.
|
|
59
59
|
|
|
60
|
-
**Keeps project memory across sessions.** Decisions,
|
|
60
|
+
**Keeps project memory across sessions.** A vault of markdown files that the AI reads on session start and updates as it works. Decisions, architecture, code inventory, progress — all persisted. The AI doesn't start from scratch every time.
|
|
61
61
|
|
|
62
62
|
**Loads only what's needed.** Instead of dumping 42 agent profiles into context (and burning your token quota), CITADEL loads only the team relevant to the current phase. 88% less tokens.
|
|
63
63
|
|
|
@@ -72,7 +72,7 @@ CITADEL installs a governance layer into your AI IDE. It doesn't replace your AI
|
|
|
72
72
|
| Code quality | Hope for the best | Standards enforced: 200 lines/file, typed errors, no magic numbers |
|
|
73
73
|
| Review | You read it yourself (and miss things) | Independent checker agents with different perspective |
|
|
74
74
|
| Security | "We'll add auth later" | Security review at every gate. Veto power on deployment |
|
|
75
|
-
| Next session | AI forgot everything |
|
|
75
|
+
| Next session | AI forgot everything | Vault files persist: decisions, progress, code inventory |
|
|
76
76
|
| Token usage | Full context every message (~14K tokens) | Phased loading (~1,800 tokens per phase) |
|
|
77
77
|
|
|
78
78
|
---
|
|
@@ -136,8 +136,15 @@ your-project/
|
|
|
136
136
|
├── .citadel/
|
|
137
137
|
│ ├── agents/ ← 42 full agent personas (reference)
|
|
138
138
|
│ ├── teams/ ← 10 team files (phased loading by IDE)
|
|
139
|
+
│ ├── vault/ ← Live project memory (AI reads + writes)
|
|
140
|
+
│ │ ├── PROGRESS.md Phase, gates, what's done/next
|
|
141
|
+
│ │ ├── CONTEXT_SNAPSHOT.md Resume point for next session
|
|
142
|
+
│ │ ├── SESSION_LOG.md What happened, who did what
|
|
143
|
+
│ │ ├── DECISIONS.md Architecture + product decisions
|
|
144
|
+
│ │ ├── CODE_INVENTORY.md File map, patterns, dependencies
|
|
145
|
+
│ │ └── ARCHITECTURE.md System design, tech stack
|
|
139
146
|
│ ├── specs/ ← PRD, ADR, Security, Data Model, Growth
|
|
140
|
-
│ ├── memory/ ←
|
|
147
|
+
│ ├── memory/ ← Internal state (gitignored)
|
|
141
148
|
│ └── gates/ ← Gate tracking (gitignored)
|
|
142
149
|
```
|
|
143
150
|
|
|
@@ -164,7 +171,7 @@ Most AI frameworks give you **more agents**. CITADEL gives you **more discipline
|
|
|
164
171
|
|
|
165
172
|
- **Organization > single brain.** 42 agents with distinct roles, rules, and personalities — but loaded per phase, not all at once.
|
|
166
173
|
- **Governance > speed.** Questions before specs. Review before ship. Security veto before deploy.
|
|
167
|
-
- **Memory > amnesia.**
|
|
174
|
+
- **Memory > amnesia.** A vault of markdown files the AI reads on session start and updates as it works. Progress, decisions, code inventory, architecture — all live.
|
|
168
175
|
- **Efficiency > brute force.** Phased context loading means ~1,800 tokens per phase instead of ~14,000.
|
|
169
176
|
|
|
170
177
|
---
|
|
@@ -222,6 +229,12 @@ See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.
|
|
|
222
229
|
|
|
223
230
|
---
|
|
224
231
|
|
|
232
|
+
## 🇫🇷 Français
|
|
233
|
+
|
|
234
|
+
Ce README existe aussi en français → [README.fr.md](README.fr.md)
|
|
235
|
+
|
|
236
|
+
---
|
|
237
|
+
|
|
225
238
|
## License
|
|
226
239
|
|
|
227
240
|
MIT
|
package/dist/cli/ide-rules.js
CHANGED
|
@@ -112,11 +112,46 @@ Read \`.citadel/teams/[domain]-checkers.md\` for the domain being reviewed.
|
|
|
112
112
|
2. KELSEY: deploy (zero-downtime)
|
|
113
113
|
3. CHARITY: observability
|
|
114
114
|
|
|
115
|
+
## MEMORY PROTOCOL (CRITICAL)
|
|
116
|
+
|
|
117
|
+
You MUST maintain project memory by reading and writing these files. This is how context survives across sessions.
|
|
118
|
+
|
|
119
|
+
### On EVERY session start:
|
|
120
|
+
1. Read \`.citadel/vault/PROGRESS.md\` — know where the project is
|
|
121
|
+
2. Read \`.citadel/vault/CONTEXT_SNAPSHOT.md\` — resume from last session
|
|
122
|
+
3. Read \`.citadel/vault/DECISIONS.md\` — don't contradict past decisions
|
|
123
|
+
|
|
124
|
+
### On EVERY phase transition or significant action:
|
|
125
|
+
1. Update \`.citadel/vault/PROGRESS.md\` — current phase, gate, what's done, what's next
|
|
126
|
+
2. Update \`.citadel/vault/SESSION_LOG.md\` — append what was done, by which agent, when
|
|
127
|
+
3. Update \`.citadel/vault/DECISIONS.md\` — append any architecture, tech, or product decision
|
|
128
|
+
|
|
129
|
+
### On EVERY session end (or when the user says "stop", "bye", "save"):
|
|
130
|
+
1. Write \`.citadel/vault/CONTEXT_SNAPSHOT.md\` — summary of current state, enough for the next session to resume without re-reading everything
|
|
131
|
+
|
|
132
|
+
### When code is written or modified:
|
|
133
|
+
1. Update \`.citadel/vault/CODE_INVENTORY.md\` — what files exist, what they do, key patterns
|
|
134
|
+
|
|
135
|
+
### Vault files:
|
|
136
|
+
|
|
137
|
+
| File | Purpose | When to read | When to write |
|
|
138
|
+
|------|---------|-------------|---------------|
|
|
139
|
+
| \`PROGRESS.md\` | Phase, gate, what's done/pending | Session start | Every phase change |
|
|
140
|
+
| \`CONTEXT_SNAPSHOT.md\` | Resume context for next session | Session start | Session end |
|
|
141
|
+
| \`SESSION_LOG.md\` | What happened, who did what | Never (it's a log) | After every action |
|
|
142
|
+
| \`DECISIONS.md\` | Architecture + product decisions | Session start | When decisions are made |
|
|
143
|
+
| \`CODE_INVENTORY.md\` | Files map, patterns, dependencies | When building/reviewing | When code changes |
|
|
144
|
+
| \`ARCHITECTURE.md\` | System design, tech stack, ADRs | When building | After architecture decisions |
|
|
145
|
+
|
|
146
|
+
⚠️ If these files are empty or missing, you are in a FRESH PROJECT. Start from Phase 1: Inception.
|
|
147
|
+
⚠️ If PROGRESS.md shows you're in Build phase, do NOT re-ask inception questions.
|
|
148
|
+
|
|
115
149
|
## COMMANDS
|
|
116
150
|
- "help" / "stuck" → Show status + next steps
|
|
117
|
-
- "status" →
|
|
151
|
+
- "status" → Read PROGRESS.md, show gate progress
|
|
118
152
|
- "build [feature]" → Start build
|
|
119
153
|
- "review" → Run checkers
|
|
154
|
+
- "snapshot" / "save" → Write CONTEXT_SNAPSHOT.md
|
|
120
155
|
- "@[agent]" → Talk to specific agent
|
|
121
156
|
|
|
122
157
|
## SPECS
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ide-rules.js","sourceRoot":"","sources":["../../src/cli/ide-rules.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,yDAAyD;AACzD,kEAAkE;AAElE,OAAO,EAAc,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAGxF,4CAA4C;AAC5C,SAAS,SAAS,CAAC,CAAkB;IACnC,OAAO,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,UAAU,GAAG,CAAC;AACtE,CAAC;AAED,6CAA6C;AAC7C,SAAS,aAAa,CAAC,KAAa,EAAE,MAAyB;IAC7D,IAAI,OAAO,GAAG,KAAK,KAAK,MAAM,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,OAAO,IAAI,MAAM,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,IAAI,CAAC;QACnD,OAAO,IAAI,KAAK,CAAC,CAAC,UAAU,MAAM,CAAC;QACnC,OAAO,IAAI,cAAc,CAAC,CAAC,KAAK,MAAM,CAAC;QACvC,OAAO,IAAI,eAAe,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IACxE,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,4CAA4C;AAC5C,SAAS,iBAAiB;IACxB,MAAM,CAAC,GAAG,aAAa,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE3C,kDAAkD;IAClD,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE7C,IAAI,aAAa,GAAG,eAAe,CAAC;IACpC,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,aAAa,IAAI,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAC7D,aAAa,IAAI,qBAAqB,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,aAAa,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAChF,aAAa,IAAI,uBAAuB,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,aAAa,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC;IAElF,OAAO,kBAAkB,CAAC,CAAC,KAAK;;gDAEc,CAAC,CAAC,KAAK;+CACR,cAAc;;;;;;;;;;;;EAY3D,aAAa
|
|
1
|
+
{"version":3,"file":"ide-rules.js","sourceRoot":"","sources":["../../src/cli/ide-rules.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/init.js
CHANGED
|
@@ -48,6 +48,109 @@ function writeSpecTemplates(cp) {
|
|
|
48
48
|
writeFileSync(join(d, 'data-model.md'), '# Data Model\n\n## Entities\n## Relationships\n## Indexes\n## Migration Plan\n\n<!-- Designed by CODD, reviewed by DATE -->\n', 'utf-8');
|
|
49
49
|
writeFileSync(join(d, 'growth.md'), '# Growth Strategy\n\n## Metrics & KPIs\n## Analytics Plan\n## SEO Strategy\n## Growth Loops\n\n<!-- Owned by SEAN (CGO) -->\n', 'utf-8');
|
|
50
50
|
}
|
|
51
|
+
function writeVaultTemplates(cp) {
|
|
52
|
+
const d = join(cp, 'vault');
|
|
53
|
+
mkdirSync(d, { recursive: true });
|
|
54
|
+
writeFileSync(join(d, 'PROGRESS.md'), `# Project Progress
|
|
55
|
+
|
|
56
|
+
## Current State
|
|
57
|
+
- **Phase:** Inception (Gate 0)
|
|
58
|
+
- **Status:** Fresh project — no work started
|
|
59
|
+
- **Active agents:** None yet
|
|
60
|
+
|
|
61
|
+
## Gates
|
|
62
|
+
| Gate | Status | Notes |
|
|
63
|
+
|------|--------|-------|
|
|
64
|
+
| Gate 0 — Inception | ⬜ Pending | C-Suite needs to ask questions |
|
|
65
|
+
| Gate 1 — Pre-Design | ⬜ Pending | |
|
|
66
|
+
| Gate 2 — Pre-Build | ⬜ Pending | |
|
|
67
|
+
| Gate 3 — Pre-Ship | ⬜ Pending | |
|
|
68
|
+
| Gate 4 — Post-Deploy | ⬜ Pending | |
|
|
69
|
+
|
|
70
|
+
## Done
|
|
71
|
+
<!-- Nothing yet -->
|
|
72
|
+
|
|
73
|
+
## Next
|
|
74
|
+
- [ ] User describes what they want to build
|
|
75
|
+
- [ ] C-Suite asks questions
|
|
76
|
+
- [ ] Specs drafted after user answers
|
|
77
|
+
`, 'utf-8');
|
|
78
|
+
writeFileSync(join(d, 'CONTEXT_SNAPSHOT.md'), `# Context Snapshot
|
|
79
|
+
|
|
80
|
+
> This file is written at the end of each session. Read it first to resume.
|
|
81
|
+
|
|
82
|
+
## Last Updated
|
|
83
|
+
Never — fresh project.
|
|
84
|
+
|
|
85
|
+
## What We're Building
|
|
86
|
+
<!-- Not defined yet -->
|
|
87
|
+
|
|
88
|
+
## Key Decisions Made
|
|
89
|
+
<!-- None yet -->
|
|
90
|
+
|
|
91
|
+
## Where We Left Off
|
|
92
|
+
Project just initialized. Waiting for user to describe what they want to build.
|
|
93
|
+
|
|
94
|
+
## Open Questions
|
|
95
|
+
<!-- None yet -->
|
|
96
|
+
`, 'utf-8');
|
|
97
|
+
writeFileSync(join(d, 'SESSION_LOG.md'), `# Session Log
|
|
98
|
+
|
|
99
|
+
> Append-only. Every significant action is logged here.
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
### Session: Init
|
|
104
|
+
- **Date:** ${new Date().toISOString().split('T')[0]}
|
|
105
|
+
- **Agent:** ATLAS (Orchestrator)
|
|
106
|
+
- **Action:** Project initialized with CITADEL
|
|
107
|
+
- **Result:** 42 agents installed, specs templates created, vault ready
|
|
108
|
+
|
|
109
|
+
---
|
|
110
|
+
|
|
111
|
+
<!-- New sessions are appended below -->
|
|
112
|
+
`, 'utf-8');
|
|
113
|
+
writeFileSync(join(d, 'DECISIONS.md'), `# Decisions Log
|
|
114
|
+
|
|
115
|
+
> Every architecture, product, or tech decision is recorded here.
|
|
116
|
+
> Format: Decision — Reason — Alternatives considered — Date — Agent
|
|
117
|
+
|
|
118
|
+
---
|
|
119
|
+
|
|
120
|
+
<!-- Decisions will be appended by C-Suite agents -->
|
|
121
|
+
`, 'utf-8');
|
|
122
|
+
writeFileSync(join(d, 'CODE_INVENTORY.md'), `# Code Inventory
|
|
123
|
+
|
|
124
|
+
> Map of all project files, what they do, and key patterns.
|
|
125
|
+
> Updated by maker agents when code is written or modified.
|
|
126
|
+
|
|
127
|
+
## Files
|
|
128
|
+
<!-- No code files yet -->
|
|
129
|
+
|
|
130
|
+
## Key Patterns
|
|
131
|
+
<!-- No patterns established yet -->
|
|
132
|
+
|
|
133
|
+
## Dependencies
|
|
134
|
+
<!-- No dependencies yet -->
|
|
135
|
+
`, 'utf-8');
|
|
136
|
+
writeFileSync(join(d, 'ARCHITECTURE.md'), `# Architecture
|
|
137
|
+
|
|
138
|
+
> System design, tech stack decisions, and high-level structure.
|
|
139
|
+
> Updated by LINUS (CTO) and CODD (Data Architect).
|
|
140
|
+
|
|
141
|
+
## Tech Stack
|
|
142
|
+
<!-- Not decided yet -->
|
|
143
|
+
|
|
144
|
+
## System Design
|
|
145
|
+
<!-- Not decided yet -->
|
|
146
|
+
|
|
147
|
+
## Data Model Summary
|
|
148
|
+
<!-- Not decided yet -->
|
|
149
|
+
|
|
150
|
+
## API Design
|
|
151
|
+
<!-- Not decided yet -->
|
|
152
|
+
`, 'utf-8');
|
|
153
|
+
}
|
|
51
154
|
function writeGettingStarted(pp) {
|
|
52
155
|
writeFileSync(join(pp, '.citadel', 'GETTING_STARTED.md'), `# 🏰 Getting Started with CITADEL
|
|
53
156
|
|
|
@@ -136,7 +239,7 @@ export async function initCommand(targetPath) {
|
|
|
136
239
|
}
|
|
137
240
|
console.log('\n⏳ Installing CITADEL...\n');
|
|
138
241
|
// Scaffold
|
|
139
|
-
for (const d of [cp, join(cp, 'memory'), join(cp, 'gates'), join(cp, 'specs'), join(cp, 'agents'), join(cp, 'teams')]) {
|
|
242
|
+
for (const d of [cp, join(cp, 'memory'), join(cp, 'gates'), join(cp, 'specs'), join(cp, 'agents'), join(cp, 'teams'), join(cp, 'vault')]) {
|
|
140
243
|
mkdirSync(d, { recursive: true });
|
|
141
244
|
}
|
|
142
245
|
// Config
|
|
@@ -151,12 +254,13 @@ export async function initCommand(targetPath) {
|
|
|
151
254
|
writeAgentPersonas(cp);
|
|
152
255
|
writeTeamFiles(cp);
|
|
153
256
|
writeSpecTemplates(cp);
|
|
257
|
+
writeVaultTemplates(cp);
|
|
154
258
|
writeGettingStarted(pp);
|
|
155
259
|
// IDE rules
|
|
156
260
|
installAllIDEs(pp);
|
|
157
|
-
// .gitignore
|
|
261
|
+
// .gitignore (vault is committed, memory/gates are not)
|
|
158
262
|
const gi = join(pp, '.gitignore');
|
|
159
|
-
const giContent = '\n# CITADEL state\n.citadel/memory/\n.citadel/gates/\n';
|
|
263
|
+
const giContent = '\n# CITADEL state (vault + specs + agents are committed)\n.citadel/memory/\n.citadel/gates/\n';
|
|
160
264
|
if (existsSync(gi)) {
|
|
161
265
|
if (!readFileSync(gi, 'utf-8').includes('.citadel/memory'))
|
|
162
266
|
appendFileSync(gi, giContent);
|
|
@@ -168,6 +272,7 @@ export async function initCommand(targetPath) {
|
|
|
168
272
|
console.log(` ✅ ${c.total} agents installed (.citadel/agents/)
|
|
169
273
|
✅ 10 team files for phased loading (.citadel/teams/)
|
|
170
274
|
✅ Spec templates (.citadel/specs/)
|
|
275
|
+
✅ Project vault — live memory (.citadel/vault/)
|
|
171
276
|
✅ Getting started guide (.citadel/GETTING_STARTED.md)
|
|
172
277
|
|
|
173
278
|
IDE rules (auto-loaded — no config needed):
|
package/dist/cli/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7F,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAEhE,SAAS,GAAG,CAAC,CAAS;IACpB,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC7E,OAAO,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAClF,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAU;IACpC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC7B,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,cAAc,EAAE,CAAC;QACrC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,EAAE;YACjC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,KAAK,EAAE;YACpC,KAAK,CAAC,CAAC,QAAQ,EAAE;YACjB,EAAE;YACF,oBAAoB,CAAC,CAAC,WAAW,EAAE;YACnC,oBAAoB,CAAC,CAAC,UAAU,GAAG;YACnC,cAAc,CAAC,CAAC,KAAK,gBAAgB,CAAC,CAAC,IAAI,EAAE;YAC7C,EAAE;YACF,gBAAgB;YAChB,CAAC,CAAC,WAAW;YACb,EAAE;YACF,UAAU;YACV,CAAC,CAAC,KAAK;YACP,EAAE;YACF,sBAAsB;YACtB,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,EAAE;YACF,eAAe;YACf,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;YAClC,EAAE;YACF,kBAAkB;YAClB,CAAC,CAAC,YAAY;SACf,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,OAAO,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAU;IACpC,MAAM,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IAC5B,SAAS,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,mQAAmQ,EAAE,OAAO,CAAC,CAAC;IAC/S,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,4EAA4E,EAAE,OAAO,CAAC,CAAC;IACxH,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,aAAa,CAAC,EAAE,iLAAiL,EAAE,OAAO,CAAC,CAAC;IAClO,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,eAAe,CAAC,EAAE,+HAA+H,EAAE,OAAO,CAAC,CAAC;IAClL,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,+HAA+H,EAAE,OAAO,CAAC,CAAC;AAChL,CAAC;AAED,SAAS,mBAAmB,CAAC,EAAU;IACrC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuE3D,EAAE,OAAO,CAAC,CAAC;AACZ,CAAC;AAED,oBAAoB;AACpB,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAAmB;IACnD,MAAM,EAAE,GAAG,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACvC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;IAEhC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;IAEtB,IAAI,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,6CAA6C,CAAC,CAAC;QACtE,IAAI,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;IACnG,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAE3C,WAAW;IACX,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/cli/init.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "citadel-ai",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0",
|
|
4
4
|
"description": "Enterprise AI dev framework. 42 agents. C-suite governance. Chinese walls. Persistent memory. You talk, they build.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -38,7 +38,8 @@
|
|
|
38
38
|
"README.md",
|
|
39
39
|
"LICENSE",
|
|
40
40
|
"CONTRIBUTING.md",
|
|
41
|
-
"GETTING-STARTED.md"
|
|
41
|
+
"GETTING-STARTED.md",
|
|
42
|
+
"README.fr.md"
|
|
42
43
|
],
|
|
43
44
|
"scripts": {
|
|
44
45
|
"build": "tsc",
|