mirror of
https://github.com/reconurge/flowsint.git
synced 2026-06-10 00:30:17 -05:00
[PR #157] feat(registry): discover third-party enricher/type packs via entry points #2626
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/reconurge/flowsint/pull/157
Author: @thau0x01
Created: 6/3/2026
Status: 🔄 Open
Base:
main← Head:feat/enricher-type-plugin-discovery📝 Commits (2)
d770772feat(registry): discover third-party enricher/type packs via entry points17b3d82docs: document external enricher/type packs via entry points📊 Changes
5 files changed (+463 additions, -0 deletions)
View changed files
➕
docs/developers/external-packs.mdx(+391 -0)📝
docs/developers/managing-enrichers.mdx(+2 -0)📝
docs/developers/managing-types.mdx(+2 -0)📝
flowsint-enrichers/src/flowsint_enrichers/registry.py(+35 -0)📝
flowsint-types/src/flowsint_types/registry.py(+33 -0)📄 Description
What
Adds an opt-in entry-point discovery hook so external packages can ship Flowsint enrichers and types from their own top-level package, without vendoring them inside
flowsint_enrichers/orflowsint_types/.load_all_enrichers()andload_all_types()now also iterate theflowsint.enrichersandflowsint.typesentry-point groups and import the referenced module, firing the existing@flowsint_enricher/@flowsint_typedecorators into the global registries.Why
Today discovery is a filesystem walk of a single package directory, so the only way to add enrichers/types is to edit this repo. This hook lets people maintain private or domain-specific packs (e.g. country-specific OSINT sources) as separate, independently-versioned distributions that only need to be installed alongside Flowsint.
How a pack registers
The referenced module is imported once; its
__init__imports the submodules that define the decorated classes.Notes
_enrichers_loaded/_types_loadedguards.🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.