TL;DR: To configure WooCommerce shipping from the command line, use the 1TeamSoftware plugins, which expose their full config and fulfillment surface through WP-CLI: run wp wc-shippo-shipping settings set to write origin, credentials, and services, wp wc-shippo-shipping validate to gate a deploy, and wp wc-shippo-shipping rates quote to prove a live rate comes back. The same commands ship as a Claude Code skill, so an AI agent can run them too.
This is the terminal how-to; every command is real and uses the Shippo namespace. It assumes you're comfortable with WP-CLI and know your way around WooCommerce shipping zones and methods. You don't need prior carrier-API knowledge.
Run more than one WooCommerce store and you've met the problem already: shipping setup doesn't survive scale.
You configure zones, boxes, and carrier credentials by clicking through wp-admin. It works. Then you do it again on staging, then again for the next client, each pass a little different because a settings screen won't let you repeat yourself exactly. The failure mode is the bad part. A customer hits checkout, sees no shipping options at checkout, and leaves. Nothing in the logs says why. You find out from a support email three days later.
I wanted shipping to behave like the rest of my infrastructure: text I can diff, commit, replay across environments, and gate in CI. That's what the 1TeamSoftware shipping plugins give you. It all runs through WP-CLI, and the same commands are wrapped in a Claude Code skill so an agent can drive them.
This is the developer tour. Every command below is real, copy-pasteable, and uses the Shippo namespace (wc-shippo-shipping). Swap the namespace for your carrier and the rest holds. For the complete reference with every flag and output shape, see the full pillar: . Ask it to fix box coverage and it reaches for the box-sizing routine instead of guessing at flags. It runs the exact same WP-CLI a human would, and it pauses to ask for secrets rather than inventing them. No hidden API layer, no magic. The free plugin ships 6 skills; PRO adds 4.
In practice you describe the job with real constraints and let it work one step at a time:
"Customers in some regions say no shipping options appear. Make the plugin active for both my US domestic zone and Rest of World, then show me the zone coverage table so I can confirm it's attached where it needs to be."
"Set up Shippo from scratch. Sandbox key is
shippo_test_abc123, we ship from 215 Clayton St, San Francisco 94117. Audit my catalog for missing weight or dimensions, recommend a starter box set from what I actually sell, and prove rates come back with a real quote. Ask one question at a time and don't touch my live key yet."
The security model helps anyone managing a fleet: hand the agent a sandbox key during setup, rotate to the live key yourself, and it never needs to see the real one. Secrets stay redacted in CLI output, and you can store credentials in wp-config.php constants so they never touch the database at all.
Which carriers does this work with?
The same engine, settings model, and command set run across eight carrier plugins: Shippo, EasyPost, FedEx, ShipStation, ShipEngine, Shipmondo, ChitChats, and Stallion Express. Only the namespace and a few setting keys change. Run wp help | grep shipping to find the namespace, then settings list to discover the keys.
One catch worth knowing: the current covers configuration and live rate quotes; PRO adds labels, tracking, and manifests. Install the skill, point Claude Code at a staging store, and run a validate plus a rates quote to watch the whole loop work:
npx skills add https://github.com/1TeamSoftware/skills --skill 1teamsoftware-wc-shipping
If you've ever debugged a blank checkout at 11pm, shipping you can diff and replay is worth the ten minutes it takes to set up. The full command reference and AI-agent walkthrough live in the : the full command reference with every flag and output shape
: configuration plus live rate quotes at no cost
: the zone model these commands attach to
SOCIAL SHARE CARD GENERATOR