{"id":35797878,"url":"https://github.com/aha-app/overitall","last_synced_at":"2026-01-31T22:07:44.064Z","repository":{"id":332474099,"uuid":"1128647320","full_name":"aha-app/overitall","owner":"aha-app","description":"A terminal UI for process and log management","archived":false,"fork":false,"pushed_at":"2026-01-31T02:03:48.000Z","size":1354,"stargazers_count":8,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-31T17:26:04.802Z","etag":null,"topics":["log-viewer","process-manager","procfile","rust","tui"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/aha-app.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-01-06T00:32:51.000Z","updated_at":"2026-01-31T02:03:52.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/aha-app/overitall","commit_stats":null,"previous_names":["aha-app/overitall"],"tags_count":62,"template":false,"template_full_name":null,"purl":"pkg:github/aha-app/overitall","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aha-app%2Foveritall","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aha-app%2Foveritall/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aha-app%2Foveritall/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aha-app%2Foveritall/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aha-app","download_url":"https://codeload.github.com/aha-app/overitall/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aha-app%2Foveritall/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28957001,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T18:30:42.805Z","status":"ssl_error","status_checked_at":"2026-01-31T18:30:19.593Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["log-viewer","process-manager","procfile","rust","tui"],"created_at":"2026-01-07T10:17:09.752Z","updated_at":"2026-01-31T22:07:44.059Z","avatar_url":"https://github.com/aha-app.png","language":"Rust","readme":"# Overitall (`oit`)\n\nA terminal user interface (TUI) for process and log management, combining the best of [overmind](https://github.com/DarthSim/overmind) (process management) and [lnav](https://lnav.org/) (log viewing).\n\n## What is Overitall?\n\nOveritall (`oit`) is a TUI that helps you manage multiple processes and their logs in a single, interactive interface. It's perfect for development environments where you need to run and monitor multiple services simultaneously (like Rails apps with web servers, background workers, and other services).\n\n### Key Features\n\n- **Process Management**: Start, stop, and restart processes defined in a Procfile\n- **Custom Status Labels**: Show meaningful status like \"Starting\", \"Ready\" based on log patterns\n- **Standalone Log Files**: Tail log files (like Rails logs) without an associated process\n- **Unified Log Viewing**: View logs from multiple sources in a single, interleaved stream\n- **Advanced Filtering**: Include or exclude log lines with regex patterns\n- **Process Visibility Toggle**: Hide/show logs from specific processes on demand\n- **Search**: Full-text search with highlighting across all logs\n- **Batch Navigation**: Navigate through groups of related log lines that arrived together\n- **Time Navigation**: Jump to specific timestamps with `:goto HH:MM` or relative times like `:goto -5m`\n- **Trace Detection**: Find correlation IDs (UUIDs, trace IDs) and filter to specific traces\n- **Persistent Configuration**: Filters and settings are automatically saved\n- **Compact Mode**: Collapse verbose metadata tags (`[key:value]`) into `[+N]` for cleaner log viewing\n- **Process Coloring**: Optional distinct colors per process for easier visual identification\n- **Auto-Update**: Automatically checks for and installs updates on startup\n- **AI Integration**: Install Claude Code/Cursor skill to let AI control the TUI via CLI\n\n\u003cimg width=\"1728\" height=\"1004\" alt=\"Screenshot of oit tui\" src=\"https://github.com/user-attachments/assets/05ee14bc-e22b-4203-a840-6e97fac71e70\" /\u003e\n\n## Installation\n\n### Homebrew (Recommended)\n\n```bash\nbrew install aha-app/overitall/oit\n```\n\nOr tap the repository first:\n\n```bash\nbrew tap aha-app/overitall\nbrew install oit\n```\n\n### From GitHub Releases\n\nDownload the latest release for macOS:\n\n```bash\n# Download and install the latest release\ncurl -L https://github.com/aha-app/overitall/releases/latest/download/oit-macos-arm64.tar.gz | tar xz\nsudo mv oit /usr/local/bin/\n```\n\nFor auto-updates to work, install to a user-writable location:\n\n```bash\ncurl -L https://github.com/aha-app/overitall/releases/latest/download/oit-macos-arm64.tar.gz | tar xz\nmv oit ~/.local/bin/\n```\n\nOr download manually from the [releases page](https://github.com/aha-app/overitall/releases).\n\n### From Source\n\n```bash\ngit clone https://github.com/aha-app/overitall.git\ncd overitall\ncargo build --release\n```\n\nThe binary will be at `target/release/oit`. You can copy it to your PATH:\n\n```bash\ncp target/release/oit /usr/local/bin/\n```\n\n## Quick Start\n\n1. Create a [Procfile](https://devcenter.heroku.com/articles/procfile) in your project directory:\n\n```procfile\nweb: bundle exec rails server\nworker: bundle exec sidekiq\n```\n\n2. Generate a default configuration file:\n\n```bash\noit --init\n```\n\nThis creates a `.overitall.toml` file with all processes from your Procfile:\n\n```toml\nprocfile = \"Procfile\"\nbatch_window_ms = 100\n\n[processes.web]\nlog_file = \"logs/web.log\"\n\n[processes.worker]\nlog_file = \"logs/worker.log\"\n\n[filters]\ninclude = []\nexclude = []\n```\n\nEdit the generated config to customize log file paths and other settings.\n\nAlternatively, you can create the config file manually or specify a custom path:\n\n```bash\noit --init -c custom-config.toml\n\n# Use a different Procfile for initialization\noit --init -f Procfile.dev\n```\n\n3. Run `oit`:\n\n```bash\noit\n```\n\nTo start only specific processes:\n\n```bash\noit web worker     # Start only web and worker processes\noit web            # Start only the web process\n```\n\nOr specify a custom config file or Procfile:\n\n```bash\noit --config path/to/config.toml\noit -c path/to/config.toml\n\n# Use a different Procfile (overrides config file setting)\noit -f Procfile.dev\noit --file Procfile.other\n```\n\n## Usage\n\n### Keyboard Shortcuts\n\n#### Navigation\n- `↑` / `↓` - Select previous/next log line\n- `Shift+↑` / `Shift+↓` - Extend selection (multi-select mode)\n- `Enter` - Expand selected line (show full content in overlay)\n- `Ctrl+B` / `Ctrl+F` - Page up/down (Vim-style)\n- `PageUp` / `PageDown` - Page up/down\n- `Home` / `End` - Jump to top/bottom\n- `?` - Show help overlay\n- `q` - Quit application\n\n#### Modes\n- `:` - Enter command mode\n- `/` - Enter search mode\n- `Esc` - Exit current mode, close overlays, or jump to latest logs\n- `w` - Cycle display mode: compact → full → wrap\n- `t` - Cycle timestamp display: seconds → milliseconds → off\n- `p` - Cycle process panel: normal → summary → minimal\n\n\n#### Batch Navigation\n- `[` / `]` - Previous/next batch\n- `+` / `-` - Increase/decrease batch window by 100ms\n\n#### Clipboard \u0026 Batch Operations\n- `c` - Copy selected line(s) to clipboard (with timestamp and process)\n- `Shift+C` - Copy entire batch to clipboard (all lines in batch)\n- `x` - Contextual copy (same process within ±1s of selected line)\n- `b` - Focus on batch containing the selected line\n- `Esc` - Clear multi-select (when in multi-select mode)\n\n#### Mouse\n- Click on a process in the sidebar to select it\n- Scroll wheel to navigate logs\n- **Tip**: Hold `Shift` while selecting text to use your terminal's native text selection (bypasses the TUI's mouse capture)\n\n### Commands\n\nAll commands are entered by pressing `:` followed by the command.\n\n#### Process Management\n\n- `:s \u003cname\u003e` - Start a process\n- `:r \u003cname\u003e` - Restart a process (or all processes if no name given)\n- `:k \u003cname\u003e` - Kill (stop) a process\n- `:q` / `:quit` / `:exit` - Quit the application\n\nExample:\n```\n:r worker    # Restart the worker process\n:r           # Restart all processes\n:k web       # Stop the web process\n:s web       # Start the web process\n```\n\n#### Filtering\n\n- `:f \u003cpattern\u003e` - Add include filter (show only matching lines)\n- `:fn \u003cpattern\u003e` - Add exclude filter (hide matching lines)\n- `:fc` - Clear all filters\n- `:fl` - List active filters\n\nFilters support regex patterns:\n```\n:f ERROR                    # Show only lines containing ERROR\n:fn DEBUG                   # Hide lines containing DEBUG\n:f \\[Worker\\]              # Show only lines from Worker (escaped brackets)\n```\n\n#### Process Visibility\n\nHide or show logs from specific processes temporarily. This is useful when you want to focus on certain processes without permanently filtering their logs.\n\n- `:hide \u003cname\u003e` - Hide logs from a specific process\n- `:show \u003cname\u003e` - Show logs from a specific process\n- `:hide all` - Hide all process logs\n- `:show all` - Show all process logs\n- `:only \u003cname\u003e` - Show only one process, hide all others\n\nExamples:\n```\n:hide worker        # Hide logs from the worker process\n:show worker        # Show logs from the worker process again\n:hide all           # Hide all process logs\n:show all           # Show all process logs\n:only web           # Show only web logs, hide all others\n```\n\nWhen a process is hidden, it will be marked as `[Hidden]` in the process list, and its logs will not appear in the log viewer. Hidden processes are saved to the configuration file and persist across restarts.\n\n#### Batch Navigation\n\nLog lines that arrive within a short time window are grouped into \"batches\". This helps you see related log output together.\n\n- `:nb` - Next batch\n- `:pb` - Previous batch\n- `:sb` - Toggle batch view mode (show only current batch)\n- `:bw` - Show current batch window\n- `:bw \u003cmilliseconds\u003e` - Set batch window (default: 100ms)\n- `:bw fast` / `:bw medium` / `:bw slow` - Presets: 100ms / 1000ms / 5000ms\n\nYou can also use `[` and `]` keys for quick batch navigation, or `+` and `-` to adjust the batch window.\n\nThe batch window determines how close in time log lines must be to be grouped together. Adjust it based on your application's logging patterns (e.g., `:bw 1000` for 1 second window).\n\n#### Time Navigation\n\n- `:goto HH:MM` or `:goto HH:MM:SS` - Jump to absolute time\n- `:goto -5m` - Jump back 5 minutes from current selection\n- `:goto +30s` - Jump forward 30 seconds from current selection\n- `:g` - Short form of `:goto`\n\nRelative time supports `s` (seconds), `m` (minutes), and `h` (hours). Navigation is relative to the currently selected line, or the last log if tailing.\n\n#### Search\n\n- `/` - Start search (filters logs as you type)\n- `Enter` - In search mode: enter selection mode (selects the last match)\n- `↑` / `↓` - Navigate between matches in selection mode\n- `Enter` - In expanded view: show context around the selected log\n- `Esc` - Step back through modes (selection → typing → exit)\n\nThe search filters logs in real-time as you type. Press Enter to enter selection mode where you can navigate through the filtered results with arrow keys. Press Esc to step back: from selection mode back to typing, or from typing mode to exit search completely.\n\n#### Display\n\n- `:color` - Toggle process coloring on/off (persists to config)\n\n## Configuration\n\nThe configuration file (`.overitall.toml` by default) uses TOML format:\n\n```toml\n# Path to your Procfile\nprocfile = \"Procfile\"\n\n# Process-specific configuration\n[processes.web]\nlog_file = \"log/web.log\"\n\n[processes.worker]\nlog_file = \"log/worker.log\"\n\n[processes.scheduler]\nlog_file = \"log/scheduler.log\"\n\n# Filters (automatically saved when you add/remove filters)\n[filters]\ninclude = [\"INFO\", \"ERROR\"]\nexclude = [\"DEBUG\"]\n\n# Hidden processes (automatically saved when you hide/show processes)\nhidden_processes = [\"worker\"]\n```\n\n### Configuration Options\n\n- `procfile` - Path to your Procfile (required)\n- `processes.\u003cname\u003e.log_file` - Path to the log file for a specific process (optional)\n- `processes.\u003cname\u003e.stdin` - Stdin mode for the process: `\"close\"` (default) or `\"open\"` (see below)\n- `processes.\u003cname\u003e.status` - Custom status configuration (see below)\n- `log_files` - Array of standalone log files to tail (see below)\n- `filters.include` - Array of regex patterns to include\n- `filters.exclude` - Array of regex patterns to exclude\n- `hidden_processes` - Array of process names to hide from log viewer (automatically saved)\n- `ignored_processes` - Array of process names to skip entirely (not started at all)\n- `start_processes` - Array of process names to auto-start (if empty, all processes start)\n- `max_log_buffer_mb` - Maximum memory for log buffer in megabytes (default: 50)\n- `batch_window_ms` - Batch grouping window in milliseconds (default: 100)\n- `context_copy_seconds` - Time window for X (contextual copy) in seconds (default: 1.0)\n- `disable_auto_update` - Set to `true` to disable auto-update checks (default: false)\n- `compact_mode` - Set to `false` to show full log lines by default (default: true)\n- `process_coloring` - Colorize process names in the log view (default: true)\n\n### Standalone Log Files\n\nYou can tail log files that aren't associated with any process in your Procfile. This is useful for:\n- Framework logs (Rails development.log, Sidekiq logs)\n- System logs\n- Any log file you want to view alongside your process output\n\n```toml\n# Tail standalone log files (not associated with any process)\n[[log_files]]\nname = \"rails\"\npath = \"log/development.log\"\n\n[[log_files]]\nname = \"sidekiq\"\npath = \"log/sidekiq.log\"\n```\n\nStandalone log files appear in the process list with a `[LOG]` indicator instead of a process status. You can hide/show them using the same commands as processes (`:hide rails`, `:show rails`).\n\nNote: You cannot start, stop, or restart standalone log files - these commands are only for processes.\n\n### Selective Process Start\n\nControl which processes auto-start when launching `oit`:\n\n```toml\n# Only auto-start web and worker (other processes remain stopped)\nstart_processes = [\"web\", \"worker\"]\n```\n\nCLI arguments override the config:\n\n```bash\noit web worker     # Start only web and worker (ignores config)\noit                # Uses start_processes from config\n```\n\nProcesses that don't auto-start are still available in the TUI - use `:s \u003cname\u003e` to start them manually. This differs from `ignored_processes`, which completely excludes processes from the TUI.\n\n### Process Groups\n\nDefine named groups of processes for batch operations:\n\n```toml\n[groups]\nrails = [\"puma\", \"workers\"]\nbackend = [\"api\", \"scheduler\"]\n```\n\nUse group names with any process command:\n\n```\n:r rails         # Restart all processes in the rails group\n:k backend       # Kill all processes in the backend group\n:s rails         # Start all processes in the rails group\n:hide rails      # Hide logs from all processes in the rails group\n:show rails      # Show logs from all processes in the rails group\n:only backend    # Show only backend processes, hide all others\n```\n\nGroup names must not conflict with process names or log file names.\n\n### Process Stdin Configuration\n\nBy default, all processes have stdin closed (`stdin = \"close\"`). Some processes, like Tailwind CSS in watch mode, exit when their stdin is closed. For these processes, you can keep stdin open:\n\n```toml\n[processes.tailwind]\nstdin = \"open\"  # Keep stdin open to prevent process from exiting\n```\n\n**Options:**\n- `\"close\"` (default) - Close stdin, process receives EOF immediately\n- `\"open\"` - Keep stdin open with a new pipe\n\n**When to use `\"open\"`:**\n- File watchers that exit when stdin closes (Tailwind, Vite, etc.)\n- Processes that check stdin status at startup\n- Any process that expects stdin to remain open\n\nThe open mode creates a new pipe per process (does not share the parent's stdin). Most processes don't need this and should use the default `\"close\"` mode.\n\n### Custom Process Status Labels\n\nYou can configure custom status labels that change based on log patterns. This is useful for showing meaningful status like \"Starting\", \"Ready\", \"Migrating\" instead of just \"Running\".\n\n```toml\n[processes.web]\nlog_file = \"log/web.log\"\n\n[processes.web.status]\ndefault = \"Starting\"\n\n[[processes.web.status.transitions]]\npattern = \"Listening on\"\nlabel = \"Ready\"\ncolor = \"green\"\n\n[[processes.web.status.transitions]]\npattern = \"database migration\"\nlabel = \"Migrating\"\ncolor = \"yellow\"\n```\n\nWhen the process starts, it shows the default status (\"Starting\"). When a log line matches a transition pattern, the status updates to the corresponding label with the specified color.\n\nAvailable colors: `red`, `green`, `yellow`, `blue`, `magenta`, `cyan`, `gray`, `dark_gray`, `light_red`, `light_green`, `light_yellow`, `light_blue`, `light_magenta`, `light_cyan`, `white`\n\nThe status resets to the default when the process is restarted.\n\n### Process Coloring\n\nEach process/log file name is shown in a distinct color in the log view, making it easier to visually distinguish logs from different sources. This is enabled by default.\n\n```toml\n# Disable colored process names (enabled by default)\nprocess_coloring = false\n\n# Optional: override specific process colors\n[colors]\nweb = \"green\"\nworker = \"yellow\"\nrails = \"cyan\"\n```\n\nAvailable colors: `red`, `green`, `yellow`, `blue`, `magenta`, `cyan`, `white`, `gray`, plus light variants: `light_red`, `light_green`, `light_yellow`, `light_blue`, `light_magenta`, `light_cyan`\n\nYou can also toggle coloring at runtime with the `:color` command, which persists the setting to your config file.\n\n### Auto-Update\n\nOveritall automatically checks for updates on every startup. When a new version is available, it will:\n\n1. Download the update from GitHub releases\n2. Replace the current binary\n3. Restart with the new version\n\nTo skip the update check, use the `--no-update` flag:\n\n```bash\noit --no-update\n```\n\nOr disable auto-update permanently in your config file:\n\n```toml\ndisable_auto_update = true\n```\n\n### AI Integration (Claude Code / Cursor)\n\nInstall the AI skill to teach Claude Code and Cursor how to control the running TUI via CLI commands:\n\n```bash\noit skill install\n```\n\nThe skill is installed to `.claude/skills/oit/` (or `.cursor/skills/oit/`) and is automatically added to `.git/info/exclude` to prevent it from being committed to your repository.\n\nOnce installed, AI assistants can control the running TUI with commands like:\n\n- `oit summary` - Get comprehensive status (processes, recent logs, errors)\n- `oit errors --limit 10` - Get recent error logs\n- `oit restart worker` - Restart a process\n- `oit search \"pattern\"` - Search logs\n- `oit freeze on` - Pause the display\n\nThis enables AI pair-programming workflows where the AI can investigate logs, restart processes, and manage filters while you watch the TUI.\n\n### Memory Management\n\nBy default, Overitall limits the log buffer to 50 MB. When this limit is reached, the oldest logs are automatically evicted (First-In-First-Out).\n\nConfigure the buffer size in your `.overitall.toml`:\n\n```toml\nmax_log_buffer_mb = 100  # Allow up to 100 MB of logs\n```\n\nThe status bar shows current buffer usage and warns when eviction occurs. This prevents memory issues with long-running processes and high-volume logs.\n\n### Status Bar Indicators\n\nThe status bar at the bottom of the screen shows:\n- **Buffer usage**: Current memory usage and percentage\n- **Line count**: Total number of log lines in buffer\n- **Batch count**: Number of detected batches (or current batch info in batch view)\n- **Mode indicator**: Shows the current viewing mode:\n  - `[TAIL]` (green) - Following new logs in real-time\n  - `[SCROLL]` (yellow) - Viewing history (scrolled up from bottom)\n  - `[BATCH]` (blue) - Viewing a specific batch\n  - `[TRACE]` (cyan) - Viewing a captured trace\n\nWhen recording a manual trace, the status bar also shows a red `● REC` indicator with elapsed time.\n\n## Example Setup\n\nAn example configuration is provided in the `example/` directory:\n\n```bash\ncd example\noit -c overitall.toml\n```\n\nThis runs a simple demo with mock processes that generate log output for testing.\n\n## Development\n\n### Building\n\n```bash\n# Debug build\ncargo build\n\n# Release build\ncargo build --release\n\n# Run in development\ncargo run\n\n# Run with custom config\ncargo run -- -c example/overitall.toml\n```\n\n### Testing\n\n```bash\n# Run all tests\ncargo test\n\n# Review snapshot test changes\ncargo install cargo-insta\ncargo insta review\n```\n\n## Architecture\n\nSee [ARCHITECTURE.md](ARCHITECTURE.md) for code structure and how to add features.\n\n## Project Status\n\nOveritall is under active development. Current features:\n\n- Easy initialization with `--init` flag (automatically generates config from Procfile)\n- Process management (start/stop/restart)\n- Custom process status labels (show \"Starting\", \"Ready\", etc. based on log patterns)\n- Standalone log files (tail log files not associated with any process)\n- Log file tailing and interleaved viewing\n- Filtering (include/exclude patterns)\n- Process visibility toggle (hide/show logs from specific processes)\n- Search with highlighting\n- Batch detection and navigation\n- Line selection and expanded view (view full content of long log lines)\n- Multi-select mode (select multiple lines with Shift+arrow keys)\n- Clipboard operations (copy lines and batches to system clipboard)\n- Batch focus from selected line\n- Dynamic batch window configuration (adjust batch grouping on-the-fly)\n- Trace detection and filtering (find correlation IDs like UUIDs)\n- Manual trace capture (record logs during a time window with `s` key)\n- Display modes: compact (collapse `[key:value]` metadata), full, and wrap\n- Configurable timestamp display (seconds, milliseconds, or hidden)\n- Persistent configuration\n- Help system\n- Auto-update on startup (via gh CLI)\n- AI integration via Claude Code/Cursor skill installation (`oit skill install`)\n\n#### Trace Detection\n\nFind correlation IDs (UUIDs, trace IDs, etc.) that appear multiple times in your logs:\n\n- `:traces` - Scan logs for correlation IDs and show selection overlay\n- `Enter` - Select a trace to filter logs to only that trace\n- `[` / `]` - Expand trace view backward/forward in time (5 seconds per press)\n- `Esc` - Exit trace view and return to normal log display\n\nTraces are detected as tokens that:\n- Look like correlation IDs (UUIDs, long numbers, long hex strings, etc.)\n- Appear 3 or more times in the logs\n- Don't span the entire log buffer (those are likely config values)\n\nThis is useful for debugging request flows through multi-service architectures.\n\n#### Manual Trace Capture\n\nCapture logs during a specific time window without needing correlation IDs:\n\n- `s` - Start recording (status bar shows \"● REC\" with elapsed time)\n- `s` - Press again to stop recording and enter trace view with captured logs\n- `Esc` - Cancel recording (if pressed while recording) or exit trace view (after capture)\n- `[` / `]` - Expand time window backward/forward (same as auto-detected traces)\n\nThis is useful when you want to isolate logs for a specific action (like clicking a button or running a command) without needing correlation IDs in your logs.\n\n## Author\n\nCreated by [Jeremy Wells](https://github.com/jemmyw)\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faha-app%2Foveritall","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faha-app%2Foveritall","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faha-app%2Foveritall/lists"}