Add terminal walkthrough assets

This commit is contained in:
Thales Maciel 2026-03-09 22:49:56 -03:00
parent be654b5b41
commit 895cb608c0
6 changed files with 153 additions and 0 deletions

BIN
docs/assets/first-run.gif Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View file

@ -0,0 +1,50 @@
Output docs/assets/first-run.gif
Require uv
Set Shell "zsh"
Set FontSize 18
Set Width 1200
Set Height 820
Set Theme "Dracula"
Set TypingSpeed 35ms
Set Padding 24
Set WindowBar Colorful
Hide
Type "cd /home/thales/projects/personal/pyro"
Enter
Type "export UV_CACHE_DIR=.uv-cache"
Enter
Show
Type "printf '\\n# Check host support from the repo checkout\\n'"
Enter
Sleep 800ms
Type "uv run pyro doctor"
Enter
Sleep 2200ms
Type "printf '\\n# Inspect and pull the default environment\\n'"
Enter
Sleep 800ms
Type "uv run pyro env list"
Enter
Sleep 1800ms
Type "uv run pyro env pull debian:12"
Enter
Sleep 1800ms
Type "printf '\\n# Run one command in an isolated guest\\n'"
Enter
Sleep 800ms
Type "uv run pyro run debian:12 -- git --version"
Enter
Sleep 2200ms
Type "printf '\\n# Prove the one-shot VM lifecycle demo\\n'"
Enter
Sleep 800ms
Type "uv run pyro demo"
Enter
Sleep 2600ms

View file

@ -67,5 +67,26 @@ $ uvx --from pyro-mcp pyro demo
$ uvx --from pyro-mcp pyro mcp serve
```
`pyro demo` proves the one-shot create/start/exec/delete VM lifecycle works end to end.
Example output:
```json
{
"cleanup": {
"deleted": true,
"reason": "post_exec_cleanup",
"vm_id": "..."
},
"command": "git --version",
"environment": "debian:12",
"execution_mode": "guest_vsock",
"exit_code": 0,
"stdout": "git version ...\n"
}
```
When you are done evaluating and want to remove stale cached environments, run `pyro env prune`.
If `pyro doctor` reports `Runtime: FAIL`, or if the `pyro run` summary does not show
`execution_mode=guest_vsock`, stop and use [troubleshooting.md](troubleshooting.md).

View file

@ -37,6 +37,8 @@ Use these command forms consistently:
Use the package directly without a manual install:
If you are running from a repo checkout instead, replace `uvx --from pyro-mcp pyro` with `uv run pyro`.
### 1. Check the host first
```bash
@ -101,7 +103,33 @@ deterministic structured result.
If guest execution is unavailable, the command fails unless you explicitly pass
`--allow-host-compat`.
## 5. Optional demo proof point
```bash
uvx --from pyro-mcp pyro demo
```
`pyro demo` proves the one-shot create/start/exec/delete VM lifecycle works end to end.
Example output:
```json
{
"cleanup": {
"deleted": true,
"reason": "post_exec_cleanup",
"vm_id": "..."
},
"command": "git --version",
"environment": "debian:12",
"execution_mode": "guest_vsock",
"exit_code": 0,
"stdout": "git version ...\n"
}
```
For a fuller copy-pasteable transcript, see [first-run.md](first-run.md).
When you are done evaluating and want to remove stale cached environments, run `pyro env prune`.
## Installed CLI