cyberdrop-client 0.5.0

Rust API client for Cyberdrop, with async support and typed models. Also works for bunkr.cr
Documentation
# AGENTS.md

Instructions for AI agents working on this repository.

## Project

`cyberdrop-client` — an async Rust HTTP client for the Cyberdrop and Bunkr APIs.

## Commands

```sh
cargo build              # compile
cargo test               # run unit tests (inline #[cfg(test)] modules)
cargo fmt --check        # verify formatting
cargo clippy -- -D warnings  # lint (warnings denied)
cargo run --example <name>   # run an example
```

All four checks (`build`, `test`, `fmt --check`, `clippy -- -D warnings`) must pass before considering work done.

## Structure

```
src/
  lib.rs       — crate root, re-exports
  client.rs    — CyberdropClient, builder, upload helpers, upload tests
  error.rs     — CyberdropError enum
  models.rs    — request/response types, typed models
  transport.rs — low-level HTTP transport, transport tests
examples/      — CLI examples (cargo run --example <name>)
```

## Conventions

- Rust edition 2024, MSRV not enforced.
- Private types use `pub(crate)`.
- Tests live in `#[cfg(test)] mod tests` blocks at the bottom of the source file.
- No integration test directory (`tests/`).
- No CI pipeline; agents must run all checks locally before finishing.
- Do not commit secrets, tokens, or credentials.
- Keep public API backward-compatible; changes should be additive.