agentvibes 2.4.1 → 2.4.2

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.
Files changed (124) hide show
  1. package/.bmad-core/agent-teams/team-all.yaml +15 -0
  2. package/.bmad-core/agent-teams/team-fullstack.yaml +19 -0
  3. package/.bmad-core/agent-teams/team-ide-minimal.yaml +11 -0
  4. package/.bmad-core/agent-teams/team-no-ui.yaml +14 -0
  5. package/.bmad-core/agents/analyst.md +84 -0
  6. package/.bmad-core/agents/architect.md +85 -0
  7. package/.bmad-core/agents/bmad-master.md +110 -0
  8. package/.bmad-core/agents/bmad-orchestrator.md +147 -0
  9. package/.bmad-core/agents/dev.md +81 -0
  10. package/.bmad-core/agents/pm.md +84 -0
  11. package/.bmad-core/agents/po.md +79 -0
  12. package/.bmad-core/agents/qa.md +87 -0
  13. package/.bmad-core/agents/sm.md +65 -0
  14. package/.bmad-core/agents/ux-expert.md +69 -0
  15. package/.bmad-core/checklists/architect-checklist.md +440 -0
  16. package/.bmad-core/checklists/change-checklist.md +184 -0
  17. package/.bmad-core/checklists/pm-checklist.md +372 -0
  18. package/.bmad-core/checklists/po-master-checklist.md +434 -0
  19. package/.bmad-core/checklists/story-dod-checklist.md +96 -0
  20. package/.bmad-core/checklists/story-draft-checklist.md +155 -0
  21. package/.bmad-core/core-config.yaml +22 -0
  22. package/.bmad-core/data/bmad-kb.md +809 -0
  23. package/.bmad-core/data/brainstorming-techniques.md +38 -0
  24. package/.bmad-core/data/elicitation-methods.md +156 -0
  25. package/.bmad-core/data/technical-preferences.md +5 -0
  26. package/.bmad-core/data/test-levels-framework.md +148 -0
  27. package/.bmad-core/data/test-priorities-matrix.md +174 -0
  28. package/.bmad-core/enhanced-ide-development-workflow.md +248 -0
  29. package/.bmad-core/install-manifest.yaml +230 -0
  30. package/.bmad-core/tasks/advanced-elicitation.md +119 -0
  31. package/.bmad-core/tasks/apply-qa-fixes.md +150 -0
  32. package/.bmad-core/tasks/brownfield-create-epic.md +162 -0
  33. package/.bmad-core/tasks/brownfield-create-story.md +149 -0
  34. package/.bmad-core/tasks/correct-course.md +72 -0
  35. package/.bmad-core/tasks/create-brownfield-story.md +314 -0
  36. package/.bmad-core/tasks/create-deep-research-prompt.md +280 -0
  37. package/.bmad-core/tasks/create-doc.md +103 -0
  38. package/.bmad-core/tasks/create-next-story.md +114 -0
  39. package/.bmad-core/tasks/document-project.md +345 -0
  40. package/.bmad-core/tasks/execute-checklist.md +88 -0
  41. package/.bmad-core/tasks/facilitate-brainstorming-session.md +138 -0
  42. package/.bmad-core/tasks/generate-ai-frontend-prompt.md +53 -0
  43. package/.bmad-core/tasks/index-docs.md +175 -0
  44. package/.bmad-core/tasks/kb-mode-interaction.md +77 -0
  45. package/.bmad-core/tasks/nfr-assess.md +345 -0
  46. package/.bmad-core/tasks/qa-gate.md +163 -0
  47. package/.bmad-core/tasks/review-story.md +316 -0
  48. package/.bmad-core/tasks/risk-profile.md +355 -0
  49. package/.bmad-core/tasks/shard-doc.md +187 -0
  50. package/.bmad-core/tasks/test-design.md +176 -0
  51. package/.bmad-core/tasks/trace-requirements.md +266 -0
  52. package/.bmad-core/tasks/validate-next-story.md +136 -0
  53. package/.bmad-core/templates/architecture-tmpl.yaml +651 -0
  54. package/.bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
  55. package/.bmad-core/templates/brownfield-architecture-tmpl.yaml +477 -0
  56. package/.bmad-core/templates/brownfield-prd-tmpl.yaml +281 -0
  57. package/.bmad-core/templates/competitor-analysis-tmpl.yaml +307 -0
  58. package/.bmad-core/templates/front-end-architecture-tmpl.yaml +219 -0
  59. package/.bmad-core/templates/front-end-spec-tmpl.yaml +350 -0
  60. package/.bmad-core/templates/fullstack-architecture-tmpl.yaml +824 -0
  61. package/.bmad-core/templates/market-research-tmpl.yaml +253 -0
  62. package/.bmad-core/templates/prd-tmpl.yaml +203 -0
  63. package/.bmad-core/templates/project-brief-tmpl.yaml +222 -0
  64. package/.bmad-core/templates/qa-gate-tmpl.yaml +103 -0
  65. package/.bmad-core/templates/story-tmpl.yaml +138 -0
  66. package/.bmad-core/user-guide.md +577 -0
  67. package/.bmad-core/utils/bmad-doc-template.md +327 -0
  68. package/.bmad-core/utils/workflow-management.md +71 -0
  69. package/.bmad-core/workflows/brownfield-fullstack.yaml +298 -0
  70. package/.bmad-core/workflows/brownfield-service.yaml +188 -0
  71. package/.bmad-core/workflows/brownfield-ui.yaml +198 -0
  72. package/.bmad-core/workflows/greenfield-fullstack.yaml +241 -0
  73. package/.bmad-core/workflows/greenfield-service.yaml +207 -0
  74. package/.bmad-core/workflows/greenfield-ui.yaml +236 -0
  75. package/.bmad-core/working-in-the-brownfield.md +606 -0
  76. package/.claude/commands/BMad/analyst.md +88 -0
  77. package/.claude/commands/BMad/architect.md +89 -0
  78. package/.claude/commands/BMad/bmad-master.md +114 -0
  79. package/.claude/commands/BMad/bmad-orchestrator.md +151 -0
  80. package/.claude/commands/BMad/dev.md +85 -0
  81. package/.claude/commands/BMad/pm.md +88 -0
  82. package/.claude/commands/BMad/po.md +83 -0
  83. package/.claude/commands/BMad/qa.md +91 -0
  84. package/.claude/commands/BMad/sm.md +69 -0
  85. package/.claude/commands/BMad/tasks/advanced-elicitation.md +123 -0
  86. package/.claude/commands/BMad/tasks/apply-qa-fixes.md +154 -0
  87. package/.claude/commands/BMad/tasks/brownfield-create-epic.md +166 -0
  88. package/.claude/commands/BMad/tasks/brownfield-create-story.md +153 -0
  89. package/.claude/commands/BMad/tasks/correct-course.md +76 -0
  90. package/.claude/commands/BMad/tasks/create-brownfield-story.md +318 -0
  91. package/.claude/commands/BMad/tasks/create-deep-research-prompt.md +284 -0
  92. package/.claude/commands/BMad/tasks/create-doc.md +107 -0
  93. package/.claude/commands/BMad/tasks/create-next-story.md +118 -0
  94. package/.claude/commands/BMad/tasks/document-project.md +349 -0
  95. package/.claude/commands/BMad/tasks/execute-checklist.md +92 -0
  96. package/.claude/commands/BMad/tasks/facilitate-brainstorming-session.md +142 -0
  97. package/.claude/commands/BMad/tasks/generate-ai-frontend-prompt.md +57 -0
  98. package/.claude/commands/BMad/tasks/index-docs.md +179 -0
  99. package/.claude/commands/BMad/tasks/kb-mode-interaction.md +81 -0
  100. package/.claude/commands/BMad/tasks/nfr-assess.md +349 -0
  101. package/.claude/commands/BMad/tasks/qa-gate.md +167 -0
  102. package/.claude/commands/BMad/tasks/review-story.md +320 -0
  103. package/.claude/commands/BMad/tasks/risk-profile.md +359 -0
  104. package/.claude/commands/BMad/tasks/shard-doc.md +191 -0
  105. package/.claude/commands/BMad/tasks/test-design.md +180 -0
  106. package/.claude/commands/BMad/tasks/trace-requirements.md +270 -0
  107. package/.claude/commands/BMad/tasks/validate-next-story.md +140 -0
  108. package/.claude/commands/BMad/ux-expert.md +73 -0
  109. package/.claude/github-star-reminder.txt +1 -0
  110. package/.claude/piper-voices-dir.txt +1 -0
  111. package/.claude/plugins/bmad-voices-enabled.flag +0 -0
  112. package/.mcp.json +88 -0
  113. package/RELEASE_NOTES_v2.4.0_DRAFT.md +116 -0
  114. package/RELEASE_NOTES_v2.4.1_DRAFT.md +61 -0
  115. package/docs/macos-piper-issue.md +172 -0
  116. package/docs/stargazer-cms-prd.md +1918 -0
  117. package/docs/whatsapp-plugin-github-issue.md +393 -0
  118. package/docs/whatsapp-tts-plugin-feasibility.md +418 -0
  119. package/docs/whatsapp-tts-standalone-plugin.md +628 -0
  120. package/linkedin/vibe-coding-and-pulseaudio.md +121 -0
  121. package/mcp-server/agentvibes.db +0 -0
  122. package/package.json +1 -1
  123. package/scripts/audio-tunnel.config +17 -0
  124. package/src/installer.js +40 -4
