开发者指南

从零开始,创建并发布你的第一个 Agent 技能

🚀 快速开始

只需 5 分钟,完成你的第一个 Skill 开发

1

阅读元数据格式

了解 Skill 的基本结构和必填字段

2

创建 Skill 文件

使用 .skill 格式或 JSON 元数据

3

提交审核

通过开发者控制台提交你的作品

📑 目录

1. Skill 元数据格式

基本结构

{
  "id": "weather-query",           // 唯一标识符 (kebab-case)
  "name": "天气查询",               // 显示名称
  "description": "查询全球天气",    // 简短描述 (≤100 字)
  "author": "高月月",               // 作者/开发者
  "version": "1.0.0",              // 语义化版本号
  "price": {
    "type": "free",                // "free" | "one-time" | "subscription"
    "amount": 0,                   // 价格(分)
    "currency": "CNY",             // 货币
    "cycle": "monthly"             // 订阅周期(仅 subscription 需要)
  },
  "tags": ["天气", "查询", "生活"], // 标签列表
  "category": "生活",              // 主分类
  "requirements": {
    "token": false,                // 是否需要 Token 授权
    "api_key": "wttr.in"           // 第三方 API Key(可选)
  },
  "install": {
    "cli": "jncs",                 // CLI 名称
    "command": "curl ...",         // CLI 安装命令
    "installSkill": "jncs install weather-query",
    "config": "无需配置"
  },
  "features": ["功能 1", "功能 2"],  // 功能特性列表
  "icon": "🌤️"                     // 图标(emoji 或 URL)
}

💡 提示: 完整的类型定义请参考 TypeScript 类型定义

2. 项目结构

推荐的目录结构

my-skill/
├── src/
│   ├── index.ts          # 主入口文件
│   ├── utils.ts          # 工具函数
│   └── types.ts          # 类型定义
├── tests/
│   └── index.test.ts     # 测试文件
├── package.json          # 依赖配置
├── tsconfig.json         # TypeScript 配置
├── README.md             # 使用说明
└── skill.json            # Skill 元数据

3. 开发流程

3.1 环境准备

  • 安装 Node.js 18+ 和 npm
  • 安装 jncs CLI:curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash
  • 初始化项目:jncs create my-skill

3.2 编写代码

// src/index.ts
export async function queryWeather(city: string) {
  const response = await fetch(`https://wttr.in/${city}?format=j1`);
  const data = await response.json();
  
  return {
    city: data.nearest_area[0].areaName[0].value,
    temperature: data.current_condition[0].temp_C,
    condition: data.current_condition[0].weatherDesc[0].value,
    humidity: data.current_condition[0].humidity,
  };
}

3.3 本地测试

# 运行测试
npm test

# 本地调试
jncs dev

# 构建
npm run build

4. 定价策略

🆓

免费 (Free)

适合基础工具、引流产品

  • ✓ 快速获取用户
  • ✓ 建立口碑
  • ✓ 后续付费升级
💰

一次性付费

适合功能完整、独立使用的技能

  • ✓ 简单直接
  • ✓ 永久授权
  • ✓ 推荐价格:¥9.9-49.9
🔄

订阅制

适合持续更新、需要 API 成本的技能

  • ✓ 持续收入
  • ✓ 月付/年付
  • ✓ 推荐价格:¥5.9-29.9/月

⚠️ 注意: 平台抽成 10%,开发者获得 90% 收入。支付手续费由平台承担。

5. 提交审核

审核清单

  • 元数据完整

    所有必填字段都已填写,描述清晰准确

  • 功能正常

    技能可以正常使用,无严重 bug

  • 安全性

    不包含恶意代码,不窃取用户数据

  • 文档完善

    提供清晰的使用说明和配置指南

审核时间:1-3 个工作日

审核结果将通过邮件通知,未通过会提供修改建议

6. 最佳实践

📝 命名规范

  • Skill ID 使用 kebab-case:weather-query
  • 名称简洁明了,不超过 20 字
  • 描述突出核心价值,100 字以内

🔒 安全建议

  • 不要硬编码 API Key,使用环境变量
  • 敏感操作需要用户确认
  • 遵循最小权限原则

📦 版本管理

  • 遵循语义化版本 (SemVer)
  • 重大变更升级主版本号
  • 更新日志清晰记录变更内容

💬 用户支持

  • 提供联系方式(邮箱/GitHub)
  • 及时响应用户反馈
  • 定期更新维护

7. 常见问题

Q: 如何获取收入?

收入会累积在你的开发者账户中,满 ¥100 可申请提现,支持支付宝/微信/银行转账。

Q: 可以更新已发布的技能吗?

可以,在开发者控制台提交新版本,审核通过后自动更新。已购买用户免费升级。

Q: 技能可以下架吗?

可以,下架后新用户无法购买,但已购买用户仍可继续使用。

Q: 如何联系平台支持?

发送邮件至 support@jinengchaoshi.com,我们会在 24 小时内回复。

准备好发布了吗?

创建开发者账号,开始你的变现之旅