opencode-cursor-agent/internal/logic/chat/anthropic_messages_logic.go

44 lines
1.2 KiB
Go

// Code scaffolded by goctl. Safe to edit.
// goctl 1.10.1
package chat
import (
"context"
"net/http"
"cursor-api-proxy/internal/svc"
apitypes "cursor-api-proxy/internal/types"
"github.com/zeromicro/go-zero/core/logx"
)
type AnthropicMessagesLogic struct {
logx.Logger
ctx context.Context
svcCtx *svc.ServiceContext
}
func NewAnthropicMessagesLogic(ctx context.Context, svcCtx *svc.ServiceContext) *AnthropicMessagesLogic {
return &AnthropicMessagesLogic{
Logger: logx.WithContext(ctx),
ctx: ctx,
svcCtx: svcCtx,
}
}
func (l *AnthropicMessagesLogic) AnthropicMessages(req *apitypes.AnthropicRequest) error {
// TODO: implement Anthropic Messages API
// This should convert Anthropic format to Cursor/Gemini provider
// Similar to ChatCompletions but with Anthropic-style response format
return nil
}
// AnthropicMessagesStream handles streaming for Anthropic Messages API
func (l *AnthropicMessagesLogic) AnthropicMessagesStream(req *apitypes.AnthropicRequest, w http.ResponseWriter) error {
// TODO: implement Anthropic Messages streaming
// This should convert Anthropic format to Cursor/Gemini provider
// And stream back in Anthropic event format
return nil
}