Frontend Request Skill
jiushiwon/wg-skills
A skill your agent uses when designing or reviewing the request layer of a frontend project (web / uni-app / mini-program), including request.ts wrappers, interceptors, deduplication, mocks, error…
Guidelines for reviewing API design in the Hex1b codebase. An agent skill from mitchdenny/hex1b.
$ npx skills add mitchdenny/hex1b --skill api-reviewer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mitchdenny/hex1b api-reviewer --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/mitchdenny/hex1b.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.github/skills/api-reviewer .claude/skills/api-reviewer && 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 "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .claude/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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/mitchdenny/hex1b/tree/main/.github/skills/api-reviewerType 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 mitchdenny/hex1b --skill api-reviewer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mitchdenny/hex1b api-reviewer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitchdenny/hex1b.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.github/skills/api-reviewer .agents/skills/api-reviewer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .agents/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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 mitchdenny/hex1b --skill api-reviewer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mitchdenny/hex1b api-reviewer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitchdenny/hex1b.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.github/skills/api-reviewer .cursor/skills/api-reviewer && 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 "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .cursor/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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/mitchdenny/hex1b.git --path .github/skills/api-reviewer--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 mitchdenny/hex1b --skill api-reviewer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mitchdenny/hex1b api-reviewer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitchdenny/hex1b.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.github/skills/api-reviewer .gemini/skills/api-reviewer && 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 "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .gemini/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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 mitchdenny/hex1b api-reviewerInstalls 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 mitchdenny/hex1b --skill api-reviewer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mitchdenny/hex1b.git skills-src && mkdir -p .github/skills && cp -r skills-src/.github/skills/api-reviewer .github/skills/api-reviewer && 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 "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .github/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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 mitchdenny/hex1b --skill api-reviewer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mitchdenny/hex1b api-reviewer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mitchdenny/hex1b.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.github/skills/api-reviewer .opencode/skills/api-reviewer && 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 "api-reviewer" agent skill from https://github.com/mitchdenny/hex1b/tree/main/.github/skills/api-reviewer into .opencode/skills/api-reviewer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "api-reviewer", 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.
api-reviewerGuidelines for reviewing API design in the Hex1b codebase. An agent skill from mitchdenny/hex1b.
API Reviewer is an agent skill from mitchdenny/hex1b. Guidelines for reviewing API design in the Hex1b codebase. Use when evaluating public APIs, reviewing accessibility modifiers, or assessing whether new APIs follow project conventions.
Its SKILL.md is about 4k 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 Backend & APIs, covering API design and Accessibility. It works with React. The repository describes itself as: The .NET Terminal Application Stack. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit e2335bd. 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 csharp).
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.
API Reviewer loads about 4k tokens when it runs. Until then it costs about 49 tokens; SKILL.md has 1,271 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 mitchdenny/hex1b at commit e2335bd, republished under its MIT licence (© mitchdenny). 1,271 words, ~3,980 tokens.
.claude/skills/api-reviewer/SKILL.md (or your agent's skills folder).This skill captures API design preferences for the Hex1b codebase. Use it when reviewing public APIs, evaluating whether code should be public or internal, or assessing API design decisions made by AI agents.
Hex1b is structured into distinct layers, each with different API design considerations:
The foundational layer maintaining an in-memory representation of terminal state.
| Component | Purpose | Accessibility |
|---|---|---|
Hex1bTerminal | Core terminal state management | Public |
Hex1bTerminalBuilder | Fluent terminal construction | Public |
| Presentation adapters | Output to real terminals, tests, web | Public interfaces |
| Workload adapters | Input/output abstraction | Public interfaces |
Surface, SurfaceCell | Low-level cell storage | Public (low-level API) |
Design note: Hex1bTerminal emerged from the need to properly test TUI components. The adapter pattern enables use in real terminals, unit tests, or projecting state across networks.
The widget/node tree layer, inspired by React/Ink but not beholden to it.
| Component | Purpose | Accessibility |
|---|---|---|
Hex1bApp | Root of TUI applications | Public |
*Widget records | Declarative UI configuration | Public |
*Node classes | DOM-like render elements | Generally public (for extensibility) |
| Reconciliation logic | Widget→Node synchronization | Internal |
| Layout algorithms | Measure/arrange implementation | Internal |
Testing and automation infrastructure.
| Component | Purpose | Accessibility |
|---|---|---|
Hex1bTerminalInputSequenceBuilder | Fluent input automation | Public |
CellPatternSearcher | Visual assertion matching | Public |
Hex1bTerminalSnapshot | Captured terminal state | Public |
Design note: Automation APIs are explicitly for external consumers, not just internal testing.
When reviewing accessibility modifiers, apply this framework:
When reviewing agent-generated code, ask:
With...() PatternFor Hex1bTerminalBuilder and similar construction scenarios:
// ✅ PREFERRED: Classic builder pattern
var terminal = Hex1bTerminal.CreateBuilder()
.WithWorkload(workload)
.WithPresentation(presentation)
.WithDimensions(80, 24)
.WithHeadless()
.Build();For widget APIs, use minimal constructors with essential arguments only, then fluent extension methods:
// ✅ PREFERRED: Minimal constructor + fluent methods
ctx.Table(columns, rows)
.SelectedRow(selectedIndex)
.OnSelectionChanged(HandleSelection)
// ✅ PREFERRED: Cross-cutting concerns as extension methods
ctx.Progress(value, max).Fill()
// ❌ AVOID: Overloaded constructors with many parameters
new TableWidget(columns, rows, selectedIndex, onSelectionChanged, sortColumn, sortDirection, ...)Guideline: Only include the most essential arguments in the constructor. Make usage "bleeding obvious." Use extension methods to splice in extra behavior.
IStatefulWidget<TSelf, TState>When a widget owns non-trivial mutable user-facing state (a textbox's buffer + cursor, an editor's document, a navigator's selection, a checkbox's checked value), expose that state to callers so composites can drive the widget from outside.
The framework-wide contract is IStatefulWidget<TSelf, TState>:
public sealed record TextBoxWidget(...)
: Hex1bWidget, IStatefulWidget<TextBoxWidget, TextBoxState>
{
internal TextBoxState? InjectedState { get; init; }
public TextBoxWidget State(TextBoxState state) => this with { InjectedState = state };
}Callers then own the state via ctx.UseState(...) and bind it:
var state = ctx.UseState(() => new TextBoxState());
return ctx.TextBox().State(state);When to apply:
UseState needed.Rules:
where TState : class) so external mutations are observed..State(s) must route the same instance into the node every reconcile..State(...), conflicting use must throw InvalidOperationException on reconcile (no precedence rules to memorise).State(...) — the analyzer (HEX1B0001) forbids With* on widget extension methods.See TextBoxWidget/TextBoxState, EditorWidget/EditorState, NavigatorWidget/NavigatorState, CheckboxWidget/CheckboxState for the canonical patterns.
When you start creating many overloads, use an options type:
// ✅ PREFERRED: Options type for complex configuration
public class Hex1bAppOptions
{
public Hex1bTheme? Theme { get; init; }
public IHex1bTerminalWorkloadAdapter? WorkloadAdapter { get; init; }
// ... extensible without breaking changes
}
// ❌ AVOID: Many overloads
public Hex1bApp(Func<...> builder) { }
public Hex1bApp(Func<...> builder, Hex1bTheme theme) { }
public Hex1bApp(Func<...> builder, Hex1bTheme theme, IWorkloadAdapter adapter) { }But: Don't have options classes everywhere. Be conservative with what you require.
// ✅ PREFERRED: Task as default
public Task<Hex1bWidget> BuildAsync(WidgetContext ctx);
// ✅ Use ValueTask when there's a performance reason (hot paths, avoiding allocations)
public ValueTask HandleInputAsync(Hex1bKeyEvent key);Provide both sync and async overloads for event handlers. Implement everything assuming async is possible, then wrap sync handlers:
// ✅ PREFERRED: Both overloads, sync wraps to async
public ButtonWidget OnClick(Action<ButtonClickedEventArgs> handler)
=> this with { ClickHandler = args => { handler(args); return Task.CompletedTask; } };
public ButtonWidget OnClick(Func<ButtonClickedEventArgs, Task> handler)
=> this with { ClickHandler = handler };Note: Samples often favor sync versions for simplicity.
// ✅ PREFERRED: Strongly typed
public void SetColor(Hex1bColor color);
// ❌ AVOID: Magic strings
public void SetColor(string colorName);// ❌ AVOID: Forcing callers to pass null
public void Configure(string? requiredArg, string? optionalArg);
Configure("value", null); // Awkward
// ✅ PREFERRED: Overloads or optional parameters
public void Configure(string requiredArg);
public void Configure(string requiredArg, string optionalArg);Be wary of using too many primitive types, as it makes creating overloads harder in the future:
// Consider whether a type is warranted
public void SetPosition(int x, int y); // OK for simple cases
public void SetPosition(Point position); // Better if Point is meaningful elsewhereUse extension methods when:
.Fill(), .FixedWidth()Use instance methods when:
Minimize the namespaces developers need to know:
// ✅ PREFERRED: Most types in root namespace
using Hex1b;
// Specialized namespaces for specific concerns
using Hex1b.Theming;
using Hex1b.Input;Guideline: Ideally, most developers just need using Hex1b; and discover other types through methods on types in that namespace.
📘 See the
doc-writerskill for comprehensive documentation guidelines including XML API docs and end-user guides.
All public APIs must have XML documentation:
/// <summary>
/// Creates a button widget with the specified label.
/// </summary>
/// <remarks>
/// Buttons are focusable widgets that respond to Enter key or click events.
/// Use <see cref="OnClick"/> to register a handler for button activation.
///
/// Buttons automatically display a focus indicator when focused and can be
/// styled using <see cref="ButtonTheme"/> elements.
/// </remarks>
/// <param name="label">The text displayed on the button.</param>
/// <example>
/// <description>A simple quit button that stops the application:</description>
/// <code>
/// using Hex1b;
///
/// await using var terminal = Hex1bTerminal.CreateBuilder()
/// .WithHex1bApp((app, options) => ctx =>
/// ctx.Button("Quit").OnClick(e => e.Context.RequestStop()))
/// .Build();
///
/// await terminal.RunAsync();
/// </code>
/// </example>
public sealed record ButtonWidget(string Label) : Hex1bWidget| Element | Guideline |
|---|---|
<summary> | Concise and accurate - what it does, not how |
<remarks> | Detailed, useful from end-user perspective, no irrelevant internals |
<param> | Required for all parameters |
<returns> | Required for non-void methods |
<example> | Complete, runnable mini-apps when possible |
<code> | Cut-and-paste ready, not just method invocation |
Anti-pattern: Examples that just show invoking the method without context. Always provide complete, runnable examples.
Throw exceptions when something is truly irrecoverable:
// ✅ Use existing exception types when they fit
throw new ArgumentNullException(nameof(widget));
throw new InvalidOperationException("Cannot render before Measure()");
// ✅ Custom exceptions when debugging info is needed
throw new Hex1bRenderException(widget, node, phase, "Render failed", innerException);Guideline: Think about what information developers need to debug. Attach widget/node/phase information when it helps.
Note: The RescueWidget exists to handle and display errors gracefully in the UI.
Each type should be in its own file. This makes it easier to:
// ❌ AVOID: Static state (causes testability bugs)
private static readonly Dictionary<string, Widget> _cache = new();
// ✅ PREFERRED: Instance state
private readonly Dictionary<string, Widget> _cache = new();Rationale: AI agents tend to use statics, which introduce subtle testability bugs.
// ✅ OK: Constants
public const int DefaultWidth = 80;
public const int DefaultHeight = 24;When reviewing APIs, check:
With...() pattern? (and ONLY builders — flagged by HEX1B0001 if a widget extension or instance method starts with With)Widget and are declared as record (HEX1B0002 / HEX1B0004)Node and are declared as class (HEX1B0003 / HEX1B0005)With* methods on widgets — use bare verb-noun names like Title("..."), MaxFloating(3), Disabled(true) (HEX1B0001)These rules are enforced at build time by the Hex1b.Analyzers Roslyn analyzer wired into every project via the root Directory.Build.props. See AGENTS.md § "Code Analysis Rules" for the full table. If a flagged case is intentional and cannot follow the rule, suppress with #pragma warning disable HEX1B000x rather than disabling the analyzer wholesale.
AI agents often make things public by default. Flag for review:
// ❌ REVIEW: Should this be internal?
public void ReconcileChildNodes(List<Hex1bNode> children) { }
// ❌ REVIEW: Implementation detail exposed
public int CalculateInternalLayoutOffset() { }When you see many overloads, suggest an options type:
// ❌ REVIEW: Consider options type
public Table(columns);
public Table(columns, selectedRow);
public Table(columns, selectedRow, sortColumn);
public Table(columns, selectedRow, sortColumn, sortDirection);Flag string parameters that should be types:
// ❌ REVIEW: Should be enum or type
public void SetAlignment(string alignment); // "left", "center", "right"
// ✅ Better
public void SetAlignment(Alignment alignment);Flag public APIs without proper documentation:
// ❌ REVIEW: Missing documentation
public Hex1bWidget CreateWidget(WidgetContext ctx);
// ❌ REVIEW: Example not runnable
/// <example>
/// <code>
/// widget.OnClick(handler);
/// </code>
/// </example>© mitchdenny, MIT. 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/api-reviewer of mitchdenny/hex1b.
Open the folder on GitHubat commit e2335bd
API Reviewer 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 |
|---|---|---|---|---|---|---|
| API Reviewer this skillmitchdenny/hex1b | 178 | — | ~4k | Automated safety check: Pass | MIT | |
| Frontend Request Skilljiushiwon/wg-skills | 114 | — | ~3.6k | Automated safety check: Pass | Apache-2.0 | |
| Ariasickn33/agentic-awesome-skills | 47k | 1 repos | ~1.5k | Automated safety check: Pass | MIT | |
| Nutui Reactjdf2e/nutui-react | 1.2k | — | ~883 | Automated safety check: Pass | None | |
| Nutui React Tarojdf2e/nutui-react | 1.2k | — | ~956 | Automated safety check: Pass | None | |
| Implementing Navigationancoleman/ai-design-components | 526 | — | ~1.8k | Automated safety check: Pass | MIT |
jiushiwon/wg-skills
A skill your agent uses when designing or reviewing the request layer of a frontend project (web / uni-app / mini-program), including request.ts wrappers, interceptors, deduplication, mocks, error…
sickn33/agentic-awesome-skills
Designs the data model, API contracts, and structural foundation of the system.
jdf2e/nutui-react
当用户的任务涉及 NutUI React(@nutui/nutui-react)时使用 —— 编写 NutUI React 组件、调试 NutUI 问题,或查询 NutUI 组件的 API/属性/文档/示例/设计变量(Design Token)。触发场景:与 NutUI 相关的代码、从 '@nutui/nutui-react' 导入,或明确的 NutUI 相关提问。NutUI React…
jdf2e/nutui-react
当用户的任务涉及 NutUI React Taro(@nutui/nutui-react-taro)时使用 —— 为小程序 / 跨端(Taro)应用编写 NutUI React Taro 组件、调试 NutUI Taro 问题,或查询 NutUI Taro 组件的 API/属性/文档/示例/设计变量(Design Token)。
ancoleman/ai-design-components
Implements navigation patterns and routing for both frontend (React/TS) and backend (Python) including menus, tabs, breadcrumbs, client-side routing, and server-side route configuration.
ancoleman/ai-design-components
Implements search and filter interfaces for both frontend (React/TypeScript) and backend (Python) with debouncing, query management, and database integration.
mitchdenny/hex1b
Guidelines for running and interpreting Surface API performance benchmarks.
mitchdenny/hex1b
Agent for validating Hex1b documentation against actual library behavior.
mitchdenny/hex1b
Guidelines for producing accurate and maintainable documentation for the Hex1b TUI library.
mitchdenny/hex1b
Agent for diagnosing and fixing flaky terminal UI tests in the Hex1b test suite.
mitchdenny/hex1b
Step-by-step guide for creating new widgets in the Hex1b TUI library.
mitchdenny/hex1b
Guidelines for writing unit tests in the Hex1b TUI library. An agent skill from mitchdenny/hex1b.
Works with
Categories
Guidelines for reviewing API design in the Hex1b codebase. An agent skill from mitchdenny/hex1b. API Reviewer is an agent skill from mitchdenny/hex1b. Guidelines for reviewing API design in the Hex1b codebase.
API Reviewer fits situations like: evaluating public APIs; reviewing accessibility modifiers; assessing whether new APIs follow project conventions.
Run `npx skills add mitchdenny/hex1b --skill api-reviewer -a claude-code`. Or copy the skill folder (.github/skills/api-reviewer in mitchdenny/hex1b) into .claude/skills/api-reviewer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mitchdenny/hex1b --skill api-reviewer -a codex`. Or copy the skill folder (.github/skills/api-reviewer in mitchdenny/hex1b) into .agents/skills/api-reviewer 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 mitchdenny/hex1b --skill api-reviewer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/api-reviewer, .gemini/skills/api-reviewer, .github/skills/api-reviewer and .opencode/skills/api-reviewer in your project.
SKILL.md names no scripts, command-line tools or credentials: API Reviewer 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.
API Reviewer is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4k tokens (SKILL.md is roughly 16k 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 API Reviewer: Frontend Request Skill (jiushiwon/wg-skills, 114 stars), Aria (sickn33/agentic-awesome-skills, 47k stars), Nutui React (jdf2e/nutui-react, 1.2k stars) and Nutui React Taro (jdf2e/nutui-react, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mitchdenny (a GitHub user) maintains it in mitchdenny/hex1b, which has 178 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 9, 2026.
Source: mitchdenny/hex1b on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.