Thank you for helping improve openXYOS.
New contributors: start with the community guide for Discussions vs Issues, a five-minute quickstart, and good first contribution paths.
- Search existing issues and discussions.
- Open an issue before large API, data-model, security, or product-scope changes.
- Keep a pull request focused on one independently reviewable outcome.
- Never include customer data, credentials, production addresses, generated databases, uploads, or build artifacts.
npm ci
cp .env.example .env
npm run devBefore submitting a pull request, run:
npm run lint
npm run i18n:check
npm run typecheck
npm test
npm run verify:open-source
npm run buildAdd or update tests for changed behavior. Document configuration changes in .env.example and README files. Security-sensitive changes must include negative tests for unauthorized, cross-tenant, and malformed requests.
For any user-visible workspace change, add Chinese and English copy in the same pull request and follow the bilingual release contract. New AI endpoints must also prove that their output follows Accept-Language.
- Use a clear, imperative commit subject.
- Explain the user-visible effect, security impact, migration needs, and verification performed.
- Preserve backward compatibility unless the issue explicitly approves a breaking change.
- Do not commit generated dependency directories or runtime data.
- Add a
Signed-off-by: Your Name <email>line to every commit (git commit --signoff). - Before a pull request can be merged, its contributor must have completed the project ICLA or an applicable CCLA and received the
cla-signedlabel from a maintainer. The agreement is published only after legal review; until then, external contributions are discussed but not merged.
Unless a separately executed contributor agreement states otherwise, contributions intentionally submitted to this repository are provided under the Apache License 2.0. Brand rights are governed separately by TRADEMARKS.md.