# Charybdis Plugin Registry # This file defines which plugins are enabled and their protobuf field number allocations. # Field numbers must be unique to avoid conflicts in the generated protobuf. # Field number ranges: # - Core types: 1-99 (reserved for Charybdis core entity types) # - Plugin types: 100+ (allocated sequentially per plugin) [core] # Core entity types are always enabled proto_path = "proto/core" metadata_field_range = "10-49" spec_field_range = "10-49" # Plugin configurations # Each plugin must declare: # - enabled: whether to include this plugin in the build # - proto_path: path to the plugin's .proto files # - metadata_field_number: unique field number for the metadata oneof variant # - spec_field_number: unique field number for the spec oneof variant [plugins.defectdojo] enabled = true proto_path = "plugins/defectdojo/proto" metadata_field_number = 100 spec_field_number = 200 description = "DefectDojo security testing integration" [plugins.keycloak] enabled = true proto_path = "plugins/keycloak/proto" metadata_field_number = 102 spec_field_number = 202 description = "Keycloak identity provider sync (users and groups)" [plugins.dependencytrack] enabled = true proto_path = "plugins/dependencytrack/proto" metadata_field_number = 101 spec_field_number = 201 description = "Dependency-Track component analysis integration" # Example plugin configuration: # [plugins.my_custom_plugin] # enabled = true # proto_path = "plugins/my_custom_plugin/proto" # metadata_field_number = 102 # spec_field_number = 102 # description = "My custom plugin for X integration" # NOTE: When adding a new plugin: # 1. Create the plugin directory structure: plugins//proto/.proto # 2. Define Metadata and Spec messages in the proto file # 3. Add configuration here with unique field numbers # 4. Set enabled = true # 5. Run `cargo build` to regenerate entities.proto