| from __future__ import annotations | |
| import argparse | |
| import os | |
| def main(argv: list[str] | None = None) -> int: | |
| parser = argparse.ArgumentParser(description="Serve the KEY OS Resource OS substrate.") | |
| parser.add_argument("--host", default=os.environ.get("HOST", "0.0.0.0")) | |
| parser.add_argument("--port", type=int, default=int(os.environ.get("PORT", "7861"))) | |
| parser.add_argument("--root", default=os.environ.get("KEY_OS_ROOT", "/data/key_os")) | |
| parser.add_argument("--reload", action="store_true") | |
| args = parser.parse_args(argv) | |
| os.environ["KEY_OS_ROOT"] = args.root | |
| import uvicorn | |
| uvicorn.run("key_os.server:app", host=args.host, port=args.port, reload=args.reload) | |
| return 0 | |
| if __name__ == "__main__": | |
| raise SystemExit(main()) | |