Version Packages - #26
Merged
Merged
Conversation
PawanP1808
force-pushed
the
changeset-release/main
branch
from
June 15, 2026 16:03
9bd2108 to
be8d914
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
@shopify/shop-cli@0.1.0
Minor Changes
7d28257: Add delegated-budget awareness: a
shop auth budgetcommand and automatic Shop Pay availability detection at checkout.shop auth budgetreadsGET https://shop.app/pay/agents/payment_tokensand returns{ available, limit?, remaining_amount?, currency?, renewal_type?, renews_at?, units: "minor" }(amounts in minor units), or{ available: false }when no budget is set. The raw wallet token is never surfaced or persisted.pay:wallet_tokens:readscope (required by the budget endpoint; not unrolled frompersonal_agent). If a token ever lacks it, the budget read degrades to{ available: false, reason: "missing_payment_scope" }instead of breaking sign-in.shop checkout create/updatenow disambiguate an emptypayment.instruments: the CLI probes the budget endpoint once and adds ashop_pay_availabilityblock withbudget_availableand amessage. Whenbudget_available: truethe buyer has budget but this store doesn't accept Shop agent payments yet, so the agent should search for similar alternatives; whenfalsethe agent should offer to set up a budget. This resolves the confusing "no token returned" checkout state.0d8c356: Update catalog
ships_fromto a list and add cursor pagination toshop search.filters.ships_fromis now sent as a list of{ country }origin objects (per shop/world#796951). The catalog rejects the previous single-object shape, so--ships-fromnow accepts a comma-separated list of ISO2 countries (e.g.--ships-from US,CA); origins combine with OR.--cursorflag onshop searchwalks results page by page. Each search response surfaces the next-page cursor and estimated total in the markdown footer when more results exist; re-run the same query/filters with--cursor <cursor>to fetch the next page.--limitstill accepts up to 50, but large pages burn tokens — keep it small (6-8 is plenty).918ae36: Identify Shop CLI traffic using a standard
User-Agentheader (shop-cli/<version>) on every outbound request, instead of a customX-Shopify-Agent-Sourceheader.85406cb: Add Color, Size, and Target gender attribute filters to
shop search.--color,--size, and--genderaccept comma-separated taxonomy attribute values (e.g.--color White,Blue --size M --gender Female).filters.attributesarray as{ name, values }entries. Values within one attribute combine with OR; separate attributes combine with AND.Color,Size, andTarget gender(per shop/world#792867). Unsupported names are dropped by the API and surfaced viaresult.messages[].85406cb: Split the blocking
shop auth logindevice flow into two non-blocking commands so agents reliably persist tokens.shop auth device-coderequests the code, persists pending state, prints the sign-in URL to stdout, and exits immediately (no polling).shop auth pollreads the pending code, exchanges it, and stores the tokens in one short call. It is re-runnable and reportspending | expired | denied | no_pendinginstead of blocking.This fixes a class of failures where
shop auth login(a single long-lived polling process that only saved tokens at the very end) was terminated before the user finished authorizing, leaving the keychain empty.shop auth loginis retained for interactive human terminal use.Patch Changes
9a495b9: Bundle the
skill/directory (SKILL.md and reference files) in the published package so the skill ships and versions in lockstep with the CLI.51000d8: Guide agents to set
--device-nameto their own name plus host device (e.g.Max - Mac Mini) so the Shop Connections entry is self-identifying. Document where to source the agent name per harness:IDENTITY.md(OpenClaw) or~/.hermes/SOUL.md(Hermes).7d28257: Fix keytar CJS/ESM interop that broke every secret-store write.
Under ESM,
import('keytar')produced a namespace where some named exports (e.g.getPassword) were present but the write methods (setPassword,deletePassword) wereundefined— the complete API lives on.default. As a resultstore.set/store.deletethrewkeytar.setPassword is not a function, breakingauth login,auth poll,config set-country, device-id persistence, and any command that writes to the keychain.KeytarSecretStorenow resolves the module via.default(falling back to the namespace) and only uses it when the read and write methods are functions; otherwise it falls back to the macOSsecurityCLI instead of throwing.