Module: ClaudeCodeSDK
- Defined in:
- lib/claude_code_sdk.rb,
lib/claude_code_sdk/types.rb,
lib/claude_code_sdk/errors.rb,
lib/claude_code_sdk/version.rb,
lib/claude_code_sdk/messages.rb,
lib/claude_code_sdk/configuration.rb,
lib/claude_code_sdk/transport/base.rb,
lib/claude_code_sdk/internal/client.rb,
lib/claude_code_sdk/transport/simple_cli.rb,
lib/claude_code_sdk/transport/subprocess_cli.rb
Defined Under Namespace
Modules: Content, Internal, PermissionMode, Transport Classes: AssistantMessage, CLIConnectionError, CLIJSONDecodeError, CLINotFoundError, Configuration, Error, Message, Options, ProcessError, ResultMessage, SystemMessage, ThinkingMessage, UserMessage
Constant Summary collapse
- VERSION =
"0.1.0"
Class Method Summary collapse
-
.ask(prompt) ⇒ String
Convenience method for simple text queries.
-
.configure {|Configuration| ... } ⇒ Object
Configure global defaults.
-
.query(prompt, options = nil) {|Message| ... } ⇒ Array<Message>
Query Claude Code with a prompt.
Class Method Details
.ask(prompt) ⇒ String
Convenience method for simple text queries
58 59 60 61 62 63 64 65 66 67 68 69 70 |
# File 'lib/claude_code_sdk.rb', line 58 def ask(prompt) response_text = [] query(prompt) do || if .is_a?(AssistantMessage) .content.each do |block| response_text << block.text if block.is_a?(Content::TextBlock) end end end response_text.join("\n") end |
.configure {|Configuration| ... } ⇒ Object
Configure global defaults
80 81 82 |
# File 'lib/claude_code_sdk.rb', line 80 def configure yield Configuration.instance end |
.query(prompt, options = nil) {|Message| ... } ⇒ Array<Message>
Query Claude Code with a prompt
39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/claude_code_sdk.rb', line 39 def query(prompt, = nil, &block) # Convert hash to Options if needed = Options.new(**) if .is_a?(Hash) client = Internal::Client.new if block_given? client.query(prompt: prompt, options: , &block) else = [] client.query(prompt: prompt, options: ) { |msg| << msg } end end |