feat: Move AgentVibes prompt after tool selection with smart defaults
- Move AgentVibes TTS prompt to after IDE/tool selection - Default to Y if Claude Code is selected (since AgentVibes only works with Claude Code) - Default to N if Claude Code is not selected - Remove mid-install warning about AgentVibes not being installed (handled at end) - Pass configured IDEs to quick update flow for consistent behavior 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
08aaf5e2f3
commit
fe79f77768
|
|
@ -1987,10 +1987,11 @@ If AgentVibes party mode is enabled, immediately trigger TTS with agent's voice:
|
||||||
}
|
}
|
||||||
|
|
||||||
// If AgentVibes wasn't previously configured, prompt the user
|
// If AgentVibes wasn't previously configured, prompt the user
|
||||||
|
// Use configuredIdes from line 1904 for smart default (Y if Claude Code is selected)
|
||||||
if (!agentVibesPreviouslyConfigured) {
|
if (!agentVibesPreviouslyConfigured) {
|
||||||
const { UI } = require('../../../lib/ui');
|
const { UI } = require('../../../lib/ui');
|
||||||
const ui = new UI();
|
const ui = new UI();
|
||||||
const agentVibesConfig = await ui.promptAgentVibes(projectDir);
|
const agentVibesConfig = await ui.promptAgentVibes(projectDir, configuredIdes);
|
||||||
|
|
||||||
if (agentVibesConfig.enableTts) {
|
if (agentVibesConfig.enableTts) {
|
||||||
agentVibesEnabled = true;
|
agentVibesEnabled = true;
|
||||||
|
|
|
||||||
|
|
@ -119,13 +119,14 @@ class UI {
|
||||||
const moduleChoices = await this.getModuleChoices(installedModuleIds);
|
const moduleChoices = await this.getModuleChoices(installedModuleIds);
|
||||||
const selectedModules = await this.selectModules(moduleChoices);
|
const selectedModules = await this.selectModules(moduleChoices);
|
||||||
|
|
||||||
// Prompt for AgentVibes TTS integration
|
|
||||||
const agentVibesConfig = await this.promptAgentVibes(confirmedDirectory);
|
|
||||||
|
|
||||||
// Collect IDE tool selection AFTER configuration prompts (fixes Windows/PowerShell hang)
|
// Collect IDE tool selection AFTER configuration prompts (fixes Windows/PowerShell hang)
|
||||||
// This allows text-based prompts to complete before the checkbox prompt
|
// This allows text-based prompts to complete before the checkbox prompt
|
||||||
const toolSelection = await this.promptToolSelection(confirmedDirectory, selectedModules);
|
const toolSelection = await this.promptToolSelection(confirmedDirectory, selectedModules);
|
||||||
|
|
||||||
|
// Prompt for AgentVibes TTS integration AFTER tool selection
|
||||||
|
// Default to Y if Claude Code is selected (since AgentVibes only works with Claude Code)
|
||||||
|
const agentVibesConfig = await this.promptAgentVibes(confirmedDirectory, toolSelection.ides);
|
||||||
|
|
||||||
// No more screen clearing - keep output flowing
|
// No more screen clearing - keep output flowing
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|
@ -753,7 +754,7 @@ class UI {
|
||||||
* - Markers: src/core/workflows/party-mode/instructions.md:101, src/modules/bmm/agents/*.md
|
* - Markers: src/core/workflows/party-mode/instructions.md:101, src/modules/bmm/agents/*.md
|
||||||
* - GitHub Issue: paulpreibisch/AgentVibes#36
|
* - GitHub Issue: paulpreibisch/AgentVibes#36
|
||||||
*/
|
*/
|
||||||
async promptAgentVibes(projectDir) {
|
async promptAgentVibes(projectDir, selectedIdes = []) {
|
||||||
CLIUtils.displaySection('🎤 Voice Features', 'Enable TTS for multi-agent conversations');
|
CLIUtils.displaySection('🎤 Voice Features', 'Enable TTS for multi-agent conversations');
|
||||||
|
|
||||||
// Check if AgentVibes is already installed
|
// Check if AgentVibes is already installed
|
||||||
|
|
@ -765,20 +766,21 @@ class UI {
|
||||||
console.log(chalk.dim(' AgentVibes not detected'));
|
console.log(chalk.dim(' AgentVibes not detected'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Default to Y if Claude Code is selected (AgentVibes only works with Claude Code)
|
||||||
|
const claudeCodeSelected = selectedIdes.includes('claude-code');
|
||||||
|
const defaultValue = claudeCodeSelected;
|
||||||
|
|
||||||
const answers = await inquirer.prompt([
|
const answers = await inquirer.prompt([
|
||||||
{
|
{
|
||||||
type: 'confirm',
|
type: 'confirm',
|
||||||
name: 'enableTts',
|
name: 'enableTts',
|
||||||
message: 'Enable Agents to Speak Out loud (powered by Agent Vibes? Claude Code only currently)',
|
message: 'Enable Agents to Speak Out loud (powered by AgentVibes, Claude Code only)',
|
||||||
default: false, // Default to yes - recommended for best experience
|
default: defaultValue,
|
||||||
},
|
},
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if (answers.enableTts && !agentVibesInstalled) {
|
// Note: AgentVibes installer runs at end of BMAD install if enabled and not already installed
|
||||||
console.log(chalk.yellow('\n ⚠️ AgentVibes not installed'));
|
// No need to show warning here - the installer will handle it
|
||||||
console.log(chalk.dim(' Install AgentVibes separately to enable TTS:'));
|
|
||||||
console.log(chalk.dim(' https://github.com/paulpreibisch/AgentVibes\n'));
|
|
||||||
}
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
enabled: answers.enableTts,
|
enabled: answers.enableTts,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue