teamai-cli 0.21.0-beta.1 → 0.21.0-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -0
- package/README.md +37 -30
- package/README.zh-CN.md +37 -30
- package/dist/index.js +10328 -9586
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -22,6 +22,10 @@ All notable changes to this project will be documented in this file. See [standa
|
|
|
22
22
|
- `teamai skill` 或 `teamai skill list`:等价 `teamai list skills --source all`
|
|
23
23
|
- `teamai skill show <name>`:查看单个 skill 的来源标签、命名空间、贡献者、`tags.yaml` 中的 tags、已安装的 agent 列表,以及 frontmatter 中的描述(最多 160 字符)。不渲染完整 SKILL.md 正文
|
|
24
24
|
|
|
25
|
+
### 🐛 修复
|
|
26
|
+
|
|
27
|
+
- **项目级 source 配置持久化**(#335):`teamai pull` 自动上报 usage 时不再丢弃 `source add`/`remove` 尚未提交的 `teamai.yaml` 改动,后续 pull 可正常部署订阅 skills 并写入安装清单
|
|
28
|
+
|
|
25
29
|
## [0.14.2] (2026-04-16)
|
|
26
30
|
|
|
27
31
|
### 🐛 修复
|
package/README.md
CHANGED
|
@@ -11,14 +11,9 @@
|
|
|
11
11
|
[](https://www.npmjs.com/package/teamai-cli)
|
|
12
12
|
[](LICENSE)
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
[](https://discord.gg/DeHHxPnfZF)
|
|
14
|
+
Make every AI coding agent work by the best harness.
|
|
16
15
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
Git-native management of skills, rules, and docs across Claude Code / Codex / CodeBuddy / WorkBuddy / OpenCode and more.
|
|
20
|
-
|
|
21
|
-
For you or your whole team.
|
|
16
|
+
Git-native management of skills, rules, MCP, env vars, knowledge base, and more — across Claude Code / Codex / CodeBuddy / WorkBuddy / OpenCode and more.
|
|
22
17
|
|
|
23
18
|
## Quick Start
|
|
24
19
|
|
|
@@ -30,35 +25,25 @@ npm install -g teamai-cli
|
|
|
30
25
|
|
|
31
26
|
### Team admin / solo user
|
|
32
27
|
|
|
33
|
-
Create a shared-experience repo on your git host (GitHub, GitLab
|
|
34
|
-
|
|
35
|
-
> Self-hosted GitLab/Gitea-style services use your HTTPS credential helper or SSH key. Create the repository first; merge requests are created manually for now. See [Git Provider docs](docs/providers.md).
|
|
28
|
+
Create a shared-experience repo on your git host (GitHub, GitLab, CNB, TGit, or a private Git service), **grant write access to team members**, then run `teamai init https://github.com/yourorg/yourrepo`.
|
|
36
29
|
|
|
37
30
|
> **No team repo yet?** Start from a template pre-loaded with production-ready skills, rules, and review agents. Browse the [teamai-hub](https://github.com/teamai-hub) org, click **Use this template**, then `teamai init` against your new repo.
|
|
38
31
|
|
|
39
32
|
### Team members
|
|
40
33
|
|
|
41
34
|
```bash
|
|
35
|
+
# Choose one, depending on where you want resources installed
|
|
36
|
+
|
|
42
37
|
# Project-scope init (default, resources installed under the project directory)
|
|
43
38
|
cd /path/to/my-project
|
|
44
39
|
teamai init https://github.com/yourorg/yourrepo
|
|
45
40
|
|
|
46
|
-
#
|
|
41
|
+
# Or, user-scope init (resources installed under ~/)
|
|
47
42
|
teamai init https://github.com/yourorg/yourrepo --scope user
|
|
48
43
|
```
|
|
49
44
|
|
|
50
45
|
Once initialized, every AI session automatically pulls the latest skills / rules and other Harness updates published by admins — no manual sync needed.
|
|
51
46
|
|
|
52
|
-
### Single-repo mode (the business repo *is* the team repo)
|
|
53
|
-
|
|
54
|
-
No separate team repo. Run `teamai init .` inside an existing project and its own git repo becomes the team repo:
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
cd /path/to/my-project
|
|
58
|
-
teamai init . # interactive: pick which AI tools to set up
|
|
59
|
-
teamai init . --agent claude,codex # non-interactive: Claude Code + Codex
|
|
60
|
-
```
|
|
61
|
-
|
|
62
47
|
> **Full usage guide:** [docs/usage-guide.md](docs/usage-guide.md) ([中文版](docs/usage-guide.zh-CN.md)) — covers everything from team creation to day-to-day use.
|
|
63
48
|
|
|
64
49
|
## Overview
|
|
@@ -69,7 +54,7 @@ teamai init . --agent claude,codex # non-interactive: Claude Code + Codex
|
|
|
69
54
|
<th rowspan="2">Agent</th>
|
|
70
55
|
<th colspan="7">Harness</th>
|
|
71
56
|
<th colspan="3">Knowledge Base</th>
|
|
72
|
-
<th colspan="3">
|
|
57
|
+
<th colspan="3">Analytics</th>
|
|
73
58
|
</tr>
|
|
74
59
|
<tr>
|
|
75
60
|
<th>skills</th><th>rules</th><th>docs</th><th>env</th><th>agents</th><th>hooks</th><th>mcp</th>
|
|
@@ -82,7 +67,7 @@ teamai init . --agent claude,codex # non-interactive: Claude Code + Codex
|
|
|
82
67
|
<tr><td>Codex</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
83
68
|
<tr><td>Cursor</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
84
69
|
<tr><td>CodeBuddy</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
85
|
-
<tr><td>OpenCode</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center"
|
|
70
|
+
<tr><td>OpenCode</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
86
71
|
<tr><td>WorkBuddy</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
87
72
|
<tr><td>OpenClaw</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
88
73
|
<tr><td>Hermes</td><td align="center">✓</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
@@ -90,11 +75,31 @@ teamai init . --agent claude,codex # non-interactive: Claude Code + Codex
|
|
|
90
75
|
</tbody>
|
|
91
76
|
</table>
|
|
92
77
|
|
|
93
|
-
**Git providers** — GitHub · GitLab
|
|
78
|
+
**Git providers** — GitHub · GitLab · CNB · TGit · private Git service.
|
|
79
|
+
|
|
80
|
+
### Distribution Controls
|
|
81
|
+
|
|
82
|
+
Team-wide settings an admin configures once and delivers to every member on `teamai pull`:
|
|
83
|
+
|
|
84
|
+
| Capability | Command | What it does |
|
|
85
|
+
|------------|---------|--------------|
|
|
86
|
+
| **Roles** | `teamai roles` | Define role → namespace mappings so each member syncs only the skills for their role. |
|
|
87
|
+
| **Tags** | `teamai tags` | Tag skills / rules so members subscribe to just the tags they need. |
|
|
88
|
+
| **Sources** | `teamai source` | Subscribe to additional skill repos — other teams' public repos, or shared/public repos within your own org; subscribed skills sync automatically on pull. |
|
|
89
|
+
|
|
90
|
+
### Analytics
|
|
91
|
+
|
|
92
|
+
Insight into how the team actually uses its AI tools:
|
|
93
|
+
|
|
94
|
+
| Capability | Command | What it shows |
|
|
95
|
+
|------------|---------|---------------|
|
|
96
|
+
| **Usage** | `teamai digest` | Weekly team digest — token usage, conversation volume, and intervention rate. |
|
|
97
|
+
| **Sessions** | `teamai session save` | Privacy-scrubbed per-session summaries (tool sequence, prompt turns, interventions) that feed the digest's Session Highlights. |
|
|
98
|
+
| **Dashboard** | `teamai dashboard` | Web dashboard showing team members' live coding-session status, intervention count, and token usage. |
|
|
94
99
|
|
|
95
100
|
## Harness Management & Distribution
|
|
96
101
|
|
|
97
|
-
TeamAI keeps skills, rules, docs, and hooks in a shared git repo and distributes them to every member's local AI tools through a "push → review & merge → pull" flow — with support for subscribing to other teams' Harness.
|
|
102
|
+
TeamAI keeps skills, rules, docs, and hooks in a shared git repo and distributes them to every member's local AI tools through a "push → review & merge → pull" flow — with support for subscribing to other teams' or shared repos' Harness.
|
|
98
103
|
|
|
99
104
|
### How It Works
|
|
100
105
|
|
|
@@ -104,7 +109,7 @@ teamai push → create branch + MR → reviewer approves + merges
|
|
|
104
109
|
SessionStart hook → teamai pull → synced to local AI tools
|
|
105
110
|
```
|
|
106
111
|
|
|
107
|
-
Members push changes via `teamai push`, which opens a Merge Request for review. Once merged, `teamai pull` (triggered automatically on session start via the SessionStart hook) syncs the latest resources locally. Skills sync to `~/.claude/skills/`, `~/.codex/skills/`, `~/.cursor/skills/`, `~/.codebuddy/skills/`, etc.
|
|
112
|
+
Members push changes via `teamai push`, which opens a Merge Request for review. Once merged, `teamai pull` (triggered automatically on session start via the SessionStart hook) syncs the latest resources locally. Skills sync to `~/.claude/skills/`, `~/.codex/skills/`, `~/.cursor/skills/`, `~/.codebuddy/skills/`, etc. In a **project-scope** install, SessionStart first creates that tool's project root (e.g. `<project>/.claude`) if it is missing, then pulls into it — a bare `teamai pull` still will not invent agent directories.
|
|
108
113
|
|
|
109
114
|
### Team Hooks
|
|
110
115
|
|
|
@@ -143,9 +148,9 @@ servers:
|
|
|
143
148
|
teamai mcp list | inject | remove
|
|
144
149
|
```
|
|
145
150
|
|
|
146
|
-
###
|
|
151
|
+
### Skill Subscription Sources
|
|
147
152
|
|
|
148
|
-
Subscribe to other teams' public
|
|
153
|
+
Subscribe to additional skill repos — other teams' public repos, or shared/public repos within your own org:
|
|
149
154
|
|
|
150
155
|
```bash
|
|
151
156
|
teamai source add https://github.com/other-team/teamai-public.git --name other-team
|
|
@@ -154,7 +159,8 @@ teamai source browse other-team # browse available skills
|
|
|
154
159
|
teamai source remove other-team
|
|
155
160
|
```
|
|
156
161
|
|
|
157
|
-
|
|
162
|
+
The add/remove change takes effect locally right away, and subscribed skills sync on the next
|
|
163
|
+
`teamai pull`. Run `teamai push` when you want to share the `teamai.yaml` change with teammates.
|
|
158
164
|
|
|
159
165
|
## Knowledge Base
|
|
160
166
|
|
|
@@ -225,8 +231,9 @@ When a recall hit comes from a codebase page, the result includes a `Sources:` l
|
|
|
225
231
|
| `teamai ci extract-mr --url <url>` | CI: extract knowledge from MR, post comments, write after merge |
|
|
226
232
|
| `teamai members` | List team members |
|
|
227
233
|
| `teamai roles` | Manage team roles and namespaces |
|
|
234
|
+
| `teamai tags` | Manage tag-based skill/rule filtering |
|
|
228
235
|
| `teamai skill exclude add/remove/list` | Manage skills excluded from local sync ([usage guide](docs/usage-guide.md#excluding-skills-you-dont-need)) |
|
|
229
|
-
| `teamai source` | Manage
|
|
236
|
+
| `teamai source` | Manage skill subscription sources (other teams or your org's shared repos) |
|
|
230
237
|
| `teamai remove <type> <name>` | Remove a resource and open MR |
|
|
231
238
|
| `teamai session save` | Record a privacy-scrubbed session summary to a monthly log (`--push` feeds `digest`) |
|
|
232
239
|
| `teamai digest` | Generate weekly team usage digest |
|
package/README.zh-CN.md
CHANGED
|
@@ -11,14 +11,9 @@
|
|
|
11
11
|
[](https://www.npmjs.com/package/teamai-cli)
|
|
12
12
|
[](LICENSE)
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
[](https://discord.gg/DeHHxPnfZF)
|
|
14
|
+
面向 AI 智能体的团队 Harness 管理和分发工具。
|
|
16
15
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
通过 Git 统一管理 skills、rules、docs,驾驭 Claude Code / Codex / CodeBuddy / WorkBuddy / OpenCode 等多种 AI 工具。
|
|
20
|
-
|
|
21
|
-
一个人也能用,团队用更强。
|
|
16
|
+
通过 Git 统一管理 skills、rules、mcp、环境变量、知识库等 Harness,驾驭 Claude Code / Codex / CodeBuddy / WorkBuddy / OpenCode 等多种 AI 工具。
|
|
22
17
|
|
|
23
18
|
## 快速开始
|
|
24
19
|
|
|
@@ -30,35 +25,25 @@ npm install -g teamai-cli
|
|
|
30
25
|
|
|
31
26
|
### 团队管理员 / 个人使用者
|
|
32
27
|
|
|
33
|
-
在 Git 托管平台(GitHub、GitLab
|
|
34
|
-
|
|
35
|
-
> 自建 GitLab/Gitea 等服务支持 HTTPS Credential Helper 或 SSH Key;需预先创建仓库,MR 暂时手动创建。详见 [Git Provider 说明](docs/providers.md)。
|
|
28
|
+
在 Git 托管平台(GitHub、GitLab、CNB、TGit,或私有 Git 服务)创建共享经验仓库,**授予团队成员写权限**,然后运行 `teamai init https://github.com/yourorg/yourrepo`。
|
|
36
29
|
|
|
37
30
|
> **还没有团队仓库?** 可以从内置了成套 skills、rules、review agents 的模板起步。浏览 [teamai-hub](https://github.com/teamai-hub) org,点 **Use this template** 生成自己的仓库,再对它执行 `teamai init`。
|
|
38
31
|
|
|
39
32
|
### 团队成员
|
|
40
33
|
|
|
41
34
|
```bash
|
|
35
|
+
# 二选一:按你想要的安装范围选择其中一条
|
|
36
|
+
|
|
42
37
|
# 项目级初始化(默认,资源安装到项目目录下)
|
|
43
38
|
cd /path/to/my-project
|
|
44
39
|
teamai init https://github.com/yourorg/yourrepo
|
|
45
40
|
|
|
46
|
-
#
|
|
41
|
+
# 或者,用户级初始化(资源安装到 ~/ 下)
|
|
47
42
|
teamai init https://github.com/yourorg/yourrepo --scope user
|
|
48
43
|
```
|
|
49
44
|
|
|
50
45
|
初始化完成后,每次开启 AI 会话时都会自动拉取管理员发布的 skills / rules 等 Harness 更新,无需手动同步。
|
|
51
46
|
|
|
52
|
-
### 单仓模式(业务仓即团队仓)
|
|
53
|
-
|
|
54
|
-
无需单独的团队仓库。在已有项目里运行 `teamai init .`,让它自己的 git 仓库直接充当团队仓:
|
|
55
|
-
|
|
56
|
-
```bash
|
|
57
|
-
cd /path/to/my-project
|
|
58
|
-
teamai init . # 交互式:选择要启用哪些 AI 工具
|
|
59
|
-
teamai init . --agent claude,codex # 非交互:启用 Claude Code + Codex
|
|
60
|
-
```
|
|
61
|
-
|
|
62
47
|
> **完整使用指南**:[docs/usage-guide.zh-CN.md](docs/usage-guide.zh-CN.md)([English](docs/usage-guide.md))— 涵盖从团队创建到日常使用的全流程。
|
|
63
48
|
|
|
64
49
|
## 功能概览
|
|
@@ -69,7 +54,7 @@ teamai init . --agent claude,codex # 非交互:启用 Claude Code + Codex
|
|
|
69
54
|
<th rowspan="2">Agent</th>
|
|
70
55
|
<th colspan="7">Harness</th>
|
|
71
56
|
<th colspan="3">知识库</th>
|
|
72
|
-
<th colspan="3"
|
|
57
|
+
<th colspan="3">使用分析</th>
|
|
73
58
|
</tr>
|
|
74
59
|
<tr>
|
|
75
60
|
<th>skills</th><th>rules</th><th>docs</th><th>env</th><th>agents</th><th>hooks</th><th>mcp</th>
|
|
@@ -82,7 +67,7 @@ teamai init . --agent claude,codex # 非交互:启用 Claude Code + Codex
|
|
|
82
67
|
<tr><td>Codex</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
83
68
|
<tr><td>Cursor</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
84
69
|
<tr><td>CodeBuddy</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
85
|
-
<tr><td>OpenCode</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center"
|
|
70
|
+
<tr><td>OpenCode</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
86
71
|
<tr><td>WorkBuddy</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td></tr>
|
|
87
72
|
<tr><td>OpenClaw</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
88
73
|
<tr><td>Hermes</td><td align="center">✓</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td><td align="center">✓</td><td align="center">✓</td><td align="center">✓</td><td align="center">—</td><td align="center">—</td><td align="center">—</td></tr>
|
|
@@ -90,11 +75,31 @@ teamai init . --agent claude,codex # 非交互:启用 Claude Code + Codex
|
|
|
90
75
|
</tbody>
|
|
91
76
|
</table>
|
|
92
77
|
|
|
93
|
-
**Git 托管平台** —— GitHub · GitLab
|
|
78
|
+
**Git 托管平台** —— GitHub · GitLab · CNB · TGit · 私有 Git 服务。
|
|
79
|
+
|
|
80
|
+
### 分发策略
|
|
81
|
+
|
|
82
|
+
管理员一次配置、随 `teamai pull` 分发给每位成员的团队级设置:
|
|
83
|
+
|
|
84
|
+
| 能力 | 命令 | 作用 |
|
|
85
|
+
|------|------|------|
|
|
86
|
+
| **角色(Roles)** | `teamai roles` | 定义「角色 → 命名空间」映射,让每位成员只同步与自身角色匹配的 skills。 |
|
|
87
|
+
| **标签(Tags)** | `teamai tags` | 给 skills / rules 打标签,成员只订阅自己需要的标签。 |
|
|
88
|
+
| **订阅源(Sources)** | `teamai source` | 订阅额外的 skill 仓库——其他团队的公开仓库,或本团队内的公共/共享仓库;已订阅的 skills 会在 pull 时自动同步。 |
|
|
89
|
+
|
|
90
|
+
### 使用分析
|
|
91
|
+
|
|
92
|
+
洞察团队实际如何使用 AI 工具:
|
|
93
|
+
|
|
94
|
+
| 能力 | 命令 | 呈现内容 |
|
|
95
|
+
|------|------|----------|
|
|
96
|
+
| **用量(Usage)** | `teamai digest` | 团队周报——token 用量、会话量、干预率。 |
|
|
97
|
+
| **会话(Sessions)** | `teamai session save` | 脱敏的单会话摘要(工具序列、对话轮次、干预次数),喂给周报的 Session Highlights。 |
|
|
98
|
+
| **看板(Dashboard)** | `teamai dashboard` | Web 看板,实时展示成员的编码会话状态、干预次数和 token 用量。 |
|
|
94
99
|
|
|
95
100
|
## Harness 管理和分发
|
|
96
101
|
|
|
97
|
-
TeamAI 把 skills、rules、docs、hooks 统一存放在共享 Git 仓库,通过「push → 评审合并 → pull」的流程分发到每位成员的本地 AI
|
|
102
|
+
TeamAI 把 skills、rules、docs、hooks 统一存放在共享 Git 仓库,通过「push → 评审合并 → pull」的流程分发到每位成员的本地 AI 工具,并支持订阅其他团队或公共仓库的 Harness。
|
|
98
103
|
|
|
99
104
|
### 工作原理
|
|
100
105
|
|
|
@@ -104,7 +109,7 @@ teamai push → 创建分支 + MR → reviewer 审批合并
|
|
|
104
109
|
SessionStart hook → teamai pull → 同步到本地 AI 工具
|
|
105
110
|
```
|
|
106
111
|
|
|
107
|
-
成员通过 `teamai push` 提交变更并创建合并请求供审核。合并后,`teamai pull`(由 SessionStart hook 在会话启动时自动触发)将最新资源同步到本地。Skills 会同步到 `~/.claude/skills/`、`~/.codex/skills/`、`~/.cursor/skills/`、`~/.codebuddy/skills/`
|
|
112
|
+
成员通过 `teamai push` 提交变更并创建合并请求供审核。合并后,`teamai pull`(由 SessionStart hook 在会话启动时自动触发)将最新资源同步到本地。Skills 会同步到 `~/.claude/skills/`、`~/.codex/skills/`、`~/.cursor/skills/`、`~/.codebuddy/skills/` 等目录。在 **project scope** 安装下,SessionStart 会先为当前工具创建项目根目录(例如 `<project>/.claude`),再 pull 写入;单独执行 `teamai pull` 仍不会凭空创建 Agent 目录。
|
|
108
113
|
|
|
109
114
|
### 团队 Hooks
|
|
110
115
|
|
|
@@ -143,9 +148,9 @@ servers:
|
|
|
143
148
|
teamai mcp list | inject | remove
|
|
144
149
|
```
|
|
145
150
|
|
|
146
|
-
###
|
|
151
|
+
### Skill 订阅源
|
|
147
152
|
|
|
148
|
-
|
|
153
|
+
订阅额外的 skill 仓库——其他团队的公开仓库,或本团队内的公共/共享仓库:
|
|
149
154
|
|
|
150
155
|
```bash
|
|
151
156
|
teamai source add https://github.com/other-team/teamai-public.git --name other-team
|
|
@@ -154,7 +159,8 @@ teamai source browse other-team # 浏览可用 skills
|
|
|
154
159
|
teamai source remove other-team
|
|
155
160
|
```
|
|
156
161
|
|
|
157
|
-
|
|
162
|
+
添加/移除会立即在本机生效,订阅的 skills 会在下一次 `teamai pull` 时同步。需要将
|
|
163
|
+
`teamai.yaml` 的改动分享给团队成员时,再运行 `teamai push`。
|
|
158
164
|
|
|
159
165
|
## 知识库
|
|
160
166
|
|
|
@@ -225,8 +231,9 @@ teamai codebase --lint # 健康检查
|
|
|
225
231
|
| `teamai ci extract-mr --url <url>` | CI:从 MR 提取知识、发评论、合并后写入 |
|
|
226
232
|
| `teamai members` | 查看团队成员 |
|
|
227
233
|
| `teamai roles` | 管理团队角色和命名空间 |
|
|
234
|
+
| `teamai tags` | 管理基于标签的 skill/rule 过滤 |
|
|
228
235
|
| `teamai skill exclude add/remove/list` | 管理不参与本地同步的 skills([使用指南](docs/usage-guide.zh-CN.md#排除个人不需要的-skill)) |
|
|
229
|
-
| `teamai source` |
|
|
236
|
+
| `teamai source` | 管理 skill 订阅源(其他团队或本团队公共仓库) |
|
|
230
237
|
| `teamai remove <type> <name>` | 删除资源并创建 MR |
|
|
231
238
|
| `teamai session save` | 将脱敏后的 session 摘要记录到月度日志(`--push` 可喂给 `digest`) |
|
|
232
239
|
| `teamai digest` | 生成团队周报 |
|