@kmlckj/licos-ai-cli 1.7.9 → 1.7.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/lib/__templates__/agent/UPGRADING.md +50 -50
- package/lib/__templates__/agent/pyproject.toml +15 -15
- package/lib/__templates__/agent/requirements.txt +3 -3
- package/lib/__templates__/workflow/pyproject.toml +15 -15
- package/lib/__templates__/workflow/requirements.txt +3 -3
- package/package.json +37 -37
|
@@ -1,50 +1,50 @@
|
|
|
1
|
-
# 已有智能体项目升级检查清单
|
|
2
|
-
|
|
3
|
-
只有用户要求升级或所需能力确实依赖新版本时才调整依赖。原项目不升级仍可使用其原有功能;不要重新执行初始化来覆盖入口、登录方式、业务表或配置。
|
|
4
|
-
|
|
5
|
-
## 1. 记录基线与实际版本
|
|
6
|
-
|
|
7
|
-
- 读取项目 `AGENTS.md`、入口、业务工具、模型配置、认证配置、事件订阅、依赖及锁文件,记录当前可用接口和真实业务用例。
|
|
8
|
-
- 使用 `scripts/runtime.sh` 所选的项目解释器检查安装包版本,不能用其他全局 Python 环境的版本代替。当前模板依赖为 Runtime >=0.6.
|
|
9
|
-
- 更新 `requirements.txt`、`pyproject.toml` 及项目实际使用的锁文件,保留原有业务依赖。在项目环境安装并检查依赖;不要把“修改了版本声明”当成“预览或部署已升级”。
|
|
10
|
-
- 修改前保留可回退的源码版本,核对部署配置和数据库 Schema。不要将用户凭证保存进备份、源码或日志。
|
|
11
|
-
|
|
12
|
-
## 2. 适配业务代码与调用身份
|
|
13
|
-
|
|
14
|
-
- 核对新版本 SDK 的真实函数签名。当前用户信息、企业知识库、本体用户操作显式传 `user_token=ctx.identity.user_token`;依赖用户身份的业务工具在 `create_agent(ctx)` 中由工厂创建,再合并业务工具并校验配置。
|
|
15
|
-
- 保留现有平台登录或内置登录解析器,不用新模板的默认认证覆盖旧登录。没有有效用户授权时返回鉴权错误,不使用容器初始化用户或项目负责人代替。
|
|
16
|
-
- 后台投递/恢复沿用项目声明的身份解析机制,重新取得原用户的有效授权。模型、数据库、存储等按各自身份契约执行,不能把所有 SDK 操作都改成同一种身份。
|
|
17
|
-
- 常驻本体订阅的上游连接没有浏览器请求,现有运行时使用项目绑定身份订阅;事件进入业务执行后的身份由投递/恢复配置解析。分别检查这两段授权,不能用上游订阅身份替换网页调用者,也不能凭空要求常驻连接提供浏览器 Token。
|
|
18
|
-
- 合并完整入口示例时保留 `sp/up`、业务工具、hooks、结果校验器和自定义输入。标准协作优先使用配置;Store 示例只提供工具,见 [examples/README.md](examples/README.md)。
|
|
19
|
-
- 如果旧项目手动注册了 `create_file_transfer_tools(...)`,移除该注册及业务配置中的 `download_file`、`upload_file`,由运行时统一提供,避免重复工具名。
|
|
20
|
-
|
|
21
|
-
## 3. 保留已有状态与存储选择
|
|
22
|
-
|
|
23
|
-
- 连续执行是显式升级:先阅读安装包 docs/continuous-execution.md,再选择 adaptive/continuous 和检查点介质。旧项目省略这两个策略字段时仍为 legacy/bounded;不得按“原来刚好是 30/60/900”猜测用户愿意取消总上限。需要保留的原硬上限应在 continuous 下明确配置 total_*。
|
|
24
|
-
|
|
25
|
-
- 记录每个模块是否启用及使用 memory/database。已有数据库不代表用户同意持久化,不自动开启历史、检查点或 Store。
|
|
26
|
-
- 只保存聊天用 `history`;未完成运行、人工等待和恢复依赖检查点及运行控制。进程重启会丢失内存状态,升级前完成或明确结束受影响任务。
|
|
27
|
-
- 持久化准备按 [DATABASE.md](DATABASE.md) 定位项目实际安装版本的脚本,检查托管数据库、Schema 和迁移记录;数据库语义搜索还需向量脚本。基础对象已存在时不要重新执行完整建表脚本,结构变化应使用独立增量迁移。
|
|
28
|
-
- 图/状态结构变化时更新 `graph_version/state_version`,先停止相关写入,再按明确方案迁移。更换介质使用 `agent_migration.export_thread/import_thread`;数据库 Schema 使用独立迁移,不能在启动代码中执行 SQL 迁移。
|
|
29
|
-
- 保留历史数据和未完成任务的可追溯信息。外部写操作结果不明时先核对回执,不能通过新建运行或重跑工具冒充恢复。
|
|
30
|
-
|
|
31
|
-
## 4. 更新事件订阅绑定
|
|
32
|
-
|
|
33
|
-
- 修改已启用订阅的项目之前,停止相关订阅投递,避免旧图和新图混用。保留订阅 ID、原授权和实际目标,不删除业务订阅来绕过错误。
|
|
34
|
-
- 完成源码和运行配置修改后执行 `bash scripts/runtime.sh -m fingerprint`,把结果更新到启用订阅的 `project_version`。指纹更新后若再修改参与计算的文件,必须重新计算。
|
|
35
|
-
- 核对 `workspace_id`、`project_id` 和上游对象/动作是否仍然存在、当前授权是否可用,再恢复订阅。上游目标失效时报告准确错误,不能擅自绑定其他对象。
|
|
36
|
-
- 检查订阅状态和真实投递记录,人工回放明确标识来源,不能声称为实时事件。
|
|
37
|
-
|
|
38
|
-
## 5. 验证兼容性与新增能力
|
|
39
|
-
|
|
40
|
-
- 先读取 Preview 状态和 Output,复用已有服务;用户要求启动或运行测试时通过可用的平台预览能力启动,不手动启动重复的常驻服务。用户暂不测试或服务不可用时,明确记录运行验收未执行及原因。
|
|
41
|
-
- 核对 `/health`、`/graph_parameter`、`/agent/config`、`/agent/canvas` 和 `/openapi.json`,再查询 `/agent/v1/capabilities`。未升级服务缺少新接口时保留原页面和调用方式;新接口的 401、500 等错误不能按“不支持”忽略。
|
|
42
|
-
- 保留原 `/run`、`/stream_run`、`/v1/chat/completions` 及真实业务输入输出。默认模型/工具对话图按 README 执行 verify,检查真实模型和工具回执;自定义图、交接和中断按示例逐步验证。
|
|
43
|
-
- 只验证本次启用或改动的状态能力,包括用户/会话隔离、等待与回复、取消、恢复、回放及订阅。持久化需要实际重启后检查;内存测试不能当成数据库恢复通过。
|
|
44
|
-
- 自动化样例执行与编程 Agent 自然语言生成项目是不同验收,分别记录证据和未覆盖项。
|
|
45
|
-
|
|
46
|
-
## 6. 部署后核对
|
|
47
|
-
|
|
48
|
-
- 由平台重新构建和部署项目,确认部署环境实际安装的包版本、运行入口和配置;本地修改或平台服务升级不会自动更新已部署项目的依赖。
|
|
49
|
-
- 保持用户选择的状态介质及部署同步开关,避免部署覆盖已有数据库或对象文件。
|
|
50
|
-
- 在目标部署上检查元数据、真实业务调用和已启用订阅,记录实际结果。项目 `AGENTS.md` 更新版本、状态方案和维护说明;测试报告、迁移过程和平台实现细节不写入业务 `sp/up`。
|
|
1
|
+
# 已有智能体项目升级检查清单
|
|
2
|
+
|
|
3
|
+
只有用户要求升级或所需能力确实依赖新版本时才调整依赖。原项目不升级仍可使用其原有功能;不要重新执行初始化来覆盖入口、登录方式、业务表或配置。
|
|
4
|
+
|
|
5
|
+
## 1. 记录基线与实际版本
|
|
6
|
+
|
|
7
|
+
- 读取项目 `AGENTS.md`、入口、业务工具、模型配置、认证配置、事件订阅、依赖及锁文件,记录当前可用接口和真实业务用例。
|
|
8
|
+
- 使用 `scripts/runtime.sh` 所选的项目解释器检查安装包版本,不能用其他全局 Python 环境的版本代替。当前模板依赖为 Runtime >=0.6.15、Platform SDK >=0.9.1、Dev SDK >=0.6.8,Python >=3.11;以项目的依赖声明、锁文件和实际安装结果为准。
|
|
9
|
+
- 更新 `requirements.txt`、`pyproject.toml` 及项目实际使用的锁文件,保留原有业务依赖。在项目环境安装并检查依赖;不要把“修改了版本声明”当成“预览或部署已升级”。
|
|
10
|
+
- 修改前保留可回退的源码版本,核对部署配置和数据库 Schema。不要将用户凭证保存进备份、源码或日志。
|
|
11
|
+
|
|
12
|
+
## 2. 适配业务代码与调用身份
|
|
13
|
+
|
|
14
|
+
- 核对新版本 SDK 的真实函数签名。当前用户信息、企业知识库、本体用户操作显式传 `user_token=ctx.identity.user_token`;依赖用户身份的业务工具在 `create_agent(ctx)` 中由工厂创建,再合并业务工具并校验配置。
|
|
15
|
+
- 保留现有平台登录或内置登录解析器,不用新模板的默认认证覆盖旧登录。没有有效用户授权时返回鉴权错误,不使用容器初始化用户或项目负责人代替。
|
|
16
|
+
- 后台投递/恢复沿用项目声明的身份解析机制,重新取得原用户的有效授权。模型、数据库、存储等按各自身份契约执行,不能把所有 SDK 操作都改成同一种身份。
|
|
17
|
+
- 常驻本体订阅的上游连接没有浏览器请求,现有运行时使用项目绑定身份订阅;事件进入业务执行后的身份由投递/恢复配置解析。分别检查这两段授权,不能用上游订阅身份替换网页调用者,也不能凭空要求常驻连接提供浏览器 Token。
|
|
18
|
+
- 合并完整入口示例时保留 `sp/up`、业务工具、hooks、结果校验器和自定义输入。标准协作优先使用配置;Store 示例只提供工具,见 [examples/README.md](examples/README.md)。
|
|
19
|
+
- 如果旧项目手动注册了 `create_file_transfer_tools(...)`,移除该注册及业务配置中的 `download_file`、`upload_file`,由运行时统一提供,避免重复工具名。
|
|
20
|
+
|
|
21
|
+
## 3. 保留已有状态与存储选择
|
|
22
|
+
|
|
23
|
+
- 连续执行是显式升级:先阅读安装包 docs/continuous-execution.md,再选择 adaptive/continuous 和检查点介质。旧项目省略这两个策略字段时仍为 legacy/bounded;不得按“原来刚好是 30/60/900”猜测用户愿意取消总上限。需要保留的原硬上限应在 continuous 下明确配置 total_*。
|
|
24
|
+
|
|
25
|
+
- 记录每个模块是否启用及使用 memory/database。已有数据库不代表用户同意持久化,不自动开启历史、检查点或 Store。
|
|
26
|
+
- 只保存聊天用 `history`;未完成运行、人工等待和恢复依赖检查点及运行控制。进程重启会丢失内存状态,升级前完成或明确结束受影响任务。
|
|
27
|
+
- 持久化准备按 [DATABASE.md](DATABASE.md) 定位项目实际安装版本的脚本,检查托管数据库、Schema 和迁移记录;数据库语义搜索还需向量脚本。基础对象已存在时不要重新执行完整建表脚本,结构变化应使用独立增量迁移。
|
|
28
|
+
- 图/状态结构变化时更新 `graph_version/state_version`,先停止相关写入,再按明确方案迁移。更换介质使用 `agent_migration.export_thread/import_thread`;数据库 Schema 使用独立迁移,不能在启动代码中执行 SQL 迁移。
|
|
29
|
+
- 保留历史数据和未完成任务的可追溯信息。外部写操作结果不明时先核对回执,不能通过新建运行或重跑工具冒充恢复。
|
|
30
|
+
|
|
31
|
+
## 4. 更新事件订阅绑定
|
|
32
|
+
|
|
33
|
+
- 修改已启用订阅的项目之前,停止相关订阅投递,避免旧图和新图混用。保留订阅 ID、原授权和实际目标,不删除业务订阅来绕过错误。
|
|
34
|
+
- 完成源码和运行配置修改后执行 `bash scripts/runtime.sh -m fingerprint`,把结果更新到启用订阅的 `project_version`。指纹更新后若再修改参与计算的文件,必须重新计算。
|
|
35
|
+
- 核对 `workspace_id`、`project_id` 和上游对象/动作是否仍然存在、当前授权是否可用,再恢复订阅。上游目标失效时报告准确错误,不能擅自绑定其他对象。
|
|
36
|
+
- 检查订阅状态和真实投递记录,人工回放明确标识来源,不能声称为实时事件。
|
|
37
|
+
|
|
38
|
+
## 5. 验证兼容性与新增能力
|
|
39
|
+
|
|
40
|
+
- 先读取 Preview 状态和 Output,复用已有服务;用户要求启动或运行测试时通过可用的平台预览能力启动,不手动启动重复的常驻服务。用户暂不测试或服务不可用时,明确记录运行验收未执行及原因。
|
|
41
|
+
- 核对 `/health`、`/graph_parameter`、`/agent/config`、`/agent/canvas` 和 `/openapi.json`,再查询 `/agent/v1/capabilities`。未升级服务缺少新接口时保留原页面和调用方式;新接口的 401、500 等错误不能按“不支持”忽略。
|
|
42
|
+
- 保留原 `/run`、`/stream_run`、`/v1/chat/completions` 及真实业务输入输出。默认模型/工具对话图按 README 执行 verify,检查真实模型和工具回执;自定义图、交接和中断按示例逐步验证。
|
|
43
|
+
- 只验证本次启用或改动的状态能力,包括用户/会话隔离、等待与回复、取消、恢复、回放及订阅。持久化需要实际重启后检查;内存测试不能当成数据库恢复通过。
|
|
44
|
+
- 自动化样例执行与编程 Agent 自然语言生成项目是不同验收,分别记录证据和未覆盖项。
|
|
45
|
+
|
|
46
|
+
## 6. 部署后核对
|
|
47
|
+
|
|
48
|
+
- 由平台重新构建和部署项目,确认部署环境实际安装的包版本、运行入口和配置;本地修改或平台服务升级不会自动更新已部署项目的依赖。
|
|
49
|
+
- 保持用户选择的状态介质及部署同步开关,避免部署覆盖已有数据库或对象文件。
|
|
50
|
+
- 在目标部署上检查元数据、真实业务调用和已启用订阅,记录实际结果。项目 `AGENTS.md` 更新版本、状态方案和维护说明;测试报告、迁移过程和平台实现细节不写入业务 `sp/up`。
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
[project]
|
|
2
|
-
name = "<%= appName %>"
|
|
3
|
-
version = "0.1.0"
|
|
4
|
-
description = "LICOS LangGraph agent project"
|
|
5
|
-
requires-python = ">=3.11"
|
|
6
|
-
dependencies = [
|
|
7
|
-
"licos-agent-runtime>=0.6.
|
|
8
|
-
"licos-platform-sdk>=0.9.
|
|
9
|
-
"licos-dev-sdk>=0.6.
|
|
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 agent project"
|
|
5
|
+
requires-python = ">=3.11"
|
|
6
|
+
dependencies = [
|
|
7
|
+
"licos-agent-runtime>=0.6.15",
|
|
8
|
+
"licos-platform-sdk>=0.9.1",
|
|
9
|
+
"licos-dev-sdk>=0.6.8",
|
|
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.6.
|
|
2
|
-
licos-platform-sdk>=0.9.
|
|
3
|
-
licos-dev-sdk>=0.6.
|
|
1
|
+
licos-agent-runtime>=0.6.15
|
|
2
|
+
licos-platform-sdk>=0.9.1
|
|
3
|
+
licos-dev-sdk>=0.6.8
|
|
@@ -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.6.
|
|
8
|
-
"licos-platform-sdk>=0.9.
|
|
9
|
-
"licos-dev-sdk>=0.6.
|
|
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.6.15",
|
|
8
|
+
"licos-platform-sdk>=0.9.1",
|
|
9
|
+
"licos-dev-sdk>=0.6.8",
|
|
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.6.
|
|
2
|
-
licos-platform-sdk>=0.9.
|
|
3
|
-
licos-dev-sdk>=0.6.
|
|
1
|
+
licos-agent-runtime>=0.6.15
|
|
2
|
+
licos-platform-sdk>=0.9.1
|
|
3
|
+
licos-dev-sdk>=0.6.8
|
package/package.json
CHANGED
|
@@ -1,37 +1,37 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@kmlckj/licos-ai-cli",
|
|
3
|
-
"version": "1.7.
|
|
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.7.10",
|
|
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
|
+
}
|