Views

Island

View Agents @dip497 0 installs

A workspace view.

hive plugins install @dip497/island

Run it in a terminal, or find it in Hivemind under Settings ▸ Plugins.

Island

Your workspace as islands, and a town that grows as your agents work. Each frame is an island of hex tiles ringed by a beach, each tile its own shade of grass, whose trees are a mix of greens with more or fewer turned by its season (meadow, blossom, autumn or snow) and whose buildings take its colour; a worktree is an islet joined to it by a bridge. Each agent has a workshop and four lots beside it, and every turn it finishes raises the next lot one step: ground laid, the frame up in scaffolding, then a finished house, tavern or market. The keep in the middle of an island grows with all its agents' turns that day, from a well to a windmill, a church and a castle.

A new agent's builder steps out of its door. Each builder stands about a door high, with a soft shadow under it.

  • working: its builder walks to the lot it is building and works there (trimming timber with an axe or building by hand, by who it is), sparks flying, smoke trailing from the workshop chimney;
  • calling you: it waves at its door facing you under a thin light, and joins the list of agents calling you, the one calling longest first. Out of sight, an arrow on the edge of the view points at it;
  • finished a turn: it cheers, the lot goes up with a puff of dust, sparks over the workshop;
  • ready for work: it sits by its fire; stopped on an error: red smoke;
  • asleep (on an app that can put agents to sleep): it lies beside its house with slow "z"s rising and its windows dark. The card says since when and offers Wake it; woken, it gets up and goes back to work.

The light follows your clock: morning sun from the east, long shadows at dusk, lit windows and stars at night. The sea is pale over the sand and deeper out, with a white rim and lines of foam on every coast, light on the sand in the shallows, crests drifting on open water and small sparkles where the sun or moon catches it. Clouds gather over open sea as more agents work, and thin away before they cross an island. Left alone, the camera turns slowly round the islands. Its helpers (subagents) carry timber round the site, and a dashed arc with travelling lights joins an agent to the ones it started or, in the accent, feeds; it lies on a band of the theme's ground, so it shows on the night sea and the day's alike.

Click a worker to fly there and see what it is doing; Open its terminal docks its live terminal beside the islands, where you answer it. Press N (or ⌘⌥N / Ctrl+Alt+N anywhere in the app) to go to the next agent calling you. On an agent that is ready for work, write its next task: the app shows you the message before it is sent. Click an island to start an agent there.

The list of agents calling you sits at the top right; click its title to open it. In a narrow space (beside a docked terminal, or in a narrow window) it folds to how many are calling, and a click on that count goes to the next one, as N does. Where even the count has no room, the header's count says how many.

Drag to move, right-drag or Shift-drag to turn, scroll to come closer, Home to see every island. Arrow keys move, + and − zoom, Esc closes the terminal.

hive plugins install @dip497/island       # then switch to it with ⌘E (Ctrl+E)
hive ctl plugin open @dip497/island
hive ctl plugin call @dip497/island census
hive ctl plugin call @dip497/island next                    # the agent calling longest, terminal open
hive ctl plugin call @dip497/island show '{"name":"docs"}'
hive ctl plugin call @dip497/island release
hive ctl plugin call @dip497/island overview
hive ctl plugin call @dip497/island island '{"name":"docs"}'   # fly to an island: its agents and turns today

