Claude-Mind: Skill for Claude Code

.claude/skills/aspirations-select/SKILL.md

aspirations-select is a skill for Claude Code from zkysar1/Claude-Mind. It costs 98 tokens per session (11,785 once invoked), scanned A, original, MIT.

A procedure for choosing the next goal from a list of unclaimed goals that are not blocked.

In plain words
What is it for?
Use it to rank goals, decide how much effort they need, identify tasks that can be grouped, and prepare relevant context.
Why use it?
It combines automated scoring with a review of value, effort, familiarity, dependencies, and blockers so the agent works on a suitable task next.

Skill for Claude Code

Written for Claude Code: user-invocable in frontmatter.

This is zkysar1/Claude-Mind's own configuration. It tells Claude Code how to work on Claude-Mind itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything Claude-Mind configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is Bash: bash core/scripts/context-budget-banner.sh # required — quote this line in your response.

Reuse

Borrowing it

Nothing to install: this file belongs to zkysar1/Claude-Mind. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/zkysar1/Claude-Mind/main/.claude/skills/aspirations-select/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/zkysar1/Claude-Mind

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for aspirations-select

README.md
[![agentmods](https://agentmods.dev/badge/skills/zkysar1/claude-mind/aspirations-select/github.svg)](https://agentmods.dev/skills/zkysar1/claude-mind/aspirations-select)
Your own site
<a href="https://agentmods.dev/skills/zkysar1/claude-mind/aspirations-select"><img src="https://agentmods.dev/badge/skills/zkysar1/claude-mind/aspirations-select/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for aspirations-select

Your own site · 80×15
<a href="https://agentmods.dev/skills/zkysar1/claude-mind/aspirations-select"><img src="https://agentmods.dev/badge/skills/zkysar1/claude-mind/aspirations-select.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 98 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 11,785 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00098 $0.11785
Opus 5 $0.00049 $0.05893
Sonnet 5 $0.00020 $0.02357
Haiku 4.5 $0.00010 $0.01179

Measured yesterday against content hash b235ad954d1c, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

aspirations-select scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/aspirations-select/SKILL.md · 763 lines

How it starts

The opening of the file, as written. The whole thing — 763 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/aspirations-select — Goal Selection + Metacognitive Assessment

Selects the highest-value goal for execution using algorithmic scoring (via script) plus metacognitive assessment (model judgment on familiarity, value, cost, infrastructure).

Step 0: Load ConventionsBash: load-conventions.sh with each name from the conventions: front matter.

Inputs (from orchestrator)

  • first_action: Pre-scored goal from handoff (first iteration only, or None)
  • decisions_locked: Carried forward decisions from previous session

Outputs (to orchestrator)

  • goal: Selected goal object (or None if no candidates)
  • effort_level: "full", "standard", or "skip"
  • batch_mode: Boolean
  • batch: Array of batched goals (if batch_mode)
  • ranked_goals: Full ranked list from selector
  • prefetch_goals: Goals for pre-fetch research agents
  • selection_context: Raw parsed output from goal-selector.sh (includes by_reason, blocked_goals, blocked_count when all_blocked)
  • selection_reason: Why no goal was returned ("all_blocked", "all_blocked_by_gate", or absent when goal selected)
  • source: Queue origin of the selected goal ("world" or "agent") — from goal-selector output. Pass to all downstream aspirations-*.sh calls via --source {source}.
  • deviation_code: Scorer Sovereignty Layer B (g-115-2812) — the sanctioned-deviation enum code when the selected goal is NOT the scorer's top pick (ranked_goals[0]), else "". Phase 4's world-goal claim forwards it via aspirations-claim.sh {goal.id} --deviation {deviation_code}. Computed in Phase 2.94.

Phase 2: Select Next Goal

First-Action Override (first iteration only)

IF first_action is set (from handoff):
    Look up goal by first_action.goal_id
    effort_level = first_action.effort_level
    Clear first_action (consumed)
    # Still run Phase 2.5 for focus context

Algorithmic Scoring

# ASSERTION: goal-selector.sh MUST run every iteration. No exceptions.
# After autocompact, memory of blockers is unreliable. The script reads live state.
Bash: goal-selector.sh
parsed_output = parse JSON output

# Blocked-goals detection: script returns object with "all_blocked" when
# goals exist but none are executable (all deferred/blocked/gated)
IF parsed_output is a JSON object with "all_blocked": true:
    Output: "▸ ALL GOALS BLOCKED: {blocked_count} goals — {by_reason summary}"
    FOR EACH goal in blocked_goals: Output: "  {goal_id}: {detail}"
    # parsed_output contains blocked_goals, blocked_count, by_reason — orchestrator needs these
    # g-357-94: an idle agent must still HEAR directives. Phase 2.07 sits BELOW this return,
    # so while all-blocked no directive was acked, marked or passed on for as long as the
    # agent stayed idle (measured 2026-09-03: a user scope directive unheard for 4h). ACK
    # here exactly as 2.07 (dedup read + moot short-circuit); the honor set is empty with
    # zero candidates. Hand the ACTIVE set to the all-blocked handler, which reads it as
    # generation SCOPE (B0/B1/B2) — a directive never creates work by itself (guard-732).
    Bash: new_directives = board-read.sh --channel coordination --type directive --since 24h --unread-only --mark-read --json
    FOR EACH directive in new_directives: ack per Phase 2.07 (skip moot targets; else
        echo "Acknowledged directive {directive.id}" | board-post.sh --channel coordination --type status --reply-to {directive.id} --tags "acknowledged,{AGENT_NAME}")
    Bash: parsed_output.active_directives = board-read.sh --channel coordination --type directive --since 24h --json
    RETURN (goal = None, selection_reason = "all_blocked", selection_context = parsed_output)

ranked_goals = parsed_output  # JSON array of scored candidates
# Each entry: {goal_id, aspiration_id, title, skill, category, recurring, score, breakdown, raw, cross_world_origin, intended_agent, routed_to_me}
# Foreign-goal display hint (g-336-12): cross_world_origin is non-null
# "<identity>@<origin-world>" ONLY on goals injected by a cross-world INFLUENCE
# grant; null for native goals. Whenever a candidate is rendered to a
# human-visible line — the ALL-BLOCKED list above, the Program-alignment probe,
# any ▸ Output that names a goal by title — append a " [foreign: {cross_world_origin}]"
# badge when the field is non-null, so the agent KNOWS it is executing another
# world's intent and applies appropriate scrutiny (guardrails, review gate).
# A native goal (null) renders unchanged — no badge, no false positive.
# Routed-to-me display hint (g-115-2940): routed_to_me is true ONLY on a
# source='cross-agent:<owner>' candidate, which — by collect_cross_agent_candidates'
# strict-match contract (intended_agent==agent_name) — is BY CONSTRUCTION routed to
# THIS agent. When routed_to_me is true, render the goal as
# " [routed to YOU (owner: {source.split(':',1)[1]})]" and treat it as YOUR work,
# NOT another agent's: a 'cross-agent'/not-my-lane abstention on it is ALWAYS wrong
# (Phase 2.55 CROSS-AGENT-ROUTED EXEMPTION). Dropping intended_agent made bravo
# abstain 13x from its own HIGH-routed g-001-339.

# Partner-claim filter: drop any goal the partner is already in_flight on.
# This is the live claim-conflict HINT — it avoids wasting decomposition and
# context-fetch effort on a goal we would lose at the Phase 4 claim-conflict
# gate anyway. The authoritative gate still runs in the orchestrator (digest
# Phase 4) immediately before aspirations-claim.sh, because partner state can
# flip between this filter and the claim attempt.
#
# BOTH SHAPES ARE REQUIRED, AND READING ONLY `in_flight` OPENS THIS FILTER
# COMPLETELY (g-306-276). `in_flight` is REDUCER-OWNED: team-state-in-flight.sh
# stamps it only when this box's running-session-id exists AND equals MIND_SID,
# and SKIPs for every other Body — writing `in_flight_bodies.<sid>` instead.
# So a partner running as a WORKER Body is invisible in `in_flight` (measured
# 2026-08-10, alpha cc-07: null for ALL four live agents while three held live
# body-row claims). Same defect g-306-160 repaired in
# goal-pickup-coordination-check.py ("silently opened"); this is the second of
# three readers, the digest Phase 4 hard gate the third.
#
# Staleness is the REAPER's job, not this filter's: body_row_reaper (via
# stranded-claim-sweep) deletes rows whose carrier is stale for
# DEFAULT_REAP_STALE_MINUTES (180). Do NOT add a second freshness heuristic
# here — it would drift and put two policies on one store. The ~3h bound
# holds ONLY because every row is born with a carrier (g-306-349); a
# carrier-less row is unreapable at ANY age.
Bash: team-state-read.sh --field agent_status.<partner>.in_flight.goal_id --json
Bash: team-state-read.sh --field agent_status.<partner>.in_flight_bodies --json
    # `--field` returns the whole nested map, so no new endpoint/helper is needed.
partner_held_ids = ({first call's value} if it is a non-null string else {})
                 | {b.goal_id for b in second call's values if b is a dict and b.goal_id}
IF partner_held_ids is non-empty:
    ranked_goals = [g for g in ranked_goals if g.goal_id not in partner_held_ids]
    IF len(ranked_goals) == 0:
        Output: "▸ Partner holds the only candidate goal(s) ({partner_held_ids}) — yielding"
        RETURN (goal = None, selection_reason = "all_blocked", selection_context = {by_reason: {partner_held: 1}, blocked_count: 1})

Read the full file on GitHub · 763 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · -3 lines b235ad954d1c
  2. 6d ago Changed · -3 lines f3470c0f795b
  3. 9d ago First seen · 769 lines · 98 tokens per session scan A f7d86a7487c6

Subscribe to this mod's changes

aspirations-select is a skill published in the GitHub repository zkysar1/Claude-Mind (5 stars, last pushed yesterday), licensed MIT. It adds 98 tokens to every session and 11,785 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

hive.browser-automation

Required before any hive-browser CLI command. The browser is driven from the terminal by running hive-browser ... --json via terminalexec — not via MCP tools. Teaches the browser lifecycle rules (the bridge attaches to the USER'S running Chrome — never kill or launch browser processes; timeouts are transport issues…

aden-hive/hive · 142 tokens

hive.worker-delegation

Concrete patterns for breaking colony work into parallel worker jobs via runplaybook — when fan-out helps, how to model the goal as a tracker table, write the worker skill, author the playbook, pilot, and let convergence retry/resume the gap.

aden-hive/hive · 58 tokens

hive.linkedin-automation

Read before automating LinkedIn with browser tools. LinkedIn combines shadow DOM (#interop-outlet), strict Trusted Types CSP that silently drops innerHTML, Lexical composer, native beforeunload dialogs that hang the bridge, and aggressive spam filters — each has bitten us at least once. Verified flows for profile…

aden-hive/hive · 99 tokens

hive.x-automation

Read before automating X / Twitter with browser tools. Verified flows for post, reply, delete, search-and-engage, plus the Draft.js compose quirks that silently disable the send button. Includes the daily-reply and job-market-reply playbooks. Requires hive.browser-automation for the underlying screenshot + coordinate…

aden-hive/hive · 81 tokens

hive.slack-notifications-setup

Set up a Slack notification channel (Sentinel) for a colony by driving the browser — reuse or create the "Hive Sentinel" Slack app from a JSON manifest, install it, capture the bot + app tokens, create/select the channel via the Slack API, and turn Sentinel on so the colony can ping the user on Slack and accept…

aden-hive/hive · 136 tokens

hive.writing-hive-skills

Author a new Agent Skill for a Hive agent that conforms to the Agent Skills specification (SKILL.md with YAML frontmatter, optional scripts/references/assets directories). Use when the user asks to create, scaffold, add, or package a new skill for a Hive agent.

aden-hive/hive · 63 tokens