ClaudeCodeSDK.Auth.TokenStore behaviour (claude_code_sdk v0.2.2)

View Source

Persistent token storage for authentication.

Supports multiple storage backends:

  • File-based (default): ~/.claude_sdk/token.json
  • Application environment: :claude_code_sdk, :auth_token
  • Custom: User-provided module implementing this behavior

Summary

Functions

Clears stored token data.

Loads token data from storage.

Saves token data to storage.

Types

token_data()

@type token_data() :: %{
  token: String.t(),
  expiry: DateTime.t() | nil,
  provider: atom()
}

Callbacks

clear()

@callback clear() :: :ok

load()

@callback load() :: {:ok, token_data()} | {:error, :not_found | term()}

save(token_data)

@callback save(token_data()) :: :ok | {:error, term()}

Functions

clear()

@spec clear() :: :ok

Clears stored token data.

load()

@spec load() :: {:ok, token_data()} | {:error, :not_found | term()}

Loads token data from storage.

save(data)

@spec save(token_data()) :: :ok | {:error, term()}

Saves token data to storage.