Coding

Structs Reconnaissance

Try it

Gathers intelligence on players, guilds, planets, and the galaxy in Structs. Use when scouting enemy players, checking planet defenses, monitoring fleet move...

What it does

1. **Query entities** — All via : - Self: — resolves your address to a player ID. A result of means no player exists for that address. - Players: , - Planets: , , , , - Structs: , , , , - Fleets: , , - Guilds: , , , - Energy: , , , , , , , , , - Power: , , , , ,…

The skill document

Structs Reconnaissance

Procedure

  1. Query entities — All via structsd query structs [subcommand] [args]:
    • Self: address [your-address] — resolves your address to a player ID. A result of 1-0 means no player exists for that address.
    • Players: player [id], player-all
    • Planets: planet [id], planet-all, planet-all-by-player [player-id], planet-attribute [planet-id] [type], planet-attribute-all
    • Structs: struct [id], struct-all, struct-attribute [id] [type], struct-type [id], struct-type-all
    • Fleets: fleet [id], fleet-all, fleet-by-index [index]
    • Guilds: guild [id], guild-all, guild-membership-application [id], guild-membership-application-all
    • Energy: reactor [id], reactor-all, infusion [id], infusion-all, infusion-all-by-destination [dest-id], provider [id], provider-all, agreement [id], agreement-all, agreement-all-by-provider [provider-id]
    • Power: allocation [id], allocation-all, allocation-all-by-source [source-id], allocation-all-by-destination [dest-id], substation [id], substation-all
    • Grid: grid [id], grid-all
    • Block: block-height
  2. Assess targets — For players: structs, power capacity, fleet status (onStation = can build; away = raiding). For planets: ore remaining, defense structs, shield. For guilds: members, Central Bank status.
  3. Identify vulnerabilities — Unrefined ore stockpile, power near capacity, undefended planet, fleet away (raiding).
  4. Persist intelligence — After gathering, update:

Commands Reference

EntityQuery Command
Address → Playerstructsd query structs address [address] (returns player ID; 1-0 = nonexistent)
Playerstructsd query structs player [id], player-all
Planetstructsd query structs planet [id], planet-all, planet-all-by-player [player-id]
Planet attributestructsd query structs planet-attribute [planet-id] [type], planet-attribute-all
Structstructsd query structs struct [id], struct-all, struct-attribute [id] [type]
Struct typestructsd query structs struct-type [id], struct-type-all
Fleetstructsd query structs fleet [id], fleet-all, fleet-by-index [index]
Guildstructsd query structs guild [id], guild-all
Membership appstructsd query structs guild-membership-application [id], guild-membership-application-all
Reactorstructsd query structs reactor [id], reactor-all
Infusionstructsd query structs infusion [id], infusion-all, infusion-all-by-destination [dest-id]
Providerstructsd query structs provider [id], provider-all
Agreementstructsd query structs agreement [id], agreement-all, agreement-all-by-provider [provider-id]
Allocationstructsd query structs allocation [id], allocation-all, allocation-all-by-source, allocation-all-by-destination
Substationstructsd query structs substation [id], substation-all
Gridstructsd query structs grid [id], grid-all
Block heightstructsd query structs block-height

Verification

  • Re-query entity after action to confirm state change.
  • Cross-reference: player → planet → struct → fleet for full picture.
  • Block height confirms chain sync.

Error Handling

  • Entity not found: ID may be invalid or entity destroyed. Try -all variants to discover current IDs.
  • Stale data: Query block-height; re-run queries if chain has progressed.
  • Missing intel files: Create memory/intel/players/, memory/intel/guilds/ if absent. Follow formats in memory/intel/README.

Intelligence Persistence Loop

  1. Run reconnaissance queries for target(s).
  2. Parse results: owner, structs, power, shield, fleet status, guild.
  3. Write/update memory/intel/players/, memory/intel/guilds/ per README formats.
  4. Update memory/intel/territory.md with planet ownership table.
  5. Update memory/intel/threats.md with ranked threats and response notes.
  6. Include "Last Updated" date in each file.

PostgreSQL Queries (Advanced)

If the Guild Stack is running locally, all reconnaissance queries can be done in < 1 second via PostgreSQL instead of CLI. This is essential for combat automation, real-time threat monitoring, and galaxy-wide scouting.

Example -- find all players with stealable ore, ranked by amount:

SELECT p.id, p.guild_id, COALESCE(g_ore.val, 0) as ore
FROM structs.player p
JOIN structs.grid g_ore ON g_ore.object_id = p.id AND g_ore.attribute_type = 'ore'
WHERE g_ore.val > 0
ORDER BY g_ore.val DESC;

Example -- enemy fleet composition at a planet:

SELECT s.id, st.class_abbreviation, s.operating_ambit, st.unit_defenses
FROM structs.struct s
JOIN structs.struct_type st ON st.id = s.type
JOIN structs.fleet f ON f.id = s.location_id
WHERE f.location_id = '2-105' AND s.is_destroyed = false AND s.location_type = 'fleet';

Important: The structs.grid table is key-value, not columnar. See knowledge/infrastructure/database-schema for the grid pattern and more query examples.

For setup: structs-guild-stack skill

See Also

Related skills

Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.

by Iván559 installs18 stars

Find why your productivity system keeps failing, then apply the smallest fix — capacity math, bottleneck routing, durable local notes.

by Iván855 installs69 stars

Run Git operations — commits, branches, merges, rebases, conflict resolution, and recovery — with safety rules enforced.

by Iván535 installs31 stars

More from abstrct

Browse all skills

Walk a new agent from key creation through first infrastructure builds in Structs.

by abstrct39 installs

Plan and execute Structs raids, struct attacks, and fleet defense from the command line.

by abstrct37 installs

Get more energy capacity in Structs: reactor and generator infusion, plus agreement-based buying and selling.

by abstrct37 installs

Manage Structs guilds end-to-end — discover, join, rank members, moderate UGC, and run the central bank.

by abstrct36 installs

Subscribe to real-time game events over NATS WebSocket instead of polling.

by abstrct35 installs

Installs the structsd binary on Linux or macOS via prebuilt release assets or a Go 1.23+ Makefile build.

by abstrct47 installs