Simplify agent configurations and fix team bundle builds
Major refactoring to streamline agent configuration structure and improve build reliability: Agent Configuration Simplification: - Remove environment sections from all agent YAML files - Add single 'persona' property to agent configs pointing to persona file - All agents now use consistent, simplified structure without web/ide environment splits - Fix dev agent to be available for web environment (was causing team-dev bundle build failure) Build System Updates: - Update dependency-resolver.js to use new persona property instead of environments.web.persona_file - Update bundle-optimizer.js to load personas using agent's persona property - Remove environment availability checks since all agents are now web-compatible - Change output directory from dist/web/bundles/ to dist/web/teams/ for clarity File Organization: - Move IDE-specific personas (dev.ide.md, devops-pe.ide.md, sm.ide.md) to bmad-core/ide-agents/ - Rename team bundles for clarity: - team-full.yml → team-full-app.yml (web application teams) - team-planning.yml → team-small-service.yml (backend service teams) - Remove team-full-ide.yml (IDE teams will be handled separately) This change ensures all 3 web team bundles build successfully and simplifies future agent maintenance. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -39,9 +39,6 @@ class DependencyResolver {
|
||||
if (rawConfig.dependencies) {
|
||||
config.dependencies = rawConfig.dependencies;
|
||||
}
|
||||
if (rawConfig.environments) {
|
||||
config.environments = rawConfig.environments;
|
||||
}
|
||||
|
||||
// Validate required fields
|
||||
this.validateAgentConfig(config, agentId);
|
||||
@@ -66,9 +63,10 @@ class DependencyResolver {
|
||||
throw new Error(`Agent ID mismatch: expected '${agentId}', got '${config.id}'`);
|
||||
}
|
||||
|
||||
// Ensure environments exist with defaults
|
||||
if (!config.environments) {
|
||||
config.environments = { web: {}, ide: {} };
|
||||
// Ensure persona exists
|
||||
if (!config.persona) {
|
||||
// Default to agent id if no persona specified
|
||||
config.persona = config.id;
|
||||
}
|
||||
|
||||
// Ensure dependencies exist with defaults
|
||||
@@ -87,11 +85,6 @@ class DependencyResolver {
|
||||
*/
|
||||
resolveAgentDependencies(agentId, environment = 'web') {
|
||||
const config = this.loadAgentConfig(agentId);
|
||||
|
||||
// Check if agent is available for this environment
|
||||
if (environment === 'web' && config.environments.web?.available === false) {
|
||||
throw new Error(`Agent '${agentId}' is not available for web environment`);
|
||||
}
|
||||
|
||||
const dependencies = {
|
||||
agent: agentId,
|
||||
|
||||
Reference in New Issue
Block a user