workspace/skills/nsm-session-pivot/SKILL.md
Pivot through Zeek session and protocol metadata from a packet capture (read-only) — connection listing, service filtering, and following a connection uid into dns/http/ssl logs. Use when reconstructing what sessions occurred in a capture, following a connection across protocols, or investigating retrospectively
npx skillsauth add automateyournetwork/netclaw nsm-session-pivotInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
nsm-mcp (NetClaw-authored, spec 091)nsm_status, nsm_analyze, nsm_sessions, nsm_protocol_log.pcap/.pcapng file already on disk. Nothing sniffs an interface.A missing protocol log does not mean there was no such traffic.
Zeek discards packets with invalid TCP checksums by default. Measured on a reference
capture: with validation on, Zeek produced no http.log at all — the HTTP request was
invisible — and a conn.log that was also wrong, 3 rows instead of the correct 2, because
discarded packets fragment the flow. The only signal is a warning on stderr.
Captures from a NIC with checksum offloading routinely have invalid checksums, including
the ones NetClaw's own cml-packet-capture and gns3-packet-capture skills produce.
So nsm-mcp defaults ignore_checksums=true, the opposite of Zeek's own default, and
attaches zeek_posture to every response:
| state | What it means |
|---|---|
| IGNORING_CHECKSUMS | all packets analysed — the correct setting for offloaded captures |
| PACKETS_DISCARDED | packets were dropped; protocol logs may be missing and conn.log may be wrong |
| VALIDATING | validation on, nothing flagged |
If you see PACKETS_DISCARDED, re-run with ignore_checksums=true before drawing any
conclusion. Reporting "no HTTP in this capture" from a discarded run is a wrong answer that
looks like a finding.
nsm_analyze — which Zeek logs did this capture produce, and how many connections?nsm_sessions — the connection table. Note service, conn_state, byte countsuidnsm_protocol_log with log="dns" / "http" / "ssl" and that uid — every Zeek log
shares uid with conn.log, which is what makes the pivot exact rather than heuristicnsm_protocol_log with log="weird" — protocol anomalies Zeek could not classifyGiven an alert from nsm-ids-triage:
nsm_sessions filtered by the alert's service, or scanned for its IP pairid.orig_h/id.resp_h/id.resp_p to find the uidnsm_protocol_log for the relevant protocol with that uidconn_stateconn_state is evidence: S0 (no reply) is a very different story from SF (completed)nsm_protocol_log returns the
available log list when you request one Zeek did not write — use it rather than reporting
absence.truncated: true means you are looking at a page, not the total.service from behaviour, not port. HTTP on 8443 is labelled http; trust
the field over the port number, and say which you used.weird.log is not an alert log. It records protocol oddities, many of them benign.| Skill | How They Work Together |
|-------|----------------------|
| nsm-ids-triage | Suricata alerts that this skill puts into session context |
| packet-analysis | Individual packet decode (tshark) once a session is identified |
| cml-packet-capture / gns3-packet-capture | Produce the capture this skill analyses |
| gait-session-tracking | Record all pivots |
NSM_HOME — analysis and ruleset directory (default ~/.openclaw/nsm)NSM_TIMEOUT — per-container timeout in seconds (default 600)tools
Zoom meeting intelligence — correlates a live or referenced Zoom meeting discussion against NetClaw's historical meeting record (via the official Zoom Meetings MCP) and today's actual network state. Use when someone in a Zoom meeting references a past discussion or incident ('didn't we have this issue before?'), or asks to search prior meetings for a topic. Does not itself recognize live in-meeting questions — that happens automatically inside zoom-rtms-mcp's own extractor (spec 118) before this skill is ever invoked.
tools
Manage Lantronix out-of-band (OOB) infrastructure via Percepxion central management platform: device inventory, serial port inspection via SLC CLI, firmware compliance, config management, security auditing, and closed-loop incident remediation. Use during outages, maintenance windows, compliance cycles, and AI-assisted automation workflows.
tools
Federate your NetClaw with other NetClaw operators over the BGP mesh — exchange capability inventories and ask your claw what a peer can do. (US1; remote invocation and chat land in later phases.)
tools
Track token consumption, enforce session budgets, and display cost for every NetClaw interaction.