Skip to content

Add an in-app AI Help Agent for general operating support #5671

Description

@k9mq

Request preparation

  • I used an AI assistant to help structure this request
  • I checked for existing issues covering the same feature

What would you like?

What

Add a conversational AI help panel inside AetherSDR that users can ask general "how do I..." and troubleshooting questions during a live session — e.g. "why is my TX audio distorted," "how do I set up DAX for WSJT-X," "what does the TNF button do" — and get an answer without leaving the app or hunting through the wiki.

This is distinct from the existing 💡 AI-Assisted Issue Reporter (Help → Submit your idea…), which only helps draft a GitHub bug report or feature request for submission upstream. This request is for real-time operating/support help, not issue authoring.

Why

New users (and experienced users on unfamiliar features) currently have three options when something isn't obvious: dig through the GitHub wiki, ask in Discussions, or file an issue. All three take the user out of their operating session and require a round trip to someone else. A built-in help agent would let users get unstuck immediately, using context AetherSDR already has on hand (current radio model, connected mode, active applets, recent log entries) to give more relevant answers than a generic web search would.

How Other Clients Do It

  • SmartSDR has no in-app AI assistant; support is via FlexRadio's community forum and PDF manuals.
  • GQRX and SDR++ likewise rely on external wikis/Discord/forums with no in-app help surface.
  • Outside the SDR space, apps like JetBrains IDEs (AI Assistant chat) and Notion (Q&A panel) embed a chat pane that can answer product questions using the product's own docs as grounding — a reasonable model for what this could look like.

Suggested Behavior

  • New menu item: Help → Ask AetherSDR… (or a persistent chat icon in the title bar, alongside the existing 💡 lightbulb) opens a dockable chat panel, similar in spirit to AppletPanel.
  • The panel is a simple scrollable message list + text input, styled to match the existing dark theme.
  • On send, the app assembles a context block similar to what the existing "File an Issue" support bundle already gathers (Aether version, connected radio model, active DSP/NR engine, current mode, redacted settings) and sends it along with the user's question and the contents of the built-in help docs (resources/help/*.md) to an AI backend.
  • Response streams into the chat panel as plain text; no automatic actions are taken on the user's behalf (read-only assistant, not an agent that changes settings).
  • A "Copy conversation" button lets the user paste the exchange into a bug report if it turns out to be a real bug — bridging to the existing 💡 reporter rather than duplicating it.
  • Should work whether or not a radio is connected (e.g. Demo Mode), since much of the value is answering "how do I configure X" questions independent of a live session.
  • Needs a clear opt-in/setting (e.g. in Radio Setup → General) since this implies network calls to a third-party AI API, and a way to disable it entirely for privacy-conscious or offline users.

Protocol Hints

Not a FlexLib/SmartSDR protocol feature — this is purely client-side UI plus a call to an external AI API (or an optional user-supplied API key, given the project's existing multi-provider AI tooling for the issue reporter). No TCP/UDP command changes needed. Unknown — needs research on how to package/ship the local help-doc corpus for grounding, and whether to reuse the same provider-selection UI as the 💡 reporter.

Acceptance Criteria

  • A help/chat entry point exists in the Help menu (and/or title bar) distinct from the existing 💡 AI-Assisted Issue Reporter
  • User can type a free-text question and receive a streamed AI response without leaving AetherSDR
  • The assistant is read-only — it never changes settings, sends radio commands, or takes action without explicit user confirmation
  • Feature is opt-in and can be fully disabled via a setting
  • No radio credentials, tokens, or unredacted serials are sent to the AI backend (reuse the existing log/settings redaction logic from the support-bundle flow)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    GUIUser interfaceenhancementImprovement to existing featuremaintainer-reviewRequires maintainer review before any action is taken

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions