@canvatopsd/cli
v3.4.14
Published
Canva to PSD converter CLI for AI agents. Export public Canva designs to editable layered Photoshop PSDs with Rust, JSON commands, verified downloads and bundled Agent Skills.
Maintainers
Readme
Canva to PSD CLI — CanvaToPSD
Convert public Canva design links into editable, layered Photoshop PSD files from your terminal or AI agent. CanvaToPSD preserves supported editable text and separates images and artwork into layers. Conversion runs on the hosted service, with payment before conversion and completed-file previews and downloads.
npm · Agent setup · Real examples · Pricing · Documentation
Install
Requires Node.js 22.16 or later. No Rust compiler, Photoshop installation, Canva login, CanvaToPSD account or API key is required.
npm install -g @canvatopsd/cli
canvatopsd --version
canvatopsd update check
canvatopsd --helpRun without a global installation:
npx --yes @canvatopsd/cli --helpSupported platforms: macOS Apple Silicon (ARM64), Linux ARM64/x64 and Windows ARM64/x64. macOS Intel and Alpine/musl are unsupported. Linux requires glibc and OpenSSL 3. See platform requirements for details.
Convert a Canva design
In Canva, choose Share → Public view link → Copy link. Copied canva.link share URLs are also accepted.
canvatopsd convert 'CANVA_PUBLIC_VIEW_URL' --email '[email protected]'
# Replace TASK with the returned taskId:
canvatopsd checkout TASK
# After the user completes payment through the returned checkoutUrl:
canvatopsd wait TASK
canvatopsd preview TASK
canvatopsd download TASK --out ./design.psdShare the returned previewUrl unchanged to open the Web preview. For a whole-page image, use preview TASK --out ./preview.webp. Web owns interactive layer previews.
Keep the same task ID throughout. Conversion requires upfront payment at the current price. A delivery email address is required for every new conversion. It receives download links for the completed PSDs and other deliverables.
Optional --locale CODE on convert or create sets the task page and notification language on APIs supporting that field. Omit it to use the API default, English. It does not change PSD content or layer naming; see the usage guide.
For multiple pages, choose the design page numbers explicitly:
canvatopsd convert 'CANVA_PUBLIC_VIEW_URL' --email '[email protected]' --pages 1,3
canvatopsd checkout TASK
# After payment:
canvatopsd wait TASK
canvatopsd preview TASK --page 3
canvatopsd download TASK --page 3 --out ./page3.psdPage numbers start at 1. If conversion times out, resume with canvatopsd wait TASK; do not submit another conversion just to continue waiting. Existing tasks start with status TASK. Downloads verify size and SHA-256 and never overwrite existing files.
Use with an AI agent
The package includes a Skill for Codex, Claude Code, Cursor, GitHub Copilot and other agents with shell access.
canvatopsd skill install codex
canvatopsd skill status codexUse claude-code, cursor, copilot or agents instead of codex, or install into a project with canvatopsd skill install --dir ./.agents/skills. Start a new agent session after installation.
Agents can inspect the actual command definitions offline:
canvatopsd discover convert
canvatopsd discover payment confirm
canvatopsd skill showBusiness commands return JSON without a --json flag: success is {"ok":true,"data":...}; failure is {"ok":false,"error":...} with exit code 1. Help and version are text. Discovery includes parameter types, limits and side effects. Page-selection errors include available page numbers and the next action.
Present checkoutUrl unchanged to the user. payment confirm may capture approved funds and requires payment authorization. Keep task credentials and credential exports private.
Output and limits
| Content | PSD result | | ------------------------- | ---------------------------------------------------------------- | | Supported text | Editable text layers | | Photos and images | Separate image layers | | Vector artwork | Separate raster image layers; vector paths are not editable | | Static multi-page designs | A PSD for each selected converted page | | Fonts and effects | May differ from Canva; inspect the preview and downloaded result |
Video, animation, interactive content, arbitrary image/PDF conversion and editing existing PSDs are outside this CLI's scope. The CLI runs locally; conversion and delivery require an internet connection. Transfer verification does not by itself establish pixel-identical rendering or native Photoshop compatibility.
Documentation and support
- Installation and conversion walkthrough
- Complete command reference
- Agent selection and discovery
- Usage, recovery and troubleshooting
- Product facts and distribution channels
- Build and development · Release checklist
- Issues · Support
The CLI, bundled Agent Skill and included documentation are licensed under the MIT License. Use of the hosted service is governed by its service terms. Report security issues privately to [email protected]; omit task tokens, credential files and private links from public reports.
