Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Coding
Structs Exploration
Try itExplores new planets and manages fleet movement in Structs. Use when discovering new planets, moving fleet to a new location, expanding territory, relocating...
What it does
**Important**: Entity IDs containing dashes (like , ) are misinterpreted as flags by the CLI parser. All transaction commands in this skill use before positional arguments to prevent this.
The skill document
Structs Exploration
Important: Entity IDs containing dashes (like 3-1, 4-5) are misinterpreted as flags by the CLI parser. All transaction commands in this skill use -- before positional arguments to prevent this.
Safety
See SAFETY.md for the trust contract. In this skill:
planet-explorefor a brand-new player (Tier 0) — routine first action.planet-exploreafter your first planet (Tier 2 — destroys the old planet) — "The depleted planet is released. All structs on it are destroyed. Fleets present are scattered. ConfirmcurrentOre == 0and that you have moved every struct you cared about — there is no recovery."fleet-moveto a known-friendly destination (Tier 1) — "Instant transit. Verify the destination location ID."fleet-moveto unscouted or hostile space (Tier 2) — "You may strand your fleet in enemy range. Scout viaquery planetandquery fleetfor nearby hostiles first."
Procedure
-
Check eligibility —
structsd query structs planet [id]. For an existing player, exploration requires (a)currentOre == 0on the current planet (fully mined) AND (b) the fleet isonStationat that planet. Brand-new players (no current planet) skip both checks. One planet per player at a time; old planet is released on explore. -
Recall fleet first if needed — If your fleet is away (raiding or repositioned), bring it home before exploring:
structsd tx structs fleet-move --from [key-name] --gas auto --gas-adjustment 1.5 -- [fleet-id] 2 [current-planet-id]. Then verify:structsd query structs fleet [fleet-id]showsonStationtrue. Skip this step for first-time exploration. -
Explore (first time) — Brand-new player, no prior planet. Tier 0 (routine). CLI prompts; accept:
structsd tx structs planet-explore --from [key-name] --gas auto --gas-adjustment 1.5 -- [player-id]New planet: 5 ore, 4 slots per ambit. Fleet moves to new planet.
-
Explore (subsequent) — You already have a planet. Tier 2 (destroys the old planet). The old planet is released, all structs on it are destroyed, and fleets present are scattered.
Approval Block — confirm before signing:
- Current planet's
currentOre == 0(verified viaquery structs planet) - Fleet is
onStationat the current planet - Every struct you care about has been moved (
struct-moveto fleet) or you accept the loss - You understand this command is NOT reversible
Then run:
structsd tx structs planet-explore --from [key-name] --gas auto --gas-adjustment 1.5 -- [player-id] - Current planet's
-
Move fleet — To relocate between planets without exploring (CLI will prompt — verify the destination location ID, especially if it's unscouted):
structsd tx structs fleet-move --from [key-name] --gas auto --gas-adjustment 1.5 -- [fleet-id] [destination-location-id] -
Chart — Query planet, grid, attributes to evaluate resource potential and strategic value.
Commands Reference
| Action | CLI Command |
|---|---|
| Explore planet | structsd tx structs planet-explore -- [player-id] |
| Move fleet | structsd tx structs fleet-move -- [fleet-id] [destination-location-id] |
| Query planet | structsd query structs planet [id] |
| List planets | structsd query structs planet-all-by-player [player-id] |
| Query fleet | structsd query structs fleet [id] |
| Query grid | structsd query structs grid [id] |
| Planet attribute | structsd query structs planet-attribute [planet-id] [attribute-type] |
Rules: Starting ore = 5. New planet when ore = 0. One planet per player at a time.
TX_FLAGS (interactive — the CLI prompts you to confirm): --from [key-name] --gas auto --gas-adjustment 1.5
TX_FLAGS_APPROVED (only after commander approval; suppresses the prompt): TX_FLAGS plus -y. See SAFETY.md "The -y Rule." Subsequent planet-explore is Tier 2 — always default to interactive so the CLI's confirmation is your last gate before destruction.
Requires: structsd on PATH and a configured signing key.
Verification
structsd query structs planet [id]— new planet has currentOre = 5, maxOre = 5structsd query structs planet-all-by-player [player-id]— planet list updatedstructsd query structs fleet [id]— fleet location matches destination (onStation/away)
Error Handling
- "planet not complete" — Deplete ore (currentOre = 0) before exploring.
- "fleet must be onStation to explore" — Recall the fleet to your current planet first via
fleet-move. The chain blocks explore until the fleet has actually returned. (New players with no current planet do not see this error.) - "fleet away" — Fleet must be available; wait for return or check fleet state.
- "invalid destination" — Use valid location ID; query grid for options.
See Also
- knowledge/mechanics/planet — Planet properties, ore, slots
- knowledge/mechanics/fleet — Fleet movement, on-station rules
- knowledge/entities/entity-relationships — How entities connect
Related skills
Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.
Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.
Write, debug, and tune Playwright specs with locator strategy, trace diagnosis, and CI-aware timeouts.
Site audit, content writing, and competitor analysis for organic search rankings.
More from abstrct
Browse all skillsWalk a new agent from key creation through first infrastructure builds in Structs.
Plan and execute Structs raids, struct attacks, and fleet defense from the command line.
Get more energy capacity in Structs: reactor and generator infusion, plus agreement-based buying and selling.
Manage Structs guilds end-to-end — discover, join, rank members, moderate UGC, and run the central bank.
Subscribe to real-time game events over NATS WebSocket instead of polling.
Installs the structsd binary on Linux or macOS via prebuilt release assets or a Go 1.23+ Makefile build.