seer-ai 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,45 @@
1
+ name: Build & Publish to PyPI
2
+
3
+ on:
4
+ release:
5
+ types: [published]
6
+
7
+ jobs:
8
+ build:
9
+ runs-on: ubuntu-latest
10
+
11
+ steps:
12
+ - uses: actions/checkout@v4
13
+
14
+ - name: Install uv
15
+ uses: astral-sh/setup-uv@v5
16
+
17
+ - name: Build sdist and wheel
18
+ run: uv build
19
+
20
+ - name: Upload dist artifacts
21
+ uses: actions/upload-artifact@v4
22
+ with:
23
+ name: dist
24
+ path: dist/
25
+
26
+ publish:
27
+ needs: build
28
+ runs-on: ubuntu-latest
29
+
30
+ environment:
31
+ name: pypi
32
+ url: https://pypi.org/project/seer-ai/
33
+
34
+ permissions:
35
+ id-token: write # required for Trusted Publishing (OIDC)
36
+
37
+ steps:
38
+ - name: Download dist artifacts
39
+ uses: actions/download-artifact@v4
40
+ with:
41
+ name: dist
42
+ path: dist/
43
+
44
+ - name: Publish to PyPI
45
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,7 @@
1
+ .venv/
2
+ __pycache__/
3
+ *.pyc
4
+ *.pyo
5
+ dist/
6
+ *.egg-info/
7
+ .vscode/
seer_ai-1.0.0/PKG-INFO ADDED
@@ -0,0 +1,246 @@
1
+ Metadata-Version: 2.4
2
+ Name: seer-ai
3
+ Version: 1.0.0
4
+ Summary: SEER - Shell Enhanced Execution & Reasoning
5
+ Project-URL: Homepage, https://github.com/zeddius1983/seer
6
+ Project-URL: Repository, https://github.com/zeddius1983/seer
7
+ Project-URL: Issues, https://github.com/zeddius1983/seer/issues
8
+ License: MIT
9
+ Keywords: ai,assistant,llm,shell,terminal
10
+ Classifier: Development Status :: 5 - Production/Stable
11
+ Classifier: Environment :: Console
12
+ Classifier: Intended Audience :: Developers
13
+ Classifier: Intended Audience :: System Administrators
14
+ Classifier: License :: OSI Approved :: MIT License
15
+ Classifier: Programming Language :: Python :: 3
16
+ Classifier: Topic :: System :: Shells
17
+ Classifier: Topic :: Utilities
18
+ Requires-Python: >=3.9
19
+ Requires-Dist: click>=8.0
20
+ Requires-Dist: httpx>=0.24
21
+ Requires-Dist: pyyaml>=6.0
22
+ Requires-Dist: rich>=13.0
23
+ Description-Content-Type: text/markdown
24
+
25
+ # SEER - Shell Enhanced Execution & Reasoning
26
+
27
+ ![Built with AI assistance](https://img.shields.io/badge/Built%20with-AI%20assistance-blueviolet?logo=openai&logoColor=white)
28
+
29
+ LLM-powered assistant for your terminal. Get contextual help from your local or cloud LLM based on what just happened in your shell — errors, failed commands, unexpected output.
30
+
31
+ Inspired by [PEEL](https://github.com/lemonade-sdk/peel) for PowerShell.
32
+
33
+ **Supported platforms:** macOS, Linux
34
+ **Supported shells:** zsh, bash
35
+
36
+ ```
37
+ $ git pull-request
38
+ git: 'pull-request' is not a git command. See 'git --help'.
39
+
40
+ $ seer help
41
+ The command `git pull-request` is not valid. Use `git pull` to fetch and
42
+ merge, or install the `gh` CLI and run `gh pr create` to open a pull request.
43
+ ```
44
+
45
+ ---
46
+
47
+ ## How it works
48
+
49
+ Shell hooks (`PROMPT_COMMAND` / `precmd`) save your terminal's scrollback after every command. When you run `seer help`, the saved context is sent to your LLM of choice. No copy-pasting, no switching windows.
50
+
51
+ With tmux, the full screen output (including stderr) is captured. Without tmux, the last command and exit code are saved as fallback.
52
+
53
+ ---
54
+
55
+ ## Installation
56
+
57
+ ### Method 1: Installer (Recommended)
58
+
59
+ Run directly from GitHub — installs `seer`, sets up shell integration and implicit mode:
60
+
61
+ ```bash
62
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash
63
+ ```
64
+
65
+ `uv` is installed automatically if not already present. To install a specific version or branch:
66
+
67
+ ```bash
68
+ # By version tag
69
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version v1.1.0
70
+
71
+ # By branch
72
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version feature/v1.1.0
73
+ ```
74
+
75
+ `--version` accepts any git ref (tag, branch, or SHA). It can be combined with other flags:
76
+
77
+ ```bash
78
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version v1.1.0 --all
79
+ ```
80
+
81
+ > **Note:** Whenever `~/.zshrc` is modified, a backup is created first as `~/.zshrc.YYYYMMDD_HHMMSS.bak`.
82
+
83
+ ### Method 2: Build from source
84
+
85
+ ```bash
86
+ git clone https://github.com/zeddius1983/seer
87
+ cd seer
88
+ uv tool install .
89
+ ```
90
+
91
+ ---
92
+
93
+ ## Uninstallation
94
+
95
+ If you installed via the **installer** (Method 1):
96
+ ```bash
97
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --uninstall
98
+ ```
99
+
100
+ ---
101
+
102
+ ## Usage
103
+
104
+ ### Implicit Mode (Ctrl+Space)
105
+
106
+ Implicit mode is installed automatically with seer. Type any question directly into your terminal and press `Ctrl+Space`:
107
+
108
+ ```bash
109
+ find the largest file in this folder[Press Ctrl+Space]
110
+ # Instantly expands and runs: seer find the largest file in this folder
111
+ ```
112
+
113
+ ### Standard Commands
114
+
115
+ ```bash
116
+ # Explain what just went wrong
117
+ seer help
118
+
119
+ # Ask anything shell-related
120
+ seer how to list all datasets in a ZFS pool
121
+ seer what does SIGKILL mean
122
+ seer how do I find which process is using port 8080
123
+
124
+ # Let seer do it — generates a command, shows it, asks before running
125
+ seer do find the largest file in ~/Downloads
126
+ seer do show disk usage by folder in /var
127
+ seer do list all listening ports
128
+
129
+ # Tip: quote the task if it contains apostrophes or special characters
130
+ seer do "show all files modified in the last week"
131
+ seer do "find the largest file and show it's size in MB"
132
+
133
+ # Pipe output directly (no shell hook needed)
134
+ kubectl get pods 2>&1 | seer
135
+ journalctl -xe | seer why is nginx failing
136
+
137
+ # Skip context, ask a clean question
138
+ seer --no-context explain the difference between hard and soft links
139
+
140
+ # Raw output — no glow or rich rendering
141
+ seer --raw how do I list open ports
142
+ seer -r help
143
+
144
+ # Use a specific provider or model for one query
145
+ seer -p anthropic help
146
+ seer -p openai -m gpt-4o how do I list listening ports
147
+ ```
148
+
149
+ ### Subcommands
150
+
151
+ | Command | Description |
152
+ |---|---|
153
+ | `seer help` | Analyse your last terminal output and explain errors |
154
+ | `seer do <task>` | Generate a shell command, preview it, confirm before running |
155
+ | `seer config` | Show the active config file, or create a default one |
156
+ | `seer --context` | Show the full system prompt and captured terminal context |
157
+ | `seer --stats` | Show provider, model, context size, and system info |
158
+
159
+ ### Flags
160
+
161
+ | Flag | Short | Description |
162
+ |---|---|---|
163
+ | `--no-context` | | Skip attaching terminal context |
164
+ | `--raw` | `-r` | Disable glow and rich rendering, stream plain text |
165
+ | `--provider <name>` | `-p` | Override the active provider for this query |
166
+ | `--model <name>` | `-m` | Override the model for this query |
167
+
168
+ ---
169
+
170
+ ## Configuration
171
+
172
+ Generate the default config file:
173
+ ```bash
174
+ seer config
175
+ ```
176
+
177
+ This creates `~/.config/seer/config.yaml`:
178
+
179
+ ```yaml
180
+ provider: lmstudio # active provider
181
+
182
+ providers:
183
+ lmstudio: # LM Studio (or any OpenAI-compatible local server)
184
+ type: openai
185
+ base_url: http://localhost:1234/v1
186
+ api_key: lmstudio
187
+ model: google/gemma-3-4b
188
+
189
+ ollama:
190
+ type: openai
191
+ base_url: http://localhost:11434/v1
192
+ api_key: ollama
193
+ model: llama3.2
194
+
195
+ openai:
196
+ type: openai
197
+ model: gpt-4o
198
+ api_key: sk-... # or set OPENAI_API_KEY env var
199
+
200
+ anthropic:
201
+ type: anthropic
202
+ model: claude-sonnet-4-6
203
+ api_key: sk-ant-... # or set ANTHROPIC_API_KEY env var
204
+
205
+ # Any OpenAI-compatible endpoint (vLLM, llama.cpp, etc.)
206
+ custom:
207
+ type: openai
208
+ base_url: http://myserver:8080/v1
209
+ api_key: none
210
+ model: my-model
211
+ ```
212
+
213
+ ---
214
+
215
+ ## Supported providers
216
+
217
+ | Provider | `type` | Notes |
218
+ |---|---|---|
219
+ | [LM Studio](https://lmstudio.ai) | `openai` | Default. Set `base_url: http://localhost:1234/v1` |
220
+ | [Ollama](https://ollama.com) | `openai` | Set `base_url: http://localhost:11434/v1` |
221
+ | [vLLM](https://github.com/vllm-project/vllm) | `openai` | Set `base_url: http://localhost:8000/v1` |
222
+ | [llama.cpp](https://github.com/ggerganov/llama.cpp) | `openai` | Set `base_url: http://localhost:8080/v1` |
223
+ | [OpenAI](https://platform.openai.com) | `openai` | Set `OPENAI_API_KEY` |
224
+ | [Anthropic](https://anthropic.com) | `anthropic` | Set `ANTHROPIC_API_KEY` |
225
+ | Any OpenAI-compatible endpoint | `openai` | Set `base_url` to your server |
226
+
227
+ ---
228
+
229
+ ## Development
230
+
231
+ ```bash
232
+ git clone https://github.com/zeddius1983/seer
233
+ cd seer
234
+
235
+ # Install dev environment
236
+ uv sync
237
+
238
+ # Run directly without installing
239
+ .venv/bin/seer --help
240
+
241
+ # Build a wheel
242
+ uv build
243
+ # → dist/seer-1.0.0-py3-none-any.whl
244
+ ```
245
+
246
+
@@ -0,0 +1,222 @@
1
+ # SEER - Shell Enhanced Execution & Reasoning
2
+
3
+ ![Built with AI assistance](https://img.shields.io/badge/Built%20with-AI%20assistance-blueviolet?logo=openai&logoColor=white)
4
+
5
+ LLM-powered assistant for your terminal. Get contextual help from your local or cloud LLM based on what just happened in your shell — errors, failed commands, unexpected output.
6
+
7
+ Inspired by [PEEL](https://github.com/lemonade-sdk/peel) for PowerShell.
8
+
9
+ **Supported platforms:** macOS, Linux
10
+ **Supported shells:** zsh, bash
11
+
12
+ ```
13
+ $ git pull-request
14
+ git: 'pull-request' is not a git command. See 'git --help'.
15
+
16
+ $ seer help
17
+ The command `git pull-request` is not valid. Use `git pull` to fetch and
18
+ merge, or install the `gh` CLI and run `gh pr create` to open a pull request.
19
+ ```
20
+
21
+ ---
22
+
23
+ ## How it works
24
+
25
+ Shell hooks (`PROMPT_COMMAND` / `precmd`) save your terminal's scrollback after every command. When you run `seer help`, the saved context is sent to your LLM of choice. No copy-pasting, no switching windows.
26
+
27
+ With tmux, the full screen output (including stderr) is captured. Without tmux, the last command and exit code are saved as fallback.
28
+
29
+ ---
30
+
31
+ ## Installation
32
+
33
+ ### Method 1: Installer (Recommended)
34
+
35
+ Run directly from GitHub — installs `seer`, sets up shell integration and implicit mode:
36
+
37
+ ```bash
38
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash
39
+ ```
40
+
41
+ `uv` is installed automatically if not already present. To install a specific version or branch:
42
+
43
+ ```bash
44
+ # By version tag
45
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version v1.1.0
46
+
47
+ # By branch
48
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version feature/v1.1.0
49
+ ```
50
+
51
+ `--version` accepts any git ref (tag, branch, or SHA). It can be combined with other flags:
52
+
53
+ ```bash
54
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --version v1.1.0 --all
55
+ ```
56
+
57
+ > **Note:** Whenever `~/.zshrc` is modified, a backup is created first as `~/.zshrc.YYYYMMDD_HHMMSS.bak`.
58
+
59
+ ### Method 2: Build from source
60
+
61
+ ```bash
62
+ git clone https://github.com/zeddius1983/seer
63
+ cd seer
64
+ uv tool install .
65
+ ```
66
+
67
+ ---
68
+
69
+ ## Uninstallation
70
+
71
+ If you installed via the **installer** (Method 1):
72
+ ```bash
73
+ curl -fsSL https://raw.githubusercontent.com/zeddius1983/seer/main/install.sh | bash -s -- --uninstall
74
+ ```
75
+
76
+ ---
77
+
78
+ ## Usage
79
+
80
+ ### Implicit Mode (Ctrl+Space)
81
+
82
+ Implicit mode is installed automatically with seer. Type any question directly into your terminal and press `Ctrl+Space`:
83
+
84
+ ```bash
85
+ find the largest file in this folder[Press Ctrl+Space]
86
+ # Instantly expands and runs: seer find the largest file in this folder
87
+ ```
88
+
89
+ ### Standard Commands
90
+
91
+ ```bash
92
+ # Explain what just went wrong
93
+ seer help
94
+
95
+ # Ask anything shell-related
96
+ seer how to list all datasets in a ZFS pool
97
+ seer what does SIGKILL mean
98
+ seer how do I find which process is using port 8080
99
+
100
+ # Let seer do it — generates a command, shows it, asks before running
101
+ seer do find the largest file in ~/Downloads
102
+ seer do show disk usage by folder in /var
103
+ seer do list all listening ports
104
+
105
+ # Tip: quote the task if it contains apostrophes or special characters
106
+ seer do "show all files modified in the last week"
107
+ seer do "find the largest file and show it's size in MB"
108
+
109
+ # Pipe output directly (no shell hook needed)
110
+ kubectl get pods 2>&1 | seer
111
+ journalctl -xe | seer why is nginx failing
112
+
113
+ # Skip context, ask a clean question
114
+ seer --no-context explain the difference between hard and soft links
115
+
116
+ # Raw output — no glow or rich rendering
117
+ seer --raw how do I list open ports
118
+ seer -r help
119
+
120
+ # Use a specific provider or model for one query
121
+ seer -p anthropic help
122
+ seer -p openai -m gpt-4o how do I list listening ports
123
+ ```
124
+
125
+ ### Subcommands
126
+
127
+ | Command | Description |
128
+ |---|---|
129
+ | `seer help` | Analyse your last terminal output and explain errors |
130
+ | `seer do <task>` | Generate a shell command, preview it, confirm before running |
131
+ | `seer config` | Show the active config file, or create a default one |
132
+ | `seer --context` | Show the full system prompt and captured terminal context |
133
+ | `seer --stats` | Show provider, model, context size, and system info |
134
+
135
+ ### Flags
136
+
137
+ | Flag | Short | Description |
138
+ |---|---|---|
139
+ | `--no-context` | | Skip attaching terminal context |
140
+ | `--raw` | `-r` | Disable glow and rich rendering, stream plain text |
141
+ | `--provider <name>` | `-p` | Override the active provider for this query |
142
+ | `--model <name>` | `-m` | Override the model for this query |
143
+
144
+ ---
145
+
146
+ ## Configuration
147
+
148
+ Generate the default config file:
149
+ ```bash
150
+ seer config
151
+ ```
152
+
153
+ This creates `~/.config/seer/config.yaml`:
154
+
155
+ ```yaml
156
+ provider: lmstudio # active provider
157
+
158
+ providers:
159
+ lmstudio: # LM Studio (or any OpenAI-compatible local server)
160
+ type: openai
161
+ base_url: http://localhost:1234/v1
162
+ api_key: lmstudio
163
+ model: google/gemma-3-4b
164
+
165
+ ollama:
166
+ type: openai
167
+ base_url: http://localhost:11434/v1
168
+ api_key: ollama
169
+ model: llama3.2
170
+
171
+ openai:
172
+ type: openai
173
+ model: gpt-4o
174
+ api_key: sk-... # or set OPENAI_API_KEY env var
175
+
176
+ anthropic:
177
+ type: anthropic
178
+ model: claude-sonnet-4-6
179
+ api_key: sk-ant-... # or set ANTHROPIC_API_KEY env var
180
+
181
+ # Any OpenAI-compatible endpoint (vLLM, llama.cpp, etc.)
182
+ custom:
183
+ type: openai
184
+ base_url: http://myserver:8080/v1
185
+ api_key: none
186
+ model: my-model
187
+ ```
188
+
189
+ ---
190
+
191
+ ## Supported providers
192
+
193
+ | Provider | `type` | Notes |
194
+ |---|---|---|
195
+ | [LM Studio](https://lmstudio.ai) | `openai` | Default. Set `base_url: http://localhost:1234/v1` |
196
+ | [Ollama](https://ollama.com) | `openai` | Set `base_url: http://localhost:11434/v1` |
197
+ | [vLLM](https://github.com/vllm-project/vllm) | `openai` | Set `base_url: http://localhost:8000/v1` |
198
+ | [llama.cpp](https://github.com/ggerganov/llama.cpp) | `openai` | Set `base_url: http://localhost:8080/v1` |
199
+ | [OpenAI](https://platform.openai.com) | `openai` | Set `OPENAI_API_KEY` |
200
+ | [Anthropic](https://anthropic.com) | `anthropic` | Set `ANTHROPIC_API_KEY` |
201
+ | Any OpenAI-compatible endpoint | `openai` | Set `base_url` to your server |
202
+
203
+ ---
204
+
205
+ ## Development
206
+
207
+ ```bash
208
+ git clone https://github.com/zeddius1983/seer
209
+ cd seer
210
+
211
+ # Install dev environment
212
+ uv sync
213
+
214
+ # Run directly without installing
215
+ .venv/bin/seer --help
216
+
217
+ # Build a wheel
218
+ uv build
219
+ # → dist/seer-1.0.0-py3-none-any.whl
220
+ ```
221
+
222
+
@@ -0,0 +1,141 @@
1
+ # SEER Roadmap
2
+
3
+ ---
4
+
5
+ ## v1.0.0 — Initial Release ✅
6
+
7
+ **Shell Integration**
8
+ - zsh and bash support via shell hooks (`precmd` / `PROMPT_COMMAND`)
9
+ - Implicit mode: type a question at the prompt and press `Ctrl+Space` to invoke seer
10
+ - Installer script with automatic `uv` setup and shell integration
11
+ - Uninstall / setup menu
12
+
13
+ **Context Capture**
14
+ - tmux pane capture (full scrollback, takes priority)
15
+ - Hook-based fallback: last command + exit code
16
+ - Shell history fallback
17
+ - Piped input support (`cmd 2>&1 | seer`)
18
+
19
+ **Error Analysis Mode (`seer help`)**
20
+ - Automatic error detection from terminal context
21
+ - System info auto-population (OS, CPU arch, shell, package managers)
22
+ - Responses tailored to the user's platform
23
+
24
+ **Command Generation Mode (`seer do`)**
25
+ - Natural language → shell command with syntax highlighting
26
+ - Safety warnings for destructive or privileged commands
27
+ - macOS vs Linux compatibility warnings
28
+ - Inline edit before execution (`e` key)
29
+ - Confirmation prompt (`[Y/n/e]`) before running
30
+
31
+ **Output Rendering**
32
+ - `glow` integration for rendered Markdown (host-side)
33
+ - `rich` Live streaming fallback
34
+ - `--raw` / `-r` flag for plain text output
35
+
36
+ **Multi-Provider Support**
37
+ - LM Studio (OpenAI-compatible, local)
38
+ - Ollama (OpenAI-compatible, local)
39
+ - OpenAI
40
+ - Anthropic
41
+ - Custom OpenAI-compatible endpoints
42
+
43
+ **Diagnostics**
44
+ - `seer info` — active provider, model, context stats, system specs
45
+ - `seer config` — print config path and contents
46
+
47
+ ---
48
+
49
+ ## v1.1.0 — Provider Autoconfig 🔜
50
+
51
+ Introduce `auto` as a valid value for both `provider` and `model`, removing the need for manual configuration on machines running local LLM servers.
52
+
53
+ **`provider: auto`**
54
+ - At startup, probe each configured provider in order
55
+ - Select the first provider that responds successfully
56
+ - Probe method: attempt to list models via the provider's API
57
+
58
+ **`model: auto`**
59
+ - When a provider's model is set to `auto`, query its model list endpoint
60
+ - Select the first available model returned
61
+
62
+ **Updated default config**
63
+ - Ships with llama.cpp, LM Studio, and Ollama pre-configured
64
+ - All three default to `model: auto`
65
+ - Top-level `provider` defaults to `auto`
66
+
67
+ ```yaml
68
+ provider: auto
69
+ context_lines: 100
70
+ providers:
71
+ llamacpp:
72
+ type: openai
73
+ base_url: http://127.0.0.1:8080/v1
74
+ api_key: llamacpp
75
+ model: auto
76
+ lmstudio:
77
+ type: openai
78
+ base_url: http://127.0.0.1:1234/v1
79
+ api_key: lmstudio
80
+ model: auto
81
+ ollama:
82
+ type: openai
83
+ base_url: http://localhost:11434/v1
84
+ api_key: ollama
85
+ model: auto
86
+ ```
87
+
88
+ ---
89
+
90
+ ## v1.2.0 — Brave Mode & Pipe-Aware Output 🔜
91
+
92
+ ### Brave Mode
93
+
94
+ An autonomous execution mode where seer plans the necessary commands, runs them, and returns an interpreted result — rather than suggesting a command for the user to run manually.
95
+
96
+ **Example:** `seer find the largest file here` → seer runs `find` + `du` + `sort`, captures output, and responds with a human-readable answer.
97
+
98
+ **Mode system**
99
+
100
+ A new top-level `mode` config key controls the default behaviour:
101
+
102
+ | Value | Behaviour |
103
+ |---|---|
104
+ | `default` | Current behaviour — suggest commands, never execute autonomously |
105
+ | `brave` | Always use brave mode — plan, execute, interpret |
106
+ | `auto` | seer infers the desired mode from the query (e.g. questions → brave, `do`-style tasks → default) |
107
+
108
+ ```yaml
109
+ mode: auto # default | brave | auto
110
+ ```
111
+
112
+ **Per-invocation override**
113
+
114
+ `--brave` / `-b` flag forces brave mode for a single query regardless of config:
115
+
116
+ ```
117
+ seer --brave find the largest file here
118
+ seer -b what is eating my disk space
119
+ ```
120
+
121
+ **Execution model**
122
+ - LLM receives the query and generates a plan (sequence of shell commands)
123
+ - seer executes each command and feeds stdout/stderr back to the LLM
124
+ - Before any write or destructive command, seer pauses and prompts for confirmation (`[Y/n/e]`)
125
+ - Read-only commands run without interruption
126
+ - LLM produces a final human-readable summary
127
+ - `--raw` / `-r` outputs plain text (no Markdown formatting)
128
+
129
+ ---
130
+
131
+ ### Pipe-Aware Output
132
+
133
+ When seer's stdout is not a TTY (i.e. the output is being piped), automatically switch to plain text mode:
134
+ - Disable glow and rich rendering
135
+ - Instruct the LLM to respond with factual, unformatted output suitable for further processing
136
+ - Applies to all modes, including brave mode
137
+
138
+ ```
139
+ seer what docker containers are running | grep local
140
+ seer --brave find the largest log file | xargs wc -l
141
+ ```