Family Grocery
Shared family grocery list — multiple members add, remove, and view items organized by store. Admin-managed access, web-verified store addresses and item availability.
Best use case
Family Grocery is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Shared family grocery list — multiple members add, remove, and view items organized by store. Admin-managed access, web-verified store addresses and item availability.
Teams using Family Grocery 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/family-grocery/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How Family Grocery Compares
| Feature / Agent | Family Grocery | 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?
Shared family grocery list — multiple members add, remove, and view items organized by store. Admin-managed access, web-verified store addresses and item availability.
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.
Related Guides
AI Agents for Marketing
Discover AI agents for marketing workflows, from SEO and content production to campaign research, outreach, and analytics.
AI Agents for Startups
Explore AI agent skills for startup validation, product research, growth experiments, documentation, and fast execution with small teams.
AI Agents for Coding
Browse AI agent skills for coding, debugging, testing, refactoring, code review, and developer workflows across Claude, Cursor, and Codex.
SKILL.md Source
## When to Use A family member needs to add, remove, or view a shared grocery list that multiple people contribute to. The list is organized by store (with address). Focus: what to buy and where, not meal planning. ## Architecture Shared data lives in a user-configured local path accessible to all family members. See `memory-template.md` for file templates. ``` [shared-path]/ ├── config.json # Stores, primary store, fallback order, category→store map ├── users.md # Family members and roles (admin/member) ├── list.md # Current grocery list, grouped by store └── history.md # Log of all adds, removes, and merges ``` Skill reference files: | Topic | File | |-------|------| | Data file templates | `memory-template.md` | | List operations | `lists.md` | | Store management | `stores.md` | | User management | `user-management.md` | ## Startup Sequence Run this every invocation, in order: ### Step 1 — Resolve user identity 1. Ask the agent for the name the user has set with it (read from OpenClaw memory key: `family_grocery_user`). 2. If no name is stored → deny: "No name found on this agent. Ask your admin to configure your agent with your name." Stop. ### Step 2 — Resolve shared path 1. Read shared path from OpenClaw memory (key: `family_grocery_path`). 2. If not found → this is a **first-time setup**. Go to **Admin Init Flow** below. ### Step 3 — Load config and verify access 1. Read `[shared-path]/config.json` and `[shared-path]/users.md`. 2. Look up the username (from Step 1) in `users.md`. 3. If not found → deny: "`[name]` is not on the family list. Ask your admin to add you." 4. If found → proceed. Note whether user is `admin` or `member`. --- ## Admin Init Flow Only runs when no shared path is in OpenClaw memory. 1. Ask: "What shared path should I use for the family grocery data? (e.g. /Users/Shared/grocery)" 2. Create directory: `mkdir -p [path]` 3. Initialize files from `memory-template.md`: `config.json`, `users.md`, `list.md`, `history.md` 4. Write the current user to `users.md` as `admin` 5. Save path to OpenClaw memory as `family_grocery_path` 6. Confirm: "Setup complete. You are admin. Share the path `[path]` with other family members so they can connect their agents." --- ## Scope This skill ONLY: - Manages the shared grocery list (add, remove, view) - Tracks stores and their addresses - Assigns items to stores (by user input, category, or primary store default) - Checks item availability and store addresses via web search (when available) - Manages family member access - Surfaces change history on request This skill NEVER: - Makes purchases or places orders - Plans meals or suggests recipes - Reads or writes files outside `[shared-path]` - Accesses live store inventory systems - Pushes notifications when the list changes --- ## Core Rules ### 1. Always reload config and users on every invocation Never cache across sessions. Always re-read `config.json` and `users.md` at startup to pick up changes made by other family members. ### 2. Identity is resolved from OpenClaw memory - Never ask the user for their name — always read it from the agent's OpenClaw memory. If absent, deny access. - Never ask for the shared path if it's in memory. - Save both on first encounter so they're never asked again. - Name must match exactly (case-insensitive) what the admin registered in `users.md`. ### 3. Adding items — always resolve a store first Resolution order: user input → category mapping → primary store. See `lists.md` for full add flow including duplicate detection and web search. ### 4. Duplicate detection before every add Before adding any item, fuzzy-match (case-insensitive, singular/plural) against `list.md`. If a match exists, tell the user who added it and when, then ask whether to merge quantities or add separately. Log merges in `history.md`. ### 5. Every write is attributed Every entry in `list.md` and `history.md` must include the user name and ISO timestamp. ### 6. Web search is optional — always degrade gracefully - If web search is available: use it to verify store addresses and item availability. - If unavailable: proceed without it, note the limitation to the user once. - Never block an action waiting for web search. ### 7. Store headings always include address When displaying the list, format each store heading as: `🏪 [Store Name] ([Full Address]) — [Store Hours]` If store hours are missing, resolve them before displaying: web search → confirm with user → save to `config.json`. If search unavailable, ask user. If user skips, omit hours from heading. This ensures migration from older configs that lack store hours. Always end the list with `Total items: [count]` across all stores including unassigned. ### 8. Admin-only actions | Action | Who can do it | |--------|--------------| | Add a user | Admin only | | Set primary store | Admin only | | Set fallback order | Admin only | | Update category→store map | Admin only | | Add a new store | Any user | | Add/remove list items | Any user | | View list | Any user | | View history | Any user | If a member attempts an admin-only action: "Only the admin can do that." --- ## Common Traps - Reading from a stale cached config → always reload `config.json` and `users.md` at startup - Adding an item without resolving a store first → always confirm store before writing to `list.md` - Showing a list dump without store grouping → always group by store with address heading - Forgetting to attribute changes → every write must include user + timestamp - Blocking on web search when unavailable → degrade gracefully, proceed without it - Asking for user name or path every session → these must be in OpenClaw memory after first use
Related Skills
family-partner
Family Partner - AI-Powered Family Assistant Skills Suite A comprehensive collection of 11 family management skills including calendar, tasks, memory, labor tracking, milestones, anniversaries, voting, challenges, and more.
---
name: article-factory-wechat
humanizer
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
find-skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
tavily-search
Use Tavily API for real-time web search and content extraction. Use when: user needs real-time web search results, research, or current information from the web. Requires Tavily API key.
baidu-search
Search the web using Baidu AI Search Engine (BDSE). Use for live information, documentation, or research topics.
agent-autonomy-kit
Stop waiting for prompts. Keep working.
Meeting Prep
Never walk into a meeting unprepared again. Your agent researches all attendees before calendar events—pulling LinkedIn profiles, recent company news, mutual connections, and conversation starters. Generates a briefing doc with talking points, icebreakers, and context so you show up informed and confident. Triggered automatically before meetings or on-demand. Configure research depth, advance timing, and output format. Walking into meetings blind is amateur hour—missed connections, generic small talk, zero leverage. Use when setting up meeting intelligence, researching specific attendees, generating pre-meeting briefs, or automating your prep workflow.
self-improvement
Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks.
botlearn-healthcheck
botlearn-healthcheck — BotLearn autonomous health inspector for OpenClaw instances across 5 domains (hardware, config, security, skills, autonomy); triggers on system check, health report, diagnostics, or scheduled heartbeat inspection.
linkedin-cli
A bird-like LinkedIn CLI for searching profiles, checking messages, and summarizing your feed using session cookies.
notebooklm
Google NotebookLM 非官方 Python API 的 OpenClaw Skill。支持内容生成(播客、视频、幻灯片、测验、思维导图等)、文档管理和研究自动化。当用户需要使用 NotebookLM 生成音频概述、视频、学习材料或管理知识库时触发。