@amatiscorp/disguard 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/README.md +96 -15
  2. package/dist/AntiSpam.d.ts +2 -0
  3. package/dist/AntiSpam.d.ts.map +1 -1
  4. package/dist/AntiSpam.js +39 -2
  5. package/dist/AntiSpam.js.map +1 -1
  6. package/dist/defaults.d.ts.map +1 -1
  7. package/dist/defaults.js +42 -1
  8. package/dist/defaults.js.map +1 -1
  9. package/dist/detectors/accounts.d.ts.map +1 -1
  10. package/dist/detectors/accounts.js +14 -0
  11. package/dist/detectors/accounts.js.map +1 -1
  12. package/dist/detectors/attach.d.ts +3 -0
  13. package/dist/detectors/attach.d.ts.map +1 -0
  14. package/dist/detectors/attach.js +31 -0
  15. package/dist/detectors/attach.js.map +1 -0
  16. package/dist/detectors/duplicates.js +1 -1
  17. package/dist/detectors/duplicates.js.map +1 -1
  18. package/dist/detectors/echo.d.ts +3 -0
  19. package/dist/detectors/echo.d.ts.map +1 -0
  20. package/dist/detectors/echo.js +37 -0
  21. package/dist/detectors/echo.js.map +1 -0
  22. package/dist/detectors/ghost.d.ts.map +1 -1
  23. package/dist/detectors/ghost.js +2 -0
  24. package/dist/detectors/ghost.js.map +1 -1
  25. package/dist/detectors/invisible.d.ts +3 -0
  26. package/dist/detectors/invisible.d.ts.map +1 -0
  27. package/dist/detectors/invisible.js +25 -0
  28. package/dist/detectors/invisible.js.map +1 -0
  29. package/dist/detectors/mentions.d.ts.map +1 -1
  30. package/dist/detectors/mentions.js +19 -1
  31. package/dist/detectors/mentions.js.map +1 -1
  32. package/dist/detectors/secrets.d.ts +3 -0
  33. package/dist/detectors/secrets.d.ts.map +1 -0
  34. package/dist/detectors/secrets.js +59 -0
  35. package/dist/detectors/secrets.js.map +1 -0
  36. package/dist/enforcement.d.ts.map +1 -1
  37. package/dist/enforcement.js +44 -6
  38. package/dist/enforcement.js.map +1 -1
  39. package/dist/index.d.ts +2 -2
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +2 -1
  42. package/dist/index.js.map +1 -1
  43. package/dist/types.d.ts +55 -2
  44. package/dist/types.d.ts.map +1 -1
  45. package/dist/utils/normalize.d.ts +1 -0
  46. package/dist/utils/normalize.d.ts.map +1 -1
  47. package/dist/utils/normalize.js +4 -0
  48. package/dist/utils/normalize.js.map +1 -1
  49. package/package.json +5 -5
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  **Configurable antispam for discord.js v14**
6
6
 
7
- Flood · phishing · channel hop · blocked words · ghost pings · TypeScript
7
+ Flood · phishing · leaked secrets · channel hop · ghost pings · TypeScript
8
8
 
