diff options
Diffstat (limited to 'identity.py')
| -rw-r--r-- | identity.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/identity.py b/identity.py new file mode 100644 index 0000000..9b4faa0 --- /dev/null +++ b/identity.py @@ -0,0 +1,34 @@ +from dataclasses import dataclass +import tomllib + +@dataclass +class AgentIdentity: + name: str + personality: dict[str, str] + values: dict[str, bool] + quirks: dict[str, str] + +@dataclass +class UserProfile: + name: str + preferences: dict[str, str] + +def load_agent_identity(path: str) -> AgentIdentity: + with open(path, "rb") as file: + data = tomllib.load(file) + + return AgentIdentity( + name=data["name"], + personality=data["personality"], + values=data["values"], + quirks=data["quirks"], + ) + +def load_user_profile(path: str) -> UserProfile: + with open(path, "rb") as file: + data = tomllib.load(file) + + return UserProfile( + name=data["name"], + preferences=data["preferences"], + ) |
