Similar to the server, Ktor supports features on the client. And it has the same design: there is a pipeline for client HTTP requests, and there are interceptors and installable features.
If you want to create features, you can use the standard features as a reference.
You can also check the HttpRequestPipeline.Phases and HttpResponsePipeline.Phases to understand the interception points available.