teamai-cli 0.16.2 → 0.16.3

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/README.en.md CHANGED
@@ -1,17 +1,15 @@
1
- # TeamAI — Git-native Team AI Experience Sharing
1
+ # TeamAI — The team harness for AI agents
2
2
 
3
3
  > [English](README.en.md) | [简体中文](README.md)
4
4
 
5
5
  [![CI](https://github.com/Tencent/teamai-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/Tencent/teamai-cli/actions/workflows/ci.yml)
6
6
  [![npm version](https://img.shields.io/npm/v/teamai-cli.svg)](https://www.npmjs.com/package/teamai-cli)
7
7
  [![npm downloads](https://img.shields.io/npm/dm/teamai-cli.svg)](https://www.npmjs.com/package/teamai-cli)
8
- [![Node.js](https://img.shields.io/node/v/teamai-cli.svg)](https://nodejs.org)
9
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
10
9
 
11
- A Git-native tool for sharing AI experience across your team. Automatically syncs skills, rules, docs, and other AI-tool configuration between team members.
10
+ Make every AI coding agent work by the same harness. Git-native management of skills, rules, and docs across 20+ AI tools for you or your whole team.
12
11
 
13
- **Supported AI tools:** Claude Code, Codex, Cursor, CodeBuddy IDE (plus their Internal variants), as well as Gemini CLI, Windsurf, Trae, Aider, Amp, OpenClaw, and 20+ other AI coding tools (skills sync).
14
- **Supported git hosts:** **GitHub** and Tencent Gongfeng TGit (`git.woa.com`), auto-detected from the repo URL or install channel.
12
+ **Supports:** Claude Code, Codex, Cursor, CodeBuddy IDE, as well as Gemini CLI, Windsurf, Trae, Aider, Amp, OpenClaw, and 20+ other AI coding tools (skills sync).
15
13
 
16
14
  > 📖 **Full usage guide:** [docs/usage-guide.md](docs/usage-guide.md) — covers everything from team creation to day-to-day use.
17
15
  > 📚 **Provider notes:** [docs/providers.md](docs/providers.md) — GitHub / TGit differences and auth setup.
package/README.md CHANGED
@@ -1,17 +1,15 @@
1
- # TeamAI — 基于 Git 的团队 AI 经验共享工具
1
+ # TeamAI — The team harness for AI agents
2
2
 
3
3
  > [English](README.en.md) | [简体中文](README.md)
4
4
 
5
5
  [![CI](https://github.com/Tencent/teamai-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/Tencent/teamai-cli/actions/workflows/ci.yml)
6
6
  [![npm version](https://img.shields.io/npm/v/teamai-cli.svg)](https://www.npmjs.com/package/teamai-cli)
7
7
  [![npm downloads](https://img.shields.io/npm/dm/teamai-cli.svg)](https://www.npmjs.com/package/teamai-cli)
8
- [![Node.js](https://img.shields.io/node/v/teamai-cli.svg)](https://nodejs.org)
9
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
10
9
 
11
- 基于 Git 的团队 AI 经验共享工具。自动在团队成员之间同步 skills、rules、docs AI 工具配置。
10
+ 让每个 AI 编程助手都按同一套标准工作。通过 Git 统一管理 skills、rules、docs,驾驭 20+ AI 工具——一个人也能用,团队用更强。
12
11
 
13
- 支持的 AI 工具:Claude Code、Codex、Cursor、CodeBuddy IDE(及各自的 Internal 版本),以及 Gemini CLI、Windsurf、Trae、Aider、Amp、OpenClaw 等 20+ 种 AI 编程工具(Skills 同步)。
14
- 支持的 git 托管平台:**GitHub**、腾讯工蜂 TGit(`git.woa.com`),根据 repo URL 或安装来源自动识别。
12
+ **支持:** Claude Code、Codex、Cursor、CodeBuddy IDE,以及 Gemini CLI、Windsurf、Trae、Aider、Amp、OpenClaw 等 20+ 种 AI 编程工具(skills 同步)。
15
13
 
16
14
  > 📖 **完整使用指南**:[docs/usage-guide.md](docs/usage-guide.md) — 涵盖从团队创建到日常使用的全流程。
17
15
  > 📚 **Provider 说明**:[docs/providers.md](docs/providers.md) — GitHub / TGit 差异与认证配置。
package/dist/index.js CHANGED
@@ -5865,6 +5865,7 @@ __export(pull_exports, {
5865
5865
  cleanupInactiveNamespaceSkills: () => cleanupInactiveNamespaceSkills,
5866
5866
  compileClaudemd: () => compileClaudemd,
5867
5867
  compileCulture: () => compileCulture,
5868
+ filterRulesByKnowledgeNamespaces: () => filterRulesByKnowledgeNamespaces,
5868
5869
  pull: () => pull,
5869
5870
  scanRoleAwareSkills: () => scanRoleAwareSkills
5870
5871
  });
@@ -5914,6 +5915,15 @@ async function buildRolePullContext(localConfig) {
5914
5915
  }
5915
5916
  return { activeNamespaces, activeSkillNames, inactiveSkillNames };
5916
5917
  }
5918
+ function filterRulesByKnowledgeNamespaces(rules, knowledgeNamespaces) {
5919
+ if (!knowledgeNamespaces) return rules;
5920
+ return rules.filter((rule) => {
5921
+ const slashIndex = rule.name.indexOf("/");
5922
+ if (slashIndex === -1) return true;
5923
+ const namespace = rule.name.slice(0, slashIndex);
5924
+ return knowledgeNamespaces.includes(namespace);
5925
+ });
5926
+ }
5917
5927
  async function scanRoleAwareSkills(localConfig, namespaces) {
5918
5928
  const items = /* @__PURE__ */ new Map();
5919
5929
  for (const namespace of namespaces.skills) {
@@ -6040,7 +6050,9 @@ async function pullForScope(localConfig, options) {
6040
6050
  if (type === "rules") {
6041
6051
  const rulesHandler = handler;
6042
6052
  const allItems = await rulesHandler.scanTeamForPull(freshConfig, localConfig);
6043
- const { included: items2, skipped } = filterByTags(allItems, tagsConfig, subscribedTags, "rules");
6053
+ const knowledgeNs = roleContext ? roleContext.activeNamespaces.knowledge : null;
6054
+ const roleFiltered = filterRulesByKnowledgeNamespaces(allItems, knowledgeNs);
6055
+ const { included: items2, skipped } = filterByTags(roleFiltered, tagsConfig, subscribedTags, "rules");
6044
6056
  if (items2.length > 0) {
6045
6057
  if (options.dryRun) {
6046
6058
  log.info(`[${scopeLabel}] [dry-run] Would sync ${items2.length} rule(s)${skipped.length > 0 ? ` (skipped ${skipped.length} by tags)` : ""}`);
@@ -11072,7 +11084,7 @@ import { Command } from "commander";
11072
11084
  var require2 = createRequire2(import.meta.url);
11073
11085
  var { version } = require2("../package.json");
11074
11086
  var program = new Command();
11075
- program.name("teamai").description("TeamAI \u2014 \u56E2\u961F AI \u7ECF\u9A8C\u5171\u4EAB\u6846\u67B6").version(version).option("--dry-run", "Preview mode, no changes made").option("-v, --verbose", "Verbose output").hook("preAction", (thisCommand) => {
11087
+ program.name("teamai").description("TeamAI \u2014 The team harness for AI agents").version(version).option("--dry-run", "Preview mode, no changes made").option("-v, --verbose", "Verbose output").hook("preAction", (thisCommand) => {
11076
11088
  const opts = thisCommand.opts();
11077
11089
  if (opts.verbose) setVerbose(true);
11078
11090
  });
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "teamai-cli",
3
- "version": "0.16.2",
4
- "description": "TeamAI — team AI experience sharing framework (skills, rules, docs, env sync across Claude Code, Cursor, Codex, etc.)",
3
+ "version": "0.16.3",
4
+ "description": "TeamAI — the team harness for AI agents (skill sync + shared knowledge base, powered by Git)",
5
5
  "type": "module",
6
6
  "bin": {
7
- "teamai": "dist/index.js"
7
+ "teamai": "./dist/index.js"
8
8
  },
9
9
  "files": [
10
10
  "dist/**/*.js",
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "repository": {
31
31
  "type": "git",
32
- "url": "git+https://github.com/Tencent/teamai-cli.git"
32
+ "url": "https://github.com/Tencent/teamai-cli.git"
33
33
  },
34
34
  "homepage": "https://github.com/Tencent/teamai-cli#readme",
35
35
  "bugs": {