lib.rs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  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 oauth;
  11. mod permissions;
  12. mod prompt;
  13. mod remote;
  14. mod session;
  15. mod usage;
  16. pub use bash::{execute_bash, BashCommandInput, BashCommandOutput};
  17. pub use bootstrap::{BootstrapPhase, BootstrapPlan};
  18. pub use compact::{
  19. compact_session, estimate_session_tokens, format_compact_summary,
  20. get_compact_continuation_message, should_compact, CompactionConfig, CompactionResult,
  21. };
  22. pub use config::{
  23. ConfigEntry, ConfigError, ConfigLoader, ConfigSource, McpClaudeAiProxyServerConfig,
  24. McpConfigCollection, McpOAuthConfig, McpRemoteServerConfig, McpSdkServerConfig,
  25. McpServerConfig, McpStdioServerConfig, McpTransport, McpWebSocketServerConfig, OAuthConfig,
  26. RuntimeConfig, RuntimeFeatureConfig, ScopedMcpServerConfig, CLAUDE_CODE_SETTINGS_SCHEMA_NAME,
  27. };
  28. pub use conversation::{
  29. ApiClient, ApiRequest, AssistantEvent, ConversationRuntime, RuntimeError, StaticToolExecutor,
  30. ToolError, ToolExecutor, TurnSummary,
  31. };
  32. pub use file_ops::{
  33. edit_file, glob_search, grep_search, read_file, write_file, EditFileOutput, GlobSearchOutput,
  34. GrepSearchInput, GrepSearchOutput, ReadFileOutput, StructuredPatchHunk, TextFilePayload,
  35. WriteFileOutput,
  36. };
  37. pub use mcp::{
  38. mcp_server_signature, mcp_tool_name, mcp_tool_prefix, normalize_name_for_mcp,
  39. scoped_mcp_config_hash, unwrap_ccr_proxy_url,
  40. };
  41. pub use mcp_client::{
  42. McpClaudeAiProxyTransport, McpClientAuth, McpClientBootstrap, McpClientTransport,
  43. McpRemoteTransport, McpSdkTransport, McpStdioTransport,
  44. };
  45. pub use oauth::{
  46. code_challenge_s256, generate_pkce_pair, generate_state, loopback_redirect_uri,
  47. OAuthAuthorizationRequest, OAuthRefreshRequest, OAuthTokenExchangeRequest, OAuthTokenSet,
  48. PkceChallengeMethod, PkceCodePair,
  49. };
  50. pub use permissions::{
  51. PermissionMode, PermissionOutcome, PermissionPolicy, PermissionPromptDecision,
  52. PermissionPrompter, PermissionRequest,
  53. };
  54. pub use prompt::{
  55. load_system_prompt, prepend_bullets, ContextFile, ProjectContext, PromptBuildError,
  56. SystemPromptBuilder, FRONTIER_MODEL_NAME, SYSTEM_PROMPT_DYNAMIC_BOUNDARY,
  57. };
  58. pub use remote::{
  59. inherited_upstream_proxy_env, no_proxy_list, read_token, upstream_proxy_ws_url,
  60. RemoteSessionContext, UpstreamProxyBootstrap, UpstreamProxyState, DEFAULT_REMOTE_BASE_URL,
  61. DEFAULT_SESSION_TOKEN_PATH, DEFAULT_SYSTEM_CA_BUNDLE, NO_PROXY_HOSTS, UPSTREAM_PROXY_ENV_KEYS,
  62. };
  63. pub use session::{ContentBlock, ConversationMessage, MessageRole, Session, SessionError};
  64. pub use usage::{
  65. format_usd, pricing_for_model, ModelPricing, TokenUsage, UsageCostEstimate, UsageTracker,
  66. };