SuperAPI AI 工具集

feature-release-rollout

部署与运维

查看项目

更新于 10-16 11:27

技能介绍

用途

本技能用于指导 OpenHands 生态系统中跨仓库的功能发布工作流。当某项功能在 SDK 中实现后,可能需要传播到多个仓库,该技能帮助分析、评估并规划完整的功能推广流程。

涉及的仓库

功能可能需要在以下仓库中传播:

  • SDK(OpenHands/software-agent-sdk)——核心功能实现
  • CLI(OpenHands/OpenHands-CLI)——终端界面支持
  • GUI(OpenHands/OpenHands 前端目录)——Web 界面支持
  • Docs(OpenHands/docs)——文档更新(sdk/ 文件夹)
  • Blog(OpenHands/growth-utils blog-post/)——营销与公告
  • Video——教程内容(使用 ElevenLabs + Remotion)

工作流

阶段 1:功能发现

首先识别要分析的功能。用户可能指定:发布标签(如 v1.9.0)、具体功能名称、PR 或提交引用、版本之间的比较。

对于发布标签:

# Clone SDK if not present
git clone https://github.com/OpenHands/software-agent-sdk.git

# View release notes
cd software-agent-sdk
git log --oneline v1.8.0..v1.9.0  # Changes between versions
git show v1.9.0 --stat             # What changed in this release

对于具体功能:在 SDK 代码库、示例和变更日志中搜索以了解功能范围。

阶段 2:仓库分析

克隆所有相关仓库以分析当前支持情况:

# Clone repositories (use GITHUB_TOKEN for authenticated access)
git clone https://github.com/OpenHands/software-agent-sdk.git
git clone https://github.com/OpenHands/OpenHands-CLI.git
git clone https://github.com/OpenHands/OpenHands.git        # Frontend in frontend/
git clone https://github.com/OpenHands/docs.git
git clone https://github.com/OpenHands/growth-utils.git

对每项功能检查支持状态:

  • CLI:检查 openhands_cli/,查找功能标志、命令、TUI 组件
  • GUI:检查 OpenHands/frontend/src/,查找 React 组件、API 集成
  • Docs:检查 docs/sdk/,查找指南页面、API 参考、示例
  • Blog:检查 growth-utils/blog-post/posts/,查找公告文章

阶段 3:评估功能重要性

并非所有功能都需要完整推广:

高影响(建议完整推广):新的面向用户的能力、破坏性变更或迁移、重大性能改进、新的集成或工具。

中影响(文档 + 选择性支持):新的 API 方法或参数、配置选项、开发者体验改进。

低影响(仅文档或跳过):内部重构、错误修复、次要增强。

以下情况跳过推广:仅内部变更、测试改进、构建/CI 变更、文档拼写错误。

阶段 4:创建提案

为用户生成结构化提案,包含功能摘要、当前支持状态表(SDK/CLI/GUI/Docs/Blog/Video 各自状态与说明)、推荐操作(各组件具体实现需求,博客与视频是否推荐及理由)、评估(总体优先级、工作量估算、依赖关系)。

阶段 5:用户确认

在继续之前等待用户明确批准。询问要实现哪些组件、优先级排序、对提案的任何修改。

阶段 6:实施

仅在用户确认后:

创建 GitHub Issue:

# Create issue on relevant repo
gh issue create --repo OpenHands/OpenHands-CLI \
  --title "Support [feature] in CLI" \
  --body "## Context\n[Feature description]\n\n## Implementation\n[Details]\n\n## Related\n- SDK: [link]\n- Docs: [link]"

实现顺序:CLI/GUI 支持(可并行)、文档(依赖第 1 步)、博客文章(依赖第 2 步)、视频(依赖第 3 步)。

各仓库特定规范

CLI(OpenHands/OpenHands-CLI):查看 AGENTS.md 获取开发指南;使用 uv 管理依赖;提交前运行 make lint 和 make test;TUI 组件位于 openhands_cli/tui/;UI 变更需快照测试。

GUI(OpenHands/OpenHands frontend):前端位于 frontend/ 目录;React/TypeScript 代码库;在 frontend/ 中运行 npm run lint:fix && npm run build;遵循 TanStack Query 数据获取模式;i18n 翻译位于 frontend/src/i18n/。

Docs(OpenHands/docs):SDK 文档位于 sdk/ 文件夹;使用 Mintlify(.mdx 文件);代码块可从 SDK 示例自动同步;运行 mint broken-links 验证;遵循 openhands/DOC_STYLE_GUIDE.md。

Blog(OpenHands/growth-utils):文章位于 blog-post/posts/YYYYMMDD-title.md;资源位于 blog-post/assets/YYYYMMDD-title/;frontmatter 格式如下:

---
title: "Post Title"
excerpt: "Brief description"
coverImage: "/assets/blog/YYYYMMDD-title/cover.png"
date: "YYYY-MM-DDTHH:MM:SS.000Z"
authors:
  - name: Author Name
    picture: "/assets/blog/authors/author.png"
ogImage:
  url: "/assets/blog/YYYYMMDD-title/cover.png"
---

功能分析示例

功能:Browser Session Recording(SDK v1.8.0)

  • SDK:✅ 已在 openhands.tools.browser 中实现
  • CLI:❌ 无回放/导出命令
  • GUI:❌ 无录制查看器组件
  • Docs:✅ 指南位于 sdk/guides/browser-session-recording.mdx
  • Blog:❌ 可为网页抓取用户重点介绍
  • Video:考虑 2 分钟演示

建议:中优先级。文档已完成,CLI/GUI 紧急度低(高级功能),博客文章可选。

快速命令

# Check SDK feature presence
grep -r "feature_name" software-agent-sdk/openhands/ --include="*.py"

# Check CLI support
grep -r "feature_name" OpenHands-CLI/openhands_cli/ --include="*.py"

# Check GUI support
grep -r "featureName" OpenHands/frontend/src/ --include="*.ts" --include="*.tsx"

# Check docs coverage
grep -r "feature" docs/sdk/ --include="*.mdx"

# Check blog mentions
grep -r "feature" growth-utils/blog-post/posts/ --include="*.md"

重要说明

始终在创建 Issue 或开始实施前获得用户确认。考虑功能成熟度——新功能在完整推广前可能发生变化。在 Issue 描述中交叉引用仓库之间的 PR。对于破坏性变更,协调所有组件的发布时间。

限制

本技能的收费方式、价格、平台适用范围等信息暂未提供。