SuperAPI AI 工具集

wbso

办公与效率

查看项目

更新于 10-16 04:36

技能介绍

wbso 是一个用于登记 WBSO 工时的对话式技能(Skill)。它面向开发者本人,目标是在每天结束前用尽可能短的对话把当天的 WBSO 工时记录到系统中。

一、用途 用户希望登记 WBSO 工时、询问 WBSO 工时登记,或表示「我要登记工时」时触发该技能。技能通过一段简短对话,让用户说明当天做了什么,判断是否属于 WBSO 范畴,并直接完成登记。

二、主要能力

  • 通过紧凑的逐步对话形成一条包含项目、阶段和工时的登记建议,用户可确认或修改。
  • 自动采集本地信号辅助判断:wbso context 会在服务端响应下方附加本地 XML 部分,包括今日 Git 提交(SHA、作者、时间、完整消息、文件 diffstat)、今日 Claude Code 会话中用户本人输入的提示、今日 Codex 会话中用户本人输入的提示。这些本地信号不会被上传,只有最终结论(项目 + 小时数 + 日期 + 可选证据)会发送到 API。
  • 服务端上下文(wbso context)返回带 XML 标签的 markdown,包含 status、project、submission_owners、alert 等标签,以及 instructions(WBSO 标准)、commit_score_prompt、alert_rules、projects、time_entries、commits、events、evidence 等字段。
  • 登记前会先检查 alert_rules,如触发则在建议中给出提示,例如周末工作、超过 8 小时等。
  • 若账号尚无任何项目(上下文中没有 project 块),会提示读取 RVO 确认 PDF 以导入既有申请。
  • 支持为同事登记(仅当用户明确要求时):Submission_admin 或 tech_contact 角色可为公司内任意同事登记;无角色的 S&O 员工只能为自己登记,传入不同 user 参数会得到 403。

三、使用方式 技能通过 wbso CLI 工作,随技能附带自包含的 scripts/wbso(源文件为 packages/wbso/bin/wbso)。调用顺序为:优先使用 $PATH 中的 wbso,否则使用 $CLAUDE_PLUGIN_ROOT/bin/wbso,再否则在若干技能目录中查找 scripts/wbso。CLI 自身会加载 ~/.config/wbso/.env.local 与 ~/.config/wbso/config(api-key + email)。

可用的子命令包括:

  • wbso signup --first-name X --last-name Y --email Z --company-name W
  • wbso login --api-key Y(email 从响应中获取)
  • wbso context [--date YYYY-MM-DD] [--user-email X]
  • wbso upload <bestand.pdf> [--timeout SECONDS] [--no-wait](读取既有 WBSO 申请 RVO-PDF,等待导入完成)
  • wbso upload-status --id N
  • wbso track-time --project SLUG --date YYYY-MM-DD --duration N [--user-email X]
  • wbso untrack-time --id N
  • wbso evidence --title X --description Y --date YYYY-MM-DD [--project SLUG] [--external-id ID] [--user-email X]
  • wbso untrack-evidence --id N
  • wbso suggest-project --description X
  • wbso feedback --message X --category bug|idea|question|compliment|complaint|other [--context JSON]

wbso evidence 按天幂等,指定 --project 时按天和项目幂等:未提供 --external-id 时会使用固定 id wbso-onderbouwing-<user>-<datum>(含 --project 时后接 -<slug>),因此同一天重新登记会更新既有证据而非产生重复。

流程上包括:Stap 0 通过 wbso context 检查登录状态(返回 <status>not_logged_in</status> 时进入 setup 流程,返回 <status>ok</status> 时直接进入上下文步骤);setup 流程中由技能给出欢迎语并询问是否已有账号,已有账号走 wbso-auth,新账号走 wbso-signup,完成后重新运行 wbso context。随后获取上下文、综合生成尚未登记的建议、展示建议并请求确认;确认通过后提交登记。确认环节以纯文本消息呈现建议,仅在两种明确选择场景(「已全部登记」路径、「无信号」路径)使用结构化选择列表。

四、适用场景 适用于需要在支持 Agent Skills 的客户端(如 Claude Code、Codex)中,以对话方式快速登记 WBSO 工时的开发者。技能对用户界面文本有明确约定:对用户可见的文本只使用项目标题,不出现 slug、ID 或 HTTP 状态码;工时估算只使用用户给出的工时参数或明确的日程块时长,不根据提交数量估算。

五、限制

  • 技能要求在支持 Agent Skills 的客户端中运行,并依赖 wbso CLI。
  • 工时登记需要账号已关联到 WBSO 申请;若上下文中没有项目,则无法登记工时,需要先导入 RVO 确认 PDF。
  • 上传仅允许申请管理员或技术联系人执行,被拒绝时应联系 submission_owners 中的同事。
  • 本资料未提供收费、价格、平台支持范围等其他信息,暂未提供。