Add repo-assist.md for automated repository assistant#551
Add repo-assist.md for automated repository assistant#551xperiandri wants to merge 1 commit intodevfrom
repo-assist.md for automated repository assistant#551Conversation
There was a problem hiding this comment.
Pull request overview
Note
Copilot was unable to run its full agentic suite in this review.
Adds a repo-assist.md workflow/instructions document to configure “Repo Assist” automation for issue triage, PR maintenance, labeling, release prep, and onboarding.
Changes:
- Introduces a new Repo Assist workflow file with scheduled + manual triggers.
- Defines tool permissions/safe-output limits and .NET SDK setup.
- Documents task-driven operating guidelines and project-specific F#/.NET conventions.
Comments suppressed due to low confidence (3)
.github/workflows/repo-assist.md:1
- Several newly added lines contain mojibake/replacement characters (
�) and placeholder emoji markers (??). This will render poorly in GitHub and can confuse contributors; please replace�with the intended punctuation (often an em dash) and replace??with the intended emoji (or remove emojis entirely if you want plain text). Also ensure the file is saved as UTF-8.
---
.github/workflows/repo-assist.md:1
- Several newly added lines contain mojibake/replacement characters (
�) and placeholder emoji markers (??). This will render poorly in GitHub and can confuse contributors; please replace�with the intended punctuation (often an em dash) and replace??with the intended emoji (or remove emojis entirely if you want plain text). Also ensure the file is saved as UTF-8.
---
.github/workflows/repo-assist.md:1
- Several newly added lines contain mojibake/replacement characters (
�) and placeholder emoji markers (??). This will render poorly in GitHub and can confuse contributors; please replace�with the intended punctuation (often an em dash) and replace??with the intended emoji (or remove emojis entirely if you want plain text). Also ensure the file is saved as UTF-8.
---
| target: "*" | ||
| #title-prefix: "[Repo Assist] " |
There was a problem hiding this comment.
The update-issue block is indented inconsistently (target is indented one space too far), which will make the YAML frontmatter invalid for any parser. Re-indent target (and the commented title-prefix, if kept) to match other safe-outputs children (two spaces under update-issue:).
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " |
| - Restatements of what the issue author already said | ||
| - Follow-ups to your own previous comments | ||
| g. **AI Disclosure**: Begin every comment with a brief disclosure, e.g.: | ||
| > ?? *This is an automated response from RepoAssist, the repository's AI assistant.* |
There was a problem hiding this comment.
Several newly added lines contain mojibake/replacement characters (�) and placeholder emoji markers (??). This will render poorly in GitHub and can confuse contributors; please replace � with the intended punctuation (often an em dash) and replace ?? with the intended emoji (or remove emojis entirely if you want plain text). Also ensure the file is saved as UTF-8.
| > ?? *This is an automated response from RepoAssist, the repository's AI assistant.* | |
| > *This is an automated response from RepoAssist, the repository's AI assistant.* |
|
|
||
| Always do Task 10 (Update Monthly Activity Summary Issue) in addition to any other tasks you perform. | ||
|
|
||
| Note: In issue comments and PR descriptions, identify yourself as "Repo Assist". |
There was a problem hiding this comment.
The assistant name is inconsistent (Repo Assist vs RepoAssist). To avoid confusing users (and to keep disclosures/searchability consistent), standardize on one spelling everywhere (including the disclosure template).
| - Restatements of what the issue author already said | ||
| - Follow-ups to your own previous comments | ||
| g. **AI Disclosure**: Begin every comment with a brief disclosure, e.g.: | ||
| > ?? *This is an automated response from RepoAssist, the repository's AI assistant.* |
There was a problem hiding this comment.
The assistant name is inconsistent (Repo Assist vs RepoAssist). To avoid confusing users (and to keep disclosures/searchability consistent), standardize on one spelling everywhere (including the disclosure template).
| create-pull-request: | ||
| draft: true | ||
| title-prefix: "[Repo Assist] " | ||
| labels: [automation, repo-assist] | ||
| push-to-pull-request-branch: | ||
| target: "*" # "triggering" (default), "*", or number | ||
| title-prefix: "[Repo Assist] " | ||
| create-issue: | ||
| title-prefix: "[Repo Assist] " | ||
| labels: [automation, repo-assist] | ||
| max: 3 | ||
| update-issue: | ||
| target: "*" | ||
| #title-prefix: "[Repo Assist] " | ||
| add-labels: | ||
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | ||
| max: 3 # max labels (default: 3) | ||
| target: "*" # "triggering" (default), "*", or number | ||
| remove-labels: |
There was a problem hiding this comment.
The safe-output keys use kebab-case (e.g., push-to-pull-request-branch, add-labels), but later instructions reference snake_case tool names (e.g., push_to_pull_request_branch, add_labels, remove_labels, update_issue). If the Repo Assist framework maps these names directly, this mismatch can prevent limits/config from applying (or cause tool calls to fail). Align the naming convention with the actual tool identifiers used by the engine (either update the safe-output keys or adjust the referenced tool names in the instructions).
| create-pull-request: | |
| draft: true | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| push-to-pull-request-branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create-issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update-issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add-labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove-labels: | |
| create_pull_request: | |
| draft: true | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| push_to_pull_request_branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create_issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update_issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add_labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove_labels: |
| push-to-pull-request-branch: | ||
| target: "*" # "triggering" (default), "*", or number | ||
| title-prefix: "[Repo Assist] " | ||
| create-issue: | ||
| title-prefix: "[Repo Assist] " | ||
| labels: [automation, repo-assist] | ||
| max: 3 | ||
| update-issue: | ||
| target: "*" | ||
| #title-prefix: "[Repo Assist] " | ||
| add-labels: | ||
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | ||
| max: 3 # max labels (default: 3) | ||
| target: "*" # "triggering" (default), "*", or number | ||
| remove-labels: |
There was a problem hiding this comment.
The safe-output keys use kebab-case (e.g., push-to-pull-request-branch, add-labels), but later instructions reference snake_case tool names (e.g., push_to_pull_request_branch, add_labels, remove_labels, update_issue). If the Repo Assist framework maps these names directly, this mismatch can prevent limits/config from applying (or cause tool calls to fail). Align the naming convention with the actual tool identifiers used by the engine (either update the safe-output keys or adjust the referenced tool names in the instructions).
| push-to-pull-request-branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create-issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update-issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add-labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove-labels: | |
| push_to_pull_request_branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create-issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update_issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add_labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove_labels: |
| add-comment: | ||
| max: 10 | ||
| target: "*" | ||
| hide-older-comments: true | ||
| create-pull-request: | ||
| draft: true | ||
| title-prefix: "[Repo Assist] " | ||
| labels: [automation, repo-assist] | ||
| push-to-pull-request-branch: | ||
| target: "*" # "triggering" (default), "*", or number | ||
| title-prefix: "[Repo Assist] " | ||
| create-issue: | ||
| title-prefix: "[Repo Assist] " | ||
| labels: [automation, repo-assist] | ||
| max: 3 | ||
| update-issue: | ||
| target: "*" | ||
| #title-prefix: "[Repo Assist] " | ||
| add-labels: | ||
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | ||
| max: 3 # max labels (default: 3) | ||
| target: "*" # "triggering" (default), "*", or number | ||
| remove-labels: |
There was a problem hiding this comment.
The safe-output keys use kebab-case (e.g., push-to-pull-request-branch, add-labels), but later instructions reference snake_case tool names (e.g., push_to_pull_request_branch, add_labels, remove_labels, update_issue). If the Repo Assist framework maps these names directly, this mismatch can prevent limits/config from applying (or cause tool calls to fail). Align the naming convention with the actual tool identifiers used by the engine (either update the safe-output keys or adjust the referenced tool names in the instructions).
| add-comment: | |
| max: 10 | |
| target: "*" | |
| hide-older-comments: true | |
| create-pull-request: | |
| draft: true | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| push-to-pull-request-branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create-issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update-issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add-labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove-labels: | |
| add_comment: | |
| max: 10 | |
| target: "*" | |
| hide-older-comments: true | |
| create_pull_request: | |
| draft: true | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| push_to_pull_request_branch: | |
| target: "*" # "triggering" (default), "*", or number | |
| title-prefix: "[Repo Assist] " | |
| create_issue: | |
| title-prefix: "[Repo Assist] " | |
| labels: [automation, repo-assist] | |
| max: 3 | |
| update_issue: | |
| target: "*" | |
| #title-prefix: "[Repo Assist] " | |
| add_labels: | |
| allowed: [bug, enhancement, "help wanted", "good first issue", "spam", "off topic"] | |
| max: 3 # max labels (default: 3) | |
| target: "*" # "triggering" (default), "*", or number | |
| remove_labels: |
| on: | ||
| schedule: daily | ||
| workflow_dispatch: |
There was a problem hiding this comment.
This file lives under .github/workflows/ and declares schedule/dispatch triggers, but it’s a .md file with custom frontmatter. GitHub Actions will not execute .md workflows, so the “runs daily” behavior will only happen if an external system specifically reads these markdown workflows. If this is intended to be driven by GitHub Actions, rename/create a .yml workflow that invokes the assistant; otherwise, add a short note in the frontmatter/heading clarifying that this is for Repo Assist (not GitHub Actions) to avoid maintainers assuming it’s active automation.
Introduces repo-assist.md, configuring "Repo Assist" to automate issue triage, PR management, labeling, release prep, and contributor onboarding. Defines structured, quality-focused workflows and project-specific guidelines for F#/.NET, with daily and manual run support.
583946b to
7819834
Compare
Introduces repo-assist.md, configuring "Repo Assist" to automate issue triage, PR management, labeling, release prep, and contributor onboarding. Defines structured, quality-focused workflows and project-specific guidelines for F#/.NET, with daily and manual run support.
Fixes #549