Conversation
Expands SerpApi coverage with workflow-focused skills for: Amazon, Apple App Store, Google Finance, Google Hotels, Google Jobs, Google Lens, Google Local, Google News, Google Patents, Google Scholar, Google Shopping, Google Trends, Google Videos, Instagram Profile, Walmart, and Yelp. Each skill depends on the foundational serpapi skill and follows the structure of existing serp-* skills. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit dc76190. Configure here.
| on the foundational serpapi skill for all API details. | ||
| dependencies: | ||
| - serpapi | ||
| metadata: {"openclaw": {"emoji": "📦"}} |
There was a problem hiding this comment.
Missing SerpApi env in metadata
Medium Severity
Each new specialized skill depends on serpapi, which needs SERPAPI_API_KEY, but the added frontmatter only sets emoji metadata and never declares that env var. OpenClaw can surface these skills as ready even when the key is missing, so the first wrapper call fails at runtime instead of upfront.
Additional Locations (2)
Triggered by learned rule: Specialized SKILL.md must declare requires.env for transitive API key dependencies
Reviewed by Cursor Bugbot for commit dc76190. Configure here.
| legal case law lookup. Use when: (1) searching academic papers by topic, keyword, or | ||
| author, (2) filtering results by publication year range, (3) finding papers that cite | ||
| a given paper (citation tracking), (4) discovering all versions of a paper via cluster | ||
| search, (5) looking up an author's profile, h-index, and publications, (6) building a |
There was a problem hiding this comment.
Undocumented
google_scholar_profiles engine
The Dependencies section declares five engines — google_scholar, google_scholar_author, google_scholar_cite, google_scholar_case_law, and google_scholar_profiles — but the body of the skill only explains four, and the Core Concepts table is explicitly titled "The Four Engines." The google_scholar_profiles engine (used to search for author profiles by name, distinct from google_scholar_author which fetches a specific profile by author_id) is never given a workflow, response structure, or usage guidance. An agent that sees the dependency declaration and tries to invoke this engine will have no parameters, no response shape, and no worked example to follow.
Prompt To Fix With AI
This is a comment left during a code review.
Path: Specialized/serp-google-scholar/SKILL.md
Line: 10
Comment:
**Undocumented `google_scholar_profiles` engine**
The `Dependencies` section declares five engines — `google_scholar`, `google_scholar_author`, `google_scholar_cite`, `google_scholar_case_law`, and `google_scholar_profiles` — but the body of the skill only explains four, and the Core Concepts table is explicitly titled "The Four Engines." The `google_scholar_profiles` engine (used to search for author profiles by name, distinct from `google_scholar_author` which fetches a specific profile by `author_id`) is never given a workflow, response structure, or usage guidance. An agent that sees the dependency declaration and tries to invoke this engine will have no parameters, no response shape, and no worked example to follow.
How can I resolve this? If you propose a fix, please make it concise.|
|
||
| ### Timezone (`tz`) | ||
|
|
||
| Minutes offset from UTC, range `-1439` to `1439`. Default `420` (PDT). Set this for accurate hourly/daily bucketing in the user's locale. |
There was a problem hiding this comment.
The timezone description says "Minutes offset from UTC" but the sign convention used is minutes west of UTC (positive = behind UTC), which is the opposite of the familiar ISO standard where UTC-5 would be -300. This inverted convention is how Google Trends'
tz parameter actually works, but the label alone is misleading enough to cause off-by-sign errors. Clarifying the direction (e.g., "Minutes behind UTC / west of UTC") prevents agents from supplying the wrong sign for their timezone.
| Minutes offset from UTC, range `-1439` to `1439`. Default `420` (PDT). Set this for accurate hourly/daily bucketing in the user's locale. | |
| Minutes **behind** UTC (west of UTC), range `-1439` to `1439`. Positive = hours behind UTC (west); negative = hours ahead of UTC (east). Default `420` (PDT, UTC-7). Set this for accurate hourly/daily bucketing in the user's locale. |
Prompt To Fix With AI
This is a comment left during a code review.
Path: Specialized/serp-google-trends/SKILL.md
Line: 138
Comment:
The timezone description says "Minutes offset from UTC" but the sign convention used is **minutes west of UTC** (positive = behind UTC), which is the opposite of the familiar ISO standard where UTC-5 would be -300. This inverted convention is how Google Trends' `tz` parameter actually works, but the label alone is misleading enough to cause off-by-sign errors. Clarifying the direction (e.g., "Minutes behind UTC / west of UTC") prevents agents from supplying the wrong sign for their timezone.
```suggestion
Minutes **behind** UTC (west of UTC), range `-1439` to `1439`. Positive = hours behind UTC (west); negative = hours ahead of UTC (east). Default `420` (PDT, UTC-7). Set this for accurate hourly/daily bucketing in the user's locale.
```
How can I resolve this? If you propose a fix, please make it concise.| | `gl` | Market | `hl` Example | | ||
| |------|--------|--------------| | ||
| | `us` | United States | `en` | | ||
| | `uk` | United Kingdom | `en` | |
There was a problem hiding this comment.
The localization table lists
uk as the gl value for the United Kingdom, but Google's gl parameter uses ISO 3166-1 alpha-2 codes and the correct code is gb (Great Britain). Other skills added in the same PR use gb correctly (e.g. serp-google-local lists gb in its gl description). Passing gl=uk instead of gl=gb may silently fall back to a default locale or return unexpected results.
| | `uk` | United Kingdom | `en` | | |
| | `gb` | United Kingdom | `en` | |
Prompt To Fix With AI
This is a comment left during a code review.
Path: Specialized/serp-google-shopping/SKILL.md
Line: 89
Comment:
The localization table lists `uk` as the `gl` value for the United Kingdom, but Google's `gl` parameter uses ISO 3166-1 alpha-2 codes and the correct code is `gb` (Great Britain). Other skills added in the same PR use `gb` correctly (e.g. `serp-google-local` lists `gb` in its `gl` description). Passing `gl=uk` instead of `gl=gb` may silently fall back to a default locale or return unexpected results.
```suggestion
| `gb` | United Kingdom | `en` |
```
How can I resolve this? If you propose a fix, please make it concise.

