Prepare PR
chattymin/PokeTokenBar
Prepare, create, or update a PokeTokenBar pull request with an English Conventional Commits title, the repository PR template, and mandatory images for visible UI changes.
Review guidance for Moped, a sandboxed macOS SwiftUI text editor with a homegrown TextKit 1 editor core in the local MopedEditor package.
$ npx skills add RobertoMachorro/Moped --skill code-review -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install RobertoMachorro/Moped code-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/RobertoMachorro/Moped.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/code-review .claude/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .claude/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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/RobertoMachorro/Moped/tree/master/.github/skills/code-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 RobertoMachorro/Moped --skill code-review -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install RobertoMachorro/Moped code-review --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RobertoMachorro/Moped.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/code-review .agents/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .agents/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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 RobertoMachorro/Moped --skill code-review -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install RobertoMachorro/Moped code-review --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RobertoMachorro/Moped.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/code-review .cursor/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .cursor/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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/RobertoMachorro/Moped.git --path .github/skills/code-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 RobertoMachorro/Moped --skill code-review -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install RobertoMachorro/Moped code-review --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RobertoMachorro/Moped.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/code-review .gemini/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .gemini/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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 RobertoMachorro/Moped code-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 RobertoMachorro/Moped --skill code-review -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/RobertoMachorro/Moped.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/code-review .github/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .github/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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 RobertoMachorro/Moped --skill code-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 RobertoMachorro/Moped code-review --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RobertoMachorro/Moped.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/code-review .opencode/skills/code-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 "code-review" agent skill from https://github.com/RobertoMachorro/Moped/tree/master/.github/skills/code-review into .opencode/skills/code-review/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "code-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.
code-reviewReview guidance for Moped, a sandboxed macOS SwiftUI text editor with a homegrown TextKit 1 editor core in the local MopedEditor package.
Code Review is an agent skill from RobertoMachorro/Moped. Review guidance for Moped, a sandboxed macOS SwiftUI text editor with a homegrown TextKit 1 editor core in the local MopedEditor package. Use when reviewing pull requests in this repository — it carries the invariants that a generic Swift review misses, and the suggestions this project does not want.
Its SKILL.md is about 2.1k 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 Mobile, covering iOS development and Pull requests. It works with macOS and SwiftUI. The repository describes itself as: A general purpose text editor, small and light. The licence is GPL-3.0.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 059fb08. 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:
swiftFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
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.
Code Review loads about 2.1k tokens when it runs. Until then it costs about 78 tokens; SKILL.md has 1,129 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 RobertoMachorro/Moped at commit 059fb08, republished under its GPL-3.0 licence (© RobertoMachorro). 1,129 words, ~2,130 tokens.
.claude/skills/code-review/SKILL.md (or your agent's skills folder).Moped is a document-based macOS app: SwiftUI shell, AppKit editor. The editor is
MopedEditor, a local Swift package with zero external dependencies — 3.0.0
deliberately replaced Highlightr and STTextView/Neon with in-house code. Adding a
third-party dependency is a design change, not a cleanup; flag any PR that introduces one
unless the PR is explicitly about that.
Bias the review toward invariants that are load-bearing but invisible — the ones below
have each already caused a real bug here. Ordinary style nits are handled by
swiftlint --strict; do not spend the review on them.
CI (.github/workflows/build.yaml) runs all of these on every PR, in this order:
./scripts/check_localized_strings.shswiftlint --strict over the whole projectswift test --package-path MopedEditorA change is not done until all pass. If a PR touches behavior covered by the package tests and adds none, say so.
Every user-facing string needs a key in Moped/Localizable.xcstrings. The catalog is at
100% coverage across 13 locales (de, en, es, fi, fr, he, hi, it, ja, nl, pt, pt-BR,
uk) — a new key with only English in it silently breaks that, and the check script will
not catch it.
Key naming: pref.<setting>.title, pref.section.<section>, option.<group>.<value>,
menu.*, alert.*, window.*, status.*, error.*, about.*, default_editor.*.
The script's allowlist (scripts/check_localized_strings.sh) rejects anything else.
Where the script is blind, and you should look by hand:
Toggle/Button/Text directly —
PreferencesView.checkbox("pref.…", …) is the standing example. The script's patterns
never see it, so a missing catalog key ships as a raw key on screen.Preferences (Moped/Preferences.swift) is @unchecked Sendable because it holds no
mutable stored state — every property reads and writes UserDefaults. A stored property
added to it invalidates that annotation. Flag one.
Booleans are stored as the strings "Yes" / "No" with a do…-prefixed Bool reader.
This is deliberate and long-standing; do not suggest converting them to Bool or
@AppStorage.
A new editor-affecting preference must be wired in all of:
Preferences — the @objc dynamic var plus its do… reader.EditorState.makeEditor(model:delegate:) — the initial build.EditorState.applyPreferences() — the .preferencesChanged observer.PreferencesView — the row, with a catalog key.Legs 2 and 3 are separate call sites with no shared helper. Missing #3 means the setting only takes effect when some other preference is later written; missing #2 means it only takes effect on an already-open window. Check for both explicitly — this is the single most likely defect in a settings PR.
MopedTextView is an NSTextView on an explicit TextKit 1 stack. Temporary
attributes and the NSRulerView gutter both depend on NSLayoutManager; "why not
TextKit 2" is not a useful review comment.
NSTextStorage. Token colors live as layout-manager
temporary attributes precisely so they cannot enter the text, land on the undo stack,
or mark the document dirty. A PR that adds an attribute to the storage for display
purposes is a bug, however well it renders.SyntaxHighlighter owns two exclusive resources: textStorage.delegate (one slot
only) and the .foregroundColor temporary attribute, which it clears and rewrites over
the whole edited range on every pass. Anything else writing that attribute will be
silently wiped.allowsNonContiguousLayout is on. Any self-computed visible range must call
ensureLayout(forBoundingRect:in:) first, or the glyph range comes back short for a
region scrolled into for the first time — the gutter shipped that bug once.NSTextStorage.processEditing. Both re-enter TextKit underneath code that has already
captured geometry. The established fix is to defer to the next runloop turn
(LineNumberRulerView.updateThickness, SyntaxHighlighter.schedulePass).setNeedsDisplay(rect) over needsDisplay = true where
a bounded region is knowable — a full redraw on every caret move made cursor movement
scale with document size. A whole-view invalidation needs a reason in a comment.drawBackground(forGlyphRange:at:), before glyphs. Decorations that must survive a
selection belong after super.drawGlyphs, not in a background override.MopedTheme is Sendable only because every color it carries is a plain sRGB component
color. A theme built from NSColor.controlAccentColor or any catalog/dynamic system
color reintroduces deferred appearance resolution and breaks the guarantee. Flag it.
Adding a color to MopedTheme is not a small change: it touches the struct, renamed(_:),
paired(withDark:), all seven files in Themes/, the System theme, the .mopedtheme
read/write maps and fileFormatVersion in EditorTheme+File.swift, plus ThemeFileTests.
If a PR can derive its color from an existing one instead (the gutter separator and the
whitespace markers both use the palette's own foreground at 30% alpha), prefer that and
say so.
Painted colors are pushed out from MopedTextView.applyTheme(), which is the single funnel
reached by both a theme change and viewDidChangeEffectiveAppearance(). A new painted
color set anywhere else will not survive a light/dark flip.
line_length is disabled but long lines
are still unwelcome.LineNumberRulerView.visibleLineNumbers(for:)
and WhitespaceLayoutManager.whitespaceMarkers(forGlyphRange:) are the precedents.complete in the app target, and the package mirrors it via
.enableExperimentalFeature("StrictConcurrency") so swift test checks the same rules.DOCUMENTATION.md (including its settings
tables), CHANGELOG.md, and manual-checklist.md for anything only a human can verify.
A feature PR that touches none of them is probably incomplete..frame(width: 590, height: 246), sized
against the widest locale. The comment above it is a measurement log — a PR that changes
the frame without extending that comment, or that adds a pane row without saying whether
it still fits, deserves a question.SourcePrintView) is a separate CTFramesetter path that does not share
the editor's layout manager. New editor rendering does not print automatically; if a PR
implies otherwise, check.They are settled decisions, and re-litigating them costs the maintainer time:
"Yes"/"No" preference encoding; @unchecked Sendable on
Preferences; TextKit 1 instead of TextKit 2.line_length is disabled in .swiftlint.yml.© RobertoMachorro, GPL-3.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 .github/skills/code-review of RobertoMachorro/Moped.
Open the folder on GitHubat commit 059fb08
Code 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 |
|---|---|---|---|---|---|---|
| Code Review this skillRobertoMachorro/Moped | 115 | — | ~2.1k | Automated safety check: Pass | GPL-3.0 | |
| Prepare PRchattymin/PokeTokenBar | 505 | — | ~1.8k | Automated safety check: Pass | MIT | |
| Capture Usage4claude Screenshotsf-is-h/Usage4Claude | 400 | — | ~3k | Automated safety check: Pass | MIT | |
| macOS DevelopmentKartikLabhshetwar/better-shot | 2.4k | 2 repos | ~735 | Automated safety check: Pass | Custom licence | |
| Protect Knowledge BoundaryShiinaLabs/wifi-lens | 118 | — | ~1.6k | Automated safety check: Pass | Apache-2.0 | |
| Anishelf Releasesamuelhe52/AniShelf | 140 | — | ~2k | Automated safety check: Pass | Apache-2.0 |
chattymin/PokeTokenBar
Prepare, create, or update a PokeTokenBar pull request with an English Conventional Commits title, the repository PR template, and mandatory images for visible UI changes.
f-is-h/Usage4Claude
Produce every Usage4Claude interface image used by the READMEs and docs.
KartikLabhshetwar/better-shot
Comprehensive macOS development guidance including Swift 6+, SwiftUI, SwiftData, architecture patterns, AppKit bridging, and macOS 26 Tahoe APIs.
ShiinaLabs/wifi-lens
Invoke only when the user explicitly requests a WiFi Lens knowledge-boundary audit or the active task names that audit as a required deliverable.
samuelhe52/AniShelf
Prepare and publish AniShelf source-control releases through validation, release commits, annotated tags, and the main-to-release pull request.
st0012/cctop
A skill your agent uses when debugging SwiftUI issues in this macOS app — views not updating, layout problems, unnecessary re-renders, state ownership bugs, Preview crashes, or NSHostingView/NSPanel…
Categories
Review guidance for Moped, a sandboxed macOS SwiftUI text editor with a homegrown TextKit 1 editor core in the local MopedEditor package. Code Review is an agent skill from RobertoMachorro/Moped. Review guidance for Moped, a sandboxed macOS SwiftUI text editor with a homegrown TextKit 1 editor core in the local MopedEditor package.
Code Review fits situations like: reviewing pull requests in this repository — it carries the invariants that a generic Swift review misses; the suggestions this project does not want.
Run `npx skills add RobertoMachorro/Moped --skill code-review -a claude-code`. Or copy the skill folder (.github/skills/code-review in RobertoMachorro/Moped) into .claude/skills/code-review in your project. Claude Code loads it when a task matches its description.
Run `npx skills add RobertoMachorro/Moped --skill code-review -a codex`. Or copy the skill folder (.github/skills/code-review in RobertoMachorro/Moped) into .agents/skills/code-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 RobertoMachorro/Moped --skill code-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/code-review, .gemini/skills/code-review, .github/skills/code-review and .opencode/skills/code-review in your project.
Going by SKILL.md and its folder, Code Review needs the command-line tools its instructions call (swift).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. 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.
Code Review is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.5k 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 Code Review: Prepare PR (chattymin/PokeTokenBar, 505 stars), Capture Usage4claude Screenshots (f-is-h/Usage4Claude, 400 stars), macOS Development (KartikLabhshetwar/better-shot, 2.4k stars) and Protect Knowledge Boundary (ShiinaLabs/wifi-lens, 118 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
RobertoMachorro (a GitHub user) maintains it in RobertoMachorro/Moped, which has 115 GitHub stars. The repository was last updated on October 4, 2026.
Source: RobertoMachorro/Moped on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.