Systems Lab

Agent skill

intel-competitor-monitoring

Files-only competitor website monitoring for a shared B2BForce workspace.

activeReaches the webInstructions only990 words

Filed under Positioning and messaging.

From b2bforce/b2bforce · 29 skills · 2 · pushed 2026-08-21

What it does when it runs

Files-only competitor website monitoring for a shared B2BForce workspace. Use to maintain competitor profiles, monitored page lists, page snapshots, change notes, and weekly report inputs under workspace/intelligence/. Read firm profile first; for firm profile setup, see firm-context.

Read from the skill and the 1 file bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
  • www.example.com
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about intel-competitor-monitoring

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/b2bforce/b2bforce.git /tmp/b2bforce
git -C /tmp/b2bforce sparse-checkout set ".agents/skills/intel-competitor-monitoring"
mkdir -p ~/.claude/skills/intel-competitor-monitoring
cp -R "/tmp/b2bforce/.agents/skills/intel-competitor-monitoring/." ~/.claude/skills/intel-competitor-monitoring/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from b2bforce/b2bforce/blob/7682ed90c62190a0f3c09eb135596d08bd6890bc/.agents/skills/intel-competitor-monitoring/SKILL.md, which is licensed MIT (skill frontmatter). 990 words, 17 headings.

Competitor Monitoring

Files-only workflow for monitoring external companies/competitors in a shared repo. The source of truth is committed Markdown under workspace/.

There is no hidden runtime state. This makes the workflow easier to review, merge, and hand to another agent or teammate.

Read Firm Context First

Before adding or crawling competitors:

  1. Read workspace/firm/profile.md for firm scope, services, geography, and known competitors.
  2. Read existing competitor folders under workspace/intelligence/competitors/{slug}/.
  3. Write findings and weekly exports to workspace/intelligence/reports/.

When to Use

  • User asks for competitor monitoring, account tracking, or website change detection.
  • A competitor profile exists and pages should be crawled or refreshed.
  • Discovery produced candidate competitors and the user confirmed which ones to monitor.
  • Weekly report needs change artifacts to summarize.

Core Rules

Brand scope. Competitors stay shared in a multi-brand workspace — one profile per company, however many brands it competes with. !_profile.md declares brands: [...] and the "why it matters" section says why per brand. See the Brand Scope Gate in AGENTS.md.

  1. One competitor = one folder: workspace/intelligence/competitors/{slug}/.
  2. Homepage is monitored by default when a competitor is added.
  3. Discovered subpages default to monitor: false; the user must approve them before recurring crawls.
  4. First crawl stores a baseline snapshot only. It must not create a business change alert.
  5. Every later crawl compares against the latest previous snapshot for the same page slug.
  6. Significant changes are written as Markdown change artifacts; minor/noisy changes may be omitted or marked significance: minor.
  7. Never invent changes. If scraping fails or content is incomplete, write a crawl note with status: error instead of summarizing guessed differences.

File Layout

Use the structure documented in references/file-layout.md:

workspace/intelligence/competitors/{slug}/
├── !_profile.md
├── pages.md
├── notes.md
├── snapshots/
│   └── {page-slug}/
│       └── {YYYY-MM-DDTHHMMSSZ}.md
└── changes/
    └── {YYYY-MM-DDTHHMMSSZ}--{page-slug}.md

Weekly reports stay outside competitor folders:

workspace/intelligence/reports/{YYYY-MM-DD}-{slug}-weekly.md

Workflow

1. Ensure competitor profile

Create or update:

workspace/intelligence/competitors/{slug}/!_profile.md

Required frontmatter:

---
name: Example Competitor
website_url: https://www.example.com/
root_domain: example.com
company_type: competitor
monitoring_enabled: true
monitoring_frequency: weekly
source: manual
created: 2026-06-06
updated: 2026-06-06
---

If the competitor came from discovery, include the discovery phrase and reason in the body. Do not mirror this into hidden JSON.

2. Ensure page index

Create or update:

workspace/intelligence/competitors/{slug}/pages.md

Use a table:

# Monitored Pages

