resolve_frameworks

Function resolve_frameworks 

Source
pub fn resolve_frameworks(
    names: &[String],
    mode: Option<FrameworkResolutionMode>,
) -> Result<Vec<&'static dyn FrameworkAdapter>, FrameworkResolutionError>
Expand description

Resolve framework names to adapters with deduplication and validation.

When names is empty, auto-detection is performed based on the mode:

When names contains framework names, each is validated and the list is deduplicated.

§Arguments

  • names - Framework names to resolve (empty for auto-detection).
  • mode - How to auto-detect frameworks when names is empty. Pass None to require explicit framework names and error if names is empty.

§Returns

A deduplicated list of framework adapters, or an error if:

  • A framework name is unknown
  • Auto-detection found no frameworks

§Example

use mi6_core::framework::{resolve_frameworks, FrameworkResolutionMode};

// Resolve specific frameworks
let adapters = resolve_frameworks(&["claude".to_string()], None).unwrap();
assert_eq!(adapters.len(), 1);

// Auto-detect installed frameworks
let installed = resolve_frameworks(&[], Some(FrameworkResolutionMode::Installed));