Vlad Hey, as posted by @junukwon7 the app Velja does an OK job to manage the rules.
The interface should consist of three parts: Rules overview, Rule definition and pattern matching.
Besides the interface, there should be a quick way to add a rule. E.g. by right-clicking the URL in the search bar and selecting "Always open in $profile" which would create a domain matching rule.
Interface description:
Rules overview
Overview of all rules that gives a bird's-eye view of what exists.
- Showing the rule name and the profile the rule is assigned too.
- It should be possible to filter rules based on profile or configured session to only see rules that apply to these.
Rule definition
Interface to create a new rule or to edit an existing one.
- Name of the rule for user-friendly naming.
- Profile (or later on also session) to be used for this rule. This is the profile in which the URL will be opened when the URL matches.
Pattern matching
A list of patterns, that would trigger the rule (Velja calls these matchers). Most likely a child element of the rule definition.
There can be multiple patterns in a rule that are OR chained.
- Sample URL to test your pattern against.
- Pattern style, that defines how to detect if the rule would match.
(Domain, Full domain matching including subdomain, Prefix, Contains and Regex)
- Pattern value.
Value to match the visited URL against to trigger the rule.
Playing together
As soon as a rule matches, the given URL will be opened in the configured profile/session. In case the profile is not active, a new window for the profile will be created. If the profile window is not focused, the focus would switch to the appropriate window.
Velja example
Here is an image from Velja when adding a new rule.
I hope this helps.