DoppelImpactTest.Sdk
0.2.0
dotnet add package DoppelImpactTest.Sdk --version 0.2.0
NuGet\Install-Package DoppelImpactTest.Sdk -Version 0.2.0
<PackageReference Include="DoppelImpactTest.Sdk" Version="0.2.0" />
<PackageVersion Include="DoppelImpactTest.Sdk" Version="0.2.0" />
<PackageReference Include="DoppelImpactTest.Sdk" />
paket add DoppelImpactTest.Sdk --version 0.2.0
#r "nuget: DoppelImpactTest.Sdk, 0.2.0"
#:package DoppelImpactTest.Sdk@0.2.0
#addin nuget:?package=DoppelImpactTest.Sdk&version=0.2.0
#tool nuget:?package=DoppelImpactTest.Sdk&version=0.2.0
doppel-sdk — .NET
Official Doppel SDK for .NET. Capture your LLM calls and forward them to Doppel.
Like the Java/PHP SDKs, .NET captures each call explicitly with a small fluent builder right after you make it. Zero runtime dependencies; targets
netstandard2.0(works on .NET Framework 4.6.1+, .NET Core, and .NET 5+).
- Package:
DoppelImpactTest.Sdk - Namespace:
Doppel
Install
dotnet add package DoppelImpactTest.Sdk
Usage
using Doppel;
var doppel = new DoppelClient(shadowModel: "gpt-4o-mini"); // reads DOPPEL_API_KEY
// ... make your OpenAI call, then capture it:
doppel.OpenAI()
.Model("gpt-4o")
.Messages(messages) // any JSON-serialisable list of message maps
.Answer(answer)
.PromptTokens(10).CompletionTokens(5).TotalTokens(15)
.DurationMs(elapsedMs)
.Capture();
Other providers:
doppel.Anthropic().Model("claude-...").Prompt(prompt).Answer(output)
.PromptTokens(8).CompletionTokens(4).DurationMs(ms).Capture();
doppel.Google().Model("gemini-...").Prompt(prompt).Answer(output)
.PromptTokens(5).CompletionTokens(3).DurationMs(ms).Capture();
doppel.OpenRouter().Model("anthropic/claude-3.5-sonnet").Messages(messages)
.Answer(output).Vendor("anthropic").Cost(0.00021).TotalTokens(15).DurationMs(ms).Capture();
Delivery is fire-and-forget and never throws into your request path. In short-lived processes, flush before exit:
doppel.Flush();
Configuration
| Setting | Constructor arg | Environment variable | Default |
|---|---|---|---|
| API key | apiKey: |
DOPPEL_API_KEY |
— (required) |
| Server URL | serverUrl: |
DOPPEL_SERVER_URL |
https://api.doppel.in |
| Shadow model | shadowModel: |
— | none (chosen in the dashboard) |
| Debug logs | debug: |
DOPPEL_DEBUG (1/true) |
off |
Development
dotnet test tests/Doppel.Sdk.Tests.csproj
Publishing
Pushing a dotnet-v* tag runs the tests, packs, and publishes to NuGet
(requires the NUGET_API_KEY repository secret).
# bump <Version> in src/Doppel.Sdk.csproj first, then:
git tag dotnet-v0.1.0
git push origin dotnet-v0.1.0
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.