import argparse
from typing import Callable
def cmd_init(args): print(f"Initializing in {args.path}")
def cmd_run(args): print(f"Running with workers={args.workers}, debug={args.debug}")
def main():
p = argparse.ArgumentParser(prog="myapp", description="A useful CLI tool")
sub = p.add_subparsers(dest="cmd", required=True)
pi = sub.add_parser("init", help="Initialize a project")
pi.add_argument("path")
pi.set_defaults(func=cmd_init)
pr = sub.add_parser("run", help="Run the server")
pr.add_argument("--workers", type=int, default=4)
pr.add_argument("--debug", action="store_true")
pr.set_defaults(func=cmd_run)
args = p.parse_args()
args.func(args)
if __name__ == "__main__":
main()
# myapp init /tmp/proj
# myapp run --workers 8 --debug
Create a free account and build your private vault. Share publicly whenever you want.