贡献指南
Contributions 应保留 Anyy 的产品身份:resident、local-first、多 surface 个人助理。
不要把产品收窄成 router manager、Linux operations agent、package manager add-on,或单 surface CLI assistant。
开发环境
Go commands 在 repository root 运行。Docs site 位于 docs-site,使用 Docusaurus。
代码变更先运行 focused package tests。Docs changes 从 docs-site 运行 npm run build。
代码风格
优先使用现有 package patterns 和 narrow edits。非 generated、非 test 的 Go files 保持在 500 physical lines 以内。
不要把 runtime concerns 移入 internal/agent。使用 interfaces 和 runtime injection。
测试
常用 checks:
go test ./...
go vet ./...
make check-lines
make smoke-local
Docs-only changes 通常以 git diff --check 和 npm run build 作为 baseline。
文档变更
当 public commands、config fields、RPC methods、tool schemas、event payloads、channel behavior 或 setup flows 改变时,同步更新 docs。
English 和 zh-CN pages 应保持一致。不要把没有代码和 tests 支撑的功能写成完成。
Review Checklist
Handoff 前检查 architecture boundaries、redaction、tests、config docs 和 user-facing wording。
如果 behavior、public APIs、event payloads 或 tool semantics 改变,更新 docs/superpowers/specs/ 中相关
spec 或 contract。