Matlab Share Content
MathWorksOfficialCreated by MathWorks
- Skill
- Workflow
- Software development
- BSD-2-Clause
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a structured workflow for sharing MATLAB code by enabling users to generate direct-open URLs. It guides users through the process of hosting their content on GitHub, MATLAB Drive, or File Exchange and then constructing the appropriate URL to allow recipients to open the files directly in a browser using MATLAB Online. The skill includes specific instructions for each platform, including CLI automation for GitHub and manual upload steps for other services, ensuring that users can easily share code, projects, or specific files with others.
What it does
- Guides users through uploading MATLAB files to GitHub, MATLAB Drive, or File Exchange.
- Constructs Open in MATLAB Online URLs for hosted content.
- Automates GitHub repository creation and pushing using the gh CLI.
- Provides instructions for generating clickable badges for GitHub README files.
- Explains how to link to specific files, projects, or folders within shared content.
- Offers troubleshooting for common URL parameter and platform-specific mistakes.
When to use it
- When you have local MATLAB files and want to share them via a link that opens in MATLAB Online.
- When you need to generate an Open in MATLAB Online button or badge for your documentation.
- When an AI agent has generated MATLAB code locally and you want to run it in the cloud.
- When you need to choose the best platform for sharing code based on your audience and access needs.
Advantages
- Enables seamless browser-based access to MATLAB code.
- Supports multiple hosting platforms to suit different sharing requirements.
- Provides clear, standardized URL templates to avoid common configuration errors.
- Includes automated CLI steps for efficient GitHub integration.
Usage examples
- “How can I share my local MATLAB code so others can open it in MATLAB Online?”
- The agent will ask you to choose between GitHub, MATLAB Drive, or File Exchange, then guide you through the upload process and provide the specific URL for your content.
- “I have a repository on GitHub, how do I create an Open in MATLAB Online link for it?”
- The agent will ask for your repository owner and name, then provide the correctly formatted URL using the GitHub template.
- “How do I add a badge to my GitHub README to open my project in MATLAB Online?”
- The agent will provide the markdown code for the badge and help you construct the URL to link it to your repository.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/matlab/matlab-share-content/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip matlab-share-content.zip -d .agents/skills
Documentation by MathWorks
Sharing MATLAB Content
Share MATLAB content by uploading to GitHub, MATLAB Drive, or File Exchange, then generating "Open in MATLAB Online" URLs that let recipients open the content directly in a browser.
When to Use
User has local MATLAB files and wants to open them in MATLAB Online
User wants to share MATLAB code via a link that opens in MATLAB Online
AI agent generated MATLAB code locally and user wants to run/open it in MATLAB Online
User asks for an "Open in MATLAB Online" link, button, or badge
User has content on GitHub/MATLAB Drive/File Exchange and wants the direct-open URL
When NOT to Use
User wants to try out MATLAB code without needing to upload anywhere
User is asking about MATLAB Online features, licensing, or account setup
User wants to run MATLAB code interactively in MATLAB Online without generating a shareable link
Workflow
1. Identify the starting point
Ask what the user has:
Local files only → they need to upload first, then generate the URL
Already on GitHub → skip to URL generation (GitHub path)
Already on MATLAB Drive with a share link → skip to URL generation (Drive path)
Already on File Exchange → skip to URL generation (File Exchange path)
2. Help choose a path
If the user hasn't uploaded yet, recommend based on their goal:
| Goal | Recommended Path | Why |
|---|---|---|
| Quick sharing or personal use | GitHub | Fully automated via CLI; works for public repos |
| Share with specific people (private) | MATLAB Drive | Supports access control; no public repo needed |
| Share with the MATLAB community | File Exchange | Discoverable by all MATLAB users; includes ratings/reviews |
| Embed in documentation/README | GitHub | Supports badge images in markdown |
3. Guide the upload
Follow the appropriate path below.
4. Generate the URL
Use the exact templates in the URL Templates section. Present the final URL to the user.
If the user has multiple files, generate a separate URL for each file they want to open. To open all files at once:
GitHub: omit the
fileparam — clones the entire repo without opening a specific fileMATLAB Drive: set
file=/— opens the shared folderFile Exchange: omit the
fileparam — opens the full submission
5. Optionally generate a badge (GitHub path only)
If the user wants a clickable button for a README:
[](URL_HERE)URL Templates
GitHub
https://matlab.mathworks.com/open/github/v1?repo=<owner>/<repo>&file=<relative-path>| Parameter | Required | Description |
|---|---|---|
repo | Yes | owner/reponame (no https://github.com/ prefix) |
host | No | GitHub host (default: github.com). Required for GitHub Enterprise (e.g., github.mathworks.com) |
file | No | Specific file to open after clone |
project | No | MATLAB project file to open (e.g., myProject.prj) |
line | No | Line number to navigate to |
focus | No | Set to true to open in focused editor view |
There is NO branch or tag parameter. The URL always clones the default branch.
URL generator tool: Users can also generate these URLs interactively at https://www.mathworks.com/products/matlab-online/git.html
MATLAB Drive
https://matlab.mathworks.com/open/matlabdrive/v1?namespace=SHARED&id=<share-uuid>&file=<filename>| Parameter | Required | Description |
|---|---|---|
namespace | Yes | Always SHARED for shared content |
id | Yes | UUID from the share link |
file | Yes | Filename from the share link |
The host parameter is optional — it defaults to gds.mathworks.com if omitted.
File Exchange
https://matlab.mathworks.com/open/fileexchange/v1?id=<submission-id>| Parameter | Required | Description |
|---|---|---|
id | Yes | Numeric submission ID from the File Exchange URL |
file | No | Specific file to open after download |
project | No | MATLAB project file to open |
version | No | Specific version of the submission |
line | No | Line number to navigate to |
focus | No | Set to true to open in focused editor view |
GitHub Path: Step-by-Step
This is the only path with full CLI automation.
Before running any commands, verify the gh CLI is installed and authenticated:
Check installation:
gh --versionCheck authentication:
gh auth status
If gh is not installed, guide the user to install it (e.g., brew install gh on macOS, or visit https://cli.github.com). If not authenticated, have the user run gh auth login before proceeding.
If the user has local files not yet on GitHub, run these commands for them:
# 1. Initialize and commit
git init my-project
cd my-project
cp /path/to/your/file.m .
git add .
git commit -m "Add MATLAB code"
# 2. Create public repo and push
gh repo create my-project --public --source=. --pushBefore running step 2, warn the user explicitly: creating a --public repo makes the code visible to anyone on the internet. Ask them to confirm they are comfortable making the code public and to review the files being pushed. Only proceed with their explicit permission.
Once the repo exists (either just created or already on GitHub), construct the Open in MATLAB Online URL using the repo name and file path:
https://matlab.mathworks.com/open/github/v1?repo=<owner>/<repo>&file=<filename>Present this final URL to the user.
MATLAB Drive Path: Step-by-Step
There is no CLI for MATLAB Drive. MATLAB Drive sharing only works at the folder level — individual files cannot be shared directly. The user uploads all files into a folder, shares the folder, and the resulting share link targets a specific file within that folder.
Give the user these instructions:
Go to
https://drive.mathworks.com/Create a folder in MATLAB Drive
Upload all file(s) into that folder
Right-click the folder → Share → Create Link
Copy the share link and provide it back
Once the user provides the share link, extract the UUID and filename from it. The share link format is:
https://drive.matlab.com/sharing/<uuid>/<filename>Then construct the Open in MATLAB Online URL:
https://matlab.mathworks.com/open/matlabdrive/v1?namespace=SHARED&id=<uuid>&file=<filename>The same UUID can be used to open other files in the shared folder — just change the file parameter. To open the entire folder, set file=/.
Present this final URL to the user.
File Exchange Path: Step-by-Step
There is no CLI for File Exchange.
Give the user these instructions:
Go to
https://www.mathworks.com/matlabcentral/fileexchange/Sign in and publish the submission
After publishing, provide the submission ID or the File Exchange page URL
Once the user provides the submission ID or URL, extract the numeric ID. The File Exchange URL format is:
https://www.mathworks.com/matlabcentral/fileexchange/<ID>-<title-slug>Then construct the Open in MATLAB Online URL:
https://matlab.mathworks.com/open/fileexchange/v1?id=<ID>To open a specific file within the submission, add the file parameter:
https://matlab.mathworks.com/open/fileexchange/v1?id=<ID>&file=<filename>Omitting file opens the full submission.
Present this final URL to the user.
Common Mistakes
| Mistake | Why It's Wrong | Correct Approach |
|---|---|---|
Adding &branch=main to GitHub URL | Parameter doesn't exist; URL always clones default branch | Omit branch — only repo, file, and project are valid |
Using /open/drive/v1 for MATLAB Drive | Wrong path segment | Use /open/matlabdrive/v1 |
Using ?sharing=<uuid> for MATLAB Drive | Wrong parameter format | Use ?namespace=SHARED&id=<uuid>&file=... |
Omitting namespace for Drive URLs | URL won't resolve without it | Always include namespace=SHARED |
Including https://github.com/ in the repo param | Format is owner/repo only | Strip the domain: aanithap/my-project not https://github.com/aanithap/my-project |
| Suggesting email or cloud storage | Doesn't give an "Open in MATLAB Online" experience | Use one of the 3 supported paths |
Conventions
Always present all 3 options when the user hasn't decided on an upload path
Always use the exact URL templates — do not guess or interpolate URL patterns
For GitHub: recommend
--publicfor shareable links (private repos require auth)Never suggest a
branchortagparameter for GitHub URLsURL-encode file paths that contain spaces or special characters (e.g.,
My File.m→My%20File.m)
Copyright 2026 The MathWorks, Inc.
Files
- ATTRIBUTION.mdAdded by AutoGineer1.0 KiB
- LICENSELicence file added by AutoGineer1.4 KiB
- SKILL.md9.5 KiB
- manifest.yaml432 B
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs a command-line tool
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- MathWorks
- Publisher
- MathWorks (Official)
- Source
- matlab/matlab-agentic-toolkit · skills-catalog/cloud-solutions/matlab-share-content · commit 2a7f215
- Licence
- BSD 2-Clause License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE.md)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by MathWorks or MathWorks.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download matlab-share-content.zip