{"id":8242,"library":"jac-cloud","title":"Jac Cloud Client","description":"Jac Cloud (version 0.2.11) provides a high-level Python API to interact with Jaseci services on the cloud, built upon the `jac-sdk`. It simplifies the deployment and management of AI agents and workflows within the Jaseci ecosystem. The library is actively developed, with releases typically following updates to the underlying `jac-sdk` and a strict requirement for Python 3.12 or newer.","status":"active","version":"0.2.11","language":"en","source_language":"en","source_url":"https://github.com/jaseci-ai/jac-cloud","tags":["AI","cloud","jaseci","orchestration","language models","agentic"],"install":[{"cmd":"pip install jac-cloud","lang":"bash","label":"Install latest version"}],"dependencies":[{"reason":"Core functionality relies on the Jaseci SDK for cloud interactions.","package":"jac-sdk"},{"reason":"Used for making HTTP requests to the Jaseci cloud service.","package":"requests"}],"imports":[{"note":"JacClient is nested within the `jac_cloud` package, not directly at the top level.","wrong":"from jac_client import JacClient","symbol":"JacClient","correct":"from jac_cloud.jac_client import JacClient"}],"quickstart":{"code":"import os\nfrom jac_cloud.jac_client import JacClient\n\n# Ensure JAC_API_KEY and JAC_API_URL are set as environment variables\n# e.g., export JAC_API_URL=\"http://localhost:8000\" and export JAC_API_KEY=\"your_key\"\n\n# Initialize JacClient (it picks up env vars by default)\nclient = JacClient()\n\ntry:\n    # Check the health of the connected Jaseci service\n    health_status = client.get_health()\n    print(f\"Jaseci Cloud Health Status: {health_status}\")\n\n    # Example: Create a simple agent\n    agent_name = \"quickstart_example_agent\"\n    print(f\"\\nAttempting to create agent: {agent_name}\")\n    agent = client.create_agent(name=agent_name)\n    print(f\"Agent '{agent.name}' created with UUID: {agent.uuid}\")\n\n    # Example: Retrieve agent details\n    retrieved_agent = client.get_agent(uuid=agent.uuid)\n    print(f\"Retrieved agent name: {retrieved_agent.name}\")\n\n    # Clean up: Delete the created agent\n    print(f\"Deleting agent: {agent.uuid}\")\n    delete_result = client.delete_agent(uuid=agent.uuid)\n    print(f\"Agent deletion result: {delete_result}\")\n\nexcept Exception as e:\n    print(f\"An error occurred: {e}\")\n    print(\"\\nHint: Please ensure JAC_API_KEY and JAC_API_URL environment variables are set and point to a running Jaseci service.\")","lang":"python","description":"Initializes a `JacClient` using environment variables for authentication, checks the Jaseci service health, creates and retrieves a simple agent, and then cleans up by deleting it. Requires a running Jaseci service with `JAC_API_KEY` and `JAC_API_URL` configured."},"warnings":[{"fix":"Always refer to the latest official documentation and quickstart examples for your installed `jac-cloud` version to ensure correct API usage.","message":"API instability due to pre-1.0 versioning. `jac-cloud` follows the `jac-sdk` which is also in early development, leading to frequent changes in method signatures and object structures between minor versions.","severity":"breaking","affected_versions":"<1.0.0"},{"fix":"Use `pyenv`, `conda`, or ensure your virtual environment is configured with Python 3.12.0 or newer (e.g., `python3.12 -m venv .venv`).","message":"Strict Python 3.12+ requirement. The library explicitly requires Python 3.12.0 or higher, which can cause `ModuleNotFoundError` or other installation issues if a lower version is used.","severity":"gotcha","affected_versions":"All <1.0.0"},{"fix":"Ensure `export JAC_API_KEY=\"your_key_here\"` and `export JAC_API_URL=\"http://your_jaseci_instance:8000\"` are set in your shell, or explicitly pass these parameters to `JacClient(api_url=..., api_key=...)`.","message":"`JacClient` relies on environment variables for authentication by default. Missing or incorrect `JAC_API_KEY` or `JAC_API_URL` environment variables will lead to `Unauthorized` or `ConnectionError`.","severity":"gotcha","affected_versions":"All <1.0.0"}],"env_vars":null,"last_verified":"2026-04-16T00:00:00.000Z","next_check":"2026-07-15T00:00:00.000Z","problems":[{"fix":"Run `pip install jac-cloud` to install the library.","cause":"The `jac-cloud` package is not installed in the current Python environment.","error":"ModuleNotFoundError: No module named 'jac_cloud'"},{"fix":"Set the correct `JAC_API_KEY` environment variable, e.g., `export JAC_API_KEY=\"your_valid_api_key_here\"`, or pass it directly to `JacClient`.","cause":"The `JAC_API_KEY` environment variable is either missing, incorrect, or expired for the target Jaseci service.","error":"jac_cloud.exceptions.JacCloudException: Unauthorized"},{"fix":"Verify `JAC_API_URL` points to an active Jaseci service (e.g., `export JAC_API_URL=\"http://localhost:8000\"`), and ensure the service is running and accessible.","cause":"The `JAC_API_URL` environment variable is incorrect, or the Jaseci service at that URL is not running or unreachable.","error":"requests.exceptions.ConnectionError: HTTPConnectionPool(...) Failed to establish a new connection: [Errno 111] Connection refused"},{"fix":"Consult the latest official documentation or `jac_cloud` source code for the correct `JacClient` constructor arguments and method signatures for your installed version.","cause":"An older API parameter or constructor signature is being used with a newer version of `jac-cloud`, or vice-versa.","error":"TypeError: JacClient.__init__() got an unexpected keyword argument 'auth_token'"}]}