ruflo 技能系统实践:agent-app-store 应用商店 Agent 技能与 Flow Nexus MCP 工具链解析
本文以 ruflo 仓库中 .agents/skills/agent-app-store/SKILL.md 为核心,完整拆解一个“应用商店管理 Agent 技能”的定义方式:YAML frontmatter 双元数据、Agent 职责边界、基于 mcp__flow-nexus__* 工具的市场运营工具箱、应用分类体系与质量标准。结合仓库内 flow-nexus-platform 技能 的完整工具面与 MCP 服务器接入代码,读者可以掌握如何为 AI 编程助手(Codex CLI / Claude Code)编写一个可被 $agent-app-store 直接调用的、面向应用市场(App Store)与模板部署的 Agent 技能。
1. agent-app-store 是什么:一个面向应用市场运营的 Agent 技能
agent-app-store 是 ruflo 仓库 .agents/skills/ 目录下的一个技能包。按照 .agents/README.md 的说明,.agents/ 目录存放的是 OpenAI Codex CLI 的 Agent 配置与技能定义,每个技能以 <skill-name>/SKILL.md 组织,可通过 $skill-name 语法调用;可选附带 scripts/ 脚本与 docs/ 文档。agent-app-store 技能的定位是:
Flow Nexus App Store Agent——应用市场与模板编排专家,负责应用发现、发布与部署,并维护健康的开发者生态。
1.1 SKILL.md 的双 frontmatter 结构
打开 SKILL.md 可以看到一个值得注意的结构细节:该文件包含两段 YAML frontmatter。外层 frontmatter 定义了技能在 .agents 体系中的注册名与调用方式:
---
name: agent-app-store
description: Agent skill for app-store - invoke with $agent-app-store
---
内层 frontmatter 则定义了这个技能加载进 Agent 后扮演的“人格”元数据:
---
name: flow-nexus-app-store
description: Application marketplace and template management specialist. Handles app publishing, discovery, deployment, and marketplace operations within Flow Nexus.
color: indigo
---
这种“外层注册信息 + 内层角色定义”的双层结构,意味着一个技能目录既承担了发现/调用入口($agent-app-store),又承担了指令注入后的角色设定(flow-nexus-app-store 专家人格)。同目录体系下还有 flow-nexus-platform、flow-nexus-neural、flow-nexus-swarm 等 Flow Nexus 相关技能,其中前两者在 v3/@claude-flow/codex 的技能模板清单 中被显式列出,说明这些技能名是 Codex 集成模板的固定组成部分。
1.2 Agent 的核心职责
SKILL.md 为这个市场运营 Agent 划定了六项核心职责(core responsibilities):
- 策展并管理 Flow Nexus 应用市场(Curate and manage the Flow Nexus application marketplace)
- 促成应用发布、版本管理与分发工作流(app publishing, versioning, and distribution)
- 以正确的配置管理方式部署模板与应用(Deploy templates and applications)
- 管理应用分析数据、评分与市场统计(analytics, ratings, and marketplace statistics)
- 支持开发者入驻与变现策略(developer onboarding and app monetization)
- 保障已发布应用的质量标准与安全合规(quality standards and security compliance)
这六项职责对应了技能正文中四组能力:内容策展、质量保证、开发者支持、用户体验、社区建设、收益优化。
2. 市场运营工具箱:四个核心 MCP 工具
SKILL.md 的实战核心是 "Your marketplace toolkit" 一节,给出了四组 mcp__flow-nexus__* MCP 工具的调用示例。这些工具由 flow-nexus MCP 服务器提供——从 mcp-generator.ts 可以看到,ruflo 的 CLI 初始化流程会为其生成形如 npx -y flow-nexus@latest mcp start 的 MCP 服务器条目,并通过 claude mcp add flow-nexus 命令注册到客户端。因此这套技能是纯提示词侧的编排定义:SKILL.md 负责告诉 Agent“何时、以什么参数调用哪些工具”,而工具的实际执行由 MCP 服务器完成。
2.1 app_search:浏览与检索应用
// Browse Apps
mcp__flow-nexus__app_search({
search: "authentication", // 关键词检索
category: "backend", // 按分类过滤
featured: true, // 只看精选应用
limit: 20 // 返回条数上限
})
这是市场发现(discovery)的入口工具,参数覆盖关键词、分类、精选过滤与分页四个维度,对应 SKILL.md 强调的“Smart Discovery:基于用户需求与历史做 AI 驱动的应用推荐”。
2.2 app_store_publish_app:发布应用
// Publish App
mcp__flow-nexus__app_store_publish_app({
name: "My Auth Service",
description: "JWT-based authentication microservice",
category: "backend",
version: "1.0.0",
source_code: sourceCode, // 应用源码
tags: ["auth", "jwt", "express"]
})
发布动作要求提供名称、描述、分类、语义化版本号、源码与标签。在 flow-nexus-platform 技能 的 "App Store & Deployment" 章节中,同一工具给出了更完整的调用形态,补充了 metadata 字段(author、license、repository、homepage、documentation)以及配套的 app_update 更新接口:
mcp__flow-nexus__app_store_publish_app({
name: "JWT Authentication Service",
description: "Production-ready JWT authentication microservice with refresh tokens",
category: "backend",
version: "1.0.0",
source_code: sourceCodeString,
tags: ["auth", "jwt", "express", "typescript", "security"],
metadata: {
author: "Your Name",
license: "MIT",
repository: "github.com/yourname/repo",
homepage: "https://yourapp.com",
documentation: "https://docs.yourapp.com"
}
})
// 版本更新
mcp__flow-nexus__app_update({
app_id: "app_id",
updates: {
version: "1.1.0",
description: "Added OAuth2 support",
tags: ["auth", "jwt", "oauth2", "express"],
source_code: updatedSourceCode
}
})
这解释了 SKILL.md 中 "Facilitate app publishing, versioning, and distribution workflows" 一项职责的落地方式:首发走 app_store_publish_app,后续迭代走 app_update,两者都强制语义化版本号。
2.3 template_deploy:模板一键部署
// Deploy Template
mcp__flow-nexus__template_deploy({
template_name: "express-api-starter",
deployment_name: "my-api",
variables: {
api_key: "key",
database_url: "postgres://..."
}
})
这是 SKILL.md 中 "One-Click Deployment" 能力的具体实现:给定模板名与部署名,再注入模板变量(API 密钥、数据库连接串等)即可完成部署。flow-nexus-platform 技能展示了同一工具在生产场景下的完整参数面——在 variables(模板占位符)之外还可以传 env_vars 直接设置运行环境变量:
mcp__flow-nexus__template_deploy({
template_name: "express-api-starter",
deployment_name: "my-production-api",
variables: {
api_key: "your_api_key",
database_url: "postgres://user:pass@host:5432/db",
redis_url: "redis://localhost:6379"
},
env_vars: {
NODE_ENV: "production",
PORT: "8080",
LOG_LEVEL: "info"
}
})
部署前还可先通过 template_list(支持 category、template_type、featured、limit 过滤)与 template_get(按 template_name 或 template_id 二选一)确认模板是否存在及其变量定义,形成“发现模板 → 查看详情 → 注入变量部署”的完整链路。
2.4 app_analytics:分析数据回看
// Analytics
mcp__flow-nexus__app_analytics({
app_id: "app_id",
timeframe: "30d"
})
SKILL.md 中仅给出 30d 一个取值,而 flow-nexus-platform 技能明确了 timeframe 的完整取值范围:24h、7d、30d、90d,分别对应一天、一周、一月、一季度的观测窗口。围绕分析能力,平台技能还补充了两个配套工具:app_installed(列出某用户已安装的应用,参数 user_id)与 market_data()(获取市场整体统计,无参数),共同支撑 SKILL.md 中“Manage app analytics, ratings, and marketplace statistics”的职责。
2.5 工具参数速查表
| 工具 | 关键参数 | 取值/说明 |
|---|---|---|
app_search |
search, category, featured, limit |
关键词 + 分类过滤 + 精选开关 + 条数上限 |
app_store_publish_app |
name, description, category, version, source_code, tags, metadata |
version 采用语义化版本;metadata 含作者、许可证、仓库、主页、文档地址 |
app_update |
app_id, updates{version, description, tags, source_code} |
应用迭代发布 |
template_deploy |
template_name, deployment_name, variables, env_vars |
variables 填模板占位符,env_vars 设运行环境变量 |
app_analytics |
app_id, timeframe |
timeframe ∈ {24h, 7d, 30d, 90d} |
app_installed |
user_id |
查看已安装应用 |
market_data |
无 | 市场整体统计 |
3. 应用分类体系与质量标准
SKILL.md 定义了该 Agent 负责管理的八个应用类别:
- Web APIs:RESTful API、微服务与后端框架
- Frontend:React、Vue、Angular 应用与组件库
- Full-Stack:前后端集成的完整应用
- CLI Tools:命令行工具与开发生产力工具
- Data Processing:ETL 管道、分析工具与数据转换
- ML Models:预训练模型、推理服务与 ML 工作流
- Blockchain:Web3 应用、智能合约与 DeFi 协议
- Mobile:React Native 应用与移动优先方案
在 flow-nexus-platform 技能中,这些分类给出了对应的机器可读 ID,用于 app_search / template_list 等工具的 category 参数:web-api、frontend、full-stack、cli-tools、data-processing、ml-models、blockchain、mobile。也就是说,SKILL.md 的展示型分类名与工具侧的 kebab-case 分类 ID 一一对应,这是编写调用参数时需要注意的映射关系。
3.1 发布质量门槛
SKILL.md 的 "Quality standards" 一节规定了上架应用的六道门槛,对应 Agent 执行 "Quality Assurance" 职责时的检查清单:
- 完整文档,含清晰的搭建与使用说明
- 所有已发布应用必须通过安全扫描与漏洞评估
- 性能基准测试与资源占用优化
- 版本管理与向后兼容性治理
- 用户评分与评论机制,形成质量反馈闭环
- 透明的收益分成与公平的变现政策
配套的 "Publishing Best Practices"(来自 flow-nexus-platform 技能的 App Store 章节)则从开发者侧给出八条可操作建议:包含完整 README 的文档、用法示例与样例配置、测试套件与 CI/CD 配置、语义化版本(MAJOR.MINOR.PATCH)、明确的许可证声明(MIT、Apache 等)、Docker/docker-compose 部署配置、跨版本升级指南,以及安全注意事项文档。
3.2 rUv 积分经济与收益分成
SKILL.md 末尾明确“Revenue Optimization: Support monetization strategies and rUv credit economics”。结合 flow-nexus-platform 技能可以还原其经济模型:
- 当他人部署你的模板时,创作者赚取 rUv 积分;模板可定价(0 表示免费,或收取积分作为高级模板)
- 使用与收益通过 analytics 追踪,积分可用于兑换 Flow Nexus 服务
- 平台技能给出的积分计价参考:Swarm 操作 1–10 credits/小时、沙箱执行 0.5–5 credits/小时、工作流执行 0.1–1 credit/次、API 调用 0.001–0.01 credits/请求等
需要注意的证据边界:上述积分价格与订阅档位(Free/Pro/Enterprise)均来自 flow-nexus-platform 技能文档的转述,属于技能文档声明的平台规则,而非本仓库代码可验证的数据;SKILL.md 本身只声明了“rUv credit economics”这一机制的存在。
4. 市场运营方法论与技能装配方式
4.1 六步市场管理方法
SKILL.md 的 "Your marketplace management approach" 给出了 Agent 执行市场管理时的固定工作流,这也是该技能的“行为规范”部分:
- Content Curation:评估并组织应用,使其获得最佳可发现性
- Quality Assurance:确保已发布应用满足安全与功能标准
- Developer Support:协助应用发布、优化与市场成功
- User Experience:让应用发现、部署与配置尽量顺畅
- Community Building:营造开发者与用户并存的活跃生态
- Revenue Optimization:支持变现策略与 rUv 积分经济
技能正文的收尾句给出了优先级约束:“管理应用商店时,始终以用户体验、开发者成功、安全合规与市场增长为先,同时保持高标准并在 Flow Nexus 生态内促进创新。”这是典型的 Agent 技能约束语,用于在多目标冲突时为 LLM 的决策排序。
4.2 技能如何进入运行时
从仓库结构看,这类技能的装配路径有两条可验证的证据:
- Codex CLI 侧:.agents/config.toml 通过
[[skills.config]]表声明启用的技能路径(如.agents/skills/swarm-orchestration、.agents/skills/security-audit),并配置了 MCP 服务器、审批策略(approval_policy)、沙箱模式(sandbox_mode)等运行时参数。按 README 的说明,该文件应放在项目级.agents/config.toml或用户级.codex/config.toml。 - Claude Code 侧:mcp-generator.ts 中的初始化逻辑会把 flow-nexus 注册为 MCP 服务器(
npx -y flow-nexus@latest mcp start),并生成claude mcp add flow-nexus ...的注册命令;而 v3/@claude-flow/codex 模板 则将flow-nexus-neural、flow-nexus-platform、flow-nexus-swarm列入了内置技能名清单。
因此,一个完整的技能链是:SKILL.md 定义角色与调用约定($agent-app-store)→ config.toml/模板清单决定技能是否被加载 → MCP 服务器(flow-nexus)提供 mcp__flow-nexus__* 工具的实际执行。SKILL.md 自身不携带任何工具实现,这正是此类“提示词技能”包轻量、可移植的原因。
5. 小结
- agent-app-store 技能 展示了 ruflo
.agents技能体系的典型形态:双层 frontmatter(调用入口 + 角色定义)、职责清单、MCP 工具示例、分类体系、质量门槛与优先级约束,构成一个自洽的“应用商店运营 Agent”提示词。 - 其工具箱(
app_search、app_store_publish_app、template_deploy、app_analytics)的参数细节可在 flow-nexus-platform 技能 中找到更完整的补充,包括timeframe取值、app_update迭代接口、template_deploy的env_vars参数与 rUv 收益分成模型。 - 技能的运行时装配可通过 .agents/config.toml 的
[[skills.config]]、.agents/README.md 的目录约定与 mcp-generator.ts 的 MCP 注册逻辑交叉验证:技能是提示词侧的编排层,工具执行由 flow-nexus MCP 服务器承担。
延伸阅读路径:技能目录总览见 .agents/skills/,Flow Nexus 平台全量工具面见 .agents/skills/flow-nexus-platform/SKILL.md,Codex 配置约定见 .agents/config.toml。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0622
Hy4-previewHy4 preview 是由腾讯混元团队研发的新一代混合专家(MoE)旗舰模型。模型总参数量 770B,每个 token 激活 49B,主干共包含78层,第一层采用标准 FFN,其余 77 层均为 MoE 结构,每层包含 256 个路由专家与 1 个共享专家,每个 token 激活 top-8 路由专家及共享专家。主干之外原生内置 1 层 MTP(总参数量 10B,激活 0.7B)以支持投机解码。Python00
GLM-5.3GLM-5.3 与 GLM-5.2 使用相同的基座模型——所有提升均来自后训练。与 GLM-5.2 相比,它在复杂编程和长程任务上的表现显著提升。Jinja00
GLM-5.3-FlashGLM-5.3-Flash (320B-A18B),是GLM-5系列的首个原生多模态模型。320B总参数,能力超过GLM-5.2Jinja00
Spark-X2.5-4BSpark-X2.5-4B 旨在让强大的 AI 更实用、更高效、更易获得。在广泛日常任务中表现强劲,涵盖对话、写作、翻译、推理、编码、工具调用以及智能体工作流,并在同等规模的开源模型中取得领先成绩。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00
Spark-X2.5-1.7BSpark-X2.5-1.7B 旨在让强大的 AI 更加实用、高效且易于获取。这些模型在广泛的日常任务中表现出色,涵盖对话、写作、翻译、推理、编程、工具调用和智能体工作流,并在同等规模的开源模型中取得领先结果。Spark-X2.5 将面向效率的架构与最高 1M tokens 的原生上下文窗口相结合,并支持 200 多种语言。Python00