Shopping & E-commerceDocumentedScanned

plan2meal

plan2meal

Share:

Installation

npx clawhub@latest install plan2meal

View the full skill documentation and source below.

Documentation

Plan2Meal Skill

A ClawdHub skill for managing recipes and grocery lists via Plan2Meal, a React Native recipe app.

Features

  • Recipe Management: Add recipes from URLs, search, view, and delete your recipes
  • Grocery Lists: Create and manage shopping lists with recipes
  • Backend Authentication: Secure authentication via Plan2Meal web app (no secrets in skill)
  • Recipe Extraction: Automatically fetch recipe metadata from URLs
  • Telegram Formatting: Pretty-printed output for Telegram

Setup

  • Install via ClawdHub:

  • clawdhub install plan2meal

  • Configure environment variables:

  • cp .env.example .env
       # Edit .env with your credentials

  • Required environment variables:

  • - PLAN2MEAL_API_URL: Your Plan2Meal backend API URL (e.g., ) **Optional:** - PLAN2MEAL_AUTH_URL: Custom authentication URL (defaults to )

    Important:
    - Public Skill: This skill is published on ClawdHub. No secrets are stored in the skill.
    - Authentication: Users authenticate via your Plan2Meal web app, then copy a session token back to Telegram.
    - Backend Security: All OAuth credentials (GitHub, Convex) are configured in your backend only, never exposed.

    Commands

    Recipe Commands

    CommandDescription
    plan2meal add Fetch recipe metadata from URL and create recipe
    plan2meal listList your recent recipes
    plan2meal search Search your recipes
    plan2meal show Show detailed recipe information
    plan2meal delete Delete a recipe

    Grocery List Commands

    CommandDescription
    plan2meal listsList all your grocery lists
    plan2meal list-show Show grocery list with items
    plan2meal list-create Create a new grocery list
    plan2meal list-add Add recipe to grocery list

    Help

    CommandDescription
    plan2meal helpShow all available commands

    Usage Examples

    Adding a Recipe

    plan2meal add

    Output:

    βœ… Recipe added successfully!
    
    πŸ“– Recipe Details
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    Name: Classic Pasta
    Source: allrecipes.com
    Method: firecrawl-json (credit used)
    Time: 15 min prep + 20 min cook
    
    πŸ₯˜ Ingredients (4 servings)
    β€’ 1 lb pasta
    β€’ 2 cups marinara sauce
    β€’ 1/2 cup parmesan
    
    πŸ”ͺ Steps
    1. Boil water...

    Searching Recipes

    plan2meal search pasta

    Creating a Grocery List

    plan2meal list-create Weekly Shopping

    Adding Recipe to List

    plan2meal list-add <listId> <recipeId>

    Recipe Limits

    The free tier allows up to 5 recipes. You'll receive a warning when approaching this limit.

    Authentication Architecture

    How It Works

    Skill Owner Setup (one-time):

  • Configure your Plan2Meal backend API URL in the skill

  • Your backend handles all OAuth (GitHub credentials configured in Convex environment variables)

  • Your backend is configured with the Convex URL (stays private)
  • End User Flow:

  • User sends a command (e.g., plan2meal list)

  • Skill responds with a link to your Plan2Meal sign-in page (app.plan2meal.com/sign-in)

  • User clicks the link and authenticates with GitHub via your web app

  • Your backend (using Convex Auth) handles the GitHub OAuth flow

  • After successful authentication, your backend shows the user a session token

  • User copies the token and sends it back to Telegram (or types token: )

  • Skill validates the token with your backend and stores it securely
  • Backend Processing:

    • Your Plan2Meal backend uses Convex Auth with GitHub provider

    • GitHub OAuth credentials are stored in Convex environment variables (never exposed)

    • After GitHub auth, backend generates a session token for the user

    • Skill sends session token to your backend API for all requests

    • Your backend validates the token and makes Convex API calls on behalf of the user

    • Convex URL is never exposed to users or the skill


    Key Points

    • Public Skill: No secrets in the skill - safe to publish on ClawdHub
    • Backend OAuth: All OAuth credentials (GitHub, Convex) stay in your backend
    • User Identification: Your backend maps session tokens to Convex users internally
    • Privacy: Convex URL stays private in your backend only
    • Security: Session tokens are validated with your backend before use
    MIT