Dotnet Webapi
dotnet/skills
Guides creation and modification of ASP.NET Core Web API endpoints with correct HTTP semantics, OpenAPI metadata, and error handling.
A skill your agent uses when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual…
$ npx skills add mountain-loop/yaak --skill use-yaak -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install mountain-loop/yaak use-yaak --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/mountain-loop/yaak.git skills-src && mkdir -p .claude/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .claude/skills/use-yaak && 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 "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .claude/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaakType 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 mountain-loop/yaak --skill use-yaak -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install mountain-loop/yaak use-yaak --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mountain-loop/yaak.git skills-src && mkdir -p .agents/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .agents/skills/use-yaak && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .agents/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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 mountain-loop/yaak --skill use-yaak -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install mountain-loop/yaak use-yaak --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mountain-loop/yaak.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .cursor/skills/use-yaak && 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 "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .cursor/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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/mountain-loop/yaak.git --path crates-cli/yaak-cli/skills/use-yaak--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 mountain-loop/yaak --skill use-yaak -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install mountain-loop/yaak use-yaak --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mountain-loop/yaak.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .gemini/skills/use-yaak && 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 "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .gemini/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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 mountain-loop/yaak use-yaakInstalls 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 mountain-loop/yaak --skill use-yaak -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/mountain-loop/yaak.git skills-src && mkdir -p .github/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .github/skills/use-yaak && 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 "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .github/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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 mountain-loop/yaak --skill use-yaak -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install mountain-loop/yaak use-yaak --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/mountain-loop/yaak.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/crates-cli/yaak-cli/skills/use-yaak .opencode/skills/use-yaak && 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 "use-yaak" agent skill from https://github.com/mountain-loop/yaak/tree/main/crates-cli/yaak-cli/skills/use-yaak into .opencode/skills/use-yaak/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "use-yaak", 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.
use-yaakA skill your agent uses when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual…
Use Yaak is an agent skill from mountain-loop/yaak. Use when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual testing, configure auth on saved requests, import an OpenAPI spec, a Postman, Insomnia, or Bruno collection, or a cURL command, or run saved requests across environments. Prefer over one-off curl when requests should be saved, reused, shared, or run as a set.
Its SKILL.md is about 1.9k 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 QA and bug reports, API testing and Realtime and WebSockets. It works with Postman, OpenAPI, gRPC and Tauri. The repository describes itself as: The most intuitive desktop API client. Organize and execute REST, GraphQL, WebSockets, Server Sent Events, and gRPC 🦬. The licence is MIT.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 919e58f. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
Bash(yaak:*)Bash(which:*)Bash(command:*)Bash(npm:*)Bash(npx:*)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
npmFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.
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.
Use Yaak loads about 1.9k tokens when it runs. Until then it costs about 113 tokens; SKILL.md has 948 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 mountain-loop/yaak at commit 919e58f, republished under its MIT licence (© mountain-loop). 948 words, ~1,875 tokens.
.claude/skills/use-yaak/SKILL.md (or your agent's skills folder).<!--
Managed by the Yaak CLI. `yaak agent install` replaces this file wholesale on
every run, so local edits are lost. To add your own guidance, write a separate
skill or use your tool's project instructions instead.
yaak-cli-version: __YAAK_CLI_VERSION__
-->
Yaak is a desktop API client. The yaak CLI reads and writes the same local
database as the desktop app, so anything you create shows up in the app
immediately, and vice versa. There is no server and no sign-in: yaak auth is
only for publishing plugins to the Yaak registry.
Two consequences worth holding onto. Requests you create are permanent user data in an app they use, not scratch files, so name them the way the user would and clean up anything created just to test. And because the app is right there, the CLI is usually the wrong place to read a response in detail; it is the right place to build, organize, and run requests.
This skill deliberately does not list fields, body types, auth strategies, or template functions. The user's CLI version and installed plugins decide what exists, so any list written here would eventually be wrong. Ask the CLI:
yaak --help # commands, plus agent hints at the bottom
yaak <command> --help # flags for one command
yaak request schema http --pretty # full request model, with guidance per field
yaak template-function list [filter] # template functions from installed plugins
yaak template-function show <name> # one function's argumentsrequest schema http is generated from the real model and merges in the auth
strategies contributed by plugins, so it is the authoritative answer for what a
request payload may contain and what each auth strategy needs. workspace,
environment, and folder have schema subcommands too.
Read the relevant schema before writing a JSON payload you are not certain of. That is faster than a failed send, and it stays correct as Yaak changes.
wk_…) is the top-level container.fl_…) groups requests and can nest. Folders carry headers and
authentication that child requests inherit, which is the usual way to apply
one token to a whole group.rq_…) is a single HTTP, gRPC, or WebSocket request. The CLI can
currently only create and send HTTP ones.ev_…) holds variables. Each workspace has a base
environment plus any number of sub-environments; a sub-environment overrides
base variables of the same name and is chosen per send with -e.cj_…) stores cookies per workspace. The oldest is used by
default, so this normally needs no attention.IDs are prefix-typed, so you can always tell what an ID refers to. Commands that take a workspace ID infer it when exactly one workspace exists.
yaak --version || npm install -g @yaakapp/cli
yaak workspace listPick the workspace matching the user's project before changing anything, and create one only when nothing fits.
The CLI writes this skill, so an upgraded CLI can leave it behind. That failure is silent: nothing errors, the skill just stops mentioning things the CLI can now do. Check once per session, alongside the commands above:
yaak --help 2>&1 | grep -A2 "Agent tooling:"If it reports the skill is out of date, run yaak agent install and tell the
user to restart their coding tool. This session keeps running on the old copy
until they do, so finish the current request either way. Check once and do not
re-run it after acting.
When the CLI and this skill disagree, the CLI is right.
Start from a spec when one exists. yaak import <path> auto-detects OpenAPI,
Swagger, Postman, Insomnia, Bruno, cURL, and Yaak exports, and beats authoring requests
by hand every time. Bruno collections can also be imported from a ZIP or directory.
Make the host swappable. Put the base URL in a base-environment variable,
reference it as ${[ base_url ]}, then add a sub-environment per deployment
target. Now yaak -e ev_staging send <wk_id> runs everything against staging.
Chain instead of shell-plumbing. A request can read another request's response directly, and Yaak sends the dependency first if it needs to:
${[ response.body.path(request='rq_login', path='$.token') ]}Run yaak template-function show response.body.path for its arguments,
including how to control when the upstream request re-sends. Chain when a
request genuinely depends on another's response; to merely run requests in
order, yaak send <fl_id> already does that.
Run a set. yaak send accepts a folder or workspace ID, with --fail-fast
and --parallel. Workspace and request IDs survive an export/import, so a
committed yaak export plus --data-dir ./.yaak gives a runnable suite in CI.
A plain send writes only the response body to stdout. Yaak also stores every response, so the reliable way to see what happened is to ask afterwards rather than to parse the send output:
yaak response show rq_abc123 # latest response for a request, as JSON
yaak response list rq_abc123 # its history, newest first
yaak response body rq_abc123 # just the bodyresponse show gives status, reason, timing, headers, the final URL, and any
transport error. Pass a response ID for a specific one.
-v on a send prints the same information prefixed *, >, and <, with the
body after the last < header line:
yaak -v request send rq_abc123 2>&1 | grep '^< HTTP'That works, but response show is still better when you need to act on the
result, since it gives you fields rather than text to parse.
Exit code 1 means the send did not complete: an unresolved template variable, an
unreachable host, a TLS failure. HTTP error statuses are not failures. Like
curl, a 404 or 500 exits 0, and a folder of requests that all return 500
reports success. Never tell the user an API is healthy based on a clean exit;
check the status.
update takes a JSON merge patch keyed by id: send only what changes, and
note that arrays are replaced wholesale, not merged.--yes in a non-interactive shell. Confirm with the user first.yaak agent install so this
skill updates too.© mountain-loop, 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 crates-cli/yaak-cli/skills/use-yaak of mountain-loop/yaak.
Open the folder on GitHubat commit 919e58f
Use Yaak 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 |
|---|---|---|---|---|---|---|
| Use Yaak this skillmountain-loop/yaak | 19k | — | ~1.9k | Automated safety check: Pass | MIT | |
| Dotnet Webapidotnet/skills | 5.6k | 2 repos | ~5.5k | Automated safety check: Pass | MIT | |
| API Architectcuriositech/some_claude_skills | 243 | 1 repos | ~1.4k | Automated safety check: Pass | MIT | |
| API ForgeEliasOulkadi/shokunin | 114 | — | ~2.9k | Automated safety check: Pass | MIT | |
| API Protocol Securityzhaji2333/CkSKILLS | 113 | — | ~520 | Automated safety check: Pass | MIT | |
| System Design CommunicationHoangNguyen0403/agent-skills-standard | 571 | — | ~894 | Automated safety check: Pass | MIT |
dotnet/skills
Guides creation and modification of ASP.NET Core Web API endpoints with correct HTTP semantics, OpenAPI metadata, and error handling.
curiositech/some_claude_skills
Expert API designer for REST, GraphQL, gRPC architectures. An agent skill from curiositech/some_claude_skills.
EliasOulkadi/shokunin
Design REST/GraphQL APIs with OpenAPI 3.1, error handling, pagination, rate limiting, webhooks, and idempotency.
zhaji2333/CkSKILLS
当目标存在REST/GraphQL/gRPC/WebSocket接口、Swagger/OpenAPI文档、调试端点(actuator/console)、旧版本API、内部接口、微服务网关,或需要测试HTTP走私、DoS、速率限制时调用。负责API全方法测试、BOLA越权、GraphQL深度攻击、协议层漏洞挖掘。
HoangNguyen0403/agent-skills-standard
Select how services talk: REST, gRPC, GraphQL, WebSocket, SSE, or webhook per hop, sync versus async per flow, service discovery mode, and DNS/edge routing.
rust-dd/tako
General coding-style rules to apply to every project. An agent skill from rust-dd/tako.
mountain-loop/yaak
Create or edit Yaak changelogs. An agent skill from mountain-loop/yaak.
mountain-loop/yaak
Generate Yaak release notes from git history and PR metadata, including feedback links and full changelog compare links.
Categories
A skill your agent uses when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual…. Use Yaak is an agent skill from mountain-loop/yaak. Use when the user mentions Yaak, a Yaak workspace, or the yaak command, or asks to call, hit, or smoke test HTTP/REST endpoints, save or organize API requests for reuse or manual testing, configure auth on saved requests, import an OpenAPI spec, a Postman, Insomnia, or Bruno collection, or a cURL command, or run saved requests across environments.
Use Yaak fits situations like: the user mentions Yaak; A Yaak workspace; the yaak command; smoke test HTTP/REST endpoints.
Run `npx skills add mountain-loop/yaak --skill use-yaak -a claude-code`. Or copy the skill folder (crates-cli/yaak-cli/skills/use-yaak in mountain-loop/yaak) into .claude/skills/use-yaak in your project. Claude Code loads it when a task matches its description.
Run `npx skills add mountain-loop/yaak --skill use-yaak -a codex`. Or copy the skill folder (crates-cli/yaak-cli/skills/use-yaak in mountain-loop/yaak) into .agents/skills/use-yaak 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 mountain-loop/yaak --skill use-yaak -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/use-yaak, .gemini/skills/use-yaak, .github/skills/use-yaak and .opencode/skills/use-yaak in your project.
Going by SKILL.md and its folder, Use Yaak needs the command-line tools its instructions call (npm). Our summary lists: Node.js. Its frontmatter pre-approves these tools: Bash(yaak:*), Bash(which:*), Bash(command:*), Bash(npm:*), Bash(npx:*).
SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. 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.
Use Yaak is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.9k tokens (SKILL.md is roughly 7.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 Use Yaak: Dotnet Webapi (dotnet/skills, 5.6k stars), API Architect (curiositech/some_claude_skills, 243 stars), API Forge (EliasOulkadi/shokunin, 114 stars) and API Protocol Security (zhaji2333/CkSKILLS, 113 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
mountain-loop (a GitHub organization) maintains it in mountain-loop/yaak, which has 19,297 GitHub stars. The repository holds 3 skills in this directory. The repository was last updated on October 7, 2026.
Source: mountain-loop/yaak on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.