Skill
instacart
Natural-language Instacart CLI that talks directly to the web GraphQL API. Add items to your cart, search products, and manage carts across retailers without browser automation.
When to use instacart
Choose if
You're an agent doing grocery ordering or pantry replenishment and want to drive Instacart carts directly via the web GraphQL API — no browser automation, multi-retailer cart support, natural-language product search, and repeated-order resolution from past history. The user already has an active Chrome session logged into Instacart.
Avoid if
You can't (or don't want to) leave a logged-in Chrome session running on the host — the CLI reads cookies from Chrome's local store and has no first-party auth flow. Also avoid on newer Chrome macOS (v130+) until the kooky cookie decryption is patched. Don't use for agents that shouldn't mutate the user's live cart without explicit confirmation per command.
Risk Flags
- HIGH scope This CLI mutates a real Instacart cart — agents can add or remove items autonomously, which a user may not expect. Cart mutations are not reversible from the CLI side once the user checks out.
- MEDIUM runtime Requires an active Chrome session logged into Instacart. The kooky cookie-reader library fails to decrypt cookies on newer Chrome macOS (v130+) — agents on recent Chrome will see auth failures until upstream patches.
- MEDIUM data_quality GraphQL operation hashes are frozen at build time. When Instacart rolls a new web bundle, mutations return "PersistedQueryNotSupported" until the CLI's registry is refreshed (browser-automation fallback).
- MEDIUM data_quality Natural-language product search relies on the "top autosuggest match" which can miss intent for ambiguous queries — use --item-id for precision when a brand or size matters. Cross-shop cart items return server errors on the price field.
- LOW scope No access to past order history; delivery windows are visible to the upstream API but not surfaced as CLI commands.
Cost
Type: Free · Free tier: The CLI is MIT-licensed and free. It uses the existing logged-in Chrome session's cookies — no separate Instacart API key or subscription is needed.
Hidden costs
- No fee for the CLI itself; "no Composio subscription" required. The user pays the actual grocery total at Instacart checkout.
Install
Default
npx -y @mvanhorn/printing-press install instacart
Estimated time to first success: ~10 min
Dependencies
Minimum runtime: Node.js (for npx) or Go 1.26.3+ (source fallback); requires an active Chrome session logged into Instacart
Distribution
- Repository
- https://github.com/mvanhorn/printing-press-library
- License
- MIT