Custom Skills

Overview

MeDo official skills already cover a wide range of scenarios, including AI tools, payment services, video technologies, voice and image processing, text processing, map services, information search, login verification, and more, helping you efficiently complete tasks and build feature-rich applications.

However, official skills may not fully satisfy more vertical or highly customized business requirements. To address this, MeDo provides Custom Skills — simply upload a .zip skill package to quickly create a custom skill, which can then be flexibly invoked during task execution or application generation.

With custom skills, you can equip MeDo with richer, more professional capabilities and domain knowledge, enabling it to complete specialized tasks more effectively or build applications that better fit your business needs.

External API Integration

MeDo does not currently support creating custom Skills directly from an API documentation link or API description. To integrate an external API, use one of the approaches below.

In the future, MeDo plans to support converting APIs directly into custom Skills through conversation.

MethodDescription
Integrate directly in conversationYou can directly provide API descriptions or API documentation links in the conversation, and MeDo will help you integrate the API.
Generate a skill package through conversation or using the "Skill Creation & Editing" skill, then import it as a custom skillMention the "@Skill Creation & Editing" skill in the conversation and paste the API description or API documentation link. MeDo will then help convert the API into a skill package, which you can download and import into Custom Skills.
Import and create directlyIf you already have a prepared skill package containing APIs, you can directly import it into Custom Skills. See the following sections for details.

Integrate directly in conversation

You can directly provide API descriptions or API documentation links in the conversation, and MeDo will help you integrate the API.

Example:

Please generate a weather query application using the following API:

https://openweathermap.org/api/current?collection=current_forecast

Entering an external API request in chat MeDo integrating an external API Application generated with the external API

Generate a skill package through conversation or using the "Skill Creation & Editing" skill

Mention the "@Skill Creation & Editing" skill in the conversation and paste the API description or API documentation link. MeDo will then help convert the API into a skill package, which you can download and import into Custom Skills.

Please note that the API description you provide should be as complete as possible. Refer to the example below for the recommended structure and required information.

Example:

Please use @Skill Creation & Editing to create a .zip weather query skill package using the following API documentation.

Skill Name: Weather Query

Skill Description: Retrieve real-time weather information based on city names, including temperature, humidity, and weather conditions.

Request Method: GET

Full Request URL:
https://api.example.com/v1/weather?city=Beijing&unit=C

Request Header: Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.FAKE_PAYLOAD.SIGNATURE_FAKE

Request Parameters:
city: Required, city name, e.g. Beijing
unit: Optional, temperature unit, C or F, default C

Request Example (curl):
curl -X GET "https://api.example.com/v1/weather?city=Beijing&unit=C" -H "Authorization: Bearer YOUR_API_KEY"

Successful Response Example

{
  "city": "Beijing",
  "temperature": 18,
  "unit": "C",
  "condition": "Cloudy",
  "humidity": 62
}

Error Response Example

{
  "error": "invalid_city",
  "message": "City not found"
}

Error Codes

  • invalid_city: City does not exist (HTTP 404)
  • missing_city: Missing city parameter (HTTP 400)
  • invalid_unit: Invalid temperature unit (HTTP 400)
  • unauthorized: Authentication failed (HTTP 401)
  • rate_limited: Too many requests (HTTP 429)
  • server_error: Server error (HTTP 500)

Request to create an API Skill package MeDo generating the Skill package Generated Skill package files Downloading the generated Skill package

Import and create directly

If you already have a prepared skill package containing APIs, you can directly import it into Custom Skills. See the following sections for detailed instructions.

Create Custom Skills

Please navigate to:【My Skills > Create Skill】 Create Skill entry in My Skills

Upload Skills

Skill Upload Format Requirements

After entering the Skill Creation & Editing page, you can upload a .zip Skill Package or SKILL.md file by clicking or dragging the file into the upload area. Both the Skill Package and SKILL.md file must follow the standard SKILL format described below.

Upload ContentDescription
.zip Skill PackageWhen uploading a skill package, it is recommended to include the following files. SKILL.md is required.
SKILL.mdThe structure of the SKILL.md file is shown below. For more formatting requirements, refer to the precautions below.

Recommended .zip Skill Package structure:

  • SKILL.md (required, skill definition file)
  • Additional Resources (optional)
  • scripts/ (Scripts): executable code such as Python or Shell automation scripts
  • references/ (Reference Materials): product documentation, business rules, knowledge base content, etc.
  • assets/ (Assets): templates, icons, fonts, images, and other resource files
financial-analysis.zip
└── financial-analysis/
    ├── SKILL.md           # Required, skill definition file
    ├── scripts/           # Optional, scripts
    │   └── analyze.py
    ├── references/        # Optional, reference materials
    │   └── knowledge.md
    └── assets/            # Optional, assets
        └── icon.png

SKILL.md structure example:

---
name: skill-name
description: |
  Briefly describe the capability and applicable scenarios of this Skill.
  Use when: (1) Scenario One, (2) Scenario Two
---

## Purpose

Describe the core objective of this Skill.

## Instructions

Define the execution workflow and behavior rules of this Skill.

## Examples

Input: xxx

Output: xxx

## Guardrails

Define usage boundaries and limitations.

Complete SKILL.md example:

---
name: financial-analysis
description: |
  Analyze enterprise financial data and generate insights.
  Use when: (1) Financial report analysis, (2) Company comparison, (3) Risk identification
---

## Purpose

Help users analyze financial data, identify business trends, and detect potential risks.

## Instructions

1. Understand the user's input data or questions
2. Analyze key financial indicators
3. Generate structured conclusions

## Examples

