Packages
claude_code
0.32.2
0.36.5
0.36.4
0.36.3
0.36.2
0.36.1
0.36.0
0.35.0
0.34.0
0.33.1
0.32.2
0.32.0
0.31.0
0.30.0
0.29.0
0.28.0
0.27.0
0.26.0
0.25.0
0.24.0
0.23.0
0.22.0
0.21.0
0.20.0
0.19.0
0.18.0
0.17.0
0.16.0
0.15.0
0.14.0
0.13.3
0.13.2
0.13.1
0.13.0
0.12.0
0.11.0
0.10.0
0.9.0
0.8.1
0.8.0
0.7.0
0.6.0
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
Claude Agent SDK for Elixir – Build AI agents with Claude Code
Current section
Files
Jump to
Current section
Files
lib/claude_code/hook/output/pre_compact.ex
defmodule ClaudeCode.Hook.Output.PreCompact do
@moduledoc """
Hook-specific output for `PreCompact` events.
Fires before conversation compaction, allowing custom instructions
to guide what the compaction preserves.
Shorthand: `{:ok, custom_instructions: "..."}`.
## Fields
* `:custom_instructions` - instructions for the compaction process
"""
alias ClaudeCode.Hook.Output
@type t :: %__MODULE__{
custom_instructions: String.t() | nil
}
defstruct [:custom_instructions]
def to_wire(%__MODULE__{} = o) do
Output.maybe_put(%{"hookEventName" => "PreCompact"}, "customInstructions", o.custom_instructions)
end
end