synwire_agent/lib.rs
1#![forbid(unsafe_code)]
2
3//! # synwire-agent
4//!
5//! Agent runtime implementations for Synwire — the concrete backend layer.
6//!
7//! This crate provides real implementations of the agent runtime traits defined
8//! in `synwire-core`, wiring abstract capabilities to live backends and services.
9//!
10//! ## Key modules
11//!
12//! | Module | Purpose |
13//! |---|---|
14//! | [`vfs`] | VFS providers (`LocalProvider`, `MemoryProvider`, `CompositeProvider`) |
15//! | [`sandbox`] | Process sandboxing, isolation, and output capture |
16//! | [`middleware`] | Request/response middleware pipeline for agent execution |
17//! | [`strategies`] | Execution strategies (single-pass, iterative, FSM-based) |
18//! | [`mcp`] | MCP client transport and tool bridge |
19//! | [`sampling`] | `SamplingProvider` implementations for tool-internal LLM access |
20//! | [`session`] | Session lifecycle, persistence, and resumption |
21//! | [`sbfl`] | Spectrum-based fault localisation for diagnostic ranking |
22//! | [`dataflow`] | Intra-procedural dataflow analysis over indexed code |
23//! | [`call_graph`] | Call-graph construction and traversal |
24//! | [`experience`] | Experience pool storage and retrieval |
25//! | [`experience_sampling`] | Sampling strategies over the experience pool |
26//! | [`tools`] | Agent-level tool implementations |
27//!
28//! All I/O operations are async-first. This crate compiles with zero `unsafe`.
29
30pub mod call_graph;
31pub mod dataflow;
32pub mod experience;
33pub mod experience_sampling;
34pub mod mcp;
35pub mod middleware;
36pub mod sampling;
37pub mod sandbox;
38pub mod sbfl;
39pub mod session;
40pub mod strategies;
41pub mod tools;
42pub mod vfs;