mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-18 20:59:39 +02:00
- Add chats#index and chats#show endpoints to list and view AI conversations - Add messages#create endpoint to send messages to AI chats - Include API documentation for chat endpoints - Add controller tests for new endpoints 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
33 lines
No EOL
969 B
Ruby
33 lines
No EOL
969 B
Ruby
# frozen_string_literal: true
|
|
|
|
json.partial! "chat", chat: @chat
|
|
|
|
json.messages @messages do |message|
|
|
json.id message.id
|
|
json.type message.type.underscore
|
|
json.role message.role
|
|
json.content message.content
|
|
json.model message.ai_model if message.type == "AssistantMessage"
|
|
json.created_at message.created_at.iso8601
|
|
json.updated_at message.updated_at.iso8601
|
|
|
|
# Include tool calls for assistant messages
|
|
if message.type == "AssistantMessage" && message.tool_calls.any?
|
|
json.tool_calls message.tool_calls do |tool_call|
|
|
json.id tool_call.id
|
|
json.function_name tool_call.function_name
|
|
json.function_arguments tool_call.function_arguments
|
|
json.function_result tool_call.function_result
|
|
json.created_at tool_call.created_at.iso8601
|
|
end
|
|
end
|
|
end
|
|
|
|
if @pagy
|
|
json.pagination do
|
|
json.page @pagy.page
|
|
json.per_page @pagy.vars[:items]
|
|
json.total_count @pagy.count
|
|
json.total_pages @pagy.pages
|
|
end
|
|
end |