本文へ移動
cccskills
無料GitHub で公開

universal-web-adaptation

Use this skill when asked to work with an unfamiliar public website and the goal is to make progress generically before writing site-specific rules. It teaches Copilot how to probe controls, classify UI patterns, try multiple search and navigation strategies, follow popups, and only create a site profile when the generic approach is no longer sufficient.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md7.5 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Universal web adaptation skill

Use this skill when the user wants a general solution across many websites, not a one-by-one manual integration first.

This skill is especially suitable for:

  • unfamiliar public websites
  • search-oriented workflows
  • result-page collection and lightweight summaries
  • deciding whether a site needs a dedicated profile or can stay generic

For the 99idea Playwright project, this skill should work together with:

  • src\run-demo.js
  • src\planner.js
  • src\llm-planner.js
  • src\site-profiles.js
  • scenarios\site-profiles.json

Core principle

Always try this order:

  1. Capability discovery — check if opencli already supports the site (opencli list)
  2. Auth cascade — classify: PUBLIC → COOKIE/SESSION → HEADER → LOGIN-GATED
  3. Generic adaptation — probe UI controls and try heuristic strategies
  4. Temporary scenario tuning — adjust runtime before assuming selectors are wrong
  5. Popup / opener / alternate-submit handling
  6. Site profile only if generic adaptation still fails

The goal is to minimize per-site handwork.

Execution path decision (inspired by opencli)

Before touching the DOM, first determine which execution layer to use:

if opencli has an adapter for this site:
    use opencli (zero LLM cost, deterministic)
elif the site has a public API:
    use fetch (structured data, no rendering)
elif the site renders server-side (SSR):
    use web_fetch or Playwright (metadata extraction)
else:
    use Browser Agent with login-state or mark blocked

This avoids wasting time on SPA shells that will never yield results via scraping.

What “generic adaptation” means

When facing a new site, do not immediately create a profile. First try to discover:

  • likely search inputs
  • likely opener buttons or icons
  • likely submit controls
  • whether Enter works
  • whether a click opens a popup or new tab
  • whether the site verifies best by URL, title, or visible text

Standard workflow

1. Probe the page

Collect candidates for:

  • inputs
  • buttons
  • anchors
  • role=button
  • role=search

Prefer candidates whose metadata includes:

  • search
  • query
  • find
  • 搜索
  • 查找

For each candidate, record:

  • visibility
  • enabled/editable status
  • approximate position
  • container context
  • whether duplicates exist in header/footer/overlay regions

2. Classify the site UI

Put the site into one of these buckets:

  • direct-search: visible input plus obvious submit
  • opener-search: search exists but must be opened first
  • popup-search: submit opens a new tab or popup
  • duplicate-controls: multiple matching controls require container qualification
  • hidden-disabled: search exists but is not immediately usable
  • SPA-shell: page returns JS-only content, no usable DOM without full rendering
  • login-gated
  • anti-bot / rate-limited

Auth cascade classification (from opencli)

Also classify the site's auth requirements:

  • PUBLIC: no auth needed, fetch/web_fetch works
  • COOKIE: requires browser session cookies (opencli Browser Bridge)
  • HEADER: requires custom auth headers (API key, Bearer token)
  • LOGIN-GATED: requires interactive login, not suitable for default regression

3. Try generic action strategies

Try these in order:

  1. fill visible search input + press Enter
  2. fill visible search input + click nearest likely submit
  3. if search is hidden, click likely opener then retry 1 and 2
  4. if click or Enter opens a popup, switch to the popup and continue there
  5. verify success by:
    • URL change
    • expected URL parameter
    • title change
    • visible result container text

Prefer URL verification whenever available.

4. Use temporary runtime tuning before giving up

If the page is heavy or slow:

  • use waitUntil: "domcontentloaded"
  • use postNavigationLoadState: "domcontentloaded"
  • add a settle delay

Do not assume selectors are wrong if the real problem is heavy page load behavior.

5. Decide whether to keep it generic or create a profile

Stay generic if:

  • the search flow works with robust heuristic selectors
  • the same logic is likely reusable across many sites

Create a dedicated profile only if:

  • the site needs exact selectors to avoid ambiguity
  • the site has duplicate controls in multiple containers
  • the site needs a stable popup-specific submit selector
  • the site has a unique opener pattern worth remembering

Failure classification rules

Strict mode violation

Meaning:

  • your selector is too broad
  • multiple header/footer/overlay controls match

