docs: clarify shell tool mode availability#2526
Conversation
There was a problem hiding this comment.
Code Review
This pull request updates the documentation in docs/MODES.md and docs/TOOL_SURFACE.md to detail tool availability across different execution modes (Plan, Agent, and YOLO). The feedback suggests centering the status columns in the markdown table to improve readability and making minor grammatical and terminology adjustments in the shell tools description for consistency.
| ### Tool availability by mode | ||
|
|
||
| | Tool family | Plan | Agent | YOLO | | ||
| |---|---:|---:|---:| |
There was a problem hiding this comment.
| Shell tools are part of the model-visible tool catalog only when shell access is | ||
| enabled for the active session or profile. In Agent mode that usually means | ||
| `allow_shell = true`; YOLO enables shell access automatically. Plan mode keeps | ||
| shell execution off. |
|
Thanks @cyq1017. I harvested this docs slice into #2504 for v0.8.50 triage as This is useful clarification for the shell-tool mode boundary in #2328. Local verification on the harvest branch:
|
Problem
Change
Verification
Refs #2328
Greptile Summary
This documentation-only PR adds a compact mode/tool-availability matrix to
docs/MODES.mdand a shell-access preamble todocs/TOOL_SURFACE.md, directly addressing the confusion reported in #2328 about shell tools being visible in YOLO but not Agent mode.docs/MODES.md: A new "Tool availability by mode" table maps five tool families across Plan / Agent / YOLO, followed by an explanatory paragraph that ties theallow_shellconfig key to catalog visibility and contrasts it with YOLO's automatic enablement.docs/TOOL_SURFACE.md: A four-line note is inserted above the Shell section explaining when shell tools appear in the model-visible catalog, referencingallow_shell = true, YOLO's automatic activation, and Plan mode's exclusion.Confidence Score: 5/5
Documentation-only change with no runtime code modified; safe to merge.
Both changed files are pure documentation. The matrix and prose accurately reflect the existing runtime behaviour described in the surrounding text. One minor omission (missing approval-gate label in the Shell/Agent cell) is called out but does not introduce incorrect information — the correct description remains visible immediately above the table.
No files require special attention; both changes are documentation additions.
Important Files Changed
Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD A[User requests shell tool] --> B{Active TUI mode?} B -->|Plan| C[Shell access OFF\nTool not in catalog] B -->|Agent| D{allow_shell = true?} B -->|YOLO| G[Shell access ON\nTrust mode ON\nAuto-approved] D -->|No| E[Shell tools absent\nfrom model catalog] D -->|Yes, via config/profile\nor runtime session| F[Shell tools in catalog\nApproval prompt per call]Reviews (2): Last reviewed commit: "docs: polish mode availability table" | Re-trigger Greptile