URL Format
| Component | Description | Example |
|---|---|---|
scheme | Protocol | qoder |
host | Deeplinks handler identifier | aicoding.aicoding-deeplink |
path | Action path | /chat, /quest, /rule, /command, /mcp/add |
parameters | URL query parameters | text=hello&mode=agent |
Available Deeplink Types
| Path | Description | Login Required |
|---|---|---|
/chat | Create Chat | Yes |
/quest | Create Quest task | Yes |
/rule | Create rule | No |
/command | Create custom command | No |
/mcp/add | Add MCP service | No |
Create Chat /chat
Open a chat session directly via a link. When opening the link, Qoder Desktop will first show the content to be brought into the new conversation. After confirmation, it will create a new chat and pre-fill the text into the input box without sending it automatically. You must be logged in before using it.URL Format
Parameters
| Parameter | Required | Description |
|---|---|---|
text | Yes | The prompt content to pre-fill |
mode | No | Chat mode: agent, ask, chat, or experts when Experts is enabled. ask is handled as chat. |
isNewChat | No | Whether to create a new chat. Defaults to true; set to false to pre-fill the current chat. |
Example
Generate Link Code
- TypeScript
- Python
Create Quest Task /quest
Open or focus the independent Quest window and pre-fill a new Quest draft. When opening the link, you can review the task description and execution mode before deciding whether to proceed. You must be logged in before using it.URL Format
Parameters
| Parameter | Required | Description |
|---|---|---|
text | Yes | Task description |
agentClass | No | Execution mode: LocalAgent (default) or LocalWorktree |
Execution Modes
| Mode | Description |
|---|---|
LocalAgent | Execute in current workspace |
LocalWorktree | Execute in isolated git worktree |
Example
Generate Link Code
- TypeScript
- Python
Create Rule /rule
Import rules to guide AI behavior via a link. Rules can define coding standards, project conventions, or specific instructions for AI responses. When opening the link, you can first review the rule name and content before deciding whether to import it; upon confirmation, the corresponding rule will be created.URL Format
Parameters
| Parameter | Required | Description |
|---|---|---|
name | Yes | Rule name (used as filename) |
text | Yes | Rule content |
Example
Generate Link Code
- TypeScript
- Python
Add MCP Service /mcp/add
Quickly add MCP (Model Context Protocol) service configurations via a link. MCP services extend AI capabilities by providing additional tools and context sources. When opening the link, Qoder Desktop will first display the service information to be added and open the MCP settings page, allowing you to review and confirm simultaneously.URL Format
Parameters
| Parameter | Required | Description |
|---|---|---|
name | Yes | MCP service name |
config | Yes | Base64 encoded MCP service JSON configuration |
Note: The configuration must contain eithercommandorurl; if the name already exists, it cannot be added again.
Example
Generate Link Code
MCP service JSON configuration encoding Process:- Create the configuration JSON object
- Serialize with
JSON.stringify() - URL encode with
encodeURIComponent() - Base64 encode with
btoa() - URL encode the result with
encodeURIComponent()
- TypeScript
- Python
Create Command /command
Quickly create custom commands via links, ideal for distributing common prompt templates, project operation guides, or team-agreed commands. When opening the link, Qoder Desktop will first display the command name, scope, description, and content before creating it upon confirmation.URL Format
Parameters
| Parameter | Required | Description |
|---|---|---|
name | Yes | Command name, must only contain lowercase letters, numbers, hyphens, and underscores |
text | Yes | Command content |
description | No | Command description |
scope | No | Scope: user or project, default is user |
Scope
| Scope | Description |
|---|---|
user | Adds only to the current user environment |
project | Adds to the current workspace, suitable for team sharing |
Example
Generate Link Code
- TypeScript
- Python
Usage Notes
- After clicking the link, Qoder Desktop will first display the command information for your confirmation.
namecannot be empty and can only use lowercase letters, numbers, hyphens, and underscores.scope=projectrequires you to have a workspace currently open; otherwise, it cannot be created.- Commands with the same name cannot be created repeatedly.
Security Considerations
Important: Always review Deeplinks content before clicking.
- Never include sensitive data: Do not embed API keys, passwords, or proprietary code in Deeplinks
- Verify the source: Only click Deeplinks from trusted sources
- Review before confirming: Qoder Desktop always shows a confirmation dialog - carefully review the content before proceeding
- No automatic execution: Deeplinks never execute automatically; user confirmation is always required
Troubleshooting
| Issue | Possible Cause | Solution |
|---|---|---|
| ”Unregistered deeplink path” | Unsupported deeplink path | Check if the path is supported and ensure Qoder version is 0.2.21 or above |
| ”Missing required parameter” | Parameter not provided | Check that all required parameters are included in the URL |
| ”Invalid JSON config” | Malformed JSON | Validate JSON structure before encoding |
| ”Quest Mode is disabled” | Quest feature not enabled | Enable Quest Mode in Settings |
| Login prompt appears | Deeplink requires authentication | Sign in to your account first |
| ”Invalid Base64 encoded config” | Incorrect MCP config encoding | Ensure correct encoding order: JSON → encodeURIComponent → btoa → encodeURIComponent |
URL Length Limits
Deeplink URLs should not exceed 8,000 characters. For longer content, consider:- Shortening the prompt or rule content
- Using external references instead of inline content
- Splitting into multiple deeplinks