It asks to tell an agent something (workspace:prompt: you send or cancel each message) and to start agents (workspace:spawn: the island's Start an agent here).

Settings: Light follows the clock, or stays at morning, midday, dusk or night. Motion follows the system's reduced-motion setting by default; with less motion there are no flights, walking, waves, smoke or sparks, new houses appear without rising, and it draws only when something changes. Frames a second (15 to 60), Shadows (turned off on their own above 60 agents), Camera effects (the model-town focus and the glow of lit windows). When frames come too slowly for a few seconds, it draws less on its own so it stays smooth: first without multisampling, then without the focus blur and at one pixel a point, then without shadows and effects. Changing a setting tries everything again. Sounds are off until you press the speaker: two soft bell notes when an agent starts calling you, a quiet tick when one finishes a turn. They are made on the spot; nothing is loaded.

It draws with three.js 0.186.0 and postprocessing 6.39.5 (both MIT), bundled into island.js. Its models are the CC0 KayKit packs by Kay Lousberg and its light two CC0 Poly Haven skies; see ASSETS.md for each source and licence. A view cannot read files from its own package (its page has no network), so the models and skies ship as scripts, one per file: island-kit.js (1.3 MB), island-workers.js (0.67 MB), island-moves.js (0.16 MB), island-skyDay.js and island-skyNight.js (0.17 MB each), about 2.4 MB in all. HiveHub takes no file over 2 MB. island-assets.js loads them once the view is running.

How it was made

Built by a coding agent (Claude) from the view contract, after studying WorldClaw (Tencent Hunyuan, arXiv 2608.05248): low-poly regional worlds, each region its own season, laid out first and detailed after. What it works out from the workspace is in src/world.ts, tested in tests/views.test.ts.

Files

From dip497/hivemind-plugins at fb488a4. Hivemind checks each file's checksum as it downloads, and stops if one changed.

  • ASSETS.md8b1da9f385c1
  • hivemind-view.json4f8662ca6938
  • icon.svg933c8a596569
  • index.html1e58f8a37a22
  • island-assets.js18b1b9531950
  • island-kit.js5dcde1718665
  • island-moves.js813214355116
  • island-skyDay.js597c082c5d20
  • island-skyNight.jsa833103eaece
  • island-workers.js7c57743b6133
  • island.cssbca4dbe01d62
  • island.js2c50345a7fe1
  • README.mdfbb06e152931
hivemind-view.json
{
  "id": "@dip497/island",
  "name": "Island",
  "description": "Your workspace as islands, with a town that grows as your agents work.",
  "icon": "icon.svg",
  "version": "0.3.2",
  "entry": "index.html",
  "protocol": 1,
  "permissions": [
    "workspace:prompt",
    "workspace:spawn"
  ],
  "category": "agents",
  "toolbar": "bottom",
  "layout": "personal",
  "author": "Hivemind",
  "homepage": "https://github.com/dip497/hivemind-plugins/tree/main/views/island",
  "license": "MIT",
  "settings": [
    {
      "id": "sky",
      "label": "Light",
      "type": "choice",
      "values": [
        "clock",
        "morning",
        "day",
        "dusk",
        "night"
      ],
      "labels": [
        "Follow the clock",
        "Always morning",
        "Always midday",
        "Always dusk",
        "Always night"
      ],
      "default": "clock",
      "description": "By the clock, windows light up at dusk and the stars come out at night."
    },
    {
      "id": "motion",
      "label": "Motion",
      "type": "choice",
      "values": [
        "system",
        "less",
        "full"
      ],
      "labels": [
        "Follow the system",
        "Less: no flights, walking, smoke or waves",
        "Full"
      ],
      "default": "system"
    },
    {
      "id": "frameRate",
      "label": "Frames a second",
      "type": "number",
      "min": 15,
      "max": 60,
      "default": 60,
      "description": "Fewer frames use less of the computer. It draws nothing while hidden."
    },
    {
      "id": "shadows",
      "label": "Shadows",
      "type": "boolean",
      "default": true,
      "description": "Turned off on their own above 60 agents."
    },
    {
      "id": "effects",
      "label": "Camera effects",
      "type": "boolean",
      "default": true,
      "description": "The model-town focus and the glow of lit windows."
    }
  ],
  "commands": [
    {
      "name": "census",
      "description": "How many islands and agents there are, how many are working, calling the person, idle or stopped, who is calling, how many turns they finished today, and how many lots stand empty, laid, framed and finished."
    },
    {
      "name": "next",
      "description": "Fly to the agent calling the person longest and open its live terminal beside the islands.",
      "keys": "mod+alt+n"
    },
    {
      "name": "show",
      "description": "Fly to the agent whose name holds this text and open its live terminal.",
      "args": "{ \"name\": string }"
    },
    {
      "name": "release",
      "description": "Close the open terminal."
    },
    {
      "name": "overview",
      "description": "Pull back to see every island."
    },
    {
      "name": "island",
      "description": "Fly to the island whose name holds this text; says how many agents work there and how many turns they finished today.",
      "args": "{ \"name\": string }"
    }
  ]
}

Hivemind shows you this list and asks before it installs.

  • Tell an agent something (you send or cancel each one)
  • Start agents in your workspace
VersionCommitListed
0.3.2 fb488a4 October 28, 2026

HiveHub keeps the version listed last. The ones before it are in the repository's history.

Something wrong with it? Report it.