Class: Ai::Commit::ClaudeClient

Inherits:
Object
  • Object
show all
Defined in:
lib/ai/commit/claude_client.rb

Constant Summary collapse

API_URL =
'https://api.anthropic.com/v1/messages'

Instance Method Summary collapse

Constructor Details

#initialize(api_key) ⇒ ClaudeClient

Returns a new instance of ClaudeClient.



12
13
14
# File 'lib/ai/commit/claude_client.rb', line 12

def initialize(api_key)
  @api_key = api_key
end

Instance Method Details

#generate_commit_message(diff) ⇒ Object



16
17
18
19
20
21
# File 'lib/ai/commit/claude_client.rb', line 16

def generate_commit_message(diff)
  prompt = build_prompt(diff)
  
  response = make_request(prompt)
  extract_message(response)
end

#generate_commit_message_with_feedback(prev_message, diff, feedback) ⇒ Object



23
24
25
26
27
28
# File 'lib/ai/commit/claude_client.rb', line 23

def generate_commit_message_with_feedback(prev_message, diff, feedback)
  prompt = build_prompt_with_feedback(prev_message, diff, feedback)
  
  response = make_request(prompt)
  extract_message(response)
end