Skip to main content

A full-featured async Python client for the internal Antigravity API with Tool Calling and Streaming support.

Project description

anti-client

A full-featured Python client library for interacting with the internal Anrigravity API (Gemini).

Features

  • OAuth 2.0 Authentication: Built-in authentication flow with token caching (~/.anti-api/accounts.json).
  • Function Calling: Complete support for tool execution by agents.
  • Streaming: Native streaming capabilities, seamlessly integrated with function calling.
  • Resource Management: Automated model discovery, quota checking, and precise usage statistics.

Installation

Install the package directly from the source directory:

pip install .

Usage Example

from anti_client import Client, Agent, Tool

# 1. Initialize Client (Triggers OAuth flow if tokens are missing)
client = Client()

# 2. Define Tools
def get_weather(city: str) -> str:
    """Retrieve weather information for a specific city."""
    return f"The weather in {city} is clear and sunny."

weather_tool = Tool(
    name="get_weather",
    description="Retrieve the current weather for a specified city.",
    parameters={
        "type": "object",
        "properties": {
            "city": {"type": "string", "description": "The name of the city."}
        },
        "required": ["city"],
    },
    func=get_weather
)

# 3. Initialize Agent
agent = Agent(
    client=client,
    model="gemini-3.1-pro-low",
    system_prompt="You are a helpful assistant.",
    tools=[weather_tool]
)

# 4. Generate Response
response = agent.run("Hello! What's the weather like in London?")

if not isinstance(response, type((x for x in []))): # If stream=False
    print("Response:", response.text)
    print("Tokens Used:", response.usage.total_tokens)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anti_client-0.1.2.tar.gz (12.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anti_client-0.1.2-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file anti_client-0.1.2.tar.gz.

File metadata

  • Download URL: anti_client-0.1.2.tar.gz
  • Upload date:
  • Size: 12.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Gentoo","version":"2.18","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for anti_client-0.1.2.tar.gz
Algorithm Hash digest
SHA256 051c72c887247bca24ed95b32cb461086b45d18a862b6ecff02e9711d345ac93
MD5 1e312dd3037aa650ee8e9dcf038e1047
BLAKE2b-256 be21547d09b0976ab590d5e5e6abe8884f50481d78bf3c49ada110e8fe35b5f4

See more details on using hashes here.

File details

Details for the file anti_client-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: anti_client-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Gentoo","version":"2.18","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for anti_client-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 765ca1dc423f15550e60af6a4c8cb9efedd97cf086ec72a9c893a6797ced8c16
MD5 86b592658a8967effc98d4043df76af2
BLAKE2b-256 b05f1a15d1fabdecb9c1999da98c56dd238b17c903a7bb42cd20874866372beb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page