agent_deply/packaging/README_linux_package.md
dark a11904b7c5 docs/build: 补齐中文注释、流程图和 Linux 解压即用打包脚本
- 为 pam_deploy_graph 生产代码补充中文模块、类、函数/方法文档字符串
- 将原有英文说明和主要英文异常提示改为中文
- 新增当前整体逻辑结构流程图文档,覆盖模块结构、执行链路、action 路由、人工确认和 checkpoint 续跑
- 新增 Linux 自带运行环境打包脚本,使用 PyInstaller 生成解压即用目录和 tar.gz
- 新增 Linux 打包说明,包含构建命令、运行方式、依赖说明和包大小评估
- 同步 README,补充流程图、打包方式、产物路径和大小预估
- 更新相关测试断言以匹配中文错误提示
2026-06-01 11:21:42 +08:00

1.9 KiB

Linux 解压即用打包说明

目标

build_linux_self_contained.sh 会在 Linux x86_64 构建机上生成一个自带 Python 运行时和 Python 依赖的发布包。目标机器解压后可以直接运行,不需要额外安装 Python 或 pip 依赖。

构建机要求

  • Linux x86_64
  • bash
  • python3,需要带 venv 模块
  • 构建时需要访问 Python 包索引,用于安装 PyInstaller 和项目依赖

该脚本不支持在 Windows 上交叉构建 Linux 包。建议在和目标环境 glibc 版本相同或更旧的 Linux 发行版上构建,以提高二进制兼容性。

构建命令

bash packaging/build_linux_self_contained.sh

默认会安装 .[mcp],即包含 MCP 可选依赖。如果只想打最小包:

PACKAGE_EXTRAS= bash packaging/build_linux_self_contained.sh

构建产物:

dist/linux_self_contained/pam-deploy-agent-linux-x86_64/
dist/linux_self_contained/pam-deploy-agent-linux-x86_64.tar.gz

解压后运行

tar -xzf pam-deploy-agent-linux-x86_64.tar.gz
cd pam-deploy-agent-linux-x86_64
./run.sh --help
./run.sh chat --config doc_scripts/config.txt.example --strategy fake --checkpoint runtime/checkpoints/demo.json

run.sh 会切换到发布目录再启动可执行程序,因此默认的 doc_scripts/... 相对路径可以正常工作。

包大小评估

最终大小以脚本末尾打印的 du 结果为准。按当前依赖结构预估:

构建方式 压缩包大小 解压后大小 主要影响因素
默认包含 MCP 依赖 60-110 MB 160-300 MB PyInstaller 运行时、langgraph、mcp 及其依赖
PACKAGE_EXTRAS= 最小包 45-75 MB 120-200 MB PyInstaller 运行时、langgraph 及基础依赖

当前项目源码和脚本文档本身体积很小,包大小主要由 Python 运行时、PyInstaller bootloader、第三方依赖和动态库决定。