Class: RosettAi::Mcp::Tools::CompileTool
- Inherits:
-
Object
- Object
- RosettAi::Mcp::Tools::CompileTool
- Defined in:
- lib/rosett_ai/mcp/tools/compile_tool.rb
Overview
MCP tool: compile rai behaviours to engine-native format.
Delegates to the real Compiler::CompilationPipeline. When simulate=true, returns diffs without writing files. When simulate=false, writes compiled output to disk.
Constant Summary collapse
- TOOL_NAME =
'rai_compile'- DESCRIPTION =
'Compile rai behaviours to engine-native format'- ANNOTATIONS =
{ 'readOnlyHint' => false, 'destructiveHint' => false, 'idempotentHint' => true, 'openWorldHint' => false }.freeze
Instance Method Summary collapse
-
#call(simulate: true, engine: 'claude') ⇒ Hash
Executes the compilation via the real pipeline.
Instance Method Details
#call(simulate: true, engine: 'claude') ⇒ Hash
Executes the compilation via the real pipeline.
36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/rosett_ai/mcp/tools/compile_tool.rb', line 36 def call(simulate: true, engine: 'claude') backend = RosettAi::Compiler::Backend.for(engine) pipeline = build_pipeline(backend) compiled = pipeline.compile if simulate build_simulate_result(pipeline, compiled, engine) else build_write_result(pipeline, compiled, engine) end rescue RosettAi::Error => e ResponseHelper.error("Compilation failed: #{e.}") end |