Input: Financial reports from the past three years of a company

Output: Revenue trends, profit changes, and risk alerts

## Guardrails

- Do not fabricate data
- Ask follow-up questions when data is insufficient

Precautions

The following formatting requirements apply when uploading .zip Skill Packages and SKILL.md files to MeDo.

PrecautionDescriptionExample
SKILL.md File NameThe Skill description file must be named SKILL.md (case-sensitive).SKILL.md
FrontmatterThe SKILL.md file must begin with Frontmatter enclosed by ---.See the example below
name fieldRequired. Used as the unique Skill name. Only lowercase letters, numbers, and hyphens - are supported.financial-analysis
description fieldRequired. Describes the Skill capabilities and applicable scenarios. Both Chinese and English are supported.Analyze enterprise financial data and generate business insights.
File ContentThe content after Frontmatter must not be empty.## Instructions
Root Directory NameThe ZIP root directory name must exactly match the name field in SKILL.md. Only lowercase letters, numbers, and hyphens - are supported.Root directory name (Skill Package name): financial-analysis

Frontmatter example:

---
name: financial-analysis
description: |
  Analyze enterprise financial data and generate business insights.
  Use when: (1) Financial report analysis, (2) Company comparison
---

## Instructions

1. Analyze user input
2. Extract key indicators

......

After the upload is completed, MeDo will parse and configure the skill based on the content you provided. The process usually takes about one minute. Please do not leave the page during parsing. Parsing an uploaded Skill package

If parsing succeeds, the interface will display the skill configuration. See section 2 for details. If parsing fails, MeDo will stop parsing and explain the reason. Skill package parsing result

Edit Configuration

After successful parsing, the interface will display the skill configuration. Custom Skill configuration page

Basic Information

MeDo will automatically configure the skill icon, skill name, and skill description based on the uploaded skill package.

DimensionDescription
NameThe name of the skill. After configuration, this name will appear in Skills > My Skills, the skill selection list, and the application's used skills list
DescriptionThe description of the skill. After configuration, this description will appear in Skills > My Skills, the skill selection list, and the application's used skills list
IconThe icon of the skill. After configuration, this icon will appear in Skills > My Skills, the skill selection list, and the application's used skills list

Illustration: Custom Skill basic information

Environment Variables

If the skill contains environment variables, the Environment Variables module will appear. Environment variables are configuration values required for the skill to run, such as API Keys. After configuration, the skill will securely read these values during execution without exposing them externally.

ItemDescriptionIllustration
NameThe environment variable name used when invoking the Skill. MeDo generates this value automatically, and it cannot be changed.Environment variable name configuration
ValueThe value corresponding to the name. The Skill uses this value automatically when invoked. If left empty, you must configure the value manually when using the Skill in a project.Environment variable value configuration

Skill Definition

Skill Definition is the core basis for MeDo to integrate this skill into applications. It is automatically generated based on the uploaded skill package and cannot be manually modified.

After generation, you can verify whether the content meets expectations, including whether all required files are included and whether the file contents are accurate. For API-based skills, you should also verify whether all required endpoints, endpoint descriptions, and examples are complete.

If the generated result does not meet expectations, you can modify the corresponding skill files and re-upload them for parsing. Generated Skill Definition

Complete Creation

After all information has been configured, click Create to complete the custom skill creation process. Create custom Skill button Custom Skill creation completed

Use Custom Skills

Test Skills

After creation is complete, you can invoke the skill within an application for testing. You can use "@" to locate your custom skills and invoke them directly. Selecting a custom Skill with the at sign Invoking a custom Skill in chat

Test Whether the Custom Skill Can Be Invoked Correctly

After invoking the skill to generate applications or features, you can check whether the skill has been used in the Used Skills list from the left sidebar.

SituationDescriptionIllustration
UsedIf the Skill appears in the Used Skills list, proceed to functionality testing.Custom Skill shown in the Used Skills list
Not usedTry invoking the Skill again to regenerate the feature or application. If it still is not invoked, return to the Skill configuration page and check whether the endpoint names and descriptions in the Skill Definition match the intended usage. Update the descriptions if needed, then regenerate the Skill Definition.Custom Skill invocation troubleshooting

Test the Availability of Custom Skills

If the custom skill can be successfully invoked, the next step is to test whether the generated functionality works properly.

For example, if you created a custom fuel price query skill, you should test whether it can actually retrieve fuel prices correctly.

SituationDescriptionIllustration
Function works properlyYou have created a usable custom Skill that can be used across your applications.
Function does not work properlyConfirm that the credentials are correct, then try fixing the issue through conversation. If the issue persists, return to the Skill configuration page and verify that the API documentation includes endpoint definitions, paths and methods, request parameters and examples, response examples, error codes, and descriptions. Add any missing information and regenerate the Skill Definition.Custom Skill functionality troubleshooting

Official Usage

After the skill passes testing, it can be officially used across applications.

However, actual usage may still be affected by factors such as unclear requirement descriptions, which may prevent the generated functionality from reaching a highly usable state in a single attempt. Therefore, even after successful testing, some skill-related functionality may occasionally fail to work as expected. In such cases, you can simply fix the issue through conversation.

Manage Custom Skills

You can manage your created skills through:

Skills > My Skills > Target Skill Custom Skill management page

You can configure or delete custom skills here.

After deleting a Skill from Skills > My Skills, it can no longer be used to generate new applications or features. Applications that already use the Skill are not affected.

If you also want existing applications to stop using the skill, please remove the skill from the corresponding application. Once removed, the application will no longer use that skill. Custom Skill settings Delete custom Skill confirmation