Summary
serp-*skills (frontmatter, Dependencies, Core Concepts, Workflows, Common Patterns, Tips).serpapiskill — wrapper script usage is not redefined.New skills: Amazon, Apple App Store, Google Finance, Google Hotels, Google Jobs, Google Lens, Google Local, Google News, Google Patents, Google Scholar, Google Shopping, Google Trends, Google Videos, Instagram Profile, Walmart, Yelp.
Test plan
serp-google-flights/serp-opentable-reviewspatterns.serp-google-hotelsproperty_token,serp-google-newstopic_token,serp-google-jobschips filters).serpapiand reference it for wrapper-script usage rather than duplicating.🤖 Generated with Claude Code
Note
Low Risk
Documentation-only additions under
Specialized/; no application logic, auth, or API client changes—review risk is accuracy of SerpApi parameters in the markdown.Overview
Adds 16 new
Specialized/serp-*/SKILL.mdplaybooks (Amazon, Apple App Store, Google Finance/Hotels/Jobs/Lens/Local/News/Patents/Scholar/Shopping/Trends, plus Google Videos, Instagram Profile, Walmart, and Yelp per the PR description), expanding SerpApi specialized coverage from 7 → 23 skills.Each file is new documentation only: YAML frontmatter (
name,display_name,description,dependencies: [serpapi], OpenClaw emoji metadata) and long-form workflow guides—Core Concepts, step-by-step Workflows, Common Patterns, presentation templates, and Tips—without redefining the shared SerpApi wrapper (delegated to the foundationalserpapiskill).Domain-specific guidance emphasizes real API mechanics agents must get right: token-driven flows (
property_token,topic_token/story_token,udsvs deprecatedchips/ltype), multi-engine chains (e.g. Amazonamazon→amazon_product, Shopping →google_immersive_product), and guardrails (useextracted_*for math, don’t invent filter hashes, sponsored vs organic).Reviewed by Cursor Bugbot for commit dc76190. Bugbot is set up for automated code reviews on this repo. Configure here.
Note
Add 16 new SerpApi specialized skill documentation files
Adds
SKILL.mddocumentation files for 16 new SerpApi-specialized skills covering a wide range of search verticals and platforms. Each file defines skill metadata, engine usage, response structures, parameters, and step-by-step workflows.serpapiskill and provides engine-specific parameters, response field references, pagination patterns, and localization guidanceMacroscope summarized dc76190.
Greptile Summary
This PR adds 16 new SerpApi-specialized SKILL.md files covering Amazon, Apple App Store, Google Finance, Hotels, Jobs, Lens, Local, News, Patents, Scholar, Shopping, Trends, Videos, Instagram, Walmart, and Yelp. All skills correctly declare
serpapias a dependency and follow the established pattern of the existingserp-google-flightsandserp-opentable-reviewsskills.serp-google-scholardeclares five engines in its frontmatter (includinggoogle_scholar_profiles) but only documents four — the profiles engine has no workflow, response structure, or parameters in the body.serp-google-shoppingusesgl=ukfor United Kingdom, but the correct ISO 3166-1 alpha-2 code isgl=gb;serp-google-trendsdescribes timezone offsets in a way that inverts the standard sign convention without flagging that positive values mean behind UTC.Confidence Score: 3/5
Safe to merge with minor fixes — one engine is declared but completely undocumented, and two small parameter/localization errors should be corrected before agents rely on these skills.
13 of 16 skills are clean and well-structured. The P1 on serp-google-scholar (google_scholar_profiles engine declared in frontmatter dependencies but not documented anywhere in the body) would cause agents to fail silently when attempting profile searches. Two P2 issues (gl=uk vs gl=gb for UK localization, and the inverted timezone sign convention in google_trends) are incorrect but non-blocking for most use cases.
Specialized/serp-google-scholar/SKILL.md (missing engine docs), Specialized/serp-google-shopping/SKILL.md (wrong country code), Specialized/serp-google-trends/SKILL.md (ambiguous timezone convention)
Important Files Changed
typeparameter, public-URL restriction, andauto_cropguidance are all accurately documented.gl=ukfor the UK market where the correct ISO code isgb; inconsistent with serp-google-local in the same PR.Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD subgraph Foundation serpapi["serpapi\n(wrapper script + API reference)"] end subgraph "16 New Specialized Skills" amazon["serp-amazon\namazon + amazon_product"] appstore["serp-apple-app-store\napple_app_store + apple_product\n+ apple_reviews"] finance["serp-google-finance\ngoogle_finance + google_finance_markets"] hotels["serp-google-hotels\ngoogle_hotels + photos\n+ reviews + autocomplete"] jobs["serp-google-jobs\ngoogle_jobs"] lens["serp-google-lens\ngoogle_lens + google_reverse_image"] local["serp-google-local\ngoogle_local + google_local_services"] news["serp-google-news\ngoogle_news"] patents["serp-google-patents\ngoogle_patents + google_patents_details"] scholar["serp-google-scholar\ngoogle_scholar + scholar_author\n+ scholar_cite + scholar_case_law\n+ scholar_profiles ⚠️"] shopping["serp-google-shopping\ngoogle_shopping + google_immersive_product"] trends["serp-google-trends\ngoogle_trends + google_trends_trending_now"] videos["serp-google-videos\ngoogle_videos + google_short_videos\n+ google_videos_light"] instagram["serp-instagram-profile\ninstagram_profile"] walmart["serp-walmart\nwalmart + walmart_product\n+ walmart_product_reviews"] yelp["serp-yelp\nyelp + yelp_place + yelp_reviews"] end serpapi --> amazon serpapi --> appstore serpapi --> finance serpapi --> hotels serpapi --> jobs serpapi --> lens serpapi --> local serpapi --> news serpapi --> patents serpapi --> scholar serpapi --> shopping serpapi --> trends serpapi --> videos serpapi --> instagram serpapi --> walmart serpapi --> yelp videos -. "also depends on" .-> youtube["serpapi-youtube\n(existing skill)"]Prompt To Fix All With AI
Reviews (1): Last reviewed commit: "Add 16 new SerpApi specialized skills" | Re-trigger Greptile