Skip to content

Latest commit

 

History

History
67 lines (51 loc) · 3.12 KB

File metadata and controls

67 lines (51 loc) · 3.12 KB

AGENTS

仓库概述

cowork-cli 是一个最小 Rust CLI 项目,目标是提供 cowork 的冷启动命令闭环:self-updateclone 子命令组(version/init/update/metadata/preview/contribute/resource)。

目录规范

  • src/bin/: CLI 入口(参数与子命令分发)。
  • src/commands/: 命令实现。
  • src/config.rs: COWORK_* 环境变量与默认值。
  • bootstrap.sh: 团队冷启动入口检查脚本。
  • tests/: 命令级 smoke tests。
  • .github/workflows/: CI 与 release 工作流。
  • install.sh: 发布资产安装脚本。

Meta 索引

  • meta/docker/Dockerfile: 冷启动验证基础镜像定义。
  • docker-compose.yml: Docker 冷启动任务入口。
  • meta/docker/run-coldstart-hello.sh: 最小 cold-start hello 验证脚本。
  • meta/docker/run-coldstart-local.sh: 本地私有 auth 注入验证脚本。
  • meta/docker/TASK_V1.md: 首轮 agent 任务描述。
  • meta/docker/FRICTION_V1.md: 冷启动摩擦记录。
  • meta/docker/RESULT_V1.md: 首轮任务结果记录。
  • meta/subagent/questions.md: 问题库索引与新增模板。
  • meta/subagent/AGENTS_SMOKE_V1.md: AGENTS 引导冷启动冒烟方案。
  • meta/subagent/AGENTS_SMOKE_RESULT.md: AGENTS 引导冒烟结果记录。
  • meta/subagent/validation.md: 产品视角冷启动验证流程与记录模板。
  • meta/subagent/acceptance.md: 验收标准与通过判定模板。
  • meta/subagent/evaluation.md: 评估指标与自检闭环。

冷启动验证硬约束

  • Docker 冷启动验证禁止挂载本地目录(不使用 -v / bind mount)。
  • 必要配置与资源文件通过 Dockerfile COPY 进入容器。
  • SQLite 等状态数据必须与宿主机隔离,避免污染本地环境。

Docker 验证策略

  • Docker 验证资产统一维护在 cowork-cli,目标知识仓库仅作为被验证对象。
  • 容器只注入最小上下文:目标 repo URL、cowork 安装入口、任务描述,以及必要私有认证/模型配置。
  • 优先验证 agent 是否能零摩擦进入 cowork 体系,再观察真实卡点,不提前为向下兼容做妥协。
  • 细节模板、任务脚本、摩擦记录统一索引到 meta/docker/

常用命令

  • cargo test
  • cargo run -- --help
  • cargo run -- clone --help
  • cargo run -- clone metadata
  • cargo run -- clone preview
  • bash bootstrap.sh

发布约定

  • 正式发布 tag:cowork-v<version>
  • Beta 发布 tag:cowork-v<version>-beta
  • 发布前必须补对应 changelog:docs/changelog/<tag>.md

常见问题

  • clone init 失败:检查 COWORK_CLONE_REPO_URL 是否已设置。
  • clone update/metadata 失败:检查目标路径 COWORK_HOME/clones/COWORK_CLONE_REPO_ALIAS 是否存在。
  • clone version 远端获取失败:检查 COWORK_CLONE_PACKAGE_URL 是否可访问;该命令在远端不可达时会失败退出。
  • clone preview/contribute/resource 都只有文本建议:这些命令是 guide-only,只打印建议与关键元信息,不会自动执行。
  • self-update 失败:检查 install.sh 地址可访问,以及当前平台是否有对应 release 资产。