ricecoder_agents/domain/
mod.rs

1//! Domain-specific agents module
2//!
3//! This module provides specialized agents for different development domains
4//! (web, backend, DevOps) with domain-specific knowledge and capabilities.
5//! Each agent is configured with domain expertise through configuration files,
6//! enabling runtime customization without code changes.
7//!
8//! # Architecture
9//!
10//! The domain agents system consists of:
11//! - **DomainAgent**: Specialized agent for a specific domain
12//! - **DomainRegistry**: Discovers and registers domain agents
13//! - **AgentFactory**: Creates domain agent instances from configuration
14//! - **KnowledgeBase**: Stores domain-specific knowledge and best practices
15//! - **SharedContextManager**: Manages cross-domain context sharing
16//! - **ConflictDetector**: Detects and reports conflicting recommendations
17//! - **DomainCoordinator**: Coordinates multi-agent workflows
18//!
19//! # Example
20//!
21//! ```ignore
22//! use ricecoder_agents::domain::{DomainRegistry, AgentFactory};
23//!
24//! // Create registry and factory
25//! let registry = DomainRegistry::new();
26//! let factory = AgentFactory::new();
27//!
28//! // Create domain agents from configuration
29//! let web_agent = factory.create_agent("web", &config)?;
30//! let backend_agent = factory.create_agent("backend", &config)?;
31//!
32//! // Register agents
33//! registry.register_agent("web", web_agent);
34//! registry.register_agent("backend", backend_agent);
35//! ```
36
37pub mod config_loader;
38pub mod conflict;
39pub mod conflict_properties;
40pub mod context;
41pub mod context_sharing_properties;
42pub mod coordinator;
43pub mod coordination_properties;
44pub mod error;
45pub mod extensibility_properties;
46pub mod factory;
47pub mod knowledge;
48pub mod knowledge_properties;
49pub mod models;
50pub mod registry;
51pub mod routing_properties;
52pub mod sequencing_properties;
53
54pub use config_loader::ConfigLoader;
55pub use conflict::{Conflict, ConflictDetector, ConflictReport, ConflictType};
56pub use context::SharedContextManager;
57pub use coordinator::{DomainCoordinator, DomainRequest, CoordinatedResponse, FullStackCoordination, Operation};
58pub use error::{DomainError, DomainResult};
59pub use factory::{AgentFactory, AgentConfig, CapabilityConfig, BestPracticeConfig, TechRecommendationConfig, PatternConfig, AntiPatternConfig};
60pub use knowledge::KnowledgeBase;
61pub use models::{
62    AntiPattern, BestPractice, DomainAgent, DomainCapability, DomainKnowledge, Pattern,
63    Recommendation, SharedContext, TechRecommendation,
64};
65pub use registry::DomainRegistry;