teamai-cli 0.23.1 → 0.24.0-beta.1

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.md CHANGED
@@ -227,7 +227,7 @@ Matched: conflict | Missing: port
227
227
  teamai import --from-repo https://github.com/org/repo
228
228
  teamai import --from-org myorg # batch import all repos
229
229
  teamai codebase --extract /path/to/repo # local extract into teamwiki/
230
- teamai codebase --lint --output /path/to/repo # check the locally extracted graph
230
+ teamai codebase --lint # health check
231
231
  ```
232
232
 
233
233
  The graph stores components, interfaces, configs, and cross-repo import edges. `teamai recall` uses it for graph-boosted re-ranking.
package/README.zh-CN.md CHANGED
@@ -227,7 +227,7 @@ Matched: conflict | Missing: port
227
227
  teamai import --from-repo https://github.com/org/repo
228
228
  teamai import --from-org myorg # 批量导入所有仓库
229
229
  teamai codebase --extract /path/to/repo # 本地提取到 teamwiki/
230
- teamai codebase --lint --output /path/to/repo # 检查本地提取的图谱
230
+ teamai codebase --lint # 健康检查
231
231
  ```
232
232
 
233
233
  图谱存储组件、接口、配置和跨仓库依赖边。`teamai recall` 利用图谱进行增强排名。
package/dist/index.js CHANGED
@@ -4965,7 +4965,7 @@ async function gitlabListOrgRepos(group, opts) {
4965
4965
  const collected = [];
4966
4966
  let page = 1;
4967
4967
  while (collected.length < maxRepos) {
4968
- const url = `${gitlabApiBase()}/groups/${encodedGroup}/projects?per_page=${perPage}&page=${page}&include_subgroups=true`;
4968
+ const url = `${gitlabBaseUrl()}/api/v4/groups/${encodedGroup}/projects?per_page=${perPage}&page=${page}&include_subgroups=true`;
4969
4969
  const resp = await fetch(url, { headers, redirect: "manual" });
4970
4970
  if (resp.status >= 300 && resp.status < 400) {
4971
4971
  throw new Error(`Unexpected redirect from GitLab API: ${resp.status}`);
@@ -10722,8 +10722,7 @@ __export(source_exports, {
10722
10722
  sourceBrowse: () => sourceBrowse,
10723
10723
  sourceList: () => sourceList,
10724
10724
  sourceRemove: () => sourceRemove,
10725
- sourceRemoveHttp: () => sourceRemoveHttp,
10726
- sourceSyncWarnings: () => sourceSyncWarnings
10725
+ sourceRemoveHttp: () => sourceRemoveHttp
10727
10726
  });
10728
10727
  import path27 from "path";
10729
10728
  import fse5 from "fs-extra";
@@ -10810,8 +10809,8 @@ async function sourceAdd(repoUrl, options) {
10810
10809
  return;
10811
10810
  }
10812
10811
  const sourceConfig = await loadTeamConfig(cloneResult);
10813
- for (const line of sourceSyncWarnings(name, sourceConfig)) {
10814
- log.warn(line);
10812
+ if (!sourceConfig) {
10813
+ log.warn(`Source repo has no teamai.yaml. It can still be used, but no publicSkills are declared.`);
10815
10814
  }
10816
10815
  if (options.dryRun) {
10817
10816
  log.info(`[dry-run] Would add source "${name}" (${repoUrl})`);
@@ -11062,21 +11061,6 @@ async function pullSingleSource(source, teamConfig, localConfig, baseDir, option
11062
11061
  }
11063
11062
  }
11064
11063
  }
11065
- function sourceSyncWarnings(name, sourceConfig) {
11066
- if (!sourceConfig) {
11067
- return [
11068
- `Source repo "${name}" has no teamai.yaml, so it declares no public skills.`,
11069
- `This source will sync 0 skills until the source team adds a teamai.yaml with a publicSkills list.`
11070
- ];
11071
- }
11072
- if ((sourceConfig.publicSkills?.length ?? 0) === 0) {
11073
- return [
11074
- `Source repo "${name}" has a teamai.yaml but declares no publicSkills.`,
11075
- `This source will sync 0 skills until the source team adds a publicSkills list to its teamai.yaml.`
11076
- ];
11077
- }
11078
- return [];
11079
- }
11080
11064
  function deriveSourceName(repoUrl) {
11081
11065
  const trimmed = repoUrl.trim();
11082
11066
  let repoPath = "";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "teamai-cli",
3
- "version": "0.23.1",
3
+ "version": "0.24.0-beta.1",
4
4
  "description": "TeamAI — Make Every Team AI Native (skill sync + shared knowledge base, powered by Git)",
5
5
  "type": "module",
6
6
  "bin": {
@@ -892,8 +892,8 @@ _review/ ← 过程文件(不入知识库)
892
892
  | K3 后编译进 wiki | Skip. TeamAI does not ship a separate team-wiki CLI. Continue with this skill using `teamai` and the files under this skill directory. No extra plugin is required. |
893
893
  | 产品文档入图 | Skip. Same English note as above. |
894
894
  | 产品↔代码桥接 | Skip. Same English note as above. |
895
- | 一键刷新 | Use `teamai codebase --extract <repo> --project <slug> --incremental`, reusing the Phase 0 repository path and project slug even when running from another directory. Do not look for another CLI. |
896
- | 质量评估 | Use `scripts/validate_kb.py` and `teamai codebase --lint --output <repo>` to check `<repo>/teamwiki/` (`--output` takes the repository root, not the `teamwiki/` directory). Skip any extra evaluate binary. |
895
+ | 一键刷新 | Use `teamai codebase --extract --incremental` when updating a repo already extracted. Do not look for another CLI. |
896
+ | 质量评估 | Use `scripts/validate_kb.py` and `teamai codebase --lint` on `teamwiki/`. Skip any extra evaluate binary. |
897
897
 
898
898
  **路径约定**(本 skill 安装后):
899
899