sig
  val v :
    ?usage:Assemblage.Part.usage ->
    ?exists:bool Assemblage.Conf.value ->
    ?args:Assemblage.Args.t ->
    ?dir:Assemblage.Path.t Assemblage.Conf.value ->
    string ->
    Assemblage.Action.t Assemblage.Conf.value ->
    [< Assemblage.part_kind > `Run ] Assemblage.part
  val with_bin :
    ?usage:Assemblage.Part.usage ->
    ?exists:bool Assemblage.Conf.value ->
    ?args:Assemblage.Args.t ->
    ?dir:Assemblage.Path.t Assemblage.Conf.value ->
    ?name:string ->
    ?ext:Assemblage.Path.ext ->
    [< `Bin ] Assemblage.part ->
    (Assemblage.Acmd.cmd -> Assemblage.Acmd.t list) Assemblage.Conf.value ->
    [< Assemblage.part_kind > `Run ] Assemblage.part
  val bin :
    ?usage:Assemblage.Part.usage ->
    ?exists:bool Assemblage.Conf.value ->
    ?args:Assemblage.Args.t ->
    ?dir:Assemblage.Path.t Assemblage.Conf.value ->
    ?name:string ->
    ?ext:Assemblage.Path.ext ->
    ?stdin:Assemblage.Path.t Assemblage.Conf.value ->
    ?stdout:Assemblage.Path.t Assemblage.Conf.value ->
    ?stderr:Assemblage.Path.t Assemblage.Conf.value ->
    [< `Bin ] Assemblage.part ->
    string list Assemblage.Conf.value ->
    [< Assemblage.part_kind > `Run ] Assemblage.part
end