Contributing Guide
Relevant source files
The following files were used as context for generating this wiki page:
The Opificia AI Contributing Guide establishes the procedures for submitting code, documentation, and design proposals to the open-source software factory project. It ensures that every contribution respects the project's Sovereignty Commitments and legal requirements through structured workflows and mandatory sign-offs.
Contributors participate in a project currently moving from its foundation phase to a first working loop. While most design aspects remain open for RFC-based discussion, code contributions must align with the established prototype stack and architecture decisions.
Sources: CONTRIBUTING.md:5-12, README.md:38-42
Getting Started
Opificia AI prioritizes different types of contributions based on the project's current roadmap phase. Before starting work, you must determine the appropriate channel based on the scope of your change.
Contribution Channels
| Change Type | Action Required |
|---|---|
| Small Fixes (typos, broken links) | Open a Pull Request directly. |
| Ideas & Questions | Start a thread in GitHub Discussions. |
| Significant Changes | Write an RFC (Request for Comments). |
| Security Issues | Follow SECURITY.md (do not open public issues). |
Sources: CONTRIBUTING.md:14-23, GOVERNANCE.md:33-40
Technical Requirements
The project uses a pnpm workspace and requires specific versions of development tools:
- Runtime: Node.js 24
- Package Manager: pnpm 12
- Language: TypeScript
Sources: AGENTS.md:65-68
Developer Certificate of Origin (DCO)
Opificia AI does not use a Contributor License Agreement (CLA). Instead, it uses the Developer Certificate of Origin (DCO) to manage copyright and licensing. Every commit must include a Signed-off-by line to certify that the contributor has the right to submit the work under the project's licenses.
Signed-off-by: Your Name <email@example.org>
The sign-off must use your real name or a name you are publicly known by. Git can automate this when you use the -s flag during a commit.
Sources: CONTRIBUTING.md:27-40, AUTHORS.md:11-18
Sign-off by Approval
Maintainers can sign off on pull requests without using a terminal, which is the primary method for authorizing changes from automated agents or bots. A maintainer must provide an approving review containing the /signoff command.
Sources: CONTRIBUTING.md:79-87, AGENTS.md:31-36
Workflow and Decisions
The project follows a "Lazy Consensus" model for normal changes and a formal RFC process for architectural decisions.
Contribution Flow
This diagram shows the path from an idea or issue to a merged contribution.
Sources: CONTRIBUTING.md:120-130, GOVERNANCE.md:28-48
Commit Style
Opificia AI enforces Conventional Commits. Commit messages must use the format: type(optional scope): summary.
- Allowed Types:
feat,fix,docs,chore,ci,refactor,test,build,perf,revert. - Breaking Changes: Indicated by a
!after the type (e.g.,fix(api)!: change endpoint).
Sources: CONTRIBUTING.md:105-118, AGENTS.md:46
AI-Assisted Contributions
As a project building AI agents, Opificia AI encourages the use of AI tools but requires transparency and human accountability.
- Human Responsibility: A human must submit and sign off on every change.
- Disclosure: Commits with meaningful AI assistance must include an
Assisted-bytrailer naming the tool and model. - Confidentiality: No confidential material (secrets, credentials, or embargoed security reports) may be sent to third-party AI tools.
- License Compatibility: AI-generated code must not reproduce code under licenses incompatible with the target folder.
docs: draft the plugin RFC template
Assisted-by: <tool name>/<model name>
Signed-off-by: Ada Lovelace <ada@example.org>
Sources: CONTRIBUTING.md:132-155, AGENTS.md:37-38
Licensing and Governance
Contributors retain their copyright but license their work under specific terms depending on the repository folder.
License Mapping
| Folder Path | License |
|---|---|
sdk/, plugins/, examples/ | Apache-2.0 |
docs/, website/ | CC-BY-4.0 |
.github/, configuration files | CC0-1.0 |
| Everything else (the core) | AGPL-3.0-only |
brand/ | Not open source (Trademark) |
Sources: CONTRIBUTING.md:159-170, REUSE.toml:13-70, README.md:54-62
Roles
- Contributor: Anyone who has submitted work (code, docs, translations, etc.).
- Committer: A contributor with triage and review rights.
- Maintainer: An elected role with the power to merge code and accept RFCs.
- Steward: Experience Lab BV, the entity holding the trademarks and project accounts.
Sources: GOVERNANCE.md:8-20
Community Standards
All participants must adhere to the Contributor Covenant 3.0 Code of Conduct. This includes:
- Using welcoming and inclusive language.
- Being respectful of differing viewpoints and experiences.
- Gracefully accepting constructive criticism.
- Focusing on what is best for the community.
Violations should be reported to conduct@opificia.ai. Reports are handled confidentially by the maintainers.
Sources: CODE_OF_CONDUCT.md:1-120
Opificia AI maintains its significance by ensuring that automated software factory agents operate under strict human oversight and sovereign design principles, making contributions to its foundational policies as critical as code.
Sources: SOVEREIGNTY.md:5-15, README.md:28-36