bmad-plus 0.17.0 → 0.18.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 +108 -30
- package/README.md +23 -23
- package/SECURITY.md +9 -1
- package/osint-agent-package/README.md +13 -0
- package/osint-agent-package/SETUP_KEYS.md +13 -0
- package/package.json +32 -8
- package/readme-international/README.de.md +133 -542
- package/readme-international/README.es.md +135 -561
- package/readme-international/README.fr.md +134 -558
- package/src/bmad-plus/agents/agent-shadow/SKILL.md +6 -0
- package/src/bmad-plus/packs/pack-memory/README.md +1 -1
- package/src/bmad-plus/packs/pack-memory/memory-orchestrator.md +1 -1
- package/src/bmad-plus/packs/pack-memory/shared/memory-protocol.md +1 -1
- package/src/bmad-plus/packs/pack-shield/README.md +2 -0
- package/src/bmad-plus/packs/pack-shield/SKILL.md +2 -0
- package/src/bmad-plus/packs/pack-shield/shared/audit-report-template.md +6 -0
- package/src/bmad-plus/packs/pack-shield/shield-orchestrator.md +4 -0
- package/src/bmad-plus/skills/bmad-plus-uat/SKILL.md +61 -1
- package/src/bmad-plus/skills/bmad-plus-uat/ref/uat-results.schema.json +11 -0
- package/src/bmad-plus/skills/bmad-plus-uat/template/page.html +455 -137
- package/src/bmad-plus/skills/bmad-plus-uat/template/strings.json +230 -20
- package/tools/build/adapters.config.js +1 -1
- package/tools/build/generate-adapters.js +186 -60
- package/tools/build/generate.js +49 -13
- package/tools/cli/bmad-plus-cli.js +3 -6
- package/tools/cli/commands/autoconfig.js +62 -22
- package/tools/cli/commands/install.js +620 -356
- package/tools/cli/commands/memory.js +40 -13
- package/tools/cli/commands/scan.js +94 -30
- package/tools/cli/commands/uat.js +50 -5
- package/tools/cli/commands/uninstall.js +65 -16
- package/tools/cli/commands/update-check.js +13 -4
- package/tools/cli/commands/update-policy.js +14 -5
- package/tools/cli/commands/update.js +96 -21
- package/tools/cli/i18n.js +120 -68
- package/tools/cli/lib/ide-config.js +3 -1
- package/tools/cli/lib/install-manifest.js +32 -7
- package/tools/cli/lib/installation-health.js +33 -1
- package/tools/cli/lib/installed-adapters.js +29 -6
- package/tools/cli/lib/memory-init.js +19 -4
- package/tools/cli/lib/packs.js +17 -28
- package/tools/cli/lib/path-hash.js +5 -1
- package/tools/cli/lib/python-provision.js +51 -12
- package/tools/cli/lib/stack-detect.js +51 -25
- package/tools/cli/lib/uat.js +139 -1
- package/tools/cli/lib/update-check.js +132 -34
- package/tools/cli/lib/update-dispatch.js +2 -2
- package/tools/cli/lib/update-policy.js +57 -19
- package/tools/cli/lib/update-transaction.js +439 -85
- package/tools/build/README.md +0 -78
- package/tools/build/check-counts.js +0 -626
- package/tools/build/check-install-contract.js +0 -648
- package/tools/build/generated-adapters/.codex/AGENTS.md +0 -134
- package/tools/build/generated-adapters/.cursor/rules/bmad-plus.mdc +0 -139
- package/tools/build/generated-adapters/.opencode/AGENTS.md +0 -134
- package/tools/build/generated-adapters/AGENTS.md +0 -132
- package/tools/build/generated-adapters/CLAUDE.md +0 -135
- package/tools/build/generated-adapters/CONVENTIONS.md +0 -134
- package/tools/build/generated-adapters/GEMINI.md +0 -139
- package/tools/build/generated-adapters/README.md +0 -79
- package/tools/maintain/upstream-candidate.js +0 -456
- package/tools/release/publication-content.js +0 -904
- package/tools/release/supply-chain.js +0 -282
|
@@ -9,7 +9,11 @@ const clack = require('@clack/prompts');
|
|
|
9
9
|
const pc = require('picocolors');
|
|
10
10
|
const { t } = require('../i18n');
|
|
11
11
|
const { safeTarget } = require('../../build/generate-adapters');
|
|
12
|
-
const {
|
|
12
|
+
const {
|
|
13
|
+
readInstallManifest,
|
|
14
|
+
notInstalledMessage,
|
|
15
|
+
hasInstallManifest,
|
|
16
|
+
} = require('../lib/install-manifest');
|
|
13
17
|
const { isExactVersion } = require('../lib/update-policy');
|
|
14
18
|
const { planUpdate, applyPlan, restoreUpdate, MANIFEST } = require('../lib/update-transaction');
|
|
15
19
|
|
|
@@ -51,22 +55,35 @@ module.exports = {
|
|
|
51
55
|
if (options.restore && (options.latest || options.expectedVersion)) {
|
|
52
56
|
throw new Error('--restore cannot be combined with --latest or --expected-version.');
|
|
53
57
|
}
|
|
58
|
+
if (!options.restore && !hasInstallManifest(projectDir)) {
|
|
59
|
+
throw new Error(notInstalledMessage(projectDir));
|
|
60
|
+
}
|
|
54
61
|
// The dispatcher resolves the target package; this local package may be older.
|
|
55
62
|
if (options.latest) {
|
|
56
63
|
const result = await require('../lib/update-dispatch').runLatestUpdate({
|
|
57
|
-
projectDir,
|
|
64
|
+
projectDir,
|
|
65
|
+
auto: Boolean(options.auto),
|
|
66
|
+
yes: Boolean(options.yes),
|
|
58
67
|
});
|
|
59
68
|
clack.log.info(result.reason || result.status);
|
|
60
69
|
if (result.output) clack.log.info(result.output);
|
|
61
70
|
if (result.targetVersion) clack.log.info('Target: v' + result.targetVersion);
|
|
62
|
-
if (result.reloadInstructions)
|
|
71
|
+
if (result.reloadInstructions)
|
|
72
|
+
clack.log.info('Reload your agent instructions or start a new session.');
|
|
63
73
|
return;
|
|
64
74
|
}
|
|
65
75
|
|
|
66
76
|
clack.intro(pc.bgMagenta(pc.white(' BMAD+ Updater v' + version + ' ')));
|
|
67
77
|
if (options.restore) {
|
|
68
78
|
if (options.auto) throw new Error('Recovery requires manual approval.');
|
|
69
|
-
if (
|
|
79
|
+
if (
|
|
80
|
+
!(await confirmAction(
|
|
81
|
+
options,
|
|
82
|
+
'Restore the files saved in receipt ' + options.restore + '?',
|
|
83
|
+
options.lang
|
|
84
|
+
))
|
|
85
|
+
)
|
|
86
|
+
return;
|
|
70
87
|
const restored = restoreUpdate({ projectDir, receiptId: options.restore });
|
|
71
88
|
clack.log.success('Restored BMAD+ v' + restored.restoredVersion);
|
|
72
89
|
clack.log.info('Receipt: ' + restored.receiptPath);
|
|
@@ -74,46 +91,104 @@ module.exports = {
|
|
|
74
91
|
return;
|
|
75
92
|
}
|
|
76
93
|
|
|
77
|
-
if (options.auto && !options.expectedVersion)
|
|
94
|
+
if (options.auto && !options.expectedVersion)
|
|
95
|
+
throw new Error('Automatic update requires --expected-version.');
|
|
78
96
|
if (options.expectedVersion && options.expectedVersion !== version) {
|
|
79
|
-
throw new Error(
|
|
97
|
+
throw new Error(
|
|
98
|
+
'Executing package version ' +
|
|
99
|
+
version +
|
|
100
|
+
' does not match expected version ' +
|
|
101
|
+
options.expectedVersion +
|
|
102
|
+
'.'
|
|
103
|
+
);
|
|
80
104
|
}
|
|
81
105
|
const manifestPath = safeTarget(projectDir, MANIFEST);
|
|
82
|
-
if (!fs.existsSync(manifestPath)) throw new Error(
|
|
106
|
+
if (!fs.existsSync(manifestPath)) throw new Error(notInstalledMessage(projectDir));
|
|
83
107
|
let manifest;
|
|
84
|
-
try {
|
|
85
|
-
|
|
108
|
+
try {
|
|
109
|
+
manifest = readInstallManifest(manifestPath);
|
|
110
|
+
} catch (error) {
|
|
111
|
+
throw new Error('Install manifest is unreadable or corrupt: ' + error.message, {
|
|
112
|
+
cause: error,
|
|
113
|
+
});
|
|
86
114
|
}
|
|
87
|
-
if (!isExactVersion(version) || !isExactVersion(manifest.version))
|
|
88
|
-
|
|
115
|
+
if (!isExactVersion(version) || !isExactVersion(manifest.version))
|
|
116
|
+
throw new Error('Update versions must be strict semantic versions.');
|
|
117
|
+
if (semver.lt(version, manifest.version))
|
|
118
|
+
throw new Error('Downgrade refused: ' + manifest.version + ' -> ' + version);
|
|
89
119
|
const lang = options.lang || manifest.uiLanguage || 'en';
|
|
90
120
|
clack.log.info('Installed: v' + manifest.version + ' -> Executing package: v' + version);
|
|
91
121
|
if (manifest.version === version) {
|
|
92
|
-
clack.log.success(
|
|
122
|
+
clack.log.success(
|
|
123
|
+
'The installed version matches this executing package. Use --latest to check the registry.'
|
|
124
|
+
);
|
|
93
125
|
clack.outro(pc.green('Nothing to update.'));
|
|
94
126
|
return;
|
|
95
127
|
}
|
|
96
128
|
const plan = planUpdate({ projectDir, manifest, version, auto: Boolean(options.auto) });
|
|
97
129
|
if (options.auto) {
|
|
98
130
|
authorizeAuto(projectDir, version);
|
|
99
|
-
const fresh = await require('../lib/update-check').checkForUpdate({
|
|
100
|
-
|
|
101
|
-
|
|
131
|
+
const fresh = await require('../lib/update-check').checkForUpdate({
|
|
132
|
+
projectDir,
|
|
133
|
+
runningVersion: version,
|
|
134
|
+
refresh: true,
|
|
135
|
+
});
|
|
136
|
+
if (
|
|
137
|
+
fresh.source !== 'registry' ||
|
|
138
|
+
fresh.stale ||
|
|
139
|
+
!fresh.versionEligible ||
|
|
140
|
+
fresh.targetVersion !== options.expectedVersion
|
|
141
|
+
) {
|
|
142
|
+
throw new Error(
|
|
143
|
+
'Automatic update requires a fresh, eligible registry target matching --expected-version.'
|
|
144
|
+
);
|
|
102
145
|
}
|
|
103
146
|
}
|
|
104
147
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
148
|
+
const removals = plan.files.filter((entry) => entry.afterHash === null).length;
|
|
149
|
+
clack.log.info(
|
|
150
|
+
'Planned changes: ' +
|
|
151
|
+
(plan.files.length - 1) +
|
|
152
|
+
' files (' +
|
|
153
|
+
removals +
|
|
154
|
+
' no longer shipped, removed with backup); preserved conflicts: ' +
|
|
155
|
+
plan.conflicts.length +
|
|
156
|
+
'.'
|
|
157
|
+
);
|
|
158
|
+
if (plan.legacy)
|
|
159
|
+
clack.log.warn(
|
|
160
|
+
'Legacy installation: original pack files will be backed up before replacement because ownership hashes are unavailable. Review the receipt to recover local edits.'
|
|
161
|
+
);
|
|
162
|
+
for (const conflict of plan.conflicts)
|
|
163
|
+
clack.log.warn(conflict.file + ': preserved (' + conflict.reason + ').');
|
|
164
|
+
if (
|
|
165
|
+
!(await confirmAction(
|
|
166
|
+
options,
|
|
167
|
+
'Apply this update from v' + manifest.version + ' to v' + version + '?',
|
|
168
|
+
lang
|
|
169
|
+
))
|
|
170
|
+
)
|
|
171
|
+
return;
|
|
109
172
|
|
|
110
173
|
spinner = clack.spinner();
|
|
111
174
|
spinner.start('Updating managed files...');
|
|
112
175
|
const result = applyPlan(plan, { reauthorize: () => authorizeAuto(projectDir, version) });
|
|
113
|
-
spinner.stop(
|
|
176
|
+
spinner.stop(
|
|
177
|
+
result.changedFiles.length +
|
|
178
|
+
' files updated; ' +
|
|
179
|
+
result.conflicts.length +
|
|
180
|
+
' local conflicts preserved.'
|
|
181
|
+
);
|
|
114
182
|
spinner = null;
|
|
115
183
|
clack.log.info('Receipt and backups: ' + result.receiptPath);
|
|
116
|
-
clack.outro(
|
|
184
|
+
clack.outro(
|
|
185
|
+
pc.green(
|
|
186
|
+
'BMAD+ v' +
|
|
187
|
+
version +
|
|
188
|
+
(result.conflicts.length ? ' applied partially.' : ' installed.') +
|
|
189
|
+
' Reload your agent instructions or start a new session.'
|
|
190
|
+
)
|
|
191
|
+
);
|
|
117
192
|
} catch (error) {
|
|
118
193
|
if (spinner) spinner.stop('Update failed.');
|
|
119
194
|
clack.log.error(error.message);
|
package/tools/cli/i18n.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* BMAD+ CLI — Internationalization (i18n)
|
|
3
3
|
* 10 languages: EN, FR, ES, DE, PT-BR, RU, ZH, HE, JA, IT
|
|
4
|
-
*
|
|
4
|
+
*
|
|
5
5
|
* Author: Laurent Rochetta
|
|
6
6
|
*/
|
|
7
7
|
|
|
@@ -59,12 +59,16 @@ const LANGUAGES = {
|
|
|
59
59
|
guide_credits: '✨ BMAD+ is created by Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
60
60
|
// Uninstall
|
|
61
61
|
uninstall_confirm: 'Remove BMAD+ from this project?',
|
|
62
|
-
noninteractive_requires_yes: (command) =>
|
|
63
|
-
|
|
62
|
+
noninteractive_requires_yes: (command) =>
|
|
63
|
+
'This command requires a terminal. Run `npx bmad-plus ' +
|
|
64
|
+
command +
|
|
65
|
+
' --yes` to proceed without prompts.',
|
|
66
|
+
manifest_invalid: (error) => 'Install manifest is unreadable or corrupt: ' + error + '',
|
|
64
67
|
manifest_repair: 'Check _bmad/.bmad-plus-install.json and repair it before retrying.',
|
|
65
68
|
uninstall_not_installed: 'BMAD+ is not installed in this directory.',
|
|
66
|
-
uninstall_aborted: (error) =>
|
|
67
|
-
uninstall_preserved:
|
|
69
|
+
uninstall_aborted: (error) => 'Uninstall aborted: ' + error + '',
|
|
70
|
+
uninstall_preserved:
|
|
71
|
+
'Project memory, settings, and unknown or modified files have been preserved.',
|
|
68
72
|
uninstall_removing: 'Removing...',
|
|
69
73
|
uninstall_done: (n) => `✅ BMAD+ removed (${n} items)`,
|
|
70
74
|
uninstall_output_kept: '📁 _bmad-output/ kept (contains files)',
|
|
@@ -87,7 +91,7 @@ const LANGUAGES = {
|
|
|
87
91
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
88
92
|
guide_memory: '🧠 Persistent Brain',
|
|
89
93
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
90
|
-
guide_example_memory_1: '🧠 Memory: "Zecher, scan projects in
|
|
94
|
+
guide_example_memory_1: '🧠 Memory: "Zecher, scan projects in ~/projects"',
|
|
91
95
|
guide_example_memory_2: '🧠 Memory: "Zecher, where were we?"',
|
|
92
96
|
guide_example_memory_3: '🧠 Memory: "Zecher, consolidate memory"',
|
|
93
97
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, brainstorm a productivity app"',
|
|
@@ -108,10 +112,10 @@ const LANGUAGES = {
|
|
|
108
112
|
select_ide: 'Quels IDE utilises-tu ?',
|
|
109
113
|
detected_ides: 'IDE détectés',
|
|
110
114
|
selected_packs: 'Packs sélectionnés',
|
|
111
|
-
enter_name:
|
|
115
|
+
enter_name: "Ton prénom (les agents l'utilisent pour te saluer)",
|
|
112
116
|
comm_language: 'Langue de communication',
|
|
113
117
|
uat_environment: 'Environnement de test pour les recettes humaines (URL, vide si aucun)',
|
|
114
|
-
exec_mode:
|
|
118
|
+
exec_mode: "Mode d'exécution",
|
|
115
119
|
exec_manual: 'Manuel — Tu appelles les agents toi-même',
|
|
116
120
|
exec_autopilot: 'Autopilot — Nexus gère tout le pipeline',
|
|
117
121
|
exec_hybrid: 'Hybride — Autopilot avec checkpoints fréquents',
|
|
@@ -125,7 +129,7 @@ const LANGUAGES = {
|
|
|
125
129
|
soon: 'bientôt',
|
|
126
130
|
guide_title: '✅ Installation terminée — Comment commencer',
|
|
127
131
|
guide_who: '💬 À qui parler ?',
|
|
128
|
-
guide_idea:
|
|
132
|
+
guide_idea: "Discuter d'une idée",
|
|
129
133
|
guide_prd: 'Créer un PRD',
|
|
130
134
|
guide_arch: 'Architecture technique',
|
|
131
135
|
guide_code: 'Implémenter du code',
|
|
@@ -147,12 +151,17 @@ const LANGUAGES = {
|
|
|
147
151
|
guide_ready: 'BMAD+ est prêt ! Parle à Atlas pour commencer 🚀',
|
|
148
152
|
guide_credits: '✨ BMAD+ est créé par Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
149
153
|
uninstall_confirm: 'Supprimer BMAD+ de ce projet ?',
|
|
150
|
-
noninteractive_requires_yes: (command) =>
|
|
151
|
-
|
|
154
|
+
noninteractive_requires_yes: (command) =>
|
|
155
|
+
'Cette commande nécessite un terminal. Lancez `npx bmad-plus ' +
|
|
156
|
+
command +
|
|
157
|
+
' --yes` pour continuer sans invite.',
|
|
158
|
+
manifest_invalid: (error) =>
|
|
159
|
+
'Le manifeste d’installation est illisible ou corrompu : ' + error + '',
|
|
152
160
|
manifest_repair: 'Vérifiez _bmad/.bmad-plus-install.json et réparez-le avant de réessayer.',
|
|
153
161
|
uninstall_not_installed: 'BMAD+ n’est pas installé dans ce répertoire.',
|
|
154
|
-
uninstall_aborted: (error) =>
|
|
155
|
-
uninstall_preserved:
|
|
162
|
+
uninstall_aborted: (error) => 'Désinstallation interrompue : ' + error + '',
|
|
163
|
+
uninstall_preserved:
|
|
164
|
+
'La mémoire, les réglages et les fichiers inconnus ou modifiés ont été conservés.',
|
|
156
165
|
uninstall_removing: 'Suppression...',
|
|
157
166
|
uninstall_done: (n) => `✅ BMAD+ supprimé (${n} éléments)`,
|
|
158
167
|
uninstall_output_kept: '📁 _bmad-output/ conservé (contient des fichiers)',
|
|
@@ -165,7 +174,7 @@ const LANGUAGES = {
|
|
|
165
174
|
guide_cli_title: 'Commandes CLI',
|
|
166
175
|
guide_cli_install: '— Installer agents & skills',
|
|
167
176
|
guide_cli_update: '— Mettre à jour (conserve la config)',
|
|
168
|
-
guide_cli_doctor:
|
|
177
|
+
guide_cli_doctor: "— Vérifier l'installation",
|
|
169
178
|
guide_cli_uninstall: '— Supprimer BMAD+ du projet',
|
|
170
179
|
guide_examples_title: 'Exemples rapides',
|
|
171
180
|
guide_example_seo: '🔍 SEO : "/seo audit https://example.com"',
|
|
@@ -174,7 +183,7 @@ const LANGUAGES = {
|
|
|
174
183
|
guide_example_osint: '🔍 OSINT : "Shadow, investigate John Doe"',
|
|
175
184
|
guide_memory: '🧠 Cerveau persistant',
|
|
176
185
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
177
|
-
guide_example_memory_1: '🧠 Mémoire : "Zecher, scanne les projets dans
|
|
186
|
+
guide_example_memory_1: '🧠 Mémoire : "Zecher, scanne les projets dans ~/projects"',
|
|
178
187
|
guide_example_memory_2: '🧠 Mémoire : "Zecher, où en étions-nous ?"',
|
|
179
188
|
guide_example_memory_3: '🧠 Mémoire : "Zecher, consolide la mémoire"',
|
|
180
189
|
guide_example_dev_studio_1: '🏗️ Dev Studio : "Miriam, brainstorme une app de productivité"',
|
|
@@ -226,20 +235,27 @@ const LANGUAGES = {
|
|
|
226
235
|
guide_animated: 'Sitio web animado de lujo',
|
|
227
236
|
guide_shield: '\ud83d\udee1\ufe0f Cumplimiento GRC',
|
|
228
237
|
guide_example_shield_1: '\ud83d\udee1\ufe0f GRC: "Shield, audita mi app para GDPR"',
|
|
229
|
-
guide_example_shield_2:
|
|
230
|
-
|
|
238
|
+
guide_example_shield_2:
|
|
239
|
+
'\ud83d\udee1\ufe0f GRC: "Shield, an\u00e1lisis de brechas ISO 27001 vs NIST CSF"',
|
|
240
|
+
guide_example_shield_3:
|
|
241
|
+
'\ud83d\udee1\ufe0f GRC: "Shield, genera checklist de evidencias SOC 2"',
|
|
231
242
|
guide_workflow: '🚀 Flujo recomendado:',
|
|
232
243
|
guide_or_auto: '⚡ O: "autopilot" para gestionar todo automáticamente',
|
|
233
244
|
guide_output: '📁 Salida',
|
|
234
245
|
guide_ready: '¡BMAD+ está listo! Habla con Atlas para comenzar 🚀',
|
|
235
246
|
guide_credits: '✨ BMAD+ es creado por Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
236
247
|
uninstall_confirm: '¿Eliminar BMAD+ de este proyecto?',
|
|
237
|
-
noninteractive_requires_yes: (command) =>
|
|
238
|
-
|
|
248
|
+
noninteractive_requires_yes: (command) =>
|
|
249
|
+
'Este comando requiere una terminal. Ejecute `npx bmad-plus ' +
|
|
250
|
+
command +
|
|
251
|
+
' --yes` para continuar sin preguntas.',
|
|
252
|
+
manifest_invalid: (error) =>
|
|
253
|
+
'El manifiesto de instalación no se puede leer o está dañado: ' + error + '',
|
|
239
254
|
manifest_repair: 'Revise _bmad/.bmad-plus-install.json y repárelo antes de reintentar.',
|
|
240
255
|
uninstall_not_installed: 'BMAD+ no está instalado en este directorio.',
|
|
241
|
-
uninstall_aborted: (error) =>
|
|
242
|
-
uninstall_preserved:
|
|
256
|
+
uninstall_aborted: (error) => 'Desinstalación interrumpida: ' + error + '',
|
|
257
|
+
uninstall_preserved:
|
|
258
|
+
'Se han conservado la memoria, los ajustes y los archivos desconocidos o modificados.',
|
|
243
259
|
uninstall_removing: 'Eliminando...',
|
|
244
260
|
uninstall_done: (n) => `✅ BMAD+ eliminado (${n} elementos)`,
|
|
245
261
|
uninstall_output_kept: '📁 _bmad-output/ conservado (contiene archivos)',
|
|
@@ -261,10 +277,11 @@ const LANGUAGES = {
|
|
|
261
277
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
262
278
|
guide_memory: '🧠 Cerebro persistente',
|
|
263
279
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
264
|
-
guide_example_memory_1: '🧠 Memoria: "Zecher, escanea proyectos en
|
|
280
|
+
guide_example_memory_1: '🧠 Memoria: "Zecher, escanea proyectos en ~/projects"',
|
|
265
281
|
guide_example_memory_2: '🧠 Memoria: "Zecher, ¿dónde estábamos?"',
|
|
266
282
|
guide_example_memory_3: '🧠 Memoria: "Zecher, consolida la memoria"',
|
|
267
|
-
guide_example_dev_studio_1:
|
|
283
|
+
guide_example_dev_studio_1:
|
|
284
|
+
'🏗️ Dev Studio: "Miriam, haz una lluvia de ideas para una app de productividad"',
|
|
268
285
|
guide_example_dev_studio_2: '🏗️ Dev Studio: "Bezalel, diseña la arquitectura"',
|
|
269
286
|
guide_example_dev_studio_3: '🏗️ Dev Studio: "Oholiab, implementa la historia S1"',
|
|
270
287
|
brain_detected: 'Cerebro existente detectado',
|
|
@@ -312,21 +329,29 @@ const LANGUAGES = {
|
|
|
312
329
|
guide_backup: 'Intelligente Projektsicherung',
|
|
313
330
|
guide_animated: 'Animierte Luxus-Website',
|
|
314
331
|
guide_shield: '\ud83d\udee1\ufe0f GRC-Compliance',
|
|
315
|
-
guide_example_shield_1:
|
|
332
|
+
guide_example_shield_1:
|
|
333
|
+
'\ud83d\udee1\ufe0f GRC: "Shield, pr\u00fcfe meine App auf DSGVO-Konformit\u00e4t"',
|
|
316
334
|
guide_example_shield_2: '\ud83d\udee1\ufe0f GRC: "Shield, Gap-Analyse ISO 27001 vs NIST CSF"',
|
|
317
335
|
guide_example_shield_3: '\ud83d\udee1\ufe0f GRC: "Shield, erstelle SOC 2 Nachweisliste"',
|
|
318
336
|
guide_workflow: '🚀 Empfohlener Workflow:',
|
|
319
337
|
guide_or_auto: '⚡ Oder: "autopilot" für vollautomatische Verwaltung',
|
|
320
338
|
guide_output: '📁 Ausgabe',
|
|
321
339
|
guide_ready: 'BMAD+ ist bereit! Sprich mit Atlas um loszulegen 🚀',
|
|
322
|
-
guide_credits:
|
|
340
|
+
guide_credits:
|
|
341
|
+
'✨ BMAD+ wurde erstellt von Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
323
342
|
uninstall_confirm: 'BMAD+ aus diesem Projekt entfernen?',
|
|
324
|
-
noninteractive_requires_yes: (command) =>
|
|
325
|
-
|
|
326
|
-
|
|
343
|
+
noninteractive_requires_yes: (command) =>
|
|
344
|
+
'Dieser Befehl benötigt ein Terminal. Führen Sie `npx bmad-plus ' +
|
|
345
|
+
command +
|
|
346
|
+
' --yes` aus, um ohne Rückfragen fortzufahren.',
|
|
347
|
+
manifest_invalid: (error) =>
|
|
348
|
+
'Das Installationsmanifest ist unlesbar oder beschädigt: ' + error + '',
|
|
349
|
+
manifest_repair:
|
|
350
|
+
'Prüfen und reparieren Sie _bmad/.bmad-plus-install.json vor einem erneuten Versuch.',
|
|
327
351
|
uninstall_not_installed: 'BMAD+ ist in diesem Verzeichnis nicht installiert.',
|
|
328
|
-
uninstall_aborted: (error) =>
|
|
329
|
-
uninstall_preserved:
|
|
352
|
+
uninstall_aborted: (error) => 'Deinstallation abgebrochen: ' + error + '',
|
|
353
|
+
uninstall_preserved:
|
|
354
|
+
'Projektspeicher, Einstellungen sowie unbekannte oder geänderte Dateien wurden erhalten.',
|
|
330
355
|
uninstall_removing: 'Entfernen...',
|
|
331
356
|
uninstall_done: (n) => `✅ BMAD+ entfernt (${n} Elemente)`,
|
|
332
357
|
uninstall_output_kept: '📁 _bmad-output/ beibehalten (enthält Dateien)',
|
|
@@ -348,7 +373,7 @@ const LANGUAGES = {
|
|
|
348
373
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
349
374
|
guide_memory: '🧠 Beständiges Gehirn',
|
|
350
375
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
351
|
-
guide_example_memory_1: '🧠 Gedächtnis: "Zecher, scanne Projekte in
|
|
376
|
+
guide_example_memory_1: '🧠 Gedächtnis: "Zecher, scanne Projekte in ~/projects"',
|
|
352
377
|
guide_example_memory_2: '🧠 Gedächtnis: "Zecher, wo waren wir?"',
|
|
353
378
|
guide_example_memory_3: '🧠 Gedächtnis: "Zecher, konsolidiere Gedächtnis"',
|
|
354
379
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, brainstorme eine Produktivitäts-App"',
|
|
@@ -371,7 +396,8 @@ const LANGUAGES = {
|
|
|
371
396
|
selected_packs: 'Packs selecionados',
|
|
372
397
|
enter_name: 'Seu nome (os agentes usam para te cumprimentar)',
|
|
373
398
|
comm_language: 'Idioma de comunicação',
|
|
374
|
-
uat_environment:
|
|
399
|
+
uat_environment:
|
|
400
|
+
'Ambiente de teste para receitas de aceitação humana (URL, vazio se não houver)',
|
|
375
401
|
exec_mode: 'Modo de execução',
|
|
376
402
|
exec_manual: 'Manual — Você chama os agentes',
|
|
377
403
|
exec_autopilot: 'Autopilot — Nexus gerencia todo o pipeline',
|
|
@@ -400,20 +426,27 @@ const LANGUAGES = {
|
|
|
400
426
|
guide_animated: 'Site animado de luxo',
|
|
401
427
|
guide_shield: '\ud83d\udee1\ufe0f Conformidade GRC',
|
|
402
428
|
guide_example_shield_1: '\ud83d\udee1\ufe0f GRC: "Shield, audite meu app para LGPD"',
|
|
403
|
-
guide_example_shield_2:
|
|
404
|
-
|
|
429
|
+
guide_example_shield_2:
|
|
430
|
+
'\ud83d\udee1\ufe0f GRC: "Shield, an\u00e1lise de lacunas ISO 27001 vs NIST CSF"',
|
|
431
|
+
guide_example_shield_3:
|
|
432
|
+
'\ud83d\udee1\ufe0f GRC: "Shield, gere checklist de evid\u00eancias SOC 2"',
|
|
405
433
|
guide_workflow: '🚀 Fluxo recomendado:',
|
|
406
434
|
guide_or_auto: '⚡ Ou: "autopilot" para gerenciar tudo automaticamente',
|
|
407
435
|
guide_output: '📁 Saída',
|
|
408
436
|
guide_ready: 'BMAD+ está pronto! Fale com Atlas para começar 🚀',
|
|
409
437
|
guide_credits: '✨ BMAD+ foi criado por Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
410
438
|
uninstall_confirm: 'Remover BMAD+ deste projeto?',
|
|
411
|
-
noninteractive_requires_yes: (command) =>
|
|
412
|
-
|
|
439
|
+
noninteractive_requires_yes: (command) =>
|
|
440
|
+
'Este comando exige um terminal. Execute `npx bmad-plus ' +
|
|
441
|
+
command +
|
|
442
|
+
' --yes` para continuar sem perguntas.',
|
|
443
|
+
manifest_invalid: (error) =>
|
|
444
|
+
'O manifesto de instalação está ilegível ou corrompido: ' + error + '',
|
|
413
445
|
manifest_repair: 'Verifique e repare _bmad/.bmad-plus-install.json antes de tentar novamente.',
|
|
414
446
|
uninstall_not_installed: 'BMAD+ não está instalado neste diretório.',
|
|
415
|
-
uninstall_aborted: (error) =>
|
|
416
|
-
uninstall_preserved:
|
|
447
|
+
uninstall_aborted: (error) => 'Desinstalação interrompida: ' + error + '',
|
|
448
|
+
uninstall_preserved:
|
|
449
|
+
'A memória, as configurações e os arquivos desconhecidos ou modificados foram preservados.',
|
|
417
450
|
uninstall_removing: 'Removendo...',
|
|
418
451
|
uninstall_done: (n) => `✅ BMAD+ removido (${n} itens)`,
|
|
419
452
|
uninstall_output_kept: '📁 _bmad-output/ mantido (contém arquivos)',
|
|
@@ -435,10 +468,11 @@ const LANGUAGES = {
|
|
|
435
468
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
436
469
|
guide_memory: '🧠 Cérebro persistente',
|
|
437
470
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
438
|
-
guide_example_memory_1: '🧠 Memória: "Zecher, escaneie projetos em
|
|
471
|
+
guide_example_memory_1: '🧠 Memória: "Zecher, escaneie projetos em ~/projects"',
|
|
439
472
|
guide_example_memory_2: '🧠 Memória: "Zecher, onde estávamos?"',
|
|
440
473
|
guide_example_memory_3: '🧠 Memória: "Zecher, consolide a memória"',
|
|
441
|
-
guide_example_dev_studio_1:
|
|
474
|
+
guide_example_dev_studio_1:
|
|
475
|
+
'🏗️ Dev Studio: "Miriam, faça um brainstorm de um app de produtividade"',
|
|
442
476
|
guide_example_dev_studio_2: '🏗️ Dev Studio: "Bezalel, projete a arquitetura"',
|
|
443
477
|
guide_example_dev_studio_3: '🏗️ Dev Studio: "Oholiab, implemente a história S1"',
|
|
444
478
|
brain_detected: 'Cérebro existente detectado',
|
|
@@ -495,11 +529,15 @@ const LANGUAGES = {
|
|
|
495
529
|
guide_ready: 'BMAD+ готов! Поговорите с Atlas чтобы начать 🚀',
|
|
496
530
|
guide_credits: '✨ BMAD+ создан Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
497
531
|
uninstall_confirm: 'Удалить BMAD+ из этого проекта?',
|
|
498
|
-
noninteractive_requires_yes: (command) =>
|
|
499
|
-
|
|
500
|
-
|
|
532
|
+
noninteractive_requires_yes: (command) =>
|
|
533
|
+
'Для этой команды нужен терминал. Запустите `npx bmad-plus ' +
|
|
534
|
+
command +
|
|
535
|
+
' --yes`, чтобы продолжить без запросов.',
|
|
536
|
+
manifest_invalid: (error) => 'Манифест установки недоступен или повреждён: ' + error + '',
|
|
537
|
+
manifest_repair:
|
|
538
|
+
'Проверьте и исправьте _bmad/.bmad-plus-install.json перед повторной попыткой.',
|
|
501
539
|
uninstall_not_installed: 'BMAD+ не установлен в этом каталоге.',
|
|
502
|
-
uninstall_aborted: (error) =>
|
|
540
|
+
uninstall_aborted: (error) => 'Удаление прервано: ' + error + '',
|
|
503
541
|
uninstall_preserved: 'Память проекта, настройки и неизвестные или изменённые файлы сохранены.',
|
|
504
542
|
uninstall_removing: 'Удаление...',
|
|
505
543
|
uninstall_done: (n) => `✅ BMAD+ удалён (${n} элементов)`,
|
|
@@ -522,7 +560,7 @@ const LANGUAGES = {
|
|
|
522
560
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
523
561
|
guide_memory: '🧠 Постоянный мозг',
|
|
524
562
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
525
|
-
guide_example_memory_1: '🧠 Память: "Zecher, сканируй проекты в
|
|
563
|
+
guide_example_memory_1: '🧠 Память: "Zecher, сканируй проекты в ~/projects"',
|
|
526
564
|
guide_example_memory_2: '🧠 Память: "Zecher, на чём мы остановились?"',
|
|
527
565
|
guide_example_memory_3: '🧠 Память: "Zecher, консолидируй память"',
|
|
528
566
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, проведи мозговой штурм приложения"',
|
|
@@ -582,11 +620,12 @@ const LANGUAGES = {
|
|
|
582
620
|
guide_ready: 'BMAD+ 已就绪!与 Atlas 交谈开始 🚀',
|
|
583
621
|
guide_credits: '✨ BMAD+ 由 Laurent Rochetta 创建 — github.com/lrochetta/BMAD-PLUS ✨',
|
|
584
622
|
uninstall_confirm: '从此项目中删除 BMAD+?',
|
|
585
|
-
noninteractive_requires_yes: (command) =>
|
|
586
|
-
|
|
623
|
+
noninteractive_requires_yes: (command) =>
|
|
624
|
+
'此命令需要终端。运行 `npx bmad-plus ' + command + ' --yes` 可跳过提示并继续。',
|
|
625
|
+
manifest_invalid: (error) => '安装清单无法读取或已损坏:' + error + '',
|
|
587
626
|
manifest_repair: '请检查并修复 _bmad/.bmad-plus-install.json 后重试。',
|
|
588
627
|
uninstall_not_installed: '此目录未安装 BMAD+。',
|
|
589
|
-
uninstall_aborted: (error) =>
|
|
628
|
+
uninstall_aborted: (error) => '卸载已中止:' + error + '',
|
|
590
629
|
uninstall_preserved: '项目记忆、设置以及未知或修改过的文件已保留。',
|
|
591
630
|
uninstall_removing: '删除中...',
|
|
592
631
|
uninstall_done: (n) => `✅ BMAD+ 已删除(${n} 项)`,
|
|
@@ -609,7 +648,7 @@ const LANGUAGES = {
|
|
|
609
648
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
610
649
|
guide_memory: '🧠 持久记忆',
|
|
611
650
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
612
|
-
guide_example_memory_1: '🧠 记忆: "Zecher, 扫描
|
|
651
|
+
guide_example_memory_1: '🧠 记忆: "Zecher, 扫描 ~/projects 中的项目"',
|
|
613
652
|
guide_example_memory_2: '🧠 记忆: "Zecher, 我们进行到哪里了?"',
|
|
614
653
|
guide_example_memory_3: '🧠 记忆: "Zecher, 整合记忆"',
|
|
615
654
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, 集思广益一个生产力应用"',
|
|
@@ -669,11 +708,12 @@ const LANGUAGES = {
|
|
|
669
708
|
guide_ready: '!BMAD+ מוכן! דבר עם Atlas כדי להתחיל 🚀',
|
|
670
709
|
guide_credits: '✨ BMAD+ נוצר על ידי Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
671
710
|
uninstall_confirm: 'להסיר את BMAD+ מהפרויקט הזה?',
|
|
672
|
-
noninteractive_requires_yes: (command) =>
|
|
673
|
-
|
|
711
|
+
noninteractive_requires_yes: (command) =>
|
|
712
|
+
'פקודה זו דורשת מסוף. להרצה ללא שאלות, הפעילו `npx bmad-plus ' + command + ' --yes`.',
|
|
713
|
+
manifest_invalid: (error) => 'קובץ פרטי ההתקנה אינו קריא או פגום: ' + error + '',
|
|
674
714
|
manifest_repair: 'בדקו ותקנו את _bmad/.bmad-plus-install.json לפני ניסיון נוסף.',
|
|
675
715
|
uninstall_not_installed: 'BMAD+ אינו מותקן בתיקייה זו.',
|
|
676
|
-
uninstall_aborted: (error) =>
|
|
716
|
+
uninstall_aborted: (error) => 'ההסרה הופסקה: ' + error + '',
|
|
677
717
|
uninstall_preserved: 'זיכרון הפרויקט, ההגדרות וקבצים לא מוכרים או ששונו נשמרו.',
|
|
678
718
|
uninstall_removing: 'מסיר...',
|
|
679
719
|
uninstall_done: (n) => `✅ BMAD+ הוסר (${n} פריטים)`,
|
|
@@ -696,7 +736,7 @@ const LANGUAGES = {
|
|
|
696
736
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
697
737
|
guide_memory: '🧠 זיכרון מתמשך',
|
|
698
738
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
699
|
-
guide_example_memory_1: '🧠 זיכרון: "Zecher, סרוק פרויקטים
|
|
739
|
+
guide_example_memory_1: '🧠 זיכרון: "Zecher, סרוק פרויקטים ב-~/projects"',
|
|
700
740
|
guide_example_memory_2: '🧠 זיכרון: "Zecher, איפה היינו?"',
|
|
701
741
|
guide_example_memory_3: '🧠 זיכרון: "Zecher, אחד זיכרון"',
|
|
702
742
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, עשה סיעור מוחות לאפליקציית פרודוקטיביות"',
|
|
@@ -754,14 +794,19 @@ const LANGUAGES = {
|
|
|
754
794
|
guide_or_auto: '⚡ または: "autopilot" で全自動管理',
|
|
755
795
|
guide_output: '📁 出力',
|
|
756
796
|
guide_ready: 'BMAD+ 準備完了!Atlasに話しかけて始めましょう 🚀',
|
|
757
|
-
guide_credits:
|
|
797
|
+
guide_credits:
|
|
798
|
+
'✨ BMAD+ は Laurent Rochetta によって作成されました — github.com/lrochetta/BMAD-PLUS ✨',
|
|
758
799
|
uninstall_confirm: 'このプロジェクトからBMAD+を削除しますか?',
|
|
759
|
-
noninteractive_requires_yes: (command) =>
|
|
760
|
-
|
|
800
|
+
noninteractive_requires_yes: (command) =>
|
|
801
|
+
'このコマンドには端末が必要です。確認なしで続行するには `npx bmad-plus ' +
|
|
802
|
+
command +
|
|
803
|
+
' --yes` を実行してください。',
|
|
804
|
+
manifest_invalid: (error) => 'インストール情報を読み込めないか破損しています:' + error + '',
|
|
761
805
|
manifest_repair: '_bmad/.bmad-plus-install.json を確認・修復してから再試行してください。',
|
|
762
806
|
uninstall_not_installed: 'このディレクトリには BMAD+ がインストールされていません。',
|
|
763
|
-
uninstall_aborted: (error) =>
|
|
764
|
-
uninstall_preserved:
|
|
807
|
+
uninstall_aborted: (error) => 'アンインストールを中止しました:' + error + '',
|
|
808
|
+
uninstall_preserved:
|
|
809
|
+
'プロジェクトの記憶、設定、不明なファイルや変更されたファイルは保持されました。',
|
|
765
810
|
uninstall_removing: '削除中...',
|
|
766
811
|
uninstall_done: (n) => `✅ BMAD+を削除しました(${n}項目)`,
|
|
767
812
|
uninstall_output_kept: '📁 _bmad-output/ は保持されました(ファイルが含まれています)',
|
|
@@ -783,7 +828,7 @@ const LANGUAGES = {
|
|
|
783
828
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
784
829
|
guide_memory: '🧠 永続的な脳',
|
|
785
830
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
786
|
-
guide_example_memory_1: '🧠 記憶: "Zecher,
|
|
831
|
+
guide_example_memory_1: '🧠 記憶: "Zecher, ~/projects のプロジェクトをスキャン"',
|
|
787
832
|
guide_example_memory_2: '🧠 記憶: "Zecher, どこまで進んだ?"',
|
|
788
833
|
guide_example_memory_3: '🧠 記憶: "Zecher, 記憶を統合"',
|
|
789
834
|
guide_example_dev_studio_1: '🏗️ Dev Studio: "Miriam, 生産性アプリをブレインストーミング"',
|
|
@@ -806,10 +851,11 @@ const LANGUAGES = {
|
|
|
806
851
|
selected_packs: 'Pack selezionati',
|
|
807
852
|
enter_name: 'Il tuo nome (gli agenti lo usano per salutarti)',
|
|
808
853
|
comm_language: 'Lingua di comunicazione',
|
|
809
|
-
uat_environment:
|
|
854
|
+
uat_environment:
|
|
855
|
+
'Ambiente di test per le verifiche di accettazione umana (URL, vuoto se nessuno)',
|
|
810
856
|
exec_mode: 'Modalità di esecuzione',
|
|
811
857
|
exec_manual: 'Manuale — Chiami tu gli agenti',
|
|
812
|
-
exec_autopilot:
|
|
858
|
+
exec_autopilot: "Autopilot — Nexus gestisce l'intera pipeline",
|
|
813
859
|
exec_hybrid: 'Ibrido — Autopilot con checkpoint frequenti',
|
|
814
860
|
installing_files: 'Installazione file in corso...',
|
|
815
861
|
configuring_ides: 'Configurazione IDE...',
|
|
@@ -821,7 +867,7 @@ const LANGUAGES = {
|
|
|
821
867
|
soon: 'prossimamente',
|
|
822
868
|
guide_title: '✅ Installazione completata — Come iniziare',
|
|
823
869
|
guide_who: '💬 Con chi parlare?',
|
|
824
|
-
guide_idea:
|
|
870
|
+
guide_idea: "Discutere un'idea",
|
|
825
871
|
guide_prd: 'Creare un PRD',
|
|
826
872
|
guide_arch: 'Architettura tecnica',
|
|
827
873
|
guide_code: 'Implementare codice',
|
|
@@ -843,12 +889,17 @@ const LANGUAGES = {
|
|
|
843
889
|
guide_ready: 'BMAD+ è pronto! Parla con Atlas per iniziare 🚀',
|
|
844
890
|
guide_credits: '✨ BMAD+ è creato da Laurent Rochetta — github.com/lrochetta/BMAD-PLUS ✨',
|
|
845
891
|
uninstall_confirm: 'Rimuovere BMAD+ da questo progetto?',
|
|
846
|
-
noninteractive_requires_yes: (command) =>
|
|
847
|
-
|
|
892
|
+
noninteractive_requires_yes: (command) =>
|
|
893
|
+
'Questo comando richiede un terminale. Eseguire `npx bmad-plus ' +
|
|
894
|
+
command +
|
|
895
|
+
' --yes` per continuare senza domande.',
|
|
896
|
+
manifest_invalid: (error) =>
|
|
897
|
+
'Il manifesto di installazione è illeggibile o danneggiato: ' + error + '',
|
|
848
898
|
manifest_repair: 'Controllare e riparare _bmad/.bmad-plus-install.json prima di riprovare.',
|
|
849
899
|
uninstall_not_installed: 'BMAD+ non è installato in questa directory.',
|
|
850
|
-
uninstall_aborted: (error) =>
|
|
851
|
-
uninstall_preserved:
|
|
900
|
+
uninstall_aborted: (error) => 'Disinstallazione interrotta: ' + error + '',
|
|
901
|
+
uninstall_preserved:
|
|
902
|
+
'La memoria, le impostazioni e i file sconosciuti o modificati sono stati conservati.',
|
|
852
903
|
uninstall_removing: 'Rimozione...',
|
|
853
904
|
uninstall_done: (n) => `✅ BMAD+ rimosso (${n} elementi)`,
|
|
854
905
|
uninstall_output_kept: '📁 _bmad-output/ conservato (contiene file)',
|
|
@@ -870,10 +921,11 @@ const LANGUAGES = {
|
|
|
870
921
|
guide_example_osint: '🔍 OSINT: "Shadow, investigate John Doe"',
|
|
871
922
|
guide_memory: '🧠 Memoria persistente',
|
|
872
923
|
guide_dev_studio: '🏗️ Dev Studio',
|
|
873
|
-
guide_example_memory_1: '🧠 Memoria: "Zecher, scansiona progetti in
|
|
924
|
+
guide_example_memory_1: '🧠 Memoria: "Zecher, scansiona progetti in ~/projects"',
|
|
874
925
|
guide_example_memory_2: '🧠 Memoria: "Zecher, dove eravamo?"',
|
|
875
926
|
guide_example_memory_3: '🧠 Memoria: "Zecher, consolida la memoria"',
|
|
876
|
-
guide_example_dev_studio_1:
|
|
927
|
+
guide_example_dev_studio_1:
|
|
928
|
+
'🏗️ Dev Studio: "Miriam, fai un brainstorming di un\'app di produttività"',
|
|
877
929
|
guide_example_dev_studio_2: '🏗️ Dev Studio: "Bezalel, progetta l\'architettura"',
|
|
878
930
|
guide_example_dev_studio_3: '🏗️ Dev Studio: "Oholiab, implementa la storia S1"',
|
|
879
931
|
brain_detected: 'Cervello esistente rilevato',
|