Files
neuron-tai/packages/gateway/meshnet_gateway/cli.py
2026-06-29 00:28:29 +03:00

46 lines
1.3 KiB
Python

"""meshnet-gateway CLI entry point."""
import argparse
import sys
def main() -> None:
parser = argparse.ArgumentParser(
prog="meshnet-gateway",
description="Distributed Inference Network HTTP gateway",
)
subparsers = parser.add_subparsers(dest="command")
start_cmd = subparsers.add_parser("start", help="Start the gateway server")
start_cmd.add_argument("--tracker", default="http://localhost:8080", help="Tracker URL")
start_cmd.add_argument(
"--node-url",
default="http://localhost:7000",
help="Node URL to route to until tracker routing is implemented",
)
start_cmd.add_argument("--port", type=int, default=8080, help="Port to listen on")
args = parser.parse_args()
if args.command == "start":
from meshnet_gateway.server import GatewayServer
gateway = GatewayServer(node_url=args.node_url, port=args.port)
port = gateway.start()
print(f"meshnet-gateway listening on port {port}")
print(f"Tracker URL: {args.tracker}")
print(f"Routing to node URL: {args.node_url}")
try:
import time
while True:
time.sleep(1)
except KeyboardInterrupt:
gateway.stop()
sys.exit(0)
else:
parser.print_help()
if __name__ == "__main__":
main()