🔍 WebSense AI

Smart Web Change Monitoring — User Guide

v1.7.0

Quick Start

Get your first monitor running in under 60 seconds.

Navigate to the Target Page

Open the webpage containing the element you want to monitor (e.g., a product price, stock status, or news headline).

Open WebSense AI

Click the WebSense AI icon 🔍 in your browser toolbar to open the popup panel.

Click "+ Monitor This Page"

A selection bar will appear at the top of the page. The page enters element selection mode.

Click the Element You Want to Track

Hover over elements — they'll highlight in blue. Click to select. A confirmation toast will appear at the bottom-right. You can continue selecting more elements or click "✓ Done" / press Esc to exit.

Done — Monitoring Starts Automatically

The extension will check your selected element at the configured interval and notify you when meaningful changes are detected.

💡 Tip: WebSense AI automatically detects whether a page is static or dynamically rendered (React, Vue, Next.js, etc.) and uses the optimal extraction method.

Operations Guide

Managing and interacting with your monitors.

Monitor List (Main View)

The main panel shows all your monitors. Each card displays the monitor name, URL, status (active / paused), last check time, and change count.

ActionHow
Check NowClick the 🔄 button on a monitor card to trigger an immediate check. A page toast shows the result.
View ChangesClick the monitor name or change count to see the full change history with before/after comparison and AI summaries.
Edit MonitorClick the ✏️ (Edit) button to change the name, check interval, or view the CSS selector and page type.
Pause / ResumeClick the ⏸ button to pause a monitor. Click again to resume. Paused monitors skip all scheduled checks.
Delete MonitorClick the 🗑 button. A confirmation dialog will appear before deletion. This also removes the change history.

Edit Monitor

In the edit view, you can customize:

FieldDescription
NameA human-readable label for the monitor (auto-generated on creation, editable anytime).
Check IntervalOverride the global interval for this specific monitor. Options range from 5 min (Pro) to 24 hours. Select "Use global setting" to follow the default.
Page TypeShows whether the page is Static (fast HTML fetch) or Dynamic (background tab rendering). Auto-detected; cannot be changed manually.
CSS SelectorThe CSS selector used to locate the monitored element. Auto-generated during selection; read-only.

Change History

Each change entry shows the timestamp, AI-generated summary, change type badge (price / content / status), magnitude (minor / moderate / major), and the full before/after text content.

Badge & Notifications

When a meaningful change is detected, the extension icon shows a red badge with the unread count. Opening the popup clears the badge. Desktop notifications appear in real time if enabled.

Settings

Configure global behaviors, API keys, and notification channels.

Default Check Interval

Sets the baseline check frequency for all monitors that haven't overridden the interval. Free plan minimum is 60 minutes; Pro allows down to 5 minutes. Options: 15 min, 30 min, 1 hour, 6 hours, 24 hours.

🔑 OpenAI API Key (Optional)

Without a key, you get 100 free AI-powered change analyses per month using a built-in quota. Paste your own sk-... key from platform.openai.com for unlimited analyses. The key is stored locally in the extension and never sent anywhere except OpenAI.

📊 AI Usage This Month

A progress bar showing how many of your 100 free AI analyses have been used this month. Resets on the 1st of each month. Displays "unlimited" if an API key is set.

🔔 Desktop Notifications

Toggle Chrome desktop push notifications on or off. When enabled, each meaningful change triggers a system-level notification. Click the notification to jump to the monitored page.

🌐 Webhook Notifications (Optional)

Send change alerts to external platforms. Select a platform (Slack, Discord, DingTalk, Feishu, WeCom, or Custom), paste the webhook URL, and click "Test Webhook" to verify. See the Webhook Setup section below for detailed per-platform instructions.

📧 Email Notifications (Coming Soon)

Email alerts are planned for a future release. In the meantime, use Webhook notifications to push alerts to your preferred channel.

Webhook Setup

Step-by-step instructions for each supported platform.

💬 Slack Slack

Create a Slack App

Go to api.slack.com/apps → Click "Create New App" → Choose "From scratch" → Name it (e.g., "WebSense AI") and select your workspace.

Enable Incoming Webhooks

In the app settings sidebar, click "Incoming Webhooks" → Toggle it ON.

Add a Webhook to a Channel

Scroll down and click "Add New Webhook to Workspace" → Select the channel where you want to receive alerts → Click "Allow".

Copy the Webhook URL

You'll see a URL like:

https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX

Paste this URL into WebSense AI Settings → Webhook URL, select "Slack" as the platform, and click "Test Webhook".

💡 Tip: You can create multiple webhook URLs for different channels. The Slack App stays the same.

🎮 Discord Discord

Open Server Settings

Right-click your server name → "Server Settings" (you need Manage Webhooks permission).

Go to Integrations

In the sidebar, click "Integrations" → Click "Webhooks".

Create a Webhook

Click "New Webhook" → Name it (e.g., "WebSense AI") → Select the target channel from the dropdown → Optionally upload an avatar.

