{
  "name": "forge-provider-coding",
  "language": "rust",
  "version": "0.2.0",
  "description": "Official coding-provider adapters for the Forge SDK",
  "manifest": "forge-rs/crates/forge-provider-coding/Cargo.toml",
  "manifestSha256": "87e8e1cea482fc512e00d6be2338d99eddbcf2a3b26c0749ce7f035463c91635",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/rust/forge-provider-coding",
  "features": {},
  "files": [
    {
      "path": "forge-rs/crates/forge-provider-coding/src/lib.rs",
      "sha256": "c4f2e4a02fd5048b3c7433d03fcb21e6150af04cbc3e6f3a025919666e25627b",
      "artifactSha256": "bc7f79584b624a7a82962171d55dcfbda33e62796667559211df96c2d45bd5e6",
      "url": "/reference/source/forge-rs/crates/forge-provider-coding/src/lib.rs.txt",
      "declarations": [
        {
          "name": "::CliCommandSpec",
          "line": 61,
          "signature": "#[derive(Debug, Clone, PartialEq, Eq)]\npub struct CliCommandSpec {\npub program: String,\npub args: Vec<String>,\npub current_dir: Option<PathBuf>,\npub final_output_path: Option<PathBuf>\n}",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionRequest",
          "line": 69,
          "signature": "#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]\npub struct AuthorizedSessionRequest {\npub provider_ref: String,\npub required_capabilities: Vec<RuntimeCapability>,\npub prompt: String,\npub system_prompt: Option<String>,\n#[serde(skip_serializing_if = \"Option::is_none\")]\npub working_directory: Option<PathBuf>,\n#[serde(skip_serializing_if = \"Option::is_none\")]\npub timeout_seconds: Option<u64>\n}",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionExecution",
          "line": 81,
          "signature": "#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]\npub struct AuthorizedSessionExecution {\npub session_id: String,\npub provider_ref: String,\npub events: Vec<ProviderSessionEvent>,\npub usage: ProviderUsageSummary\n}",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionHandle",
          "line": 90,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\n#[derive(Clone)]\npub struct AuthorizedSessionHandle {\n\n}",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionHandle::session_id",
          "line": 99,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn session_id(&self) -> &str;",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionHandle::provider_ref",
          "line": 103,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn provider_ref(&self) -> &str;",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionHandle::preflight",
          "line": 107,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn preflight(&self) -> &CodingProviderPreflight;",
          "documentation": ""
        },
        {
          "name": "::AuthorizedSessionHandle::execute",
          "line": 111,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub async fn execute(&self) -> ForgeResult<AuthorizedSessionExecution>;",
          "documentation": ""
        },
        {
          "name": "::OfficialCodingProviderManager",
          "line": 224,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub struct OfficialCodingProviderManager {\n\n}",
          "documentation": ""
        },
        {
          "name": "::OfficialCodingProviderManager::new",
          "line": 230,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn new() -> ForgeResult<Self>;",
          "documentation": ""
        },
        {
          "name": "::OfficialCodingProviderManager::registry",
          "line": 236,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn registry(&self) -> &ProviderRegistry;",
          "documentation": ""
        },
        {
          "name": "::OfficialCodingProviderManager::start_authorized_session",
          "line": 240,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub async fn start_authorized_session<V: ProviderAuthorityVerifier>(\n        &self,\n        agent: &AgentConfig,\n        request: &AuthorizedSessionRequest,\n        verifier: &V,\n    ) -> Result<AuthorizedSessionHandle, ForgeAgentError>;",
          "documentation": ""
        },
        {
          "name": "::official_provider_registry",
          "line": 269,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn official_provider_registry() -> ForgeResult<ProviderRegistry>;",
          "documentation": ""
        },
        {
          "name": "::register_official_coding_providers",
          "line": 276,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn register_official_coding_providers(registry: &mut ProviderRegistry) -> ForgeResult<()>;",
          "documentation": ""
        },
        {
          "name": "::OpenAiCompatibleCodingLanguageModel",
          "line": 329,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\n#[derive(Debug, Clone)]\npub struct OpenAiCompatibleCodingLanguageModel {\n\n}",
          "documentation": ""
        },
        {
          "name": "::OpenAiCompatibleCodingLanguageModel::new",
          "line": 339,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn new(\n        provider_namespace: impl Into<String>,\n        model_id: impl Into<String>,\n        api_key_env: impl Into<String>,\n        base_url_env: impl Into<String>,\n        default_base_url: impl Into<String>,\n    ) -> Self;",
          "documentation": ""
        },
        {
          "name": "::CodexCliAdapter",
          "line": 445,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\n#[derive(Debug, Clone)]\npub struct CodexCliAdapter {\npub program: String\n}",
          "documentation": ""
        },
        {
          "name": "::CodexCliAdapter::build_command",
          "line": 460,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn build_command(\n        &self,\n        prompt: &str,\n        system_prompt: Option<&str>,\n        cwd: Option<&Path>,\n    ) -> CliCommandSpec;",
          "documentation": ""
        },
        {
          "name": "::ClaudeCodeAdapter",
          "line": 487,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\n#[derive(Debug, Clone)]\npub struct ClaudeCodeAdapter {\npub program: String\n}",
          "documentation": ""
        },
        {
          "name": "::ClaudeCodeAdapter::build_command",
          "line": 502,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn build_command(\n        &self,\n        prompt: &str,\n        system_prompt: Option<&str>,\n        cwd: Option<&Path>,\n    ) -> CliCommandSpec;",
          "documentation": ""
        },
        {
          "name": "::official_provider_metadata",
          "line": 934,
          "signature": "#[cfg(not(target_arch = \"wasm32\"))]\npub fn official_provider_metadata<'a>(\n    registry: &'a ProviderRegistry,\n    provider_ref: &str,\n) -> Option<&'a ProviderMetadata>;",
          "documentation": ""
        }
      ]
    }
  ]
}
