├── .env.example ├── .github └── workflows │ ├── claude-code-review.yml │ └── claude.yml ├── .gitignore ├── Dockerfile ├── README.md ├── docker-compose.yml ├── docs ├── MIGRATION_STATUS.md └── UPGRADE_PLAN.md ├── examples ├── curl_example.sh ├── openai_sdk.py ├── session_continuity.py ├── session_curl_example.sh └── streaming.py ├── poetry.lock ├── pyproject.toml ├── src ├── __init__.py ├── auth.py ├── claude_cli.py ├── constants.py ├── main.py ├── mcp_client.py ├── message_adapter.py ├── models.py ├── parameter_validator.py ├── rate_limiter.py ├── session_manager.py └── tool_manager.py └── tests ├── test_basic.py ├── test_docker_workspace.sh ├── test_endpoints.py ├── test_non_streaming.py ├── test_parameter_mapping.py ├── test_sdk_migration.py ├── test_sdk_quick.py ├── test_session_complete.py ├── test_session_continuity.py ├── test_session_simple.py ├── test_textblock_fix.py └── test_working_directory.py /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/.env.example -------------------------------------------------------------------------------- /.github/workflows/claude-code-review.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/.github/workflows/claude-code-review.yml -------------------------------------------------------------------------------- /.github/workflows/claude.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/.github/workflows/claude.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/.gitignore -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/Dockerfile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/README.md -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/docker-compose.yml -------------------------------------------------------------------------------- /docs/MIGRATION_STATUS.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/docs/MIGRATION_STATUS.md -------------------------------------------------------------------------------- /docs/UPGRADE_PLAN.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/docs/UPGRADE_PLAN.md -------------------------------------------------------------------------------- /examples/curl_example.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/examples/curl_example.sh -------------------------------------------------------------------------------- /examples/openai_sdk.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/examples/openai_sdk.py -------------------------------------------------------------------------------- /examples/session_continuity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/examples/session_continuity.py -------------------------------------------------------------------------------- /examples/session_curl_example.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/examples/session_curl_example.sh -------------------------------------------------------------------------------- /examples/streaming.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/examples/streaming.py -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/poetry.lock -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/pyproject.toml -------------------------------------------------------------------------------- /src/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/__init__.py -------------------------------------------------------------------------------- /src/auth.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/auth.py -------------------------------------------------------------------------------- /src/claude_cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/claude_cli.py -------------------------------------------------------------------------------- /src/constants.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/constants.py -------------------------------------------------------------------------------- /src/main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/main.py -------------------------------------------------------------------------------- /src/mcp_client.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/mcp_client.py -------------------------------------------------------------------------------- /src/message_adapter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/message_adapter.py -------------------------------------------------------------------------------- /src/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/models.py -------------------------------------------------------------------------------- /src/parameter_validator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/parameter_validator.py -------------------------------------------------------------------------------- /src/rate_limiter.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/rate_limiter.py -------------------------------------------------------------------------------- /src/session_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/session_manager.py -------------------------------------------------------------------------------- /src/tool_manager.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/src/tool_manager.py -------------------------------------------------------------------------------- /tests/test_basic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_basic.py -------------------------------------------------------------------------------- /tests/test_docker_workspace.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_docker_workspace.sh -------------------------------------------------------------------------------- /tests/test_endpoints.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_endpoints.py -------------------------------------------------------------------------------- /tests/test_non_streaming.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_non_streaming.py -------------------------------------------------------------------------------- /tests/test_parameter_mapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_parameter_mapping.py -------------------------------------------------------------------------------- /tests/test_sdk_migration.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_sdk_migration.py -------------------------------------------------------------------------------- /tests/test_sdk_quick.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_sdk_quick.py -------------------------------------------------------------------------------- /tests/test_session_complete.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_session_complete.py -------------------------------------------------------------------------------- /tests/test_session_continuity.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_session_continuity.py -------------------------------------------------------------------------------- /tests/test_session_simple.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_session_simple.py -------------------------------------------------------------------------------- /tests/test_textblock_fix.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_textblock_fix.py -------------------------------------------------------------------------------- /tests/test_working_directory.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/RichardAtCT/claude-code-openai-wrapper/HEAD/tests/test_working_directory.py --------------------------------------------------------------------------------