How to Monitor Dependency Vulnerabilities with OpenClaw in Paradime
Monitor dependency vulnerabilities with OpenClaw in Paradime. AI scans your repos for outdated packages and known CVEs, then alerts your team.
Mar 18, 2026
Automate Dependency Vulnerability Scanning with Paradime, OpenClaw, and OSV/NVD APIs
Every open-source dependency you ship is a liability until you prove it's clean. Most data teams discover critical CVEs only after an incident—not before. This guide gives you a repeatable, outcome-driven workflow: measure → identify → fix → validate savings—wired into Paradime's Bolt scheduler and powered by an OpenClaw AI agent that scans your GitHub repos against the NVD and OSV vulnerability databases daily.
By the end of this walkthrough, you will have a fully operational pipeline that:
- Reads dependency files (
requirements.txt,package.json,packages.yml) from every repo in your GitHub org - Checks each package and version against the NIST NVD and Google OSV vulnerability databases
- Alerts your team on Slack whenever a Critical or High severity CVE is found
- Runs on a daily cron schedule via Paradime Bolt—zero manual babysitting
What Is Paradime?
Paradime is the all-in-one AI platform that replaces dbt Cloud™. It provides a dbt™-native workspace where analytics and data engineering teams code, ship, fix, and scale data pipelines—all from one place.
Key capabilities relevant to this guide:
Feature | What It Does |
|---|---|
Code IDE | AI-native IDE with DinoAI for dbt™ and Python development |
Bolt | Production scheduler for dbt™ orchestration, CI/CD, and custom jobs |
Radar | FinOps module for Snowflake/BigQuery cost reduction |
Environment Variables | Secure secrets management for Bolt schedules |
Bolt is the scheduling backbone of this workflow. It supports cron-based triggers, on-merge triggers, API triggers, and chained schedule triggers—all configurable as code via YAML or through the UI.
What Is OpenClaw?
OpenClaw is an open-source autonomous AI agent that runs on your own hardware and integrates with messaging platforms like Slack, WhatsApp, Telegram, Discord, and Microsoft Teams.
OpenClaw uses Skills—directories containing a SKILL.md file with YAML frontmatter and Markdown instructions—to teach the agent how to use tools. Skills can invoke bash commands, call APIs, and chain complex workflows.
Skills are configured in ~/.openclaw/openclaw.json:
The key advantage: OpenClaw agents can execute real commands on your infrastructure, making them ideal for automated security scanning workflows that need to call multiple APIs and parse structured data.
Architecture Overview
Before diving into the implementation, here's the end-to-end architecture:
Figure 1: End-to-end dependency vulnerability scanning workflow orchestrated by Paradime Bolt and executed by an OpenClaw agent.
Setup: openclaw-sdk + GitHub API + NVD/OSV API
Prerequisites
Tool | Version | Purpose |
|---|---|---|
OpenClaw | Latest ( | AI agent runtime |
Node.js | 18+ | OpenClaw runtime |
| System | API calls and JSON parsing |
GitHub PAT |
| Read dependency files from repos |
NVD API Key | Higher rate limits for NVD queries |
Step 1: Install OpenClaw
Verify the installation:
Step 2: Create the Skill Directory
Step 3: Obtain API Credentials
- GitHub Personal Access Token: Go to github.com/settings/tokens → Generate new token → Select
reposcope. - NVD API Key (optional but recommended for rate limits): Request at nvd.nist.gov.
- Slack Incoming Webhook: Create a Slack App → Enable Incoming Webhooks → Add to channel → Copy URL.
Environment Variables: GITHUB_TOKEN, OPENCLAW_API_KEY, SLACK_WEBHOOK_URL
Configure in OpenClaw
Add your credentials to ~/.openclaw/openclaw.json:
Configure in Paradime Bolt
For Bolt to trigger the OpenClaw agent, it needs the same secrets at the schedule level:
- Navigate to Settings → Workspaces → Environment Variables in Paradime
- In the Bolt Schedules section, click Add New
- Add each variable:
Variable Name | Value | Description |
|---|---|---|
|
| GitHub Personal Access Token |
|
| NIST NVD API key |
|
| Slack channel webhook |
Tip: You can override environment variables at the schedule level if you need different credentials per schedule—for example, scanning staging vs. production repos.
Figure 2: Environment variable precedence—schedule-level overrides take priority over global workspace values.
Script: Read Dependency Files, Check Vulnerability Databases, Alert on Critical/High CVEs
This is the core of the workflow. We'll build an OpenClaw skill that:
- Fetches dependency files from GitHub repos
- Parses package names and versions
- Queries OSV and NVD for known vulnerabilities
- Filters for Critical and High severity
- Sends a Slack alert
The SKILL.md File
Create ~/.openclaw/workspace/skills/vuln-scanner/SKILL.md:
The scan_deps.sh Script
Create ~/.openclaw/workspace/skills/vuln-scanner/scan_deps.sh:
Make the script executable:
The Measure → Identify → Fix → Validate Workflow
Figure 3: The repeatable Measure → Identify → Fix → Validate loop that runs every day via Bolt.
Each phase maps directly to the script:
Phase | What Happens | Script Output |
|---|---|---|
Measure | Enumerate repos, fetch dependency files, count packages |
|
Identify | Query OSV/NVD per package+version, match against known CVEs |
|
Fix | Filter for Critical/High, generate structured JSON report |
|
Validate | Send Slack alert, log metrics, confirm delivery |
|
Bolt Schedule: Cron Daily
Now wire the OpenClaw vulnerability scanner into Paradime Bolt so it runs automatically every day.
Option 1: Schedules as Code (YAML)
Add the following to your paradime_schedules.yml:
Verify the schedule configuration:
Perform a dry run:
Option 2: Bolt UI
- Navigate to Bolt in Paradime
- Click Create Schedule
- Configure:
- Click Deploy
Trigger Type Cheatsheet
Bolt supports four trigger types:
Trigger | When to Use | Example |
|---|---|---|
Scheduled Run | Fixed cadence (daily/hourly) |
|
On Run Completion | Chain after another schedule | Run vuln scan after |
On Merge | Scan on every merge to | Catch new dependencies immediately |
Bolt API | Trigger programmatically | Kick off scan from CI/CD pipeline |
Pro tip: For maximum coverage, combine a daily cron schedule with an On Merge trigger. The daily scan catches existing vulnerabilities; the on-merge scan catches new dependencies the moment they land.
Figure 4: Multiple trigger types feeding into a single Bolt schedule for comprehensive coverage.
Monitoring and Debugging
Once your schedule is live, Paradime provides rich observability tools to ensure your vulnerability scanner runs reliably.
Run Log History
Navigate to Bolt → Schedules → daily-dependency-vuln-scan → Run History to access:
- Execution Time History: A 30-day graphical view showing success/error rates, execution duration trends, and skipped runs
- Run History Table: Detailed list of all executions with Run ID, status (Success/Error/Skipped), trigger source, branch, timestamp, and duration
Analyzing Individual Runs
Click any Run ID to drill into:
Tab | What It Shows |
|---|---|
Summary | Completion status, duration, success metrics, warnings/errors, and suggested corrective actions |
Console Logs | Line-by-line command execution output—look for |
Debug Logs | In-depth technical details—system interactions, resource allocation, connection status |
Integration Logs | Payload sent to connected integrations (Slack, Jira, etc.) after the Bolt run completes |
Artifacts
Each run produces downloadable artifacts:
- Run SQL / Compiled SQL: Not applicable for this custom command, but available for dbt™ schedules
run_results.json: Execution outcomesmanifest.json: Project structure
Setting Up Alerts on Bolt Failures
If the scanner itself fails (network error, API rate limit, auth issue), configure Bolt notifications:
- In the schedule configuration, set Notifications → On Failure to your team's Slack channel or email
- This is separate from the vulnerability alerts—it monitors the health of the scanner itself
Figure 5: Dual notification strategy—the script alerts on vulnerabilities, Bolt alerts on scanner failures.
Troubleshooting Common Issues
1. GitHub API Rate Limiting
Symptom: 403 Forbidden or rate limit exceeded errors in Console Logs.
Fix:
- Ensure
GITHUB_TOKENis set correctly—authenticated requests get 5,000 requests/hour vs. 60 unauthenticated - If scanning 100+ repos with many dependency files, add pagination and backoff logic to the script
- Verify the token has
reposcope
2. NVD API Throttling
Symptom: Empty responses or 403 from NVD after ~5 requests.
Fix:
- Without an API key: 5 requests per 30-second window
- With an API key: 50 requests per 30-second window
- The script includes a
sleep 1between requests—increase tosleep 6if running without a key - Request a free NVD API key
3. OSV API Returns No Results
Symptom: {"vulns": []} for packages you know are vulnerable.
Fix:
- Ecosystem names are case-sensitive: use
PyPI(notpypi),npm(notNPM) - Ensure the version string is an exact match (e.g.,
3.1.3not>=3.1.0) - Test manually:
4. Slack Webhook Not Delivering
Symptom: Script says [VALIDATE] Slack alert sent successfully but no message in channel.
Fix:
- Verify the webhook URL is still active (Slack deactivates unused webhooks)
- Check the channel still exists and the Slack App is installed in it
- Test the webhook directly:
5. OpenClaw Skill Not Loading
Symptom: Agent doesn't recognize the vuln_scanner skill.
Fix:
- Verify the directory structure:
~/.openclaw/workspace/skills/vuln-scanner/SKILL.mdmust exist - Check that
namein YAML frontmatter matches what you're invoking - Restart the OpenClaw gateway or ask the agent to "refresh skills"
- Ensure
enabled: truein~/.openclaw/openclaw.jsonunderskills.entries.vuln-scanner
6. Environment Variables Not Available in Bolt
Symptom: GITHUB_TOKEN is required error when Bolt runs the schedule.
Fix:
- Environment variables must be created in Settings → Environment Variables → Bolt Schedules before they can be used
- Only Admin roles can add or override environment variables
- Schedule-level overrides take precedence over workspace-level values—check if an empty override is masking the global value
Quick Diagnostic Checklist
Figure 6: Step-by-step diagnostic flowchart for the most common failure modes.
Wrapping Up
You now have a production-grade dependency vulnerability scanner that:
✅ Measures — Enumerates every dependency across your GitHub org automatically✅ Identifies — Cross-references each package+version against both NVD and OSV databases✅ Fixes — Surfaces only Critical and High severity CVEs with actionable context✅ Validates — Delivers Slack alerts and structured reports you can audit
The entire workflow runs hands-free on a daily Bolt cron schedule, with full observability through Bolt's run log history and run detail analysis.
What to Do Next
- Expand ecosystem coverage: Add parsers for
go.mod,Cargo.toml,Gemfile.lock, andpom.xmlto the scanner script - Integrate with Jira/Linear: Instead of (or in addition to) Slack, create tickets for each Critical CVE automatically using Bolt's integration capabilities
- Add an On Merge trigger: Catch new vulnerable dependencies the moment they're merged, not just on the daily scan
- Track trends with dbt™: Store scan results in your warehouse and build dbt™ models to track vulnerability trends over time—measure whether your mean-time-to-remediation is actually improving
Key Resources
Resource | Link |
|---|---|
Paradime Bolt Docs | |
Bolt Trigger Types | |
Bolt Environment Variables | |
OpenClaw Skills Docs | |
OpenClaw Skills Config | |
OSV API | |
NVD CVE API | |
Cron Expression Help |
Stop discovering vulnerabilities after the breach. Start scanning proactively—every single day.
Interested to Learn More? Try Out the Free 14-Days Trial
One AI-native workspace to build, ship, and monitor dbt™ — without the tool sprawl.
More Guides
How to Run OpenClaw in Paradime
Learn how to run OpenClaw automations in Paradime — schedule morning briefings, inbox triage, calendar cleanup, and more with encrypted secrets and zero infrastructure.
How to Summarize Slack Channels Daily with OpenClaw in Paradime
Summarize busy Slack channels daily with OpenClaw in Paradime. AI reads messages, extracts key decisions and action items, and posts a digest.
How to Generate Security Compliance Reports with OpenClaw in Paradime
Generate security compliance reports with OpenClaw in Paradime. AI compiles evidence from your trackers into structured reports ready for audit review.
Join industry leaders winning with DinoAI agents
Data engineers and analysts at the most AI-native startups and enterprises use Paradime's DinoAI agents everyday to become market leaders.