Skip to content

Commit 4d96d50

Browse files
docs: Update agent info
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
1 parent e57afed commit 4d96d50

4 files changed

Lines changed: 40 additions & 14 deletions

File tree

.github/pull_request_template.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,4 +16,11 @@ B | A
1616

1717
### 🏁 Checklist
1818

19-
- [ ] Tests written, or not not needed
19+
- [ ] ⛑️ Tests (unit and/or integration) are included or not needed
20+
- [ ] 🔙 Backport requests are created or not needed: `/backport to stable-xx.x`
21+
- [ ] 📅 Milestone is set
22+
- [ ] 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)
23+
24+
## 🤖 AI (if applicable)
25+
26+
- [ ] The content of this PR was partly or fully generated using AI

AGENTS.md

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -124,6 +124,32 @@ All code is validated with the following tools. Fix findings in modified files:
124124

125125
Run all checks with: `./gradlew check`
126126

127+
## Nextcloud Contribution Policy
128+
129+
All contributions generated or assisted by this agent must fully comply with:
130+
131+
- **[AI Contribution Policy](https://github.com/nextcloud/.github/blob/master/AI_POLICY.md)** - the primary reference for AI-specific rules, covering disclosure, author accountability, communication, security, licensing, code quality, and autonomous agent behavior.
132+
- **[Contribution Guidelines](https://github.com/nextcloud/.github/blob/master/CONTRIBUTING.md)** - covering testing requirements, the Developer Certificate of Origin (DCO), license headers, conventional commits, and translations. These apply in full to all contributions regardless of how they were produced.
133+
134+
### What this agent must always do
135+
136+
- Add an `Assisted-by: AGENT_NAME:MODEL_VERSION` git trailer to every commit containing AI-assisted content.
137+
- Ensure every pull request includes a disclosure of AI tool use in the PR description.
138+
- Produce focused, scoped pull requests that address exactly one concern. Do not touch unrelated files or introduce incidental refactors.
139+
- Verify all dependencies against actual package registries before suggesting them. Do not use hallucinated or unverified package names.
140+
- Explicitly inform the contributor when any action they are about to take, or have taken, would violate the AI Contribution Policy or the Contribution Guidelines. Do not silently proceed. State which rule is at risk and what the contributor should do instead.
141+
- Warn the contributor if a pull request is growing too large. A PR approaching several thousand lines of changed code is a signal that it should be split into smaller, focused PRs. Suggest a logical split before the PR is opened, not after.
142+
- Recommend opening a ticket for discussion before starting implementation whenever a feature or change is sufficiently complex - for example when it touches multiple subsystems, requires architectural decisions, or the right approach is not yet clear. A ticket allows maintainers and the contributor to align on direction before code is written, avoiding wasted effort on a PR that may be rejected or require fundamental rework.
143+
144+
### What this agent must never do
145+
146+
- Open issues, submit pull requests, post review comments, or send security reports autonomously. Every contribution must be reviewed and submitted by a human.
147+
- Add `Signed-off-by` tags to commits. Only the human contributor can certify the Developer Certificate of Origin.
148+
- Generate or submit security reports without independent human verification. Report verified vulnerabilities via [HackerOne](https://hackerone.com/nextcloud), not as GitHub issues.
149+
- Write PR descriptions, review comments, or issue reports on behalf of the contributor. These must be in the contributor's own words.
150+
- Fully automate the resolution of issues labeled [`good first issue`](https://github.com/issues?q=org%3Anextcloud+label%3A%22good+first+issue%22) or similar beginner-friendly labels.
151+
- Submit code that has not been reviewed and cleaned up by the contributor. Dead code, redundant logic, excessive comments, and unrelated changes must be removed before submission.
152+
127153
## Commit and Pull Request Guidelines
128154

129155
### Commits
@@ -132,22 +158,14 @@ Run all checks with: `./gradlew check`
132158

133159
- Commit messages must follow the [Conventional Commits v1.0.0 specification](https://www.conventionalcommits.org/en/v1.0.0/#specification) — e.g. `feat(chat): add voice message playback`, `fix(call): handle MCU disconnect gracefully`.
134160

135-
- Every commit made with AI assistance must include an `AI-assistant` trailer identifying the coding agent, its version, and the model(s) used:
136-
137-
```
138-
AI-assistant: Claude Code 2.1.80 (Claude Sonnet 4.6)
139-
AI-assistant: Copilot 1.0.6 (Claude Sonnet 4.6)
140-
```
141-
142-
General pattern: `AI-assistant: <coding-agent> <agent-version> (<model-name> <model-version>)`
143-
144-
If multiple models are used for different roles, extend the trailer with named roles:
161+
- Every commit made with AI assistance must include an `Assisted-by: AGENT_NAME:MODEL_VERSION` git trailer identifying the coding agent and model used:
145162

146163
```
147-
AI-assistant: OpenCode v1.0.203 (plan: Claude Opus 4.5, edit: Claude Sonnet 4.5)
164+
Assisted-by: ClaudeCode:claude-sonnet-4-6
165+
Assisted-by: Copilot:claude-sonnet-4-6
148166
```
149167

150-
Pattern with roles: `AI-assistant: <coding-agent> <agent-version> (<role>: <model-name> <model-version>, <role>: <model-name> <model-version>)`
168+
General pattern: `Assisted-by: <coding-agent>:<model-version>`
151169

152170
### Pull Requests
153171

CLAUDE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
@AGENTS.md

REUSE.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ SPDX-FileCopyrightText = "2015-2016 ownCloud Inc."
3030
SPDX-License-Identifier = "GPL-2.0-only"
3131

3232
[[annotations]]
33-
path = ["app/libs/local-maven/**/*.aar", "app/libs/local-maven/**/*.pom"]
33+
path = ["CLAUDE.md", "app/libs/local-maven/**/*.aar", "app/libs/local-maven/**/*.pom"]
3434
precedence = "aggregate"
3535
SPDX-FileCopyrightText = "2026 Nextcloud GmbH and Nextcloud contributors"
3636
SPDX-License-Identifier = "AGPL-3.0-or-later"

0 commit comments

Comments
 (0)