@@ -0,0 +1,121 @@
1
+ # Vibe Coding: How PulseAudio Can Give Your Remote SSH Session a Voice!
2
+
3
+ My mornings and late evenings are when I'm at my creative peak. I like to use this time for things that are fun—or at least that I think are fun. Since I recently created AgentVibes (a way to make my computer speak back to me), I wanted to solve a limitation I was experiencing while working on a remote server. That curiosity led me down the PulseAudio rabbit hole, and what I discovered fundamentally changed how I code with AI.
4
+
5
+ ## What is "Vibe Coding"?
6
+
7
+ According to Gene Kim, a researcher and author featured in the DORA report, **"vibe coding"** is defined as any form of coding where you don't type out code by hand. Instead of manual typing, the code emerges from an **iterative conversation with an AI**.
8
+
9
+ This is the future of software development. Not replacing developers, but amplifying our capabilities through natural dialogue.
10
+
11
+ ## If We're Going to Have a Conversation, Let's Use Voice
12
+
13
+ When I discovered whisper typing several months ago, it fundamentally changed the way I use my computer. Rather than typing everything to my AI assistant, I now **talk** using whisper typing. The speed, the naturalness, the flow—it was transformative.
14
+
15
+ But then a thought struck me: **If I can talk to my computer, why can't it talk back?**
16
+
17
+ That question led me to create [**AgentVibes**](https://github.com/paulpreibisch/AgentVibes)—a plugin for Claude Code that brings professional text-to-speech narration to your AI coding sessions. Your AI assistant can now acknowledge your requests, confirm task completion, and provide feedback through voice.
18
+
19
+ Imagine this workflow:
20
+ - You speak your coding request using whisper typing
21
+ - Your AI assistant acknowledges with voice: "I'll refactor that authentication module for you"
22
+ - You continue working while hearing real-time progress updates
23
+ - The AI confirms: "Refactoring complete, all tests passing"
24
+
25
+ This is vibe coding at its finest—a natural, conversational flow between human and AI.
26
+
27
+ ## The Remote Server Problem
28
+
29
+ But I discovered a limitation. Since text-to-speech typically executes on the computer you're programming on, **what happens when you're programming on a remote machine via SSH?**
30
+
31
+ This is the reality for many developers:
32
+ - Cloud development environments
33
+ - Powerful remote servers
34
+ - Team shared infrastructure
35
+ - Corporate VDI setups
36
+
37
+ The audio plays on the remote server—where you can't hear it. The conversational flow breaks down. The vibe is lost.
38
+
39
+ ## Enter PulseAudio: The Hidden Hero
40
+
41
+ I went to task trying to figure out if there was a way to somehow play audio from a remote machine onto my local machine. That's when I was introduced to the true capabilities of **PulseAudio**.
42
+
43
+ Now, I've been a Linux user for many years and have used PulseAudio forever. But little did I know that **PulseAudio can actually stream audio over a network**, allowing a client to play audio from a remote server.
44
+
45
+ This completely blew my mind. 🤯
46
+
47
+ Here's what makes this powerful:
48
+
49
+ ### The Architecture
50
+ ```
51
+ Remote Linux Server (PulseAudio)
52
+ ↓ SSH Reverse Tunnel
53
+ Windows Client (WSL/RDP Audio)
54
+
55
+ Local Speakers 🔊
56
+ ```
57
+
58
+ ### What This Enables
59
+ - Run AgentVibes on your remote server
60
+ - Hear TTS announcements on your local speakers
61
+ - Maintain the conversational flow of vibe coding
62
+ - Work from anywhere with full audio feedback
63
+
64
+ I'll tell you, I was **floored** that this was even possible.
65
+
66
+ ## The Game-Changing Impact
67
+
68
+ The ability to have your AI assistant **acknowledge what you've typed and provide vocal confirmation** really does change the game when vibe coding.
69
+
70
+ Here's why it matters:
71
+
72
+ **1. Cognitive Offloading**
73
+ You don't need to constantly check the terminal to see if your AI understood. Voice acknowledgment lets you focus on problem-solving.
74
+
75
+ **2. Natural Flow State**
76
+ Conversations have rhythm. When both parties speak and listen, you stay in flow. Text-only breaks that rhythm.
77
+
78
+ **3. Active Guidance with Voice Feedback**
79
+ Vibe coding doesn't mean you stop paying attention—quite the opposite. You're actively guiding the AI through the implementation, reviewing its decisions, and course-correcting in real-time. Voice acknowledgment keeps you in the loop while your hands stay free to sketch architecture, review documentation, or reference other code. The conversation is continuous, and if you're an experienced developer, the depth and precision of that conversation becomes truly transformative.
80
+
81
+ **4. Reduced Context Switching**
82
+ No need to constantly alt-tab between terminal and code. Your ears keep you updated.
83
+
84
+ ## Try It Yourself
85
+
86
+ Want to experience vibe coding with remote audio? I've documented the entire setup process.
87
+
88
+ **Check out AgentVibes:**
89
+ 📦 GitHub: [github.com/paulpreibisch/AgentVibes](https://github.com/paulpreibisch/AgentVibes)
90
+
91
+ **Remote Audio Setup Guide:**
92
+ 📚 Complete documentation: [Remote Audio Setup](https://github.com/paulpreibisch/AgentVibes/blob/master/docs/remote-audio-setup.md)
93
+
94
+ The setup includes:
95
+ - Automated scripts for Linux and Windows
96
+ - PulseAudio network configuration
97
+ - SSH tunnel setup
98
+ - Troubleshooting guides
99
+ - VS Code Remote-SSH integration
100
+
101
+ It took me a morning to figure out, but now you can set it up in 10 minutes.
102
+
103
+ ## The Bigger Picture
104
+
105
+ This journey taught me something important: **The best developer tools emerge from solving real problems in your own workflow.**
106
+
107
+ I didn't set out to become a PulseAudio expert. I just wanted my AI assistant to talk back when I'm working on remote servers. The solution required diving deep into audio streaming, SSH tunneling, and network protocols—but the result is worth it.
108
+
109
+ Vibe coding isn't just about AI generating code. It's about creating an **environment where human and AI collaborate naturally**—through conversation, through voice, through continuous feedback loops.
110
+
111
+ And sometimes, that requires discovering that the tools you've been using for years have hidden superpowers you never knew existed.
112
+
113
+ ---
114
+
115
+ **What's your experience with AI-assisted development? Have you tried vibe coding? Let's discuss in the comments!**
116
+
117
+ #VibeCoding #AI #DeveloperTools #SoftwareEngineering #PulseAudio #RemoteDevelopment #DevOps #AIAssisted #ClaudeCode #OpenSource
118
+
119
+ ---
120
+
121
+ *P.S. - If you found this interesting, check out the AgentVibes project on GitHub. It's open source, supports multiple TTS providers (including free Piper TTS), and has 30+ professional AI voices. Star the repo if you find it useful!* ⭐
File without changes
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "agentvibes",
4
- "version": "2.4.1",
4
+ "version": "2.4.2",
5
5
  "description": "Now your AI Agents can finally talk back! Professional TTS voice for Claude Code and Claude Desktop (via MCP) with multi-provider support.",
6
6
  "homepage": "https://agentvibes.org",
7
7
  "keywords": [
@@ -0,0 +1,17 @@
1
+ # AgentVibes Audio Tunnel Configuration
2
+ # Personal configuration - DO NOT COMMIT
3
+
4
+ # Remote server hostname (from your ~/.ssh/config)
5
+ REMOTE_HOST="ubuntu-rdp"
6
+
7
+ # Tunnel port (default: 14713)
8
+ TUNNEL_PORT="14713"
9
+
10
+ # PulseAudio socket path (WSL default)
11
+ PULSE_SOCKET="/mnt/wslg/PulseServer"
12
+
13
+ # Log file for automatic fixes
14
+ AUTO_FIX_LOG="/tmp/audio-tunnel-autofix.log"
15
+
16
+ # Healthcheck interval in minutes (for cron setup)
17
+ CHECK_INTERVAL="5"
package/src/installer.js CHANGED
@@ -44,6 +44,7 @@
44
44
  import { program } from 'commander';
45
45
  import path from 'node:path';
46
46
  import fs from 'node:fs/promises';
47
+ import { execSync } from 'node:child_process';
47
48
  import chalk from 'chalk';
48
49
  import inquirer from 'inquirer';
49
50
  import figlet from 'figlet';
@@ -1000,6 +1001,39 @@ async function install(options = {}) {
1000
1001
  await fs.writeFile(activationInstructionsPath, activationContent);
1001
1002
  console.log(chalk.green('📝 Created BMAD activation instructions'));
1002
1003
  }
1004
+
1005
+ // Automatically inject TTS into BMAD agent files
1006
+ console.log(chalk.cyan('\n🎤 Injecting TTS into BMAD agents...'));
1007
+ try {
1008
+ const injectorScript = path.join(claudeDir, 'hooks', 'bmad-tts-injector.sh');
1009
+
1010
+ // Check if the script exists
1011
+ try {
1012
+ await fs.access(injectorScript);
1013
+ } catch {
1014
+ console.log(chalk.yellow('⚠️ bmad-tts-injector.sh not found, skipping automatic injection'));
1015
+ console.log(chalk.gray(' You can manually enable it later with: .claude/hooks/bmad-tts-injector.sh enable'));
1016
+ return;
1017
+ }
1018
+
1019
+ // Make script executable
1020
+ await fs.chmod(injectorScript, 0o755);
1021
+
1022
+ // Run the injection in the target directory
1023
+ const result = execSync(`bash "${injectorScript}" enable`, {
1024
+ cwd: targetDir,
1025
+ encoding: 'utf8',
1026
+ stdio: 'pipe'
1027
+ });
1028
+
1029
+ // Show the output from the injection script
1030
+ console.log(result);
1031
+
1032
+ } catch (error) {
1033
+ console.log(chalk.yellow('⚠️ TTS injection encountered an issue:'));
1034
+ console.log(chalk.gray(` ${error.message}`));
1035
+ console.log(chalk.gray(' You can manually enable it later with: .claude/hooks/bmad-tts-injector.sh enable'));
1036
+ }
1003
1037
  }
1004
1038
 
1005
1039
  if (bmadDetected) {
@@ -1009,14 +1043,16 @@ async function install(options = {}) {
1009
1043
 
1010
1044
  console.log(
1011
1045
  boxen(
1012
- chalk.green.bold(`🎉 BMAD-METHOD ${versionLabel} Detected!\n\n`) +
1046
+ chalk.green.bold(`🎉 BMAD-METHOD ${versionLabel} Integration Complete!\n\n`) +
1013
1047
  chalk.white('✅ BMAD Voice Plugin: AUTO-ENABLED\n') +
1048
+ chalk.white('✅ TTS Hooks: INJECTED into all agent files\n') +
1014
1049
  chalk.gray('Each BMAD agent will automatically use its assigned voice\n') +
1015
1050
  chalk.gray('and speak when activated!\n\n') +
1016
1051
  chalk.cyan('Commands:\n') +
1017
- chalk.gray(' • /agent-vibes:bmad status - View agent voices\n') +
1018
- chalk.gray(' • /agent-vibes:bmad set <agent> <voice> - Customize\n') +
1019
- chalk.gray(' • /agent-vibes:bmad disable - Turn off if unwanted'),
1052
+ chalk.gray(' • /agent-vibes:bmad status - View TTS injection status\n') +
1053
+ chalk.gray(' • /agent-vibes:bmad set <agent> <voice> - Customize voices\n') +
1054
+ chalk.gray(' • /agent-vibes:bmad disable - Disable TTS for all agents\n') +
1055
+ chalk.gray(' • /agent-vibes:bmad restore - Restore agents from backup'),
1020
1056
  {
1021
1057
  padding: 1,
1022
1058
  margin: 1,