File size: 2,840 Bytes
5655a42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
name: buzz-platform
label: Buzz
kind: platform
version: 1.0.0
description: >
  Buzz gateway adapter for Hermes Agent.
  Connects to a Buzz community relay (Block's open-source human+agent
  collaboration platform built on Nostr) and relays messages between
  channels/DMs and the Hermes agent. Relay operations shell out to the
  buzz CLI binary (JSON in/out); verified inbound media uses Hermes' bundled
  HTTP client.
author: Nous Research
# ``requires_env`` entries are surfaced in ``hermes config`` UI via the
# platform-plugin env var injector in ``hermes_cli/config.py``.
requires_env:
  - name: BUZZ_RELAY_URL
    description: "Base URL of the Buzz community relay (e.g. https://mycommunity.communities.buzz.xyz)"
    prompt: "Buzz relay URL"
    password: false
  - name: BUZZ_PRIVATE_KEY
    description: "Nostr private key for the agent's Buzz identity (nsec or hex) — the only Buzz secret"
    prompt: "Nostr private key (nsec or hex)"
    password: true
optional_env:
  - name: BUZZ_TRANSPORT
    description: "Inbound transport: auto (WebSocket w/ poll fallback, default), websocket, or poll"
    prompt: "Transport (auto/websocket/poll)"
    password: false
  - name: BUZZ_AUTH_TAG
    description: "Optional NIP-OA owner-attestation auth tag JSON for NIP-42 WebSocket auth"
    prompt: "NIP-OA auth tag JSON (or empty)"
    password: false
  - name: BUZZ_CHANNELS
    description: "Comma-separated channel UUIDs to watch (default: all joined channels)"
    prompt: "Channel UUIDs (comma-separated)"
    password: false
  - name: BUZZ_HOME_CHANNEL
    description: "Channel UUID for cron / notification delivery (defaults to the first watched channel)"
    prompt: "Home channel UUID (or empty)"
    password: false
  - name: BUZZ_ALLOWED_USERS
    description: "Comma-separated npubs or hex pubkeys allowed to talk to the agent"
    prompt: "Allowed users (comma-separated)"
    password: false
  - name: BUZZ_ALLOW_ALL_USERS
    description: "Allow any community member to talk to the agent (true/false)"
    prompt: "Allow all users? (true/false)"
    password: false
  - name: BUZZ_POLL_INTERVAL
    description: "Seconds between inbound poll sweeps (default: 4)"
    prompt: "Poll interval seconds"
    password: false
  - name: BUZZ_CLI_PATH
    description: "Path to the buzz CLI binary (default: 'buzz' on PATH, then ~/bin/buzz)"
    prompt: "buzz CLI path (or empty)"
    password: false
  - name: BUZZ_CREDENTIALS_FILE
    description: "JSON credentials file holding the nsec (fallback when BUZZ_PRIVATE_KEY is unset)"
    prompt: "Credentials file path (or empty)"
    password: false
  - name: BUZZ_REPLY_IN_THREAD
    description: "Thread replies under the triggering message (true/false, default: true); false posts flat to the channel timeline"
    prompt: "Reply in thread? (true/false)"
    password: false