-
Notifications
You must be signed in to change notification settings - Fork 168
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Problem
bm reindex --embeddings uses Rich progress bars that render correctly in a real terminal but are not visible when output is captured by a subprocess or piped (non-TTY context). This affects tools/plugins that shell out to bm CLI commands.
Observed Behavior
When called from a plugin subprocess:
Project: claw
Building vector embeddings...
[... 74 seconds of silence ...]
Embedding entities... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 100%
The progress bar only appears at completion because Rich detects non-TTY and doesn't flush incremental updates.
Expected Behavior
When not connected to a TTY, fall back to simple log-style progress lines:
Embedded 10/66 entities...
Embedded 20/66 entities...
Impact
Low for direct CLI users. Confusing for plugin/tooling integrations — looks like a hang on slower hardware (74s on Intel Mac at 394% CPU).
Note
This is a known Rich library behavior. Fix options:
- Detect non-TTY and use
Console(force_terminal=False)with plain text fallback - Add
--no-rich/--plainflag - Log progress lines alongside Rich output
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request