@greatstore/cli
v0.0.32
Published
CLI for administering GreatStore stores and authoring custom components.
Readme
@greatstore/cli
Administer your GreatStore from the command line — store configuration, MCP connectors, and custom in-chat apps — and set up your AI coding agent to build with GreatStore.
npm install -g @greatstore/cli
gs skill # teach your AI coding agent to build with GreatStore
gs login
gs configure # see your store's configuration
gs apps init --store <slug>
cd <project> && npm install
gs apps init my-widget
gs apps build
gs apps push
gs apps publish my-widgetThe CLI mirrors the admin dashboard: gs configure, gs connectors,
and gs apps correspond to the Configure, Connectors, and Apps panels,
with the same field names and behaviour.
Commands
Account
| Command | What it does |
| ----------- | --------------------------------------- |
| gs login | Sign in. |
| gs logout | Sign out. |
| gs whoami | Print the identity you're signed in as. |
Configure
| Command | What it does |
| ---------------------------------------- | ---------------------------------------------------------- |
| gs configure [--json] | Show the store configuration. |
| gs configure set --<field> <value> | Edit it. Same fields as the dashboard: --displayName, --assistantName, --salesGuide (or --salesGuideFile <path>), --storeLink, --extraOrigins a,b, --shopifyLoginGate true\|false, --theme '<json>' (or --themeFile <path>), --cspScriptHosts a,b, --cspConnectHosts a,b. Pass "" to clear a field. |
| gs configure upload <kind> <file> | Upload icon, logoLight, or logoDark (.png/.jpg/.webp). |
| gs configure clear <kind> | Remove an uploaded asset. |
Connectors
| Command | What it does |
| ------------------------------------------------------------ | ------------------------------------------------------ |
| gs connectors [--json] | List the Maker MCP toggle and custom MCP connectors. |
| gs connectors add <name> --url <url> [--token <t>] [--profileUrl <u>] [--disabled] [--force] | Add a connector. It's probed for tool discovery first; --force saves it anyway. |
| gs connectors remove <name\|id> | Delete a connector. |
| gs connectors enable\|disable <name\|id> | Toggle a connector without deleting it. |
| gs connectors maker on\|off | Toggle the Maker MCP. |
| gs connectors health [<name\|id>] [--json] | Live-probe saved connectors. |
Apps
Custom in-chat app (remote component) commands. Each also works at the
top level (gs push == gs apps push), so existing scripts keep
working.
| Command | What it does |
| ------------------------------------------------------ | -------------------------------------------------- |
| gs apps init <name> [--out <dir>] [--store <s>] | Scaffold a working component project. |
| gs apps build [<name>] | Build component bundle(s); no args = all. |
| gs apps list [--json] | List components in the current store. |
| gs apps pull <name> [--draft\|--live\|--version N] [-o <dir>] | Download a component to disk. |
| gs apps push [<name>] [--manifest path] [--bundle path] | Upload local changes. |
| gs apps publish <name> [--version N] | Ship a component (optionally a previous version). |
| gs apps unpublish <name> | Hide a published component. |
| gs apps delete <name> [--yes] | Remove the component. |
Agent skill
| Command | What it does |
| ------------------------------------ | --------------------------------------------------------- |
| gs skill [--global] [--dir <path>] | Install the GreatStore agent skill for AI coding agents. |
Agent skill
gs skill installs the GreatStore agent skill — a guide AI coding
agents (Claude Code and friends) use to build with GreatStore: AI
content for your own UI, chat entry points, page tools the assistant
can call, custom in-chat components, push notifications, and the
store's MCP endpoints.
gs skill # → ./.claude/skills/greatstore/ (this project)
gs skill --global # → ~/.claude/skills/greatstore/ (every project)
gs skill --dir <p> # → <p>/greatstore/ (custom location)Run it again any time to update an installed copy. No sign-in or store needed.
Store selection
Every command except login, logout, whoami, and skill needs a
store.
- App commands read the slug from a
.gsrcin the current directory or any ancestor:{"store":"demo"}.gs apps init --store <slug>writes it for you, so commands inside a scaffolded project don't need a flag. - Admin commands (
configure,connectors) also accept--store <slug>directly, so they work outside a scaffolded project.
