By simiancraft
Run Android UI tests with Maestro on headless emulators, capture screenshots and logcat, and automate web testing with Playwright for smoke tests, camera/mask verification, and animated GIF creation. Also provides planning document generation and React composition patterns for complex UIs.
Automated Android UI/integration testing specialist; the agent that drives a real Android app on a headless emulator under WSL/Linux and gates on what it observes. Use when the task is "run the app on an emulator", "smoke-test a screen", "drive the Android UI", "reproduce a tap-and-crash / ANR", "automate an Android flow", "set up Android UI testing", "write a Maestro flow", "verify a change on Android without a physical device", or "test the camera/segmentation/mask on Android". Owns the boot → install → drive → assert loop: KVM AVD bring-up, APK acquisition (local gradle or EAS artifact), Maestro driving (tap-by-testID/label, wait, assert), and logcat + screenshot gating. Knows its own ceiling: it validates no-crash, navigation, wiring, flows, and effect toggles, and it does NOT validate real FPS/perf, true camera/mic fidelity, or network quality; those stay device passes and it says so plainly. Loads the android-emulator-harness skill (and android-emulator-mask-testing for camera work) before acting.
Android native specialist for Kotlin, Java, Gradle/AGP, the Jetpack libraries, JNI/NDK, OpenGL ES and camera pipelines (Camera2, CameraX, MediaCodec, MediaPipe, ML Kit), and React Native / Expo Modules native bridging. Use when the task touches `android/**` (`*.kt`, `*.java`, `*.gradle` / `*.gradle.kts`, `AndroidManifest.xml`, `libs.versions.toml`, ProGuard / R8 rules), JNI / `CMakeLists.txt`, RN legacy bridge or TurboModules / Fabric / Codegen, the Expo Modules Kotlin DSL, Kotlin coroutines / Flow and threading primitives, manifest-merger conflicts, `minSdk` / `compileSdk` / `targetSdk` drift, R8 reflection breakage, AGP / Kotlin Gradle Plugin / JDK version mismatches, autolinking under Expo + React Native, or "compiles locally but fails on EAS" symptoms. Two modes: implement (write/edit Kotlin or Gradle, verify with `compileDebugKotlin`) or review (audit for idiom, lifecycle, threading, and resource-management correctness). Loads upstream docs (kotlinlang.org, developer.android.com, the React Native and Expo Modules guides) when prior knowledge is insufficient.
Bring up an Android app in a headless emulator on Linux/WSL and drive it for automated integration testing, the Android analog of Playwright for web. Boots an AVD under KVM, installs an APK (standalone or dev-client+Metro), drives the UI with Maestro (resilient tap-by-label/wait/assert), and gates on logcat + screenshots that come back for inspection. Use for ANY Android/Expo/React-Native project (not just one app) when the task is "run the app on an emulator", "drive the Android UI", "smoke-test a screen", "reproduce a tap-and-crash", "automate an Android flow", or "set up Android UI testing". Project-agnostic base; layer a domain skill on top for specialized inputs (see android-emulator-mask-testing for camera/segmentation). Validated on Linux/WSL with KVM, Maestro 2.x, and JDK 17.
Specialization of android-emulator-harness for CAMERA / segmentation testing: get a real PERSON in front of the emulator camera so MediaPipe / ML Kit selfie segmentation produces an actual mask, then verify background-replacement / blur / shader effects and tune mask threshold by vision. Use when the task is "test the mask", "verify segmentation", "tune mask threshold", "check a camera/background effect on Android", or any time an app must SEE a human through the emulator camera without a physical device. Read android-emulator-harness FIRST for bring-up, drive, and assert; this skill only overrides the camera-specific pieces. Validated on Linux/WSL with a 32-bit x86 emulator image and MediaPipe/ML Kit segmentation.
Plans self-destruct when shipped (the Inspector Gadget Rule). Use this skill to draft tactical, hand-off-ready planning docs with a 150-word Goal cap, atomic commit steps with verification gates, before/after file trees, and a two-key handshake before deletion. Trigger on "plan this", "write a plan for X", "draft a plan", "make a plan", "plan a refactor", "plan a migration", "plan a deprecation", "design the implementation", "write a PLAN.md", or when scoping multi-commit feature work that needs hand-off. Skip for: subscription plans, query execution plans, quarterly roadmaps, billing plans, sprint plans, test plans (QA matrices).
Specialization of playwright-harness for CAMERA / segmentation testing in the browser: put a real PERSON in front of getUserMedia so MediaPipe / selfie segmentation produces an actual mask, then verify background-replacement / blur / shader effects by vision. Use when the task is "test the mask on web", "verify segmentation in the browser", "feed the camera a person fixture", "check a camera/background effect in Chrome", or any time a web app must SEE a human through the webcam without physical hardware. Read playwright-harness FIRST for script conventions and execution; this skill only adds the camera-feed pieces. The web analog of android-emulator-mask-testing. Validated on Linux/WSL, headless Chromium, against MediaPipe Selfie Segmentation.
Specialization of playwright-harness for capturing an ANIMATED GIF of web content: drive a page/canvas/WebGL animation, grab a sequence of frames, and encode a looping GIF. Use when the task is "make a gif of this", "grab a gif of the demo/animation/shader", "record the canvas as a gif", or "capture a looping clip for a PR/README/issue"; any time a still screenshot is not enough. Read playwright-harness FIRST for script conventions and execution. For the quality/size dials (preventing deep-fried color, janky frame rate, or oversized files) read references/gif-optimization.md rather than guessing. Validated on Linux/WSL, headless Chromium + ANGLE, against WebGL canvas content.
Uses power tools
Uses Bash, Write, or Edit tools
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Curated Claude Code skills and agents. Only what we run in production.
Opinionated Claude Code skills and agents from simiancraft. Quality-bar-only.
A planning methodology that produces something like this, cold-handoff-ready and disposable by design:
# Split monolithic resource-actions hook into per-action files
**Status:** Draft
**Scope:** subsystem
**Date:** 2026-04-15
**Last reviewed:** 2026-04-15
**Context:** A single 870-line hook serves five mutations; one mutation's logic
has broken another's twice in the last quarter.
## Goal
Replace the monolith with a per-action structure where each mutation owns its
own home, composed by a thin dispatcher that preserves today's consumer-facing
shape. Done = no monolith remains; consumer call sites are byte-identical to
today; existing test bodies pass without modification.
## File structure: after
**Legend:** 🆕 new · ✏️ rewritten
```
features/resources/
├── ✏️ use-resource-actions.ts // dispatcher only, ~60 lines
└── 🆕 actions/
├── 🆕 create.ts // extracted from use-resource-actions.ts
├── 🆕 rename.ts // extracted from use-resource-actions.ts
└── 🆕 ...
```
## Commits
### Commit 1: Scaffold actions/ folder
**Files created:** `features/resources/actions/{create,rename,...}.ts`
**Gate:** Project full validation passes.
### …
### Commit N+1: Delete this plan
- Delete `features/resources/split-resource-actions-hook.md`.
**Gate:** Project validation passes. Repo contains no references to the plan file.
The plan file gets deleted as the last commit of the work it described. Two-key handshake before deletion. 150-word Goal cap. Atomic commits with verification gates.
/plugin marketplace add simiancraft/simiancraft-skills
/plugin install simiancraft-skills@simiancraft-skills
Update later:
/plugin marketplace update simiancraft-skills
how-to-plan: methodology for tactical, hand-off-ready planning docs. Goal-as-north-star, atomic commit steps with verification gates, before/after file trees with a 10-symbol legend, and the Inspector Gadget Rule.zone-composer: React composition pattern for domain features (screens, panels, tools, editors). A chassis owns data and state branching via flat early returns; presentational leaves take named zones instead of flag props; mutations live in actions/; layouts are polymorphic. Lean core plus six task references (key patterns, polymorphic layouts, FSM wizards, refactoring, GraphQL fragments, code style).android-emulator-harness: bring up an Android app in a headless emulator on Linux/WSL and drive it for automated integration testing, the Android analog of Playwright for web. Boots an AVD under KVM, installs an APK, drives the UI with Maestro, and gates on logcat plus screenshots.android-emulator-mask-testing: specialization of the harness for camera and segmentation testing. Puts a real person in front of the emulator camera so MediaPipe / ML Kit selfie segmentation produces a mask, then verifies background-replacement, blur, and shader effects. Ships a pre-framed subject fixture.playwright-harness: the operational trunk for browser work, the web analog of the emulator harness. Writes a script, launches Chromium (real GPU under WSLg via ANGLE when WebGL matters), drives the page, and gates on screenshots plus collected page errors. Two references carry the depth: interactions.md (locators, actions, waits, assertions) and flows.md (login and session reuse, forms, responsive sweeps, link-checking, network stubbing). Specializations layer on top.playwright-camera-mask-testing: specialization of the harness for camera and segmentation testing in the browser. Feeds a real person through getUserMedia so MediaPipe selfie segmentation produces a mask, then verifies background-replacement, blur, and shader effects by vision. Ships a webcam-shaped subject fixture and an empty-scene negative case.playwright-gif-capture: specialization of the harness for capturing an animated GIF of a page, canvas, or WebGL animation. Drives the clock deterministically, grabs frames, and encodes a looping GIF, with a reference on the color, frame-rate, and size tradeoffs so the output is not deep-fried, janky, or oversized.npx claudepluginhub simiancraft/simiancraft-skills --plugin simiancraft-skillsHarness-native ECC operator layer - 67 agents, 271 skills, 92 legacy command shims, reusable hooks, rules, selective install profiles, and production-ready workflows for Claude Code, Codex, OpenCode, Cursor, and related agent harnesses
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Tools to maintain and improve CLAUDE.md files - audit quality, capture session learnings, and keep project memory current.
Comprehensive feature development workflow with specialized agents for codebase exploration, architecture design, and quality review
A growing collection of Claude-compatible academic workflow bundles. Covers scientific figures, manuscript writing and polishing, reviewer assessment, citation retrieval, data availability, paper reading, literature search, response letters, paper-to-PPTX conversion, and evidence-grounded Chinese invention patent drafting. Rules are organized as reusable skill folders with explicit workflows and quality checks.
Persistent file-based planning for AI coding agents. Crash-proof markdown plans (task_plan.md, findings.md, progress.md) that survive context loss and /clear, with an opt-in completion gate and multi-agent shared state. Manus-style. Works with Claude Code, Codex CLI, Cursor, Kiro, OpenCode and 60+ agents via the SKILL.md standard. Includes Arabic, German, Spanish, and Chinese (Simplified and Traditional).