Requirements
rizsotto/Bear
Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…
Select device-test coverage when opening or updating a MentraOS PR.
$ npx skills add Mentra-Community/MentraOS --skill select-pr-routines -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Mentra-Community/MentraOS select-pr-routines --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/Mentra-Community/MentraOS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/select-pr-routines .claude/skills/select-pr-routines && 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 "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .claude/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routinesType 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 Mentra-Community/MentraOS --skill select-pr-routines -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Mentra-Community/MentraOS select-pr-routines --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/select-pr-routines .agents/skills/select-pr-routines && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .agents/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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 Mentra-Community/MentraOS --skill select-pr-routines -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Mentra-Community/MentraOS select-pr-routines --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/select-pr-routines .cursor/skills/select-pr-routines && 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 "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .cursor/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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/Mentra-Community/MentraOS.git --path .agents/skills/select-pr-routines--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 Mentra-Community/MentraOS --skill select-pr-routines -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Mentra-Community/MentraOS select-pr-routines --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/select-pr-routines .gemini/skills/select-pr-routines && 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 "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .gemini/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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 Mentra-Community/MentraOS select-pr-routinesInstalls 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 Mentra-Community/MentraOS --skill select-pr-routines -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/select-pr-routines .github/skills/select-pr-routines && 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 "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .github/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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 Mentra-Community/MentraOS --skill select-pr-routines -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Mentra-Community/MentraOS select-pr-routines --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/select-pr-routines .opencode/skills/select-pr-routines && 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 "select-pr-routines" agent skill from https://github.com/Mentra-Community/MentraOS/tree/dev/.agents/skills/select-pr-routines into .opencode/skills/select-pr-routines/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "select-pr-routines", 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.
select-pr-routinesSelect device-test coverage when opening or updating a MentraOS PR.
Select PR Routines is an agent skill from Mentra-Community/MentraOS. Select device-test coverage when opening or updating a MentraOS PR. Request existing routine runs with routine: labels, or request an edit or new routine through the PR authoring system when coverage needs to change. Use create-routine for machine-side authoring.
Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Testing & QA, covering Test coverage. The repository describes itself as: MentraOS is the leading smart glasses OS. See live captions, stream your view, talk to AI, and capture photos hands-free on compatible glasses. The licence is Apache-2.0.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 223f5b9. 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:
ghnodegitFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
github.comFrom 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.
Select PR Routines loads about 3.3k tokens when it runs. Until then it costs about 71 tokens; SKILL.md has 1,528 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 Mentra-Community/MentraOS at commit 223f5b9, republished under its Apache-2.0 licence (© Mentra-Community). 1,528 words, ~3,260 tokens.
.claude/skills/select-pr-routines/SKILL.md (or your agent's skills folder).Match coverage to the PR's behavior, then make the appropriate request:
| Coverage needed | Request |
|---|---|
| Existing steps already test the behavior | Add routine:<id> for ordinary replay of the PR build |
| An existing flow needs changed expectations or additional steps | Request routine-work:edit with an authoring brief |
| No suitable flow exists | Request routine-work:create with an authoring brief |
A request is not a passing test result. Docs-only changes need no device coverage.
Read the PR diff and describe the behavior it changes. For an existing PR:
gh pr view PR --repo Mentra-Community/MentraOS --json headRefOid,baseRefOid,labels,files
gh pr diff PR --repo Mentra-Community/MentraOSRead the private
Mentra-Automated-Testing repository
through gh. Resolve its latest main commit once, then list routines
and read candidates at that exact SHA. If the user explicitly selects another
routine revision, use that authorized exact SHA for all source reads instead.
This needs GitHub access to the repository,
not Core/Admin credentials, and does not depend on a local checkout's branch
or modify it with git pull:
harness_repository=Mentra-Community/Mentra-Automated-Testing
harness_sha=$(gh api "repos/$harness_repository/commits/main" --jq .sha)
gh api "repos/$harness_repository/git/trees/$harness_sha?recursive=1" \
--jq 'if .truncated then error("Incomplete routine tree; inspect directories individually") else .tree[] | select(.type == "blob" and (.path | test("^routines/[^/]+/routine\\.ts$"))) | .path end'The harness discovers routines/<id>/routine.ts without a static registry.
Set routine_path to a discovered path and read its source:
gh api "repos/$harness_repository/contents/$routine_path" --method GET \
-f ref="$harness_sha" -H 'Accept: application/vnd.github.raw+json'Fetch imported helper paths with the same command and SHA too. The PR author inspects coverage and submits the brief; the assigned machine-side authoring agent makes routine edits. Read purpose, platforms, prerequisites, fixtures and ordered step IDs. Follow each candidate's actions into helpers to identify pages, clicked controls and assertions; the English description alone does not prove coverage. Report missing private repository access explicitly. Core/Admin credentials are not needed for this source inspection.
Select the smallest set whose actual steps exercise the changed behavior. Do not select every routine for shared SDK files. Trace the actual affected path. Mac evidence does not qualify Android-only or physical-iPhone behavior. A visibility change may need different coverage from a real meeting; report the gap instead of inventing a dispatch ID. If the PR intentionally changes an expected outcome, identify the conflicting step and request an edit rather than running known-invalid old assertions. Prefer extending a coherent existing flow over creating duplicate coverage. Explain which stable step IDs cover the PR; for an edit, name the insertion before/after an existing step and its expected outcome. A matching recorded example can corroborate behavior, but it may use an older source revision.
Build each label as routine:<id> from the selected routine's declared ID. A
real routine on Harness main is requestable without a published collection or
existing Core enrollment. Required Harness PR checks validate source before merge;
they do not prove the routine passes on devices.
An ordinary new request resolves current Harness main once at submission and
freezes that exact SHA with the selected PR app build. Labels contain the routine
ID, not a source revision. If that SHA differs from the source inspected above,
read the requested source before claiming it covers the PR. An explicitly selected
authorized routine SHA overrides the default through the request workflow's
optional routine_revision input. Leave it absent to select current main; to
request the exact inspected source, supply -f routine_revision="$harness_sha"
with the existing routine/platform and exact app-build selectors to
request-e2e-routine.yml on --ref dev. Omitted overrides on reruns inherit the
original member's exact routine and app selections. Never substitute an older
published routine.
Core durably records source preparation in the same test-request queue. The host obtains request-scoped verified Git inventory/blobs through Core, constructs the routine-owned source and runs bounded installed API/factory preflight before any device grants. Temporary source failures remain waiting with a reason; invalid or incompatible source reports its exact refusal/wait. Collection publication and framework activation at that routine commit are not prerequisites. The configured host/lane, artifact, capability and authority checks still apply.
Do not claim the request ran or substitute another routine. When creating the PR,
include its --label in the existing gh pr create command. For an existing PR,
set selected_label to that exact discovered label:
gh pr edit PR --repo Mentra-Community/MentraOS --add-label "$selected_label"
gh pr view PR --repo Mentra-Community/MentraOS --json labels,headRefOidFor the GitHub REST API, POST appends labels; do not use PUT to replace them:
gh api --method POST repos/Mentra-Community/MentraOS/issues/PR/labels \
-f "labels[]=$selected_label"Add only missing selected labels. Preserve unrelated and previously requested labels; flag a stale routine label for the author rather than silently removing it. In the PR's validation section, name each label and its covered behavior, separate pending routine results from completed local tests, and list uncovered changes.
Use the existing PR authoring contract and its JSON template. This dispatches machine-side work using create-routine; the PR author does not need to reserve hardware or implement another authoring workflow.
Choose edit for an existing routines/<id>/routine.ts at the selected harness
commit, or create with a new stable ID absent at that commit. Pin
source.revision to the exact reviewed harness SHA, not the MentraOS PR SHA
or a moving branch. Describe the goal, changed or added English steps and
observable expected results. For edits, name the affected step IDs and preserve
the rest of the flow. The machine verifies the complete saved flow, not just
the new step.
Choose an enrolled host/lane offering the required platform, glasses models
and capabilities. Use an already configured target or ask its owner for the
host/lane IDs and prerequisites. If Admin access is already available, its
GET /api/admin/test-runs/restoration/list projection for host/lane IDs and
platform can help, together with the configured lane's capabilities. Authoring uses
mac or android; ordinary catalog/replay uses ios-on-mac or android.
Current machine-side intake rejects nonempty requirements.environment.
Use [] when no generic environment provider is needed; otherwise report
the unsupported prerequisite. Preserve the routine's actual fixture needs.
If access or a prerequisite is missing, explain exactly what is needed and
ask the owner; do not invent IDs or erase requirements to admit the job.
Save the contract's comment to a file, replacing its example values. It must
start with <!-- mentra-routine-work:v1 --> and contain exactly one JSON block
with no surrounding prose. Keep credentials and private device/account data
out of the public brief. The workflow supplies the current PR build and origin;
do not put artifact URLs, tokens or build metadata into the comment.
Validate the draft from the MentraOS checkout without dispatching:
node --input-type=module - /private/tmp/routine-work-comment.md edit <<'JS'
import {readFile} from 'node:fs/promises';
import {parseRoutineWorkBrief} from './.github/scripts/routine-work.mjs';
const [path, kind] = process.argv.slice(2);
parseRoutineWorkBrief(await readFile(path, 'utf8'), kind);
console.log('Valid routine-work brief');
JSUse create as the last argument for a creation request. Validation checks the
brief's schema; it does not prove host capabilities or source review.
On the open same-repository PR targeting dev or staging, first inspect its
comments and labels. There must be one marked brief and one authoring-kind
label. If no brief exists, post the file and add the missing matching label
(routine-work:edit in this example):
gh pr comment PR --repo Mentra-Community/MentraOS --body-file /private/tmp/routine-work-comment.md
gh pr edit PR --repo Mentra-Community/MentraOS --add-label routine-work:editThe comment author must be a human account with repository write or admin access, verified
through GitHub's collaborator permission endpoint. Comment association labels
can vary by credential and do not establish access. An AI using that account's
gh login works; a bot-authored brief does not. For an existing request, edit its comment
by ID instead of posting a second brief. Read back the comment and labels.
Ordinary routine:<id> labels can coexist for other relevant coverage.
Follow the request workflow and its updating status comment. Automatic intake
uses ROUTINE_WORK_PR_DISPATCH_ENABLED, independently of ordinary replay's
gate. When an authorized manual submission is needed, use the same intake:
gh workflow run request-routine-work.yml --repo Mentra-Community/MentraOS --ref dev -f pr=PRIntake requires the current PR's published platform artifact. A
waiting-for-build notice means nothing was submitted: the enabled automatic
build callback, or the same manual intake after publication, submits the work.
Changing the brief, source, target or build creates a new work occurrence.
Review corrections should continue the existing machine job rather than
redispatching by editing the brief. After source review, require the linked
ordinary passing run and recording before
reporting coverage as verified. Request ordinary replay of the reviewed source
through the existing label/workflow; report pending source preparation or the
exact refusal explicitly rather than requiring eager collection publication.
DEVICE_ROUTINE_PR_DISPATCH_ENABLED is explicitly
enabled. Adding labels does not enable that gate. When enabled, the existing
request workflow submits routine IDs with exact PR build sources through
POST /api/internal/routine-dispatches; Core resolves current Harness main or
the optional exact override once, freezes app/routine inputs, and routes source
preparation to explicitly configured host/lane bindings. Check its request
status and linked result. A preparing, queued, rejected,
unavailable or unrecorded request is not a pass. After artifact publication,
use the normal request workflow/Admin path for an authorized retry; do not
toggle labels or repeatedly dispatch to overcome an explicit denial.© Mentra-Community, 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
Just SKILL.md in .agents/skills/select-pr-routines of Mentra-Community/MentraOS.
Open the folder on GitHubat commit 223f5b9
Select PR Routines 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 |
|---|---|---|---|---|---|---|
| Select PR Routines this skillMentra-Community/MentraOS | 2.4k | — | ~3.3k | Automated safety check: Pass | Apache-2.0 | |
| Requirementsrizsotto/Bear | 6.5k | — | ~2k | Automated safety check: Pass | GPL-3.0 | |
| Crap Analysisardalis/RiverBooks | 135 | 2 repos | ~3.4k | Automated safety check: Pass | None | |
| Bmad Testarch Automatechenjackle45/SayIt | 115 | 2 repos | ~867 | Automated safety check: Pass | MIT | |
| Code Coverages3s-project/s3s | 311 | — | ~789 | Automated safety check: Pass | Apache-2.0 | |
| Project Statusbactopia/bactopia | 522 | — | ~787 | Automated safety check: Pass | MIT |
rizsotto/Bear
Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…
ardalis/RiverBooks
Analyze code coverage and CRAP (Change Risk Anti-Patterns) scores to identify high-risk code.
chenjackle45/SayIt
Expand test automation coverage for codebase. An agent skill from chenjackle45/SayIt.
s3s-project/s3s
Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.
bactopia/bactopia
Show a live snapshot of the Bactopia project state — component counts, GroovyDoc coverage, nf-test coverage, and structural issues.
ldayton/Dippy
Ensure comprehensive test coverage for a CLI handler. An agent skill from ldayton/Dippy.
Mentra-Community/MentraOS
Investigate a Mentra routine failure from an Admin testRun URL or run/request ID, fetch authenticated results and verified artifacts with the existing incident-report token, trace the exact routine…
Mentra-Community/MentraOS
Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths.
Mentra-Community/MentraOS
Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause.
Mentra-Community/MentraOS
Run an independent local Codex (gpt-6.1-sol, medium) review of a GitHub pull request and relay its verdict.
Mentra-Community/MentraOS
Add or change backend deployment environment variables through Doppler shared configs and native Porter syncs.
Mentra-Community/MentraOS
Diagnose an ongoing or finished Mentra nightly suite, group demonstrated shared failures, implement fixes, and carry PRs through independent Codex review and merge.
Categories
Select device-test coverage when opening or updating a MentraOS PR. Select PR Routines is an agent skill from Mentra-Community/MentraOS. Select device-test coverage when opening or updating a MentraOS PR.
Select PR Routines fits situations like: tasks that involve Test coverage.
Run `npx skills add Mentra-Community/MentraOS --skill select-pr-routines -a claude-code`. Or copy the skill folder (.agents/skills/select-pr-routines in Mentra-Community/MentraOS) into .claude/skills/select-pr-routines in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Mentra-Community/MentraOS --skill select-pr-routines -a codex`. Or copy the skill folder (.agents/skills/select-pr-routines in Mentra-Community/MentraOS) into .agents/skills/select-pr-routines 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 Mentra-Community/MentraOS --skill select-pr-routines -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/select-pr-routines, .gemini/skills/select-pr-routines, .github/skills/select-pr-routines and .opencode/skills/select-pr-routines in your project.
Going by SKILL.md and its folder, Select PR Routines needs the command-line tools its instructions call (gh, node and git).
SKILL.md names 1 domain. As links in the text: github.com. 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.
Select PR Routines 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 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Select PR Routines: Requirements (rizsotto/Bear, 6.5k stars), Crap Analysis (ardalis/RiverBooks, 135 stars), Bmad Testarch Automate (chenjackle45/SayIt, 115 stars) and Code Coverage (s3s-project/s3s, 311 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Mentra-Community (a GitHub organization) maintains it in Mentra-Community/MentraOS, which has 2,381 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 11, 2026.
Source: Mentra-Community/MentraOS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.