ClaudeCodeSdk 0.0.1
dotnet add package ClaudeCodeSdk --version 0.0.1
NuGet\Install-Package ClaudeCodeSdk -Version 0.0.1
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="ClaudeCodeSdk" Version="0.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ClaudeCodeSdk" Version="0.0.1" />
<PackageReference Include="ClaudeCodeSdk" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add ClaudeCodeSdk --version 0.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ClaudeCodeSdk, 0.0.1"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package ClaudeCodeSdk@0.0.1
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=ClaudeCodeSdk&version=0.0.1
#tool nuget:?package=ClaudeCodeSdk&version=0.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Claude Code SDK for C#
A .NET SDK for interacting with Claude through the Claude Code CLI, providing both one-shot queries and interactive client sessions.
This file (README.md) is generated by claude code.
Installation
Install via NuGet:
dotnet add package ClaudeCodeSdk
Prerequisites
- .NET 8.0 SDK
- Claude Code CLI:
npm install -g @anthropic-ai/claude-code
Quick Start
One-shot Query
using ClaudeCodeSdk;
var messages = ClaudeQuery.QueryAsync("What is the capital of France?");
await foreach (var message in messages)
{
Console.WriteLine(message.Content);
}
Interactive Client
using ClaudeCodeSdk;
using var client = new ClaudeSdkClient();
await client.ConnectAsync();
await client.SendMessageAsync("Hello Claude!");
await foreach (var message in client.ReceiveMessagesAsync())
{
if (message is AssistantMessage assistantMsg)
{
Console.WriteLine($"Claude: {assistantMsg.Content}");
}
}
Architecture
The SDK implements a dual-pattern architecture:
- One-shot Queries - Fire-and-forget pattern for simple queries
- Interactive Client - Long-lived bidirectional communication with session management
Message Types
AssistantMessage
- Claude's responsesUserMessage
- User inputSystemMessage
- System notificationsResultMessage
- Conversation end marker
Content Blocks
TextBlock
- Plain text contentToolUseBlock
- Tool invocationsToolResultBlock
- Tool execution resultsThinkingBlock
- Claude's reasoning
Development
Building
dotnet build
Testing
dotnet test
Running Examples
dotnet run --project examples/
Packaging
dotnet pack src/ClaudeCodeSdk/ClaudeCodeSdk.csproj -c Release
Available Tools
See the Claude Code documentation for a complete list of available tools.
Examples
See the examples/
folder for complete working examples including:
- Basic queries
- Interactive conversations
- Tool usage
- Streaming mode
License
MIT
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net8.0
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.0)
- System.Text.Json (>= 8.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
0.0.1 | 217 | 8/26/2025 |