9
9
  [![npm version](https://img.shields.io/npm/v/@amatiscorp/disguard.svg?style=flat-square)](https://www.npmjs.com/package/@amatiscorp/disguard)
10
10
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)
@@ -22,11 +22,7 @@ Configurable antispam for [discord.js](https://discord.js.org) v14 bots.
22
22
 
23
23
  It is **not** a bot. You plug it into your existing `Client` and decide every threshold, allowlist, and punishment.
24
24
 
25
- Detects flood, channel hopping, blocked words, phishing / unwanted links, duplicate images, mention spam, ghost pings, excessive caps, and emoji spam.
26
-
27
- > **Español:** librería antispam configurable para bots de discord.js. No es un bot. La documentación en español está más abajo: [Español](#español).
28
-
29
- ---
25
+ Detects flood, leaked tokens/webhooks, channel hopping, blocked words, phishing, duplicate images, mention spam, ghost pings, and more.
30
26
 
31
27
  **Languages**
32
28
 
@@ -37,9 +33,48 @@ Detects flood, channel hopping, blocked words, phishing / unwanted links, duplic
37
33
 
38
34
  # English
39
35
 
40
- ## What's new in 1.3.0
36
+ ## What's new in 1.4.0
41
37
 
42
- More detectors, role overlays, mute-style role punishments, and extra ignore knobs. Everything is optional and falls back to the preset.
38
+ Secret scanning, cross-channel copy-paste, invisible unicode, attachment floods, and cleaner logs. Kick/ban stay **off**.
39
+
40
+ | Option | Default | What it does |
41
+ | --- | --- | --- |
42
+ | `secrets` | **on** | Flags Discord **bot tokens** and **webhook URLs** pasted in chat (also embeds). The incident does **not** store the secret. |
43
+ | `echo` | **on**, 3 channels / 12s | Same text pasted across several channels (raid copypasta). Distinct from `hop` (any messages). |
44
+ | `invisible` | **on**, 8 | Zero-width / bidi characters used to dodge filters. |
45
+ | `attach` | **on**, 8 files / 10s | Too many attachments across a short window, not just dangerous extensions. |
46
+ | `duplicates.minLength` | `8` | Short stuff like `ok` / `lol` is no longer duplicate-spam. |
47
+ | `mentions.maxInWindow` | `0` (off) | Cap mentions across several messages, not only one. |
48
+ | `accounts.onlyWithLinks` | `false` (`strict`: true) | New accounts are flagged only if the message has a URL. |
49
+ | `punishment.purgeCount` | `0` | After a hit, bulk-delete N of that user's recent messages in the channel. |
50
+ | `punishment.logWebhookUrl` | `null` | Log embeds to a Discord webhook (no extra log channel needed). |
51
+ | `ignorePinned` | `false` | Skip pinned messages. |
52
+ | `ignoreOlderThanMs` | `0` | Skip old messages (useful on reconnect replay). |
53
+ | `setEnabled(false)` | — | Turn the whole filter off without `stop()`. |
54
+
55
+ ```js
56
+ const antispam = new AntiSpam(client, {
57
+ preset: "balanced",
58
+ secrets: { enabled: true, botTokens: true, webhooks: true, extraPatterns: ["ghp_[A-Za-z0-9]{20,}"] },
59
+ echo: { maxChannels: 3, windowMs: 12_000, minLength: 12 },
60
+ invisible: { maxInvisible: 8 },
61
+ attach: { maxAttachments: 8, windowMs: 10_000 },
62
+ duplicates: { minLength: 8 },
63
+ accounts: { enabled: true, minAgeDays: 2, onlyWithLinks: true },
64
+ ignorePinned: true,
65
+ punishment: {
66
+ purgeCount: 5,
67
+ logWebhookUrl: process.env.DISGUARD_LOG_WEBHOOK || null,
68
+ },
69
+ });
70
+
71
+ antispam.setEnabled(false); // raid party / event
72
+ antispam.setEnabled(true);
73
+ ```
74
+
75
+ `secrets` is meant to **delete leaks**, not to harvest credentials. Reasons only say “token/webhook”, never the value.
76
+
77
+ ## What's new in 1.3.0
43
78
 
44
79
  | Option | Default | What it does |
45
80
  | --- | --- | --- |
@@ -173,6 +208,7 @@ console.log(antispam.getStats());
173
208
 
174
209
  ## Table of contents
175
210
 
211
+ - [What's new in 1.4.0](#whats-new-in-140)
176
212
  - [What's new in 1.3.0](#whats-new-in-130)
177
213
  - [What's new in 1.2.0](#whats-new-in-120)
178
214
  - [What's new in 1.1.0](#whats-new-in-110)
@@ -214,6 +250,10 @@ console.log(antispam.getStats());
214
250
  | **punctuation** | Long runs of the same character (`!!!!`, `aaaa`) |
215
251
  | **spoiler** | Spoiler-tag walls |
216
252
  | **ghost** | Deleted messages that mentioned users (off by default) |
253
+ | **secret** | Accidental Discord bot tokens / webhook URLs in chat |
254
+ | **echo** | Same text pasted in several channels |
255
+ | **invisible** | Zero-width / bidi obfuscation |
256
+ | **attach** | Attachment floods over a sliding window |
217
257
 
218
258
  Also included:
219
259
 
@@ -348,9 +388,9 @@ Enable **Message Content Intent** in the [Discord Developer Portal](https://disc
348
388
 
349
389
  1. Ignores bots, webhooks, system messages, the owner, administrators, command prefixes, and anything in your ignore lists.
350
390
  2. Keeps a short **in-memory** history per user and guild (no database).
351
- 3. Runs detectors in this order: files → words → flood → hop → duplicates → links → images → mentions → zalgo → newlines → punctuation → spoilers → accounts → length → caps → emojis. The first match wins.
391
+ 3. Runs detectors in this order: files → secrets → words → flood → hop → echo → duplicates → attachments → links → images → mentions → zalgo → newlines → punctuation → spoilers → invisible → accounts → length → caps → emojis. The first match wins.
352
392
  4. Adds one strike (with optional decay) and applies the configured punishment.
353
- 5. Message edits re-check **links**, **mentions**, and **words**, so editing `hello` into a phishing URL or a blocked word is still caught without counting as flood.
393
+ 5. Message edits re-check **links**, **mentions**, **words**, **secrets**, and **invisible**.
354
394
  6. Deletes can trigger **ghost** pings if `ghostPing.enabled` is true.
355
395
 
356
396
  Call `antispam.stop()` on shutdown, hot reload, or plugin unload.
@@ -708,7 +748,8 @@ new AntiSpam(client, {
708
748
  {
709
749
  type: "flood" | "duplicate" | "link" | "image" | "mention" | "caps" | "emoji"
710
750
  | "file" | "zalgo" | "newline" | "account" | "length"
711
- | "word" | "hop" | "punctuation" | "spoiler" | "ghost",
751
+ | "word" | "hop" | "punctuation" | "spoiler" | "ghost"
752
+ | "secret" | "echo" | "invisible" | "attach",
712
753
  severity: "low" | "medium" | "high" | "critical",
713
754
  userId: string,
714
755
  guildId: string,
@@ -716,7 +757,7 @@ new AntiSpam(client, {
716
757
  messageId: string,
717
758
  reason: string,
718
759
  details: Record<string, unknown>,
719
- recommendedActions: Array<"delete" | "warn" | "timeout" | "kick" | "ban" | "addRole" | "removeRole">,
760
+ recommendedActions: Array<"delete" | "warn" | "timeout" | "kick" | "ban" | "addRole" | "removeRole" | "purge">,
720
761
  timestamp: number,
721
762
  }
722
763
  ```
@@ -746,6 +787,8 @@ antispam.stop();
746
787
  antispam.pause();
747
788
  antispam.resume();
748
789
  antispam.isPaused();
790
+ antispam.setEnabled(false);
791
+ antispam.isEnabled();
749
792
 
750
793
  const config = antispam.getConfig();
751
794
  antispam.setConfig({ flood: { maxMessages: 8 } }); // deep merge, other keys stay
@@ -917,9 +960,13 @@ Wait a few seconds between categories so flood does not eat the next test.
917
960
  | Spoilers | More than 8 `\|\|spoiler\|\|` pairs |
918
961
  | Blocked word | Enable `words` first, then send a listed word |
919
962
  | Ghost ping | Mention someone and delete the message within 15s (`ghostPing.enabled: true`) |
963
+ | Secret | Paste a dummy webhook URL `https://discord.com/api/webhooks/123/abc` |
964
+ | Echo | Same long sentence in 3 channels within 12s |
965
+ | Invisible | A message padded with many zero-width spaces |
966
+ | Attachments | 8+ files in 10 seconds |
920
967
  | Edit | Send `hello`, then edit it to `Free Nitro https://bit.ly/test` |
921
968
 
922
- Watch the terminal: `[detect] flood|duplicate|link|image|mention|caps|emoji|file|zalgo|newline|word|hop|punctuation|spoiler|ghost`.
969
+ Watch the terminal: `[detect] flood|duplicate|link|image|mention|caps|emoji|file|zalgo|newline|word|hop|punctuation|spoiler|ghost|secret|echo|invisible|attach`.
923
970
 
924
971
  The second strike applies a 1 minute timeout with the default example config. Strikes decay after 15 minutes, or call `resetUser`.
925
972
 
@@ -960,6 +1007,34 @@ MIT
960
1007
 
961
1008
  # Español
962
1009
 
1010
+ ## Novedades de 1.4.0
1011
+
1012
+ Escaneo de secretos, copypasta entre canales, unicode invisible, flood de adjuntos y logs por webhook. Kick/ban siguen **apagados**.
1013
+
1014
+ | Opción | Default | Qué hace |
1015
+ | --- | --- | --- |
1016
+ | `secrets` | **on** | Caza **tokens de bot** y **webhooks** pegados en el chat. El incidente **no** guarda el secreto. |
1017
+ | `echo` | **on**, 3 canales / 12s | El mismo texto en varios canales (raid). No es lo mismo que `hop`. |
1018
+ | `invisible` | **on**, 8 | Caracteres de ancho cero / bidi para saltarse filtros. |
1019
+ | `attach` | **on**, 8 / 10s | Demasiados adjuntos en una ventana, no solo `.exe`. |
1020
+ | `duplicates.minLength` | `8` | `ok` / `lol` ya no cuentan como duplicado. |
1021
+ | `mentions.maxInWindow` | `0` (off) | Tope de menciones entre varios mensajes. |
1022
+ | `accounts.onlyWithLinks` | `false` (`strict`: true) | Cuentas nuevas solo si el mensaje trae URL. |
1023
+ | `punishment.purgeCount` | `0` | Tras un hit, borra N mensajes recientes de ese user en el canal. |
1024
+ | `punishment.logWebhookUrl` | `null` | Logs a un webhook de Discord. |
1025
+ | `ignorePinned` | `false` | Ignora pineados. |
1026
+ | `ignoreOlderThanMs` | `0` | Ignora mensajes viejos (replay al reconectar). |
1027
+ | `setEnabled(false)` | — | Apaga el filtro sin `stop()`. |
1028
+
1029
+ ```js
1030
+ new AntiSpam(client, {
1031
+ secrets: { enabled: true, extraPatterns: ["ghp_[A-Za-z0-9]{20,}"] },
1032
+ echo: { maxChannels: 3 },
1033
+ accounts: { enabled: true, onlyWithLinks: true },
1034
+ punishment: { purgeCount: 5, logWebhookUrl: process.env.DISGUARD_LOG_WEBHOOK || null },
1035
+ });
1036
+ ```
1037
+
963
1038
  ## Novedades de 1.3.0
964
1039
 
965
1040
  Más detectores, overlays por rol, mute por rol y más ignores. Todo es opcional.
@@ -1049,6 +1124,7 @@ new AntiSpam(client, {
1049
1124
 
1050
1125
  ## Tabla de contenidos
1051
1126
 
1127
+ - [Novedades de 1.4.0](#novedades-de-140)
1052
1128
  - [Novedades de 1.3.0](#novedades-de-130)
1053
1129
  - [Novedades de 1.2.0](#novedades-de-120)
1054
1130
  - [Novedades de 1.1.0](#novedades-de-110)
@@ -1169,7 +1245,7 @@ Activa **Message Content Intent** en el [Portal de Discord](https://discord.com/
1169
1245
 
1170
1246
  1. Ignora bots, webhooks, mensajes de sistema, el dueño, administradores, prefijos de comando y tus listas de ignore.
1171
1247
  2. Guarda en **memoria** un historial corto por usuario y servidor. Sin base de datos.
1172
- 3. Pasa el mensaje por: archivos → palabras → flood → hop → duplicados → enlaces → imágenes → menciones → zalgo → líneas → puntuación → spoilers → cuentas → longitud → caps → emojis. El primero que dispare gana.
1248
+ 3. Pasa el mensaje por: archivos → secretos → palabras → flood → hop → echo → duplicados → adjuntos → enlaces → imágenes → menciones → zalgo → líneas → puntuación → spoilers → invisibles → cuentas → longitud → caps → emojis. El primero que dispare gana.
1173
1249
  4. Suma un strike (con caducidad) y aplica el castigo configurado.
1174
1250
  5. Las ediciones revisan **enlaces**, **menciones** y **palabras**.
1175
1251
  6. Los borrados pueden disparar **ghost** ping si `ghostPing.enabled` es true.
@@ -1377,6 +1453,7 @@ antispam.start();
1377
1453
  antispam.stop();
1378
1454
  antispam.pause();
1379
1455
  antispam.resume();
1456
+ antispam.setEnabled(false);
1380
1457
  antispam.getConfig();
1381
1458
  antispam.setConfig({ flood: { maxMessages: 8 } });
1382
1459
  antispam.getStrikes(guildId, userId);
@@ -1459,9 +1536,13 @@ Espera unos segundos entre categorías.
1459
1536
  | Spoilers | Más de 8 pares `\|\|spoiler\|\|` |
1460
1537
  | Palabra | Activa `words` y manda una de la lista |
1461
1538
  | Ghost ping | Menciona a alguien y borra el mensaje en menos de 15s (`ghostPing.enabled: true`) |
1539
+ | Secreto | Pega un webhook de mentira `https://discord.com/api/webhooks/123/abc` |
1540
+ | Echo | La misma frase larga en 3 canales en 12s |
1541
+ | Invisible | Un mensaje con muchos espacios de ancho cero |
1542
+ | Adjuntos | 8+ archivos en 10 segundos |
1462
1543
  | Edición | Manda `hola` y edítalo a `Free Nitro https://bit.ly/test` |
1463
1544
 
1464
- En la terminal: `[detect] flood|duplicate|link|image|mention|caps|emoji|file|zalgo|newline|word|hop|punctuation|spoiler|ghost`.
1545
+ En la terminal: `[detect] flood|duplicate|link|image|mention|caps|emoji|file|zalgo|newline|word|hop|punctuation|spoiler|ghost|secret|echo|invisible|attach`.
1465
1546
 
1466
1547
  Al segundo strike el ejemplo mete timeout de 1 minuto. Los strikes caducan a los 15 minutos, o usa `resetUser`.
1467
1548
 
@@ -25,6 +25,8 @@ export declare class AntiSpam {
25
25
  pause(): this;
26
26
  resume(): this;
27
27
  isPaused(): boolean;
28
+ setEnabled(enabled: boolean): this;
29
+ isEnabled(): boolean;
28
30
  /** Adds a custom detector. It runs after the built-in ones. */
29
31
  use(detector: Detector): this;
30
32
  getConfig(): ResolvedConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"AntiSpam.d.ts","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AntiSpam.d.ts","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
package/dist/AntiSpam.js CHANGED
@@ -5,19 +5,23 @@ exports.createAntiSpam = createAntiSpam;
5
5
  const discord_js_1 = require("discord.js");
6
6
  const defaults_1 = require("./defaults");
7
7
  const accounts_1 = require("./detectors/accounts");
8
+ const attach_1 = require("./detectors/attach");
8
9
  const caps_1 = require("./detectors/caps");
9
10
  const duplicates_1 = require("./detectors/duplicates");
11
+ const echo_1 = require("./detectors/echo");
10
12
  const emojis_1 = require("./detectors/emojis");
11
13
  const files_1 = require("./detectors/files");
12
14
  const flood_1 = require("./detectors/flood");
13
15
  const ghost_1 = require("./detectors/ghost");
14
16
  const hop_1 = require("./detectors/hop");
15
17
  const images_1 = require("./detectors/images");
18
+ const invisible_1 = require("./detectors/invisible");
16
19
  const length_1 = require("./detectors/length");
17
20
  const links_1 = require("./detectors/links");
18
21
  const mentions_1 = require("./detectors/mentions");
19
22
  const newlines_1 = require("./detectors/newlines");
20
23
  const punctuation_1 = require("./detectors/punctuation");
24
+ const secrets_1 = require("./detectors/secrets");
21
25
  const spoilers_1 = require("./detectors/spoilers");
22
26
  const words_1 = require("./detectors/words");
23
27
  const zalgo_1 = require("./detectors/zalgo");
@@ -42,8 +46,12 @@ const DETECTOR_TYPES = [
42
46
  "punctuation",
43
47
  "spoiler",
44
48
  "ghost",
49
+ "invisible",
50
+ "echo",
51
+ "secret",
52
+ "attach",
45
53
  ];
46
- const ACTION_TYPES = ["delete", "warn", "timeout", "kick", "ban", "addRole", "removeRole"];
54
+ const ACTION_TYPES = ["delete", "warn", "timeout", "kick", "ban", "addRole", "removeRole", "purge"];
47
55
  function emptyStats() {
48
56
  return {
49
57
  analyzed: 0,
@@ -83,10 +91,13 @@ class AntiSpam {
83
91
  this.config = (0, defaults_1.resolveConfig)(preset, configOptions);
84
92
  this.detectors = [
85
93
  files_1.fileDetector,
94
+ secrets_1.secretDetector,
86
95
  words_1.wordDetector,
87
96
  flood_1.floodDetector,
88
97
  hop_1.hopDetector,
98
+ echo_1.echoDetector,
89
99
  duplicates_1.duplicateDetector,
100
+ attach_1.attachDetector,
90
101
  links_1.linkDetector,
91
102
  (0, images_1.createImageDetector)(this.store),
92
103
  mentions_1.mentionDetector,
@@ -94,6 +105,7 @@ class AntiSpam {
94
105
  newlines_1.newlineDetector,
95
106
  punctuation_1.punctuationDetector,
96
107
  spoilers_1.spoilerDetector,
108
+ invisible_1.invisibleDetector,
97
109
  accounts_1.accountDetector,
98
110
  length_1.lengthDetector,
99
111
  caps_1.capsDetector,
@@ -144,6 +156,13 @@ class AntiSpam {
144
156
  isPaused() {
145
157
  return this.paused;
146
158
  }
159
+ setEnabled(enabled) {
160
+ this.config = (0, defaults_1.mergeDeep)(this.config, { enabled });
161
+ return this;
162
+ }
163
+ isEnabled() {
164
+ return this.config.enabled;
165
+ }
147
166
  /** Adds a custom detector. It runs after the built-in ones. */
148
167
  use(detector) {
149
168
  this.detectors.push(detector);
@@ -226,7 +245,11 @@ class AntiSpam {
226
245
  if (config.disabledDetectors.includes(detector.type))
227
246
  return false;
228
247
  if (options.isEdit) {
229
- return detector.type === "link" || detector.type === "mention" || detector.type === "word";
248
+ return (detector.type === "link" ||
249
+ detector.type === "mention" ||
250
+ detector.type === "word" ||
251
+ detector.type === "secret" ||
252
+ detector.type === "invisible");
230
253
  }
231
254
  return true;
232
255
  });
@@ -331,6 +354,12 @@ class AntiSpam {
331
354
  return true;
332
355
  if (message.system && config.ignoreSystem)
333
356
  return true;
357
+ if (message.pinned && config.ignorePinned)
358
+ return true;
359
+ if (config.ignoreOlderThanMs > 0 && message.createdTimestamp) {
360
+ if (Date.now() - message.createdTimestamp > config.ignoreOlderThanMs)
361
+ return true;
362
+ }
334
363
  if (!message.guild)
335
364
  return true;
336
365
  if (config.ignored.guilds.includes(message.guild.id))
@@ -400,6 +429,9 @@ class AntiSpam {
400
429
  });
401
430
  }
402
431
  toSnapshot(message, now) {
432
+ const mentionCount = [...message.mentions.users.values()].filter((user) => user.id !== message.author.id).length +
433
+ message.mentions.roles.size +
434
+ (message.mentions.everyone ? 1 : 0);
403
435
  return {
404
436
  id: message.id,
405
437
  channelId: message.channelId,
@@ -407,6 +439,8 @@ class AntiSpam {
407
439
  normalized: (0, normalize_1.normalizeText)(message.content),
408
440
  timestamp: now,
409
441
  attachmentHashes: [],
442
+ attachmentCount: message.attachments.size,
443
+ mentionCount,
410
444
  };
411
445
  }
412
446
  maxRetentionMs(config = this.config) {
@@ -417,6 +451,9 @@ class AntiSpam {
417
451
  config.punishment.strikeDecayMs,
418
452
  config.punishment.cooldownMs,
419
453
  config.hop.windowMs,
454
+ config.echo.windowMs,
455
+ config.attach.windowMs,
456
+ config.mentions.windowMs,
420
457
  ];
421
458
  return Math.max(30_000, ...windows);
422
459
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AntiSpam.js","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AntiSpam.js","sourceRoot":"","sources":["../src/AntiSpam.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACf,MAAM,SAAS,CAAC;AA2QjB,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAuBlE;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,OAAO,GAAE,WAAW,CAAC,cAAc,CAAM,GACxC,cAAc,CAGhB;AAED,eAAO,MAAM,cAAc,gBAAO,CAAC"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,UAAU,EACV,cAAc,EACf,MAAM,SAAS,CAAC;AAoTjB,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAuBlE;AAED,wBAAgB,aAAa,CAC3B,MAAM,EAAE,UAAU,GAAG,SAAS,EAC9B,OAAO,GAAE,WAAW,CAAC,cAAc,CAAM,GACxC,cAAc,CAGhB;AAED,eAAO,MAAM,cAAc,gBAAO,CAAC"}
package/dist/defaults.js CHANGED
@@ -33,6 +33,7 @@ const BASE = {
33
33
  windowMs: 12_000,
34
34
  similarity: 0.9,
35
35
  sameChannelOnly: false,
36
+ minLength: 8,
36
37
  severity: "medium",
37
38
  },
38
39
  links: {
@@ -89,6 +90,8 @@ const BASE = {
89
90
  blockEveryone: true,
90
91
  blockHere: true,
91
92
  maxRepeatsOfSame: 0,
93
+ maxInWindow: 0,
94
+ windowMs: 12_000,
92
95
  severity: "high",
93
96
  },
94
97
  caps: {
@@ -136,6 +139,7 @@ const BASE = {
136
139
  minAgeDays: 3,
137
140
  blockDefaultAvatar: false,
138
141
  minGuildAgeDays: 0,
142
+ onlyWithLinks: false,
139
143
  severity: "medium",
140
144
  },
141
145
  length: {
@@ -173,6 +177,33 @@ const BASE = {
173
177
  maxAgeMs: 15_000,
174
178
  severity: "high",
175
179
  },
180
+ invisible: {
181
+ enabled: true,
182
+ maxInvisible: 8,
183
+ severity: "medium",
184
+ },
185
+ echo: {
186
+ enabled: true,
187
+ maxChannels: 3,
188
+ windowMs: 12_000,
189
+ similarity: 0.92,
190
+ minLength: 12,
191
+ severity: "high",
192
+ },
193
+ secrets: {
194
+ enabled: true,
195
+ botTokens: true,
196
+ webhooks: true,
197
+ extraPatterns: [],
198
+ scanEmbeds: true,
199
+ severity: "critical",
200
+ },
201
+ attach: {
202
+ enabled: true,
203
+ maxAttachments: 8,
204
+ windowMs: 10_000,
205
+ severity: "medium",
206
+ },
176
207
  punishment: {
177
208
  deleteMessage: true,
178
209
  warnUser: true,
@@ -202,11 +233,15 @@ const BASE = {
202
233
  addRoleIds: [],
203
234
  removeRoleIds: [],
204
235
  minStrikesForRoles: 1,
236
+ purgeCount: 0,
237
+ logWebhookUrl: null,
205
238
  },
206
239
  checkEdits: true,
207
240
  checkDeletes: true,
208
241
  ignoreThreads: false,
209
242
  ignoreSystem: true,
243
+ ignorePinned: false,
244
+ ignoreOlderThanMs: 0,
210
245
  cleanupIntervalMs: 60_000,
211
246
  disabledDetectors: [],
212
247
  detectorOrder: [],
@@ -226,6 +261,9 @@ const PRESET_OVERRIDES = {
226
261
  hop: { enabled: false },
227
262
  punctuation: { enabled: false },
228
263
  spoilers: { maxSpoilers: 15 },
264
+ invisible: { enabled: false },
265
+ echo: { enabled: false },
266
+ attach: { maxAttachments: 15 },
229
267
  links: {
230
268
  blockInvites: false,
231
269
  blockShorteners: false,
@@ -251,11 +289,14 @@ const PRESET_OVERRIDES = {
251
289
  maxLinks: 4,
252
290
  severity: "critical",
253
291
  },
254
- accounts: { enabled: true, minAgeDays: 1, minGuildAgeDays: 0 },
292
+ accounts: { enabled: true, minAgeDays: 1, minGuildAgeDays: 0, onlyWithLinks: true },
255
293
  length: { enabled: true, maxCharacters: 800 },
256
294
  hop: { maxChannels: 3, windowMs: 6_000 },
257
295
  ghostPing: { enabled: true },
258
296
  words: { enabled: false },
297
+ echo: { maxChannels: 2, windowMs: 8_000 },
298
+ invisible: { maxInvisible: 4 },
299
+ attach: { maxAttachments: 5 },
259
300
  punishment: {
260
301
  timeout: { enabled: true, durationMs: 5 * 60_000, minStrikes: 1, scale: "linear" },
261
302
  kick: { enabled: false, minStrikes: 4 },
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../src/defaults.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/detectors/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,UAAU,CAAC;AAKlE,eAAO,MAAM,eAAe,EAAE,QA6C7B,CAAC"}
1
+ {"version":3,"file":"accounts.d.ts","sourceRoot":"","sources":["../../src/detectors/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,UAAU,CAAC;AAelE,eAAO,MAAM,eAAe,EAAE,QA+C7B,CAAC"}
@@ -2,7 +2,19 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.accountDetector = void 0;
4
4
  const incident_1 = require("./incident");
5
+ const urls_1 = require("../utils/urls");
5
6
  const DAY_MS = 24 * 60 * 60 * 1000;
7
+ function messageHasUrl(message) {
8
+ if ((0, urls_1.extractUrls)(message.content).length > 0)
9
+ return true;
10
+ for (const embed of message.embeds) {
11
+ if (embed.url)
12
+ return true;
13
+ if (embed.description && (0, urls_1.extractUrls)(embed.description).length > 0)
14
+ return true;
15
+ }
16
+ return false;
17
+ }
6
18
  exports.accountDetector = {
7
19
  type: "account",
8
20
  inspect({ message, snapshot, config, now }) {
@@ -18,6 +30,8 @@ exports.accountDetector = {
18
30
  recommendedActions: ["delete", "warn"],
19
31
  });
20
32
  }
33
+ if (rules.onlyWithLinks && !messageHasUrl(message))
34
+ return null;
21
35
  if (rules.minGuildAgeDays > 0 && message.member?.joinedTimestamp) {
22
36
  const guildAgeDays = (now - message.member.joinedTimestamp) / DAY_MS;
23
37
  if (guildAgeDays < rules.minGuildAgeDays) {
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/detectors/accounts.ts"],"names":[],"mappings":";;;AACA,yCAA4C;AAE5C,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEtB,QAAA,eAAe,GAAa;IACvC,IAAI,EAAE,SAAS;IACf,OAAO,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAiB;QACvD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAElD,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACvD,OAAO,IAAA,yBAAc,EAAC,SAAS,EAAE,QAAQ,EAAE;gBACzC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;gBACzB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;gBACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,MAAM,EAAE,+BAA+B;gBACvC,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;aACvC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,KAAK,CAAC,eAAe,GAAG,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;YACjE,MAAM,YAAY,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG,MAAM,CAAC;YACrE,IAAI,YAAY,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;gBACzC,OAAO,IAAA,yBAAc,EAAC,SAAS,EAAE,QAAQ,EAAE;oBACzC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;oBACzB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;oBACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,MAAM,EAAE,2CAA2C,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,eAAe,QAAQ;oBAC7G,OAAO,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE;oBACjE,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;iBACvC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,MAAM,CAAC;QACzC,IAAI,OAAO,IAAI,KAAK,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC;QAE7C,OAAO,IAAA,yBAAc,EAAC,SAAS,EAAE,QAAQ,EAAE;YACzC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,MAAM,EAAE,2BAA2B,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,UAAU,QAAQ;YACnF,OAAO,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;YAClD,kBAAkB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;SACvC,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../src/detectors/accounts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { Detector } from "../types";
2
+ export declare const attachDetector: Detector;
3
+ //# sourceMappingURL=attach.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attach.d.ts","sourceRoot":"","sources":["../../src/detectors/attach.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAA2B,MAAM,UAAU,CAAC;AAGlE,eAAO,MAAM,cAAc,EAAE,QAwB5B,CAAC"}