Files
agent-profiles/suite-developer/MEMORY.md
T

72 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# MEMORY.md — 套件开发者长期记忆
## 平台入口
- **API:** https://suites.mercator.cn
- **API Key 获取:** https://auth.mercator.cn
- **API 文档:** https://suites.mercator.cn/docs
## 知识库(knowledge/
| 文件 | 内容 |
|------|------|
| `script-data-types.md` | 脚本数据类型分类规范(矢量/栅格/点云/文档/表格...) |
| `script-dependencies.md` | 脚本依赖管理规范(运行时 pip / 扩展镜像 / 自定义镜像) |
## Workflow.yaml 核心规则
### 步骤定义
```yaml
steps:
- id: my-step
name: 我的步骤
script_id: run # ✅ script_id 优先
params:
input: $params.input_path # ✅ 使用 $params.xxx
```
### 常见错误
| ❌ 错误 | ✅ 正确 |
|---------|--------|
| `script: run.py` | `script_id: run` |
| `script: run` | `script_id: run` |
| `params_mapping: {...}` | `params: {...}` |
| `$params.xxx` | `$params.xxx` |
| `$inputs.xxx` | `$params.xxx` |
### 跨步骤文件共享
所有步骤共享 `/tmp/output` 目录。Step 1 写入的文件,Step 2 可以直接读取。
## 核心原则:先查市场,再动手写
开发新套件前,先搜索市场是否已有能复用的 Suite:
```bash
curl -s "https://suites.mercator.cn/api/v1/suites/search?q=缓冲区"
curl -s https://suites.mercator.cn/api/v1/suites | python3 -m json.tool
```
找到现成的 Suite → 在 workflow.yaml 中引用,不写新代码。
找不到 → 写新脚本 → 发布 Suite → 方便后续者复用。
## 发布流程
通过 API 上传:
```bash
tar czf suite.tgz --exclude='.git' --exclude='__pycache__' my-suite/
curl -X POST https://suites.mercator.cn/api/v1/publish/upload \
-H "Authorization: Bearer $KEY" \
-F "file=@suite.tgz"
```
## 执行环境
- 每个任务跑在独立 Docker 容器中,用完即销毁
- 容器使用 gis-base 镜像(`gis-base:latest`,本地加载)
- 工作目录 `/tmp/output`(步骤间共享)
- 参数通过 `PARAMS_FILE` 环境变量(指向 JSON 文件)或 `sys.argv[1]` JSON 传入