Summary
Allow users to extend or override the built-in skill taxonomy with a custom YAML file, enabling ProjectBridge to work for niche domains (embedded systems, bioinformatics, game dev, etc.) that aren't covered by the default 71 skills.
Details
The current taxonomy in engine/projectbridge/analysis/taxonomy.py is a hardcoded dict of ~71 skills with adjacency relationships. Users in specialized fields can't get useful results because their core technologies aren't recognized.
Proposed approach
- Define a YAML schema for custom taxonomies (skill name, category, adjacent skills)
- Load from a conventional path (e.g.,
~/.config/projectbridge/taxonomy.yaml or a --taxonomy CLI flag)
- Merge custom entries into the built-in taxonomy — custom entries override built-in ones with the same key, new entries are added
- Validate adjacency references (warn if a custom skill references a non-existent adjacent skill)
References
- Built-in taxonomy:
engine/projectbridge/analysis/taxonomy.py
- Config loading pattern:
engine/projectbridge/config/settings.py
- Analysis engine that consumes the taxonomy:
engine/projectbridge/analysis/engine.py
Summary
Allow users to extend or override the built-in skill taxonomy with a custom YAML file, enabling ProjectBridge to work for niche domains (embedded systems, bioinformatics, game dev, etc.) that aren't covered by the default 71 skills.
Details
The current taxonomy in
engine/projectbridge/analysis/taxonomy.pyis a hardcoded dict of ~71 skills with adjacency relationships. Users in specialized fields can't get useful results because their core technologies aren't recognized.Proposed approach
~/.config/projectbridge/taxonomy.yamlor a--taxonomyCLI flag)References
engine/projectbridge/analysis/taxonomy.pyengine/projectbridge/config/settings.pyengine/projectbridge/analysis/engine.py