{"version":"0.2.120","anchor":"technical-details","canonical_anchor":"technical-details","heading":"Technical Details","tier":null,"area":null,"scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/0.2.120\/e\/technical-details","release_url":"https:\/\/changelogs.core-directive.com\/v\/0.2.120","markdown":"### Technical Details\n\nThe main changes revolve around the `tR5` function (previously `Sy0`) which handles tool permissions:\n\n`\/\/ New implementation with tool name parsing function tR5({ allowedToolsCli, disallowedToolsCli, permissionMode }) { let parsedAllowed = fc1(allowedToolsCli), \/\/ Parse comma-separated values parsedDisallowed = fc1(disallowedToolsCli); return Fb0( { mode: permissionMode, alwaysAllowRules: { cliArg: parsedAllowed }, alwaysDenyRules: { cliArg: parsedDisallowed }, }, Db0(), ); }` Where `fc1` is the new parsing function that:\n\n- Handles null\/undefined inputs gracefully\n- Splits comma-separated values\n- Trims whitespace from each tool name\n- Filters out empty strings\n\nThis enhancement makes it easier to specify multiple tools in scripts and command-line usage without needing to repeat the flag multiple times."}