Releases: renbytes/boot-rust
v0.1.0 Release
Initial release of working Rust Plugin
The boot-rust plugin is designed to be a lightweight and focused "prompt expert." Its sole responsibility is to provide the main boot-code application with the necessary text components to construct a high-quality, language-specific prompt for generating Rust code. It does not handle any complex logic like making LLM API calls or parsing the response.
Here’s how it works:
- gRPC Server: The plugin is a simple, standalone executable that runs a gRPC server. When the boot CLI needs to generate a Rust project, it starts the boot-rust executable as a subprocess.
- Handshake: Upon starting, the plugin's gRPC server binds to an available port and prints its address to standard output. The main boot-code application reads this address to establish a connection. This is the "handshake" that links the two processes.
- RPC Communication: The plugin implements a single, simple RPC method defined in the shared plugin.proto contract: GetPromptComponents.
Request:
boot-code sends a request containing the content of the user's spec.toml file.
Logic: The boot-rust plugin receives this request. Its only job is to read its local, language-specific prompt files (e.g., prompts/base_instructions.txt, prompts/language_rules.txt) and format the user's spec into a prompt segment.
Response:
It sends a response back to boot-code containing these text components as a map of strings.
Separation of Concerns: After the plugin sends its response, its job is done. The boot-code application takes the prompt components, assembles the final prompt, makes the call to the LLM, parses the file-based response, and writes the project to disk.
This architecture makes it extremely simple to add support for new languages. A plugin contributor only needs to focus on providing the best possible prompt components for their language of expertise, without worrying about the underlying application logic.