Cherry Studio Regression Tests
CherryHQ/cherry-studio
Runs Cherry Studio's critical-path regression suite as deterministic Playwright E2E tests through a GitHub workflow on macOS and Windows runners.
Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping…
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-review --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .claude/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .claude/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .claude/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-reviewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .agents/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .agents/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .agents/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .cursor/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .cursor/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/PackmindHub/packmind.git --path scripts/michel/michel-packmind-engineer-review--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .gemini/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .gemini/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-reviewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .github/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .github/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .github/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install PackmindHub/packmind michel-packmind-engineer-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/scripts/michel/michel-packmind-engineer-review .opencode/skills/michel-packmind-engineer-review && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "michel-packmind-engineer-review" agent skill from https://github.com/PackmindHub/packmind/tree/main/scripts/michel/michel-packmind-engineer-review into .opencode/skills/michel-packmind-engineer-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "michel-packmind-engineer-review", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
michel-packmind-engineer-reviewReview an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping…
Michel Packmind Engineer Review is an agent skill from PackmindHub/packmind. Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping, hexagonal-architecture conformance, analytics-event wiring, UX copy, UI reactivity, CLI behavior, multi-tenancy safety, and more). Use this skill once an issue has been implemented and you have a diff to inspect — before opening or merging the PR. Trigger on 'review this implementation', 'engineer review', 'packmind…
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/engineer-checklist.md`).
It sits in Testing & QA, covering Linting and formatting, Multi-tenancy and Quality gates. It works with ESLint, GitHub and TypeScript. The repository describes itself as: Packmind seamlessly captures your engineering playbook and turns it into AI context, guardrails, and governance. The licence is Apache-2.0.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 67de8a2. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitghFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git and gh, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Michel Packmind Engineer Review loads about 2.7k tokens when it runs, and up to ~9.4k if it reads all its reference files. Until then it costs about 204 tokens; SKILL.md has 1,143 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from PackmindHub/packmind at commit 67de8a2, republished under its Apache-2.0 licence (© PackmindHub). 1,143 words, ~2,692 tokens.
.claude/skills/michel-packmind-engineer-review/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Review an implemented issue against the checks that human Packmind engineers actually raise in
review — the judgment calls that pass CI but still get flagged by a reviewer. The full catalogue lives
in references/engineer-checklist.md; this file is the workflow that applies it.
This skill only detects issues — it does not fix them. Findings are evidence-grounded and humble: a static reviewer can be wrong, so findings that need runtime confirmation say so, and uncertain calls are posed as questions, exactly as the team does ("Should not we…? WDYT?").
Linters check style, the compiler checks types, e2e tests check the happy path. None of them notice that
a PinSpaceUseCase extends AbstractMemberUseCase instead of AbstractSpaceMemberUseCase, that a
SpacePinnedEvent is emitted but no Amplitude subscriber listens to it, that a non-admin can reach an
admin page by URL, that a list doesn't refresh after a delete, or that an error toast leaks a raw UUID.
Those are the things reviewers spend their attention on. This skill encodes that attention so it runs
every time, consistently, instead of depending on who happens to review.
The review needs the intent (what the issue asked for) and the implementation (what changed).
If given an issue number or URL, fetch it:
gh issue view <number> --json number,title,body,commentsRead the title, body, and existing comments. Extract: the user-facing goal, any explicit rules/scenarios, mentioned edge cases, and named code references (backtick terms, event names, file paths). If the issue references an Example Mapping spec or links a PRD, note it. If no issue is available, ask the user for one; do not invent intent — without it you can only judge code quality, not whether the right thing was built.
Ignore CodeRabbit / bot noise. Auto-generated @coderabbitai plan and "Issue enrichment" blocks are
not human intent — skip them.
If the caller named an explicit scope, use it — don't auto-detect over it:
a1b2c3d~1..f4e5d6c): git diff --stat <range> and git diff <range>.gh pr diff <number> for the patch, gh pr view <number> for context.Otherwise auto-detect. This repo uses trunk-based development, so the change may be committed, staged, or unstaged. Build the changed-file set from all three and review their union:
git fetch origin main --quiet 2>/dev/null || true
BASE=$(git merge-base HEAD origin/main 2>/dev/null || git rev-parse HEAD~1)
git diff --stat "$BASE"...HEAD # committed since diverging from main
git status --porcelain # staged + unstaged
git diff "$BASE"...HEAD # full committed diff
git diff # unstaged
git diff --staged # stagedIf the union is empty, stop and ask the user which commit range or PR to review — a review of nothing is misleading.
Review the whole feature, not one slice. The team commits each sub-task separately (one logical increment per commit), so a single commit is usually a fragment — a data layer with no use case, a use case with no endpoint. Reviewing one commit in isolation produces phantom "it's not wired up!" findings for code that lands in the next commit. Always span the full set of commits that implement the issue (the merge-base range, or the range the caller gave), so you judge the finished feature, not a half-built one.
Record the changed files and the diff hunks — every finding must cite a real file:line from this set.
The checklist is organized by architectural layer because that scopes which checks apply. Map each changed file to a layer (a diff usually touches several):
| Layer | Paths | Checklist section |
|---|---|---|
| Domain / packages | packages/*/src/** (use cases, commands, adapters, events, services) | Domain |
| API | apps/api/src/** (NestJS controllers, modules) | API |
| Frontend | apps/frontend/** (routes, components, gateways) | Frontend |
| CLI | apps/cli/src/** | CLI |
| MCP | apps/mcp-server/src/** | API (same controller/error rules) |
| Tests & infra | **/*.spec.ts, apps/*-e2e*/**, Dockerfile*, .gitignore, migrations | Tests & Infra |
Cross-cutting checks always apply, regardless of layer.
Read references/engineer-checklist.md and apply the Cross-cutting section plus every layer section the
diff touched. Skip sections for layers the diff doesn't touch — don't pad the report with N/A items.
Each checklist entry gives you the concern, the signal (how to spot it by reading the diff/code), and a real example from past reviews. Follow the signal: grep the changed files, open neighbouring files for context, trace a command field from frontend gateway → controller body → use case, look for the matching event subscriber, and so on. A finding is only worth reporting if you can point at the specific code.
Confidence discipline — match how the team actually reviews:
QC ✅.Scope calibration — the issue almost always describes more than any single diff contains (UI copy, an endpoint, analytics, ordering). Before flagging "the issue asks for X but I don't see it," decide whether the diff under review is meant to be the complete implementation or a slice of a larger feature still landing in sibling commits/PRs. If you reviewed the full feature span (step 1) and a stated behavior is genuinely absent, that's a real gap — flag it. If you can't tell whether it's deferred, raise it as an open question ("Is X handled elsewhere / in a follow-up?"), not a HIGH defect. Severity reflects shipped behavior: missing wiring in a deliberate slice is a scope note; missing wiring in something claimed done is a real finding. Don't inflate "not here yet" into "broken."
For a large diff (many files across several layers), you may fan out: launch one review subagent per touched
layer (subagent_type: general-purpose), each given the issue summary, that layer's checklist section, and
the relevant changed files, then merge their findings. For a small diff, review inline.
Write to engineer-review-<issue-number>.md at the repo root (or engineer-review.md if there's no issue
number) — unless the caller specified a different output path, in which case use that. Use this structure:
# Engineer Review — #<issue> <title>
**Issue**: #<number> | **Branch**: <branch> | **Base**: <short-sha> | **Files changed**: <N>
**Layers touched**: <list>
## Verdict
<One of:
- `QC ✅` — nothing to flag.
- `LGTM otherwise ✅, <N> point(s) below` — minor/non-blocking findings only.
- `<N> finding(s) to address` — at least one blocking finding.>
## Findings
#### [HIGH|MEDIUM|LOW] <short title>
- [ ] **Category**: <category from the checklist, e.g. "Authorization scoping">
- **File**: `path/to/file.ts:line`
- **What**: <what's wrong / the question, in the reviewer's voice>
- **Why it matters**: <user-visible or maintainability consequence>
- **Suggested check/fix**: <concrete next step; a fix suggestion or how to confirm>
- **Confidence**: certain | needs confirmation (static review)
<repeat per finding, ordered by severity>
## Open questions
<Design/scope questions that aren't defects — "Should this be Admin-only?", "Is this the expected
behavior?". Omit the section if there are none.>
---
_Static review only — no code was executed. Findings marked "needs confirmation" should be reproduced
before acting. Automated checks (lint, build, e2e) are out of scope here by design._- [ ] — the team checks them off (- [x]) as they resolve.QC ✅ or LGTM otherwise ✅ when warranted. Don't hedge a clean
review into sounding alarming.After writing the file, print to the console: the verdict, finding counts by severity, the count needing confirmation, and the report path.
© PackmindHub, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (references) in scripts/michel/michel-packmind-engineer-review of PackmindHub/packmind.
Open the folder on GitHubat commit 67de8a2
Michel Packmind Engineer Review next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Michel Packmind Engineer Review this skillPackmindHub/packmind | 318 | — | ~2.7k | Automated safety check: Pass | Apache-2.0 | |
| Cherry Studio Regression TestsCherryHQ/cherry-studio | 53k | — | ~1.2k | Automated safety check: Pass | AGPL-3.0 | |
| Ha Frontend Testinghome-assistant/frontend | 5.7k | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Eslint Vitest Rule Testerantfu-collective/eslint-vitest-rule-tester | 142 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Typescript TestingComposioHQ/composio | 30k | — | ~222 | Automated safety check: Pass | MIT | |
| Run Pre Commit Checksmicrosoft/vscode-python-environments | 141 | — | ~898 | Automated safety check: Pass | MIT |
CherryHQ/cherry-studio
Runs Cherry Studio's critical-path regression suite as deterministic Playwright E2E tests through a GitHub workflow on macOS and Windows runners.
home-assistant/frontend
Home Assistant frontend testing and validation workflow. An agent skill from home-assistant/frontend.
antfu-collective/eslint-vitest-rule-tester
Help users test ESLint rules with Vitest, supporting snapshot testing and custom assertions
ComposioHQ/composio
Select and run TypeScript SDK verification for packages, examples, type checks, linting, builds, Vitest suites, Effect v4 CLI tests, and runtime E2E tests.
microsoft/vscode-python-environments
Run the mandatory pre-commit checks before committing code. An agent skill from microsoft/vscode-python-environments.
andymai/brepjs
This skill should be used when a local brepjs quality gate or npm run validate step fails and the specific rule's fix or escape hatch is needed — ESLint errors like "no-explicit-any" or "Direct .oc…
PackmindHub/packmind
Produce proof-of-execution demos of the Packmind CLI (packmind-cli) as terminal-styled images (colors and formatting preserved exactly), for embedding in a GitHub PR.
PackmindHub/packmind
Record polished UI demo videos and screenshots of a running web app using Playwright MCP — for client deliverables, release notes, feature walkthroughs, or bug repros.
PackmindHub/packmind
Guide for creating effective skills. An agent skill from PackmindHub/packmind.
PackmindHub/packmind
Audit Packmind end-user documentation (apps/doc/) for broken links, outdated CLI references, non-existent concepts, misleading information, and missing coverage.
PackmindHub/packmind
Execute the implementation plan produced by /feature-spec. An agent skill from PackmindHub/packmind.
PackmindHub/packmind
A skill your agent uses when updating, adding, fixing, changing, or deprecating Packmind playbook artifacts (standards, commands, skills).
Works with
Categories
Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping…. Michel Packmind Engineer Review is an agent skill from PackmindHub/packmind. Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping, hexagonal-architecture conformance, analytics-event wiring, UX copy, UI reactivity, CLI behavior, multi-tenancy safety, and more).
Michel Packmind Engineer Review fits situations like: review this implementation; engineer review; packmind review; is this issue done well.
Run `npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a claude-code`. Or copy the skill folder (scripts/michel/michel-packmind-engineer-review in PackmindHub/packmind) into .claude/skills/michel-packmind-engineer-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a codex`. Or copy the skill folder (scripts/michel/michel-packmind-engineer-review in PackmindHub/packmind) into .agents/skills/michel-packmind-engineer-review in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PackmindHub/packmind --skill michel-packmind-engineer-review -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/michel-packmind-engineer-review, .gemini/skills/michel-packmind-engineer-review, .github/skills/michel-packmind-engineer-review and .opencode/skills/michel-packmind-engineer-review in your project.
Going by SKILL.md and its folder, Michel Packmind Engineer Review needs the command-line tools its instructions call (git and gh).
SKILL.md contains no URLs. Its commands use git and gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Michel Packmind Engineer Review is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 6.7k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Michel Packmind Engineer Review: Cherry Studio Regression Tests (CherryHQ/cherry-studio, 53k stars), Ha Frontend Testing (home-assistant/frontend, 5.7k stars), Eslint Vitest Rule Tester (antfu-collective/eslint-vitest-rule-tester, 142 stars) and Typescript Testing (ComposioHQ/composio, 30k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
PackmindHub (a GitHub organization) maintains it in PackmindHub/packmind, which has 318 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 9, 2026.
Source: PackmindHub/packmind on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.