Expand description
Utility modules
Re-exports§
pub use abort_controller::AbortController;pub use abort_controller::AbortSignal;pub use abort_controller::create_abort_controller;pub use abort_controller::create_abort_controller_default;pub use abort_controller::create_child_abort_controller;pub use config::AccountInfo;pub use config::AutoUpdaterDisabledReason;pub use config::DiffTool;pub use config::EditorMode;pub use config::GlobalConfig;pub use config::InstallMethod;pub use config::McpServerConfig;pub use config::NotificationChannel;pub use config::ProjectConfig;pub use config::ReleaseChannel;pub use config::ThemeSetting;pub use config::check_has_trust_dialog_accepted;pub use config::get_current_project_config;pub use config::get_global_config;pub use config::get_global_config_path;pub use config::get_or_create_user_id;pub use config::is_auto_updater_disabled;pub use config::save_current_project_config;pub use config::save_global_config;pub use cwd::get_cwd;pub use cwd::get_original_cwd;pub use cwd::pwd;pub use cwd::run_with_cwd_override;pub use cwd::set_cwd;pub use env_utils::get_aws_region;pub use env_utils::get_claude_config_home_dir;pub use env_utils::get_default_vertex_region;pub use env_utils::get_teams_dir;pub use env_utils::get_user_type;pub use env_utils::get_vertex_region_for_model;pub use env_utils::has_node_option;pub use env_utils::is_ant_user;pub use env_utils::is_bare_mode;pub use env_utils::is_env_defined_falsy;pub use env_utils::is_env_truthy;pub use env_utils::is_in_protected_namespace;pub use env_utils::is_running_on_homespace;pub use env_utils::is_test_mode;pub use env_utils::parse_env_vars;pub use env_utils::should_maintain_project_working_dir;pub use errors::error_message;pub use messages::Message;pub use messages::MessageContent;pub use messages::NormalizedMessage;pub use messages::extract_tag;pub use messages::get_last_assistant_message;pub use messages::get_progress_messages_from_lookup;pub use messages::get_sibling_tool_use_ids_from_lookup;pub use messages::get_tool_result_ids;pub use messages::is_classifier_denial;pub use messages::is_not_empty_message;pub use messages::is_tool_use_request_message;pub use messages::is_tool_use_result_message;pub use messages::reorder_attachments_for_api;pub use thinking::ThinkingConfig;pub use thinking::find_thinking_trigger_positions;pub use thinking::has_ultrathink_keyword;pub use thinking::is_ultrathink_enabled;pub use thinking::model_supports_adaptive_thinking;pub use thinking::model_supports_thinking;pub use thinking::should_enable_thinking_by_default;pub use uuid::create_agent_id;pub use uuid::generate_uuid;pub use uuid::validate_uuid;pub use words::generate_short_word_slug;pub use words::generate_word_slug;pub use shell::BashShellProvider;pub use shell::PowerShellProvider;pub use shell::shell_provider::ShellError;pub use shell::shell_provider::ShellExecCommand;pub use shell::shell_tool_utils::SHELL_TYPES;pub use shell::shell_tool_utils::ShellType;pub use side_query::SideQueryMemorySelection;pub use side_query::SideQueryOptions;pub use side_query::side_query;pub use side_query::side_query_simple;pub use side_query::side_query_with_tools;pub use tempfile::generate_temp_file_path;pub use tempfile::generate_temp_file_path_default;pub use which::which;pub use which::which_sync;pub use xdg::get_user_bin_dir;pub use xdg::get_xdg_cache_home;pub use xdg::get_xdg_data_home;pub use xdg::get_xdg_state_home;pub use yaml::parse_yaml;pub use commit_attribution::AttributionData;pub use commit_attribution::AttributionSnapshotMessage;pub use commit_attribution::AttributionState;pub use commit_attribution::AttributionSummary;pub use commit_attribution::FileAttribution;pub use commit_attribution::FileAttributionState;pub use commit_attribution::FileChange;pub use commit_attribution::FileChangeType;pub use commit_attribution::SessionBaseline;pub use commit_attribution::SurfaceBreakdown;pub use commit_attribution::attribution_restore_state_from_log;pub use commit_attribution::build_surface_key;pub use commit_attribution::calculate_commit_attribution;pub use commit_attribution::compute_content_hash;pub use commit_attribution::create_empty_attribution_state;pub use commit_attribution::expand_file_path;pub use commit_attribution::get_attribution_repo_root;pub use commit_attribution::get_client_surface;pub use commit_attribution::get_file_mtime;pub use commit_attribution::get_repo_class_cached;pub use commit_attribution::get_staged_files;pub use commit_attribution::increment_prompt_count;pub use commit_attribution::is_internal_model_repo;pub use commit_attribution::is_internal_model_repo_cached;pub use commit_attribution::normalize_file_path;pub use commit_attribution::restore_attribution_state_from_snapshots;pub use commit_attribution::sanitize_model_name;pub use commit_attribution::sanitize_surface_key;pub use commit_attribution::state_to_snapshot_message;pub use commit_attribution::track_bulk_file_changes;pub use commit_attribution::track_file_creation;pub use commit_attribution::track_file_deletion;pub use commit_attribution::track_file_modification;pub use plugins::KnownMarketplace;pub use plugins::KnownMarketplacesFile;pub use plugins::PluginId;pub use plugins::PluginMarketplace;pub use plugins::PluginMarketplaceEntry;pub use plugins::PluginMarketplaceMetadata;pub use plugins::PluginMarketplaceOwner;pub use plugins::PluginSource;pub use plugins::get_known_marketplace_names;pub use plugins::get_marketplace_cache_only;pub use plugins::get_plugin_by_id_cache_only;pub use plugins::parse_plugin_identifier;pub use file_state_cache::DEFAULT_MAX_CACHE_SIZE_BYTES;pub use file_state_cache::FileState;pub use file_state_cache::FileStateCache;pub use file_state_cache::READ_FILE_STATE_CACHE_SIZE;pub use file_state_cache::cache_keys;pub use file_state_cache::cache_to_object;pub use file_state_cache::clone_file_state_cache;pub use file_state_cache::create_file_state_cache_with_size_limit;pub use file_state_cache::merge_file_state_caches;pub use process_user_input::AgentDefinitions;pub use process_user_input::ContentBlockParam;pub use process_user_input::CursorPosition;pub use process_user_input::EffortValue;pub use process_user_input::IdeSelection;pub use process_user_input::ImageDimensions;pub use process_user_input::ImageSource;pub use process_user_input::PastedContent;pub use process_user_input::ProcessUserInput;pub use process_user_input::ProcessUserInputBaseResult;pub use process_user_input::ProcessUserInputContext;pub use process_user_input::ProcessUserInputContextOptions;pub use process_user_input::ProcessUserInputOptions;pub use process_user_input::PromptInputMode;pub use process_user_input::QuerySource;pub use process_user_input::QueryTracking;pub use process_user_input::process_user_input;pub use model::ModelName;pub use model::ModelSetting;pub use model::ModelShortName;pub use model::ModelValidationResult;pub use model::check_opus_1m_access;pub use model::check_sonnet_1m_access;pub use model::first_party_name_to_canonical;pub use model::get_best_model;pub use model::get_canonical_name;pub use model::get_claude_ai_user_default_model_description;pub use model::get_default_haiku_model;pub use model::get_default_main_loop_model;pub use model::get_default_opus_model;pub use model::get_default_sonnet_model;pub use model::get_main_loop_model;pub use model::get_public_model_display_name;pub use model::get_public_model_name;pub use model::get_small_fast_model;pub use model::get_user_specified_model_setting;pub use model::is_legacy_model_remap_enabled;pub use model::is_opus_1m_merge_enabled;pub use model::model_display_string;pub use model::normalize_model_string_for_api;pub use model::parse_user_specified_model;pub use model::render_default_model_setting;pub use model::render_model_name;pub use model::render_model_setting;pub use model::resolve_skill_model_override;pub use model::validate_model;pub use swarm::AgentColorName;pub use swarm::BackendType;pub use swarm::CreatePaneResult;pub use swarm::HIDDEN_SESSION_NAME;pub use swarm::PLAN_MODE_REQUIRED_ENV_VAR;pub use swarm::PaneBackendType;pub use swarm::PaneId;pub use swarm::SWARM_SESSION_NAME;pub use swarm::SWARM_VIEW_WINDOW_NAME;pub use swarm::SystemPromptMode;pub use swarm::TEAM_LEAD_NAME;pub use swarm::TEAMMATE_COLOR_ENV_VAR;pub use swarm::TEAMMATE_COMMAND_ENV_VAR;pub use swarm::TMUX_COMMAND;pub use swarm::TeammateIdentity;pub use swarm::TeammateMessage;pub use swarm::TeammateSpawnConfig;pub use swarm::TeammateSpawnResult;pub use swarm::get_swarm_socket_name;pub use swarm::is_pane_backend;pub use system_theme::SystemTheme;pub use system_theme::get_system_theme_name;pub use system_theme::resolve_theme_setting;pub use system_theme::set_cached_system_theme;pub use system_theme::theme_from_osc_color;pub use theme::AnsiColor;pub use theme::DARK_ANSI_THEME;pub use theme::DARK_DALTONIZED_THEME;pub use theme::DARK_THEME;pub use theme::LIGHT_ANSI_THEME;pub use theme::LIGHT_DALTONIZED_THEME;pub use theme::LIGHT_THEME;pub use theme::THEME_NAMES;pub use theme::Theme;pub use theme::ThemeColor;pub use theme::get_theme;pub use theme::theme_color_to_ansi;pub use user::CoreUserData;pub use user::GitHubActionsMetadata;pub use user::Platform;pub use user::get_core_user_data;pub use user::get_git_email;pub use user::get_user_for_analytics;pub use user::reset_user_cache;pub use user::set_cached_email;pub use task::AppState;pub use task::CircularBuffer;pub use task::MAX_TASK_OUTPUT_BYTES;pub use task::MAX_TASK_OUTPUT_BYTES_DISPLAY;pub use task::OUTPUT_FILE_TAG;pub use task::PANEL_GRACE_MS;pub use task::POLL_INTERVAL_MS;pub use task::STATUS_TAG;pub use task::STOPPED_DISPLAY_MS;pub use task::SUMMARY_TAG;pub use task::SetAppState;pub use task::TASK_ID_TAG;pub use task::TASK_NOTIFICATION_TAG;pub use task::TASK_TYPE_TAG;pub use task::TOOL_USE_ID_TAG;pub use task::TaskAttachment;pub use task::TaskOutput;pub use task::TaskStateBase;pub use task::TaskStatus;pub use task::TaskType;pub use task::append_task_output;pub use task::apply_task_offsets_and_evictions;pub use task::cleanup_task_output;pub use task::evict_task_output;pub use task::evict_terminal_task;pub use task::flush_task_output;pub use task::format_task_notification;pub use task::generate_task_attachments;pub use task::get_running_tasks;pub use task::get_task_output;pub use task::get_task_output_delta;pub use task::get_task_output_path;pub use task::get_task_output_size;pub use task::init_task_output;pub use task::init_task_output_as_symlink;pub use task::is_terminal_task_status;pub use task::poll_tasks;pub use task::register_task;pub use ultraplan::TriggerPosition;pub use ultraplan::find_ultraplan_trigger_positions;pub use ultraplan::find_ultrareview_trigger_positions;pub use ultraplan::has_ultraplan_keyword;pub use ultraplan::has_ultrareview_keyword;pub use ultraplan::replace_ultraplan_keyword;pub use billing::has_claude_ai_billing_access;pub use billing::has_console_billing_access;pub use billing::set_mock_billing_access_override;pub use completion_cache::ShellInfo;pub use completion_cache::detect_shell;pub use completion_cache::get_completion_cache_dir;pub use content_array::insert_block_after_tool_results;pub use cursor::YankPopResult;pub use cursor::can_yank_pop;pub use cursor::clear_kill_ring;pub use cursor::get_kill_ring_item;pub use cursor::get_kill_ring_size;pub use cursor::get_last_kill;pub use cursor::is_vim_punctuation;pub use cursor::is_vim_whitespace;pub use cursor::is_vim_word_char;pub use cursor::push_to_kill_ring;pub use cursor::record_yank;pub use cursor::reset_kill_accumulation;pub use cursor::reset_yank_state;pub use cursor::update_yank_length;pub use cursor::yank_pop;pub use debug::DebugLogLevel;pub use debug::enable_debug_logging;pub use debug::get_debug_file_path;pub use debug::get_debug_filter;pub use debug::get_debug_log_path;pub use debug::get_min_debug_log_level;pub use debug::is_debug_mode;pub use debug::is_debug_to_stderr;pub use debug::log_ant_error;pub use debug::log_for_debugging;pub use debug_filter::DebugFilter;pub use debug_filter::extract_debug_categories;pub use debug_filter::parse_debug_filter;pub use debug_filter::should_show_debug_categories;pub use debug_filter::should_show_debug_message;pub use mtls::clear_mtls_cache;pub use mtls::configure_mtls;pub use mtls::get_ca_cert;pub use mtls::get_client_cert;pub use mtls::get_client_key;pub use mtls::is_mtls_enabled;pub use proxy::clear_proxy_cache;pub use proxy::configure_global_agents;pub use proxy::get_http_proxy;pub use proxy::get_https_proxy;pub use proxy::get_proxy_config;pub use proxy::should_bypass_proxy;pub use semantic_boolean::is_falsy;pub use semantic_boolean::is_truthy;pub use semantic_boolean::parse_env_bool;pub use semantic_boolean::to_bool;pub use semantic_number::format_with_suffix;pub use semantic_number::parse_byte_size;pub use semantic_number::parse_semantic_number;pub use session_env_vars::clear_session_environment;pub use session_env_vars::get_session_environment;pub use session_env_vars::set_session_environment;pub use managed_env_constants::DANGEROUS_SHELL_SETTINGS;pub use managed_env_constants::SAFE_ENV_VARS;pub use managed_env_constants::is_provider_managed_env_var;pub use managed_env_constants::is_safe_env_var;pub use memoize::memoize_with_lru;pub use memoize::memoize_with_ttl;pub use memoize::memoize_with_ttl_async;pub use memory_file_detection::detect_session_file_type;pub use memory_file_detection::detect_session_pattern_type;pub use memory_file_detection::is_auto_managed_memory_file;pub use memory_file_detection::is_memory_directory;pub use memory_file_detection::is_shell_command_targeting_memory;pub use pdf_utils::extension_for_mime_type;pub use pdf_utils::is_binary_content_type;pub use pdf_utils::is_likely_pdf;pub use powershell::escape_powershell_string;pub use powershell::is_powershell_available;pub use modifiers::Modifier;pub use modifiers::Shortcut;pub use native_installer::install_package;pub use native_installer::is_native_installer_available;pub use notebook::Notebook;pub use notebook::extract_code_cells;pub use notebook::is_notebook_file;pub use notebook::parse_notebook;pub use paste_store::PasteItem;pub use paste_store::PasteStore;pub use plan_mode_v2::get_plan_mode_v2_agent_count;pub use plan_mode_v2::get_plan_mode_v2_explore_agent_count;pub use plan_mode_v2::is_plan_mode_interview_phase_enabled;pub use plan_mode_v2::is_plan_mode_v2_enabled;pub use plans::Plan;pub use plans::PlanStatus;pub use plans::PlanStep;pub use plans::StepStatus;pub use process::get_process_id;pub use process::get_process_info;pub use process::is_running_in_container;pub use prompt_editor::PromptEditorConfig;pub use prompt_editor::PromptTemplate;pub use prompt_shell_execution::FrontmatterShell;pub use prompt_shell_execution::build_shell_command;pub use prompt_shell_execution::execute_prompt_shell;pub use prompt_shell_execution::execute_shell_commands_in_prompt;pub use query_context::QueryContext;pub use query_context::QueryMatch;pub use query_context::QueryResult as QueryContextResult;pub use query_guard::QueryGuard;pub use query_guard::QueryGuardError;pub use query_helpers::parse_rg_output;pub use query_helpers::search_with_rg;pub use query_profiler::QueryProfiler;pub use queue_processor::QueueProcessor;pub use read_file_in_range::get_line_count;pub use read_file_in_range::read_bytes_in_range;pub use read_file_in_range::read_file_in_range;pub use render_options::RenderOptions;pub use ripgrep::is_ripgrep_available;pub use ripgrep::ripgrep_files;pub use sandbox::get_sandbox_dir;pub use sandbox::is_path_in_sandbox;pub use sandbox::is_sandbox_enabled;pub use sanitization::escape_shell_arg;pub use sanitization::escape_html;pub use sanitization::sanitize_filename;pub use sanitization::sanitize_path;pub use sanitization::truncate;pub use screenshot_clipboard::copy_screenshot_to_clipboard;pub use screenshot_clipboard::take_screenshot;pub use sdk_event_queue::DrainedSdkEvent;pub use sdk_event_queue::SdkEvent;pub use sdk_event_queue::SdkEventQueue;pub use sdk_event_queue::SdkEventType;pub use sdk_event_queue::SdkEventUsage;pub use sdk_event_queue::TaskProgressParams;pub use sdk_event_queue::drain_sdk_events;pub use sdk_event_queue::emit_session_state_changed;pub use sdk_event_queue::emit_task_progress;pub use sdk_event_queue::emit_task_started;pub use sdk_event_queue::emit_task_terminated_sdk;pub use sdk_event_queue::enqueue_sdk_event;pub use secure_storage::SecureStorage;pub use semver::Semver;pub use semver::parse_semver;pub use session_activity::ActivityType;pub use session_activity::SessionActivity;pub use session_activity::SessionActivityTracker;pub use session_restore::can_restore_session;pub use session_restore::restore_session;pub use session_start::SessionStartConfig;pub use session_start::create_session;pub use session_state::SessionState;pub use session_title::clean_title_for_filename;pub use session_title::generate_session_title;pub use session_url::build_session_url;pub use session_url::extract_session_id;pub use session_url::is_valid_session_url;pub use exec_file_no_throw::ExecResult;pub use exec_file_no_throw::exec_file_no_throw;pub use exec_file_no_throw::exec_file_no_throw_sync;pub use exec_file_no_throw::exec_file_no_throw_with_cwd;pub use platform::SUPPORTED_PLATFORMS;pub use platform::detect_platform;pub use platform::get_platform;pub use set::difference;pub use set::every;pub use set::intersects;pub use set::union;pub use subprocess_env::GHA_SUBPROCESS_SCRUB;pub use subprocess_env::register_upstream_proxy_env_fn;pub use subprocess_env::subprocess_env;
Modules§
- abort_
controller - AbortController utilities
- analyze_
context - billing
- Billing utilities
- circular_
buffer - A fixed-size circular buffer that automatically evicts the oldest items when the buffer is full. Useful for maintaining a rolling window of data.
- collapse_
read_ search - Collapse consecutive Read/Search operations into summary groups.
- combined_
abort_ signal - Combined AbortSignal implementation
- commit_
attribution - Commit attribution utilities for tracking Claude’s contributions.
- completion_
cache - Shell completion cache utilities
- concurrent
- Concurrent execution utilities for running multiple async operations with a concurrency limit.
- config
- Configuration management utilities Translated from /data/home/swei/claudecode/openclaudecode/src/utils/config.ts
- content_
array - Content array utilities
- context
- cursor
- Cursor utilities for text editing
- cwd
- debug
- Debug logging utilities
- debug_
filter - Debug filter utilities
- diff
- Structured patch generation for file edits
- env_
utils - Environment utilities
- env_
validation - errors
- exec_
file_ no_ throw - file_
state_ cache - File state cache utilities Translated from /data/home/swei/claudecode/openclaudecode/src/utils/fileStateCache.ts
- forked_
agent - Helper for running forked agent query loops with usage tracking.
- gh_
pr_ status - GitHub PR status utilities
- git
- git_
diff - git_
settings - github_
repo_ path_ mapping - heatmap
- Heatmap generation utilities
- hooks
- Hook utilities for agent tool permission checking, hook execution, and related helpers.
- horizontal_
scroll - Horizontal scroll window calculation utilities
- http
- HTTP utility constants and helpers
- hyperlink
- Hyperlink utilities
- ide_
path_ conversion - IDE path conversion utilities
- idle_
timeout - Idle timeout management utilities
- image_
store - Image store utilities
- image_
validation - Image validation utilities
- immediate_
command - Immediate command execution utilities
- inspector
- managed_
env_ constants - Environment variable constants for managed inference routing.
- memoize
- Memoization utilities with TTL and LRU support.
- memory_
file_ detection - Memory file detection utilities
- messages
- Message utilities and helpers Translated from /data/home/swei/claudecode/openclaudecode/src/utils/messages.ts
- model
- Model utilities
- modifiers
- mtls
- mTLS (mutual TLS) configuration utilities.
- native_
installer - Native installer utilities.
- notebook
- Jupyter notebook utilities.
- paste_
store - Paste store utilities for clipboard history.
- path
- pdf_
utils - PDF utilities
- permissions
- Permission system utilities — ported from TypeScript openclaudecode.
- plan_
mode_ v2 - Plan mode v2 utilities.
- plans
- Plans utilities for planning mode.
- platform
- plugins
- Plugin utilities - ported from ~/claudecode/openclaudecode/src/utils/plugins/
- powershell
- PowerShell execution utilities.
- process
- Process management utilities.
- process_
user_ input - Process user input utilities - translates processUserInput.ts from TypeScript
- prompt_
editor - Prompt editor utilities.
- prompt_
shell_ execution - Skill prompt shell command execution.
- proxy
- Proxy configuration utilities.
- query_
context - Query context utilities.
- query_
guard - Query guard utilities for protecting against malicious queries.
- query_
helpers - Query helpers utilities
- query_
profiler - Query profiler utilities.
- queue_
processor - Queue processor utilities
- read_
edit_ context - Read and edit context utilities.
- read_
file_ in_ range - Read file in range utilities.
- release_
notes - Release notes utilities.
- render_
options - ripgrep
- Ripgrep utility functions for searching files.
- sandbox
- Sandbox utilities for isolated execution.
- sanitization
- Sanitization utilities for cleaning user input and file paths.
- screenshot_
clipboard - Screenshot clipboard utilities.
- sdk_
event_ queue - SDK event queue utilities. Translated from ~/claudecode/openclaudecode/src/utils/sdkEventQueue.ts
- secure_
storage - Secure storage utilities.
- semantic_
boolean - Semantic boolean utilities for interpreting various truthy/falsy values.
- semantic_
number - Semantic number utilities for parsing numbers from strings.
- semver
- Semantic version utilities.
- sequential
- Sequential execution utilities for running async functions in order.
- session_
activity - Session activity tracking - track and analyze session activity events
- session_
env_ vars - Session environment variables utilities.
- session_
environment - Session environment utilities.
- session_
file_ access_ hooks - Session file access hooks.
- session_
ingress_ auth - Session ingress authentication utilities.
- session_
restore - Session restore utilities - restore sessions from file-based storage
- session_
start - Session start utilities.
- session_
state - Session state management.
- session_
storage - Session storage utilities - file-based session persistence
- session_
storage_ portable - Portable session storage utilities for moving sessions between machines.
- session_
title - Session title utilities.
- session_
url - Session URL utilities.
- set
- Set utility functions optimized for performance. This code is hot, so it’s optimized for speed.
- settings
- Settings file I/O for reading/writing Claude Code configuration.
- shell
- Shell utilities and shell provider abstractions.
- side_
query - Side query - lightweight non-streaming API call wrapper.
- subprocess_
env - Env vars to strip from subprocess environments when running inside GitHub Actions. This prevents prompt-injection attacks from exfiltrating secrets via shell expansion (e.g., ${AI_API_KEY}) in Bash tool commands.
- swarm
- Swarm utilities
- system_
theme - task
- Task utilities module.
- task_
list - Task management utilities (TodoV2 task list system).
- tempfile
- Temporary file path generation utilities.
- theme
- thinking
- Thinking configuration and utilities Translated from /data/home/swei/claudecode/openclaudecode/src/utils/config.ts (thinking section) and /data/home/swei/claudecode/openclaudecode/src/utils/thinking.ts
- token_
budget - tokens
- tool_
errors - ultraplan
- user
- User utilities module. Provides user data and analytics functionality.
- user_
agent - User agent string helpers.
- uuid
- which
whichcommand implementation for finding executable paths.- words
- xdg
- xml
- yaml
- YAML parsing wrapper.
- zod_
to_ json_ schema