c1435dc5fa
`git clone` only accepts the bare repo URL, but users routinely paste URLs they copied from a browser tab (`tree/`, `blob/`, `pull/`, `commit/`, `releases/`, `issues/`, etc.). Previously every such URL was passed verbatim to `git clone` and failed with `repository not found`. `_resolve_git_url()` now normalizes `https://github.com/{owner}/{repo}/<browser-segment>/...` down to `https://github.com/{owner}/{repo}.git` before handing off to git. Non-github hosts (gitlab, bitbucket, custom), SSH/file URLs, and the bare `https://github.com/owner/repo` form are all returned unchanged. Cline shipped the same UX concept for single-file plugins from blob URLs in cline#10945; hermes-agent plugins are directory-based, so this port is restricted to the URL-normalization piece that applies to our model.