From c666fbacc10a3442db21b4eee7eb0d5542f6bef2 Mon Sep 17 00:00:00 2001 From: Daniel Friis Date: Tue, 26 Aug 2025 13:52:53 +0200 Subject: [PATCH] Add description property to define method --- lib/ruby_llm/schema/dsl/utilities.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/ruby_llm/schema/dsl/utilities.rb b/lib/ruby_llm/schema/dsl/utilities.rb index 6118d76..ff17c86 100644 --- a/lib/ruby_llm/schema/dsl/utilities.rb +++ b/lib/ruby_llm/schema/dsl/utilities.rb @@ -5,16 +5,18 @@ class Schema module DSL module Utilities # Schema definition and reference methods - def define(name, &) + def define(name, description: nil, &block) sub_schema = Class.new(Schema) - sub_schema.class_eval(&) + sub_schema.class_eval(&block) + sub_schema.description = description if description definitions[name] = { type: "object", + description: sub_schema.description, properties: sub_schema.properties, required: sub_schema.required_properties, additionalProperties: sub_schema.additional_properties - } + }.compact end def reference(schema_name)