lib.rs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. mod bash;
  2. mod bootstrap;
  3. mod compact;
  4. mod config;
  5. mod conversation;
  6. mod file_ops;
  7. mod json;
  8. mod mcp;
  9. mod mcp_client;
  10. mod mcp_stdio;
  11. mod oauth;
  12. mod permissions;
  13. mod prompt;
  14. mod remote;
  15. mod session;
  16. mod usage;
  17. pub use bash::{execute_bash, BashCommandInput, BashCommandOutput};
  18. pub use bootstrap::{BootstrapPhase, BootstrapPlan};
  19. pub use compact::{
  20. compact_session, estimate_session_tokens, format_compact_summary,
  21. get_compact_continuation_message, should_compact, CompactionConfig, CompactionResult,
  22. };
  23. pub use config::{
  24. ConfigEntry, ConfigError, ConfigLoader, ConfigSource, McpClaudeAiProxyServerConfig,
  25. McpConfigCollection, McpOAuthConfig, McpRemoteServerConfig, McpSdkServerConfig,
  26. McpServerConfig, McpStdioServerConfig, McpTransport, McpWebSocketServerConfig, OAuthConfig,
  27. RuntimeConfig, RuntimeFeatureConfig, ScopedMcpServerConfig, CLAUDE_CODE_SETTINGS_SCHEMA_NAME,
  28. };
  29. pub use conversation::{
  30. ApiClient, ApiRequest, AssistantEvent, ConversationRuntime, RuntimeError, StaticToolExecutor,
  31. ToolError, ToolExecutor, TurnSummary,
  32. };
  33. pub use file_ops::{
  34. edit_file, glob_search, grep_search, read_file, write_file, EditFileOutput, GlobSearchOutput,
  35. GrepSearchInput, GrepSearchOutput, ReadFileOutput, StructuredPatchHunk, TextFilePayload,
  36. WriteFileOutput,
  37. };
  38. pub use mcp::{
  39. mcp_server_signature, mcp_tool_name, mcp_tool_prefix, normalize_name_for_mcp,
  40. scoped_mcp_config_hash, unwrap_ccr_proxy_url,
  41. };
  42. pub use mcp_client::{
  43. McpClaudeAiProxyTransport, McpClientAuth, McpClientBootstrap, McpClientTransport,
  44. McpRemoteTransport, McpSdkTransport, McpStdioTransport,
  45. };
  46. pub use mcp_stdio::{
  47. spawn_mcp_stdio_process, JsonRpcError, JsonRpcId, JsonRpcRequest, JsonRpcResponse,
  48. ManagedMcpTool, McpInitializeClientInfo, McpInitializeParams, McpInitializeResult,
  49. McpInitializeServerInfo, McpListResourcesParams, McpListResourcesResult, McpListToolsParams,
  50. McpListToolsResult, McpReadResourceParams, McpReadResourceResult, McpResource,
  51. McpResourceContents, McpServerManager, McpServerManagerError, McpStdioProcess, McpTool,
  52. McpToolCallContent, McpToolCallParams, McpToolCallResult, UnsupportedMcpServer,
  53. };
  54. pub use oauth::{
  55. clear_oauth_credentials, code_challenge_s256, credentials_path, generate_pkce_pair,
  56. generate_state, load_oauth_credentials, loopback_redirect_uri, parse_oauth_callback_query,
  57. parse_oauth_callback_request_target, save_oauth_credentials, OAuthAuthorizationRequest,
  58. OAuthCallbackParams, OAuthRefreshRequest, OAuthTokenExchangeRequest, OAuthTokenSet,
  59. PkceChallengeMethod, PkceCodePair,
  60. };
  61. pub use permissions::{
  62. PermissionMode, PermissionOutcome, PermissionPolicy, PermissionPromptDecision,
  63. PermissionPrompter, PermissionRequest,
  64. };
  65. pub use prompt::{
  66. load_system_prompt, prepend_bullets, ContextFile, ProjectContext, PromptBuildError,
  67. SystemPromptBuilder, FRONTIER_MODEL_NAME, SYSTEM_PROMPT_DYNAMIC_BOUNDARY,
  68. };
  69. pub use remote::{
  70. inherited_upstream_proxy_env, no_proxy_list, read_token, upstream_proxy_ws_url,
  71. RemoteSessionContext, UpstreamProxyBootstrap, UpstreamProxyState, DEFAULT_REMOTE_BASE_URL,
  72. DEFAULT_SESSION_TOKEN_PATH, DEFAULT_SYSTEM_CA_BUNDLE, NO_PROXY_HOSTS, UPSTREAM_PROXY_ENV_KEYS,
  73. };
  74. pub use session::{ContentBlock, ConversationMessage, MessageRole, Session, SessionError};
  75. pub use usage::{
  76. format_usd, pricing_for_model, ModelPricing, TokenUsage, UsageCostEstimate, UsageTracker,
  77. };