CLI

Feedback And Reporting

Quick Answer

Use breyta feedback send to report product issues or feature requests from agent/human workflows.

Each report is persisted in Firestore and broadcast to Slack.

Default Usage Rule

Send a report by default when one of these happens:

  1. You hit a CLI/API failure and had to use a workaround.
  2. You find missing capability that blocks or slows delivery.
  3. Error text is unclear and causes repeated retries.
  4. A run/release/configuration behavior looks wrong or inconsistent.

Command

breyta feedback send \
  --type issue \
  --title "flows run failed after release" \
  --description "release succeeded but flows run returned flow profile missing" \
  --flow daily-rollup \
  --workflow-id wf-123 \
  --run-id r45 \
  --tag cli --tag bindings --agent

Flags

FlagTypeNotes
--typestringissue, feature_request, or general (default: issue)
--titlestringrequired short summary
--descriptionstringrequired detailed context
--sourcestringoptional override: agent, human, system
--agentboolmarks report as agent-originated
--tagrepeatable stringclassification tags (repeat or comma-separated)
--commandstringrelated command path/text
--flowstringrelated flow slug
--workflow-idstringrelated workflow id
--run-idstringrelated run id
--metadataJSON objectenvironment/tool metadata
--contextJSON objectextra troubleshooting data

API Contract

API mode command:

  • command: feedback.send
  • endpoint: POST /api/commands

Example request body:

{
  "command": "feedback.send",
  "args": {
    "type": "issue",
    "title": "flows run failed after release",
    "description": "release succeeded but flows run returned flow profile missing",
    "source": "agent",
    "flowSlug": "daily-rollup",
    "workflowId": "wf-123",
    "runId": "r45",
    "tags": ["cli", "bindings"],
    "metadata": {"apiUrl": "http://localhost:8090"},
    "context": {"stepId": "release"}
  }
}

Example success response:

{
  "ok": true,
  "workspaceId": "ws-acme",
  "data": {
    "feedbackId": "abc123",
    "status": "submitted",
    "type": "issue",
    "source": "agent",
    "stored": true,
    "broadcast": {"slack": true}
  }
}

Storage And Broadcast

  • Reports are stored in Firestore collection flowFeedback.
  • Persistence is permanent.
  • A Slack markdown notification is sent for each submitted report.
  • To route feedback to a dedicated channel webhook, set BREYTA_FEEDBACK_SLACK_URL.
  • If BREYTA_FEEDBACK_SLACK_URL is unset, feedback uses BREYTA_SLACK_URL.
  • Slack delivery is best-effort; report storage still succeeds when Slack is unavailable.

Safety

  • Do not include secrets, tokens, API keys, or raw PII.
  • Prefer concise reproduction steps and concrete IDs (flow, workflowId, runId).

Related

As of Feb 17, 2026