claude-agent-sdk 1.0.0 → 1.2.0
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 +4 -4
- data/.yardopts +10 -0
- data/CHANGELOG.md +110 -0
- data/README.md +43 -31
- data/docs/cli-installer.md +26 -4
- data/docs/client.md +40 -11
- data/docs/configuration.md +206 -1
- data/docs/errors.md +32 -2
- data/docs/hooks-and-permissions.md +30 -10
- data/docs/mcp-servers.md +30 -9
- data/docs/observability.md +61 -10
- data/docs/options.md +232 -0
- data/docs/rails.md +263 -18
- data/docs/sessions.md +40 -12
- data/docs/subagents.md +1 -1
- data/docs/types.md +100 -11
- data/lib/claude_agent_sdk/cli_installer.rb +140 -19
- data/lib/claude_agent_sdk/command_builder.rb +84 -27
- data/lib/claude_agent_sdk/fiber_boundary.rb +45 -2
- data/lib/claude_agent_sdk/instrumentation/otel.rb +90 -28
- data/lib/claude_agent_sdk/query.rb +547 -132
- data/lib/claude_agent_sdk/railtie.rb +27 -2
- data/lib/claude_agent_sdk/sdk_mcp_server.rb +78 -26
- data/lib/claude_agent_sdk/session_mutations.rb +112 -92
- data/lib/claude_agent_sdk/session_resume.rb +356 -39
- data/lib/claude_agent_sdk/session_store.rb +31 -2
- data/lib/claude_agent_sdk/sessions.rb +720 -138
- data/lib/claude_agent_sdk/subprocess_cli_transport.rb +252 -29
- data/lib/claude_agent_sdk/testing/session_store_conformance.rb +18 -7
- data/lib/claude_agent_sdk/transcript_mirror_batcher.rb +45 -37
- data/lib/claude_agent_sdk/transport.rb +28 -12
- data/lib/claude_agent_sdk/types/attributes.rb +9 -0
- data/lib/claude_agent_sdk/types/base.rb +85 -15
- data/lib/claude_agent_sdk/types/hooks.rb +73 -0
- data/lib/claude_agent_sdk/types/mcp.rb +37 -1
- data/lib/claude_agent_sdk/types/messages.rb +7 -1
- data/lib/claude_agent_sdk/types/option_values.rb +186 -4
- data/lib/claude_agent_sdk/types/options.rb +104 -17
- data/lib/claude_agent_sdk/types/permissions.rb +18 -9
- data/lib/claude_agent_sdk/version.rb +1 -1
- data/lib/claude_agent_sdk.rb +111 -53
- data/lib/generators/claude_agent_sdk/install/templates/claude_agent_sdk.rb.tt +6 -0
- data/sig/claude_agent_sdk/types/hooks.rbs +6 -3
- data/sig/claude_agent_sdk/types/option_values.rbs +23 -6
- data/sig/claude_agent_sdk/types/options.rbs +20 -7
- data/sig/claude_agent_sdk/types/permissions.rbs +4 -2
- metadata +6 -4
|
@@ -48,7 +48,7 @@ module ClaudeAgentSDK
|
|
|
48
48
|
?permission_prompt_tool_name: String?,
|
|
49
49
|
?cwd: (String | Pathname)?,
|
|
50
50
|
?cli_path: (String | Pathname)?,
|
|
51
|
-
?settings: (String | Hash[Symbol | String, untyped])?,
|
|
51
|
+
?settings: (String | Pathname | Hash[Symbol | String, untyped])?,
|
|
52
52
|
?add_dirs: Array[String | Pathname]?,
|
|
53
53
|
?env: Hash[String | Symbol, String?]?,
|
|
54
54
|
?extra_args: Hash[String | Symbol, untyped]?,
|
|
@@ -68,7 +68,7 @@ module ClaudeAgentSDK
|
|
|
68
68
|
?plugins: Array[SdkPluginConfig | Hash[Symbol | String, untyped]]?,
|
|
69
69
|
?debug_stderr: (_Puts | String)?,
|
|
70
70
|
?betas: Array[String]?,
|
|
71
|
-
?tools: (Array[String] | ToolsPreset | Hash[Symbol | String, untyped])?,
|
|
71
|
+
?tools: (Array[String] | ToolsPreset | Hash[Symbol | String, untyped] | String)?,
|
|
72
72
|
?sandbox: (SandboxSettings | Hash[Symbol | String, untyped] | bool)?,
|
|
73
73
|
?thinking: thinking_config?,
|
|
74
74
|
?effort: (String | Symbol | Integer)?,
|
|
@@ -85,6 +85,7 @@ module ClaudeAgentSDK
|
|
|
85
85
|
?include_hook_events: bool?,
|
|
86
86
|
?strict_mcp_config: bool?,
|
|
87
87
|
?forward_subagent_text: bool?,
|
|
88
|
+
?verbatim_prompts: bool?,
|
|
88
89
|
?agent_progress_summaries: bool?,
|
|
89
90
|
?callback_scheduling: (:thread | :inline | "thread" | "inline")?,
|
|
90
91
|
?callback_wrapper: _CallbackWrapper?
|
|
@@ -132,8 +133,9 @@ module ClaudeAgentSDK
|
|
|
132
133
|
|
|
133
134
|
attr_accessor cli_path: (String | Pathname)?
|
|
134
135
|
|
|
135
|
-
# A settings JSON String, a path to a settings file
|
|
136
|
-
|
|
136
|
+
# A settings JSON String, a path to a settings file (a String or a
|
|
137
|
+
# Pathname), or a Hash.
|
|
138
|
+
attr_accessor settings: (String | Pathname | Hash[Symbol | String, untyped])?
|
|
137
139
|
|
|
138
140
|
attr_accessor add_dirs: Array[String | Pathname]?
|
|
139
141
|
|
|
@@ -184,10 +186,13 @@ module ClaudeAgentSDK
|
|
|
184
186
|
# Entries of SDK_BETAS.
|
|
185
187
|
attr_accessor betas: Array[String]?
|
|
186
188
|
|
|
187
|
-
# The base tool set: tool names, or
|
|
188
|
-
|
|
189
|
+
# The base tool set: tool names (an Array, or the CLI's comma-separated
|
|
190
|
+
# String such as "Read,Grep"), or a preset.
|
|
191
|
+
attr_accessor tools: (Array[String] | ToolsPreset | Hash[Symbol | String, untyped] | String)?
|
|
189
192
|
|
|
190
|
-
# true / false are forwarded as-is (a bare toggle).
|
|
193
|
+
# true / false are forwarded as-is (a bare toggle). A Hash may spell the
|
|
194
|
+
# fields of SandboxSettings, and of its network / filesystem, in
|
|
195
|
+
# snake_case or in the CLI's camelCase (see SandboxSettings).
|
|
191
196
|
attr_accessor sandbox: (SandboxSettings | Hash[Symbol | String, untyped] | bool)?
|
|
192
197
|
|
|
193
198
|
attr_accessor thinking: thinking_config?
|
|
@@ -264,6 +269,14 @@ module ClaudeAgentSDK
|
|
|
264
269
|
|
|
265
270
|
def forward_subagent_text?: () -> bool
|
|
266
271
|
|
|
272
|
+
# Mark every outgoing user message client_composed, so the CLI delivers
|
|
273
|
+
# it as written (false by default).
|
|
274
|
+
attr_reader verbatim_prompts: bool?
|
|
275
|
+
|
|
276
|
+
def verbatim_prompts=: (untyped value) -> bool?
|
|
277
|
+
|
|
278
|
+
def verbatim_prompts?: () -> bool
|
|
279
|
+
|
|
267
280
|
# Request model-generated progress summaries for subagent tasks (nil:
|
|
268
281
|
# unset, not sent).
|
|
269
282
|
attr_reader agent_progress_summaries: bool?
|
|
@@ -41,7 +41,8 @@ module ClaudeAgentSDK
|
|
|
41
41
|
|
|
42
42
|
attr_accessor directories: Array[String]?
|
|
43
43
|
|
|
44
|
-
# One of PERMISSION_UPDATE_DESTINATIONS.
|
|
44
|
+
# One of PERMISSION_UPDATE_DESTINATIONS. When nil, #to_h sends "session"
|
|
45
|
+
# (unless type is nil too).
|
|
45
46
|
attr_accessor destination: String?
|
|
46
47
|
|
|
47
48
|
attr_reader rules: Array[PermissionRuleValue]?
|
|
@@ -49,7 +50,8 @@ module ClaudeAgentSDK
|
|
|
49
50
|
# Hash entries (camelCase or snake_case keys) become PermissionRuleValue.
|
|
50
51
|
def rules=: (Array[PermissionRuleValue | Hash[Symbol | String, untyped]]? value) -> Array[PermissionRuleValue | Hash[Symbol | String, untyped]]?
|
|
51
52
|
|
|
52
|
-
# The wire form (camelCase keys).
|
|
53
|
+
# The wire form (camelCase keys). A rule without content has no
|
|
54
|
+
# ruleContent key.
|
|
53
55
|
def to_h: () -> Hash[Symbol, untyped]
|
|
54
56
|
end
|
|
55
57
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: claude-agent-sdk
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- ya-luotao
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-10-03 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: async
|
|
@@ -54,14 +54,14 @@ dependencies:
|
|
|
54
54
|
name: bundler
|
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
|
56
56
|
requirements:
|
|
57
|
-
- - "
|
|
57
|
+
- - ">="
|
|
58
58
|
- !ruby/object:Gem::Version
|
|
59
59
|
version: '2.0'
|
|
60
60
|
type: :development
|
|
61
61
|
prerelease: false
|
|
62
62
|
version_requirements: !ruby/object:Gem::Requirement
|
|
63
63
|
requirements:
|
|
64
|
-
- - "
|
|
64
|
+
- - ">="
|
|
65
65
|
- !ruby/object:Gem::Version
|
|
66
66
|
version: '2.0'
|
|
67
67
|
- !ruby/object:Gem::Dependency
|
|
@@ -118,6 +118,7 @@ executables: []
|
|
|
118
118
|
extensions: []
|
|
119
119
|
extra_rdoc_files: []
|
|
120
120
|
files:
|
|
121
|
+
- ".yardopts"
|
|
121
122
|
- CHANGELOG.md
|
|
122
123
|
- LICENSE
|
|
123
124
|
- README.md
|
|
@@ -129,6 +130,7 @@ files:
|
|
|
129
130
|
- docs/hooks-and-permissions.md
|
|
130
131
|
- docs/mcp-servers.md
|
|
131
132
|
- docs/observability.md
|
|
133
|
+
- docs/options.md
|
|
132
134
|
- docs/rails.md
|
|
133
135
|
- docs/sessions.md
|
|
134
136
|
- docs/subagents.md
|