Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 28 additions & 28 deletions bun.lock

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion cli/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8362,7 +8362,6 @@ mod cli_parsing_tests {
..Default::default()
},
],
..Default::default()
};

filter_users_payload(&mut payload, Some("mo"));
Expand Down
62 changes: 8 additions & 54 deletions plugins/hermes-agent/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -254,60 +254,14 @@ platforms:
enabled: true
```

Agent activity is experimental and **off by default**. To opt in, set
`INLINE_EXPERIMENTAL_AGENT_ACTIVITY=true` in the gateway process environment,
then restart Hermes. Unset it or set it to `false` and restart to restore ordinary
typing, disabled tool progress, cleaned-up progress messages, and no interim
assistant messages (unless explicitly overridden in your display settings).

In Inline on each device, enable **Settings → Experimental → Agents → Agent
Activity** and restart the app. Expanded logs also need **Rich Content Renderer**
on macOS or the existing **Message View 2** Debug setting on iOS. Without the
app opt-in, Working falls back to Typing and saved agent rows use their text
fallback. The app setting does not reconfigure a running gateway.

When enabled, Inline uses a quiet activity timeline: conversational replies stay separate from
collapsed tool logs, and the logs remain available after the turn. The toolbar
uses Inline's `WORKING` compose action while the turn is running; updated Apple
clients with Agent Activity enabled display **Working** with a thin rotating arc. This requires a server and
client that understand the additive compose-action value `6`.

Collapsed titles come from structured tool names and explicit descriptions.
Commands stay inside the disclosure; a terminal call without a description says
**Running a script**. Finished rows show **Worked for 18s**, **Failed after 18s**,
or **Stopped after 18s**. Monotonic elapsed time runs from the first work event
to the row's closing boundary and excludes final transport latency. Individual
tool errors remain recorded even if a later step recovers. These are bounded
progress previews, not complete tool-output logs or proof the task succeeded.

When opted in, the adapter registers these display defaults. Existing explicit Hermes display
settings still take precedence; use the per-platform settings below to adopt the
timeline when an older global configuration disables tool progress:

```yaml
display:
platforms:
inline:
tool_progress: all
tool_progress_grouping: accumulate
cleanup_progress: false
streaming: false
interim_assistant_messages: true
```

The installed legacy Hermes gateway does not route tool events through the
public `format_tool_event` adapter hook. A guarded Inline-only compatibility
bridge connects `TurnRunner.progress_callback` and `send_progress_messages` to
the existing host queue. The adapter renders structured starts and explicit
tool errors, batches queued events, and closes rows at reply/rollover boundaries.
The public `on_processing_complete` hook supplies the final processing outcome
(including delivery failures). Normal sender-task cancellation is not treated
as user cancellation. Hosts lacking either compatibility method retain their
ordinary progress presentation and log a warning. Other platforms are untouched.
Activity rows use silent, closed `activity="agent"` disclosures; updated clients
retain their standard message bubbles and disclosure controls without decorative activity icons.
Set `tool_progress: off` to disable tool logs. Token streaming remains opt-in
through both `streaming.enabled: true` and
Experimental tool timelines are unavailable in this adapter. The old
`INLINE_EXPERIMENTAL_AGENT_ACTIVITY` setting is ignored and logs a warning when
enabled. Hermes uses ordinary typing, optional processing reactions, and replies.

Inline keeps tool progress and interim assistant messages quiet by default.
Explicit Hermes display settings still take precedence; if you enable native
tool progress, Hermes uses its ordinary progress messages. Token streaming remains
opt-in through both `streaming.enabled: true` and
`display.platforms.inline.streaming: true`.

Hermes-native sends and scheduled deliveries accept Inline's explicit target
Expand Down
1 change: 0 additions & 1 deletion plugins/hermes-agent/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,6 @@
"plugin/inline/LICENSE",
"plugin/inline/__init__.py",
"plugin/inline/adapter.py",
"plugin/inline/activity.py",
"plugin/inline/cli.py",
"plugin/inline/message_actions.py",
"plugin/inline/plugin.yaml",
Expand Down
268 changes: 0 additions & 268 deletions plugins/hermes-agent/plugin/inline/activity.py

This file was deleted.

Loading
Loading