Adapter преобразует один интерфейс в другой. В Go — создаёшь структуру-обёртку, которая реализует нужный интерфейс и внутри вызывает методы адаптируемого объекта. Пример: адаптер для логгера — оборачиваешь zap в интерфейс Logger с методами Info, Error.