Spaces:
Running
Running
File size: 2,253 Bytes
6901b08 58d7eda 6901b08 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | # Contributing to OpenCode CLI
Thank you for your interest in contributing to **OpenCode CLI**! We welcome contributions, bug reports, feature requests, and pull requests.
---
## π Table of Contents
1. [Code of Conduct](#code-of-conduct)
2. [How to Contribute](#how-to-contribute)
3. [Development Setup](#development-setup)
4. [Pull Request Process](#pull-request-process)
5. [Coding & Architecture Standards](#coding--architecture-standards)
---
## π Code of Conduct
Please be polite, respectful, and collaborative in all communications.
---
## π€ How to Contribute
- **Reporting Bugs**: Open an issue on GitHub describing the steps to reproduce, expected behavior, actual behavior, and container logs.
- **Feature Requests**: Open an issue detailing the use case, proposed architecture, and benefit to the community.
- **Pull Requests**: Fork the repository, create a topic branch, implement your changes with tests/validations, and submit a PR.
---
## π οΈ Development Setup
1. **Clone the repository**:
```bash
git clone https://github.com/JishnuPG-tech/Project.git
cd Project
```
2. **Environment File**:
Copy `.env.example` to `.env` and set local test secrets.
3. **Syntax Checks**:
- Python: `python -m py_compile gateway/*.py proxy.py tg_streamer.py`
- Shell: `bash -n entrypoint.sh`
---
## π Pull Request Process
1. **Branch Naming**: Use descriptive branch names like `feat/new-router`, `fix/hermes-config`, `docs/update-readme`.
2. **Commit Messages**: Follow Conventional Commits:
- `feat(gateway): add new endpoint for agent metrics`
- `fix(hermes): resolve port binding configuration`
- `docs(readme): add client integration examples`
3. **Architecture Verification**: Ensure your changes adhere to the locked architecture documents ([`ARCHITECTURE.md`](ARCHITECTURE.md), [`HERMES_ARCHITECTURE.md`](HERMES_ARCHITECTURE.md)).
---
## π Coding & Architecture Standards
- **No Hardcoded Secrets**: Secrets must be loaded via environment variables or secret store.
- **Persistent Volume Safety**: All writable state must sync to `/data/` volumes to survive container restarts.
- **Non-Blocking Proxies**: Use async HTTP client (`httpx` / `aiohttp`) for high-throughput routing.
|