Metadata-Version: 2.4
Name: darsay
Version: 0.17.0
Summary: Download, archive, and curate full model ecosystems as reproducible, auditable bundles
Author: Jeremy Norris
License-Expression: Apache-2.0
Project-URL: Homepage, https://darsay.io/
Project-URL: Documentation, https://darsay.io/docs/
Project-URL: Issues, https://github.com/darsay-io/darsay/issues
Project-URL: Changelog, https://github.com/darsay-io/darsay/blob/main/CHANGELOG.md
Keywords: huggingface,archive,models,datasets,reproducibility,curation
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: MacOS
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: System :: Archiving
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
License-File: NOTICE
Requires-Dist: huggingface_hub>=1.23
Requires-Dist: wasmtime<49,>=48
Provides-Extra: fast-hash
Requires-Dist: blake3; extra == "fast-hash"
Provides-Extra: smoke
Requires-Dist: tokenizers; extra == "smoke"
Provides-Extra: inference
Requires-Dist: transformers; extra == "inference"
Requires-Dist: torch; extra == "inference"
Provides-Extra: datasets
Requires-Dist: pyarrow; extra == "datasets"
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-cov>=5.0; extra == "dev"
Requires-Dist: ruff>=0.16.5; extra == "dev"
Requires-Dist: tomli>=2.0; python_version < "3.11" and extra == "dev"
Provides-Extra: release
Requires-Dist: build>=1.0; extra == "release"
Requires-Dist: twine>=5.0; extra == "release"
Dynamic: license-file

<h1 align="center">
  <a href="https://darsay.io/"><img src="docs/darsay-logo.png" alt="darsay — the genesis machine" width="880"></a>
</h1>

<p align="center"><strong>Tools for a reproducible AI research loop.</strong></p>

<p align="center">
  <a href="https://pypi.org/project/darsay/"><img src="https://img.shields.io/pypi/v/darsay?style=flat-square&color=22d3ee" alt="PyPI"></a>
  <a href="https://github.com/darsay-io/darsay/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/darsay-io/darsay/ci.yml?style=flat-square&label=CI" alt="CI"></a>
  <a href="https://github.com/darsay-io/darsay/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-38bdf8?style=flat-square" alt="Apache 2.0"></a>
  <img src="https://img.shields.io/badge/python-3.10%2B-00b4ff?style=flat-square&logo=python&logoColor=white" alt="Python 3.10+">
</p>


<p align="center">
  <a href="https://darsay.io/">Website</a> ·
  <a href="https://darsay.io/docs/getting-started/">Getting started</a> ·
  <a href="https://darsay.io/docs/">Documentation</a> ·
  <a href="https://darsay.io/docs/learn/">Learn the field</a>
  · <a href="https://darsay.io/brand/">Brand assets</a>
</p>

[darsay](https://darsay.io/) helps engineers build and operate an AI research
loop from open weights: understand the model, run controlled experiments,
evaluate changes, and build on the results. The project's guides, tools,
services, and hardware reference designs support that work. The
[north star](https://darsay.io/docs/north-star/) is to improve the models and
research process used in each successive cycle, working toward recursive
self-improvement as a research goal.

**This repository contains the darsay CLI**, which preserves the inputs to
that loop. It catalogs models, datasets, and source repositories as pinned,
checksummed bundles in a vault you control. Files keep their published
formats, with licenses, provenance, and verification evidence recorded beside
them. Supported models run offline in isolated environments; collections and
a shared browser interface help people and agents coordinate acquisition.

The [CLI direction](https://darsay.io/docs/cli-north-star/) is to connect
existing training, inference, and evaluation tools through inspectable,
removable project metadata. General loop orchestration is proposed. Today,
use the CLI for artifacts and supported runtimes, and your experiment's
native tools to train, evaluate, and retain the research record.

## Install

Python 3.10+ on macOS or Linux:

```bash
pipx install darsay
# or
uv tool install darsay
```

Try the CLI without a permanent install with `uvx darsay --help`.
[Installation and upgrades](https://darsay.io/docs/distribution/) covers
Homebrew and other installation paths.

## Quick start

```bash
darsay estimate Qwen/Qwen3-0.6B
darsay archive Qwen/Qwen3-0.6B
darsay run qwen--qwen3-0.6b "Say hello"
```

The default vault is `~/darsay`; use `--vault /path/to/vault` to choose another.
Interrupted archives resume with the same command. The first run prepares its
runtime environment; inference then uses the archived files offline.
[The guided first bundle](https://darsay.io/docs/getting-started/) explains each step.

Browse an existing vault:

```bash
darsay --vault ~/darsay serve --open
```

Open the private launch URL and use **All archives** or a named collection.
[The vault UI guide](https://darsay.io/docs/vault-ui/) covers local operation,
read-only browsing, collection exports, and agents.

## Documentation

The full guides and reference live at **[darsay.io/docs](https://darsay.io/docs/)**.

| You want to… | Read |
|---|---|
| Understand the research loop and the CLI's role | [Project north star](https://darsay.io/docs/north-star/) · [CLI direction](https://darsay.io/docs/cli-north-star/) |
| Connect a preserved model to training and evaluation | [A model improvement loop](https://darsay.io/docs/learn/model-loop/) |
| Understand vaults, bundles, and collections | [Concepts](https://darsay.io/docs/concepts/) |
| Find a command or workflow | [Examples](https://darsay.io/docs/examples/) |
| Curate and coordinate a collection | [Catalogs](https://darsay.io/docs/catalogs/) · [Boards and agents](https://darsay.io/docs/board/) |
| Resume, move, or back up archives | [Incremental transfer](https://darsay.io/docs/incremental/) · [FAQ](https://darsay.io/docs/faq/) |
| Understand and run a model | [Learn the field](https://darsay.io/docs/learn/) · [Hydration](https://darsay.io/docs/hydration/) |
| Recover an archive independently of darsay | [Manifest](https://darsay.io/docs/manifest/) · [MVB format](https://darsay.io/docs/mvb-format/) |

The CLI documentation's source remains in [`docs/`](docs/README.md) and
[`examples/`](examples/README.md), available offline with this repository.
For development, see [Contributing](CONTRIBUTING.md); for changes, see
[the changelog](CHANGELOG.md).

## License

[Apache License 2.0](LICENSE). Archived works retain their own upstream licenses,
recorded separately in each bundle's manifest.
