@kmlckj/licos-ai-cli 1.5.0 → 1.6.0
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/lib/__templates__/agent/AGENTS.md +9 -0
- package/lib/__templates__/agent/pyproject.toml +15 -15
- package/lib/__templates__/agent/requirements.txt +3 -3
- package/lib/__templates__/expo/AGENTS.md +9 -0
- package/lib/__templates__/expo/pnpm-lock.yaml +13000 -13000
- package/lib/__templates__/expo/server/package.json +35 -35
- package/lib/__templates__/nextjs/AGENTS.md +9 -0
- package/lib/__templates__/nextjs/package.json +95 -95
- package/lib/__templates__/nextjs/pnpm-lock.yaml +11296 -11296
- package/lib/__templates__/nuxt-vue/AGENTS.md +9 -0
- package/lib/__templates__/nuxt-vue/package.json +46 -46
- package/lib/__templates__/nuxt-vue/pnpm-lock.yaml +8717 -8717
- package/lib/__templates__/taro/AGENTS.md +9 -0
- package/lib/__templates__/taro/pnpm-lock.yaml +20924 -20924
- package/lib/__templates__/taro/server/package.json +32 -32
- package/lib/__templates__/vite/AGENTS.md +9 -0
- package/lib/__templates__/vite/package.json +46 -46
- package/lib/__templates__/vite/pnpm-lock.yaml +3040 -3040
- package/lib/__templates__/workflow/AGENTS.md +44 -35
- package/lib/__templates__/workflow/pyproject.toml +15 -15
- package/lib/__templates__/workflow/requirements.txt +3 -3
- package/package.json +37 -37
|
@@ -1,39 +1,48 @@
|
|
|
1
|
-
# 项目上下文
|
|
2
|
-
|
|
3
|
-
## 技术栈
|
|
4
|
-
|
|
5
|
-
- **项目类型**: WORKFLOW
|
|
6
|
-
- **运行时**: Python + LangGraph + licos-agent-runtime
|
|
7
|
-
- **入口**: `src/graphs/graph.py`
|
|
8
|
-
|
|
9
|
-
## 目录结构
|
|
10
|
-
|
|
11
|
-
```text
|
|
12
|
-
├── config/
|
|
13
|
-
├── scripts/
|
|
14
|
-
├── src/
|
|
15
|
-
│ ├── main.py
|
|
16
|
-
│ └── graphs/
|
|
17
|
-
│ ├── graph.py
|
|
18
|
-
│ ├── state.py
|
|
19
|
-
│ └── nodes/
|
|
20
|
-
└── AGENTS.md
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## 项目说明
|
|
24
|
-
|
|
25
|
-
本文件用于记录用户项目可维护的长期上下文,例如业务目标、节点清单、外部 API 约定、输入输出样例、测试方式和后续注意事项。
|
|
26
|
-
|
|
27
|
-
维护规则:
|
|
28
|
-
|
|
29
|
-
- `AGENTS.md` 只是项目索引,输入输出样例必须跟随 `src/graphs/state.py` 和节点实现更新。
|
|
30
|
-
- 工作流存在真实业务节点时,不要把输入输出写成 `{}`,除非它确实没有外部输入也没有返回结果。
|
|
31
|
-
- 涉及文件输入/输出时,schema 使用文件对象字段,例如 `url`、`file_type`、`content`、`name`。节点生成文件时优先写入 `assets/`,并在输出中返回 `/assets/<文件名>`、`assets/<文件名>` 或本地文件路径。运行时会自动把输出文件发布到 Studio 对象存储并补齐签名 URL、`download_url`、`file_id`、`expires_at` 等字段。
|
|
32
|
-
- 不要在节点代码里手写 workspace-file-service 公共 URL、MinIO URL、签名参数或平台文件服务路径;部署后的工作流没有开发态文件服务,文件发布交给运行时统一处理。
|
|
33
|
-
- 如果文档与源码 schema 冲突,应修正文档,不要为了匹配文档清空 `GraphInput` / `GraphOutput`。
|
|
34
|
-
- 可视化条件节点必须在 `graph.py` 的 `add_node(..., metadata={...})` 中保存 `definition.branches`;`branches[].id` 与路由函数返回值一致,`branches[].target` 与 `add_conditional_edges(..., path_map=...)` 目标一致。条件节点函数只透传状态,不要把路由函数同时作为节点函数。
|
|
35
|
-
- 根据画布 QueryDiff 修改已有 Action 节点时,必须以 QueryDiff 的 `node.id` 为准更新同一个节点的 metadata、状态字段和实现文件;只有 QueryDiff 明确是新增节点且用户明确要增加业务步骤时才新增节点。
|
|
1
|
+
# 项目上下文
|
|
2
|
+
|
|
3
|
+
## 技术栈
|
|
4
|
+
|
|
5
|
+
- **项目类型**: WORKFLOW
|
|
6
|
+
- **运行时**: Python + LangGraph + licos-agent-runtime
|
|
7
|
+
- **入口**: `src/graphs/graph.py`
|
|
8
|
+
|
|
9
|
+
## 目录结构
|
|
10
|
+
|
|
11
|
+
```text
|
|
12
|
+
├── config/
|
|
13
|
+
├── scripts/
|
|
14
|
+
├── src/
|
|
15
|
+
│ ├── main.py
|
|
16
|
+
│ └── graphs/
|
|
17
|
+
│ ├── graph.py
|
|
18
|
+
│ ├── state.py
|
|
19
|
+
│ └── nodes/
|
|
20
|
+
└── AGENTS.md
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## 项目说明
|
|
24
|
+
|
|
25
|
+
本文件用于记录用户项目可维护的长期上下文,例如业务目标、节点清单、外部 API 约定、输入输出样例、测试方式和后续注意事项。
|
|
26
|
+
|
|
27
|
+
维护规则:
|
|
28
|
+
|
|
29
|
+
- `AGENTS.md` 只是项目索引,输入输出样例必须跟随 `src/graphs/state.py` 和节点实现更新。
|
|
30
|
+
- 工作流存在真实业务节点时,不要把输入输出写成 `{}`,除非它确实没有外部输入也没有返回结果。
|
|
31
|
+
- 涉及文件输入/输出时,schema 使用文件对象字段,例如 `url`、`file_type`、`content`、`name`。节点生成文件时优先写入 `assets/`,并在输出中返回 `/assets/<文件名>`、`assets/<文件名>` 或本地文件路径。运行时会自动把输出文件发布到 Studio 对象存储并补齐签名 URL、`download_url`、`file_id`、`expires_at` 等字段。
|
|
32
|
+
- 不要在节点代码里手写 workspace-file-service 公共 URL、MinIO URL、签名参数或平台文件服务路径;部署后的工作流没有开发态文件服务,文件发布交给运行时统一处理。
|
|
33
|
+
- 如果文档与源码 schema 冲突,应修正文档,不要为了匹配文档清空 `GraphInput` / `GraphOutput`。
|
|
34
|
+
- 可视化条件节点必须在 `graph.py` 的 `add_node(..., metadata={...})` 中保存 `definition.branches`;`branches[].id` 与路由函数返回值一致,`branches[].target` 与 `add_conditional_edges(..., path_map=...)` 目标一致。条件节点函数只透传状态,不要把路由函数同时作为节点函数。
|
|
35
|
+
- 根据画布 QueryDiff 修改已有 Action 节点时,必须以 QueryDiff 的 `node.id` 为准更新同一个节点的 metadata、状态字段和实现文件;只有 QueryDiff 明确是新增节点且用户明确要增加业务步骤时才新增节点。
|
|
36
36
|
- 禁止保留默认标题“请填写动作内容”作为最终节点标题;Action 节点标题必须稳定、可读并表达业务含义,已有节点的 ID 不能因为标题或内容调整而改变。
|
|
37
37
|
- 默认不创建持久化配置、迁移文件或检查点表。只有用户明确要求本项目断点续跑时,才按 README 中的运行时契约在本项目生成版本化 SQL 迁移,核对目标项目与环境并执行、加入 `config/workflow-runtime.json`,并检查图编译时使用 `workflow_checkpointer()`。
|
|
38
38
|
- 只有用户明确要求人工处理或异步设备回执时,才在本项目启用 `signals.enabled` 并生成 README 指定的增量迁移;普通项目不加等待表或字段。人工和回执共用 `/workflow/instances/{instance_id}/signals`,`/resume` 只处理执行失败。设备下发与等待回执必须分为两个节点,采用稳定 `wait_id` 和外部幂等键;参见 `examples/wait_signal.md`。
|
|
39
39
|
- 有副作用的业务节点在恢复后可能再次执行。写入外部系统必须使用由工作流实例 ID、稳定节点 ID 和业务操作号组成的幂等键;对没有幂等能力的系统,先查询原操作结果,状态不明时停止并交给业务规则处理,不自动重复写入。
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
## 平台调用身份
|
|
43
|
+
|
|
44
|
+
- `LICOS_CURRENT_USER_ID` 仅表示容器初始化用户,不能作为网页登录身份。
|
|
45
|
+
- 当前用户信息、企业知识库、本体搜索/调用/订阅必须显式传本次用户 Token(Node `userToken` / Python `user_token`)。Token 失效直接返回鉴权错误,不换成容器用户。
|
|
46
|
+
- 普通知识库、模型与积分接口默认使用项目身份;需要按网页登录用户执行时显式传 Token。数据库、存储、可观测性和 OAuth 应用管理使用项目身份。项目归属与平台签发的计费上下文独立保留。
|
|
47
|
+
- CLI 用户操作默认按 `LICOS_CURRENT_USER_ID` 换 Token;HTTP 服务调用 CLI 时使用 `--token-stdin`。Dev CLI 可用 `--identity project` 明确选择项目身份。
|
|
48
|
+
- 每个请求单独传 Token 或创建客户端,不把请求 Token、用户 ID 写进共享环境变量。
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
[project]
|
|
2
|
-
name = "<%= appName %>"
|
|
3
|
-
version = "0.1.0"
|
|
4
|
-
description = "LICOS LangGraph workflow project"
|
|
5
|
-
requires-python = ">=3.12"
|
|
6
|
-
dependencies = [
|
|
7
|
-
"licos-agent-runtime>=0.
|
|
8
|
-
"licos-platform-sdk>=0.
|
|
9
|
-
"licos-dev-sdk>=0.
|
|
10
|
-
]
|
|
11
|
-
|
|
12
|
-
[tool.uv]
|
|
13
|
-
[[tool.uv.index]]
|
|
14
|
-
url = "https://mirrors.aliyun.com/pypi/simple/"
|
|
15
|
-
default = true
|
|
1
|
+
[project]
|
|
2
|
+
name = "<%= appName %>"
|
|
3
|
+
version = "0.1.0"
|
|
4
|
+
description = "LICOS LangGraph workflow project"
|
|
5
|
+
requires-python = ">=3.12"
|
|
6
|
+
dependencies = [
|
|
7
|
+
"licos-agent-runtime>=0.5.0",
|
|
8
|
+
"licos-platform-sdk>=0.7.0",
|
|
9
|
+
"licos-dev-sdk>=0.6.0",
|
|
10
|
+
]
|
|
11
|
+
|
|
12
|
+
[tool.uv]
|
|
13
|
+
[[tool.uv.index]]
|
|
14
|
+
url = "https://mirrors.aliyun.com/pypi/simple/"
|
|
15
|
+
default = true
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
licos-agent-runtime>=0.
|
|
2
|
-
licos-platform-sdk>=0.
|
|
3
|
-
licos-dev-sdk>=0.
|
|
1
|
+
licos-agent-runtime>=0.5.0
|
|
2
|
+
licos-platform-sdk>=0.7.0
|
|
3
|
+
licos-dev-sdk>=0.6.0
|
package/package.json
CHANGED
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@kmlckj/licos-ai-cli",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "LICOS AI coding workspace CLI - project template engine and dev tools",
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"author": "kmlckj",
|
|
7
|
-
"bin": {
|
|
8
|
-
"licos": "bin/main"
|
|
9
|
-
},
|
|
10
|
-
"files": [
|
|
11
|
-
"lib",
|
|
12
|
-
"bin",
|
|
13
|
-
"!lib/**/node_modules/**",
|
|
14
|
-
"!lib/**/.pnpm/**",
|
|
15
|
-
"!lib/**/.pnpm-store/**",
|
|
16
|
-
"!lib/**/dist/**",
|
|
17
|
-
"!lib/**/.next/**",
|
|
18
|
-
"!lib/**/.turbo/**"
|
|
19
|
-
],
|
|
20
|
-
"dependencies": {
|
|
21
|
-
"@iarna/toml": "^2.2.5",
|
|
22
|
-
"ajv": "^8.17.1",
|
|
23
|
-
"ajv-formats": "^3.0.1",
|
|
24
|
-
"change-case": "^5.4.4",
|
|
25
|
-
"commander": "~12.1.0",
|
|
26
|
-
"debug": "^4.3.7",
|
|
27
|
-
"ejs": "^3.1.10",
|
|
28
|
-
"fast-glob": "^3.3.3",
|
|
29
|
-
"js-yaml": "^4.1.0",
|
|
30
|
-
"minimist": "^1.2.5",
|
|
31
|
-
"shelljs": "^0.10.0"
|
|
32
|
-
},
|
|
33
|
-
"publishConfig": {
|
|
34
|
-
"access": "public",
|
|
35
|
-
"registry": "https://registry.npmjs.org"
|
|
36
|
-
}
|
|
37
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@kmlckj/licos-ai-cli",
|
|
3
|
+
"version": "1.6.0",
|
|
4
|
+
"description": "LICOS AI coding workspace CLI - project template engine and dev tools",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "kmlckj",
|
|
7
|
+
"bin": {
|
|
8
|
+
"licos": "bin/main"
|
|
9
|
+
},
|
|
10
|
+
"files": [
|
|
11
|
+
"lib",
|
|
12
|
+
"bin",
|
|
13
|
+
"!lib/**/node_modules/**",
|
|
14
|
+
"!lib/**/.pnpm/**",
|
|
15
|
+
"!lib/**/.pnpm-store/**",
|
|
16
|
+
"!lib/**/dist/**",
|
|
17
|
+
"!lib/**/.next/**",
|
|
18
|
+
"!lib/**/.turbo/**"
|
|
19
|
+
],
|
|
20
|
+
"dependencies": {
|
|
21
|
+
"@iarna/toml": "^2.2.5",
|
|
22
|
+
"ajv": "^8.17.1",
|
|
23
|
+
"ajv-formats": "^3.0.1",
|
|
24
|
+
"change-case": "^5.4.4",
|
|
25
|
+
"commander": "~12.1.0",
|
|
26
|
+
"debug": "^4.3.7",
|
|
27
|
+
"ejs": "^3.1.10",
|
|
28
|
+
"fast-glob": "^3.3.3",
|
|
29
|
+
"js-yaml": "^4.1.0",
|
|
30
|
+
"minimist": "^1.2.5",
|
|
31
|
+
"shelljs": "^0.10.0"
|
|
32
|
+
},
|
|
33
|
+
"publishConfig": {
|
|
34
|
+
"access": "public",
|
|
35
|
+
"registry": "https://registry.npmjs.org"
|
|
36
|
+
}
|
|
37
|
+
}
|