Expand description
§synwire-dap
Debug Adapter Protocol (DAP) integration for the Synwire agent framework.
This crate provides a full DAP client, Content-Length wire codec, adapter registry, and an agent plugin that exposes debugging as a set of tools.
§Architecture
DapPlugin (Plugin trait)
-> DapClient (high-level session management)
-> DapTransport (child process + framed I/O + request correlation)
-> ContentLengthCodec (tokio-util codec)§Usage
Register the plugin::DapPlugin with an agent to expose DAP tools:
debug.status– current session statedebug.launch/debug.attach– start debuggingdebug.set_breakpoints– set source breakpointsdebug.continue,debug.step_over,debug.step_in,debug.step_out,debug.pause– execution controldebug.threads,debug.stack_trace,debug.variables– inspectiondebug.evaluate– expression evaluationdebug.disconnect– end session
Re-exports§
pub use client::DapClient;pub use client::DapSessionState;pub use config::DapAdapterConfig;pub use config::DapPluginConfig;pub use error::DapError;pub use plugin::DapPlugin;pub use registry::DebugAdapterEntry;pub use registry::DebugAdapterRegistry;
Modules§
- client
- High-level DAP client wrapping the low-level transport.
- codec
- Content-Length based codec for the Debug Adapter Protocol wire format.
- config
- Configuration types for the DAP plugin and adapter processes.
- error
- Error types for the DAP integration.
- plugin
- DAP plugin for the Synwire agent runtime.
- registry
- Debug adapter registry with built-in entries for common languages.
- tools
- DAP tool definitions exposed to the agent tool registry.
- transport
- Low-level DAP transport managing child process I/O and request correlation.