// category
Mobile Development
iOS, Android, and cross-platform mobile app development
59 skills in this category
59 matches
Expert in building portfolios that actually land jobs and clients - not just showing work, but creating memorable experiences. Covers developer portfolios, designer portfolios, creative portfolios, and portfolios that convert visitors into opportunities. Use when: portfolio, personal website, showcase work, developer portfolio, designer portfolio.
Master Flutter development with Dart 3, advanced widgets, and multi-platform deployment.
>-
Investigate CI failures for dotnet/maui PRs — build errors, Helix test logs, and binlog analysis. Use when asked about failing checks, CI status, test failures, 'why is CI red', 'build failed', 'what's failing on PR', Helix failures, or device test failures.
>-
MAUI-specific dependency flow rules, channel conventions, and feed lookup workflows. Use when asked about darc, BAR, Maestro, feeds for .NET MAUI, build promotion, asset lookup, channel mappings, or dependency flow for dotnet/maui. Wraps the maestro-cli skill and maestro MCP tools with MAUI-specific guardrails.
Evaluates tests added in a PR for coverage, quality, edge cases, and test type appropriateness. Checks if tests cover the fix, finds gaps, and recommends lighter test types when possible. Prefer unit tests over device tests over UI tests. Triggers on: 'evaluate tests in PR', 'review test quality', 'are these tests good enough', 'check test coverage', 'is this test adequate', 'assess test coverage for PR'.
(No description provided in SKILL.md frontmatter.)
Finds open PRs in the dotnet/maui and dotnet/docs-maui repositories that are good candidates for review, prioritizing by milestone, priority labels, partner/community status.
Queries and triages open GitHub issues that need attention. Helps identify issues needing milestones, labels, or investigation.
Analyzes a completed PR to extract lessons learned from agent behavior. Use after any PR with agent involvement - whether the agent failed, succeeded slowly, or succeeded quickly. Identifies patterns to reinforce or fix, and generates actionable recommendations for instruction files, skills, and documentation.
Finalizes any PR for merge by verifying title/description match implementation AND performing code review for best practices. Use when asked to "finalize PR", "check PR description", "review commit message", before merging any PR, or when PR implementation changed during review. Do NOT use for extracting lessons (use learn-from-pr), writing tests (use write-tests-agent), or investigating build failures (use azdo-build-investigator and ci-analysis).
End-to-end PR reviewer for dotnet/maui. Orchestrates 3 phases — Pre-Flight, Try-Fix, Report. Gate runs separately before this skill. Use when asked to 'review PR #XXXXX', 'work on PR #XXXXX', or 'fix issue #XXXXX'.
Build and run .NET MAUI device tests locally with category filtering. Supports iOS, MacCatalyst, Android on macOS; Android, Windows on Windows. Use TestFilter to run specific test categories.
Submit and monitor .NET MAUI unit tests on Helix infrastructure. Supports running XAML, Resizetizer, Core, Essentials, and other unit test projects on distributed Helix queues.
Build, pack, and run .NET MAUI integration tests locally. Validates templates, samples, and end-to-end scenarios using the local workload.
Attempts ONE alternative fix for a bug, tests it empirically, and reports results. ALWAYS explores a DIFFERENT approach from existing PR fixes. Use when CI or an agent needs to try independent fix alternatives. Invoke with problem description, test command, target files, and optional hints.
Verifies tests catch the bug. Auto-detects test type (UI tests, device tests, unit tests) and dispatches to the appropriate runner. Supports two modes - verify failure only (test creation) or full verification (test + fix validation).
Creates UI tests for a GitHub issue and verifies they reproduce the bug. Iterates until tests actually fail (proving they catch the issue). Use when PR lacks tests or tests need to be created for an issue.
Creates XAML unit tests for GitHub issues in the Controls.Xaml.UnitTests project. Tests XAML parsing, compilation (XamlC), and source generation. Use when testing XAML-specific behavior, not UI interactions.
Build, test, lint, and deploy commands for the Bitwarden Android project. Use when running tests, building APKs/AABs, running lint/detekt, deploying, using fastlane, or discovering codebase structure. Triggered by "run tests", "build", "gradle", "lint", "detekt", "deploy", "fastlane", "assemble", "verify", "coverage".
This skill should be used when implementing Android code in Bitwarden. Covers critical patterns, gotchas, and anti-patterns unique to this codebase. Triggered by "How do I implement a ViewModel?", "Create a new screen", "Add navigation", "Write a repository", "BaseViewModel pattern", "State-Action-Event", "type-safe navigation", "@Serializable route", "SavedStateHandle persistence", "process death recovery", "handleAction", "sendAction", "Hilt module", "Repository pattern", "implementing a screen", "adding a data source", "handling navigation", "encrypted storage", "security patterns", "Clock injection", "DataState", or any questions about implementing features, screens, ViewModels, data sources, or navigation in the Bitwarden Android app.
Instructions for capturing UI state, comparing with mocks, and interacting with an Android device using MCP tools backed by ADB.
Architecture design and phased implementation planning for Bitwarden Android. Use when planning implementation, designing architecture, creating file inventories, or breaking features into phases. Triggered by "plan implementation", "architecture design", "implementation plan", "break this into phases", "what files do I need", "design the architecture".
Requirements gap analysis and structured specification for Bitwarden Android. Use when refining requirements, analyzing specs, identifying gaps, or producing structured specifications from tickets or descriptions. Triggered by "refine requirements", "gap analysis", "spec review", "requirements analysis", "what's missing from this spec", "analyze this ticket".
Android-specific code review checklist and MVVM/Compose pattern validation for Bitwarden Android — use this for any review task, even if the user doesn't explicitly ask for a "checklist". Detects change type automatically and loads the right review strategy (feature additions, bug fixes, UI refinements, refactoring, dependency updates, infrastructure). Triggered by "review PR", "review changes", "review this code", "check this code", "Android review", code review requests on Kotlin/ViewModel/Composable/Repository/Gradle files, or any time someone asks to look at a diff, PR, or code changes in bitwarden/android.
This skill should be used when writing or reviewing tests for Android code in Bitwarden. Triggered by "BaseViewModelTest", "BitwardenComposeTest", "BaseServiceTest", "stateEventFlow", "bufferedMutableSharedFlow", "FakeDispatcherManager", "expectNoEvents", "assertCoroutineThrows", "createMockCipher", "createMockSend", "asSuccess", "Why is my Bitwarden test failing?", or testing questions about ViewModels, repositories, Compose screens, or data sources in Bitwarden.
Scans Android APKs for Firebase security misconfigurations including open databases, storage buckets, authentication issues, and exposed cloud functions. Use when analyzing APK files for Firebase vulnerabilities, performing mobile app security audits, or testing Firebase endpoint security. For authorized security research only.
用于跨模块开发、排查链路归属、判断某个需求应该落在哪个 BK-CI 模块,或需要快速理解流水线全链路协作时使用。单模块修改时优先读取对应模块 skill,而不是停留在这里。
处理 BK-CI Agent 构建机侧能力时使用,例如守护进程、心跳、Ask 轮询、任务拉起、升级更新和与 Dispatch/Worker 的协作。当用户要改构建机宿主侧行为而不是 Worker 执行细节时优先使用。
设计 BK-CI API 契约时使用,例如 Resource 路径设计、HTTP 方法选择、请求响应对象、错误码和版本策略。当用户要定义接口而不是实现业务逻辑时优先使用。
处理 BK-CI 制品上传下载、制品元数据、BkRepo 或磁盘后端存储、文件任务和清理链路时使用。当用户提到构建产物、制品归档、下载令牌、报告文件、BkRepo 集成或制品清理时优先使用。
处理 BK-CI Auth 模块时使用,例如 RBAC 权限校验、用户组与资源管理、IAM 集成、授权迁移和 OAuth2 认证。当用户要改权限平台实现而不是单次权限模型变更时优先使用。
获取陌生业务知识并沉淀为 BK-CI skill 或架构文档时使用,例如阅读 iWiki、结合代码交叉验证、提炼模块边界和重写知识文档。当用户要先理解业务再写文档时优先使用。
处理 BK-CI 后端中的横切技术实践时使用,例如 AOP、分布式锁、重试、参数校验、性能监控、定时任务和审计日志。当用户要实现这类框架级实践而不是具体业务功能时优先使用。
设计 BK-CI 数据库表、DDL 脚本、索引、分表或数据归档策略时使用。当用户提到表结构、字段设计、索引优化、SQL 脚本命名、分片、归档迁移时优先使用。
在 BK-CI 中判断何时使用工厂、策略、责任链、观察者、模板方法、装饰器等设计模式时使用。当用户要重构可扩展结构、统一模式选型、理解项目里的模式落点时优先使用。
处理 BK-CI 构建调度时使用,例如构建机选择、队列推进、配额控制、第三方构建机调度、Docker/Kubernetes 调度。当用户要改任务分配策略而不是 Agent/Worker 执行细节时优先使用。
编写 BK-CI Git 提交信息和整理提交边界时使用,例如选择 commit type、撰写 commit message、判断是否拆分提交和准备 PR 前自检。当用户要提交代码而不是讨论实现细节时优先使用。
编写 BK-CI Go Agent 代码时使用,例如 Agent API 调用、任务处理、并发模式、错误处理、日志记录和宿主侧工具开发。当用户要写 Go 构建机侧代码而不是后端 Kotlin 服务时优先使用。
处理 BK-CI AI 编码任务分流时使用,例如判断日常任务是否需要 OpenSpec、多 Agent、影响面清单或验证清单。
通过 MCP 管理 BK-CI 流水线构建时使用,例如查询构建历史、获取启动参数、查看构建状态和在确认后触发构建。当用户要操作现有流水线而不是修改代码实现时优先使用。
处理 BK-CI 微服务底层基础设施时使用,例如条件配置、事件驱动、服务间通信、国际化与日志规范。当用户要搭多环境配置、异步事件、Feign 调用或统一 i18n/日志时优先使用。
修改 BK-CI IAM RBAC 权限模型时使用,例如新增资源类型、设计操作列表、配置 IAM 资源、补迁移数据和验证回调链路。当用户要变更权限模型而不是普通权限调用时优先使用。
理解或修改 BK-CI 流水线 Model、Stage、Container、Element 结构时使用。当用户提到流水线模型、Stage/Job/Task 数据结构、模型扩展、模型校验、版本兼容、YAML 与 Model 转换时优先使用。
开发 BK-CI 流水线插件时使用,例如新增 Atom、编写 `task.json`、定义输入输出、处理多语言运行时、调试和发布插件。当用户要做插件本体而不是执行器或流水线模型时优先使用。
处理 BK-CI 流水线模板的创建、版本管理、实例化、权限控制、PAC 模板和商店集成时使用。当用户提到模板复用、模板版本、批量实例化、模板迁移、商店模板或 PAC 模板时优先使用。
处理 BK-CI 流水线变量时使用,例如变量生命周期、运行时传递、跨任务更新、字段扩展和 YAML 与内部模型转换。当用户要改变量主链路而不是普通流水线步骤时优先使用。
处理 BK-CI Process 流水线核心模块时使用,例如流水线 CRUD、构建启动、运行时状态、引擎控制、事件驱动和数据库持久化。当用户要改流水线主链路而不是外围支撑模块时优先使用。
处理 BK-CI 项目创建、项目属性、成员权限、项目标签、项目分片和项目资源边界时使用。当用户提到项目管理、projectId 含义、项目配置、成员管理或项目迁移时优先使用。
处理 BK-CI 代码库接入、代码库授权、Webhook、SCM 集成、PAC 开关与仓库类型差异时使用。当用户提到 Git/SVN/GitHub/TGit、Webhook、仓库认证、PAC 代码库或提交记录时优先使用。
编写、压缩或重构 BK-CI skill 时使用,例如收紧 `description`、统一主文件骨架、下沉重内容到 `reference/`,并固化渐进式披露规则。当用户要新增或规范化 skill 时优先使用。
处理 BK-CI 研发商店中的插件、模板、镜像等组件发布、审核、安装、统计和扩展点机制时使用。当用户提到商店组件上架、插件发布、模板分发、安装升级或市场能力时优先使用。
处理 BK-CI 支撑服务模块时使用,例如 Ticket、Environment、Notify、Log、Quality、OpenAPI 等能力的定位、边界和入口选择。当用户要判断该去哪个支撑模块而不是修改核心流水线链路时优先使用。
为 BK-CI 代码编写单元测试时使用,例如 JUnit5、MockK、测试组织、依赖 Mock、异常校验和 TDD 场景。当用户要补测试或用测试驱动实现时优先使用。
使用 BK-CI 中的具体工具组件时使用,例如 JWT、安全认证、表达式解析、线程池循环工具和责任链实现。当用户要直接复用这些组件而不是设计框架级实践时优先使用。
处理 BK-CI Worker 执行器时使用,例如任务领取与执行、插件运行、日志上报、环境变量传递和制品归档。当用户要改 Worker 执行链路而不是插件定义或调度策略时优先使用。
处理 BK-CI YAML 流水线导入导出、YAML 与 Model 双向转换、PAC、模板引用与 YAML 校验时使用。当用户提到 YAML 流水线、PAC、模板化、注释保留、表达式解析或转换调试时优先使用。
Use to score territory scenarios for fairness, whitespace, and productivity.