Skip to main content

Crate codewhale_config

Crate codewhale_config 

Source

Re-exports§

pub use model_reference::Modality;
pub use model_reference::ModelReferenceCard;
pub use model_reference::ModelReferenceDatabase;
pub use auth_source::AuthSourceKind;
pub use auth_source::ProviderAuthSourceToml;

Modules§

auth_source
catalog
Models.dev-backed provider catalog snapshots and a secret-free live cache (#3385, feeding EPIC #2608 and #3383).
model_reference
Factual model reference database (#3205, #2300).
models_dev
Models.dev catalog schema and helpers.
pricing
Provider/offering-scoped pricing projection with provenance (#3085).
provider
Built-in provider metadata.
route
Route foundation: additive, runtime-unwired types for EPIC #2608.

Structs§

CliRuntimeOverrides
ConfigMigration
ConfigStore
ConfigToml
FleetConfigToml
On-disk schema for the [fleet] table (#3165). See config.example.toml and docs/FLEET.md for documentation.
FleetDelegationHints
Delegation hints for future fleet manager scheduling.
FleetExecConfig
Headless worker execution constraints (#3027).
FleetProfile
Fleet org-chart profile.
FleetProfilePermissions
Safe permission defaults attached to a fleet profile.
FleetRole
Semantic role declaration for a fleet profile.
FleetRolePreset
A named role preset that bundles common worker settings.
HarnessPosture
A concrete harness posture with policy knobs.
HarnessProfile
A harness profile binds a posture to a provider route and model pattern.
HookSinksToml
On-disk schema for the [hook_sinks] table.
HotbarBinding
Validated hotbar binding used by future render/dispatch layers.
HotbarBindingToml
On-disk schema for one [[hotbar]] table.
HotbarConfigResolution
LspConfigToml
On-disk schema for the [lsp] table (#136). See config.example.toml for documentation. All fields are optional so the TUI runtime can fall back to its own defaults when keys are absent.
NetworkPolicyToml
On-disk schema for the [network] table (#135). See config.example.toml for documentation.
PermissionsToml
Sibling permissions.toml schema.
ProviderChain
Ordered primary-plus-fallback provider list for future provider routing.
ProviderConfigToml
ProvidersToml
ResolvedRuntimeOptions
Secrets
High-level facade combining a KeyringStore with environment variable fallbacks.
SkillsToml
On-disk schema for the [skills] table (#140). See config.example.toml for documentation.
SnapshotsToml
On-disk schema for the [snapshots] table (#137). See config.example.toml for documentation.
ToolAskRule
Typed rule that marks a tool invocation as requiring approval.
ToolsToml
On-disk schema for the [tools] table (#2076).

Enums§

FleetLoadout
Model class or route-role hint for a profile.
FleetSlot
Org-chart slot for grouping fleet profiles.
HarnessCompactionStrategy
How this posture should approach compaction and prompt-cache stability.
HarnessPostureKind
Kinds of built-in harness postures.
HarnessSafetyPosture
Safety posture applied when the runtime consumes a harness profile.
HarnessToolSurface
Which tool catalog shape this posture prefers.
HotbarConfigWarning
Non-fatal hotbar config issue. Invalid slots are skipped; duplicate slots use the last binding; unknown actions are kept for UI feedback.
ProviderKind
ProviderSource
RuntimeApiKeySource

Constants§

CODEWHALE_APP_DIR
Canonical CodeWhale app directory name under $HOME.
CONFIG_FILE_NAME
DEFAULT_HOTBAR_ACTIONS
DEFAULT_SPAWN_DEPTH
Canonical recursion-depth policy for the headless worker runtime.
HOTBAR_SLOT_COUNT
LEGACY_APP_DIR
Legacy DeepSeek-branded app directory name (compatibility fallback).
MAX_SPAWN_DEPTH_CEILING
Hard ceiling on recursion depth for any worker/sub-agent. The default stays conservative at DEFAULT_SPAWN_DEPTH, while explicit config can opt into deeper trees for direct-API providers that can tolerate the fanout. Raising this single constant lifts the limit everywhere (the fleet clamp and agent validation both read it).
PERMISSIONS_FILE_NAME

Functions§

built_in_harness_profiles
Built-in profile seeds for common provider/model families.
built_in_role_presets
Built-in role presets that are always available without config.
codewhale_home
Resolve the primary CodeWhale home directory.
default_config_path
default_hotbar_bindings
default_secrets
Process-wide default Secrets façade. The first caller wins; the lock is exposed so test or CLI code can install an explicit backend (e.g. an codewhale_secrets::InMemoryKeyringStore) before any resolver runs.
ensure_project_state_dir
Ensure a project-local state subdirectory exists under .codewhale/, creating it if necessary. Returns the directory path.
ensure_state_dir
Ensure a state subdirectory exists under the primary CodeWhale root, creating it if necessary. This is the write-path resolver.
is_sensitive_config_key
legacy_deepseek_home
Resolve the legacy DeepSeek home directory ($HOME/.deepseek).
load_project_config
Load a project-level config from the workspace.
merge_and_preserve_comments
Merge comments and formatting from an original TOML file into a freshly serialized document so user annotations (comments, whitespace, disabled keys) survive config rewrites.
migrate_config_if_needed
v0.8.44: one-time migration from ~/.deepseek/config.toml to ~/.codewhale/config.toml. Called on first launch after the config is loaded; copies the legacy file if the primary doesn’t exist yet. Never overwrites an existing primary config.
permissions_path_for_config_path
project_approval_policy_is_allowed
project_sandbox_mode_is_allowed
resolve_config_path
resolve_hotbar_bindings
resolve_permissions_path
resolve_project_state_dir
Resolve a project-local state subdirectory, preferring .codewhale/ when it exists, falling back to .deepseek/ for legacy projects.
resolve_state_dir
Resolve a state subdirectory, preferring the CodeWhale root if it already exists, otherwise falling back to the legacy root.