vv-agent 0.4.7

VectorVein agent runtime, SDK, CLI, tools, and workspace backends
Documentation
pub mod edit;
pub mod file_io;
pub mod listing;

pub use edit::file_str_replace;
pub use file_io::{file_info, read_file, write_file};
pub use listing::list_files;

use std::io::ErrorKind;

use crate::tools::common::{path_escapes_workspace_error, tool_error};
use crate::types::ToolExecutionResult;

fn workspace_backend_error(error: std::io::Error) -> ToolExecutionResult {
    if error.kind() == ErrorKind::PermissionDenied
        && error.to_string().contains("Path escapes workspace")
    {
        return path_escapes_workspace_error(error.to_string());
    }
    tool_error(error.to_string())
}