ClaudeEssentials 3.0.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package ClaudeEssentials --version 3.0.0
NuGet\Install-Package ClaudeEssentials -Version 3.0.0
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="ClaudeEssentials" Version="3.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="ClaudeEssentials" Version="3.0.0" />
<PackageReference Include="ClaudeEssentials" />
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 ClaudeEssentials --version 3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: ClaudeEssentials, 3.0.0"
#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 ClaudeEssentials@3.0.0
#: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=ClaudeEssentials&version=3.0.0
#tool nuget:?package=ClaudeEssentials&version=3.0.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
ClaudeEssentials
AOT-ready .NET models for building Claude Code hook processors.
What It Does
Claude Code hooks let you intercept and customize Claude's behavior. ClaudeEssentials provides strongly-typed C# models for all hook events, with source-generated JSON serialization for instant startup.
Installation
dotnet add package ClaudeEssentials
Quick Example
using CloudNimble.ClaudeEssentials.Hooks;
using CloudNimble.ClaudeEssentials.Hooks.Outputs;
// Read JSON from stdin
var json = Console.In.ReadToEnd();
var input = ClaudeHooksSerializer.DeserializePreToolUseInput(json);
// Auto-approve read-only tools
var output = new PreToolUseHookOutput<object>
{
Continue = true,
HookSpecificOutput = new PreToolUseSpecificOutput<object>
{
PermissionDecision = input.ToolName is "Read" or "Glob"
? PermissionDecision.Allow
: PermissionDecision.Ask
}
};
// Write response to stdout
Console.WriteLine(ClaudeHooksSerializer.SerializePreToolUseOutput(output));
Supported Hooks
| Hook | Purpose |
|---|---|
ConfigChange |
React to configuration changes during a session |
CwdChanged |
React when the working directory changes |
DirectoryAdded |
React when a directory is added to the session |
Elicitation |
Answer an MCP server's request for input |
ElicitationResult |
Override the response before it reaches the MCP server |
FileChanged |
React when a watched file changes |
InstructionsLoaded |
See when CLAUDE.md and rules files load |
MessageDisplay |
Change how assistant text appears on screen |
Notification |
React to permission prompts and other notifications |
PermissionDenied |
React to a denied tool call and optionally retry it |
PermissionRequest |
Answer permission dialogs and apply permission updates |
PostCompact |
Act on the summary compaction produced |
PostModelSwitch |
Add context after a model switch |
PostToolBatch |
Act once every tool call in a batch has resolved |
PostToolUse |
Add context or replace a tool's output after it completes |
PostToolUseFailure |
React when a tool fails |
PreCompact |
Customize context compaction |
PreModelSwitch |
Allow, deny, or confirm a model switch |
PreToolUse |
Approve, deny, or modify tool calls before execution |
SessionEnd |
Clean up when sessions end |
SessionStart |
Inject project context when sessions begin |
Setup |
Run repository setup or maintenance |
Stop |
Enforce policies before Claude ends a turn |
StopFailure |
React when a turn ends because of an API error |
SubagentStart |
Add context when a subagent starts |
SubagentStop |
Enforce policies before a subagent finishes |
TaskCompleted |
React when a task is completed |
TaskCreated |
React when a task is created |
TeammateIdle |
React when a teammate is about to go idle |
UserPromptExpansion |
Inspect or block slash command and MCP prompt expansions |
UserPromptSubmit |
Process prompts before they're sent |
WorktreeCreate |
Create a worktree your own way |
WorktreeRemove |
Clean up when a worktree is removed |
Features
- AOT Ready - Source-generated serialization, zero reflection
- Strongly Typed - Full IntelliSense and compile-time safety
- Lightweight - No dependencies beyond System.Text.Json
Documentation
Full documentation available at ai.easyaf.dev/claudeessentials
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. 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. net11.0 is compatible. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- No dependencies.
-
net11.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on ClaudeEssentials:
| Package | Downloads |
|---|---|
|
Breakdance.Claude
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.