Is there a way to create group/specific runners that work exactly the same as shared runners?

I use self-hosted (specific) runners a lot to run CI/CD workflow, but I often need to tweak .gitlab-ci.yml, when switching between shared runners and my own runners, so that some wired things like docker (and docker-in-docker) can work.

Is there a way to create my own runners, and let them work exactly how the shared runners work, so that I won’t need to tweak .gitlab-yi.yml anymore ?

I assume we are talking about GitLab.com SaaS and not self-managed GitLab instance.
You can configure your own runners as you need.
Here is the configuration description of the GitLab.com shared runners.

Thank you for that link and the config.toml is what I need.

very much thanks.