sopel-safety
A Sopel plugin providing alerts about malicious URLs.
This is a continuation of Sopel's built-in safety plugin.
Installing
Releases are hosted on PyPI, so after installing Sopel, all you need is pip:
$ pip install sopel-safety
Configuring
The easiest way to configure sopel-safety is via Sopel's configuration
wizard—simply run sopel-plugins configure safety and enter the values for
which it prompts you.
Migrating from sopel.builtins.safety
Sopel's old built-in safety plugin had a setting called enabled_by_default,
which was deprecated in favor of a default_mode setting. This plugin doesn't
include any logic to handle the enabled_by_default value, and Sopel's logs
will warn about that setting if present in the config file.
If you used to use the built-in safety plugin, you should delete
enabled_by_default from your config file and set default_mode to one of the
choices described below.
You can also safely delete the malwaredomains.txt file if it exists in your
Sopel bot's homedir. Newer versions of safety (both the built-in plugin and
this continuation package) use unsafedomains.txt instead.
Available options
default_mode— Which operating mode to use in channels without a mode set.
Available options are 'off', 'local', 'local strict', 'on', and 'strict'.known_good— A list of "known good" domains or regexes to consider trusted.vt_api_key— Optional VirusTotal API key.
Providing this can improve malicious URL detection. Without it, this plugin will check against the domain blocklist only.domain_blocklist_url— Optional URL of an alternate domain blocklist.
This plugin uses StevenBlack's unified hosts file by default, which aggregates known domains across adware and malware categories. This option can be used to specify a different variant from the same repository, or another compatible file maintained elsewhere.
Changelog
0.1.0
First release of sopel-safety.
Standalone package, based on Sopel's built-in safety plugin.
Metadata
Release files for sopel-safety 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sopel_safety-0.1.0.tar.gz | 10.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sopel_safety-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.9 kB
Release files / sopel_safety-0.1.0.tar.gz
| Download URL | sopel_safety-0.1.0.tar.gz |
|---|---|
| Size | 10.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
048566171ab6ba99edf9d0c3b1f4c89f29e7a280a6efdd567974944715a40483
|
|
BLAKE2b-256 checksum How to use checksums |
82245eb90e49ad8a9f1fc868c717b3ef7366e0631837bf9520559e03dee68eb2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 9, 2025.
Transparency logRelease files / sopel_safety-0.1.0-py3-none-any.whl
| Download URL | sopel_safety-0.1.0-py3-none-any.whl |
|---|---|
| Size | 9.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
be3ac3418f3ecd37a4ff89dd68cd9f785df79a1ba34694c9e625bb7361232186
|
|
BLAKE2b-256 checksum How to use checksums |
44da4b8dd48a7877820f99efd3fde2ca8735d9ba72492bdd5d7e70d3f37ff377
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.12.9
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jun 9, 2025.
Transparency log