Dashboard › cli › Distillation
f7f448ae-ca5b-4a9b-957d-7c2a661d0110["lore_tm_v1_BZndnlyhBHhXTt-Dg2rR57iZ9RsNIQ9HWu0ka6P0y8M","lore_tm_v1_SnVVB9Pw0E_DubwfNVyaWS3oWKce4kywTy37HmuWOlA","lore_tm_v1_Nm301hfaf3aSG88AKBJmuj9UusHEve9O4bva1ckpooQ","lore_tm_v1_ZdiZClykgFAvOeHKZOOjtQQPEfhF5-8-o-vNuYuLpbs","lore_tm_v1_3kikgWY_7NSN5CAqbwW6hhcrSu7WncD1_BXjedkJ8TA","lore_tm_v1_6WTDsCedStIT9Rljn2xRwGWFgNGlhHActbPgMsuRw3k"]
sentry agent-conversation view [<org>/]<conversation-id> displays the full transcript of an agent conversation; the organization is optional and auto-detected from project context when omitted, while <org>/<conversation-id> targets a specific organization.sentry agent-conversation view examples are: sentry agent-conversation view conv-123 for an auto-detected organization, sentry agent-conversation view my-org/conv-123 for an explicit organization, and sentry agent-conversation view my-org/conv-123 --json for JSON output.sentry agent-conversation view flags are -f [--fresh] (bypass cache, re-detect projects, and fetch fresh data; default false), --json (default false), --fields (comma-separated fields with dot notation), and -h --help.default: matches, including trace/logs.ts defaults "100" and "newest"; trace/list.ts "date"; sourcemap/upload.ts "~/"; explore.ts "sum" and "25"; event/send.ts "error"; docs/list.ts "8"; monitor/run.ts "production"; log/list.ts "100" and "newest"; dashboard/widget/add.ts "sequential"; dashboard/view.ts "auto"; local/server.ts "localhost" and "human"; local/run.ts "localhost", "0", and "human"; issue/list.ts "90d"; replay/list.ts "date"; release/set-commits.ts "20"; auth/login.ts and auth/default.ts "900"; release/list.ts "90d" and "open"; api.ts "GET"; and snapshots/diff.ts "0.01".sentry agent-conversation view reports path "sentry agent-conversation view", brief "View an agent conversation transcript", positional syntax "[<org>/]<conversation-id>", and required positional placeholder "org/conversation-id".fresh, json, and fields; hidden flags log-level, verbose, org, and project; aliases are f → fresh and v → verbose./home/byk/Code/getsentry/cli-pr-1558/packages/cli/src/lib/help.ts defines branded/custom help, structured command introspection, JSON help rendering, unknown-command recovery, and human formatting.packages/cli/src/lib/help.ts defines COMMON_FLAGS in this order: --json (“Output as JSON (with --fields to select)”); -f, --fresh (“Bypass cache and fetch fresh data”); -v, --verbose (“Enable debug logging”); --help (“Show help for a command”); --version (“Show version”).generateCommands() in packages/cli/src/lib/help.ts dynamically derives visible commands from Stricli’s routes; route groups join visible subcommand names with " | ", while direct commands prefer entry.target.__primaryUsage over getPositionalString(entry.target.parameters.positional).printCustomHelp() conditionally renders sixelBanner(cols) ?? formatBanner(cols) only for TTY stdout, then emits tagline "The command-line interface for Sentry", generated commands, common flags, top-level environment variables, an authentication-dependent example (sentry issue list when logged in, otherwise sentry auth), and https://cli.sentry.dev/getting-started/.introspectAllCommands() returns { routes: extractAllRoutes(routeMap), envVars: buildTopLevelEnvVars(), flags: buildCommonFlags() }; introspectCommand(commandPath) returns resolved CommandInfo/RouteInfo or { error: "Command not found: …", suggestions? }.renderJsonHelp(prefix, unprocessedInputs) uses parseHelpJsonFlags(), strips the app name via prefix.slice(1), appends unresolved extraPath, calls introspectAllCommands() for an empty path or introspectCommand() otherwise, applies filterFields() when requested, and returns ${formatJson(final)}\n; without --json, it returns undefined so Stricli uses built-in text help.isVersionRequest(argv) recognizes bare --version before a -- escape; -v is intentionally excluded because GLOBAL_FLAGS maps it to --verbose.isRecoverableUnknownCommand(argv) treats three invocation shapes as recoverable: a --version request, a rewritable --help --json request, or an argv of at least 2 tokens ending in help.rewriteHelpJsonToHelpCommand(argv) requires --help/-h and --json before --, then rewrites to ["help", "--json", ...extraPath] and appends ["--fields", fields.join(",")] when fields are present.parseHelpJsonFlags() recognizes --json, spaced or inline --fields, ignores tokens after --, consumes values for global value flags so they do not become command-path segments, and collects remaining non-flag tokens into extraPath.VALUE_FLAG_TOKENS is derived from GLOBAL_FLAGS entries with kind === "value" excluding fields; it includes long names and available short aliases, while isValueFlagToken() also supports inline --name=value.formatSuggestionList() uses Stricli-style Oxford-comma grammar: 1 item "issue", 2 items "issue or trace", and 3 items "issue, trace, or auth".formatCommandHuman() emits a command signature, brief, visible flags via formatFlagHuman(), and optional JSON fields; formatGroupHuman() emits sentry <group>, the group brief, and aligned subcommand names/descriptions, or "(no commands)".formatHelpHuman(data) handles four structures: full trees via printCustomHelp().trimEnd(), route groups via formatGroupHuman(), commands via formatCommandHuman(), and errors via Error: … plus optional Did you mean: …?.formatHelpHuman; this prevents JSON requests from triggering printCustomHelp()’s sixel probe or terminal I/O..env.local printed .env.local not found. Continuing without it. 4 times, then failed with Expected argument for org/conversation-id.