Skills
收录 96,770 个为 Agent 打包的专项能力与操作指引,复制一行命令即可安装。
测试与质量
Golang 代码风格约定——行长与换行、变量声明、控制流清晰度,以及注释何时有帮助或有害。编写或审查 Go 代码、询问风格或清晰度,或制定项目编码标准时使用。不适用于命名规范(→参见 `samber/cc-skills-golang@golang-naming` 技能)、linter 配置(→参见 `samber/cc-skills-golang@golang-lint` 技能)或文档注释(→参见 `samber/cc-skills-golang@golang-documentation` 技能)。
适用于生产环境的 Golang 测试——表驱动测试、testify 测试套件与模拟、并行测试、模糊测试、测试夹具、使用 goleak 检测 goroutine 泄漏、快照测试、代码覆盖率、集成测试和符合惯例的测试命名。编写或审查 Go 测试、选择测试方法、设置 Go 测试 CI,或调试不稳定/缓慢的测试时使用。testify 专用 API 请参阅 `samber/cc-skills-golang@golang-stretchr-testify`;测量方法请参阅 `samber/cc-skills-golang@golang-benchmark`。
驱动运行在 Limrun 云端 iOS 模拟器上的应用:启动、点击、输入、读取无障碍元素树、读取应用日志和模拟器系统日志、截屏、录制视频、将应用连接到本地服务或专用隧道、将视频文件用作摄像头画面、通过用户代理转发所有流量并信任其 CA、设置剪贴板、读写用户默认设置、发送通知,以及运行定时操作链。构建后(使用任何构建器均可),当用户想在模拟器上查看、测试或操作应用,或说“show me a screenshot”“tap”“run the UI test”“record a video”“read the logs”“connect localhost”“reach my local server from the simulator”“route all traffic through my proxy”“trust my CA”“mock the camera”“paste into the app”“change the language”“simulate Face ID”或“launch on simulator”时使用。要先构建应用,请使用 limrun-xcode-bazel(Bazel 工作区)或 limrun-xcode(xcodebuild 项目)。
在任意环境(Linux、Windows、macOS、VM、容器)中,使用远程 Xcode 通过 `lim xcode build` 而非本地 xcodebuild 构建 iOS / Apple 应用,使用 `lim xcode run` 运行项目命令,或使用 `lim xcode test` 运行 XCTest 测试套件。适用于非 Bazel 项目(`.xcodeproj` / `.xcworkspace`、使用被 git 忽略项目的 XcodeGen `project.yml`、React Native / Expo 原生构建),当用户想要构建、编译、运行代码生成或 Make 目标、测试、查看构建日志、重新加载、生成预览构建或发布签名设备 IPA 时使用。若要在模拟器上运行、点击、截图或以其他方式交互,请使用 limrun-ios-simulator。Bazel 工作区请使用 limrun-xcode-bazel。
使用 `lim ios maestro`,在 Limrun 云端 iOS 模拟器上运行 Maestro YAML 流程,可从任何环境(Linux、Windows、macOS、VM、容器)操作。用户想在 iOS 上运行、编写或调试 Maestro 流程或 `maestro test`,将现有 Maestro 测试套件迁移到远程模拟器,或询问使用 Maestro 进行 UI 测试时使用。目前仅支持 iOS 模拟器。对于 Detox 测试套件,使用 limrun-detox-testing;若要在不使用测试框架的情况下驱动模拟器,使用 limrun-ios-simulator。
用于防范意外错误的 Golang 防御性编码——nil panic、typed-nil 接口、`append` 底层数组别名、静默的 int64 到 int32 截断、浮点数 `==` 比较、循环内的 `defer`、切片和 map 的防御性副本,以及易用的零值。当 Go 程序因 nil map 写入或 nil 指针解引用而 panic、审查代码的 nil 安全性、数值转换溢出或资源生命周期,或设计零值必须安全的类型时使用。不适用于使用 goroutine、通道或 sync 原语设计并发访问(→参见 `samber/cc-skills-golang@golang-concurrency` skill);不适用于注入、弱加密或秘密泄漏等可利用漏洞(→参见 `samber/cc-skills-golang@golang-security` skill);也不适用于调试已经出错的程序(→参见 `samber/cc-skills-golang@golang-troubleshooting` skill)。
Golang 项目的 lint 最佳实践和 golangci-lint 配置——运行 linter、配置 .golangci.yml、使用 nolint 指令抑制警告、解读 lint 输出和选择 linter。在配置 golangci-lint、询问 lint 警告或 nolint 抑制、设置代码质量工具或选择 linter 时使用。用户提到 golangci-lint、go vet、staticcheck 或 revive 时也使用。不适用于将 lint 步骤接入 GitHub Actions 流水线(→参见 `samber/cc-skills-golang@golang-continuous-integration` skill)。
系统地排查 Golang 程序问题——找出并修复根本原因。Go 代码出现 bug、崩溃、死锁、竞态或意外行为时使用。涵盖调试方法、常见 Go 陷阱、测试驱动调试、pprof 设置与采集、Delve、竞态检测、GODEBUG 跟踪和生产环境调试。遇到任何“出了问题”的情况都从这里开始。不适用于解读性能分析结果或基准测试(→ 查看 `samber/cc-skills-golang@golang-benchmark` skill)、应用优化模式(→ 查看 `samber/cc-skills-golang@golang-performance` skill),或设计新代码(防御性编码请查看 `samber/cc-skills-golang@golang-safety` skill;并发设计请查看 `samber/cc-skills-golang@golang-concurrency` skill)。
操控运行在 Limrun 云端 Android 模拟器上的应用:安装 APK;启动和终止应用并获取崩溃报告;点击、输入、读取 UI 元素树、截图、录制视频、注入麦克风音频、调整网络带宽、读取应用日志、运行 shell 命令、传输文件;通过本机隧道转发应用的网络目标,并进行 HTTP 检查和 HAR 捕获;通过专用隧道访问专用网络;将所有流量通过用户代理发送;信任自定义 CA 证书;并通过 CLI 隧道使用 adb,以访问完整 logcat 和交互式工具。应用构建完成后(使用 limrun-gradle 或其他构建器),当用户想在模拟器上查看、测试或操作应用,或提出“给我看截图”“点击”“在模拟器上运行”“检查 logcat”“录制视频”“检查网络流量”“将所有流量通过我的代理转发”或“从模拟器访问我的本地服务器”等需求时使用。若需先构建 APK 或 AAB,请使用 limrun-gradle。
将项目质量标准确立为书面契约,防止 Agent 悄悄降低标准。询问用户关注哪些维度;用户没有具体数值时提供合理的默认阈值;将所有内容记录在 CONSTRAINTS.md 中,并检查 diff 是否降低了标准,例如新增 @ts-ignore 或 eslint-disable 抑制项、跳过或删除测试、移除断言、留下未实现的存根、下调阈值。适用于尚无书面质量标准、用户要求“设置约束”或“定义标准”、用户希望将无障碍、Web 性能、覆盖率等关注维度设为强制约束、Agent 不断屏蔽检查或跳过测试以通过检查、不知道应设定何种覆盖率或性能阈值,或 Agent 编写了过多无人能读的代码等情况。
为测试和开发选择并创建合适的 Neon 分支类型。用户询问 Neon 分支、使用真实数据测试迁移、隔离测试环境、敏感数据的仅架构分支工作流、从父分支重置分支、分支过期与 CI/CD 分支生命周期,或通过 Neon CLI 或 Neon MCP 创建分支时使用。触发词包括“Neon branch”“test migrations safely”“branch production data”“schema-only branch”“reset branch”“branch per PR”和“sensitive data testing”。
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
