# Pack the run that worked. Restore it on the next machine.

> Renest is an asset drive for AI image and fine-tuning work. It packs the files and reinstallable dependencies behind a ComfyUI, kohya_ss or LLaMA-Factory run that already worked, and restores them on another GPU machine, where every file is checked against its recorded checksum.

Canonical page: https://renest.ai/Docs.html

<h2 id="what">Renest packs a run that worked and restores its files and dependencies elsewhere</h2>
<p>Renest works with three named frameworks: <strong>ComfyUI</strong> for image generation,
and <strong>kohya_ss</strong> and <strong>LLaMA-Factory</strong> for fine-tuning. Once a run
has produced a result, Renest packs what it depended on into a <em>nest</em>: the model
weights and adapters it used, the source of every custom node as it was, the dependency
lock, and the workflow or training config. It is not a tool for arbitrary Python
environments.</p>
<p>On another machine, a restore checks the hardware first, brings every file back and
checks it against its recorded checksum, and reinstalls the dependencies from the lock.
Files your drive already holds are not sent again. What Renest promises is that the files
and dependencies come back and are checked; the restore then starts the app and runs the
packed workflow once, so you see for yourself whether it produces output.</p>

<h2 id="install">Install the command-line tool with uv</h2>
<pre># no account needed · Python 3.11 or newer
$ uv tool install --upgrade renest
# put it on this shell's PATH
$ export PATH="$HOME/.local/bin:$PATH"
# check this machine
$ renest doctor</pre>
<p>The <code>PATH</code> line is not optional on a fresh machine: <code>uv</code> installs
<code>renest</code> into <code>~/.local/bin</code>, which a freshly rented box does not have
on its <code>PATH</code>, so <code>renest</code> answers <code>command not found</code> with
no hint as to why. A new shell picks it up too; add the line to <code>~/.bashrc</code> to
keep it across reboots.</p>
<p><code>--upgrade</code> also moves an older install to the latest; without it, a plain
<code>uv tool install renest</code> leaves an existing version untouched. On a proxy
network, <code>export HTTPS_PROXY=http://host:port</code> (and <code>ALL_PROXY</code>)
first — <code>uv</code> and <code>curl</code> read the proxy only from these variables,
never from the OS settings, so without them the very first install step hangs with no
error at all.</p>

<h2 id="first">A first restore takes a pack, a restore code, and one command</h2>
<p>Where the run worked, pack it and upload it to your Renest drive. The workflow is the
one exported in API format (in ComfyUI, <em>Export (API)</em>). Uploading needs an access
key from the web console, under <strong>Settings → Access</strong>:</p>
<pre>$ renest pack --dir ./run --workflow workflow-api.json --out ./nests --dest hosted</pre>
<p>The <a href="docs-plugin-nest-this-run.html">ComfyUI panel</a> can do the packing from
a button; it writes the nest to this machine's disk only, and you can then upload that
folder from the web console with <strong>Upload a nest</strong>.</p>
<p>On the other machine, open the nest in the web console, choose <strong>Restore</strong>,
and pick how long the restore code lasts. The console gives you one command to paste; it
writes the code to <code>grant.json</code> and runs:</p>
<pre>$ renest restore --grant grant.json --dir ./run
# when it has finished, start the app it restored
$ renest start --dir ./run --listen 0.0.0.0</pre>
<p>A restore ends by printing <em>What's next</em>: where your output lands and the
command that starts the app. <a href="docs-quick-start.html">Quick start</a> walks through
the same steps with more detail.</p>
<p>Keeping nests in a bucket of your own instead of the drive also works: you pack
to your bucket and sign the restore code yourself with <code>renest presign</code>. See
<a href="docs-restore.html#codes">Restore anywhere</a>.</p>

<h2 id="next">The docs are grouped by what you are trying to do</h2>
<ul>
  <li><strong>Getting started</strong> — what Renest is and one pack and restore end to end. Begin with <a href="docs-quick-start.html">Quick start</a>, or <a href="docs-starter-nests.html">try a starter nest</a> first.</li>
  <li><strong>Guides</strong> — step-by-step pages for one job at a time. Begin with <a href="docs-restore.html">Restore anywhere</a>.</li>
  <li><strong>Reference</strong> — exact commands, flags and file formats, grouped as CLI reference and Formats, plus the ComfyUI panel. Begin with the <a href="docs-cli.html">CLI reference</a>.</li>
  <li><strong>Concepts</strong> — why it works the way it does, and what you can rely on. Begin with <a href="docs-concepts.html">Core ideas</a>.</li>
</ul>
<p>Measured runs, with the date and hardware they came from, are written up as <a href="Blog.html">field reports</a>.</p>
