From c3d9a839e3707346c8458b29e94e9aa8f4b2d11c Mon Sep 17 00:00:00 2001 From: Matt Clayton <156335168+mattjcly@users.noreply.github.com> Date: Wed, 22 Oct 2025 16:55:40 -0400 Subject: [PATCH 1/2] LM_STUDIO_API_TOKEN -> LM_API_TOKEN --- src/lmstudio/json_api.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lmstudio/json_api.py b/src/lmstudio/json_api.py index 1a7f389..7c33104 100644 --- a/src/lmstudio/json_api.py +++ b/src/lmstudio/json_api.py @@ -200,7 +200,7 @@ DEFAULT_TTL = 60 * 60 # By default, leaves idle models loaded for an hour # lmstudio-js and lmstudio-python use the same API token environment variable -_ENV_API_TOKEN = "LMSTUDIO_API_TOKEN" +_ENV_API_TOKEN = "LM_API_TOKEN" _LMS_API_TOKEN_REGEX = re.compile( r"^sk-lm-(?P[A-Za-z0-9]{8}):(?P[A-Za-z0-9]{20})$" ) From d3804df278abadd0e98b2625d8fbcbc9827c38df Mon Sep 17 00:00:00 2001 From: Matt Clayton Date: Wed, 22 Oct 2025 17:01:19 -0400 Subject: [PATCH 2/2] Fix tests --- tests/test_sessions.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/test_sessions.py b/tests/test_sessions.py index 5c66263..6e2ecfd 100644 --- a/tests/test_sessions.py +++ b/tests/test_sessions.py @@ -36,7 +36,7 @@ @pytest.mark.parametrize("client_cls", [AsyncClient, Client]) def test_auth_message_default(client_cls: ClientBase) -> None: with mock.patch.dict(os.environ) as env: - env.pop("LMSTUDIO_API_TOKEN", None) + env.pop("LM_API_TOKEN", None) auth_message = client_cls._create_auth_from_token(None) assert auth_message["authVersion"] == 1 assert auth_message["clientIdentifier"].startswith("guest:") @@ -49,7 +49,7 @@ def test_auth_message_default(client_cls: ClientBase) -> None: def test_auth_message_empty_token(client_cls: ClientBase) -> None: with mock.patch.dict(os.environ) as env: # Set a valid token in the env to ensure it is ignored - env["LMSTUDIO_API_TOKEN"] = _VALID_API_TOKEN + env["LM_API_TOKEN"] = _VALID_API_TOKEN auth_message = client_cls._create_auth_from_token("") assert auth_message["authVersion"] == 1 assert auth_message["clientIdentifier"].startswith("guest:") @@ -61,7 +61,7 @@ def test_auth_message_empty_token(client_cls: ClientBase) -> None: @pytest.mark.parametrize("client_cls", [AsyncClient, Client]) def test_auth_message_empty_token_from_env(client_cls: ClientBase) -> None: with mock.patch.dict(os.environ) as env: - env["LMSTUDIO_API_TOKEN"] = "" + env["LM_API_TOKEN"] = "" auth_message = client_cls._create_auth_from_token(None) assert auth_message["authVersion"] == 1 assert auth_message["clientIdentifier"].startswith("guest:") @@ -81,7 +81,7 @@ def test_auth_message_valid_token(client_cls: ClientBase) -> None: @pytest.mark.parametrize("client_cls", [AsyncClient, Client]) def test_auth_message_valid_token_from_env(client_cls: ClientBase) -> None: with mock.patch.dict(os.environ) as env: - env["LMSTUDIO_API_TOKEN"] = _VALID_API_TOKEN + env["LM_API_TOKEN"] = _VALID_API_TOKEN auth_message = client_cls._create_auth_from_token(None) assert auth_message["authVersion"] == 1 assert auth_message["clientIdentifier"] == "abcDEF78" @@ -101,7 +101,7 @@ def test_auth_message_valid_token_from_env(client_cls: ClientBase) -> None: @pytest.mark.parametrize("api_token", _INVALID_TOKENS) def test_auth_message_invalid_token(client_cls: ClientBase, api_token: str) -> None: with mock.patch.dict(os.environ) as env: - env["LMSTUDIO_API_TOKEN"] = _VALID_API_TOKEN + env["LM_API_TOKEN"] = _VALID_API_TOKEN with pytest.raises(LMStudioValueError): client_cls._create_auth_from_token(api_token) @@ -112,7 +112,7 @@ def test_auth_message_invalid_token_from_env( client_cls: ClientBase, api_token: str ) -> None: with mock.patch.dict(os.environ) as env: - env["LMSTUDIO_API_TOKEN"] = api_token + env["LM_API_TOKEN"] = api_token with pytest.raises(LMStudioValueError): client_cls._create_auth_from_token(None)