Agent21
Agent21 是面向开发团队的本地 CLI:团队只维护 AGENTS.md、.agents/skills/
和可选 .mcp.json,Agent21 将它们安全同步到 Claude Code、Codex、Cursor、OpenCode 和 Pi。
Install and First Use
python -m pip install agent21
cd /path/to/your/project
agent21 init --agents claude,codex,cursor,opencode,pi --mode auto --yes
agent21 sync
agent21 doctor
init 只在当前项目创建权威配置,遇到未托管冲突会停止;sync --dry-run 可在写入前查看计划。
doctor 检查配置、manifest、生成物漂移、Skills、MCP、锁和中断事务。
管理项目级 Skill:
agent21 skill install path/to/my-skill
agent21 skill list
agent21 skill remove my-skill
本地 Skill 必须包含根 SKILL.md。Git 来源也支持显式 URL;Agent21 只复制内容,
不执行 Skill 代码、不保存 Git 凭证,也不修改用户全局 Agent 配置。
First Contributor Validation
首次贡献者可以在 15 分钟内完成标准验证准备:
-
安装 Git、uv 和 Python 3.11 或更高版本。
-
克隆仓库并进入项目根目录。
-
同步锁定依赖:
uv sync --locked --group dev
-
运行贡献者门禁:
uv run nox -s pr
-
只排查当前失败项;不要自动更新快照,也不要使用真实凭证。
pr 会话覆盖格式、lint、类型、单元、适配器、契约、集成、安全快速子集和覆盖率门槛。
文档专用变更在 CI 中会走轻量路径,但本地仍建议运行 uv run nox -s pr。
Targeted Checks
uv run pytest -m unit
uv run pytest -m "adapter or contract"
uv run pytest -m integration
uv run pytest -m safety
uv run pytest -m snapshot
uv run nox -s package
快照只在产品契约有意变化时本地更新:
uv run pytest -m snapshot --snapshot-update
git diff -- tests
uv run pytest -m snapshot
CI 中不得运行 --snapshot-update。
Release Validation
发布候选版本必须通过主分支门禁、三平台 release session、包构建、干净安装和公开 CLI 冒烟检查。 详细流程见 docs/release-validation.md。
Contributing and Security
- 贡献流程见 CONTRIBUTING.md。
- 安全报告流程见 SECURITY.md。
- 项目许可证见 LICENSE。
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file agent21-0.1.0.tar.gz.
File metadata
- Download URL: agent21-0.1.0.tar.gz
- Upload date:
- Size: 278.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cf274beec0d45fb3d2f69e5ff0d6493a877a56238bf5c8e913bcfc89b0b8c7b
|
|
| MD5 |
0578fa66aa32c7f5d14b332d4ede2bad
|
|
| BLAKE2b-256 |
c0bf9fe365a33e27e576bac7dd16ae53d1a1728a95e68c4984345942021d2230
|
Provenance
The following attestation bundles were made for agent21-0.1.0.tar.gz:
Publisher:
release.yml on jeweis/agent21
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agent21-0.1.0.tar.gz -
Subject digest:
6cf274beec0d45fb3d2f69e5ff0d6493a877a56238bf5c8e913bcfc89b0b8c7b - Sigstore transparency entry: 2392655260
- Sigstore integration time:
-
Permalink:
jeweis/agent21@bcd23c8a0d6f6907d4228044329ce6b3ec1ed4e1 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/jeweis
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@bcd23c8a0d6f6907d4228044329ce6b3ec1ed4e1 -
Trigger Event:
push
-
Statement type:
File details
Details for the file agent21-0.1.0-py3-none-any.whl.
File metadata
- Download URL: agent21-0.1.0-py3-none-any.whl
- Upload date:
- Size: 36.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14a724ad7430d1b00c63b33306887f8ac11f9cbbb4fa2537b7e0f9fcddfce192
|
|
| MD5 |
087de129c1ad4eb3d85aaf2538b89e0e
|
|
| BLAKE2b-256 |
4ddedb683572395fff38d50bd7fcbe5530e03f3272faf827b43097d6734ef549
|
Provenance
The following attestation bundles were made for agent21-0.1.0-py3-none-any.whl:
Publisher:
release.yml on jeweis/agent21
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
agent21-0.1.0-py3-none-any.whl -
Subject digest:
14a724ad7430d1b00c63b33306887f8ac11f9cbbb4fa2537b7e0f9fcddfce192 - Sigstore transparency entry: 2392655284
- Sigstore integration time:
-
Permalink:
jeweis/agent21@bcd23c8a0d6f6907d4228044329ce6b3ec1ed4e1 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/jeweis
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@bcd23c8a0d6f6907d4228044329ce6b3ec1ed4e1 -
Trigger Event:
push
-
Statement type: