poke-ordering
3
总安装量
3
周安装量
#60061
全站排名
安装命令
npx skills add https://github.com/spookyuser/poke --skill poke-ordering
Agent 安装分布
claude-code
3
opencode
2
gemini-cli
2
github-copilot
2
codex
2
kimi-cli
2
Skill 文档
Poke Co Ordering CLI
CLI for browsing menus and placing orders at The Poke Co (South Africa). All output is JSON. Requires Node.js.
Commands
Run via node scripts/poke-cli.js <command>.
| Command | Flags | Output |
|---|---|---|
locations |
â | All locations with open/closed status |
hours --location <name> |
--location (partial match) |
{ name, is_open, kitchen_status, can_collection, can_delivery } |
categories --location <name> |
--location |
[{ category, item_count }] |
search --location <name> --query <text> |
--location, --query, optional --category |
Matching items with prices, types, deal groups |
menu --location <name> |
--location |
Full menu dump (large â prefer search) |
order --from <file | -> |
--from |
Order confirmation with payment URL |
byo --location <name> --size <regular|maxi> ... |
see below | Build Your Own bowl builder |
byo-options --location <name> |
--location |
All BYO ingredient options for a location |
Workflow
- Find location:
node scripts/poke-cli.js locationsâ pick one by name - Check hours:
node scripts/poke-cli.js hours --location "Kloof"â confirmis_open: true - Search items:
node scripts/poke-cli.js search --location "Kloof" --query "salmon"â find what to order - Place order: pipe JSON to
node scripts/poke-cli.js order --from -
BYO Workflow
- Find location:
node scripts/poke-cli.js locations - Check hours:
node scripts/poke-cli.js hours --location "Kloof" - Get options:
node scripts/poke-cli.js byo-options --location "Kloof"â shows all available bases, proteins, toppings, sauces, crunches, extras with prices for both regular and maxi - Build bowl:
node scripts/poke-cli.js byo --location Kloof --size regular --base ... --protein ... --topping ... --sauce ... --crunch ...
Always run byo-options first to see what ingredients are available before building a bowl.
Order JSON Format
{
"location": "Kloof St",
"mobile": "+27XXXXXXXXX",
"order_type": "collection",
"time": "asap",
"items": [
{ "name": "Miso Soup", "quantity": 1 },
{
"name": "Build Your Own",
"quantity": 1,
"instructions": "Extra sauce",
"choices": {
"Choose Your Base": ["White Sushi Rice"],
"Choose Your Protein": ["Salmon"]
}
}
]
}
Build Your Own (BYO) Command
The byo command provides a typed CLI for building custom bowls without needing to know the raw deal group structure.
Required flags:
--location <name>â location (partial match)--size <regular|maxi>â bowl size (R83 regular, R99 maxi)--base <name>â 1-2 bases (repeat flag for split base, or “none”)--protein <name>â 1 protein (or “none”)--topping <name>â 1-4 toppings (repeat flag)--sauce <name>â 1-2 sauces (repeat flag), or “none” for no sauce--crunch <name>â 1 crunch (or “none”)
Optional flags:
--extra <name>â paid extras, up to 2 (repeat flag)--extra-protein <name>â extra protein--extra-sauce <name>â extra sauce (paid, repeat flag)--remove <name>â remove defaults--side <name>â add a side--drink <name>â add a drink--jsonâ output order-ready JSON item (for piping intoorder)
Example:
node scripts/poke-cli.js byo --location Kloof --size regular \
--base "sticky rice" --protein salmon \
--topping mango --topping cucumber --topping edamame --topping radish \
--sauce "house shoyu" --sauce "creamy togarashi" \
--crunch "cashew nuts"
Discover options: Use byo-options --location <name> to see all available ingredients with prices.
Deal Items (generic)
When search returns an item with deal_groups, you must provide choices in the order:
- Each key is a partial match on the group’s
description - Each value is an array of partial matches on option names
- Check
requiredandmin/maxto know which groups need selections
Environment
POKE_TOKENâ JWT auth token, required only fororder
Errors
All errors return { "error": "..." } to stderr with exit code 1.
| Error | Fix |
|---|---|
| No location matching “X” | Check locations output for exact names |
| Not currently accepting orders | is_open is false â try another location or wait |
| No menu item matching “X” | Broaden search query or check categories first |
| Deal requires “choices” | Use search to see deal_groups, then provide choices |
Tips
- Prefer
searchovermenuâ menu dumps 80+ items; search returns only matches - Partial matching everywhere â “kloof” matches “Kloof St”, “salmon” matches “Salmon Sashimi”
- Mobile format â use international format:
+27XXXXXXXXX - Filter by category â
search --location Kloof --query rice --category sides