You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: .github/copilot-instructions.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
# GitHub Copilot Repository Instructions
2
2
3
-
For packet capture, protocol analysis, network forensics, incident response, and troubleshooting tasks, prefer the project skill in `.github/skills/wireshark-traffic-analysis/`.
3
+
For packet capture, protocol analysis, network security monitoring, incident response, and troubleshooting tasks, prefer the project skill in `.github/skills/wireshark-traffic-analysis/`.
One tool covers 20 protocols rather than 20 tools covering one each: `wireshark_analyze_protocol` takes a `protocol` argument (`tls_handshakes`, `mqtt`, `modbus`, `s7comm`, `zigbee`, `wifi`, `rtp`, `kerberos`, …) and applies the right fields and display filter for it. The field names are the point — `s7comm.param.item.dbnum` is not something a caller should have to guess, and a wrong guess returns an empty result that reads like a clean capture.
94
96
95
97
The server starts with only `tshark` required. Optional tools (`capinfos`, `mergecap`, `editcap`, `dumpcap`, `text2pcap`) are auto-detected and enable extra features when present.
96
98
97
99
### Context cost
98
100
99
-
The tool list travels in the prompt prefix of every request your client sends, so its size is a fixed per-request cost. The advertised surface is ~27 KB (~6.9k tokens) of schema plus ~5 KB of annotations, and it is byte-identical across restarts so clients can cache the prefix rather than re-reading it each session.
101
+
The tool list travels in the prompt prefix of every request your client sends, so its size is a fixed per-request cost. The default surface is ~21 KB — about 9 KB of parameter schema, 5 KB of descriptions, and 3 KB of read/write annotations — and it is byte-identical across restarts so clients can cache the prefix rather than re-reading it each session.
102
+
103
+
If your client never captures live traffic or writes pcaps, `--profile` advertises less:
104
+
105
+
| Profile | Tools | Payload | Drops |
106
+
|---------|:-----:|:-------:|-------|
107
+
|`full` (default) | 51 |~21 KB | nothing |
108
+
|`analysis`| 41 |~17 KB | live capture, interface listing, all file-writing tools |
109
+
|`core`| 33 |~14 KB | the above, plus decryption, dissection overrides, and low-level views |
110
+
111
+
```bash
112
+
wireshark-mcp serve --profile core
113
+
```
114
+
115
+
Every profile still contains every tool the bundled prompts, resources, skill files, and protocol recommendations can point the model at, so reducing the surface never leaves it chasing a tool that is not there.
100
116
101
117
Tool results are bounded too, since a result stays in the conversation for the rest of the session. Output over 8000 characters is truncated head-and-tail with a marker, and the tool's `offset` / `limit` / `display_filter` parameters are the way to page through the rest. Raise or lower the ceiling with:
102
118
103
119
```bash
104
120
export WIRESHARK_MCP_MAX_RESULT_CHARS=16000
105
121
```
106
122
107
-
Every tool also declares whether it reads or writes, so clients can auto-approve the 74 read-only analysis tools and still prompt for the 11 that create files (live capture, merge, filter-save, editcap, text2pcap, object export).
123
+
Every tool also declares whether it reads or writes, so clients can auto-approve the 40 read-only analysis tools and still prompt for the 11 that create files (live capture, merge, filter-save, editcap, text2pcap, frame extract, object export).
Copy file name to clipboardExpand all lines: skills/wireshark-traffic-analysis/SKILL.md
+2-6Lines changed: 2 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
---
2
2
name: "wireshark-traffic-analysis"
3
-
description: "Use when analyzing packet captures or live network traffic with Wireshark MCP; choose the right workflow for triage, security hunting, incident response, troubleshooting, or CTF work, then produce evidence-backed findings with exact filters, streams, frames, and next steps."
3
+
description: "Use when analyzing packet captures or live network traffic with Wireshark MCP; choose the right workflow for triage, security hunting, incident response, or troubleshooting, then produce evidence-backed findings with exact filters, streams, frames, and next steps."
4
4
---
5
5
6
6
# Wireshark Traffic Analysis
@@ -13,13 +13,12 @@ Use this skill to turn raw packet captures into a disciplined investigation. The
13
13
- live traffic review after capture
14
14
- security triage, threat hunting, or incident response
15
15
- network and protocol troubleshooting
16
-
- CTF and forensics-style packet challenges
17
16
- any task where packet evidence matters more than intuition
18
17
19
18
## Required inputs
20
19
21
20
- capture path
22
-
- primary goal: `triage`, `security`, `incident-response`, `troubleshoot`, or `ctf`
21
+
- primary goal: `triage`, `security`, `incident-response`, or `troubleshoot`
23
22
- any known scope: suspicious host, port, domain, time window, protocol, or symptom
24
23
25
24
If the user does not name a goal, default to `triage`.
@@ -46,7 +45,6 @@ If the user does not name a goal, default to `triage`.
46
45
- Prefer Wireshark MCP tools over freehand `tshark` syntax.
47
46
- Never guess display filter syntax. Use `wireshark://reference/display-filters`.
48
47
- Use `wireshark://reference/protocol-fields` when you need field names for extraction or filters.
49
-
- Never decode payloads manually when `wireshark_decode_payload` can verify the result.
50
48
- Treat `wireshark_stats_expert_info` as a lead generator, not a final verdict.
51
49
- When a finding depends on context, follow the full stream before concluding.
52
50
- For large captures, paginate instead of treating the first page as representative.
@@ -95,7 +93,6 @@ Use the matching playbook in [references/playbooks.md](references/playbooks.md):
0 commit comments