Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
[0.1.6] - 2025-07-30
Added
- Support for
--settingsflag to load additional settings from a JSON file- Added
settingsparameter toClaudeCodeOptions - CLI command now includes
--settingswhen settings file path is provided - Added example demonstrating how to use settings files
- Updated documentation with Claude Code settings format
- Added
[0.1.4] - 2025-07-18
Fixed
- Relax async gem version requirement.
[0.1.2] - 2025-07-16
Added
- Support for
--session-idargument to specify a session ID (UUID) for conversations- Added
session_idparameter toClaudeCodeOptions - CLI command now includes
--session-idwhen session ID is provided
- Added
0.1.1 - 2025-07-15
Fixed
- Fixed permission mode conversion to use camelCase format for CLI compatibility
:bypass_permissionsnow correctly converts to"bypassPermissions":accept_editsnow correctly converts to"acceptEdits"- This ensures the SDK properly passes permission modes to the Claude CLI
0.1.0 - 2025-07-15
Added
- Initial release of claude-code-sdk-ruby
- Core SDK functionality for interacting with Claude Code CLI
- Support for async query processing
- Message types: User, Assistant, System, and Result
- Content blocks: Text, ToolUse, and ToolResult
- Configuration options via ClaudeCodeOptions
- Error handling with specific error types:
- CLINotFoundError
- CLIConnectionError
- ProcessError
- Internal client for direct subprocess communication
- Comprehensive test suite with RSpec
- Examples and documentation
Dependencies
- async (~> 2.0)
Development Dependencies
- bundler (~> 2.0)
- rake (~> 13.0)
- rspec (~> 3.0)
- rubocop (~> 1.50)
- rubocop-rspec (~> 2.20)
- simplecov (~> 0.22)
- yard (~> 0.9)