island-selectlisted
Install: claude install-skill panjose/Co-Scientist
# island-select
Goal:
- Select the next island strategy and parent hypothesis set for one evolution round.
Inputs:
- `islands/ISLANDS.json`
- current viable `hypotheses/<id>/HYPOTHESIS.json` frontier
- `iteration_count`
- numeric island-selection settings from `state/RESOLVED_RUN_CONFIG.json`
Outputs:
- deterministic `SelectionResult`
- selection strategy
- selected parent hypotheses
- when consumed by routing, updated `state/STRATEGY_PLAN.json` signals
Context Loading:
- Open `skills/shared-references/schema-index.md`.
- Read `packages/agent_contracts/state.py` and confirm the exact `IslandStateContract` shape used inside `islands/ISLANDS.json`.
- Read `packages/agent_contracts/hypothesis.py` for the exact `HypothesisContract` shape.
- Read `packages/agent_contracts/resolved_config.py` for the island numeric settings.
- When the result is persisted into routing state, also read `packages/agent_contracts/strategy_plan.py`.
Execution Contract:
- This skill is deterministic and must not call an LLM.
- Use `from tools import select_island_hypotheses` as the stable invocation surface.
- The exported helper is implemented in `packages/agent_mechanics/island_select.py`.
- The helper signature is `select_island_hypotheses(islands, hypotheses, iteration_count, ucb_exploration_constant=..., softmax_temperature=..., stagnation_epsilon=...) -> SelectionResult`.
- The helper is the canonical implementation of UCB island selection, stagnation-triggered multi-island fallback, and