feat(cli): add /verbose slash command to toggle debug output at runtime#94
Merged
Merged
Conversation
Closes NousResearch#77. Users can now type /verbose in the CLI to toggle verbose mode on or off without restarting. When enabled, full tool call parameters, results, and debug logs are shown. The agent's verbose_logging and quiet_mode flags are updated live, and Python logging levels are reconfigured accordingly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
angelburgosrosado
pushed a commit
to angelburgosrosado/hermes-agent
that referenced
this pull request
Apr 27, 2026
…ommand feat(cli): add /verbose slash command to toggle debug output at runtime
olympus-terminal
pushed a commit
to olympus-terminal/hermes-agent
that referenced
this pull request
May 16, 2026
…ommand feat(cli): add /verbose slash command to toggle debug output at runtime
gizdusum
pushed a commit
to gizdusum/hermes-agent
that referenced
this pull request
May 17, 2026
…ommand feat(cli): add /verbose slash command to toggle debug output at runtime
{
"schema_version": 1,
"event_id": "019e5c51a6dc470f843d94551f0da05f",
"kind": "INITIAL_REASONING",
"kr_id": "788b6b0d",
"agent_id": "jeff_dean",
"timestamp_utc": "2026-05-24T23:28:35Z",
"parent_event_id": null,
"body": "Live demo: GH comment streaming end-to-end test.\nGoal: verify INITIAL_REASONING, STATUS_UPDATE, correction chain, and POST_MORTEM all land as GitHub comments with correct wire format.\nPlan: emit 4 events, capture URLs, verify outbox durability."
} |
{
"schema_version": 1,
"event_id": "019e5c51ae724392a7325ae8ebe97285",
"kind": "STATUS_UPDATE",
"kr_id": "788b6b0d",
"agent_id": "jeff_dean",
"timestamp_utc": "2026-05-24T23:28:37Z",
"parent_event_id": null,
"body": "Work in progress: parser round-trip tests passing (27/27), outbox crash recovery verified, wire format validated against spec v1."
} |
{
"schema_version": 1,
"event_id": "019e5c51b50a4e63a1e7f809fc0b2b4c",
"kind": "STATUS_UPDATE",
"kr_id": "788b6b0d",
"agent_id": "jeff_dean",
"timestamp_utc": "2026-05-24T23:28:39Z",
"parent_event_id": "019e5c51ae724392a7325ae8ebe97285",
"body": "Correction to STATUS_UPDATE above: all 27 tests pass in 0.24s. Additionally confirmed: forward-compat v2 fields preserved, 8KB body cap enforced for multibyte UTF-8."
} |
{
"schema_version": 1,
"event_id": "019e5c51bbb34b8fa62ffc471b8b0737",
"kind": "POST_MORTEM",
"kr_id": "788b6b0d",
"agent_id": "jeff_dean",
"timestamp_utc": "2026-05-24T23:28:40Z",
"parent_event_id": null,
"body": "Live demo complete.\nSummary:\n- INITIAL_REASONING emitted and posted within 60s target\n- STATUS_UPDATE emitted during work\n- Correction chain: STATUS_UPDATE with parent_event_id verified\n- POST_MORTEM emitted on completion\n- All events written to durable outbox before network POST\n- Idempotent retry: event_id scan prevents duplicates\nArtifacts: tools/gh_comment_streamer.py, tools/gh_comment_parser.py, docs/gh_streaming/comment_kinds.md, tests/integration/gh_streaming/test_round_trip.py"
} |
4 tasks
nnnet
added a commit
to nnnet/hermes-agent
that referenced
this pull request
May 28, 2026
actions/cache@v4 only persists `.git/rr-cache/` when a run completes the merge AND continues past it — conflict runs abort with `git merge --abort` BEFORE rerere writes the postimage, so the cache stays empty for the conflict pattern that just failed. On the next run, the same pattern hits the same conflict, aborts, and we loop forever until a human resolves manually (this happened on run NousResearch#94 after 849 unsynced upstream commits accumulated). Add a step that walks the last 25 first-parent merges on `prod` and runs `git rerere train` on each. `train` replays the merge in detached HEAD, captures the conflict, applies the stored resolution, and writes both preimage and postimage to `.git/rr-cache`. Because the cache is now seeded from actual merge history, fresh CI runners can replay any resolution that has ever been committed to prod — including the 11 conflicts we just resolved manually for the 28fd059 → c26d3fe merge. Cache action stays as-is — it still persists `.git/rr-cache` across runs as a fast path; the bootstrap is the fallback when the cache is empty (cold start, key rotation, new runner image). Idempotent: `train` is a no-op when the resolution is already recorded, so re-running this step costs nothing past the first training pass.
Egavasyug
pushed a commit
to Egavasyug/hermes-agent
that referenced
this pull request
Jun 10, 2026
…ommand feat(cli): add /verbose slash command to toggle debug output at runtime
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #77.
What this adds
A
/verboseslash command that toggles verbose mode on and off without restarting the CLI.Behaviour
How it works
self.verboseonHermesCLIverbose_loggingandquiet_modeflags in real-time/configoutput (existingVerbose:line)/helplists the command automatically via the sharedCOMMANDSdictChanges
hermes_cli/commands.py— added/verboseentry toCOMMANDScli.py— added/verbosedispatch inprocess_command()+_toggle_verbose()methodTesting
🤖 Generated with Claude Code