用途:该技能用于在 XerahS(ShareX 的 Avalonia UI 实现)仓库中创建或编辑 C# 文件及项目配置时,统一遵循许可证头与项目配置约定,不适用于发布工作流。
主要能力:
- 许可证头:新建或编辑 .cs 文件时,在文件顶部加入 GPL v3 许可证头(Avalonia 实现版本),以 #region License Information (GPL v3) 包裹注释块,内容包含 XerahS 说明、版权年份、GPL 条款与免责声明。
- Windows 目标框架:配置面向 Windows 的项目时,使用包含平台版本的显式 TFM:net10.0-windows10.0.26100.0;不要使用 net10.0-windows 加单独 TargetPlatformVersion 属性的写法,以避免 CsWinRT 全解决方案构建时出现“Windows Metadata not provided”错误。
- SkiaSharp 版本:SkiaSharp 由根目录 Directory.Packages.props 集中管理,托管包与原生包保持同一当前版本;新项目优先使用共享中央版本,不引入项目内联版本;出现版本冲突时对齐根中央包管理条目,而非重新引入旧的 2.88.9 固定版本。该约定适用于所有项目,包括 XerahS.* 与 ShareX.ImageEditor。
使用方式与通用规则:遵循各项目区域既有模式,改动保持最小且聚焦;仅在解释非显而易见逻辑时添加简短注释。修改代码后必须运行 dotnet build 并修复所有构建错误,这是完成编码任务前的强制检查。Git 工作流、提交格式与版本号变更遵循 .ai/skills/git-workflow/SKILL.md。不要删除或重写无关内容;需求不明确时明确标注假设。修改可执行代码时建议相关测试,新增测试需符合现有测试约定。行为或用法变化时更新或新增文档,技术类 .md 文件默认保存到 docs/technical,不放在根目录。不要包含密钥或令牌,避免在示例中记录敏感数据。输出时总结改动内容与位置,仅在自然且可操作时给出后续步骤。
适用场景:在 XerahS 仓库中进行 C# 代码或项目文件改动时。
限制:不用于发布工作流;具体版本号、构建命令与文档路径以仓库实际约定为准,资料未提供更多细节。