{"id":27864,"library":"hindsight-client","title":"Hindsight Client","description":"Python client for Hindsight, a semantic memory system with personality-driven thinking. Current version 0.6.1, requires Python >=3.10. Released under MIT license. Development is active with regular updates.","status":"active","version":"0.6.1","language":"python","source_language":"en","source_url":"https://github.com/hindsight-ai/hindsight-client","tags":["semantic-memory","ai","personality","client"],"install":[{"cmd":"pip install hindsight-client","lang":"bash","label":"PyPI"}],"dependencies":[{"reason":"HTTP client for API calls","package":"requests","optional":false},{"reason":"Data validation and settings","package":"pydantic","optional":false}],"imports":[{"note":"Package name is 'hindsight_client', not 'hindsight'","wrong":"from hindsight import Client","symbol":"Client","correct":"from hindsight_client import Client"}],"quickstart":{"code":"from hindsight_client import Client\n\nclient = Client(\n    api_key=os.environ.get('HINDSIGHT_API_KEY', ''),\n    base_url=\"https://api.example.com\"\n)\nresponse = client.think(prompt=\"Tell me about semantic memory\", personality=\"analytical\")\nprint(response['text'])","lang":"python","description":"Initialize client with API key and base URL, then call think() to generate a response."},"warnings":[{"fix":"Set environment variable before using client: export HINDSIGHT_API_KEY='your_key'","message":"API key is required; missing key raises a ValueError on first call. Always set HINDSIGHT_API_KEY environment variable.","severity":"breaking","affected_versions":"all"},{"fix":"Call client.validate() immediately after construction to test credentials.","message":"Client instantiation does not validate the API key; validation happens on first request. A typo in the key will only surface then.","severity":"gotcha","affected_versions":"all"},{"fix":"Use from hindsight_client import Personality; response = client.think(prompt=..., personality=Personality.LOGICAL)","message":"The 'personality' parameter in think() used to accept a string like 'logical', but now expects a Personality enum member.","severity":"deprecated","affected_versions":">=0.6.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Export HINDSIGHT_API_KEY in your environment or pass api_key as a string to Client(api_key='...').","cause":"Client initialized without an API key.","error":"ValueError: No API key provided. Set HINDSIGHT_API_KEY environment variable or pass api_key to Client()."},{"fix":"Change 'personality=\"analytical\"' to 'personality=Personality.ANALYTICAL' after importing Personality.","cause":"Deprecated string personality value passed instead of Personality enum.","error":"pydantic.error_wrappers.ValidationError: 1 validation error for ThinkRequest personality -> value is not a valid enumeration member"},{"fix":"Verify the base_url (e.g., 'https://api.hindsight.ai'). Check network connectivity.","cause":"Incorrect base_url or network issue.","error":"requests.exceptions.ConnectionError: HTTPConnectionPool(host='api.example.com', port=443): Max retries exceeded"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}