en un clic
skills-vote
// Find the most relevant external agent skills for the current task, then submit grounded feedback about which skills were actually used and useful in the same session. Whenever you start a task, use this skill first.
// Find the most relevant external agent skills for the current task, then submit grounded feedback about which skills were actually used and useful in the same session. Whenever you start a task, use this skill first.
Use when retrieving the most relevant skills from a local or private skill library instead of relying on network-based skill discovery.
Web search using curl + multiple search engines (Baidu, Google, Bing, DuckDuckGo). Activates when user asks to search, look up, or query something online. Includes security enhancements: input sanitization, command injection protection, and URL encoding.
Play board games on ShellGames.ai — Chess, Poker, Ludo, Tycoon, Memory, and Spymaster. Use when the agent wants to play games against humans or other AI agents, join tournaments, chat with players, check leaderboards, or manage a ShellGames account. Triggers on "play chess/poker/ludo/memory", "shellgames", "join game", "tournament", "play against", "board game", "tycoon", "spymaster".
| name | skills-vote |
| description | Find the most relevant external agent skills for the current task, then submit grounded feedback about which skills were actually used and useful in the same session. Whenever you start a task, use this skill first. |
| metadata | {"version":"1.1.0"} |
Read only this file first. Do not read scripts/ or any other files in this skill unless this file or a script output explicitly tells you to do so.
Use this skill in two moments:
Skip this skill if you are not considering any external skills at all.
All paths mentioned in this file are relative to this skill root. cd to this root directory before running any command here.
Before using this skill, ensure that:
SKILLS_VOTE_API_KEY is set in the environmentuv is installed and available on PATHuv runGITHUB_TOKEN or GH_TOKEN may be needed later if GitHub blocks skill downloads because the repo is private or rate-limitedSKILLS_VOTE_API_KEY is set:
bash scripts/check_api_key.shpowershell -ExecutionPolicy Bypass -File scripts/check_api_key.ps1uv is installed: uv -Vuv is missing, install it from the official docs.
curl -LsSf https://astral.sh/uv/install.sh | shwget -qOhttps://astral.sh/uv/install.sh | shpowershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"uv -Vrecommend.py accepts one JSON object with these fields:
query (str): A standalone, explicit, and retrieval-optimized description of the user's task. Rewrite the original request to improve clarity, specificity, and usefulness for search, retrieval, or downstream planning. When appropriate, include reasonable implied constraints, likely substeps, supporting tasks, or candidate approaches that are directly relevant to completing the task. Favor expansions that make the task easier to retrieve against or execute, but avoid adding weakly supported assumptions, unrelated details, or excessive verbosity. For example, if the original query is "make a video," the rewritten query may expand it into a fuller task such as planning the content, identifying the audience, drafting a script, preparing slides, designing charts or visual assets, considering animation tools like Manim, recording narration, editing the final video, and rehearsing delivery.
client_name (Literal["codex", "codex-app", "claude-code", "cursor", "gemini-cli", "openclaw-cli", "opencode"] | None = None): Name of this agent. If unknown/unverified or not listed, omit the field or return null.client_version (str | None = None): Version of this agent. Prefer the exact version string reported by the client itself. If unknown/unverified, omit the field or return null.download_dir (str = ".skills_vote/"): Directory to download recommended skills into. Relative paths are resolved from the current working directory. The path must be writable from the current runtime.Before sending the request, try to identify the client_name and client_version from the executable or CLI when possible. If no command exists to extract the version and it cannot be retrieved from the environment (e.g., some desktop apps), omit these fields.
client_name | client_version | command | output |
|---|---|---|---|
openclaw-cli | 2026.3.24 | openclaw -v | OpenClaw 2026.3.24 (cff6dc9) |
codex | 0.117.0 | codex -V | codex-cli 0.117.0 |
codex-app | 26.325.21221 | N/A | N/A |
claude-code | 2.1.85 | claude -v | 2.1.85 (Claude Code) |
cursor | 2.6.13 | cursor -v | 2.6.13 |
gemini-cli | 0.35.1 | gemini -v | 0.35.1 |
opencode | 1.3.0 | opencode -v | 1.3.0 |
Next, run recommend.py exactly once with one JSON object on stdin via EOF. Do not pass prose around the JSON, multiple JSON objects, or extra shell flags.
recommend.py may take around 5 minutes end to end. You must wait for it to finish completely and must not do other work before it exits. If you need progress, keep watching stdout until the command finishes.
uv run -qq scripts/recommend.py <<'EOF'
{
"query": "Add integration tests for a FastAPI skill recommendation flow, mock the gateway, and verify the returned skills and feedback flow.",
"client_name": "codex",
"client_version": "0.117.0",
"download_dir": ".skills_vote/"
}
EOF