2.8 KiB
2.8 KiB
MEMORY.md — 套件开发者长期记忆
平台入口
- 市场: https://suites.mercator.cn
- API Key 获取: https://auth.mercator.cn
- API 文档: https://suites.mercator.cn/docs
知识库(knowledge/)
| 文件 | 内容 |
|---|---|
data-execution-model.md |
数据执行模型(本地执行设计) |
Workflow.yaml 核心规则
完整结构
name: 套件名称
description: 功能描述
version: 1.0.0
author: 作者
slug: my-suite-en-name # 可选,英文包名。不传则自动转拼音
tags: [标签1]
category: 业务分类
params:
input_path:
type: string
required: true
desc: 输入文件路径
base_image: gis-base:latest
steps:
- id: step1
name: 步骤1
type: python
script_id: run
params:
input: $params.input_path
引用语法
| 语法 | 说明 | 示例 |
|---|---|---|
$params.xxx |
引用套件输入参数 | $params.input_path |
$steps.step_id.output_name |
引用前一步骤输出 | $steps.step1.result_path |
步骤依赖
steps:
- id: step1
type: python
script_id: analyze
- id: step2
type: python
script_id: report
depends_on: [step1] # step2 等 step1 完成后才执行
常见错误
| ❌ 错误 | ✅ 正确 |
|---|---|
script: run.py |
script_id: run |
params_mapping: {...} |
params: {...} |
$inputs.xxx |
$params.xxx |
跨步骤文件共享
所有步骤共享 /tmp/output 目录。Step 1 写入的文件,Step 2 可以直接读取。
核心原则:先查市场,再动手写
开发新套件前,先搜索市场是否已有能复用的套件:
curl -s "https://suites.mercator.cn/api/v1/suites/search?q=缓冲区"
curl -s https://suites.mercator.cn/api/v1/suites | python3 -m json.tool
找到现成的套件 → 直接使用,不写新代码。 找不到 → 写新脚本 → 发布套件 → 方便后续者复用。
发布流程
前置条件
- API Key(从 https://auth.mercator.cn 获取)
- Gitea Token(从 https://git.mercator.cn 用户设置中生成,需
write:packages权限)
文件上传发布
# 打包套件(不含 git 历史)
tar czf my-suite.tar.gz --exclude='.git' --exclude='__pycache__' my-suite/
# 发布
curl -X POST https://suites.mercator.cn/publish/upload \
-H "Authorization: Bearer $API_KEY" \
-F "file=@my-suite.tar.gz" \
-F "gitea_token=YOUR_GITEA_TOKEN"
Git 仓库发布
curl -X POST https://suites.mercator.cn/publish \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"repo_url": "https://github.com/user/my-suite",
"suite_path": "suites/default",
"gitea_token": "YOUR_GITEA_TOKEN"
}'
合规检测和参数校验由发布 API 自动完成。