Enhance tool registry with new categories and distillation improvements#60
Merged
Enhance tool registry with new categories and distillation improvements#60
Conversation
… new categories for database, mobile, cloud, and CI/CD tools
…ate documentation for command chain resolution
…ation and snapshot tests
…checks with case-insensitive substring matching across all distillers.
…oading logic to skip empty or missing patterns
…in doctor command
…warnings in CLI output
… the learning queue upon successful application
…L regex escaping for numeric placeholders
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PR Auto Describe
Summary
This PR overhauls Omni's filter system, adds dedicated output distillers for database, security, and VCS tools, refines CLI UX for
omni doctor/omni learn, and expands tool profile support for modern development workflows.Key Changes
omni doctoroutputomni learntest reporting, queue auto-clearing, andomni statshelp textDetailed Breakdown
CLI Commands
omni doctor: Refactored filter source tracking, replaced simple .bak renaming of broken user filters with auto-repair, fixed project filter trust validation, and added capped aggregated warning display for filter loading issues.omni learn: Split test results into built-in vs user filter categories, redesigned candidate table formatting, auto-clears the learn queue after successful pattern application, added a troubleshooting tip for learned filter failures, and improved pattern preview truncation.omni stats: Updated help text to mention the--all-commandsflag for full command listings.Filter System Rework
toml_filtermodule: Madematch_commandoptional in TOML config, addedLoadReportstruct to bundle loaded filters + loading warnings, addedtry_repair_fileto auto-fix common broken TOML issues (missing schema version, trailing whitespace, dangerous catch-all patterns).load_from_file,load_from_dir,load_embedded_filters) to returnLoadReportinstead of raw filter vectors.get_filters_by_sourceto return LoadReport tuples for built-in, user, and local filters.New Distillers & Tooling
DatabaseDistiller: Parses PostgreSQL/MySQL/Redis CLI output, including errors and query resultsSecurityDistiller: Summarizes vulnerability findings from semgrep/trivy/snyk/banditVcsDistiller: Truncates long output for GitHub/GitLab CLI toolsdistill_with_commandto support new tool categories: database, security, VCS, Java/Flutter, monorepos, cloud infra, and CI/CD tools.Pipeline & Registry
resolve_profileto add cargo subcommand awareness (clippy, test, bench), and added profiles for database, Java, Flutter, cloud, and security tools.resolve_profile_for_chainto select the most specific tool profile for multi-command shell pipelines.Minor Fixes
Notes
Breaking Changes
toml_filterloading functions now returnLoadReportinstead ofVec<TomlFilter>, andget_filters_by_sourcenow returns tuples ofLoadReportinstead of raw filter vectors.match_commandis now optional in filter TOML files; filters without valid non-emptymatch_commandwill be skipped with warnings instead of failing to load.resolve_profile_for_chaininstead of directresolve_profilefor single commands, changing how multi-command pipelines are profiled.Last updated: 2026-04-14 09:41:58