skills/gear-gstd-api-map/SKILL.md
Use when a builder needs to choose the right gstd API for messaging, execution, reservations, async reply flows, or program creation, and trace that API to gcore or gsys when behavior must be confirmed. Do not use for Vara.eth or ethexe-first work, non-Gear repositories, or broad runtime-maintenance tasks.
npx skillsauth add gear-foundation/vara-skills gear-gstd-api-mapInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Keep design work API-first: start from gstd, then drop to gcore or gsys only when you need to confirm limits, gas shape, or low-level behavior.
../../references/gear-execution-model.md — execution model and block lifecycle../../references/gear-messaging-and-replies.md — message flow and reply semantics../../references/gear-gas-reservations-and-waitlist.md — gas reservations and waitlist../../references/gear-gstd-api-and-syscalls.md — full API surface and syscall mapping#[gstd::async_main], _for_reply flows, delayed work, ReservationId, or prog::*gr_* syscall family a high-level API actually reachessend_for_reply targets a hardcoded non-program ActorId (staking, proxy, BLS12-381, ETH bridge); route to gear-builtin-actors for the per-actor request shape and reply decodinggstd family: msg, exec, prog, reservations, or async helpers.gcore to confirm wrapper behavior and to gsys only when you need exact syscall names, fallibility, or control-vs-get distinctions.| Module | Key APIs | When to Use |
|--------|----------|-------------|
| msg | send, reply, send_delayed, send_for_reply, send_bytes, push-plus-commit | Sending messages, replying, delayed dispatch, awaiting replies |
| exec | gas_available, block_height, wait, wait_for, wake, reply_deposit, exit | Reading execution context, parking in waitlist, waking actors |
| prog | create_program, create_program_bytes, create-for-reply | Creating child programs with optional delay and gas limits |
| reservations | ReservationId::reserve, .unreserve, reservation pools | Future-block work that must keep a gas budget alive |
gstd as the default public API for standard Gear/Vara builders.gsys::gr_* names as confirmation tools, not the first design vocabulary.development
Use when approved tasks require Rust code changes in a Sails ethexe workspace with the ethexe feature enabled. Do not use for standard Gear/Vara Sails apps without ethexe, or when the spec or architecture is still unsettled.
development
Use when a builder needs to design or review architecture for a Sails ethexe app with dual-transport, payable methods, Solidity interface generation, or Ethereum-style events. Do not use for standard Gear/Vara Sails apps without ethexe.
development
Use when a builder needs to design or debug calls from a standard Gear/Vara Sails program into runtime builtin actors such as BLS12-381, staking, proxy, or ETH bridge, including ActorId derivation, request encoding, reply decoding, and gas or ED budgeting. Do not use for regular program-to-program messaging, Vara.eth or ethexe-only work, non-Sails repositories, or runtime-maintenance tasks inside the Gear repo.
development
Use when a builder needs a read-side indexer and query API for a standard Gear/Vara Sails app using program events, IDL-driven decoding, projected read models, and optional on-chain query enrichment. Do not use for command-side backends, generic Node APIs, non-Sails repositories, Vara.eth or ethexe-first work.