Expand description
Domain-specific agents module
This module provides specialized agents for different development domains (web, backend, DevOps) with domain-specific knowledge and capabilities. Each agent is configured with domain expertise through configuration files, enabling runtime customization without code changes.
§Architecture
The domain agents system consists of:
- DomainAgent: Specialized agent for a specific domain
- DomainRegistry: Discovers and registers domain agents
- AgentFactory: Creates domain agent instances from configuration
- KnowledgeBase: Stores domain-specific knowledge and best practices
- SharedContextManager: Manages cross-domain context sharing
- ConflictDetector: Detects and reports conflicting recommendations
- DomainCoordinator: Coordinates multi-agent workflows
§Example
ⓘ
use ricecoder_agents::domain::{DomainRegistry, AgentFactory};
// Create registry and factory
let registry = DomainRegistry::new();
let factory = AgentFactory::new();
// Create domain agents from configuration
let web_agent = factory.create_agent("web", &config)?;
let backend_agent = factory.create_agent("backend", &config)?;
// Register agents
registry.register_agent("web", web_agent);
registry.register_agent("backend", backend_agent);Re-exports§
pub use config_loader::ConfigLoader;pub use conflict::Conflict;pub use conflict::ConflictDetector;pub use conflict::ConflictReport;pub use conflict::ConflictType;pub use coordinator::DomainCoordinator;pub use coordinator::DomainRequest;pub use coordinator::CoordinatedResponse;pub use coordinator::FullStackCoordination;pub use coordinator::Operation;pub use error::DomainError;pub use error::DomainResult;pub use factory::AgentFactory;pub use factory::AgentConfig;pub use factory::CapabilityConfig;pub use factory::BestPracticeConfig;pub use factory::TechRecommendationConfig;pub use factory::PatternConfig;pub use factory::AntiPatternConfig;pub use knowledge::KnowledgeBase;pub use models::AntiPattern;pub use models::BestPractice;pub use models::DomainAgent;pub use models::DomainCapability;pub use models::DomainKnowledge;pub use models::Pattern;pub use models::Recommendation;pub use models::TechRecommendation;pub use registry::DomainRegistry;
Modules§
- config_
loader - Configuration loader and validator for domain agents
- conflict
- Conflict detection and resolution for domain agent recommendations
- conflict_
properties - Property-based tests for conflict detection and reporting
- context
- Shared context manager for cross-domain coordination
- context_
sharing_ properties - Property-based tests for cross-domain context sharing
- coordination_
properties - Property-based tests for domain agent coordination
- coordinator
- Multi-agent coordination for domain agents
- error
- Error types for domain-specific agents
- extensibility_
properties - Property-based tests for domain extensibility features
- factory
- Factory for creating domain agents from configuration
- knowledge
- Knowledge base for domain-specific expertise
- knowledge_
properties - Property-based tests for domain knowledge relevance
- models
- Data models for domain-specific agents
- registry
- Domain registry for discovering and managing domain agents
- routing_
properties - Property-based tests for domain agent routing
- sequencing_
properties - Property-based tests for operation sequencing in domain agent coordination