netops-asset-manager
install
source · Clone the upstream repo
git clone https://github.com/Boos4721/netops-asset-manager-skill
Claude Code · Install into ~/.claude/skills/
git clone --depth=1 https://github.com/Boos4721/netops-asset-manager-skill ~/.claude/skills/boos4721-netops-asset-manager-skill-netops-asset-manager
OpenClaw · Install into ~/.openclaw/skills/
git clone --depth=1 https://github.com/Boos4721/netops-asset-manager-skill ~/.openclaw/skills/boos4721-netops-asset-manager-skill-netops-asset-manager
manifest:
SKILL.mdsource content
NetOps Asset Manager
A production-grade IT infrastructure asset management platform built with Go + Vue 3. Single binary deployment with embedded frontend.
Capabilities
- Device Management: Full CRUD for network devices with vendor auto-detection (H3C, Huawei, Cisco, MikroTik, Linux), SSH credential management, and bulk Excel/CSV import.
- Health Monitoring: Background goroutine performs ICMP ping + TCP:22 probing every 5 minutes, automatically updating device online/offline status.
- SSH Operations: Native Go SSH client for remote device reboot and running configuration backup (vendor-aware commands).
- Network Discovery: Nmap-based subnet scanning to discover new devices.
- AI Assistant: OpenClaw-powered chat interface with Markdown rendering and intent-based auto-registration of assets.
- Topology Visualization: Interactive network topology graph using vis-network.
- Process Management: PM2 process monitoring, control, and cross-machine deployment.
- Model Management: CRUD for AI model configurations synced to OpenClaw config.
- System Deployment: One-click deployment of Docker, vLLM, and llama.cpp.
Architecture
backend/ # Go (Gin + Ent ORM) ├── cmd/server/main.go # Server entry point ├── cmd/migrate/main.go # Data migration tool ├── ent/schema/ # Database models └── internal/ ├── auth/ # JWT + bcrypt + RBAC middleware ├── handler/ # API handlers (13 files) ├── router/ # Route registration ├── service/health/ # ICMP/TCP prober + scheduler ├── service/ssh/ # SSH client, reboot, backup ├── service/importer/ # Excel parser └── embedded/ # Frontend embed.FS frontend/ # Vue 3.4 + Vite 5 + TailwindCSS ├── src/stores/ # Pinia state management ├── src/views/ # 8 view pages └── vite.config.ts
API Endpoints
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | | Public | Login, returns JWT |
| GET | | Bearer | List devices |
| POST | | operator+ | Add device |
| PUT | | operator+ | Update device |
| DELETE | | operator+ | Delete device |
| POST | | operator+ | SSH reboot |
| POST | | operator+ | SSH config backup |
| POST | | operator+ | Bulk Excel import |
| GET | | Bearer | Dashboard statistics |
| POST | | operator+ | Nmap subnet scan |
| GET/POST/DELETE | | Bearer/operator+ | Topology links |
| GET/POST/PUT/DELETE | | Bearer/root | AI model config |
| GET/POST | | Bearer/operator+ | PM2 management |
| POST | | Bearer | AI assistant |
| GET | | Bearer | System info |
Deployment
Quick Start
# Prerequisites: Go 1.26+, Node.js 22+, PostgreSQL 15+ createdb netops # Option A: Run from source (no compilation) cd frontend && npm install --legacy-peer-deps && cd .. make run # Terminal 1: backend on :8081 make dev-frontend # Terminal 2: frontend on :5173 # Option B: Build single binary make build ./netops # → http://localhost:8081 (admin / admin)
Docker
make docker-build docker run -p 8081:8081 \ -e JWT_SECRET="secret" \ -v ~/.openclaw:/root/.openclaw \ netops-asset-manager:latest
Configuration
config.yaml with env var override support (via Viper):
| Key | Default | Description |
|---|---|---|
| 8081 | Listen port |
| postgres://... | PostgreSQL connection |
| (change me) | JWT signing key |
| 24h | Token TTL |
| 5m | Health probe interval |
| 10s | SSH connection timeout |
Vendor → Driver Mapping
| Vendor | Driver | Config Command |
|---|---|---|
| H3C | hp_comware | |
| Huawei | huawei | |
| Cisco | cisco_ios | |
| MikroTik | mikrotik_routeros | |
| Linux | linux | |
References
— Automation implementation guidereferences/automation.md
— Vendor command referencereferences/vendors.md
— System dependency guidereferences/dependencies.md
— SNMP configuration referencereferences/snmp.md