mirror of
https://github.com/agent0ai/agent-zero.git
synced 2026-07-24 16:23:35 +00:00
Include usr/.env in the agent-facing SecretsManager sources so runtime credentials are masked in tool results, history, logs, and streamed output. Keep the writable default secrets manager scoped to usr/secrets.env. Add regression coverage for dotenv masking and document the source contract.
23 lines
697 B
Python
23 lines
697 B
Python
from helpers import secrets
|
|
|
|
|
|
class _Context:
|
|
def get_data(self, key: str):
|
|
return None
|
|
|
|
|
|
def test_agent_secret_manager_masks_runtime_dotenv_values(monkeypatch):
|
|
monkeypatch.setattr(secrets.SecretsManager, "_instances", {})
|
|
monkeypatch.setattr(secrets.dotenv, "get_dotenv_file_path", lambda: "usr/.env")
|
|
|
|
contents = {
|
|
"usr/secrets.env": "PROJECT_SECRET=project-value\n",
|
|
"usr/.env": "LLM_API_KEY=llm-secret-value\n",
|
|
}
|
|
monkeypatch.setattr(secrets.files, "read_file", contents.__getitem__)
|
|
|
|
manager = secrets.get_secrets_manager(_Context())
|
|
|
|
assert manager.mask_values("key=llm-secret-value") == (
|
|
"key=§§secret(LLM_API_KEY)"
|
|
)
|