Your agent sees what you saw, and shows you what it did.
npx skills add jamdotdev/skillsThen paste a Jam link and say what you want:
- "fix this https://jam.dev/c/…"
- "do what I said in this jam"
- "make a ticket for this jam"
- "record a jam showing it works"
A Jam is a screen recording or screenshot with the console logs, network requests and user actions attached, on one link. You'd record one for a bug report, a feedback walkthrough or a demo. These skills let your agent read a Jam, and record its own when it's done, so you check the result by watching it.
Works with Claude Code, Cursor, Codex, GitHub Copilot, Gemini CLI, OpenCode and every agent skills.sh supports. Add --skill jam-fix to install one skill.
You don't need to remember these names. Paste a Jam link, say what you want, and your agent picks the skill.
- jam: "Take a look at this jam." For a link with no instructions. It reads the Jam and picks the skill below that fits.
- jam-fix: "Fix this jam." Finds the root cause from the errors, failed requests and steps in the recording, and shows the evidence. It changes code only when you ask.
- jam-to-tasks: "Do what I said in this jam." Turns your feedback into a numbered to-do list, each item tied to the moment you said it, then works through it.
- jam-to-e2e: "Write a test for this jam." Writes an end-to-end test with your project's own test setup. A Jam of a bug becomes a test that fails until the fix lands.
- jam-to-ticket: "Make a ticket for this jam." Files it in Linear, GitHub Issues or Jira with the steps, a frame from the recording and the errors, unless a ticket already exists.
- video-to-jam: "Split this recording by bug." Turns an MP4, a Loom download or a long call into one Jam per issue.
- jam-proof: "Record a jam showing it works." Records the change working and gives you a Jam link for the pull request.
- jam-annotate: "Mark what's broken and share it." Draws boxes, arrows and notes on a screenshot, blurs anything private, and shares it as a Jam.
- jam-proof-table: "Give me the jams for each fix." After a batch of work, one table: each claim, whether it works, and the Jam that shows it.
- A free Jam account.
- The Jam CLI. A skill signs in when it needs to.
jam,jam-fixandjam-to-e2ecan read a Jam through Jam MCP instead, the Model Context Protocol (MCP) server the plugin connects. - For
video-to-jam: ffmpeg and a local transcriber such as Whisper. - In CI or a cloud agent: a personal access token in
JAM_TOKEN. - For
jam-proof: recording a web page needs only Chrome. Recording a window or the whole screen needs macOS or Linux (X11).
The plugin installs every skill, connects Jam MCP and updates itself. Use the plugin or npx skills add, not both, or the agent sees every skill twice.
Claude Code
/plugin marketplace add jamdotdev/skills
/plugin install jam@jam-pluginsSkills load as /jam:jam-fix, /jam:jam-proof, and so on. To test a checkout, run claude --plugin-dir /path/to/skills.
Cursor
Open Customize in the sidebar, search for Jam, and click Install.
To test a checkout, link it into the local plugin folder and run Developer: Reload Window:
ln -s /path/to/skills ~/.cursor/plugins/local/jamCodex
codex plugin marketplace add jamdotdev/skills
codex plugin add jam@jam-pluginsStart a new session, complete the OAuth prompt, and run /mcp to check the connection. To test a checkout, pass its path to marketplace add.
GitHub Copilot CLI
copilot plugin marketplace add jamdotdev/skills
copilot plugin install jam@jam-pluginsGemini CLI
gemini extensions install https://github.com/jamdotdev/skillsRun /mcp auth Jam once to sign in. To test a checkout, run gemini extensions link /path/to/skills.
Sign-in, tokens, what Jam MCP can do, and permissions: docs/plugin.md.
Bug in a skill, or a skill you want? Open an issue. Pull requests are welcome, and CONTRIBUTING.md is short.