sig
  type 'a t
  val v :
    ?answer:Topkg_fpath.t ->
    Topkg_cmd.t -> 'Topkg_codec.t -> 'Topkg_ipc.t
  val cmd : 'Topkg_ipc.t -> Topkg_cmd.t
  val codec : 'Topkg_ipc.t -> 'Topkg_codec.t
  val answer : 'Topkg_ipc.t -> Topkg_fpath.t
  val pkg : unit -> Topkg_pkg.t Topkg_ipc.t
  val lint_custom :
    unit -> Topkg_result.R.msg Topkg_result.result list option Topkg_ipc.t
  val distrib_prepare :
    dist_build_dir:string ->
    name:string ->
    version:string ->
    opam:string ->
    opam_adds:string -> Topkg_fpath.t list Topkg_result.result Topkg_ipc.t
  val write_answer : Topkg_cmd.t -> Topkg_pkg.t -> unit Topkg_result.result
end