Files
makelore/.opencode/skills/game-assets/SKILL.md
inman 80e8386fa6
Some checks failed
Electron E2E / Electron E2E (macos-latest) (push) Has been cancelled
Electron E2E / Electron E2E (ubuntu-latest) (push) Has been cancelled
Electron E2E / Electron E2E (windows-latest) (push) Has been cancelled
feat: update Makelore modules and conversations
2026-07-31 10:08:41 +08:00

86 lines
5.6 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.

---
name: game-assets
description: 在 NianCode 中通过 Meowa 的固定版 game-assets 适配器生成和整理像素素材、高清素材、角色、道具、背景、UI 图和可复用游戏资源。素材生成、下载、项目内落盘、授权记录和审核证据必须走这个 Skill。
---
# NianCode · Meowa game-assets
这是项目内固定的 Meowa `game-assets` Skill 适配版,版本 `2026.06.19.1`
上游参考:`https://github.com/Meowa-AI/meowa-skills/tree/main/skills/game-assets`
NianCode 会把 Meowa API Key 留在 Electron Main 的安全存储或启动环境变量中。你只能通过随 Skill 一起提供的 `meowart_api.py` 调用本地 Host API不能直接访问 Meowa API也不能读取、打印、复制或写入 API Key。
## 角色边界
在项目中手动配置并绑定本 Skill 的 Agent 负责素材生成;只有该 Agent 直接调用本 Skill。当前 Meowa 适配器只生成 2D 像素/高清光栅素材,不生成 3D 模型3D 模型应走项目、用户或许可证明确的外部来源,并记录在 `ASSET_PLAN.md`。负责策划的 Agent 提出视觉缺口和验收语境,负责开发的 Agent 只接入审核状态为 `approved` 的项目内素材,负责测试发布的 Agent 验证真实运行效果并回交问题;它们通过 `GDD.md``TECH_STACK.md``ASSET_PLAN.md``ART_GUIDE.md``TASKS.md``.niancode/asset-review.json` 协作,不重复发起生成。负责宣传的 Agent 不属于素材生成链路,只能引用已经确认、可追溯的成果。
这个 Skill 不授予任何 Agent 直接访问 Meowa 的权限。所有角色都必须遵守本地适配器、API Key 隔离、生成元数据、项目内预览和用户审核规则。
## 每次素材任务的第一步
先读取当前任务的动态指引网络不可用时CLI 会自动使用项目内固定指引:
```bash
MEOWA_GAME_ASSETS_CLI="${NIANCODE_GAME_ASSETS_CLI:-${OPENCODE_CONFIG_DIR}/skills/game-assets/meowart_api.py}"
if [ -z "${NIANCODE_PYTHON_PATH:-}" ]; then
echo "NianCode managed Python is unavailable; repair or reinstall NianCode." >&2
exit 1
fi
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" skill-doc --task "<这次素材需求>"
```
然后读取项目中的 `GDD.md``ASSET_PLAN.md``ART_GUIDE.md``TASKS.md``.niancode/asset-review.json`(如果存在)。先判断现有 Works Square、开源素材是否能满足需求只有在缺口明确时才生成。
## 生成前检查
```bash
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" config-status
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" template-info --kind pixel
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" template-info --kind hd
```
`template-info` 返回的模版名和字段是当前可用事实。不要凭记忆编造模版名或字段。没有配置 Meowa 时,明确写入 `ASSET_PLAN.md` 的阻塞项,不要求用户把 Key 发到聊天里。
`config-status` 用于确认 Main 是否已准备好 Meowa 凭据。未配置时停止生成,把阻塞原因写入 `ASSET_PLAN.md`,且不要要求用户在聊天中提供 Key。
## 生成命令
像素素材:
```bash
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" pixel-gen \
--template-name "<从 template-info 选择>" \
--requirement "<角色/道具/地形和透明背景要求>" \
--aspect-ratio 1:1 \
--output-dir assets/generated/meowa
```
高清素材:
```bash
"$NIANCODE_PYTHON_PATH" "$MEOWA_GAME_ASSETS_CLI" hd-gen \
--template-name "<从 template-info 选择>" \
--requirement "<素材要求>" \
--output-dir assets/generated/meowa
```
需要参考图时使用一个或多个 `--reference-file <项目相对路径>`。需要特定模型、分辨率、去背景模式或模版 JSON 时,先从动态指引和 `template-info` 确认,再传 `--model-name``--resolution``--remove-bg-mode``--template-config '<JSON>'`
CLI 会等待异步任务完成,把输出下载到明确的项目目录,并写入 `submit_response.json``final_response.json``generation.meta.json`。不要只把远程 URL 写进 `ASSET_PLAN.md`,也不要把未下载的输出提交审核。
## 项目资产与审核规则
- 默认输出放在 `assets/generated/meowa/<run>/`;每个候选必须有真实存在的 `localPath``previewPath``coverPath` 或非空 `manifestPaths`
- `generation.meta.json` 必须保留 provider、Skill 版本、模版、提示词、任务 ID、生成时间、条款链接和授权状态。
- Meowa 生成物不是 CC0。当前条款下商业使用取决于 Meowa 账户方案;免费方案按条款限制为非商业使用,付费方案也要在交付前复核当前条款。记录 `https://meowa.ai/tos`,不要把“可生成”写成“已获商业授权”。
- 用户没有 `approve` 前,只能写入候选和审核记录,不能当作正式开发素材接入。
- 用户 `discard``replace` 的候选不得再次提交候选、pending、discarded 和 replace-requested 不得交给游戏开发 Agent 当作已选素材。
- 像素素材预览和缩放使用 nearest-neighbor保持透明背景、画布尺寸、命名和导出格式与 `ART_GUIDE.md` 一致。
- 生成结果失败、超时、下载失败或授权无法确认时,写清楚 `BLOCKED`/`TODO` 和备用方案;不要编造成功结果。
## 禁止事项
- 不运行 `npx skills add`、远程 bootstrap、用户级外部 Skill 或未固定版本的 `game-assets`
- 不直接请求 `https://api.meowa.ai`,不把 API Key 放入命令行参数、提示词、项目文件、日志或聊天。
- 不把 Meowa 输出标成 CC0、OpenGameArt、Kenney 或 Works Square 素材。
- 不为了增加数量而重复生成同一缺口;先记录已有候选和生成理由。