vara-skills-upgrade
Skill17 starsChanged 7 months agoMITView on GitHub
Use when asked to upgrade or update vara-skills to the latest version, or to check what version is installed. Do not use for Vara app development tasks.
- Deletes or force-pushes
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 3 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Run the update check with force (busts cache and snooze):
- Very specific: line 45
If _AUTO is true or 1, skip to Step 3 (upgrade silently).
- Distinctive: line 59
If B (Not now): Write snooze state and continue with the original skill.
- Distinctive: line 114
After a successful git or plugin upgrade:
- Very specific: line 129
If the tag lookup fails, just show: "Upgraded vara-skills from v{old} to v{new}."
≈ “Common” is an estimate: at least 1 in 5 of the 308,232 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Vara Skills Upgrade
Role
Upgrade the vara-skills pack to the latest version. Invoked automatically by the preamble when UPGRADE_AVAILABLE is detected, or manually via /vara-skills-upgrade.
Standalone Usage
Run the update check with force (busts cache and snooze):
_VS_DIR=""
for _d in \
"${VARA_SKILLS_DIR:-}" \
"$HOME/.claude/skills/vara-skills" \
".claude/skills/vara-skills" \
"$HOME"/.claude/plugins/cache/vara-skills/vara-skills/*; do
if [ -n "$_d" ] && [ -f "$_d/bin/vara-skills-update-check" ]; then
_VS_DIR="$_d"; break
fi
done
VARA_SKILLS_DIR="${_VS_DIR:-${VARA_SKILLS_DIR:-}}"
export VARA_SKILLS_DIR
_UPD=$("$VARA_SKILLS_DIR/bin/vara-skills-update-check" --force 2>/dev/null || true)
[ -n "$_UPD" ] && echo "$_UPD" || echo "vara-skills is up to date ($(cat "$VARA_SKILLS_DIR/VERSION" 2>/dev/null || echo unknown))"Then follow the routing below based on output.
Inline Upgrade Flow
This section is called by the preamble when the update check outputs UPGRADE_AVAILABLE <old> <new>.
Step 1: Check auto-upgrade
_AUTO="${VARA_SKILLS_AUTO_UPGRADE:-}"If _AUTO is true or 1, skip to Step 3 (upgrade silently).
Step 2: Ask the user
Use AskUserQuestion:
vara-skills v{new} is available (you have v{old}).
A) Upgrade now B) Not now (snooze) C) Never ask again
If A (Upgrade now): proceed to Step 3.
If B (Not now): Write snooze state and continue with the original skill.
# Read current snooze level (default to 0 if no file)
_SNOOZE_LEVEL=0
_SNOOZE_FILE="${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}/update-snoozed"
if [ -f "$_SNOOZE_FILE" ]; then
_SNOOZE_LEVEL=$(awk '{print $2}' "$_SNOOZE_FILE" 2>/dev/null || echo 0)
fi
_SNOOZE_LEVEL=$(( _SNOOZE_LEVEL + 1 ))
mkdir -p "${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}"
echo "{new} $_SNOOZE_LEVEL $(date +%s)" > "$_SNOOZE_FILE"Tell the user the snooze duration (level 1: 24h, level 2: 48h, level 3+: 7 days) and continue.
If C (Never ask again): Tell the user to add export VARA_SKILLS_UPDATE_CHECK=false to their shell profile (e.g. ~/.bashrc, ~/.zshrc, or ~/.config/fish/config.fish). Continue with the original skill.
Step 3: Perform upgrade
Detect the install type:
# VARA_SKILLS_DIR is inherited from preamble or standalone block above
if [ -d "${VARA_SKILLS_DIR:-.}/.git" ]; then
echo "INSTALL_TYPE: git"
elif echo "$VARA_SKILLS_DIR" | grep -q 'plugins/cache'; then
echo "INSTALL_TYPE: plugin"
else
echo "INSTALL_TYPE: non-git"
fiIf git install:
cd "$VARA_SKILLS_DIR"
git fetch origin
git reset --hard origin/mainIf plugin install:
_MKT="$HOME/.claude/plugins/marketplaces/vara-skills"
if [ -d "$_MKT/.git" ]; then
git -C "$_MKT" fetch origin 2>/dev/null && git -C "$_MKT" reset --hard origin/main 2>/dev/null
fi
claude plugin update vara-skills@vara-skillsIf non-git install: Tell the user: "This is not a git install. Re-clone from https://github.com/gear-foundation/vara-skills or reinstall the Claude Code plugin."
Step 4: Post-upgrade
After a successful git or plugin upgrade:
STATE_DIR="${VARA_SKILLS_STATE_DIR:-$HOME/.vara-skills}"
mkdir -p "$STATE_DIR"
echo "{old}" > "$STATE_DIR/just-upgraded-from"
rm -f "$STATE_DIR/last-update-check" "$STATE_DIR/update-snoozed"If git install, show what changed:
git log --oneline "{old_tag}..HEAD" 2>/dev/null | head -20If the tag lookup fails, just show: "Upgraded vara-skills from v{old} to v{new}."
If plugin install, just show: "Upgraded vara-skills from v{old} to v{new}. Restart Claude Code to apply changes."
Then continue with the original skill that triggered the preamble.
In this repository27 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- vara-skillsSkill
- vara-skillsSkill
- awesome-sails-vftSkill
- gear-architecture-plannerSkill
- gear-builtin-actorsSkill
- gear-gstd-api-mapSkill
- gear-message-executionSkill
- gtest-tdd-loopSkill
- idea-to-specSkill
- sails-architectureSkill
- sails-dev-envSkill
- sails-ethexe-architectureSkill
- sails-ethexe-implementerSkill
- sails-feature-workflowSkill
- sails-frontendSkill
- sails-gtestSkill
- sails-idl-clientSkill
- sails-indexerSkill
- sails-local-smokeSkill
- sails-new-appSkill
- sails-program-evolutionSkill
- sails-rust-implementerSkill
- ship-sails-appSkill
- task-decomposerSkill
- vara-walletSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

