codescout 0.15.0

High-performance coding agent toolkit MCP server
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use anyhow::Result;
use codescout_embed::Embedder;
use std::sync::Arc;

pub struct EmbeddingService {
    pub embedder: Arc<dyn Embedder>,
}

impl EmbeddingService {
    pub fn new(e: Arc<dyn Embedder>) -> Self {
        Self { embedder: e }
    }

    pub async fn embed_artifact(&self, title: Option<&str>, body: &str) -> Result<Vec<f32>> {
        let text = format!("{}\n\n{}", title.unwrap_or(""), body);
        self.embedder.embed_query(&text).await
    }
}