skl sync puts one session on Skillsync as a thread you own. It only happens when you run it. Sign in first with skl login.
Sync a session
skl sync <id>
skl sync
skl sync <id> --dry-run
The thread is private until you share it, and the command prints its URL. With no id you pick from a list. --dry-run shows what would be sent and sends nothing.
Run it again after the session grows. The same thread updates and the URL stays the same. Your local session always wins.
Claude Chat and ChatGPT sessions need --from:
skl sync <id> --from claude_chat
Share with workspaces
skl sync <id> --workspace engineering
skl sync <id> --workspace engineering --workspace platform
skl sync <id> --private
The workspaces you pass are the whole list, and they replace the old one. --private removes them all. Pass neither on a re-sync and the shares stay as they are. One sync takes up to 20 workspaces.
The thread stays yours. Members see it while you and they are both in the workspace.
What won't sync
- A session with nothing in it.
- A session under a path you've hidden with
skl ignore. - A session too big for Skillsync.
- A session from a tool marked No in the sync column of Session compatibility.
Sessions already on Skillsync
skl remote workspaces
skl remote list
skl remote list --workspace engineering
skl remote view <ref>
skl remote open <ref>
skl remote continue <ref> --with codex
skl remote delete <ref>
| Command | What it does |
|---|---|
workspaces | The workspaces you belong to. |
list | Your synced sessions, newest first. With --workspace, what members shared into that workspace. |
view | Print the Skillsync copy as text. |
open | Open it in the browser. |
continue | Pick it up on this machine. --with chooses the tool. |
delete | Delete it from Skillsync. Your local session stays. |
<ref> is the id of a session you synced from this machine, or the thread's slug from skl remote list or its URL. On another machine, use the slug.
Scripts and tokens
Pass the session id in a script. Without one the command opens a picker.
skl sync "$SESSION_ID" --workspace engineering
skl remote list --json
skl reads a token from SKL_TOKEN when it's set. An API token from Settings → Environments can sync and nothing else.