Siftrank
noperator/siftrank
Find needles in haystacks with SiftRank. An agent skill from noperator/siftrank.
A skill your agent uses whenever a design lets users do something they might regret — delete, send, publish, charge, transfer, archive, overwrite, irrecoverably commit.
$ npx skills add hashgraph-online/awesome-codex-plugins --skill forgiveness -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install hashgraph-online/awesome-codex-plugins forgiveness --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/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .claude/skills/forgiveness && 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 "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .claude/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgivenessType 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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install hashgraph-online/awesome-codex-plugins forgiveness --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .agents/skills/forgiveness && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .agents/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install hashgraph-online/awesome-codex-plugins forgiveness --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .cursor/skills/forgiveness && 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 "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .cursor/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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/hashgraph-online/awesome-codex-plugins.git --path plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness--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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install hashgraph-online/awesome-codex-plugins forgiveness --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .gemini/skills/forgiveness && 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 "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .gemini/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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 hashgraph-online/awesome-codex-plugins forgivenessInstalls 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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .github/skills/forgiveness && 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 "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .github/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install hashgraph-online/awesome-codex-plugins forgiveness --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/hashgraph-online/awesome-codex-plugins.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness .opencode/skills/forgiveness && 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 "forgiveness" agent skill from https://github.com/hashgraph-online/awesome-codex-plugins/tree/main/plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness into .opencode/skills/forgiveness/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "forgiveness", 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.
forgivenessA skill your agent uses whenever a design lets users do something they might regret — delete, send, publish, charge, transfer, archive, overwrite, irrecoverably commit.
Forgiveness is an agent skill from hashgraph-online/awesome-codex-plugins. Use this skill whenever a design lets users do something they might regret — delete, send, publish, charge, transfer, archive, overwrite, irrecoverably commit. Trigger when designing destructive actions, undo systems, confirmation dialogs, soft-delete recovery, draft-saving, transaction reversal, "are you sure?" patterns, or any flow where a wrong move costs the user time, data, money, or trust. Trigger when the user mentions "users keep deleting things," "we get support tickets about lost data," "is this…
Its SKILL.md is about 4.2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/error-research-and-cross-domain.md`).
It sits in Sales & Support, covering Customer support. The repository describes itself as: A curated list of awesome OpenAI Codex / ChatGPT plugins, skills, and resources. The 1 Codex Marketplace. See live plugins at: https://hol.org/plugins/best-codex-plugins. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 9e7b281. 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.
No scripts in the folder and no shell commands in SKILL.md (its code samples are html and javascript).
From 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.
Forgiveness loads about 4.2k tokens when it runs, and up to ~6k if it reads all its reference files. Until then it costs about 187 tokens; SKILL.md has 1,916 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 hashgraph-online/awesome-codex-plugins at commit 9e7b281, republished under its Apache-2.0 licence (© hashgraph-online). 1,916 words, ~4,159 tokens.
.claude/skills/forgiveness/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.Forgiveness is the property of a design that helps users avoid mistakes and recover gracefully from the ones they make. The opposite — an unforgiving design — punishes errors with lost work, irreversible changes, or hostile error states. Since human error is inevitable, forgiving design is what determines whether the product is pleasant to use over time or a constant source of low-grade anxiety.
A forgiving design recognizes that users will make mistakes — slips (correct intent, wrong action), mistakes (wrong intent because of wrong model), and accidents (the cat walked across the keyboard). It builds in mechanisms to prevent errors before they happen, minimize their consequences when they do happen, and recover from them when prevention and minimization both fail. The principle's central insight: error is a property of the design, not of the user. A design that produces lots of user error is a poorly-designed design, even if every user "could have been more careful."
Roughly ordered from preferred to least preferred — preferred ones reduce the need for the others:
If the design makes the wrong action impossible or hard to do by accident, the error never occurs. A USB connector that can't be inserted upside-down (USB-C). A dialog where the destructive button is small and far from the safe one. A control that's only enabled when the operation makes sense.
This is the highest level of forgiveness because it requires no user attention or recovery — the error is structurally prevented.
If the user can undo, the error costs only the time to notice and reverse. Cmd-Z is the canonical example; soft-delete with a recovery window is its data-layer counterpart. Version history is its document counterpart.
Reversibility is preferred to confirmation because it doesn't punish exploration. Users who feel safe to try things learn faster and use the product more confidently.
A system or feature that minimizes damage when an error does happen and isn't reversible. Crumple zones in cars. Auto-saving drafts. Trash with a recovery window. Backup systems. The pilot's ejection seat in a fighter jet.
Safety nets are insurance against the unanticipated. They cost design and engineering effort but pay off when prevention and reversibility weren't enough.
The user is asked to verify before a high-stakes action commits. "Are you sure you want to delete?" "Type DELETE to confirm." "Enter your password to authorize."
Confirmation is the most-overused forgiveness mechanism and the easiest to abuse. Confirmations applied to routine reversible actions get dismissed on autopilot, training users to ignore them when they finally apply to a real destructive action.
Visual or auditory cues that something dangerous is about to happen. A "you have unsaved changes" prompt before navigating away. A warning label on industrial equipment. A road sign for a sharp curve.
Warnings work when applied sparingly to genuinely high-consequence moments. They become wallpaper when applied to everything.
Documentation, error messages with remediation steps, support chat, recovery flows. The lowest-preferred level because it kicks in after the error has already happened and disrupted the user's task.
A useful diagnostic: the amount of help required is inversely proportional to the quality of the design. If users need extensive help to use your product, the help is compensating for missing forgiveness at the higher levels.
The goal isn't maximum confirmation; it's appropriate friction calibrated to the action's stakes.
Most modern apps prefer reversibility over confirmation for routine destructive actions.
<button onclick="archive(item)">Archive</button>
<script>
async function archive(item) {
const previous = items.slice();
items = items.filter(i => i.id !== item.id);
render();
await api.archive(item.id);
showToast(`"${item.name}" archived`, {
action: { label: 'Undo', onClick: () => unarchive(item, previous) },
duration: 7000,
});
}
function unarchive(item, previous) {
items = previous;
render();
api.unarchive(item.id);
}
</script>The action is one click; if wrong, one click in the toast restores. Most users never need the undo; the few who do have a 7-second window. No confirmation dialog, no friction on the common path.
Some actions genuinely can't be undone (or shouldn't be made undoable for security/compliance reasons). For these, raise friction deliberately.
<button onclick="openDeleteDialog()">Delete account</button>
<dialog id="delete-dialog">
<h2>Delete account permanently?</h2>
<p>This deletes your account, all your projects (12), and revokes access for your team (38 members). It cannot be undone.</p>
<p>To confirm, type your account email below:</p>
<input id="confirm-input" placeholder="you@example.com" />
<div class="actions">
<button onclick="closeDialog()">Cancel</button>
<button id="confirm-btn" disabled class="destructive">
Delete account permanently
</button>
</div>
</dialog>
<script>
const input = document.getElementById('confirm-input');
const btn = document.getElementById('confirm-btn');
input.addEventListener('input', () => {
btn.disabled = input.value !== currentUser.email;
});
</script>The user must (a) intend to open the dialog, (b) read the consequences laid out, (c) actively type their email, (d) click the destructive button. Each step is a chance to step back. For genuinely irreversible high-stakes actions, this stack is appropriate.
A form that auto-saves drafts protects the user from navigation accidents, browser crashes, and second-guessing.
<form id="post-editor">
<input name="title" placeholder="Title" />
<textarea name="body" placeholder="Write your post..."></textarea>
<p class="save-status" aria-live="polite">All changes saved</p>
<button>Publish</button>
</form>
<script>
const form = document.getElementById('post-editor');
const status = form.querySelector('.save-status');
form.addEventListener('input', debounce(async () => {
status.textContent = 'Saving...';
await api.saveDraft(serialize(form));
status.textContent = `Saved at ${formatTime(new Date())}`;
}, 600));
</script>The user never thinks about saving; the system saves continuously. If they navigate away, the draft survives. If they refresh, the draft restores. The "Publish" button is the only commit; everything else is reversible.
When the user has unsaved work and tries to leave, a warning is appropriate friction.
window.addEventListener('beforeunload', (e) => {
if (form.dataset.dirty === 'true') {
e.preventDefault();
e.returnValue = ''; // browsers show their own confirmation
}
});The browser's native dialog appears. The user can cancel and stay, or confirm and lose changes. If you've also implemented auto-save, this dialog appears only briefly between auto-saves — and the saved draft is still there if they leave.
A poorly-designed error message says "Error 503." A forgiving error message names the problem, explains what went wrong, and offers the next step.
<div class="error-card">
<h3>We couldn't process your payment</h3>
<p>
Your card (ending in 4242) was declined. This usually means insufficient
funds or a billing-address mismatch.
</p>
<p>
<button>Try a different card</button>
<a href="/help/declined-payments">Why was my card declined?</a>
</p>
</div>The error doesn't blame the user; it explains, offers an action, and provides a path to deeper help.
The ultimate safety net. The pilot can't undo a structural failure, but they can leave the aircraft. The seat itself is a forgiveness mechanism — designed for the moment everything else has failed.
The front and rear of a car are deliberately weakened to absorb collision energy through controlled deformation, protecting the cabin and occupants. This is "weakest link" applied to forgiveness — the chosen failure point preserves what matters.
Medication errors are a leading cause of preventable hospital harm. Forgiveness mechanisms include weekly pill organizers (good affordance — visible state of taken vs. untaken), barcode scanning (verification), and the "five rights" workflow (right patient, right drug, right dose, right route, right time).
Before maintenance on hazardous equipment, workers physically lock and tag the energy source so it can't be activated until the lock is removed. A forcing function that prevents accidental energizing — a pure prevention strategy.
Microsoft Word and successors normalized undo as standard. Modern systems extend this to version history (Google Docs, Notion) — the user can not only undo recent changes but visit any prior state.
Gmail introduced an "Undo send" feature with a default 5-second window (configurable up to 30). The send doesn't actually go out for that period; cancel reverses it. A reversibility mechanism applied to a previously-irreversible action.
affordance — good affordances prevent errors; this is the highest level of forgiveness.constraint — constraints prevent invalid actions structurally.errors — slip vs. mistake distinction shapes which forgiveness mechanism applies.feedback-loop — feedback after an action lets the user catch errors quickly.factor-of-safety (process) — engineering version of the same idea: design with margin so normal operation isn't at the edge of failure.weakest-link (process) — crumple-zone logic; deliberately failing at a chosen point.accessibility-understandable (process) — error identification and recovery are accessibility requirements.forgiveness-undo-and-soft-delete — designing reversibility: undo systems, soft delete, version history, the "Undo Send" pattern.forgiveness-confirmation-and-prevention — when confirmation is appropriate, how to design it, and how to prevent confirmation fatigue.Forgiveness is the principle that determines whether a product is loved or feared. Loved products let users explore, undo, and recover; users develop confidence and use them daily without anxiety. Feared products punish exploration; users develop anxious habits and stick to the obvious paths. Build for the loved version: prevent first, reverse second, confirm only when you must.
© hashgraph-online, 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 plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness of hashgraph-online/awesome-codex-plugins.
Open the folder on GitHubat commit 9e7b281
Forgiveness 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 |
|---|---|---|---|---|---|---|
| Forgiveness this skillhashgraph-online/awesome-codex-plugins | 1.3k | — | ~4.2k | Automated safety check: Pass | Apache-2.0 | |
| Siftranknoperator/siftrank | 225 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Supporthaacked/dotfiles | 134 | — | ~2.9k | Automated safety check: Pass | None | |
| Customer Support Agentmastra-ai/mastra | 29k | — | ~2.2k | Automated safety check: Pass | Custom licence | |
| Add Agent Adaptersafedep/gryph | 172 | — | ~679 | Automated safety check: Pass | Apache-2.0 | |
| Agent Support Matrixjazzyalex/agent-sessions | 894 | — | ~587 | Automated safety check: Pass | MIT |
noperator/siftrank
Find needles in haystacks with SiftRank. An agent skill from noperator/siftrank.
haacked/dotfiles
Support hero workflow — start a ticket investigation with auto-organized notes, find existing notes, or generate the weekly highlights log.
mastra-ai/mastra
Authoring playbook for building agents that triage and reply to customer messages — support tickets, email inquiries, chat questions, refund requests, or product issues.
safedep/gryph
A skill your agent uses when adding support for a new AI coding agent to Gryph, or when changing how an existing agent adapter is wired.
jazzyalex/agent-sessions
Maintain Agent Sessions agent support matrix and JSON/JSONL parsing compatibility.
topoteretes/cognee
Build one company memory from a SQL database, a support ticket export and a folder of documents, linked into one graph by cognee, then answer questions that need several of those sources together.
hashgraph-online/awesome-codex-plugins
Create original anime-style reaction stickers as looping GIFs and MP4 previews, using generated character pose sheets and timed key poses.
hashgraph-online/awesome-codex-plugins
Manage and query Calibre libraries with the calibredb CLI (local paths or Calibre Content server URLs).
hashgraph-online/awesome-codex-plugins
A skill your agent uses when adding, changing, testing, or debugging Rust HTTP APIs and services, especially when Codex needs black-box integration tests, random-port app startup, real database test…
hashgraph-online/awesome-codex-plugins
Make a studio's game look like something at build time — a cover from a real frame of the game (free), painted covers, backdrops, textures and character plates from image models through the…
hashgraph-online/awesome-codex-plugins
Use CALL-E from Codex through the calle CLI. An agent skill from hashgraph-online/awesome-codex-plugins.
hashgraph-online/awesome-codex-plugins
Balance game difficulty, resources, rewards, probability, progression, economies, and dominant strategies.
Categories
A skill your agent uses whenever a design lets users do something they might regret — delete, send, publish, charge, transfer, archive, overwrite, irrecoverably commit. Forgiveness is an agent skill from hashgraph-online/awesome-codex-plugins. Use this skill whenever a design lets users do something they might regret — delete, send, publish, charge, transfer, archive, overwrite, irrecoverably commit.
Forgiveness fits situations like: A design lets users do something they might regret — delete; irrecoverably commit; designing destructive actions; confirmation dialogs.
Run `npx skills add hashgraph-online/awesome-codex-plugins --skill forgiveness -a claude-code`. Or copy the skill folder (plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness in hashgraph-online/awesome-codex-plugins) into .claude/skills/forgiveness in your project. Claude Code loads it when a task matches its description.
Run `npx skills add hashgraph-online/awesome-codex-plugins --skill forgiveness -a codex`. Or copy the skill folder (plugins/HDeibler/universal-design-principles/plugins/interaction-and-control-principles/skills/forgiveness in hashgraph-online/awesome-codex-plugins) into .agents/skills/forgiveness 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 hashgraph-online/awesome-codex-plugins --skill forgiveness -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/forgiveness, .gemini/skills/forgiveness, .github/skills/forgiveness and .opencode/skills/forgiveness in your project.
SKILL.md names no scripts, command-line tools or credentials: Forgiveness is instructions for the agent only.
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.
Forgiveness 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 4.2k tokens (SKILL.md is roughly 17k 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 1.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Forgiveness: Siftrank (noperator/siftrank, 225 stars), Support (haacked/dotfiles, 134 stars), Customer Support Agent (mastra-ai/mastra, 29k stars) and Add Agent Adapter (safedep/gryph, 172 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
hashgraph-online (a GitHub organization) maintains it in hashgraph-online/awesome-codex-plugins, which has 1,255 GitHub stars. The repository holds 714 skills in this directory. The repository was last updated on October 9, 2026.
Source: hashgraph-online/awesome-codex-plugins on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.