Skip to content

Hide per-turn "view session" message by default; make it opt-in (default: false) #110

@GuyMoses

Description

@GuyMoses

Problem

On every Stop / StopFailure hook event — i.e. once per turn — the plugin prints a user-visible message:

dash0: view session → <session-url>

See cmd/on-event/main.go:639-642:

if appURL := deriveAppURL(cfg.OTLPUrl); appURL != "" {
    sessionURL := buildSessionURL(appURL, sessionID)
    printHookResponse(fmt.Sprintf("dash0: view session → %s", sessionURL), "")
}

Because Stop fires on every turn, this line is emitted to the user on every turn of a session. It's noisy — the session URL is the same for the whole session, so repeating it each turn adds little value and clutters the transcript.

Request

Make the per-turn "view session" message opt-in, hidden by default:

  • Add a config option (suggested: SHOW_SESSION_LINK, with DASH0_SHOW_SESSION_LINK env fallback and show_session_link config-file key) gating the dash0: view session → … output on Stop/StopFailure.
  • Default: false — by default, do not print the message on each turn.
  • When set to true, restore the current behavior (print the session link every turn).

This mirrors the existing boolean options (OMIT_IO, OMIT_USER_INFO) and their pluginOptionBoolDefault handling.

Notes

  • The SessionStart connectivity messages (dash0: connected, telemetry is not active, connectivity check failed) are fine as-is — those fire once per session, not per turn.
  • Document the new option in README.md (Configuration, Environment variable fallback, and Configuration file tables).

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions