Class: Clacky::Tools::RequestUserFeedback
- Inherits:
-
Base
- Object
- Base
- Clacky::Tools::RequestUserFeedback
show all
- Defined in:
- lib/clacky/tools/request_user_feedback.rb
Instance Method Summary
collapse
Methods inherited from Base
#category, #description, #name, #parameters, #to_function_definition
Instance Method Details
#execute(question:, context: nil, options: nil, working_dir: nil) ⇒ Object
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# File 'lib/clacky/tools/request_user_feedback.rb', line 41
def execute(question:, context: nil, options: nil, working_dir: nil)
message_parts = []
if context && !context.strip.empty?
message_parts << "**Context:** #{context.strip}"
message_parts << ""
end
message_parts << "**Question:** #{question.strip}"
if options && !options.empty?
message_parts << ""
message_parts << "**Options:**"
options.each_with_index do |option, index|
message_parts << " #{index + 1}. #{option}"
end
end
formatted_message = message_parts.join("\n")
{
success: true,
message: formatted_message,
awaiting_feedback: true }
end
|
69
70
71
72
73
|
# File 'lib/clacky/tools/request_user_feedback.rb', line 69
def format_call(args)
question = args[:question] || args["question"]
preview = question.length > 60 ? "#{question[0..60]}..." : question
"request_user_feedback(\"#{preview}\")"
end
|
75
76
77
78
79
80
81
|
# File 'lib/clacky/tools/request_user_feedback.rb', line 75
def format_result(result)
if result.is_a?(Hash) && result[:message]
result[:message]
else
"Waiting for user feedback..."
end
end
|