-
Notifications
You must be signed in to change notification settings - Fork 84
weekly-research workflow uses WebSearch despite only declaring web-fetch in tools #309
Copy link
Copy link
Open
Description
Summary
The weekly-research.md workflow only declares web-fetch: in its tools block, but at runtime on the Claude engine, WebSearch is implicitly available as a default tool. The model then calls WebSearch repeatedly — which works, but produces a report full of redacted URLs, undermining the value of a research workflow.
Per the gh-aw tools reference, web-search: requires explicit declaration for Codex but appears to be default-on for Claude. This means the workflow silently depends on engine-specific defaults rather than explicitly declaring its intent.
Observed behavior
- Workflow tools block declares only
web-fetch:(noweb-search:) - gh-aw correctly passes
--allowed-tools ...WebFetch...(noWebSearch) to the Claude CLI - Claude engine makes
WebSearchavailable anyway (default-on behavior) - Model calls
WebSearchmultiple times for research queries - Results contain redacted URLs — "safe" but defeats the purpose of a web research report
Suggestions
- Add
web-search:to the workflow's tools block — makes the intent explicit, ensures cross-engine compatibility (particularly Codex where it's off by default), and signals that the search results are expected to be useful (not redacted) - Address the redacted URL problem — a research workflow that searches the web but returns redacted URLs produces output that's hard to act on. If
web-search:is the intended tool, the results should include actionable links
Why this matters
- Sample workflows set the pattern for the community — implicit engine-specific defaults are confusing for anyone building their own workflows
- The workflow would silently break or degrade on Codex without
web-search:declared - Redacted URLs in a research report undermine the workflow's stated purpose
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels
Type
Fields
Give feedbackNo fields configured for issues without a type.