# Send Network Scanner to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "network-scanner",
    "name": "Network Scanner",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/florianbeer/network-scanner",
    "canonicalUrl": "https://clawhub.ai/florianbeer/network-scanner",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/network-scanner",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network-scanner",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "scripts/scan.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "network-scanner",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T18:20:07.606Z",
      "expiresAt": "2026-05-07T18:20:07.606Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network-scanner",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network-scanner",
        "contentDisposition": "attachment; filename=\"network-scanner-1.1.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "network-scanner"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/network-scanner"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/network-scanner",
    "downloadUrl": "https://openagent3.xyz/downloads/network-scanner",
    "agentUrl": "https://openagent3.xyz/skills/network-scanner/agent",
    "manifestUrl": "https://openagent3.xyz/skills/network-scanner/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/network-scanner/agent.md"
  }
}
```
## Documentation

### Network Scanner

Discover and identify devices on local or remote networks using nmap. Gathers IP addresses, hostnames (via reverse DNS), MAC addresses, and vendor identification.

Safety First: Includes built-in protection against accidentally scanning public IP ranges or networks without proper private routing — preventing abuse reports from hosting providers.

### Requirements

nmap - Network scanning (apt install nmap or brew install nmap)
dig - DNS lookups (usually pre-installed)
sudo access recommended for MAC address discovery

### Quick Start

# Auto-detect and scan current network
python3 scripts/scan.py

# Scan a specific CIDR
python3 scripts/scan.py 192.168.1.0/24

# Scan with custom DNS server for reverse lookups
python3 scripts/scan.py 192.168.1.0/24 --dns 192.168.1.1

# Output as JSON
python3 scripts/scan.py --json

### Configuration

Configure named networks in ~/.config/network-scanner/networks.json:

{
  "networks": {
    "home": {
      "cidr": "192.168.1.0/24",
      "dns": "192.168.1.1",
      "description": "Home Network"
    },
    "office": {
      "cidr": "10.0.0.0/24",
      "dns": "10.0.0.1",
      "description": "Office Network"
    }
  },
  "blocklist": [
    {
      "cidr": "10.99.0.0/24",
      "reason": "No private route from this host"
    }
  ]
}

Then scan by name:

python3 scripts/scan.py home
python3 scripts/scan.py office --json

### Safety Features

The scanner includes multiple safety checks to prevent accidental abuse:

Blocklist — Networks in the blocklist config array are always blocked
Public IP check — Scanning public (non-RFC1918) IP ranges is blocked
Route verification — For ad-hoc CIDRs, verifies the route uses private gateways

Trusted networks (configured in networks.json) skip route verification since you've explicitly approved them.

# Blocked - public IP range
$ python3 scripts/scan.py 8.8.8.0/24
❌ BLOCKED: Target 8.8.8.0/24 is a PUBLIC IP range

# Blocked - in blocklist  
$ python3 scripts/scan.py 10.99.0.0/24
❌ BLOCKED: 10.99.0.0/24 is blocklisted

# Allowed - configured trusted network
$ python3 scripts/scan.py home
✓ Scanning 192.168.1.0/24...

### Commands

# Create example config
python3 scripts/scan.py --init-config

# List configured networks
python3 scripts/scan.py --list

# Scan without sudo (may miss MAC addresses)
python3 scripts/scan.py home --no-sudo

### Output Formats

Markdown (default):

### Home Network
*Last scan: 2026-01-28 00:10*

| IP | Name | MAC | Vendor |
|----|------|-----|--------|
| 192.168.1.1 | router.local | AA:BB:CC:DD:EE:FF | Ubiquiti |
| 192.168.1.100 | nas.local | 11:22:33:44:55:66 | Synology |

*2 devices found*

JSON (--json):

{
  "network": "Home Network",
  "cidr": "192.168.1.0/24",
  "devices": [
    {
      "ip": "192.168.1.1",
      "hostname": "router.local",
      "mac": "AA:BB:CC:DD:EE:FF",
      "vendor": "Ubiquiti"
    }
  ],
  "scanned_at": "2026-01-28T00:10:00",
  "device_count": 2
}

### Use Cases

Device inventory: Keep track of all devices on your network
Security audits: Identify unknown devices
Documentation: Generate network maps for documentation
Automation: Integrate with home automation to detect device presence

### Tips

Use sudo for accurate MAC address detection (nmap needs privileges for ARP)
Configure your local DNS server for better hostname resolution
Add configured networks to skip route verification on every scan
Add networks you can't reach privately to the blocklist to prevent accidents
Extend MAC_VENDORS in the script for better device identification
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: florianbeer
- Version: 1.1.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-04-30T18:20:07.606Z
- Expires at: 2026-05-07T18:20:07.606Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/network-scanner)
- [Send to Agent page](https://openagent3.xyz/skills/network-scanner/agent)
- [JSON manifest](https://openagent3.xyz/skills/network-scanner/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/network-scanner/agent.md)
- [Download page](https://openagent3.xyz/downloads/network-scanner)