67837df8d0
- 新增全套考试卷、评估卷、参考答案与考试培训包模板 - 修正slidev培训课件:调整模块标题、链路图缩放,替换工单示例为通用业务对象 - 修正课堂红线表述为证据红线,将小组作业调整为个人作业要求 - 新增权限、状态流转、审计日志、看板指标四类可复用业务规则块 - 整理AI工程技能交付包,迁移旧资产至客户专属交付包并统一术语 - 新增考试输出模板与TRAE使用记录文档
3.0 KiB
3.0 KiB
跨平台兼容
在 macOS、Windows、Linux 或 CI 上运行或安装本 Skill 时使用本参考。
兼容性摘要
| 项目 | macOS | Linux | Windows |
|---|---|---|---|
SKILL.md 工作流 |
支持 | 支持 | 支持 |
project_inventory.py |
Python 3.9+ 支持 | Python 3.9+ 支持 | Python 3.9+ 支持 |
| Python 依赖 | 仅标准库 | 仅标准库 | 仅标准库 |
| 路径处理 | pathlib |
pathlib |
pathlib |
| shell 依赖 | 脚本无依赖 | 脚本无依赖 | 脚本无依赖 |
| 生成 Markdown 路径 | POSIX 风格相对路径 | POSIX 风格相对路径 | POSIX 风格相对路径 |
脚本故意使用带 / 分隔符的仓库相对路径,使生成 Markdown 在跨平台、GitHub URL 和 RAG metadata 中更稳定。
Python 调用
macOS 和 Linux 通常使用:
python3 skills/project-knowledge-builder/scripts/project_inventory.py --root . --out docs/project-knowledge/generated
python skills/project-knowledge-builder/scripts/project_inventory.py --root . --out docs/project-knowledge/generated
Windows PowerShell 通常使用:
py -3 skills\project-knowledge-builder\scripts\project_inventory.py --root . --out docs\project-knowledge\generated
python skills\project-knowledge-builder\scripts\project_inventory.py --root . --out docs\project-knowledge\generated
CI 应优先使用明确的 Python:
python -m py_compile skills/project-knowledge-builder/scripts/project_inventory.py
python skills/project-knowledge-builder/scripts/project_inventory.py --root . --out docs/project-knowledge/generated --json
命令替换
| 任务 | macOS/Linux | Windows PowerShell |
|---|---|---|
| 列出文档 | find docs/project-knowledge -type f | sort |
Get-ChildItem docs/project-knowledge -Recurse -File | Sort-Object FullName |
| 搜索占位符 | `rg -n "TODO | TBD" docs/project-knowledge` |
| 查看 git 状态 | git status --short |
git status --short |
| 删除临时输出 | rm -rf ./kb-inventory |
Remove-Item .\kb-inventory -Recurse -Force |
优先使用 rg。如果环境中没有 rg,使用该平台可用的搜索工具。
Skill 示例中应避免
- 在应支持 Windows 的命令中写死
/tmp路径。 - 在面向用户的说明中只给 POSIX 命令链,例如
cmd1 && cmd2,而不给 PowerShell 等价方式。 - 假设 shell glob 在 zsh、bash、PowerShell、cmd 中行为一致。
- 依赖 shebang 可执行行为的 Python 用法;Windows 用户应调用
py -3 script.py。
已知限制
- Java endpoint 提取基于正则,故意保持保守。它不会完整解析常量、组合注解或继承的 controller mapping。
- SQL 表提取查找
CREATE TABLE;动态创建的表或其他迁移 DSL 需要人工文档化。 - 前端路由提取会扫描 route-like 字面量和 view 文件;运行时由 API 生成的路由仍需要后端菜单/权限数据或数据库导出。
- 超大仓库可能需要调整
--max-files,或增加忽略目录。