本仓库用于存放面向 SylixOS 开发场景的 AI Skill 文件。
- 沉淀 SylixOS 开发中的常见工作流
- 为 AI 工具提供结构化的任务执行说明
- 降低重复性操作的沟通成本
- 便于后续持续扩展更多专项 Skill
只需加载主 skill 文件即可使用所有功能:
加载 /workspace/code_workspace/sylixos_skill skill
AI 会根据你的指令自动判断使用哪个子 skill:
- 移植分析: "把 Linux 字符设备驱动移植到 SylixOS" / "总结中断适配经验" / "记录驱动移植过程" → 自动使用移植分析 skill
- 编译项目: "编译 xxx 项目" → 自动使用编译 skill
- 上传到板卡: "上传 xxx 到板卡" → 自动使用上传 skill
- 板卡测试: "telnet 登录板卡并测试 xxx" → 自动使用 telnet 测试 skill
- 网络验证与接口差异: "不使用陪测机做双网口物理链路自测" / "总结 Linux 和 SylixOS 的网络接口差异" → 自动使用网络 skill
- 长期验证方法: "先短测再长测验证" / "做 30 分钟或 1 小时 soak 验证" → 自动使用长期验证 skill
- 完整流程: "编译上传并测试 xxx" → 自动依次执行编译、上传和板卡测试
sylixos_skill/
├── SKILL.md # 主 skill 入口(统一加载点)
├── README.md # 本文档
├── sylixos-driver-porting/
│ └── SKILL.md # Linux 字符设备驱动向 SylixOS 移植分析 skill
├── sylixos-network/
│ └── SKILL.md # SylixOS 网络验证与接口差异 skill
├── sylixos-long-run-validation/
│ └── SKILL.md # 长时间测试 / soak / staged validation 方法 skill
├── sylixos_cli_build/
│ └── SKILL.md # 编译构建子 skill
├── sylixos_telnet_test/
│ └── SKILL.md # Telnet 登录板卡并执行测试子 skill
└── sylixos_ftp_upload/
└── SKILL.md # FTP 上传子 skill
这是唯一需要加载的 skill 文件,作为统一入口点。
- 自动判断用户意图(编译、上传、板卡测试或完整链路)
- 路由到相应的子 skill
- 包含完整的决策逻辑和使用示例
本文档,面向人类用户的说明文档。
SylixOS CLI 命令行构建子 skill。
功能:
- 发现工作区布局(base、compat layer、license SDK、BSP)
- 更新 config.mk 配置文件(使用绝对路径)
- 确定正确的平台配置(ARM64_GENERIC 等)
- 执行 multi-platform.mk 构建
- 约束 companion project 通过
multi-platform.mk做平台感知的all/clean - 处理编译错误和依赖问题
适用场景:
- 编译 SylixOS 驱动、库、应用程序
- 修复编译错误
- 重新构建项目
Linux 字符设备驱动向 SylixOS 迁移分析子 skill。
功能:
- 对照 Linux 原始代码与 SylixOS 移植代码
- 从实际源码中提取字符设备注册、节点创建、
fo_*回调、中断注册和中断分发的移植模式 - 区分“代码已验证”和“仅文档猜测”的结论
- 对非平凡移植或调试维护轻量过程文档,记录版本、命令、板端验证、日志路径和结论状态
适用场景:
- 评审现有 SylixOS 移植质量
- 为类似驱动后续移植沉淀 checklist 或 skill
- 排查迁移文档与当前代码不一致的问题
- 记录多轮驱动移植、构建、上传和板端验证过程
SylixOS 网络验证与接口差异子 skill。
功能:
- 帮助 AI 区分“本机地址通信成功”和“物理链路验证成功”
- 沉淀 Linux 与 SylixOS 在网络接口、
AF_PACKET、MTU、计数解释方面的差异 - 指导在无外部陪测机时如何选择 local-IP、raw L2 或 PHY 级验证
- 为后续网络 bring-up / 物理路径验证 / 网络调试提供统一检查清单
适用场景:
- 单板双网口物理路径验证
- Linux 网络代码迁移到 SylixOS
- 排查“为什么 ping/UDP 成功但不一定过物理链路”
- 为后续 AI 会话快速建立可复用的网络调试上下文
长期测试 / soak / staged validation 方法子 skill。
功能:
- 总结长期板卡问题的通用验证方法,而不是单次问题结论
- 约束问题排查顺序为:短测复现 → 单变量 A/B → 30 分钟验证 → 1 小时确认
- 强制在自定义压力模型后回到默认真实压力混合场景复测
- 强调 CPU 放置、IRQ 放置、压力线程放置、结果文件化、脚本化执行、会话噪声规避等方法
- 强调多轮重大验证前优先 reboot,避免上轮环境污染结果
适用场景:
- 长时间抖动、超时、耐久、soak、endurance、压力敏感问题
- “短测看起来好了,但需要 30 分钟 / 1 小时确认”的问题
- 板卡侧需要多轮假设验证和长期确认的问题
SylixOS 项目文件上传到目标板卡子 skill。
功能:
- 解析
.reproject配置文件(GB2312 编码) - 提取板卡 IP、上传文件列表和目标路径
- 验证网络连通性
- 默认通过 bundled FTP 脚本上传文件(默认 root/root)
- 自动创建目标目录
- 上传后默认执行远端
chmod 755 - 全部上传完成后默认执行一次远端
sync - 对于 BSP 启动镜像,覆盖
/boot前优先备份当前活动镜像 - 为新建的可复用 SylixOS 工程沉淀
.reproject模板 - 报告上传结果
适用场景:
- 部署驱动模块(*.ko)到
/lib/modules/drivers/ - 部署库文件(*.so)到
/lib/ - 部署测试工具到
/apps/
SylixOS 板卡 Telnet 登录与板端测试子 skill。
功能:
- 从用户输入或
.reproject中提取板卡 IP、工作目录和远端文件路径 - 验证板卡
23端口可达 - 通过 telnet 登录板卡
- 检查上传文件是否存在并修正执行权限
- 执行板端测试命令并采集输出
- 汇总真实板端运行结果
适用场景:
- 上传后立即在板卡上运行应用程序
- 通过 telnet 做板端冒烟测试
- 将“编译 + 上传 + 运行验证”串成完整闭环
- 编译前提: 确保 SylixOS 工具链已安装并在 PATH 中
- 网络要求: 上传前确保能 ping 通板卡 IP
- FTP 服务: 板卡上必须运行 FTP 服务
- Telnet 服务: 板卡测试前确保
23端口可访问 - 文件权限: FTP 上传子 skill 现已默认在上传后执行远端
chmod 755,不要省略该步骤 - 路径规范: config.mk 中必须使用绝对路径,不能使用相对路径
- 构建入口: companion project 优先使用
make all|clean -f "$BASE/libsylixos/SylixOS/mktemp/multi-platform.mk";未做 wrapper 的本地Makefile直接执行make clean可能只清掉build//Release,不会清掉真实的build/<PLATFORM>/Release - 输出目录: 标准输出目录是
build/<PLATFORM>/Debug/或build/<PLATFORM>/Release/,例如build/ARM64_GENERIC/Release/ - 新建工程元数据: 对于后续会反复上传和板测的 SylixOS 新工程,创建时就应生成
.reproject,至少包含DeviceSetting、OutputSetting和一个正确的UploadPath - 过程文档记录: 仅对非平凡驱动移植、长期验证、多轮板端调试,或用户明确要求留痕时维护过程文档;普通成功重编默认不额外建过程文档
- 长期测试轮次: 对于长时间板卡验证问题,重大策略变更、绑核变更或核心二进制变更前优先 reboot,再进入下一轮验证
- BSP 镜像替换: 替换
/boot下的 BSP 镜像时,先备份当前镜像,再上传新镜像;上传后执行sync、显式reboot,并在重启后核对 build time 是否与新镜像一致 - 仓库维护约束: 每次新增或创建 skill 文件时,同步更新
README.md,确保人类读仓库时能看到新 skill 的用途和位置 - 普通编译日志: 普通成功重编默认不单独落构建日志文件;仅在用户要求、需要保留失败现场、或验证类任务需要结果文件时才额外保存日志
- BSP 板级包选择: 若 BSP 顶层
Makefile通过BOARD_LIST选择板级包,且用户明确指定目标板级包,优先直接修改Makefile中的BOARD_LIST,而不是长期依赖命令行BOARD_LIST=...覆盖
本仓库采用模块化设计,便于后续扩展:
- 每个子 skill 独立维护
- 主 skill 负责路由、协调和跨 skill 过程记录约束
- 完整链路推荐顺序为:编译 → 上传 → telnet 测试
- FTP 上传默认入口为
sylixos_ftp_upload/scripts/ftp_sylixos_upload.py,统一处理路径解析、权限修正和最终sync - 可随时添加新的子 skill(如调试、专项验证等)