Agent Skills, Collections & Project Exports
Skills you write once and install on any machine, an export button on every project, and JSON treated like any other item.
Reusable agent skills
A skill is a folder of instructions your coding agent loads when it needs them. Keeping those folders in sync across machines has been a manual job. Now you can author them here and let the CLI do the copying.
Write a skill in the web app, or bring one you already have. Any conforming skill directory works as it stands. Zip its contents so SKILL.md sits at the archive root, then upload. Saving or uploading a draft runs validation and names what is wrong before you publish. Publishing stamps an immutable version with a content digest, so the version you install today is the same one you install next year.
- Your machines, listed. Register each machine you work on, then pick which skills belong on it. Machines report back after a sync, so the web app shows when each one last checked in and which selections have not landed yet.
- Choose where skills install.
.agentsis the standard location every compatible agent reads..claudeis Claude Code's own. Pick either, or both. - Managed installs stay managed. See what is installed with its version and digest, update to a newer version, roll back when the new one misbehaves, and remove installs when you are done. Anything the CLI did not install, it will not touch. A conflict with content it does not own refuses rather than overwrites.
- Collections. Group related skills under a name, filter the catalog by collection, then add a whole collection to a machine at once. The preview lists every selection it will add before you confirm, and the machine installs them on its next sync.
From a terminal, ctx skills validate, ctx skills pack, and ctx skills publish do the same work without opening a browser.
Export a project
Every project now has an Export project button. It downloads a ZIP of the project's active items in the folder structure you built, plus a manifest.json describing the archive with a checksum for each entry.
Export works on every plan. Your content is yours, and now you can take a copy whenever you want one.
JSON items
JSON is a first-class format across the web app, the API, and the CLI.
Upload a .json file and it is read as JSON instead of refused. Create JSON items directly in the web app, where invalid JSON is flagged inline before you save. Existing JSON items open in the editor and display with syntax highlighting. The text inside is extracted and indexed, so a value buried in a nested object still turns up in search.
The CLI does the round trip: ctx create config --src sample.json uploads it as JSON, and ctx get config --dest ./out/ writes config.json back out.