AI Contribution Policy

AI-Assisted Development: Contribute to ownCloud with Confidence
Discover ownCloud’s pro AI-assisted contributions stance. Learn our expectations, guidelines for developers, and review standards.

Our Position

ownCloud welcomes contributions created with the help of AI tools.

We believe that great ideas should not be blocked by someone’s programming seniority. If you have a vision for improving ownCloud — a new web extension, a better workflow, a fix you can describe clearly — and AI helps you bring that vision to working code, we want your contribution.

We have published a detailed guide on AI-assisted development for oCIS web extensions at owncloud.dev. That guide walks through the full workflow: from architecture conversations with an AI assistant, through research, scaffolding, implementation, to polish and contribution. We encourage you to follow it.

What We Expect

AI-assisted contributions are held to the same quality bar as any other contribution. The review process does not care how the code was written. It cares that the code works, is tested, is documented, and is maintainable.

Every AI-assisted pull request must meet these requirements:

  • Disclosure. State in your PR description that AI tools were used in development. Name the tool (e.g. Claude Code, GitHub Copilot, Cursor). This is not a stigma — it’s transparency. We track this to understand our contributor ecosystem and to improve our review processes.
  • Comprehension. You must understand what the code does. If a reviewer asks “why does this function handle the error this way?” and your answer is “the AI wrote it,” that is not sufficient. You are the author. The AI is your tool. If you cannot explain the code, it is not ready for submission.
  • Testing. AI-generated code must be tested. Unit tests for logic. Manual exploratory testing for UI. The AI dev guide covers how to use browser DevTools, HAR files, and console output to debug effectively. PRs without adequate test coverage will be returned.
  • Documentation. Document what the code does, how to use it, and any configuration it requires. If the code introduces new APIs, environment variables, or extension points, they must be documented.
  • Code quality. AI-generated code tends to accumulate redundant logic, unused variables, duplicate styles, and overly complex conditionals. Before submitting, run a cleanup pass. Ask your AI tool to refactor, remove dead code, and simplify. Our CI pipeline includes linting — PRs that fail lint checks will be returned.
  • Licensing compliance. Ensure that your AI tool has not introduced code copied from incompatible licenses. You are responsible for the provenance of every line in your PR.

What We Do Not Do

We do not reject contributions because they were AI-assisted. We do not require contributors to be “senior developers”. We do not gatekeep based on how you wrote the code.

We also do not accept contributions where the contributor cannot engage with the review process. If a maintainer requests changes and you cannot make them — whether because you do not understand the code or because you have moved on — the PR may be closed. That is the same standard we apply to all contributions.

Guidance for Maintainers and Reviewers

AI-assisted contributions may require more review effort. The code may be syntactically correct but structurally suboptimal. Patterns may be unfamiliar or inconsistent with project conventions.

Reviewers should:

  • Apply the same review standards as for any contribution. No lower bar. No higher bar.
  • Be specific in feedback. “This doesn’t follow our patterns” is less useful than “We use composition over inheritance in this module — see ExampleComponent.vue for the pattern.”
  • Be patient with contributors who are learning. A contributor whose first PR needs three rounds of review may become a long-term maintainer. That is the whole point.
  • Flag if AI-generated code appears to include copied material from other projects or frameworks with incompatible licenses.

    AI in Our Own Development

    ownCloud’s internal engineering teams also use AI tools. We hold ourselves to the same standards: disclosure in commit messages where appropriate, full comprehension of generated code, and human accountability for every merge.

    We believe AI-assisted development, done responsibly, lowers barriers to contribution without lowering quality. That is the goal.