Sharing Tasks and AgentHarborFS URLs
Use task sharing when another machine needs to inspect the exact AgentHarborFS branch or snapshot that an agent used.
Create a Share URL
From an editor sidebar, choose Share Task. From the CLI:
ah branch share <branch-id> --expires 24hThe current editor actions create branch-scoped URLs with a 24 hour TTL and copy the result to the clipboard.
URL Shapes
agent-harbor://fs/branch/<branch-id>?host=<host>&token=<token>
agent-harbor://fs/snapshot/<snapshot-id>?host=<host>&token=<token>host tells the receiving daemon where to fetch manifests and blobs. It can be
a loopback endpoint for local testing, an explicit HTTPS endpoint, or a
rendezvous host ID. token is a scoped capability token for the shared branch or
snapshot.
Local task-focus links use a separate route:
agent-harbor://task/<task-id>Open a Share URL
Paste the URL into your editor command. In VS Code, run Agent Harbor: Open URI
and enter the share URL. The VS Code external URI entry point is:
code --open-url 'vscode://agent-harbor.agent-harbor-vscode-extension/open?url=agent-harbor%3A%2F%2Ffs%2Fbranch%2F<branch-id>%3Fhost%3D<host>%26token%3D<token>'Emacs and Neovim also expose URL commands:
M-x agent-harbor-uri-open:AgentHarborGoto agent-harbor://fs/branch/<branch-id>?host=<host>&token=<token>The local daemon validates the URL, imports the manifest, verifies blob hashes, and materializes files lazily as you open them.
Rendezvous
If a URL uses a host ID instead of an explicit endpoint, configure the directory service:
ah config set rendezvous.url <url>The daemon asks the rendezvous service for the source endpoint, bearer token, and proxy headers, then fetches manifests and blobs through the selected route.
AHR Carrying Modes
Agent Harbor recordings can carry filesystem state alongside the session:
| Mode | CLI value | Best for | Behavior |
|---|---|---|---|
| Slim | --include-snapshot=slim | Small bug reports and code review handoffs | Carries VCS-tracked dirty content and omits default-excluded blobs such as generated build output. |
| Full | --include-snapshot=full | Offline reproduction and archival | Carries every blob in the manifest, including generated and untracked files. |
Example:
ah agent record export <session-id> --include-snapshot=slim --out session.ahr
ah agent record export <session-id> --include-snapshot=full --out session.ahrUse slim mode when the source host remains reachable or the changed source files are enough. Use full mode when the recipient must reproduce the exact workspace without network access to the source host.
Security Notes
Treat a URL with token= as a bearer credential. Share it only with intended
recipients, prefer short TTLs, and revoke tokens when a link is no longer needed.
Every imported blob is verified against the manifest hash before it is served.