kcode-web-fetch 0.1.0

Bounded public-web fetching with SSRF protection and readable text extraction
Documentation
# kcode-web-fetch Agent Integration Reference

`kcode-web-fetch` is a standalone asynchronous Rust 2024 library for safely
retrieving readable text from public HTTP(S) pages.

```rust,no_run
use kcode_web_fetch::{Result, WebFetcher};

async fn fetch(url: &str) -> Result<String> {
    Ok(WebFetcher::default().fetch(url).await?.content)
}
```

The default policy permits only HTTP and HTTPS on ports 80 and 443, rejects
credentials and non-public destinations, resolves and pins public addresses,
disables proxies and automatic redirects, and validates every redirect target.
It permits five redirects, applies a 30-second timeout to each request, reads at
most 2,000,000 bytes, and returns at most 50,000 Unicode characters.

HTML and XHTML are converted locally to readable text. Other `text/*` media
and JSON are decoded lossily as UTF-8. Results contain the final URL, optional
HTML title, media type, text, truncation state, and retrieval time.

The crate contains no HTTP server, authentication, cookies, provider API,
application operation IDs, persistence, or retry policy. Cancellation uses
ordinary Rust future cancellation. The literal root package version in
`Cargo.toml` is canonical; no `Version.txt` is required.