Install
$ agentstack add skill-sdeenadmin-skill-valet-skill ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
skill-valet
skill-valet is a UserPromptSubmit hook that keeps the per-turn skill list lean. It keyword-classifies each prompt into skill groups (defined in ~/.claude/skill-valet.json), moves a group's skill directories back into ~/.claude/skills/ when the prompt needs them, and parks groups that have been idle for park_after turns (default 20) into ~/.claude/skills-off/.
When invoked, do this
- Run
python3 /skill_valet.py statusto show the user which
groups are ON / PARKED / PARTIAL, the turn counter, and idle times.
- If the user asks why a skill is missing: check whether it belongs to a
parked group (status output) or sits in ~/.claude/skills-off/.
- Manual overrides on request:
on/off— force a group in or out nowall-on— restore every managed skillpause/resume— kill switch: while paused the hook does nothing
- To change what is managed: edit
~/.claude/skill-valet.json— move a
skill name between always_on (never touched) and a group's skills list, or tune the group's keywords.
Honest boundaries — state these when relevant
- Next-turn effect, not same-turn. A skill un-parked by this prompt
appears in the skill list from the NEXT turn onward. If the user needs a parked skill right now, run on and ask them to re-send the request.
- User skills only. Plugins, plugin skills, and MCP servers are bound
to session start — skill-valet cannot switch those mid-session; a restart (or profile switcher) is required.
- Hooks are NEVER touched — by design. Hooks are the user's
deterministic safety layer; skill-valet has no code path that reads or modifies them.
- Multi-session caveat. Directory moves are global: parking a group
affects every concurrently running Claude Code session on this machine.
- Fail-open. If the hook errors it silently does nothing (exit 0) — it
will never block a prompt. If behavior seems off, check ~/.claude/skill-valet-state.json and the config for JSON validity.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: SDeenAdmin
- Source: SDeenAdmin/skill-valet
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.