Copy the Webhook URL

Click "Copy Webhook URL". The URL looks like:

https://discord.com/api/webhooks/000000000000000000/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Paste this URL into WebSense AI Settings → Webhook URL, select "Discord", and test.

💡 Tip: Discord webhooks support rich embeds. WebSense AI automatically sends color-coded embeds based on change severity (red = major, orange = moderate, blue = minor).

🔵 DingTalk (钉钉) DingTalk

Open a DingTalk Group

Open the group chat where you want to receive alerts. Click the group settings icon (⚙️) in the top-right corner.

Add a Custom Robot

Click "Smart Assistant" (智能群助手)"Add Robot" (添加机器人) → Select "Custom (via Webhook)".

Configure Security Settings

Name the robot (e.g., "WebSense AI"). Under security settings, you may choose "Custom Keywords" and add a keyword like "WebSense" or "Change Detected". Click "Finish".

Copy the Webhook URL

The URL looks like:

https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Paste into WebSense AI Settings, select "DingTalk", and test.

⚠️ Note: If you enabled "Custom Keywords" security, make sure WebSense AI's notification messages contain that keyword. The default notifications include "WebSense" in the content.

🟦 Feishu (飞书) Feishu

Open a Feishu Group

Open the group chat. Click the group name at the top to enter group settings.

Add a Custom Bot

Click "Bots" (群机器人)"Add Bot" (添加机器人) → Select "Custom Bot" (自定义机器人).

Set Bot Details

Enter a name (e.g., "WebSense AI") and an optional description. You can optionally enable Signature Verification for added security.

Copy the Webhook URL

The URL looks like:

https://open.feishu.cn/open-apis/bot/v2/hook/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Paste into WebSense AI Settings, select "Feishu", and test.

💡 Tip: WebSense AI sends Feishu Interactive Cards with color-coded headers based on severity.

🟢 WeCom (企业微信) WeCom

Open a WeCom Group Chat

Open the group chat where you want alerts. Click the "..." menu in the top-right corner.

Add a Group Bot

Click "Add Group Bot" (添加群机器人)"Create a New Bot" (新建机器人).

Configure and Copy URL

Enter the bot name (e.g., "WebSense AI"). After creation, the webhook URL is displayed:

https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Paste into WebSense AI Settings, select "WeCom", and test.

⚙️ Custom Webhook (Generic JSON) Custom

For automation platforms like n8n, Make (Integromat), Zapier, IFTTT, or your own server, select "Custom". WebSense AI will send a POST request with Content-Type: application/json.

Payload format:

{
  "event": "change_detected",
  "timestamp": "2025-01-15T08:30:00.000Z",
  "monitor": {
    "name": "Product Price",
    "url": "https://example.com/product"
  },
  "change": {
    "summary": "Price dropped from $99 to $79",
    "type": "price",
    "magnitude": "major",
    "oldContent": "Previous content..."
  }
}
💡 For n8n: Create a Webhook node, copy the "Test URL" or "Production URL", and paste it as the Custom webhook URL in WebSense AI.
💡 For Zapier: Create a Zap with a "Webhooks by Zapier" trigger (Catch Hook), copy the provided webhook URL, and paste it into WebSense AI.
💡 For Make: Add a "Webhooks" → "Custom Webhook" module, click "Add" to generate a URL, and paste it into WebSense AI.

Testing Your Webhook

After pasting the URL and selecting the platform, click "Test Webhook" in settings. A test message will be sent. If it succeeds, you'll see a ✅ confirmation. If it fails, check that the URL is correct and the receiving service is properly configured.

Plans & Limits

Understanding Free and Pro tiers.

FeatureFreePro (coming soon)
Max monitors1050
Min check interval60 minutes5 minutes
Change history per monitor50 entries200 entries
AI analyses / month100 (or unlimited with own API key)1,000 (or unlimited with own API key)
Webhook notifications
Desktop notifications

FAQ

Commonly asked questions.

Does monitoring work when the browser is closed?

No. WebSense AI runs as a browser extension and requires Chrome to be open. A notice bar in the popup reminds you of this. If you need 24/7 monitoring, keep the browser running or use a cloud-based monitoring service alongside the extension.

Why are some changes not reported?

WebSense AI automatically filters trivial changes like timestamps, counters, session tokens, and "X minutes ago" text. This is by design to reduce noise. If AI analysis is available, it further evaluates whether a change is meaningful before sending a notification.

What is a "Dynamic page"?

A dynamic page is one where the content is rendered by JavaScript (e.g., React, Vue, Angular apps). WebSense AI detects this automatically and uses a background tab rendering strategy to ensure accurate content extraction from these pages.

Is my OpenAI API key safe?

Yes. Your key is stored locally in Chrome's extension storage and is only ever sent directly to OpenAI's API endpoint. It is never transmitted to any other server.

Can I monitor pages that require login?

Yes, as long as you are logged in within Chrome. The extension uses your existing browser session and cookies when fetching pages. For dynamic pages, it opens a background tab using your session context.