goose icon indicating copy to clipboard operation
goose copied to clipboard

Add a hotkey to show full tool output

Open rolznz opened this issue 7 months ago • 12 comments

Please explain the motivation behind the feature request. This is how my tool output looks like, but I can't see the invoice - all I can see is "...".

I'll pay the Lightning invoice to get the weather data for Wellington.
─── pay_invoice | alby ──────────────────────────
invoice: ...

Describe the solution you'd like Claude code allows you to press a hotkey (ctrl+r) to toggle displaying the full tool output

Describe alternatives you've considered

Additional context

  • [x] I have verified this does not duplicate an existing feature request

rolznz avatar Jul 01 '25 15:07 rolznz

.take

aegntic avatar Oct 16 '25 15:10 aegntic

Thanks for taking this issue! Let us know if you have any questions!

github-actions[bot] avatar Oct 16 '25 15:10 github-actions[bot]

Hi @aegntic - wanted to check on your progress with this issue and see if you needed any help :)

taniandjerry avatar Oct 22 '25 15:10 taniandjerry

I've got a couple other things I have to take care of irl and I will return to the flock when I'm done 👍🏻✅

aegntic avatar Oct 22 '25 23:10 aegntic

thank you for the update! <3

taniandjerry avatar Oct 24 '25 20:10 taniandjerry

Hi @aegntic - wanted to tag you and see how it's going for this issue! As we are in the last week of Hacktoberfest, wanted to make sure you have the support you need and also check if you have trouble with this issue. Thank you!

taniandjerry avatar Oct 28 '25 18:10 taniandjerry

Hi @aegntic, I am writing to let you know I'm removing the hacktoberfest labels off of this issue. You are free to contribute to this if you have a PR ready! 📕 and if it is before Hacktoberfest ends, I will be able to add those labels as well.

Since Hacktoberfest ends in two days, and the team needs that remaining day to finalize PRs and rankings, all open issues without an open PR are being closed or having Hacktoberfest labels removed. This way, in-progress submissions can bee finalized along with final leaderboard rankings. Thank you so much for participating!

taniandjerry avatar Oct 29 '25 21:10 taniandjerry

Hi @aegntic are you still looking into this one ?

Abhijay007 avatar Nov 20 '25 15:11 Abhijay007

I'm experiencing this same issue with gh auth login, which makes GitHub authentication impossible through goose.

Reproduction:

  1. Ask goose to run: gh auth login
  2. The device code is truncated, while the URL is visible
  3. The command hangs waiting for authentication, but without the device code it's impossible to complete
  4. The only way out is CTRL+C

Expected behavior: The full device code and URL should be visible (like in kiro-cli, which handles this correctly, and completes the full authentication).

Comparison:

In kiro-cli (works correctly):

I will run the following command: gh auth login (using tool: shell)
Purpose: Authenticate with GitHub CLI

! First copy your one-time code: 7F42-5CB3
Open this URL to continue in your web browser: https://github.com/login/device

In Goose (truncated):

I'll help you renew your GitHub token. Let me authenticate using the `gh` CLI.

─── shell | developer ──────────────────────────
command: gh auth login

⠚ Open this URL to continue in your web browser: https://github.com/login/device

Notice the device code (7F42-5CB3) is missing in goose's output.

Environment:

  • OS: macOS 15.2 (Sequoia)
  • Goose version: 1.16.0
  • Interface: CLI

Workaround: Currently have to run gh auth login outside of goose, then resume the session.

clouatre avatar Dec 10 '25 05:12 clouatre

I'm experiencing this same issue with gh auth login, which makes GitHub authentication impossible through goose.

Reproduction:

  1. Ask goose to run: gh auth login
  2. The device code is truncated, while the URL is visible
  3. The command hangs waiting for authentication, but without the device code it's impossible to complete
  4. The only way out is CTRL+C

Expected behavior: The full device code and URL should be visible (like in kiro-cli, which handles this correctly, and completes the full authentication).

Comparison:

In kiro-cli (works correctly):

I will run the following command: gh auth login (using tool: shell)
Purpose: Authenticate with GitHub CLI

! First copy your one-time code: 7F42-5CB3
Open this URL to continue in your web browser: https://github.com/login/device

In Goose (truncated):

I'll help you renew your GitHub token. Let me authenticate using the `gh` CLI.

─── shell | developer ──────────────────────────
command: gh auth login

⠚ Open this URL to continue in your web browser: https://github.com/login/device

Notice the device code (7F42-5CB3) is missing in goose's output.

Environment:

  • OS: macOS 15.2 (Sequoia)
  • Goose version: 1.16.0
  • Interface: CLI

Workaround: Currently have to run gh auth login outside of goose, then resume the session.

Hi @clouatre thanks for sharing, am looking into this will push a fix for it soon

Abhijay007 avatar Dec 10 '25 06:12 Abhijay007

I've submitted PR #6041 which fixes the root cause of shell output being hidden during command execution (device codes from gh auth login, etc.).

My fix (#6041):

  • Detects shell_output notification type and prints as static text
  • Follows existing pattern (same as task_execution handling)
  • 18 lines changed, 1 file
  • All CI checks passing

PR #6067 (by @Abhijay007) proposes a different approach:

  • Adds /r slash command to toggle truncation globally
  • 48 lines changed, 3 files
  • Uses thread-local state (doesn't persist between sessions)
  • CI failing (hermit installation error - infrastructure issue)

Key difference:

  • #6041 fixes streaming output hidden by spinner (root cause)
  • #6067 addresses parameter truncation (different issue)

Both issues were reported in #3196, but they're separate problems:

  1. Streaming bug: Shell output consumed by spinner → #6041 fixes this
  2. Truncation feature: Tool params cut with "..." → #6067 addresses this

@zanesq - Would appreciate your thoughts on the best path forward. My recommendation: merge #6041 first to fix the blocking authentication bug, then discuss whether #6067's toggle approach is still needed after the streaming fix.

clouatre avatar Dec 11 '25 17:12 clouatre

I've submitted PR #6041 which fixes the root cause of shell output being hidden during command execution (device codes from gh auth login, etc.).

My fix (#6041):

  • Detects shell_output notification type and prints as static text
  • Follows existing pattern (same as task_execution handling)
  • 18 lines changed, 1 file
  • All CI checks passing

PR #6067 (by @Abhijay007) proposes a different approach:

  • Adds /r slash command to toggle truncation globally
  • 48 lines changed, 3 files
  • Uses thread-local state (doesn't persist between sessions)
  • CI failing (hermit installation error - infrastructure issue)

Key difference:

Both issues were reported in #3196, but they're separate problems:

  1. Streaming bug: Shell output consumed by spinner → fix: display shell output as static text instead of spinner #6041 fixes this
  2. Truncation feature: Tool params cut with "..." → feat: add hotkey to toggle full tool output display #6067 addresses this

@zanesq - Would appreciate your thoughts on the best path forward. My recommendation: merge #6041 first to fix the blocking authentication bug, then discuss whether #6067's toggle approach is still needed after the streaming fix.

Oh, I just saw your PR, thanks for adding it @clouatre! I really appreciate your contribution. I assigned to myself, so it was already on my task list 😅, that's why I added that PR and just saw yours. For future PRs, it would be great if you could mention that you’re working on an issue or check whether someone is already actively working on it. This helps us avoid duplicate effort and focus on other open issues 😄, looking forward to your contributions.

I’ll review your changes PR, and as you mentioned, @zanesq can take it forward from here.

Abhijay007 avatar Dec 11 '25 17:12 Abhijay007