24 lines
718 B
Rust
24 lines
718 B
Rust
//! Minimal Component Model Tool plugin authoring sketch.
|
|
//!
|
|
//! Build this as a `wasm32-unknown-unknown` cdylib with `wit-bindgen`-generated
|
|
//! exports and package the adapted component as `plugin.component.wasm`.
|
|
|
|
wit_bindgen::generate!({
|
|
world: "tool",
|
|
path: "../../../resources/plugin/wit",
|
|
});
|
|
|
|
struct Plugin;
|
|
|
|
impl Guest for Plugin {
|
|
fn call(tool_name: String, input_json: String) -> String {
|
|
// Ordinary ToolOutput JSON. The runtime routes this through the normal
|
|
// Worker/Tool result path; no context is injected by the component.
|
|
format!(
|
|
r#"{{"summary":"component tool {tool_name}","content":"input was {input_json}"}}"#
|
|
)
|
|
}
|
|
}
|
|
|
|
export!(Plugin);
|