bring-add
Use when user wants to add items to Bring! shopping lists. For adding single items, batch items, or items from stdin/files. Supports dry-run preview and JSON output.
Best use case
bring-add is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Use when user wants to add items to Bring! shopping lists. For adding single items, batch items, or items from stdin/files. Supports dry-run preview and JSON output.
Teams using bring-add should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/bring-add/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How bring-add Compares
| Feature / Agent | bring-add | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Use when user wants to add items to Bring! shopping lists. For adding single items, batch items, or items from stdin/files. Supports dry-run preview and JSON output.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Bring! Add Items CLI ## Overview CLI for adding items to Bring! shopping lists. Supports quick single-item mode, batch mode, stdin/pipe input, and interactive mode. ## When to Use **Use this skill when:** - User wants to add items to a Bring! shopping list - Adding single item with optional specification (e.g., "Milk 1L") - Adding multiple items at once (batch mode) - Piping items from a file or other command - Need to preview additions with dry-run - Need JSON output for scripting **Don't use when:** - User wants to browse recipes (use bring-recipes instead) - User wants to remove items from a list - User wants to view current list contents ## Quick Reference | Command | Purpose | |---------|---------| | `bring-add "Item" "spec"` | Add single item with specification | | `bring-add --batch "A, B 1L, C"` | Add multiple comma-separated items | | `bring-add -` | Read items from stdin | | `bring-add` | Interactive mode (TTY only) | | `bring-add lists` | Show available shopping lists | | `bring-add --dry-run ...` | Preview without modifying | **Environment variables:** ```bash export BRING_EMAIL="your@email.com" export BRING_PASSWORD="yourpassword" export BRING_DEFAULT_LIST="Shopping" # optional ``` ## Installation ```bash cd skills/bring-add npm install ``` ## Common Workflows **Add a single item:** ```bash node index.js "Tomatoes" "500g" node index.js "Milk" ``` **Add to specific list:** ```bash node index.js --list "Party" "Chips" "3 bags" ``` **Batch add multiple items:** ```bash node index.js --batch "Tomatoes 500g, Onions, Cheese 200g" ``` **Pipe from file:** ```bash cat shopping-list.txt | node index.js - echo -e "Milk 1L\nBread\nButter" | node index.js - ``` **Preview before adding:** ```bash node index.js --dry-run --batch "Apples 1kg, Pears" ``` **Get JSON output:** ```bash node index.js --json --batch "Milk, Bread" 2>/dev/null ``` **List available lists:** ```bash node index.js lists node index.js --json lists ``` ## Flags Reference | Flag | Description | |------|-------------| | `-l, --list <name>` | Target list (name or UUID) | | `-b, --batch <items>` | Comma-separated items | | `-n, --dry-run` | Preview without modifying | | `-q, --quiet` | Suppress non-error output | | `-v, --verbose` | Show detailed progress | | `--json` | Output JSON to stdout | | `--no-color` | Disable colored output | | `--no-input` | Never prompt; fail if input required | ## Input Format Items follow the pattern: `ItemName [Specification]` | Input | Item | Spec | |-------|------|------| | `Tomatoes 500g` | Tomatoes | 500g | | `Oat milk 1L` | Oat milk | 1L | | `Red onions 3` | Red onions | 3 | | `Cheese` | Cheese | (empty) | Rule: Last word becomes specification if it contains a number or unit (g, kg, L, ml, Stück, pck). ## Exit Codes | Code | Meaning | |------|---------| | `0` | Success | | `1` | Generic failure (API error, network) | | `2` | Invalid usage (bad args, missing input) | | `3` | Authentication failed | | `4` | List not found | | `130` | Interrupted (Ctrl-C) | ## Common Mistakes **Forgetting environment variables:** Set `BRING_EMAIL` and `BRING_PASSWORD` before running. **Wrong list name:** Use `bring-add lists` to see available lists and their exact names. **Specification parsing:** The last word is treated as specification only if it looks like a quantity. "Red onions" stays as one item, but "Red onions 3" splits into item "Red onions" with spec "3". **Interactive mode in scripts:** Use `--no-input` flag in scripts to fail explicitly rather than hang waiting for input. ## Implementation Notes - Uses `node-bring-api` with `batchUpdateList()` API - Requires Node.js 18.0.0+ - Outputs data to stdout, progress/errors to stderr - JSON mode available for automation - Interactive mode only when stdin is a TTY
Related Skills
bring
Manage Bring! shopping lists - view, add, and remove grocery items from shared shopping lists. Use when the user wants to interact with their Bring! shopping list app, add groceries, check what's on the list, or remove items after shopping.
bring-rezepte
Use when running the OpenClaw/ClawHub Bring! skill to search recipes on the web, parse recipe URLs for ingredients.
bring-recipes
Use when user wants to browse recipe inspirations from Bring! shopping app. For discovering recipes, viewing recipe details (name, author, type, images), or filtering by tags. Note - cannot import ingredients (API limitation).
bring-shopping
Manage Bring! shopping lists via the unofficial bring-shopping Node.js library using email/password login. Use for listing lists, reading items, adding/removing items, and checking/unchecking items when API-style access is acceptable.
paylock
Non-custodial SOL escrow for AI agent deals.
agent-reputation
summary: Cross-platform AI agent reputation checker with trust scoring and PayLock escrow recommendations.
Telecom Agent Skill
Turn your AI Agent into a Telecom Operator. Bulk calling, ChatOps, and Field Monitoring.
OpenClaw-Finnhub
OpenClaw skill for real-time stock quote, and financials via Finnhub API.
```markdown
# OpenClaw-Last.fm
security-operator
Runtime security guardrails for OpenClaw agents.
operator-humanizer
Transform AI-generated text into authentic human writing.
kit-email-operator
**AI-powered email marketing for Kit (ConvertKit)**.