# dts_cli.py — أوامر CLI لتشغيل النظام الموزع import click import threading from peer_discovery import PEERS, PORT import dashboard import rpc_server @click.group() def cli(): pass @cli.command() def start(): """بدء Dashboard وخادم RPC معاً""" # شغّل الـ Dashboard في خيط منفصل t = threading.Thread(target=lambda: dashboard.socketio.run(dashboard.app, host="0.0.0.0", port=7000), daemon=True) t.start() # شغّل خادم RPC في الخيط الرئيسي rpc_server.app.run(host="0.0.0.0", port=PORT) @cli.command() def discover(): """طباعة قائمة الأقران المكتشفة""" for i, peer in enumerate(sorted(PEERS), 1): print(f"{i}. {peer}") if __name__ == "__main__": cli()