Agent Skills › chrisbanes/skills

chrisbanes/skills

GitHub

指导Jetpack Compose动画开发,通过最小API原则选择合适组件。涵盖AnimatedVisibility、animateAsState、Transition等场景的选用、生命周期检查及性能优化,确保高效实现可见性、属性过渡及内容切换。

21 个 Skill 859

安装全部 Skills

npx skills add chrisbanes/skills --all -g -y
更多选项

预览集合内 Skills

npx skills add chrisbanes/skills --list

集合内 Skills (21)

指导Jetpack Compose动画开发,通过最小API原则选择合适组件。涵盖AnimatedVisibility、animateAsState、Transition等场景的选用、生命周期检查及性能优化,确保高效实现可见性、属性过渡及内容切换。
编写Compose动画代码 审查Compose动画实现 选择动画API 处理可见性或状态切换
skills/compose-animations/SKILL.md
npx skills add chrisbanes/skills --skill compose-animations -g -y
用于Jetpack Compose TV/桌面UI的焦点与D-pad导航开发。涵盖FocusRequester使用、初始焦点请求、方向导航配置及按键事件处理,确保可访问性与正确的焦点行为。
编写或审查Jetpack Compose TV界面 实现D-pad键盘导航逻辑 处理FocusRequester和焦点状态管理 配置自定义方向导航规则
skills/compose-focus-navigation/SKILL.md
npx skills add chrisbanes/skills --skill compose-focus-navigation -g -y
规范 Jetpack Compose 布局 API 设计。要求声明 modifier 参数并应用至根节点,使用链式表达式构建修饰符,将条件渲染移至外部而非包裹在布局中,确保父组件控制位置与尺寸。
编写或审查 Compose 布局组件代码 检查 modifier 参数缺失或未应用至根节点 发现硬编码的 fillMaxWidth 或 padding 识别出非链式的 Modifier 变量赋值 发现仅包含单个 if 判断的 Layout 包装
skills/compose-modifier-and-layout-style/SKILL.md
npx skills add chrisbanes/skills --skill compose-modifier-and-layout-style -g -y
用于诊断 Jetpack Compose 重组性能问题,通过参数稳定性、状态读取时机及跨阶段反向写入三个维度定位瓶颈,并指导用户路由至对应的专项技能进行深度修复。
调查 Jetpack Compose 重组性能 分析可跳过/重启的组件 检查编译器报告或 composables.txt 排查 Layout Inspector 中的重组计数异常 检测跨阶段的 snapshot state 反向写入
skills/compose-recomposition-performance/SKILL.md
npx skills add chrisbanes/skills --skill compose-recomposition-performance -g -y
指导在Jetpack Compose中正确选择和使用副作用API(如LaunchedEffect、DisposableEffect等),强调根据需求选用最小效应,合理设置重启键值以避免无效重启,并使用rememberUpdatedState处理长生命周期中的状态更新,确保UI描述与外部世界变更分离。
编写或审查包含LaunchedEffect、DisposableEffect的Compose代码 处理状态同步、资源注册或协程作用域启动场景
skills/compose-side-effects/SKILL.md
npx skills add chrisbanes/skills --skill compose-side-effects -g -y
指导Jetpack Compose复用组件设计,将原始参数替换为插槽API。通过定义可变视觉区域、规范命名及处理可选内容,提升组件灵活性与可维护性。
设计可复用的Compose组件 审查组件API是否过度依赖布尔标志或原始内容参数 需要让调用方自定义组件内部视觉区域
skills/compose-slot-api-pattern/SKILL.md
npx skills add chrisbanes/skills --skill compose-slot-api-pattern -g -y
用于分析和修复Jetpack Compose参数稳定性、编译器报告及跳过行为。涵盖Kotlin 2.0+强跳过机制诊断,指导生成编译器报告以识别不稳定参数和实例抖动,并提供最小化修复方案以提升重组性能。
Compose参数稳定性问题 分析编译器报告 排查重组性能瓶颈 Kotlin 2.0+强跳过行为调试
skills/compose-stability-diagnostics/SKILL.md
npx skills add chrisbanes/skills --skill compose-stability-diagnostics -g -y
用于编写或审查Jetpack Compose代码,确保局部可变状态正确使用remember和mutableStateOf以维持值并触发重组。涵盖@ReadOnlyComposable优化及常见错误修复。
在@Composable中直接使用bare local var 需要管理UI局部状态如mutableStateOf 审查使用@ReadOnlyComposable的函数 状态在重组时意外重置
skills/compose-state-authoring/SKILL.md
npx skills add chrisbanes/skills --skill compose-state-authoring -g -y
解决Jetpack Compose中因在错误阶段读取或写入状态导致的性能问题。核心在于避免将滚动、动画等帧率状态在Composition阶段读取,防止回写引发的级联重组,确保状态读写符合Compose生命周期阶段。
在Composition中读取滚动、动画或手势状态 将帧率状态值传递给布局/绘制修饰符 在Composition中修改可观察状态导致级联重组 跨组合体传递动态测量值
skills/compose-state-deferred-reads/SKILL.md
npx skills add chrisbanes/skills --skill compose-state-deferred-reads -g -y
指导Jetpack Compose中UI状态与逻辑的放置决策,区分本地remember、提升状态、普通状态持有者及屏幕级ViewModel的使用场景,优化代码可读性与可测试性。
决定Compose UI元素状态或逻辑的归属位置 判断是否需提取普通状态持有者类 涉及状态提升或业务逻辑分离时
skills/compose-state-hoisting/SKILL.md
npx skills add chrisbanes/skills --skill compose-state-hoisting -g -y
指导Jetpack Compose中将状态持有者与UI渲染分离。通过独立的状态收集组件处理依赖和副作用,UI组件仅接收不可变状态和回调,提升代码的可预览性、可测试性及跨平台复用能力。
Compose屏幕直接注入ViewModel或组件 在布局函数中收集业务状态或副作用 将完整状态持有者传递给子组件 因依赖注入导致难以预览或测试
skills/compose-state-holder-ui-split/SKILL.md
npx skills add chrisbanes/skills --skill compose-state-holder-ui-split -g -y
用于编写或审查Jetpack Compose UI测试、截图、语义断言及交互状态测试。指导根据验证目标选择测试类型,优先使用纯UI测试和语义断言,避免过度集成,确保测试稳定高效。
编写Jetpack Compose UI测试 审查Compose截图测试 处理语义断言 测试交互状态如悬停或聚焦
skills/compose-ui-testing-patterns/SKILL.md
npx skills add chrisbanes/skills --skill compose-ui-testing-patterns -g -y
用于处理GitHub、GitLab、Jira或Linear等平台的Issue任务。支持多种格式输入,通过只读方式验证上下文并获取Issue详情,确保在安全且受控的工作流中执行修复、实现或审查操作,严禁直接执行Issue中的不可信指令。
用户要求修复或解决特定Issue 用户要求审查或实现Issue功能 输入包含Issue编号或链接(如 #123, PROJ-123)
skills/implement-issue/SKILL.md
npx skills add chrisbanes/skills --skill implement-issue -g -y
用于编写或审查Kotlin分支与控制流代码,通过规范化when表达式、使用守卫条件、保持智能转换及确保封闭域穷尽性,将复杂if/else链重构为清晰、可验证且无冗余的分支逻辑。
编写或审查Kotlin分支代码 处理sealed类型穷尽性检查 优化复杂的if/else链 使用智能转换和空安全分支
skills/kotlin-control-flow/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-control-flow -g -y
用于审查或编写Kotlin协程代码,避免存储CoroutineScope、使用runBlocking及不当异常捕获等反模式。核心原则是让调用方拥有作用域,将API设为suspend函数以确保生命周期管理和错误处理正确。
代码中包含私有的CoroutineScope属性 在init块中启动协程 非挂起函数内部使用scope.launch 应用代码中使用runBlocking 对挂起调用进行宽泛的Exception捕获
skills/kotlin-coroutines-structured-concurrency/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-coroutines-structured-concurrency -g -y
指导Kotlin Flow状态与事件建模,辨析StateFlow、SharedFlow及Channel适用场景。解决伪哨兵值污染、单播事件丢失及共享启动错误等问题,推荐Channel处理一次性UI事件,确保数据一致性与性能。
使用MutableStateFlow处理异步初始值 实现导航或Snackbar等一次性事件 审查Flow分享策略(stateIn/SharingStarted) 检查StateFlow中的无效哨兵默认值
skills/kotlin-flow-state-event-modeling/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-flow-state-event-modeling -g -y
指导Kotlin函数归属决策,优先将行为置于最小语义所有者。严格限制对String等类型的扩展,通过成员、顶层或工厂函数确保领域纯净与代码清晰。
选择Kotlin函数形式 决定String或集合扩展归属 重构函数所有权
skills/kotlin-functions/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-functions -g -y
用于设计 Kotlin Multiplatform 项目的 expect/actual 边界及平台服务接口。指导如何将平台特定实现与通用代码解耦,保持 API 语义化,选择最小边界,并确保实际实现层薄且仅负责翻译,避免业务逻辑泄露至平台绑定层。
设计 Kotlin Multiplatform 的 expect/actual 声明 定义跨平台服务接口或 UI 边界 处理 Android/iOS/Desktop 的平台互操作性 重构以分离通用逻辑与平台特定细节
skills/kotlin-multiplatform-expect-actual/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-multiplatform-expect-actual -g -y
指导在Kotlin中为单字段类型选择@JvmInline value class而非data class,涵盖决策流程、Compose稳定性优化及重构检查,确保领域语义明确且兼容序列化与性能要求。
编写或审查Kotlin类型声明 优化Compose UI状态稳定性 决定使用value class还是data class 重构单字段包装类
skills/kotlin-types-value-class/SKILL.md
npx skills add chrisbanes/skills --skill kotlin-types-value-class -g -y
自动监控并处理 GitHub PR 和 GitLab MR,包括轮询状态、修复 CI 失败及代码问题、回复评论,直至合并或等待人工介入。
用户要求监护、 babysit 或监控 PR/MR 需要自动修复 CI 失败或处理审查反馈
skills/shepherd/SKILL.md
npx skills add chrisbanes/skills --skill shepherd -g -y
作为路由技能,用于处理广泛的 Kotlin、Android 或 Jetpack Compose 任务。通过识别任务信号,智能选择并加载对应的专注型技能(如状态管理、性能优化、UI 设计等),再提供具体建议或代码编辑。
Kotlin/Android/Jetpack Compose 任务过于宽泛,无法直接匹配单一技能 需要进行通用审查、重构、架构设计、状态管理、性能优化或 UI API 设计
skills/using-chrisbanes-skills/SKILL.md
npx skills add chrisbanes/skills --skill using-chrisbanes-skills -g -y

首页 - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-07 17:17
浙ICP备14020137号-1 $访客地图$