DoorDash Group Orders
SkillAI & modelsdoordash-group-orders is a skill for AI agents that handles group food ordering through the DoorDash CLI (dd-cli). It keeps a persistent team roster, so a single request like "lunch for the team" turns into one merged cart with each line attributed to its eater, per-person cost splits, and payer rotation history.
Use DoorDash Group Orders in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add DoorDash Group Orders and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the DoorDash Group Orders skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; ahel provides instructions and does not run this skill.
No other account needed.
Have the DoorDash CLI (dd-cli) available on your system.
What your AI can do with it
- Collects individual food choices into a single merged DoorDash cart
- Attributes each cart line to its eater via a person-to-cart-item-id ledger
- Splits costs per person with fee proration
- Tracks payer rotation history across orders
- Maintains a persistent team roster for repeat orders
Getting started
- Have the DoorDash CLI (dd-cli) available on your system.
- Add the doordash-group-orders skill to your agent's configuration.
- Set up the team roster with the people who will be ordering.
- Ask your agent for a group order, such as lunch for the team, and review the merged cart and per-person split it produces.
What this skill tells your AI
The instructions your AI receives, as published by davila7/claude-code-templates in cli-tool/components/skills/doordash/doordash-group-orders/SKILL.md and read by ahel’s review.
Coordinating N people's food is exactly the cross-session state Claude drops: who's vegetarian, who hates cilantro, which cart line is Bob's, whose turn it is to pay. This skill keeps a roster, attributes every cart line to its eater, splits costs with fees prorated, and remembers payer history.
Unofficial community skill built on DoorDash's
doordash-oss/doordash-cli. Note: dd-cli orders under ONE account — the account owner pays DoorDash; the split is for reimbursement (Venmo/transfer), not split payment.
State
team-food.json(project dir or~/.claude/dd-cli/— committable if the team shares a repo): the roster.
{
"members": {
"dani": { "hard": ["vegetarian"], "allergens": [{ "name": "peanut", "severity": "anaphylaxis" }], "favorites": ["Veggie burrito bowl"], "dislikes": ["cilantro"] },
"bob": { "hard": [], "allergens": [], "favorites": ["Spicy chicken sandwich"], "dislikes": [] }
}
}
.dd/round-<date>.json— the active round's ledger:
{
"date": "2026-07-19",
"cart_uuid": "...",
"restaurant": "...",
"orders": {
"dani": [{ "item": "Veggie bowl", "cart_item_id": "41", "price": 12.5 }],
"bob": [{ "item": "Spicy chicken sandwich", "cart_item_id": "42", "price": 11.0 }]
}
}
.dd/rounds.jsonl— history, one line per completed round:{"date": "...", "order_uuid": "...", "payer": "dani", "split": {"dani": 14.1, "bob": 12.4}}
Flow 1 — Build a round
"Order lunch for the team":
- Roster check: load
team-food.json; missing members → quick interview (hard constraints, allergens + severity, a favorite, dislikes). - Restaurant: intersect hard constraints (a vegetarian on the roster =
only places with real vegetarian options).
dd-cli search --query "..."→ shortlist of 2-3 → let the human pick. - Per-member choice: use their
favoriteswhen the restaurant matches; otherwise ask ONE question per member (or take answers from a pasted thread — Flow 2). Never guess for someone with allergens. - Build the cart:
dd-cli cart add-items ...per member's items (via the dd-guard wrapper when doordash-spend-guard is installed). After each add, rundd-cli cart show --cart-uuid <X>and record which cart-item-id belongs to whom in.dd/round-<date>.json. This ledger is what makes "quita lo de Bob" resolvable later. - Review: show the cart grouped by person with per-person subtotals.
- Checkout: emit the checkout URL (through dd-guard if installed). The group gate hook independently re-checks allergens (see below).
- Close the round: after the human confirms they ordered, pull the
order_uuid from
dd-cli order history, compute the split, append to.dd/rounds.jsonl, and print a share-ready split table.
Flow 2 — Paste-a-thread intake
The user pastes a Slack/chat thread ("who wants what"). Parse it into the round file: person → requested items. Unknown people → ask if they should join the roster. Ambiguous requests ("something spicy") → one clarifying question, or their favorite if the restaurant matches. Then continue Flow 1 from step 4.
Flow 3 — Edits by person
"Bob canceló" / "cambia lo de Sam": look up the person's cart_item_ids in
the round ledger, dd-cli cart remove-item --cart-uuid X --cart-item-id N
for each, update the ledger, re-show the grouped cart.
Cost split
- Item subtotals per person from the round ledger.
- Fees/tip/tax are only final on the payment page: split the known subtotal now, and offer the post-payment fallback — "tell me the final total and I'll prorate the difference by each person's share."
split= per-person items + prorated share of (final_total − subtotal) when provided.
/whose-turn
Read .dd/rounds.jsonl: sum what each member has paid vs. consumed across
rounds; the next payer is the member with the largest (consumed − paid)
balance. Show the balances so the answer explains itself.
Rules
- Anyone with an
anaphylaxisallergen gets the same vetting the doordash-allergy-shield skill applies — check their items against hidden-source synonyms, and never guess their order. - cart-item-ids come only from real
cart showoutput. - The round ledger is the source of truth for attribution — keep it updated on every cart mutation, or person-level edits break.
- Add
.dd/to.gitignoreunless the team explicitly wants round history committed (it reveals eating habits).
Signals
- GitHub stars
- 32k
- Forks
- 4k
- Last commit
- Oct 2026
Questions
- How are costs split?
- Costs are split per person, with fees prorated across the group. Each cart line is attributed to its eater through a person-to-cart-item-id ledger.
- Does it need the DoorDash CLI?
- Yes, the skill orders through the DoorDash CLI (dd-cli), so that needs to be available on your system.
- Do I have to re-enter everyone's details each time?
- No. The skill keeps a persistent team roster, so repeat group orders can draw on the saved list of people.
- Who pays for the order?
- The skill tracks payer rotation history, so it can rotate who pays across orders.
Advanced
- Item type
- skill
- Key
doordash-group-orders- Source
- github.com/davila7/claude-code-templates
github.com/davila7/claude-code-templates
More in AI & models
Skill · anthropics
More in AI & modelswayfinder
Skill · mattpocock
More in AI & modelswizard
Skill · mattpocock
More in AI & modelsalgorithmic-art
Skill · anthropics
More in AI & modelscode-review-and-quality
Skill · addyosmani
More in AI & modelsai-first-engineering
Skill · affaan-m
More in AI & models