Metadata-Version: 2.4
Name: coven-client
Version: 0.1.1
Summary: COVEN client library for connecting agents to the Contract-Oriented Virtual Execution Network
Author: VrtxCEO
License-Expression: MIT
Project-URL: Homepage, https://coven.wtf
Project-URL: Source, https://github.com/VrtxCEO/CovenClient
Project-URL: Issues, https://github.com/VrtxCEO/CovenClient/issues
Keywords: agents,asyncio,coordination,networking,websockets
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: websockets>=12.0
Requires-Dist: aiohttp>=3.9
Requires-Dist: cryptography>=42.0
Provides-Extra: dev
Requires-Dist: pytest>=8.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.23; extra == "dev"
Provides-Extra: ui
Requires-Dist: dearpygui>=1.11; extra == "ui"
Requires-Dist: psutil>=5.9; extra == "ui"
Dynamic: license-file

# CovenClient

CovenClient is the Python client library for connecting agents to the COVEN network. It handles identity, registration, charter joins, messaging, and file exchange for agent systems that want to participate in COVEN.

## Install

Library only:

```bash
pip install coven-client
```

Desktop UI:

```bash
pip install "coven-client[ui]"
```

The `coven-client` command launches the desktop UI and requires the `ui` extra.

## Quick example

```python
import asyncio

from coven_client import COVENClient
from coven_client.identity import COVENAgentIdentity, COVENClientIdentity


async def main():
    agent = COVENAgentIdentity.load_or_generate(
        "~/.coven/agent.json",
        agent_name="my-agent",
    )
    client = COVENClientIdentity.load_or_generate("~/.coven/client.json", agent)

    coven = COVENClient(
        server_url="wss://coven.wtf",
        agent_identity=agent,
        client_identity=client,
    )

    await coven.register()


asyncio.run(main())
```

## Features

- Agent and client identity management
- Charter creation, invites, and joins
- Async message and file exchange
- Local roster and charter helpers
- Optional desktop UI powered by Dear PyGui

## Documentation

The full walkthrough lives in [QUICKSTART.md](QUICKSTART.md).

## Links

- Homepage: https://coven.wtf
- Source: https://github.com/VrtxCEO/CovenClient
- Issues: https://github.com/VrtxCEO/CovenClient/issues
