import typer
from .modules.vcf2fasta import vcf2fasta
from .modules.isovar_filter import filter_isovar

app = typer.Typer(add_completion=False)

@app.callback()
def callback():
    """
    neofind: A pipeline for discovering and analyzing neoantigens using RNA, Ribo, and WES/WGS sequence data.
    
    neofind is designed to identify and analyze neoantigens from sequencing data, including:
    - Processing VCF files with RNA BAM files to generate mutant protein sequences
    - Analyzing neoantigen candidates for personalized cancer immunotherapy
    """

app.command(name="vcf2fasta")(vcf2fasta)
app.command(name="filter")(filter_isovar)


if __name__ == "__main__":
    app()