Push and pull
Host agent work as a private vos, and sync human studio edits back down.
vos push hosts your work on vos.so as a private vos with version history;
vos pull brings the human's studio edits back down as a typed changelog
plus a fresh document. Together they are the iteration loop: agent and human
editing the same video, taking turns, with the history as the conversation.
Push
vos push take --yes --label "tighter intro zoom" --note "asked for a snappier open"
vos push bright-loop/config.json --vos <id> --label "warmer palette"push is polymorphic by a deterministic sniff, never a flag: a take
directory (a doc.json carrying source) pushes recording and document
through the take pipeline; a config.json pushes the program, with a
program document beside it (a doc.json carrying program: layers, tween
edits, its own length) riding along when there is one. Both paths share
the same rules:
- The vos is created private. Keys never publish.
- The recording uploads once, content-addressed; re-pushes reuse it.
- The first push of a take asks before uploading (
--yesfor headless). Agents never upload unprompted. - Every push carries
--label(what changed, one imperative line) and--note(why: the user's ask, one sentence).--noteis what the human reads first. - The push records against a tracked base version (
vos.jsonbeside your artifact). A stale base is rejected with the changes you missed; see Versions and conflicts.
Pull
vos pull takePull prints what changed on vos.so since your last push, one version at a time: who made it, its label and note, and a semantic summary of the edits ("zoom z3: level 2.2 to 1.8"). It also lists the nodes those human edits protected, syncs the head document back into your directory (a backup of yours is kept), and repoints your tracked base.
Always pull before editing a pushed work. The changelog is the human's half of the conversation; editing without reading it is how their work gets overwritten.
The handoff surfaces
The human opens the same work at vos.so/studio?vos={id}; their saves join
the same version chain your pushes do. For local work that is not hosted yet,
vos open take serves the take straight into the studio with your document
intact.
Related
- Versions and conflicts for the 409 ritual and protected nodes.
- Credentials for how push authenticates.
- Voses and versions for the same loop over raw HTTP.