chati-dev 3.0.3 → 3.0.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/framework/orchestrator/chati.md +22 -3
- package/package.json +1 -1
- package/src/installer/templates.js +44 -3
- package/src/wizard/index.js +14 -3
|
@@ -70,7 +70,17 @@ Before determining state, check if the user passed a subcommand:
|
|
|
70
70
|
-> First run. Go to Step 4 (New Project Setup)
|
|
71
71
|
```
|
|
72
72
|
|
|
73
|
-
**If session.yaml has
|
|
73
|
+
**If session.yaml has project BUT current_agent is empty AND all agents are "pending":**
|
|
74
|
+
```
|
|
75
|
+
-> Fresh install (installer created session.yaml but no agent has run yet).
|
|
76
|
+
-> Skip directly to Step 4d (Route to First Agent).
|
|
77
|
+
-> Use project.type from session.yaml (already set by installer).
|
|
78
|
+
-> Use language from session.yaml (already set by installer).
|
|
79
|
+
-> Do NOT ask project type or language again — installer already collected these.
|
|
80
|
+
-> Do NOT present options — immediately activate the first agent.
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**If session.yaml has active project (current_agent is set OR at least one agent is not "pending"):**
|
|
74
84
|
```
|
|
75
85
|
-> Resume session. Go to Step 5 (Session Resume)
|
|
76
86
|
```
|
|
@@ -155,9 +165,18 @@ user_level_confidence: 0.0
|
|
|
155
165
|
```
|
|
156
166
|
|
|
157
167
|
#### 3d. Route to First Agent
|
|
168
|
+
|
|
169
|
+
This step is reached either from Step 4 (full setup) OR directly from Step 3 (fresh install).
|
|
170
|
+
In fresh install case, project.type and language are already in session.yaml — use them directly.
|
|
171
|
+
|
|
158
172
|
```
|
|
159
|
-
|
|
160
|
-
|
|
173
|
+
1. Update session.yaml: current_agent = greenfield-wu | brownfield-wu (based on project.type)
|
|
174
|
+
2. Activate Session Lock (see Session Lock Protocol)
|
|
175
|
+
3. If greenfield -> Read chati.dev/agents/discover/greenfield-wu.md -> Activate IMMEDIATELY
|
|
176
|
+
If brownfield -> Read chati.dev/agents/discover/brownfield-wu.md -> Activate IMMEDIATELY
|
|
177
|
+
4. The agent starts its work right away — no "Continue with X?" prompt needed
|
|
178
|
+
For greenfield-wu: begin asking the user about their project vision
|
|
179
|
+
For brownfield-wu: begin analyzing the existing codebase
|
|
161
180
|
```
|
|
162
181
|
|
|
163
182
|
### Step 5: Session Resume
|
package/package.json
CHANGED
|
@@ -180,15 +180,30 @@ ALL responses MUST be in this language. This overrides any global setting.
|
|
|
180
180
|
|
|
181
181
|
If session.yaml does not exist or has no language field, default to English.
|
|
182
182
|
|
|
183
|
+
## CRITICAL — Provider Context Mapping
|
|
184
|
+
|
|
185
|
+
The orchestrator was written for Claude Code. You are running on **Codex CLI**.
|
|
186
|
+
When the orchestrator references Claude-specific files, use these equivalents:
|
|
187
|
+
|
|
188
|
+
| Orchestrator says | You use instead |
|
|
189
|
+
|-------------------|-----------------|
|
|
190
|
+
| \`CLAUDE.md\` | \`AGENTS.md\` |
|
|
191
|
+
| \`CLAUDE.local.md\` | \`.chati/session.yaml\` (session state only) |
|
|
192
|
+
| \`.claude/rules/chati/\` | \`chati.dev/context/\` |
|
|
193
|
+
| \`.claude/commands/\` | \`.agents/skills/\` |
|
|
194
|
+
| \`/chati\` | \`$chati\` |
|
|
195
|
+
|
|
196
|
+
**NEVER create or reference CLAUDE.md, CLAUDE.local.md, or .claude/ directories.**
|
|
197
|
+
|
|
183
198
|
## Load
|
|
184
199
|
|
|
185
200
|
Read and execute the full orchestrator at \`chati.dev/orchestrator/chati.md\`.
|
|
186
201
|
|
|
187
|
-
|
|
202
|
+
Apply the Provider Context Mapping above when following the orchestrator instructions.
|
|
188
203
|
|
|
189
204
|
**Context to pass:**
|
|
190
205
|
- \`.chati/session.yaml\` (session state — includes language)
|
|
191
|
-
- \`AGENTS.md\` (project context — auto-generated)
|
|
206
|
+
- \`AGENTS.md\` (project context — auto-generated from base content)
|
|
192
207
|
- \`chati.dev/artifacts/handoffs/\` (latest handoff)
|
|
193
208
|
- \`chati.dev/config.yaml\` (version info)
|
|
194
209
|
|
|
@@ -210,10 +225,21 @@ Read \`.chati/session.yaml\` field \`language\` BEFORE anything else.
|
|
|
210
225
|
ALL responses MUST be in this language (en, pt, es, fr).
|
|
211
226
|
If session.yaml does not exist or has no language field, default to English.
|
|
212
227
|
|
|
228
|
+
CRITICAL — Provider Context Mapping:
|
|
229
|
+
The orchestrator was written for Claude Code. You are running on Gemini CLI.
|
|
230
|
+
When the orchestrator references Claude-specific files, use these equivalents:
|
|
231
|
+
- CLAUDE.md -> GEMINI.md
|
|
232
|
+
- CLAUDE.local.md -> .chati/session.yaml (session state only)
|
|
233
|
+
- .claude/rules/chati/ -> chati.dev/context/
|
|
234
|
+
- .claude/commands/ -> .gemini/commands/
|
|
235
|
+
NEVER create or reference CLAUDE.md, CLAUDE.local.md, or .claude/ directories.
|
|
236
|
+
|
|
213
237
|
Read and execute the full orchestrator at \`chati.dev/orchestrator/chati.md\`.
|
|
238
|
+
Apply the Provider Context Mapping above when following instructions.
|
|
214
239
|
|
|
215
240
|
Context to load:
|
|
216
241
|
- \`.chati/session.yaml\` (session state — includes language)
|
|
242
|
+
- \`GEMINI.md\` (project context — auto-generated)
|
|
217
243
|
- \`chati.dev/artifacts/handoffs/\` (latest handoff)
|
|
218
244
|
- \`chati.dev/config.yaml\` (version info)
|
|
219
245
|
|
|
@@ -247,11 +273,26 @@ ALL responses MUST be in this language. This overrides any global setting.
|
|
|
247
273
|
|
|
248
274
|
If session.yaml does not exist or has no language field, default to English.
|
|
249
275
|
|
|
276
|
+
## CRITICAL — Provider Context Mapping
|
|
277
|
+
|
|
278
|
+
The orchestrator was written for Claude Code. You are running on **GitHub Copilot CLI**.
|
|
279
|
+
When the orchestrator references Claude-specific files, use these equivalents:
|
|
280
|
+
|
|
281
|
+
| Orchestrator says | You use instead |
|
|
282
|
+
|-------------------|-----------------|
|
|
283
|
+
| \`CLAUDE.md\` | \`AGENTS.md\` |
|
|
284
|
+
| \`CLAUDE.local.md\` | \`.chati/session.yaml\` (session state only) |
|
|
285
|
+
| \`.claude/rules/chati/\` | \`chati.dev/context/\` |
|
|
286
|
+
| \`.claude/commands/\` | \`.github/agents/\` |
|
|
287
|
+
| \`/chati\` | \`@chati\` |
|
|
288
|
+
|
|
289
|
+
**NEVER create or reference CLAUDE.md, CLAUDE.local.md, or .claude/ directories.**
|
|
290
|
+
|
|
250
291
|
## Load
|
|
251
292
|
|
|
252
293
|
Read and execute the full orchestrator at \`chati.dev/orchestrator/chati.md\`.
|
|
253
294
|
|
|
254
|
-
|
|
295
|
+
Apply the Provider Context Mapping above when following the orchestrator instructions.
|
|
255
296
|
|
|
256
297
|
**Context to pass:**
|
|
257
298
|
- \`.chati/session.yaml\` (session state — includes language)
|
package/src/wizard/index.js
CHANGED
|
@@ -70,6 +70,9 @@ export async function runWizard(targetDir, options = {}) {
|
|
|
70
70
|
await stepConfirmation(config);
|
|
71
71
|
|
|
72
72
|
// Step 5: Installation + Validation
|
|
73
|
+
const primaryIDE = selectedIDEs[selectedIDEs.length - 1];
|
|
74
|
+
const primaryIDEName = IDE_CONFIGS[primaryIDE]?.name || primaryIDE;
|
|
75
|
+
|
|
73
76
|
console.log();
|
|
74
77
|
const installSpinner = createSpinner(t('installer.installing'));
|
|
75
78
|
installSpinner.start();
|
|
@@ -80,7 +83,17 @@ export async function runWizard(targetDir, options = {}) {
|
|
|
80
83
|
|
|
81
84
|
showStep(t('installer.created_chati'));
|
|
82
85
|
showStep(t('installer.created_framework'));
|
|
83
|
-
|
|
86
|
+
|
|
87
|
+
// Show provider-specific command creation
|
|
88
|
+
const commandStepMap = {
|
|
89
|
+
'claude-code': 'Created .claude/commands/ (thin router)',
|
|
90
|
+
'gemini-cli': 'Created .gemini/commands/ (TOML command)',
|
|
91
|
+
'codex-cli': 'Created .agents/skills/chati/ (Codex skill)',
|
|
92
|
+
'github-copilot': 'Created .github/agents/ (Copilot agent)',
|
|
93
|
+
};
|
|
94
|
+
const commandStep = commandStepMap[primaryIDE] || t('installer.created_commands');
|
|
95
|
+
showStep(commandStep);
|
|
96
|
+
|
|
84
97
|
showStep(t('installer.installed_constitution'));
|
|
85
98
|
showStep(t('installer.created_session'));
|
|
86
99
|
if (selectedIDEs.includes('claude-code')) {
|
|
@@ -118,8 +131,6 @@ export async function runWizard(targetDir, options = {}) {
|
|
|
118
131
|
p.outro(t('installer.success'));
|
|
119
132
|
|
|
120
133
|
// Show quick start — same experience across all providers
|
|
121
|
-
const primaryIDE = selectedIDEs[selectedIDEs.length - 1];
|
|
122
|
-
const primaryIDEName = IDE_CONFIGS[primaryIDE]?.name || primaryIDE;
|
|
123
134
|
const invokeCmdMap = {
|
|
124
135
|
'github-copilot': '@chati',
|
|
125
136
|
'codex-cli': '$chati',
|