claude-code-sdk-ruby 0.1.1 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 201bb35600be5d00c23889cd6da0de9052423babcc686ce4b49bd67922b76144
4
- data.tar.gz: d0f26949887331ef0ee43dba2131df613d4a823e4dcfa8a64b7435e89d4b1737
3
+ metadata.gz: 73d57953723c00f4e8e937d75b726a54a13f558205e1aeee3d7ba5c37d8751d3
4
+ data.tar.gz: bed5176043ac207ad1622da4f7a43c011ea4e741f19e011cb437b6e5c9ee27bd
5
5
  SHA512:
6
- metadata.gz: e8e14672cb48c916ed7536f9a695cf2e38a6d75df6728b4dffcdb22dd92cdab307eda60b56652e82d06ff723509097a0d0b4bfc04cabc175d1f6a3fcb6463ebc
7
- data.tar.gz: 82e050ae3ada3def50e92fa74d937331cbae601f85184be9eb407a2b18da3c3e0d48851cfda59813a7e93444f219ccbae9a889fdb4b583ec8ff5e41c560e5dea
6
+ metadata.gz: 0b5c554bb5840beafda993f88eb1ac63ad38463c7619558fea0efeb85b0a297940a6b52b89de5106ca5e24b4cc9c89abb2497afd0316255203cdf24144d4f67d
7
+ data.tar.gz: 5bb5940db27fbc067a469e882ca0a86716f32ff6bb67fa63f975e20d77eedd7f6bda09cd989bc3007e0b64e7155d082244fce482e70264b8e0d7742caddf8248
data/CHANGELOG.md CHANGED
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.1.2] - 2025-07-16
11
+
12
+ ### Added
13
+ - Support for `--session-id` argument to specify a session ID (UUID) for conversations
14
+ - Added `session_id` parameter to `ClaudeCodeOptions`
15
+ - CLI command now includes `--session-id` when session ID is provided
16
+
10
17
  ## [0.1.1] - 2025-07-15
11
18
 
12
19
  ### Fixed
@@ -31,6 +31,6 @@ Gem::Specification.new do |spec|
31
31
  spec.require_paths = ["lib"]
32
32
 
33
33
  # Runtime dependencies
34
- spec.add_dependency("async", "~> 2.26")
35
- spec.add_dependency("logger", "~> 1.7")
34
+ spec.add_dependency("async", "~> 2")
35
+ spec.add_dependency("logger", "~> 1")
36
36
  end
@@ -340,6 +340,8 @@ module ClaudeSDK
340
340
 
341
341
  cmd.push("--resume", @options.resume) if @options.resume
342
342
 
343
+ cmd.push("--session-id", @options.session_id) if @options.session_id
344
+
343
345
  if @options.mcp_servers && !@options.mcp_servers.empty?
344
346
  mcp_config = { "mcpServers" => serialize_mcp_servers }
345
347
  cmd.push("--mcp-config", JSON.generate(mcp_config))
@@ -336,7 +336,8 @@ module ClaudeSDK
336
336
  :disallowed_tools,
337
337
  :model,
338
338
  :permission_prompt_tool_name,
339
- :cwd
339
+ :cwd,
340
+ :session_id
340
341
 
341
342
  # Initialize with default values
342
343
  #
@@ -354,6 +355,7 @@ module ClaudeSDK
354
355
  # @param model [String, nil] model name
355
356
  # @param permission_prompt_tool_name [String, nil] permission tool
356
357
  # @param cwd [String, Pathname, nil] working directory
358
+ # @param session_id [String, nil] session ID (must be a valid UUID)
357
359
  def initialize(allowed_tools: [],
358
360
  max_thinking_tokens: 8000,
359
361
  system_prompt: nil,
@@ -367,7 +369,8 @@ module ClaudeSDK
367
369
  disallowed_tools: [],
368
370
  model: nil,
369
371
  permission_prompt_tool_name: nil,
370
- cwd: nil)
372
+ cwd: nil,
373
+ session_id: nil)
371
374
  @allowed_tools = allowed_tools
372
375
  @max_thinking_tokens = max_thinking_tokens
373
376
  @system_prompt = system_prompt
@@ -382,6 +385,7 @@ module ClaudeSDK
382
385
  @model = model
383
386
  @permission_prompt_tool_name = permission_prompt_tool_name
384
387
  @cwd = cwd
388
+ @session_id = session_id
385
389
 
386
390
  validate_permission_mode! if permission_mode
387
391
  end
@@ -405,6 +409,7 @@ module ClaudeSDK
405
409
  hash[:model] = model if model
406
410
  hash[:permission_prompt_tool_name] = permission_prompt_tool_name if permission_prompt_tool_name
407
411
  hash[:cwd] = cwd.to_s if cwd
412
+ hash[:session_id] = session_id if session_id
408
413
  hash
409
414
  end
410
415
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ClaudeSDK
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.4"
5
5
  end
@@ -47,8 +47,8 @@ swarm:
47
47
 
48
48
  python_sdk_guide:
49
49
  description: "Python SDK consultant providing implementation guidance and best practices"
50
- directory: .
51
- model: sonnet
50
+ directory: ~/src/github.com/anthropics/claude-code-sdk-python
51
+ model: opus
52
52
  vibe: true
53
53
  prompt: |
54
54
  You are a Python SDK consultant specializing in the Claude Code Python SDK. Your role is to:
@@ -59,9 +59,9 @@ swarm:
59
59
  - Help maintain consistency between SDKs while respecting language idioms
60
60
  - Read and understand Python SDK code to inform Ruby development
61
61
 
62
- You primarily use Read and WebFetch tools to analyze the Python SDK and provide
62
+ You explore and analyze the Python SDK codebase and provide
63
63
  implementation guidance. Focus on reading the Python SDK codebase to understand
64
64
  patterns and suggest how they should be adapted for Ruby.
65
65
 
66
66
  For maximum efficiency, whenever you need to perform multiple independent operations,
67
- invoke all relevant tools simultaneously rather than sequentially.
67
+ invoke all relevant tools simultaneously rather than sequentially.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: claude-code-sdk-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Paulo Arruda
@@ -15,28 +15,28 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: '2.26'
18
+ version: '2'
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: '2.26'
25
+ version: '2'
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: logger
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - "~>"
31
31
  - !ruby/object:Gem::Version
32
- version: '1.7'
32
+ version: '1'
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - "~>"
38
38
  - !ruby/object:Gem::Version
39
- version: '1.7'
39
+ version: '1'
40
40
  description: Ruby SDK for interacting with Claude Code
41
41
  email:
42
42
  - parrudaj@gmail.com
@@ -90,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
90
90
  - !ruby/object:Gem::Version
91
91
  version: '0'
92
92
  requirements: []
93
- rubygems_version: 3.6.7
93
+ rubygems_version: 3.6.9
94
94
  specification_version: 4
95
95
  summary: Ruby SDK for Claude Code
96
96
  test_files: []