Presentation and settings
pi-web-agent keeps web tool output compact by default.
That is deliberate. Search results, fetches, and research summaries can get noisy fast, especially when the package is doing exactly what you asked and returning a lot of useful detail. The goal here is to keep the transcript readable first, while still letting you ask for more when you want it.
Before and after
Compact output is the default now, so normal research flows stay readable instead of turning into a wall of raw tool output.
| Before | After |
![]() | ![]() |
If you want more detail inline, switch modes in /web-agent settings instead of living with the noisy default.
The three presentation modes
Every web tool result is shaped into one visible mode at a time:
compact— the shortest useful summarypreview— a little more context, still boundedverbose— the fullest bounded view
The important part is that these are not stacked on top of each other.
If a tool result is shown in preview, you get the preview body instead of a compact summary plus extra text under it.
Default behavior
Out of the box, all tools use compact:
web_searchweb_fetchweb_fetch_headlessweb_explore
That keeps normal usage calm instead of turning every search or fetch into a transcript dump.
The fastest way to change it
Open the settings UI:
/web-agentThat is the shorthand. The explicit form is:
/web-agent settingsThese also work:
/web-agent settings
/web-agent show
/web-agent reset project
/web-agent reset global
/web-agent mode preview
/web-agent mode web_search verbose
/web-agent mode web_search inheritWhat /web-agent does
/web-agent and /web-agent settings both open the interactive settings UI.
From there you can:
- choose whether you are editing global or project settings
- change the default mode
- change per-tool overrides
- save, reset the current scope, or cancel
Keyboard shortcuts in the settings UI:
Ctrl+SsaveCtrl+Rreset current scopeEsccancel
Config files
Settings are stored in real JSON files.
Global config:
~/.pi/agent/extensions/pi-web-agent/config.jsonProject config:
.pi/extensions/pi-web-agent/config.jsonPrecedence
Effective behavior is resolved in this order:
- built-in defaults
- global config
- project config
Project config overrides global config.
That means you can keep a personal default and then override it inside one repo when you want different transcript behavior there.
How inheritance works
Per-tool overrides inherit from the current default mode unless you set them explicitly.
So if your default mode is preview and only web_explore is set to verbose, then:
web_searchusespreviewweb_fetchusespreviewweb_fetch_headlessusespreviewweb_exploreusesverbose
When you switch a tool back to inherit, the package removes that override instead of writing extra noise into the config file.
Example config
{
"presentation": {
"defaultMode": "compact",
"tools": {
"web_search": { "mode": "preview" },
"web_explore": { "mode": "verbose" }
}
}
}When to use each mode
A good practical rule:
- use
compactif you mostly want clean transcripts - use
previewif you want a little more inline context for discovery and fetches - use
verboseif you are actively inspecting tool output and do not mind a larger transcript
For most people, compact as the default plus a couple of per-tool overrides is probably the sweet spot.

