Repository navigation
Glossary
Domain terms, abbreviations, and concepts used in this project.
AuthConfig — Struct holding auth type (bearer, api-key) and token; nested inside Config. See Authentication.
applyJQ — Applies a jq expression to a JSON value using gojq; used for client-side filtering of batch responses. See Batch-Operations.
BatchRequest — Struct representing a single GraphQL operation in a batch payload, optionally containing a server-side jq filter field. See Batch-Operations.
Batch transport — GraphQL protocol extension allowing multiple operations in one HTTP request; supports JSON array or NDJSON transport. See Batch-Operations.
CLIBuilder — Registers HTTP-mode CLI commands (query, mutation, batch, etc.) via urfave/cli. Entry point for the standalone binary. See Library-HTTP-Mode.
compact — Output formatter; emits the GraphQL response as a single-line JSON string. See Output-Formats.
Config — Top-level struct holding URL, format, auth, timeout, debug flag, and custom headers for a CLI session. See Configuration.
Describer — Introspects a GraphQL schema and outputs SDL; results cached in a sync.Map to avoid redundant round-trips.
ExecutionMode — Enum (ExecutionModeInline / ExecutionModeHTTP) that selects in-process vs. HTTP execution path inside Client.
Formatter — Interface (Format, Name) that all output formatters implement; registered in a FormatterRegistry. See Output-Formats.
FormatterRegistry — Interface for registering, retrieving, and listing named Formatter implementations.
gojq — Go library used to parse, compile, and run jq expressions for client-side JSON filtering. See Batch-Operations.
GraphQLError — Single error object in a GraphQL response; contains message, path, and extensions. See Error-Handling.
GraphQLRequest — Standard wire format sent to the server: query, variables, operationName.
GraphQLResponse — Standard wire format received from the server: data map and errors slice.
GraphQLResponseError — Returned by Execute when the server responds with GraphQL errors; wraps the full response for downstream inspection. See Error-Handling.
gqlgen — 99designs/gqlgen code-generation framework; InlineExecutor accepts a gqlgen.ExecutableSchema for in-process execution. See Library-Inline-Mode.
HTTPClient — Implements Client using go-resty; handles introspection, schema hints, and error extraction over HTTP. See Library-HTTP-Mode.
InlineCommandSet — CLI commands backed by InlineExecutor; includes login/logout/whoami in addition to the shared command set. See Library-Inline-Mode.
InlineExecutor — Executes GraphQL operations in-process against a gqlgen.ExecutableSchema; no HTTP server required. Intended for library embedders. See Library-Inline-Mode.
json — Output formatter; emits the GraphQL response as compact JSON. See Output-Formats.
json-pretty — Output formatter; emits the GraphQL response as indented, pretty-printed JSON. See Output-Formats.
JSON array transport — Batch mode that sends all operations as one JSON array and receives a JSON array of responses in a single round-trip. See Batch-Operations.
llm — Output formatter; renders the GraphQL response as a markdown document suited for LLM consumption (SDL code blocks, error summaries, data tables). See Output-Formats.
MutationOptions — Options for mutation execution: mutation string, variables, operation name, and optional input object (auto-wrapped as {"input": {...}}). See CLI-Usage.
NamedOperation — A saved GraphQL query or mutation stored in .gqlcli.json under "operations". Includes type, query/mutation string, and optional default variables. Execute with --op <name> on the query or mutation commands. See Command-Reference.
NDJSON — Newline-delimited JSON; each line is a complete JSON object. Used in streaming batch transport (application/x-ndjson). See Batch-Operations.
ProjectConfig — Loads .gqlcli.json from the working directory; supports named environments with per-env URL, headers, and auth. See Configuration.
QueryOptions — Options for query execution: query string, variables map, and optional operation name. See CLI-Usage.
SDL — Schema Definition Language; human-readable GraphQL schema format output by Describer.
table — Output formatter; renders the first top-level key/value pair as a human-readable table using tabwriter. See Output-Formats.
TokenStore — Persists JWT tokens to ~/.{appName}/token; used by inline mode login/logout flows. See Authentication.
toon — Output formatter; encodes the response in TOON (Token-Optimized Object Notation) via toon-go, reducing token usage ~40-60%. See Output-Formats.
TOON — Token-Optimized Object Notation; compact encoding format that significantly reduces token count for LLM-heavy workflows. See Output-Formats.