# BlueSkySight
A client to gather vulnerability-related information from the Bluesky.
The gathered data is subsequently transmitted to the
[Vulnerability-Lookup](https://github.com/cve-search/vulnerability-lookup) API.
### Installation
[pipx](https://github.com/pypa/pipx) is an easy way to install and run Python applications in isolated environments.
It's easy to [install](https://github.com/pypa/pipx?tab=readme-ov-file#on-linux).
```bash
$ pipx install BlueSkySight
$ export BLUESKYSIGHT_CONFIG=~/.BlueSkySight/conf.py
```
The configuration should be defined in a Python file (e.g., ``~/.BlueSkySight/conf.py``).
You must then set an environment variable (``BLUESKYSIGHT_CONFIG``) with the full path to this file.
You can have a look at [this example](https://github.com/CIRCL/BlueSkySight/blob/main/blueskysight/conf_sample.py) of configuration.
### Streaming the Firehose
``BlueSkySight-Firehose`` streams data from the Bluesky's firehose and uses PyVulnerabilityLookup to create sightings in Vulnerability-Lookup.
```bash
$ BlueSkySight-Firehose
Connecting to the Bluesky firehose…
Connection established.
```
### Streaming a Jetstream service
``BlueSkySight-Jetstream`` connects to Bluesky's firehose via Jetstream.
```bash
$ BlueSkySight-Jetstream --help
usage: BlueSkySight-Jetstream [-h] [--collections COLLECTIONS] [--geo {us-east,us-west}] [--instance {1,2}]
Connect to a Jetstream service.
options:
-h, --help show this help message and exit
--collections COLLECTIONS
The collections to subscribe to. If not provided, subscribe to all.
--geo {us-east,us-west}
Region of the Jetstream service.
--instance {1,2} Instance of the Jetstream service.
$ BlueSkySight-Jetstream
Connecting to the Bluesky Jetstream at wss://jetstream1.us-west.bsky.network/subscribe?wantedCollections=app.bsky.feed.post…
Connection established. Listening for messages…
```
## License
[BlueSkySight](https://github.com/CIRCL/BlueSkySight) is licensed under
[GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html)
~~~
Copyright (c) 2024-2025 Computer Incident Response Center Luxembourg (CIRCL)
Copyright (C) 2024-2025 Cédric Bonhomme - https://github.com/cedricbonhomme
~~~
Raw data
{
"_id": null,
"home_page": "https://github.com/CIRCL/BlueSkySight",
"name": "BlueSkySight",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "Vulnerability-Lookup, Vulnerability, CVE, Bluesky",
"author": "C\u00e9dric Bonhomme",
"author_email": "cedric.bonhomme@circl.lu",
"download_url": "https://files.pythonhosted.org/packages/09/36/6eb9b667e0ba45cc335c2b8a6174c9b6a0e742410845b06b08b641770667/blueskysight-0.4.0.tar.gz",
"platform": null,
"description": "# BlueSkySight\n\nA client to gather vulnerability-related information from the Bluesky.\nThe gathered data is subsequently transmitted to the\n[Vulnerability-Lookup](https://github.com/cve-search/vulnerability-lookup) API.\n\n\n### Installation\n\n[pipx](https://github.com/pypa/pipx) is an easy way to install and run Python applications in isolated environments.\nIt's easy to [install](https://github.com/pypa/pipx?tab=readme-ov-file#on-linux).\n\n```bash\n$ pipx install BlueSkySight\n$ export BLUESKYSIGHT_CONFIG=~/.BlueSkySight/conf.py\n```\n\nThe configuration should be defined in a Python file (e.g., ``~/.BlueSkySight/conf.py``).\nYou must then set an environment variable (``BLUESKYSIGHT_CONFIG``) with the full path to this file.\n\nYou can have a look at [this example](https://github.com/CIRCL/BlueSkySight/blob/main/blueskysight/conf_sample.py) of configuration.\n\n\n### Streaming the Firehose\n\n``BlueSkySight-Firehose`` streams data from the Bluesky's firehose and uses PyVulnerabilityLookup to create sightings in Vulnerability-Lookup.\n\n```bash\n$ BlueSkySight-Firehose \nConnecting to the Bluesky firehose\u2026\nConnection established.\n```\n\n### Streaming a Jetstream service\n\n``BlueSkySight-Jetstream`` connects to Bluesky's firehose via Jetstream.\n\n```bash\n$ BlueSkySight-Jetstream --help\nusage: BlueSkySight-Jetstream [-h] [--collections COLLECTIONS] [--geo {us-east,us-west}] [--instance {1,2}]\n\nConnect to a Jetstream service.\n\noptions:\n -h, --help show this help message and exit\n --collections COLLECTIONS\n The collections to subscribe to. If not provided, subscribe to all.\n --geo {us-east,us-west}\n Region of the Jetstream service.\n --instance {1,2} Instance of the Jetstream service.\n\n\n$ BlueSkySight-Jetstream \nConnecting to the Bluesky Jetstream at wss://jetstream1.us-west.bsky.network/subscribe?wantedCollections=app.bsky.feed.post\u2026\nConnection established. Listening for messages\u2026\n```\n\n\n## License\n\n[BlueSkySight](https://github.com/CIRCL/BlueSkySight) is licensed under\n[GNU General Public License version 3](https://www.gnu.org/licenses/gpl-3.0.html)\n\n~~~\nCopyright (c) 2024-2025 Computer Incident Response Center Luxembourg (CIRCL)\nCopyright (C) 2024-2025 C\u00e9dric Bonhomme - https://github.com/cedricbonhomme\n~~~\n",
"bugtrack_url": null,
"license": "GPL-3.0-or-later",
"summary": "A client to gather vulnerability-related information from Bluesky.",
"version": "0.4.0",
"project_urls": {
"Homepage": "https://github.com/CIRCL/BlueSkySight",
"Repository": "https://github.com/CIRCL/BlueSkySight"
},
"split_keywords": [
"vulnerability-lookup",
" vulnerability",
" cve",
" bluesky"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1dd3d82fb797b0a090f519e88c99950d5c0d270abdf416383bf6a5f7a86d983a",
"md5": "64a8f84135294d61fd2277ce4070ae25",
"sha256": "0a37e981f2947bb4c3e0496d4585059dcdcb2313ef48b1f4c0249bc59cad29dc"
},
"downloads": -1,
"filename": "blueskysight-0.4.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "64a8f84135294d61fd2277ce4070ae25",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 41353,
"upload_time": "2025-01-06T09:03:34",
"upload_time_iso_8601": "2025-01-06T09:03:34.127707Z",
"url": "https://files.pythonhosted.org/packages/1d/d3/d82fb797b0a090f519e88c99950d5c0d270abdf416383bf6a5f7a86d983a/blueskysight-0.4.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "09366eb9b667e0ba45cc335c2b8a6174c9b6a0e742410845b06b08b641770667",
"md5": "e5b20ad1957f88432154b4f4368f5ad3",
"sha256": "9d4d6cc8656398df50014a191464891f0629cfdba439510a758435d1e6f0181e"
},
"downloads": -1,
"filename": "blueskysight-0.4.0.tar.gz",
"has_sig": false,
"md5_digest": "e5b20ad1957f88432154b4f4368f5ad3",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 25415,
"upload_time": "2025-01-06T09:03:35",
"upload_time_iso_8601": "2025-01-06T09:03:35.179143Z",
"url": "https://files.pythonhosted.org/packages/09/36/6eb9b667e0ba45cc335c2b8a6174c9b6a0e742410845b06b08b641770667/blueskysight-0.4.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-01-06 09:03:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "CIRCL",
"github_project": "BlueSkySight",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "blueskysight"
}