| Page slug | URL | Monitor | Priority | Source | Last crawled | Notes |
|-----------|-----|---------|----------|--------|--------------|-------|
| homepage | https://www.example.com/ | true | high | manual |  | Baseline page |

Rules:

  • Page slug must be stable kebab-case.
  • Homepage row is required and starts with Monitor=true.
  • Discovered pages are appended with Monitor=false.
  • Do not delete old page rows automatically; mark in notes if removed or broken.

3. Discover pages

Use sitemap, current agent/browser, or tool-firecrawl if configured.

Write discovered candidates by appending rows to pages.md with Monitor=false. Keep the list short and useful:

  • service pages,
  • pricing/offer pages,
  • case studies,
  • resources/blog pages that reveal positioning,
  • team/about pages if hiring or leadership changes matter.

Avoid adding every blog post. For most firms, 5-20 monitored candidates is enough.

4. Crawl enabled pages

For each row with Monitor=true:

  1. Fetch clean page content.
  2. Normalize obvious noise: whitespace, tracking parameters, cookie banners, repeated nav/footer text when possible.
  3. Compute a content hash if the agent/tool can do so. If not, use the snapshot timestamp and content body as evidence.
  4. Write a snapshot: snapshots/{page-slug}/{YYYY-MM-DDTHHMMSSZ}.md

Snapshot frontmatter:

---
page_slug: homepage
url: https://www.example.com/
crawled_at: 2026-06-06T12:00:00Z
status: success
content_hash: optional-hash
word_count: 1234
source_tool: current-agent
---

Body: cleaned Markdown page content, truncated only if the page is too large. If truncated, say exactly where.

5. Compare with previous snapshot

Find the latest older snapshot for the same page slug.

  • If none exists: baseline only, no change artifact.
  • If the new content is equivalent after normalization: no change artifact.
  • If changed: write a change artifact: changes/{YYYY-MM-DDTHHMMSSZ}--{page-slug}.md

Change artifact frontmatter:

---
page_slug: homepage
url: https://www.example.com/
previous_snapshot: snapshots/homepage/2026-06-01T120000Z.md
current_snapshot: snapshots/homepage/2026-06-06T120000Z.md
changed_at: 2026-06-06T12:00:00Z
change_type: messaging
significance: significant
---

Body sections:

  1. ## Business Summary - 2-3 sentences.
  2. ## What Changed - concrete observed changes.
  3. ## Why It Matters - implications for the firm.
  4. ## Evidence - short excerpts or bullet references to the snapshots.

Significance Rules

Mark significance: minor for:

  • typo/formatting/copyright-year changes,
  • cookie/banner/nav/footer noise,
  • minor date updates,
  • tracking or script changes,
  • tiny wording changes with no commercial implication.

Mark significance: significant for:

  • new service, offer, package, or pricing signal,
  • changed positioning or ICP language,
  • new case study/client proof,
  • hiring/leadership/partnership change,
  • page removal or major information removal,
  • new campaign, event, resource, or productized service relevant to the firm.

If uncertain, mark significance: review and explain what a human should check.

Scheduling

This skill does not require a built-in scheduler. For a shared repo, prefer one responsible person or automation runner to perform recurring crawls and commit the resulting files.

Recommended cadence:

Page priorityCadence
highweekly
normalmonthly
lowquarterly or manual

Avoid multiple people crawling the same competitor at the same time. Timestamped snapshot files reduce merge conflicts, but duplicate snapshots create noisy history.

Testing Requirements

  1. Create one competitor folder with !_profile.md and pages.md.
  2. Crawl homepage once and write a baseline snapshot.
  3. Crawl the same page again and confirm either no change artifact or one changes/{timestamp}--homepage.md.
  4. Run intel-weekly-report against the change artifacts.

Reference Files

FileContent
references/file-layout.mdFolder structure and artifact rules

Related Skills

SkillWhen
firm-contextBefore setup - competitor list and firm scope
intel-competitor-discoverySERP-based competitor finding
intel-weekly-reportWeekly report generation from change files

Files bundled with it

These load only when the skill asks for them, so they cost nothing until it runs.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what intel-competitor-monitoring does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.