跳转至

Agentic Knowledge Workspace Blueprint

这页解决什么问题

当前 repo 同时是 OrgReOrg / Harness 的研发仓库、dogfood 工作区和未来产品的最小样板。Blueprint 的作用是把“一个团队、部门、项目组或公司应该拥有怎样的 Harness 工作空间”变成机器可校验契约,避免 Framework、私域知识、发布页面和生成物继续混在一起。

当前分层

边界 当前路径 新团队初始化时怎么处理
Framework foundation packageable framework/, pyproject.toml, uv.lock 原样带走,作为通用产品底座
Workspace operations mixed AGENTS.md, CLAUDE.md, README.md, mkdocs.yml, .github/, scripts/, tests/ 作为模板带走,替换 repo、分支、发布和团队规则
Workspace instance workspace_private / mixed workspaces/variai/evidence/, knowledge/, registry/, site/, connectors/, outputs/ 创建新 workspaces/<workspace-id>/,只保留结构和 starter seed
Connector surface mixed framework/connectors/, workspaces/variai/connectors/wecom/ 通用 adapter contract 进 Framework,真实组织配置不打包
Generated artifacts generated site/ MkDocs 构建输出,不作为源码打包

工作空间目录

workspaces/<workspace-id>/
  evidence/
    inbox/
    raw/
    ingestion/
    registry/
  knowledge/
    wiki/
    projects/
    decisions/
    system/
  registry/
    workspace-topology.json
    project-status.json
    experiment-reports.json
  site/
    index.md
    project-progress.md
    knowledge/
  connectors/
    wecom/
  outputs/

framework/ 不保存当前项目私域事实;workspaces/<workspace-id>/ 才保存某个团队或部门的 Evidence、Knowledge、Registry、Site、Connector 边界和实验输出。

机器契约

核心文件:

  • workspace.blueprint.json:声明 workspace skeleton、初始化策略和排除规则。
  • packaging.manifest.json:声明每个目录是 packageable、mixed、workspace_private 还是 generated。
  • framework/workspace.py:用 WorkspacePaths 统一派生当前 workspace 路径,避免 framework 代码硬编码 OrgReOrg 私域路径。

当前校验命令:

python scripts/workspace_blueprint_lint.py
python scripts/workspace_blueprint_lint.py --dry-run
python scripts/workspace_blueprint_lint.py --scaffold-output /tmp/sample-workspace
python scripts/workspace_topology_lint.py
python scripts/package_boundary_lint.py

Scaffold 规则

新团队空间初始化时:

  1. 复制 framework/pyproject.tomluv.lock、blueprint 和 manifest。
  2. 通过模板渲染 AGENTS.mdCLAUDE.mdREADME.mdmkdocs.yml.github/ 和 starter Site。
  3. 创建空的 Evidence、Knowledge、Registry、Connectors 和 Outputs 目录。
  4. 生成最小 workspace-topology.jsonproject-status.jsonexperiment-reports.json 和 Semantic Review seed。
  5. 不复制当前 OrgReOrg 的 Evidence、Knowledge、Registry、真实讨论、真实 owner、实验语境或构建输出。

Starter Site 模板源目录是:

framework/templates/site/

MkDocs 源码目录由 mkdocs.yml 指向:

docs_dir: workspaces/variai/site
site_dir: site

Cloudflare Pages 只需要从 repo 根目录执行构建,输出目录仍是 site

对后续开发的约束

  • 通用模块、contract、eval、governance、workflow 和 adapter 抽象进入 framework/
  • 当前项目的原始资料、讨论、决策、状态、实验 registry 和发布页面进入 workspaces/variai/
  • 真实密钥、通讯录、聊天全文、客户材料和业务系统私有数据不能提交。
  • 生成页面不手改主体;先改 registry、eval、dashboard 或 loop 源数据,再重新生成。
  • 每次新增顶层目录、改变打包边界或新增 workspace 层,都要更新 blueprint、manifest 和相关 lint。

这套蓝图保证当前 repo 可以继续作为研用测一体的真实试验场,同时保留未来把 Framework 和 workspace 模板打包交付给其他组织的能力。