# DS4Server

DS4Server is a native macOS coding-agent application for the DwarfStar (`ds4`)
inference engine. It uses Rust and Iced and will combine local model loading, an
OpenAI-compatible localhost endpoint, and project-scoped agent chat in one app.

The current milestone provides a Codex-inspired project/session layout. A native
macOS folder picker selects each workspace, then the app asks for its display
name. Projects, sessions, and model preferences are persisted through Diesel in
SQLite. Open Preferences with `Command-,` to select the model, toggle DSpark,
configure the model idle timeout, and download the selected main GGUF with
its optional DSpark support. Rust-native background downloads show live byte
progress, speed, and ETA in Preferences and the app status bar. Stopping or
quitting keeps the partial file; the next Download/Resume action continues from
that exact byte after relaunch. Exact size and SHA-256 verification happen
before an artifact becomes usable.

```sh
cargo install cargo-packager --locked --version 0.11.8
make bundle
open target/release/DS4Server.app
```

State is stored at:

```text
~/Library/Application Support/DS4Server.rfc1437.de/data.sqlite3
```

Deleting a project or session removes only DS4Server metadata. It never deletes
the referenced project directory. See [PLAN.md](PLAN.md) for the implementation
roadmap.