Response:

  • add container-qualified selectors
  • prefer the visible and nearest control to the active search region

Timeout waiting for visible/editable

Meaning:

  • the control is hidden
  • disabled
  • off-screen
  • not opened yet

Response:

  • find and click the opener
  • retry with a container-specific visible control

Enter does nothing

Meaning:

  • the page requires a dedicated submit control
  • or the form uses JS-driven submission

Response:

  • inspect nearest clickable sibling/container controls
  • test the likely submit node

Search opens a new tab/popup

Meaning:

  • current-page URL checks will fail

Response:

  • switch the active page to the popup
  • continue verification and screenshot on the popup page

Login / anti-bot / rate-limit

Meaning:

  • the site is not a good candidate for stable default regression

Response:

  • mark blocked or special
  • do not force it into the generic stable matrix

Output expectations

When using this skill, the agent should produce:

  1. execution path recommendation: opencli / fetch / browser — and why
  2. auth cascade classification: PUBLIC / COOKIE / HEADER / LOGIN-GATED
  3. the site UI classification
  4. the generic strategy attempted
  5. whether generic adaptation succeeded
  6. whether a site profile is actually needed
  7. the final stable selectors or blocker reason

Also include explicit evidence lines when possible:

  • URL before/after
  • title before/after
  • the selector used for input and submit
  • whether popup-following was required

Proven lessons from this environment

  • CNN needed container-qualified selectors to avoid duplicate q inputs.
  • Bilibili needed popup-following behavior because search opens search.bilibili.com in a new tab.
  • BBC exposes a hidden and disabled search input, so generic probing alone is not enough yet.
  • Tencent News shows a visible search button but no directly usable input in the default state.
  • GitHub works, but is a low-frequency special case because of rate limits.

When to combine with other skills

  • Use external-site-profile-learning when generic adaptation fails and a durable site profile is needed.
  • Use content-search-summarization when the goal is to search a content platform and summarize the top results.

Practical rule of thumb

If a new site can be made to work by:

  • picking the right visible input
  • picking the right nearby submit
  • following a popup
  • using URL verification

then keep it in the generic path first.

If success depends on an exact remembered selector or a unique UI ritual, then promote it into a site profile.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

<What it does, one line>. Trigger phrases: <phrases>.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

Use this skill whenever the user wants to create or improve a presentation for an academic context — conference papers, seminar talks, thesis defenses, grant briefings, lab meetings, invited lectures, or any presentation where the audience will evaluate reasoning and evidence. Triggers include: 'conference talk', 'seminar slides', 'thesis defense', 'research presentation', 'academic deck', 'academic presentation'. Also triggers when the user asks to 'make slides' in combination with academic content (e.g., 'make slides for my paper on X', 'create a presentation for my dissertation defense', 'build a deck for my grant proposal'). This skill governs CONTENT and STRUCTURE decisions. For the technical work of creating or editing the .pptx file itself, also read the pptx SKILL.md.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

adapt

無料

Shortest English alias for web-adapt / universal-web-adaptation. Use this when adapting an unfamiliar public website generically before creating any site-specific rules.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

Use this skill to audit CLI adapter projects (like opencli) for missing output fields, then batch-generate fixes and submit PRs. Turns AI agents into adapter quality reviewers.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

ads

無料

Operate professional paid advertising across Google, Meta, YouTube, LinkedIn, TikTok, Microsoft, Apple, Amazon, Reddit, Pinterest, Snapchat, and X. Use for account intake, source-grounded audits, strategy, budget and measurement planning, creative production, experiments, reporting, monitoring, and explicitly approved campaign changes. Also trigger on PPC, paid social, retail media, attribution, tracking, landing pages, cross-platform conversion totals, negative keywords or search terms, beta-feature scoring, stale platform claims, API-token or credential setup, campaign deletion, and safe Claude Ads installation or uninstall.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

Audit Amazon Ads profiles, regions, Sponsored Products, Sponsored Brands, Sponsored Display, DSP, portfolios, targeting, search terms, retail readiness, creative, budgets, ACOS, TACOS, reporting, and policy. Use for Amazon Ads, sponsored ads, Amazon PPC, ACOS, TACOS, ASIN advertising, Amazon DSP, or retail-media optimization.

日本語の概要は準備中です。原文の説明を表示しています。

gabrielmoreira/agent-skills-mirror192026年10月12日 更新

gabrielmoreira のスキルをすべて見る

このスキルの問題を報告する