{
  "name": "Buddy Club Social",
  "description": "Buddy Club Social is where people help each other get things done - post what you are working on, and find who you need. Status: open. Skills are this site's tools; call one with SendMessage and a data part { \"skill\", \"arguments\" }.",
  "supportedInterfaces": [
    {
      "url": "https://buddyclub.social/api/a2a",
      "protocolBinding": "JSONRPC",
      "protocolVersion": "1.0"
    },
    {
      "url": "https://buddyclub.social/api/mcp",
      "protocolBinding": "MCP",
      "protocolVersion": "2025-11-25"
    },
    {
      "url": "https://buddyclub.social/api/agent/v1",
      "protocolBinding": "HTTP+JSON",
      "protocolVersion": "1.0"
    }
  ],
  "provider": {
    "organization": "DietzX llc, Wyoming",
    "url": "https://dietzx.ai"
  },
  "version": "2026.1011.10",
  "documentationUrl": "https://buddyclub.social/llms.txt",
  "x-product-flows": [],
  "x-rules": [
    "Product flows below are separate from the listed agent tools; a signed-in browser or booking token cannot be replaced by caller-supplied member IDs.",
    "6's voice uses the person's agreement, device listening preference, visible tab and one-ear ownership. An agent call does not grant microphone permission or start voice. With ONE_ENTRY_GATE=on, paid voice doors also check the Enter cookie or the account's acceptance record.",
    "Read back a destination and obtain the person's explicit channel choice and permission before sending. Never infer permission from a discovered card."
  ],
  "capabilities": {
    "streaming": false,
    "pushNotifications": false,
    "extendedAgentCard": false
  },
  "securitySchemes": {
    "agentPass": {
      "httpAuthSecurityScheme": {
        "scheme": "Bearer",
        "description": "Send the credential required by this tool as Authorization: Bearer <token>, including previews. The tool's own description determines the credential and authority; the header grants no additional permission."
      }
    }
  },
  "defaultInputModes": [
    "application/json",
    "text/plain"
  ],
  "defaultOutputModes": [
    "application/json",
    "text/plain"
  ],
  "skills": [
    {
      "id": "about",
      "name": "About Buddy Club Social",
      "description": "What Buddy Club Social does, in plain words, who it is for, and whether it is open or taking a wait list. A free read; no arguments.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"about\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "site_facts",
      "name": "Buddy Club Social facts",
      "description": "The facts an agent needs about Buddy Club Social: its pages, how to reach a person (Help@DietzX.ai, 1+855-253-2727), the one legal home, and the You Own and Ai Guarantee promises in one line each. A free read. No arguments.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"site_facts\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "six_sites",
      "name": "The Five DietzX Sites",
      "description": "The five DietzX sites, one line each, in order: DietzX, The Design & Security Factory, SGDietzMusic, WildWorks, Buddy Club Social - with each one's status (open or wait list) and the address to send a person to. Send a person only to `sendPeopleTo`. A free read; no arguments.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"six_sites\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_all_sites_knowledge",
      "name": "Read what the DietzX sites know",
      "description": "Use this when you want to know what any of the DietzX sites is, who it is for, what you can do there, or what its pages say. Includes the saved first-intro interruption policy (configuration, not device playback proof). Answers from the one knowledge file 6 reads for all of them. site narrows it to one of: dietzx, aiasap (The Design & Security Factory), music, wildworks, buddyclub (default: all). question, if given, picks the lines that match its words. A free read: it searches nothing outside that file and sends or saves nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_all_sites_knowledge\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "what_can_6_do",
      "name": "What Can 6 Do?",
      "description": "Use this when you want to know everything 6 can do for a person on the DietzX sites, or what pages and sections exist. Returns Auto Magic's definition (you just tell 6 what you want - go here, do this, or what's this - and 6 does it start to finish), the six sites with their pages, the parts 6 takes a person to, the sections 6 walks down in order, where the picture galleries are, the abilities 6 has right now (each says whether it is on) and the plain words that ask for each. site narrows it to one of: dietzx, aiasap (The Design & Security Factory), music, wildworks, buddyclub (default: all). A free read: it sends, saves and changes nothing. Includes nameAcknowledgement: iSolve says \"Good to meet you, <name>.\" once per talk without introducing 6 again. Public configuration only; no visitor identity or talk is read or started.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"what_can_6_do\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "what_we_keep",
      "name": "What DietzX Keeps and How to Delete It",
      "description": "Read what DietzX keeps about a person, for how long, and exactly how they ask to delete their ONE account (all five sites) - and whether the delete engine is switched on or requests are held. Engine on never means a given account is deleted: holds, disputes and site failures keep it until a later daily run. No arguments; reads no person or account. An agent cannot delete anything: hand the person the steps or the page.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"what_we_keep\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "hey_six_setup",
      "name": "On-Device Wake Setup",
      "description": "Read opt-in and local-browser capability requirements. Configuration only; never enables a microphone, starts a session or spends money.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"hey_six_setup\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "hey6_enable",
      "name": "Hey 6 (hey6.enable)",
      "description": "Confirm-first: ask the person first and only on their yes send person_said_yes: true. Nothing is switched on from here - the answer is where they tell 6 to turn it on on their own device. Writes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"hey6_enable\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "phone_callback_help",
      "name": "Ask 6 for a Call",
      "description": "How a person asks 6 for a callback to their own account-typed phone number. Directions only; cannot read numbers, grant permission, place a call or spend.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"phone_callback_help\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "text_six_status",
      "name": "Text 6 on the DietzX Line",
      "description": "Whether Text 6's source switch and SMS/WhatsApp transport doors are configured, without claiming the provider, brain or media services are online, plus the rules he keeps (fixed STOP/HELP words, replies only, a phone number is never proof of authority). Read only; cannot send a message, test delivery, read messages or numbers, or spend.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"text_six_status\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "text_six_freshness",
      "name": "Text 6 Freshness Receipt",
      "description": "Coarse age buckets for the newest inbound Text 6 receipt and newest reply accepted by a DietzX handler, kept separate from carrier delivery. Carrier delivery stays unknown unless a real Text 6 provider receipt exists. No phone, message, exact time or count. Read only: it does not send, probe Twilio or call a model.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"text_six_freshness\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "text_six_source_receipt",
      "name": "Text 6 Customer-Care Source Receipt",
      "description": "Whether the compiled Text 6 customer-care chapter still carries the approved words-and-voice, reply-only and caller-ID limits, plus source and transformed-body hashes stamped by the retired DietzX port. The source stamp is verified only by the named build-time law, never claimed as a live repository read. Read only: no customer data, provider call, message, page write, model call or spend.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"text_six_source_receipt\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "find_six_spot",
      "name": "Find A Site Spot",
      "description": "Propose a public DietzX site destination using 6's own places and page gates. Preview with dryRun: true: words only, no provider call. Only after the person explicitly agrees, use dryRun: false and consent: true for the existing bounded Jev fallback. Returns a proposal; never navigates, signs in, starts voice, spends on a plan or publishes. Obtain a separate explicit yes before leaving the current site.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"find_six_spot\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "daily_money_terms",
      "name": "Yesterday’s Money Report",
      "description": "Read how G’s private money report works. No amounts, people, keys, or mail are read here. The owner-only API needs G’s own signed-in session; this tool grants no access.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"daily_money_terms\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "join_wait_list",
      "name": "Join a DietzX Site List",
      "description": "Put a person on a DietzX site list: their email goes through the list's own join door, with every lock it has. ONLY with the person's explicit yes - they asked to join and agreed to be emailed - and set consent: true to say so. Ask their birthday and send it (the join door decides). site picks the list (default buddyclub): dietzx (DietzX; open; public entry: open; list design-lab); aiasap (The Design & Security Factory; open; public entry: open; list aiasap); buddyclub (Buddy Club Social; open; public entry: open; list buddyclub-social). Set dryRun: true to see what would happen without doing it. Answers \"you're on the list\" (or that they already were), or the door's own error.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"join_wait_list\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "check_account_card_ask",
      "name": "Check Account Card Ask",
      "description": "Check the person's own account-card request or their yes to the PREVIOUS named account offer with Jev. Read-only: opens nothing, sends nothing and grants no account authority. Neither a card topic nor 6's later claim counts as their request. NEXT_PUBLIC_ONE_ACCOUNT_VOICE_1020 is on; fault or uncertainty returns open: false.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"check_account_card_ask\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "account_touch_guide",
      "name": "Account Touch Guide",
      "description": "How to use the ONE account card by touch. Create an Account opens the existing card; Sign In in the shared account footer uses its sign-in form. Type name, email and birthday in the card's own fields, then use Send the Magic Link. One card stays up and keeps entered fields when its form changes. A tap starts no microphone or voice; the existing Terms and Privacy agreement is still required before microphone access. Read-only: opens nothing, sends nothing, and grants no sign-in authority.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"account_touch_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "create_account",
      "name": "Create A DietzX Account",
      "description": "Make a person their ONE DietzX account (one account for every DietzX site), from Buddy Club Social: ONE sign-in link goes to their OWN email - the same link the site's sign-up card sends - and the account is made only when THEY tap it. Send from email alone after their explicit consent and terms agreement. Never ask name, phone, address or birthday before the link. After the person opens it, their own signed-in account card asks only missing fields, starting with birthday if its 18+ answer is missing. Use mode: waitlist for closed doors in The Design Factory: after their tap, the SAME link makes the account and tries the native master-list write; an unconfirmed write is shown honestly on the landing. Preview with dryRun: true first. One link per email per day; no payment is taken and nothing is spent. Answers link_sent, or the door's own reason.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"create_account\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_club_join",
      "name": "Join Buddy Club Social",
      "description": "Send the person's own inbox a sign-in link from Buddy Club Social. After they open it, the account card asks only missing fields; adult access waits for the saved 18+ check. Send from email alone with consent: true, consent_words and agree_terms: true. Ask only missing account fields after the link proves ownership; a missing 18+ answer is checked first. Inbox proof alone grants no adult product access. Preview with dryRun: true first. One link per email per day (shared with create_account); no payment is taken. Answers link_sent, or the door's own reason.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_club_join\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "voice_account_intent_map",
      "name": "Voice Account Intent Map",
      "description": "Read which existing ONE-account door and switches own a coarse voice intent on buddyclub. Use only the four listed labels; never send a person's words, email, session, cookie or transcript. Read only: this never opens 6, sends a link, signs anyone in or signs anyone out.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"voice_account_intent_map\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "support_help_handoff",
      "name": "Support and Help by Voice",
      "description": "How a person reports a safety concern or makes a privacy request by talking to 6. The live flow reads their request back once and tries the capped alert door only after their clear yes. Because that door returns no delivery receipt, 6 says delivery is unconfirmed. This read-only tool accepts no report or identity fields and sends nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"support_help_handoff\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "report_concern_handoff",
      "name": "Report a Concern by Voice",
      "description": "How a person reports a concern by talking to 6. 6 asks what happened and where, reads it back once, and requests delivery only after a clear yes. Delivery remains unconfirmed without a receipt. This read-only tool accepts no report or identity fields and sends nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"report_concern_handoff\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "report_problem",
      "name": "Report A Problem To The Team",
      "description": "Tell the DietzX team something is broken on Buddy Club Social (or another DietzX site): a page error, a button that did nothing, something not built yet. It files ONE 6 Fixes ticket the team works from. ONLY with the person's yes (consent: true). Send the page PATH (like /design-factory/plans - no query string), the kind, what the person was trying to do and what went wrong - never their email, phone, address or any personal detail (anything like that is removed). Preview with dryRun: true. The same problem on the same page is filed once an hour. No payment is taken. A successful flag requires a saved-ticket readback. If it cannot be confirmed, do not tell the person it was flagged; they may retry.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"report_problem\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "ticket_status",
      "name": "Check A Problem Report",
      "description": "Where a problem you reported with report_problem stands: open (the team has it), in_crew_row (it is in a crew member's work) - or, once the team tracks it, triaged, building, ready, installed, verified (the fix's test passes) or closed. Send the ticketRef report_problem gave you. It reads only that ticket's state and when it was filed - never anybody's words or details. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"ticket_status\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "preview_bug_context",
      "name": "Preview a Bug Report",
      "description": "Preview opt-in viewport and overlap labels for a 6 Fixes bug report. Send only a page path and dimensions, never a screenshot or personal words. Optional candidate_contexts is a JSON list of up to eight equally consented contexts; Jev suggests duplicate groups across the ONE site's five doors. Read only: no ticket is filed, hidden, closed or changed. Use the existing report_problem filing door separately with the person's yes.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"preview_bug_context\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "look_up_pages",
      "name": "Look up what our pages say",
      "description": "Ask any question about the DietzX sites (what a page says, a policy, the legal pages, how something works) and get the best-matching public page with its own lines, word for word. site narrows it to one of: dietzx, isolve, music, wildworks, buddyclub (default: the site you are on). A free read: it searches only our own public pages and sends or saves nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"look_up_pages\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "send_landscaping_to_G",
      "name": "Send a Landscaping Project to G",
      "description": "WildWorks is G's own landscaping company - landscape design and building by hand, wherever the person is. Hand a person's project to G's team at WildWorks - what they want done in their own words, where it is, and how they want to be reached. The team follows up the way the person chose; nothing is booked, promised or paid for. Use it only when the person asked for this and agreed to be contacted. Set dryRun: true to see what would happen without doing it. One address counts once a day. This is WildWorks' own hand-off (request_project_review on wildworks.ai), offered on every DietzX site's door: the same yes, the same preview, the same daily limits.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"send_landscaping_to_G\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_social_voice",
      "name": "Buddy Club by Voice",
      "description": "Discover how to like a post, follow a member, and draft and confirm a DM using the member's signed-in browser. Read-only instructions: this tool does not like, follow, or send. Also discover how to open the post composer without publishing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_social_voice\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "send_to_a_buddy",
      "name": "Send to a Buddy",
      "description": "Prepare a public post as an unsent Club DM draft. Open the returned URL, choose a Buddy and review before Send. This tool never sends a message or chooses a recipient.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"send_to_a_buddy\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "list_events",
      "name": "List Buddy Club events",
      "description": "The soonest Buddy Club Social events still on: title, when, seats, who hosts, and how many are coming. Open to anybody. With the member's agent pass you also get their own answer on each, and `following: true` narrows it to the people and communities they follow or are in. A private community's events are only ever shown to its members. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"list_events\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_event",
      "name": "Read one Buddy Club event",
      "description": "One event: the details, who said yes, the waiting list, and (with the member's agent pass) their own answer. An event in a private community answers a stranger exactly like one that never existed. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_event\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "my_following",
      "name": "Read who a member follows",
      "description": "The member's own people, communities and Pages, how many of each, and how many follow them. Only their own list. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_following\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "list_pages",
      "name": "List Buddy Club Pages",
      "description": "Pages are a project, creator or organization somebody speaks for, which members follow. Newest first, each with its Fam and whether the member follows it. Give an id for just one. One Page also brings its newest posts (as the member may see them), and its helpers if the member runs it. Give feed \"following\" instead for the newest posts from the Pages the member follows, each with the Page it went up as. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"list_pages\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "appeal_status",
      "name": "Read a member's standing and appeals",
      "description": "Where the member stands: a sanction running on them (with its words and where their appeal on it stands), and any of their posts the crew hid with who hid it, why, and where an appeal stands. Only ever the member's own. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). It cannot file an appeal - that is the member's own words to G's team, on the site. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"appeal_status\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "create_event",
      "name": "Host a Buddy Club event",
      "description": "Host an event as the member: a title, when it starts, and how many seats (0 = as many as turn up). Add communityId to hold it for a community they are in. At most 10 open events per host. Only with the member's yes (consent: true); preview with dryRun: true. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"create_event\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "rsvp_event",
      "name": "Answer a Buddy Club event",
      "description": "Say yes, maybe or no on an event for the member. Past the seats a yes goes on the waiting list. Only with the member's yes (consent: true); preview with dryRun: true. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"rsvp_event\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "follow",
      "name": "Follow on Buddy Club",
      "description": "Follow a person (member), a community or a Page for the member. A follow is private to the follower and is not joining a community. Only with the member's yes (consent: true); preview with dryRun: true. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"follow\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "unfollow",
      "name": "Unfollow on Buddy Club",
      "description": "Stop following a person (member), a community or a Page for the member. A follow is private to the follower and is not joining a community. Only with the member's yes (consent: true); preview with dryRun: true. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"unfollow\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "buddy_menu_voice",
      "name": "Buddy Menu Voice Controls",
      "description": "Voice guide under NEXT_PUBLIC_SIX_HANDS: say I wanna make a post to open the native composer before 6 asks for the words; say let's do the profile to open native profile setup. With the account-card hands switch on, a visitor may prepare a local post draft; sign-in remains required to publish or save. Profile setup keeps its account gate. Opening never publishes or saves. Search for words; open settings; open More for the first, second, third or last post, or for the conversation. In that menu say Mute, Block, Unblock, Report, Notes, Stats, Edit or Take Down. Fill Report Reason, Report Details, Note Classification, Note or Post Words with your words. Save Changes, Send Report, Add Note, Helpful, Somewhat, Not Helpful and Yes Take It Down read back the selected action and wait for a separate yes. Native APIs: /buddyclub/api/social/{feed,safety,reports,notes,analytics,post}, /buddyclub/api/messages/block. Settings uses the one account flow. This guide never writes, accepts consent, grants a pass scope or reads private data. Search results are available through search_buddy_posts; private writes require the member's native signed-in page.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_menu_voice\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_communities",
      "name": "Communities",
      "description": "Find Your People. Make Something Together. Open Buddy Club's More menu, then Communities. The existing signed-in page lists your communities, opens one, and offers Start It, Join and Leave. This tool reads public page instructions only; it does not list private groups or create or join anything.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_communities\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_create_space",
      "name": "Create Your Space",
      "description": "A Live Room for Your Next Conversation. Open Buddy Club's More menu, then Create Your Space. The existing signed-in page offers live rooms and Open a Space only while its native switches, provider setup and minutes allowance permit it. When the starting-now notice is switched on, opening a Space tells the host's followers once in their bell; the host can say no. When scheduling is switched on, the same page sets a Space for later (Schedule It) and others tap Remind Me to get that bell line when the host opens it. When live chat is switched on, people inside a live Space type short comments beside it, the host or a co-host hides one, and 6 reads the latest aloud on ask. This tool reads public page instructions only; it starts no room, microphone or paid session. When replays are switched on, a Space that ended in the last 24 hours stays on the same page under Just Ended as 'Ended - N listened' (the people who walked in besides the host), and Watch The Short opens the host's own kept short. The signed-in GET /buddyclub/api/social/spaces carries these as 'ended'. Keeping or taking off the short is the host's own tap on the page; an agent never does it. Voice: '6, what Spaces did I miss'.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_create_space\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_x_menu_guide",
      "name": "Buddy X Menu Guide",
      "description": "Responsive Buddy Club: phone bottom tabs and one column; iPad navigation, feed and right rail in three columns; desktop navigation, feed, search and Who to Follow. Open the native More button on a post, profile or conversation. Copy Link copies a public post/profile link or a participant-only conversation link. Mute and Block use the member's native safety controls. Report opens a form; Send Report submits the member's own words. Only your own post offers Take Down and waits for Yes, Take It Down. Conversation Mute uses /buddyclub/api/messages/{id}/mute. Native authentication, ownership and safety switches still apply. This guide never writes, reads private data or starts 6. A semantic voice judgment uses the existing Jev menu path and action-bound confirmation. Add to Lists (post or profile) shows your own lists from /buddyclub/api/social/lists; Add or Remove is the member's own tap. Copy Embed Code copies a quote block holding a public post's link. A local feed card's More offers Not Interested In This Post, Why This Post and Copy Text on that card only. In an open conversation each of the other person's lines offers Fist Bump and High Five, and the line's writer may answer a High Five with Low Five (POST /buddyclub/api/messages/{id}/react, signed-in member only, an agent pass is refused). Voice: say fist bump that, high five that or low five that; 6 reads it back and waits for your yes. An agent cannot react for a member.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_x_menu_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_video_speed",
      "name": "Video Speed",
      "description": "Play Buddy Club videos and Shorts at 0.5x, 1x, 1.5x or 2x. On the page each video has a speed button (1x, 1.5x, 2x, 0.5x, then back to 1x); every video follows the member's last choice, kept in their own browser only. Voice: play it faster, slower, normal speed, play it at 2x. An agent reads the same videos from /buddyclub/api/social/feed; the speed is the member's own tap or voice and is never stored on the server.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_video_speed\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_answer_short",
      "name": "Answer With a Short",
      "description": "Answer a public Buddy Club post with your own video of up to 60 seconds. On the page each public post that is not yours has an Answer With a Short button next to Quote: add a few words, choose one video, tap Post Your Answer. The answer goes up as a Quote of that post (the original shows under it) with the video attached by the same doors a post with a video uses, so the 60 second cap, file checks, blocks, mutes and private accounts all apply. Voice: answer that with a video. An agent reads the posts from /buddyclub/api/social/feed; choosing the file and posting stay the member's own taps.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_answer_short\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_video_resume_position",
      "name": "Resume a Watched Video",
      "description": "The existing native Buddy feed video may show Resume Video at a saved position after you watched and paused it in this visit. Tap or use 6's existing hands to press that same named button. It seeks and asks the original native player to play; its existing foreground/visibility owner still decides. Up to20 positions for the current signed-in member, visit-only; changing account/signing out forgets them. No reload/device persistence. This guide reads no watch history or private video and starts no player.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_video_resume_position\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "my_post_alert",
      "name": "Read My Post Alert",
      "description": "Read your own post-alert setting for one member, never anyone else's subscribers. Needs a read_own agent pass. To change it, open that person's profile and use Post Alerts, or say '6, tell me when Sam posts' and confirm. An agent pass never changes notification consent.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_post_alert\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_feed",
      "name": "Read a member's Buddy Club feed",
      "description": "The member's own feed: their buddies' posts and their own, newest first - what they see on their Following tab, with every mute, block and hidden post already left out. At most 20. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_feed\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_comments",
      "name": "Read the comments on a member's posts",
      "description": "The newest replies to the member's own posts - who replied and when - from their notifications (nothing from anyone they blocked, nothing on a post they can no longer see). Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_comments\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "draft_my_post",
      "name": "Write a post into a member's Drafts",
      "description": "Write a post for the member INTO THEIR DRAFTS. Nobody sees it, and nothing is posted: it goes up only when the member posts it themselves - that is their yes. Tell them it is waiting in Drafts. Only with the member's yes (consent: true); preview with dryRun: true. Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). Their pass must allow \"Write drafts for me\".",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"draft_my_post\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "search_buddy_posts",
      "name": "Search Buddy Club",
      "description": "Buddy Club's search box: posts holding every word and every #tag you give (like \"edging #lawn\"), newest first, at most 20 - only posts this reader may see. With no pass that is public posts; with the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time) it is what that member sees (and, where the site has it on, people whose names match). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"search_buddy_posts\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "whats_happening",
      "name": "What's Happening on Buddy Club",
      "description": "Buddy Club's What's Happening box: what people HERE are talking about right now - each subject with how many posts and how many different people (a subject only one person mentioned never shows), and the newest post about it. Counted from the posts this reader may see: with no pass, public posts; with the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time), that member's own feed. A free read. Includes Today's News: the most recent already-authorized Buddy Club posts on the current Eastern calendar day, displayed by time without a new editorial score.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"whats_happening\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "who_to_follow",
      "name": "Who to Follow on Buddy Club",
      "description": "Buddy Club's Who to Follow box for the member: up to ten people who EARNED a spot this week (the most Supports on quality posts - not them, not anyone they already follow); a paid row only where the site has it on, and it says Promoted. Read only - following somebody stays the member's own tap (or the follow tool, with their yes). Needs the member's agent pass as `Authorization: Bearer <agent pass>` (they make it in Buddy Club, and can switch it off any time). A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"who_to_follow\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "read_buddy_thread",
      "name": "Read a Buddy Club Thread",
      "description": "Read the native Buddy Club thread from a post id: its root, focus and replies in the same order the page receives. With no pass, public posts only; with the member's original Buddy agent pass allowed to look at their stuff, the same member view. The original thread route decides visibility, reply order and limits. Free read: no reply, publish, edit, delete or message is sent.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_buddy_thread\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "account_readiness",
      "name": "Account Readiness",
      "description": "Read your ONE DietzX account's current Terms and Privacy agreement and recorded site sign-ins, with coverage on all five sites, each site's account-page link, the server read window and the native email-only Sign In opener. Browser controls remain unobserved. Read again after sign-in, sign-out or Terms changes. Microphone permission stays unknown until your browser checks this device. Evidence labels distinguish stored records from unobserved device permissions and unchecked browser sessions. Jev may suggest a next step; it cannot agree, grant permission, sign in, start voice or change anything. Needs your existing agent pass with Look at my stuff, selected for this site. No email, token, account id or paid entitlement is returned.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"account_readiness\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_everything_download",
      "name": "Download Everything I Made",
      "description": "For the member's own agent: ONE address the person opens to download everything they made on DietzX, as one zip - their account data, their posts, every site they built, their logo pack and their brand kit (what is not there yet is named inside). Good for 10 minutes and one use; the download goes to the person, never through this door. Their own things only. Needs the member's agent pass as `Authorization: Bearer <agent pass>`. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_everything_download\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "older_adults_phone_guide",
      "name": "Readable Native Phone Controls",
      "description": "Read the bounded native phone text and tap-target improvements. Existing 6 voice paths remain available without requiring typing; this guide starts no session and grants no action authority. It does not certify every page or a deployed device.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"older_adults_phone_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "voice_busy_guide",
      "name": "6 Voice Busy Guide",
      "description": "Read how a refused voice start reports provider concurrency. No live capacity lookup, account read, conversation start, retry or spending authority.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"voice_busy_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "six_name_cadence_policy",
      "name": "6's Name Cadence",
      "description": "Read only. 6 uses the first name the person gave in this talk about every eight completed replies, never adds it on adjacent replies, never guesses an identity and never addresses the listener as G. One shared code-side rule for surface owners; no live brain prompt changes. Reads no name or conversation and starts no session.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"six_name_cadence_policy\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "validate_contact_info",
      "name": "Check Contact Details",
      "description": "Check only the contact details the person supplied: name, email shape and bounded mail-domain support, international phone (+1 default), real adult birthday. Returns 6's existing read-back words. POST body only; nothing saved or sent, no mailbox or phone ownership verified. Read back corrections and use the existing Jev confirmation before any real account action. A DNS outage is unknown, never ownership proof. Birthday is used only for this check and read-back; only the native adult stamp may be kept.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"validate_contact_info\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "account_voice_guide",
      "name": "Account Voice Guide",
      "description": "Read how the person's own browser uses the ONE account card and email sign-in. Name, email and birthday can be typed in the card's own fields; its button says Send the Magic Link. No account lookup, link delivery or session change. An agent cannot accept a browser sign-out offer for them. Whole-name capture, one-field confirmation and native-session pickup after the Magic Link. Account voice on; email sign-in-or-create on.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"account_voice_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "club_dm_safety_guide",
      "name": "Club DM Report and Block",
      "description": "Open Club DM, open your conversation, then Report or block. Each person has their own Report and Block buttons. Choose the person yourself; a report includes only that person's last message if you choose to include it. Reports need your signed-in conversation membership. Blocking is private and applies across our sites. This public guide reads no conversations and submits nothing. Any semantic voice choice stays with the existing Jev path; this tool never chooses a person or report reason.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"club_dm_safety_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "club_dm_send_guide",
      "name": "Club DM New Message",
      "description": "How a person messages someone in Club DM. By hand: open Club DM, tap New Message, type their @handle, tap Next, write, tap Send. By voice: say \"DM\" and their name, then the words (\"DM Sam: see you at six\") - 6 reads it back and it goes only on their plain yes. Inbox holds their talks; Requests holds first messages from people they haven't talked to (Accept or Leave it). Read only: this guide reads no conversation and sends nothing - only the signed-in person sends, and a first message to somebody new needs their own yes.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"club_dm_send_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_link_safety_guide",
      "name": "Buddy Club Link Safety",
      "description": "Buddy Club checks up to five web addresses before publishing a post, reply or quote, including websites written without https://. Concurrent OpenPhish lookups wait for the same bounded feed refresh. A listed scam or malware link is refused with a plain reason; an unusual link carries a warning. An outside website alone never lowers a post. A failed source never blocks by itself. This public guide scans no supplied URL, reads no posts and publishes nothing. The person uses the native signed-in composer; semantic judgments stay with the existing Jev path.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_link_safety_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_actions_guide",
      "name": "Buddy Club Actions Guide",
      "description": "Read where the person does Buddy Club's signed-in actions on the native pages: posts, replies, polls, reposts, notes, reports, market listings and watches, and the wallet. Public guidance only: no account lookup, no private read, and nothing is posted, reported, listed or paid. Each write needs the member's own signed-in page and their separate yes.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_actions_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_saved_searches_guide",
      "name": "Buddy Club Saved Searches Guide",
      "description": "Read where a member saves a Buddy Club search by name (up to 10) and runs it again on the native page. Public guidance only: saved searches stay in the member's own open tab for this visit, so no saved list, query or result is readable here, and nothing is saved, run or removed by an agent.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_saved_searches_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "club_dm_groups_guide",
      "name": "Club DM Group Chats",
      "description": "How a person makes a Club DM group chat (them plus 2 to 9 of their buddies). By hand: open Club DM, tap New Group, type the @handles, tap Start; inside a group chat: Add, Mute and Leave. By voice: \"start a chat with Sam and Joe\", \"add Kim to my chat with Sam\", \"mute my chat with Sam and Joe\", \"leave my chat with Sam and Joe\" - 6 reads it back and it happens only on their plain yes. Only buddies can be added; blocks are respected; somebody who left can't be added back. Read only: this guide reads no conversation and changes nothing - only the signed-in person does, from their own page or voice.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"club_dm_groups_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "club_dm_edit_guide",
      "name": "Edit A Sent Message",
      "description": "How a person fixes one of their own Club DM / Buddy Club messages within 15 minutes of sending it; the line then shows \"Edited\" to everybody in the conversation. By hand: open the conversation, tap Edit under your own message, change the words, tap Save. By voice: \"change my last message to Sam to see you at seven\" - 6 reads the old and new words back and it changes only on their plain yes. The new words pass every rule a new message does; nobody is alerted by a change. Read only: this guide reads no conversation and changes nothing - only the signed-in person does, from their own page or voice.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"club_dm_edit_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_reactions_voice",
      "name": "Buddy Post Reactions by Voice",
      "description": "Discover Fist Bump, High Five and Low Five on Buddy posts. Tap the existing buttons or say \"give that a high five\" to 6. Voice reads back the selected reaction and waits for \"yes, give it\" and the existing Jev check. Read-only guidance: this tool reads no member data, changes no reactions and starts no voice session. Native sign-in, visibility, ownership and rate limits still apply.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_reactions_voice\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "join_community",
      "name": "Join a Buddy Club Community",
      "description": "Join a Buddy Club community for the member, the same as the Join button on the community. A private community keeps its own rule. Find the id with my_communities. Confirm-first: without consent: true it only prepares and tells you what to read back; send consent: true only after the member said yes to this one act. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, made with \"Join and Vote for Me\" (they can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"join_community\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "leave_community",
      "name": "Leave a Buddy Club Community",
      "description": "Leave a Buddy Club community for the member, the same as the Leave button on the community. A private community keeps its own rule. Find the id with my_communities. Confirm-first: without consent: true it only prepares and tells you what to read back; send consent: true only after the member said yes to this one act. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, made with \"Join and Vote for Me\" (they can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"leave_community\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "vote_in_poll",
      "name": "Vote in a Buddy Club Poll",
      "description": "Cast the member's one vote in a poll post: option is the choice's place, counting from 0. One vote, never changed, never on their own poll - the site decides. Confirm-first: without consent: true it only prepares and tells you what to read back; send consent: true only after the member said yes to this one act. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, made with \"Join and Vote for Me\" (they can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"vote_in_poll\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "read_post_notes",
      "name": "Read a Post's Community Notes",
      "description": "The community notes shown on a Buddy Club post and the ones waiting for ratings, as the member sees them. A free read; it changes nothing. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, with \"Look at My Stuff\" (they can switch it off any time).",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_post_notes\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "rate_a_note",
      "name": "Rate a Community Note",
      "description": "Rate one community note for the member: helpful yes, somewhat or no. Never their own note - the site decides. Find notes with read_post_notes. Confirm-first: without consent: true it only prepares and tells you what to read back; send consent: true only after the member said yes to this one act. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, made with \"Join and Vote for Me\" (they can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"rate_a_note\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "prepare_repost",
      "name": "Prepare a Buddy Club Repost",
      "description": "Get a repost ready for the member: what it does and where they tap. A repost shows the post to everybody who follows them, so the member taps Share themselves - this tool never reposts. Free; changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"prepare_repost\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "prepare_note",
      "name": "Prepare a Community Note",
      "description": "Get a community note ready for the member to add themselves: the words (up to 500 characters) and whether the post is misleading. Everybody may see a note, so the member adds it on the post - this tool never sends it. Free; changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"prepare_note\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "invite_to_community",
      "name": "Invite a Buddy to a Buddy Club Community",
      "description": "Get the invite words for a public Buddy Club community the member is in, the same as the Invite a Buddy button. Nothing is sent and nobody is added; the member hands the words to a buddy, who joins with their own tap. Find the id with my_communities. Confirm-first: without consent: true it only prepares and tells you what to read back; send consent: true only after the member said yes to this one act. Needs the member's agent pass as `Authorization: Bearer <agent pass>`, made with \"Join and Vote for Me\" (they can switch it off any time).",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"invite_to_community\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_communities",
      "name": "Read a Member's Communities",
      "description": "The Buddy Club communities the member can see, the same list as More > Communities; with a community id, that one community as the member sees it (their role, its rules, its posts if they belong). Joining, leaving and starting a community are the member's own tap or their word to 6 - this door only reads. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_communities\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_muted_words",
      "name": "Read a Member's Muted Words",
      "description": "The words, phrases, #tags and @names the member muted on Buddy Club. Posts that say one leave only their own lists; nobody is told. Only their own list. Adding or removing a muted word is the member's own tap or their word to 6 - this door only reads. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_muted_words\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_mentions",
      "name": "Read Who Mentioned a Member",
      "description": "The newest posts and replies that @mentioned the member on Buddy Club - who and when - from their own Alerts (nothing from anyone they blocked, nothing they can no longer see). At most 20. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_mentions\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "find_buddy_to_tag",
      "name": "Find a Buddy's @handle to Tag",
      "description": "The members whose name or @handle matches, that THIS member may find (the search box's own people list: nobody blocked, nobody suspended). To tag one, put @handle in the post's words (draft_my_post puts it in their Drafts) - they are told only when the member presses Post, and only if they may see the post. This door tags nobody. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"find_buddy_to_tag\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_friendships",
      "name": "Read a Member's Buddies",
      "description": "The member's Buddies, the Request Friendship asks waiting on their answer, and how many asks they have out. Names and handles only. Asking and accepting are the member's own tap - this door only reads. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_friendships\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_post_numbers",
      "name": "Read a Member's Post Numbers",
      "description": "The numbers on the member's own Buddy Club posts, the same as the Stats tap under More on their post: how many different people each was shown to, and its replies, quotes, shares, saves and poll votes. Counts only - never who saw, saved or shared it. Their newest posts, or one post with its id; anybody else's post is not found. This door only reads. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_post_numbers\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_memories",
      "name": "Read a Member's On This Day Memories",
      "description": "The member's OWN Buddy Club posts from this day (Eastern) in past years - private to them, the same list as On This Day on their profile. Each memory has the words a Share Again would post. Sharing one again is the member's own tap - this door only reads, and never shows anybody else's posts. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_memories\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "plan_page_command",
      "name": "Plan a Page Command",
      "description": "Preview the current page's top and bottom, WildWorks projects or an explicitly named iSolve trip. Default preview lists native choices without a provider call. Only dryRun false with consent true requests the bounded Jev judgment. Never navigates, presses a button, starts 6, signs in or writes anything. The current site is this tool's host.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"plan_page_command\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "cap_handoff_guide",
      "name": "Big 6 to Little 6 Guide",
      "description": "Read the guarded Big 6 to Little 6 continuation policy. The authenticated pool door and durable production bindings remain unavailable. This read starts no talk, verifies no usage and grants no spending or device authority.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"cap_handoff_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "civilian_access_guide",
      "name": "Civilian Access Guide",
      "description": "Read the public facts a new person asks about: the friends-and-family invite link, Big 6's weekly minutes and Little 6 voice. No account read, no grant, no link made.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"civilian_access_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "faq_answer",
      "name": "The site's own answer to a common question",
      "description": "Use this when the person asks what a company or site is, who is behind it, how it works, whether it is free to look around, or the other common questions about it - 'what is aiASAP', 'what does iSolve do', 'who runs this', 'is it free to try'. People type things like \"what is aiASAP\", \"what does iSolve do\", \"what is iSolveUrProblems\", \"who runs aiASAP\". Do not use this when the person wants something done (a fix, a name, a domain check, a booking), asks how much anything is or for a date, or asks something outside this site's ten common questions (then you get the list back and nothing is guessed). Free, read-only, no login: returns the site's own checked answer to one of its ten common questions, word for word, or the list of the ten.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"faq_answer\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "plan_page_walk_and_answer",
      "name": "Plan a Page Walk and Answer",
      "description": "Identify the supplied current page and section and preview a request to walk down the DietzX home page, then explain G and his Ai artwork, robot and rocket. Jev recognizes the two parts within existing allowances. The browser executes its own walk only on the person's request; this tool never moves a browser, starts 6, writes, sends or buys anything. Returns the steps in order. A supplied location is caller context, not proof of a browser's screen.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"plan_page_walk_and_answer\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "remove_my_private_photo",
      "name": "Remove My Private Photo",
      "description": "Draft for G’s Review. The Agent’s Free Text Uses the Shared Safety Check. With the Person’s Permission, Submit Their Own Request to Remove a Private Photo or Video Shared Without Their Okay. No Account Needed. Page: /remove-my-private-photo; Agent API: POST /api/agent/v1/remove_my_private_photo. Ask the Person to Review the Full Statement and Sign Their Own Name Before statement=true. Never Invent Consent, Identity, Signature, or Links. Supply a Random 64-Character Lowercase Hex Receipt and Reuse Exactly the Same Input and Receipt on Retries. The Saved Request Starts the Durable 48-Hour Clock and Holds Located Media and Known Exact Copies for G. Unfound Posts and Failed Copies Remain Open Work; Never Promise Completion. Do Not Send the Image Itself. Keep the Receipt Private.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"remove_my_private_photo\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "private_photo_request_status",
      "name": "Read My Private Photo Request Status",
      "description": "Read Only the Request Belonging to the Private Receipt. Send the Private Receipt As the Bearer Token in the Authorization Header. This Is a Receipt, Not an Account or Member Pass. No Reporter Details, Photo, Link, or Storage Path Is Returned. Agent API: GET /api/agent/v1/private_photo_request_status with the Same Header. Draft for G’s Review; Status Includes the Original 48-Hour Deadline and Whether It Is Overdue. Never Put the Receipt in a URL.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"private_photo_request_status\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "short_captions_guide",
      "name": "Buddy Club Short Captions",
      "description": "How captions work on Buddy Club shorts: after a short finishes uploading and passes the safety check, its sound is turned into words once, and they show as captions on the video - on by default. A person turns them off or back on by tapping Captions under the video, or by saying '6, captions off' / 'captions on'; the choice stays on their own phone. Read only: this guide reads no video, caption or post and changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"short_captions_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "shorts_series_guide",
      "name": "Buddy Club Shorts Series",
      "description": "How shorts series work on Buddy Club: a creator puts their own public shorts into a named series (Part 1, 2, 3 - up to 50 parts, 30 series). Under a short in a series viewers see 'Part 2 of 3' and tap Next in Series, or say '6, play the next part'. The creator taps Add to Series under their own short, or says '6, add this to my series Cooking' and then 'yes, add it'. Read only: this guide reads no post, video or member and changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"shorts_series_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "my_one_account",
      "name": "My DietzX Account",
      "description": "The member's ONE DietzX account, read only, for their own agent: their member number, the DietzX sites they are signed in on, their owned domains while that native shelf is open, and where their account page and Download My Data are - for THEM to open in their own signed-in browser. Never their email, name or data file, and it changes nothing (signing out stays their own tap on the account page). Needs the member's agent pass with \"Look at my stuff\" (aipass_ or ispass_, or a dxpass_ ONE pass explicitly selected for this site) as `Authorization: Bearer <agent pass>`. A free read. Its browser-download guide names mapped-table read/truncated/not-read receipts and partial shared-store projections. This agent never receives private rows. Includes the compact 6-group data map. Optional data_map=source adds a partial source-only table inventory: datum, purpose, named source processors and written keep rules or explicit unknown/policy holds. The person's signed-in browser can read the same details at /api/one/account/me?data_map=source; ordinary account reads stay compact. Processor configuration, vendor keep-times and deployed retention are not checked. Also includes the existing signed-in request-status door and partial Download My Data coverage. Schema version 2 marks unread saved categories as null with not-read status; empty arrays mean a successful read found zero rows. Site-specific jobs, posts, media and Factory ad review state are not fully exported. No completion proof is inferred; closing accounts still refuse agent-pass reads and the person uses their own account page.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_one_account\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_account_url",
      "name": "Where My Account Is",
      "description": "The address of the member's own account on a DietzX site, for THEM to open in their own signed-in browser: Buddy Club -> their Buddy Club profile, every other site -> their one DietzX account page. site picks which (default buddyclub). Needs the member's agent pass with \"Look at my stuff\" (aipass_ or ispass_, or a dxpass_ ONE pass explicitly selected for this site) as `Authorization: Bearer <agent pass>`. It reads nothing from the account and changes nothing. A free read. Your accounts live in Your Account, under Accounts on This Device - up to five. Tap one to switch to it; to add another, press Add Another Account while you are signed in, then open the sign-in link we email to it - only accounts you add that way join the list. You stay signed in to each one. New-account choice in the person's own signed-in browser: 6 asks \"Want me to sign you out so you can make a new account?\". Only their current explicit yes or direct sign-out order uses Sign Out Here; an agent pass never stands in for that browser or signs it out.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_account_url\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "sign_out_everywhere",
      "name": "Sign Me Out Everywhere",
      "description": "Sign the member out of their DietzX account on every site and every device (a lost phone). First call with dryRun: true - it answers exactly what will happen. Read that to the member; only after they say yes, call again with consent: true and confirm: \"sign out everywhere\". Needs the member's agent pass with \"Sign Me Out Everywhere\" (aipass_ or ispass_) as `Authorization: Bearer <agent pass>`. A selected-site ONE read pass does not grant this action. It signs out only - it changes and deletes nothing.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"sign_out_everywhere\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "change_my_email",
      "name": "Change My Email",
      "description": "Sends the member a sign-in link at their CURRENT email that opens the page where they change it themself (both addresses must confirm when the launch both-confirm switch is on; the old inbox also has a way to stop it). It never changes an email itself and takes no new address. Needs the member's agent pass with \"Change My Email\" as `Authorization: Bearer <agent pass>`.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"change_my_email\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "buddy_profile_by_voice",
      "name": "Buddy Profile by Voice",
      "description": "How a signed-in Buddy Club member builds or changes their own profile by talking to 6. The native card fills one box at a time, reads the completed profile back once, asks, and saves only after the member's clear yes. This read-only handoff changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_profile_by_voice\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_bot_profiles",
      "name": "Buddy Bot Profiles",
      "description": "The four Buddy Club bot identities, reserved handles, illustrated portraits and bios. Public catalog only; this does not claim that account backfill has been installed.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_bot_profiles\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "search_my_buddy_lists",
      "name": "Search My Buddy Lists",
      "description": "Search your Buddy Club lists by literal name. Requires your member agent pass with read_own permission. Nothing is created or shared.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"search_my_buddy_lists\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_saved_buddy_drafts",
      "name": "My Saved Buddy Drafts",
      "description": "List and reopen your saved Buddy drafts, including their id, kind and full words. Requires read_own on your member agent pass. Does not publish.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_saved_buddy_drafts\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "update_my_buddy_draft",
      "name": "Update My Buddy Draft",
      "description": "Save revised words into an existing owned draft id with its original kind and schedule. Requires drafts permission and consent. dryRun previews. Never publishes, deletes or changes visibility.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"update_my_buddy_draft\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_buddy_profile",
      "name": "My Buddy Profile",
      "description": "Read your own profile and current handle before editing. Requires read_own on your member agent pass. Nothing is saved.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_buddy_profile\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "update_my_buddy_profile",
      "name": "Update My Buddy Profile",
      "description": "Save your display name, bio, location, city or an already cleared owned profile photo, only after your clear yes. Requires the profile permission on your member agent pass. Read my_buddy_profile first and send its expectedHandle. The native save door checks the account and photo ownership/safety. Cannot change contact visibility, links, privacy or another member.",
      "tags": [
        "action",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"update_my_buddy_profile\",\"arguments\":{\"dryRun\":true}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "buddy_features_guide",
      "name": "Buddy Controls",
      "description": "Open Club DM and search permitted conversations by name, handle or latest message. Lists has its own search. Drafts reopens saved words without publishing. Profile opens Edit Profile. Native signed-in controls retain their checks; this guide reads no private messages or account data.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_features_guide\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "buddy_ai_crew_profiles",
      "name": "Buddy Ai Crew Profiles",
      "description": "The DietzX team leads' public Buddy Club profiles (aiChief, aiB, aiClaudette, aiPA): handle, name, bio and the Ai badge. Every one is an Ai helper, never a person. Public catalog only; changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"buddy_ai_crew_profiles\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "my_mutes_and_blocks",
      "name": "Read Who a Member Muted or Blocked",
      "description": "The people (and crew) the member muted or blocked on Buddy Club, by name, so the member can be told who and undo one themselves. Only their own list; nobody on it is ever told. This door only reads - muting, blocking and undoing are the member's own tap or their word to 6. Needs the member's agent pass as `Authorization: Bearer <agent pass>`. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_mutes_and_blocks\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_alert_settings",
      "name": "Read How 6 Reaches a Member",
      "description": "How 6 reaches the member outside Buddy Club: the alert channels they picked, in their order (alerts on a device, text, WhatsApp, email), their quiet hours and whether message previews show. Never their phone number. This door only reads - the member changes these on the one settings page. Needs the member's agent pass as `Authorization: Bearer <agent pass>`. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_alert_settings\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_fix_status",
      "name": "My Newest Fix Status",
      "description": "Read the plain progress of the newest trouble this member reported to 6: site, safe page, and flagged / being built / close - a fix is written and waiting to go in / built and waiting for its check / built, but it didn't pass its check yet, so it's not fixed / being built again - a fix went in, but we took it back out / checked, and we're making sure it stays fixed / fixed (fixed only once its check passed and it has not come back for a day) / being fixed again - the trouble came back after our fix; each row also says checked and fixed as true or false. Only the member's own talks, through their current agent pass with Look at My Stuff. Never returns their words, ticket words, crew notes, ids, or anybody else's row. Changes nothing. Also lists each trouble they reported that is still open (open: site, page, step, day reported), newest first, at most 10. Also says since: the day (YYYY-MM-DD, Eastern) the newest one - and each open one - reached its step. When the newest one is fixed but an older one of theirs came back, cameBackToo gives that one's site and page.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_fix_status\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "my_fixed_news",
      "name": "My Fixed Troubles",
      "description": "Which troubles this member reported to 6 were fixed in the last 30 days: the site, the safe page and the day it was fixed (fixed = the fix's test passed and the trouble stayed gone a day). Only the member's own talks, through their current agent pass with Look at My Stuff. Never returns their words, ticket words, crew notes, ids, or anybody else's row. Changes nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"my_fixed_news\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "read_buddy_article",
      "name": "Read a Buddy Club Article",
      "description": "The whole of one Buddy Club article (a long post: its title and full words, who wrote it and when) by its post id, exactly as the member may see it - the feed only shows the start. Needs the member's agent pass as `Authorization: Bearer <agent pass>` with permission to look at their own things. Read only: putting an article up stays the member's own writing. A free read.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_buddy_article\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ],
      "securityRequirements": [
        {
          "schemes": {
            "agentPass": {
              "list": []
            }
          }
        }
      ]
    },
    {
      "id": "current_page_facts",
      "name": "Current Page Facts",
      "description": "Read native DietzX home artwork facts or WildWorks home section names for the supplied public path. The path is caller context, not proof of a visible screen. No browser move, microphone, camera, provider call or write.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"current_page_facts\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "answer_visible_page_question",
      "name": "Answer from Public Page Text",
      "description": "Answer an explicit question about a paragraph under a heading or named controls from a supplied public page snapshot. Same deterministic answer as 6's visible-page reader. The snapshot is caller context, not proof of a visible browser; never supply private text or form values. No fetch, browser action, microphone, camera, account read, provider or write.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"answer_visible_page_question\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "six_knows_everything",
      "name": "What 6 Knows About a Control or Factory Room",
      "description": "Ask what a button, link, field or knob on any of our sites does, or what a Design Factory room says. Answers only from the pages' own words. Read only; touches no account and spends nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"six_knows_everything\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "back_page",
      "name": "Go Back a Page",
      "description": "The logical parent within the current part of the monorepo, matching its Back button. Supply pathname; browser history is never traversed. A homepage has no Back. Read only: this returns a destination and moves nobody. Without pathname it can only return the current part's home.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"back_page\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "six_places",
      "name": "Where 6 Stays With You",
      "description": "Which parts of the monorepo this address serves in place, and whether the one legal page is served here - a move to any of them keeps 6's one voice talk going with no page load. Read only: it moves nobody and reads nothing about anybody.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"six_places\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "six_obey_read",
      "name": "What 6 Does With a Command",
      "description": "Read only. Give a person's plain command to 6 - close the card, press Back, walk down the page, scroll to the bottom, press a button by its label, take me to another of our sites, end the call - and get back what 6's hands do with it on this site and the one short line he says. Optionally pass the page's visible button and link labels and its path. It never moves, presses, closes or ends anything in anybody's browser and writes nothing. A money, legal, delete or send button comes back with the yes 6 asks for first. Page-edge requests may name this site before page or website; these previews require Jev on the person's page and do not claim a scroll happened.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"six_obey_read\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "about_buddy_club",
      "name": "About Buddy Club Social",
      "description": "What Buddy Club Social is and how it works: a free social community for building projects, livelihoods, skills, friendships, and fresh starts. Includes the public 6 & Fannie, Your Proprietors card and its native profile controls. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"about_buddy_club\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "list_areas",
      "name": "List the areas of the site",
      "description": "Every part of Buddy Club Social and what a person can do there, plus every move 6 can be asked for by voice and which of them need the person's plain yes before they happen. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"list_areas\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_news",
      "name": "Read Fannie's Picks",
      "description": "5 FOOT FANNIE's picks on Buddy Club Social right now - six links, newest on top (Peter Diamandis' Moonshots always keeps a place), each with where it comes from, its link to the publisher's own page, and Fannie's short blurb. 5 FOOT FANNIE is an Ai character. It reads what is already on the page - it never goes and fetches, so it costs nothing and waits for nobody. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_news\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "search_posts",
      "name": "Search public posts",
      "description": "Find posts about something. Only PUBLIC posts are searched: the site works out what a signed-out reader may see before it matches a single word, so a word can never pull out a post that was not already public. Up to 50 at a time. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"search_posts\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_profile",
      "name": "Read a public profile",
      "description": "One member's public profile by their handle: what they do, what they sell, what they are looking for, and their contact details only if they switched them on. A handle nobody has and a hidden one look exactly the same. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_profile\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_wins_board",
      "name": "Read the wins board",
      "description": "What members made and sold on Buddy Club Social this week, in their own words. Every number on it is a member's own, put up by their own yes, and the board clears every Monday. There is no total, no biggest and no average here, on purpose - do not work one out. Free to call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_wins_board\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "list_hustle_groups",
      "name": "List the rooms by trade",
      "description": "Buddy Club Social's rooms by trade - welding, lawns and hauling, cleaning and detailing, signs and hand-made, kitchens and gardens, words and tutoring. Each one has a host, and every host is a bot and is labelled as one. Free to call, and it reads nothing but a table in the code.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"list_hustle_groups\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "read_theme_wall",
      "name": "Read the wall of themes members made",
      "description": "The themes members of Buddy Club Social made and put up for anybody to use - each one is nine named colours and nothing else, with a count. There is no member on this read at all: no name, no handle and nothing personal. Free to call, and it reads one table.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"read_theme_wall\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "draft_buddy_club_post",
      "name": "Draft a Buddy Club Social Post",
      "description": "Prepare text for the Buddy Club Social post composer without publishing it. Mirrors the page WebMCP tool: text 1..3000 characters. Stores nothing, calls no model, never publishes.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"draft_buddy_club_post\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "post_video",
      "name": "Draft a Video Caption",
      "description": "Prepare the caption for the existing Buddy video picker. This visual-stage tool returns a draft only: the member chooses a local video, previews it and taps Post with the original confirmation and moderation. It uploads, publishes and stores nothing; never claims a video was posted.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"post_video\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "play_video",
      "name": "Play a Video",
      "description": "Resolve the existing live video on one permitted public Buddy post for the native player. The Club must be open; the original social and feed-video switches, visibility reader, owner attachment check and signed storage links apply. Refuses missing, held, private or unavailable media with the same answer. Does not start voice, publish, download or spend.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"play_video\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "site_access",
      "name": "Is this site letting people in?",
      "description": "Use this before sending a person anywhere on this site: it says whether the site is open or letting people in from its wait list, and the one next step for each. Free, read-only, no login. It gives no numbers and no dates.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"site_access\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "dietzx_sites",
      "name": "The DietzX sites, and which are open",
      "description": "The six DietzX sites: what each one is, who it is for, the address to send a person to, and whether its door is open yet. Every one of them is open today. Send a person to its `doorUrl`. A read; it takes nothing, changes nothing and costs nothing.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"dietzx_sites\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    },
    {
      "id": "tool_plan",
      "name": "Read a Tool Plan",
      "description": "Use this before using a named tool to read its current published requirements, required fields, agreement and preview checklist. Account checklists include help for a missing magic-link email from the native sender; they cannot check inbox delivery or resend it. Do not use it to run a tool, verify access or claim that anything is complete. It accepts only a tool name, never the person's details or target tool arguments. Jev may choose a helpful first step; every requirement stays in the checklist. No account change, message, payment or target tool call.",
      "tags": [
        "read",
        "buddyclub"
      ],
      "examples": [
        "{\"skill\":\"tool_plan\",\"arguments\":{}}"
      ],
      "inputModes": [
        "application/json"
      ],
      "outputModes": [
        "application/json"
      ]
    }
  ]
}