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.

Verified: 2026-05-13 (printing-press-ingest-2026-05-13+enrich-capability-skill)

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

Setup docs →

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