Metadata-Version: 2.4
Name: elizaos-plugin-copilot-proxy
Version: 2.0.0a5
Summary: elizaOS Copilot Proxy Plugin - OpenAI-compatible local proxy for VS Code Copilot
Project-URL: Homepage, https://github.com/elizaos/eliza
Project-URL: Documentation, https://elizaos.ai/docs
Project-URL: Repository, https://github.com/elizaos/eliza
Author: elizaOS Contributors
License-Expression: MIT
Keywords: agents,ai,copilot,elizaos,llm,openai,proxy
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: httpx>=0.28.0
Requires-Dist: pydantic>=2.10.0
Provides-Extra: dev
Requires-Dist: mypy>=1.14.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.24.0; extra == 'dev'
Requires-Dist: pytest-cov>=6.0.0; extra == 'dev'
Requires-Dist: pytest>=8.0.0; extra == 'dev'
Requires-Dist: respx>=0.22.0; extra == 'dev'
Requires-Dist: ruff>=0.9.0; extra == 'dev'
Description-Content-Type: text/markdown

# elizaOS Copilot Proxy Plugin (Python)

Python implementation of the Copilot Proxy model provider plugin for elizaOS.

## Features

- OpenAI-compatible API client for Copilot Proxy
- Support for text generation (small and large models)
- JSON object generation with automatic parsing
- Health check functionality
- Configurable timeouts and model parameters
- Async/await support

## Installation

```bash
pip install elizaos-plugin-copilot-proxy
```

## Usage

```python
import asyncio
from elizaos_plugin_copilot_proxy import CopilotProxyPlugin

async def main():
    # Create plugin (uses environment variables or defaults)
    plugin = CopilotProxyPlugin()
    
    async with plugin:
        # Generate text
        response = await plugin.generate_text_large("What is 2+2?")
        print(response)
        
        # Generate JSON object
        obj = await plugin.generate_object_small("Create a JSON object with a greeting")
        print(obj)

asyncio.run(main())
```

## Environment Variables

- `COPILOT_PROXY_BASE_URL` - Base URL for the proxy server (default: `http://localhost:3000/v1`)
- `COPILOT_PROXY_ENABLED` - Enable/disable the plugin (default: `true`)
- `COPILOT_PROXY_SMALL_MODEL` - Small model ID (default: `gpt-5-mini`)
- `COPILOT_PROXY_LARGE_MODEL` - Large model ID (default: `gpt-5.1`)
- `COPILOT_PROXY_TIMEOUT_SECONDS` - Request timeout (default: `120`)
- `COPILOT_PROXY_MAX_TOKENS` - Maximum tokens (default: `8192`)
- `COPILOT_PROXY_CONTEXT_WINDOW` - Context window size (default: `128000`)

## License

MIT
