OpenGUI Installer for DSH
Core-Mate/OpenGUI
Installs and verifies the latest stable OpenGUI release in a DeepSeek Harness web profile on macOS without disturbing existing plugins or settings.
Rule enforcer that finds which written rules in AGENTS.md, CLAUDE.md, and GEMINI.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode…
$ npx skills add RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install RyanAlberts/best-of-Agent-Harnesses rules-to-guards --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/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/rules-to-guards .claude/skills/rules-to-guards && 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 "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .claude/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guardsType 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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install RyanAlberts/best-of-Agent-Harnesses rules-to-guards --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/rules-to-guards .agents/skills/rules-to-guards && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .agents/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install RyanAlberts/best-of-Agent-Harnesses rules-to-guards --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/rules-to-guards .cursor/skills/rules-to-guards && 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 "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .cursor/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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/RyanAlberts/best-of-Agent-Harnesses.git --path skills/rules-to-guards--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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install RyanAlberts/best-of-Agent-Harnesses rules-to-guards --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/rules-to-guards .gemini/skills/rules-to-guards && 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 "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .gemini/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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 RyanAlberts/best-of-Agent-Harnesses rules-to-guardsInstalls 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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/rules-to-guards .github/skills/rules-to-guards && 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 "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .github/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install RyanAlberts/best-of-Agent-Harnesses rules-to-guards --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/RyanAlberts/best-of-Agent-Harnesses.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/rules-to-guards .opencode/skills/rules-to-guards && 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 "rules-to-guards" agent skill from https://github.com/RyanAlberts/best-of-Agent-Harnesses/tree/main/skills/rules-to-guards into .opencode/skills/rules-to-guards/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "rules-to-guards", 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.
rules-to-guardsRule enforcer that finds which written rules in AGENTS.md, CLAUDE.md, and GEMINI.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode…
Rules To Guards is an agent skill from RyanAlberts/best-of-Agent-Harnesses. Rule enforcer that finds which written rules in AGENTS.md, CLAUDE.md, and GEMINI.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode sessions, and turns each broken rule into a hook that blocks it, tested by replaying the past violations. Use when the user says the agent keeps breaking or disobeying a rule (such as "use pnpm, never npm"); asks how often agents violate their rules; wants a rule enforced by a hook instead of repeated in text; or wants to…
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including scripts and reference files (for example `README.md`, `references/checkable-rules.md` and `references/hook-formats.md`).
It sits in Agent Workflows, covering Agent instruction files and Plain language and style rules. It works with npm and pnpm. The repository describes itself as: 🏆 Ranked list of 167 AI agent harnesses, plus templates, playbooks, MCP, and learning resources. Rescored weekly. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 4fa20bc. 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.
Ships 4 files in scripts/ (Python), which the agent can run.
Shell commands in SKILL.md call:
python3shFrom 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.
Rules To Guards loads about 2.7k tokens when it runs, and up to ~8.5k if it reads all its reference files. Until then it costs about 177 tokens; SKILL.md has 1,490 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 noted patterns worth knowing about, such as sudo or a known installer.
`.env` or `dist/**`), or `forbid_tool` (a regex on tool names). Give each a `message` that saysAutomated 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); the scripts in this folder are not scanned.
The full file from RyanAlberts/best-of-Agent-Harnesses at commit 4fa20bc, republished under its MIT licence (© RyanAlberts). 1,490 words, ~2,657 tokens.
.claude/skills/rules-to-guards/SKILL.md (or your agent's skills folder). This skill also uses 8 other files; get the full folder from GitHub.A rule in AGENTS.md is advice: the agent can read it and still break it, most often after a long session or a compaction. This skill finds the rules the agent actually breaks, counts every break in the user's recent sessions, and turns each broken rule into a hook (a small program the agent's harness, such as Claude Code or Codex, runs before every tool call, which can block the call) with a replay test against the real breaks. It reads context files and session transcripts on this machine, masks secrets in every excerpt and in the diff of each settings file it would change, and sends nothing anywhere.
agents-md-checker.guardrail-tester.runaway-guard.claim-check.references/checkable-rules.md says what to use instead.Tell the user this before the first run:
extract reads context files. count and test read session transcripts. Nothing is sent
anywhere.test runs only the hook, through the same command the settings entry would use, feeding it each
recorded tool call as JSON. It never runs the recorded commands themselves.generate changes nothing without --write. It shows the hook file and a diff of each settings
file it would change, with secrets masked. With --write it writes that one hook file and merges
one entry into each chosen harness's settings, keeping every existing hook and the file's own
formatting.generate refuses to write through a symlink that leads outside the project (or, with --scope user, outside the harness folder) unless --follow-symlinks is given, and refuses to replace a
hook file it did not write.<skill-dir> means the folder that holds this SKILL.md (Claude Code shows it as the skill's base
directory). Run every command from the user's project folder, with the script path in double quotes
as shown, because skill folders can sit under paths with spaces.
Extract the candidate rules.
python3 "<skill-dir>/scripts/rules.py" extract --repo .Add --user to include personal files such as ~/.claude/CLAUDE.md, and --file <path> for a
file the agents load by name. Each line gets a hint: command, path, or tool rules can
become hooks; advice rules stay as text. If the user names a rule that is not in the table,
search the context files for it and draft it from that line, with its file:line as the source.
Done when you have the candidate table, or you have told the user no context files were found.
Draft rules.json with the user. Write one entry per checkable rule in the schema of
references/checkable-rules.md, starting from its tested patterns where one fits:
forbid_command (a regex on shell commands, anchored with ^), protect_path (a glob such as
.env or dist/**), or forbid_tool (a regex on tool names). Give each a message that says
what to do instead. Record the rest as "kind": "advice". Show the user every pattern in plain
words ("blocks any command that starts with npm"). Save the file in the project or anywhere else
the user prefers, such as a notes folder; every command takes its path with --rules. Done when
the user has seen each pattern and step 3 runs without an input error.
Count the breaks.
python3 "<skill-dir>/scripts/rules.py" count --rules rules.json --project .Keep --project . for rules from this project's files, so only this project's sessions count;
drop it for personal rules. Default window: 30 days (--since 14d, --since 2026-09-01). Read
the examples with the user and tighten any pattern that caught the wrong calls, then run again.
Exit code 2 means rules.json has a problem; the message names the rule. If every count is zero
but the user reports breaks, rerun without --project or with a longer --since; if the user
still wants a guard, continue to step 4. Done when every example is a real break, or every count
is zero (then tell the user the text rules are holding, and offer to check again later).
Test a hook on the recorded calls.
python3 "<skill-dir>/scripts/rules.py" test --rules rules.json --only <ids> --project .<ids> is the comma-separated ids of the broken rules. Use the same --project and --since as
step 3, so the replay covers the same sessions. This builds a fresh hook in a temporary folder,
replays up to 200 of the newest breaks per rule (each must be blocked) and up to 400 other recent
calls (each must be allowed), and runs the hook the way the harness would. Done when misses and
false positives are both zero, or each remaining one is explained to the user and accepted.
Preview the install.
python3 "<skill-dir>/scripts/rules.py" generate --rules rules.json --only <ids> --harness claude-code --project .Pick harnesses from claude-code, codex, gemini-cli, and cursor (comma-separated);
--scope user installs for every project. When the hook already exists, generate keeps the rules
it holds and replaces any with the same id, so a second run with other --only ids adds to the
hook; --replace writes only these rules, and the headline names every rule that stops being
enforced. Show the user the hook path, the settings diff, and the notes. If a note says a symlink
leads outside the project, show the user the real target. Done when the user has said yes or no
to the shown change.
Install only after a clear yes. Run the same command with --write, adding
--follow-symlinks only if the user approved writing to the real target of a symlink. Then pass
on the notes the report prints, such as trusting the hook in Codex's /hooks. Done when the
report's headline starts with "Installed".
file:line, the hint,
and the rule text. Hints are guesses; you and the user decide.Breaks (tool calls that broke it), Ran (the harness let them run),
Stopped (the user, a permission rule, a hook, or an auto reviewer refused them), Sessions, and
the last date. The three newest examples per rule show what matched; for a long command they show
the part that matched. A warning says a pattern matches more than half the calls it checks: that
pattern is too broad. A forked session starts with a copy of the earlier one; those calls count
once.generate again.sh -c '...'), and notes, including any symlink that leads outside the project.
references/hook-formats.md explains each harness's format.--json gives every field; --out <path> writes the report to a file.--write): the hook path and each settings file.count in two weeks to confirm the breaks stopped.python3 "<skill-dir>/scripts/rules.py" generate --uninstall --harness <harnesses> --project .
shows the removal (add --scope user if you installed with it); add --write after a yes. It
removes only rules-to-guards entries and leaves the hook file in place for the user to delete.
scripts/rules.py: extract, count, generate, and test. Python 3.9+, standard library
only.scripts/rules_guard.py: the hook template; generate writes a copy with the rules embedded.scripts/transcripts.py: the shared session reader for Claude Code, Codex, Gemini CLI, and
OpenCode.scripts/safe.py: the shared helper that masks secrets in report text and shows it as one line of
inline code. A synced copy; do not edit it here.references/checkable-rules.md: the rules.json schema, how commands and paths are matched, tested
patterns, and regex pitfalls.references/hook-formats.md: each harness's hook files, events, inputs, and blocking rules, with
sources.© RyanAlberts, MIT. 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 8 other files (scripts, references) in skills/rules-to-guards of RyanAlberts/best-of-Agent-Harnesses.
Open the folder on GitHubat commit 4fa20bc
Rules To Guards 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 |
|---|---|---|---|---|---|---|
| Rules To Guards this skillRyanAlberts/best-of-Agent-Harnesses | 1.1k | — | ~2.7k | Automated safety check: Notes | MIT | |
| OpenGUI Installer for DSHCore-Mate/OpenGUI | 1.8k | — | ~1.1k | Automated safety check: Pass | Custom licence | |
| Sync Public DocsCaldis/react-zmage | 945 | — | ~3.3k | Automated safety check: Pass | MIT | |
| Harness Initk1ein-chen/Harness-Starter | 119 | — | ~995 | Automated safety check: Notes | MIT | |
| Claude Md Dependency Rescanalirezarezvani/ClaudeForge | 429 | — | ~624 | Automated safety check: Pass | MIT | |
| Agent Prompts Warmupiamtouchskyer/memex | 143 | — | ~1k | Automated safety check: Pass | MIT |
Core-Mate/OpenGUI
Installs and verifies the latest stable OpenGUI release in a DeepSeek Harness web profile on macOS without disturbing existing plugins or settings.
Caldis/react-zmage
A skill your agent uses when modifying public API in packages/core (types/global.ts, types/default.ts, index.ts, or package.json exports field), adding/renaming/removing props, changing default…
k1ein-chen/Harness-Starter
Initialize this project with the Harness Engineering starter template.
alirezarezvani/ClaudeForge
Re-detect this project's tech stack from package.json / requirements.txt / pyproject.toml / go.mod / Cargo.toml and diff it against the Tech Stack section of every CLAUDE.md.
iamtouchskyer/memex
Audit and sync agent instruction files across all coding agent formats.
brianlovin/agent-config
Refactor CLAUDE.md files to follow progressive disclosure principles.
RyanAlberts/best-of-Agent-Harnesses
Checks which instruction files (AGENTS.md, CLAUDE.md, GEMINI.md, Cursor rules, Copilot instructions) each coding agent loads from a repo, what gets cut or skipped, and whether the commands those…
RyanAlberts/best-of-Agent-Harnesses
Claim checker that audits a coding agent's statements that tests pass or a build is clean against its own session transcripts: whether a matching run happened before the claim, whether it passed…
RyanAlberts/best-of-Agent-Harnesses
Guardrail tester that checks whether the permission rules and PreToolUse hooks already set up in Claude Code, Codex, Gemini CLI, OpenCode, or Cursor stop a battery of dangerous commands, including…
RyanAlberts/best-of-Agent-Harnesses
Test-drives coding agents (Claude Code, Codex, Gemini CLI) on tasks mined from the user's own git history: each agent gets a past commit message in a fresh copy of the repo, and the repo's own tests…
RyanAlberts/best-of-Agent-Harnesses
Regression check for coding agents: shows how the agent behaved before and after each harness update, model switch, or week in the user's own Claude Code or Codex history, and finds the point where…
RyanAlberts/best-of-Agent-Harnesses
Runaway guard: a hook that stops a live Claude Code or Codex session when the agent loops on the same tool call, keeps failing, or exceeds a dollar cap.
Categories
Rule enforcer that finds which written rules in AGENTS.md, CLAUDE.md, and GEMINI.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode…. Rules To Guards is an agent skill from RyanAlberts/best-of-Agent-Harnesses.md a coding agent keeps breaking, counts every violation in recent Claude Code, Codex, Gemini CLI, and OpenCode sessions, and turns each broken rule into a hook that blocks it, tested by replaying the past violations.
Rules To Guards fits situations like: the user says the agent keeps breaking; disobeying a rule (such as use pnpm; asks how often agents violate their rules; wants a rule enforced by a hook instead of repeated in text.
Run `npx skills add RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a claude-code`. Or copy the skill folder (skills/rules-to-guards in RyanAlberts/best-of-Agent-Harnesses) into .claude/skills/rules-to-guards in your project. Claude Code loads it when a task matches its description.
Run `npx skills add RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a codex`. Or copy the skill folder (skills/rules-to-guards in RyanAlberts/best-of-Agent-Harnesses) into .agents/skills/rules-to-guards 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 RyanAlberts/best-of-Agent-Harnesses --skill rules-to-guards -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rules-to-guards, .gemini/skills/rules-to-guards, .github/skills/rules-to-guards and .opencode/skills/rules-to-guards in your project.
Going by SKILL.md and its folder, Rules To Guards needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and sh). Our summary lists: Python 3.
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 notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Rules To Guards is published under the MIT licence (declared in SKILL.md). 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 5.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Rules To Guards: OpenGUI Installer for DSH (Core-Mate/OpenGUI, 1.8k stars), Sync Public Docs (Caldis/react-zmage, 945 stars), Harness Init (k1ein-chen/Harness-Starter, 119 stars) and Claude Md Dependency Rescan (alirezarezvani/ClaudeForge, 429 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
RyanAlberts (a GitHub user) maintains it in RyanAlberts/best-of-Agent-Harnesses, which has 1,133 GitHub stars. The repository was last updated on October 9, 2026.
Source: RyanAlberts/best-of-Agent-Harnesses on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.