Format all YAML files to pass yamllint validation

- Added document start markers (---) to all YAML files
- Fixed line length issues by breaking long lines appropriately
- Removed trailing whitespace throughout all files
- Added proper newlines at end of files
- Fixed truthy value format ('on' -> 'on')
- Standardized YAML formatting across workflows and issue templates
- Used multi-line strings (>) for long descriptions
- Maintained readability while adhering to 80-character line limit

All YAML files now pass yamllint validation with only minor warnings remaining.
This commit is contained in:
Seth Hobson
2025-08-01 17:33:42 -04:00
parent fe236a76b5
commit 4dad1937e9
7 changed files with 224 additions and 107 deletions

View File

@@ -1,3 +1,4 @@
---
name: Bug Report name: Bug Report
description: Report a bug or issue with an existing subagent description: Report a bug or issue with an existing subagent
title: "[BUG] " title: "[BUG] "
@@ -6,9 +7,12 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
Thank you for reporting a bug! Please fill out this template to help us understand and resolve the issue. Thank you for reporting a bug! Please fill out this template
to help us understand and resolve the issue.
**Important**: This template is for technical bugs only. For questions, discussions, or general feedback, please use GitHub Discussions instead.
**Important**: This template is for technical bugs only.
For questions, discussions, or general feedback, please use
GitHub Discussions instead.
- type: checkboxes - type: checkboxes
id: preliminary-checks id: preliminary-checks
@@ -18,7 +22,8 @@ body:
options: options:
- label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md) - label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md)
required: true required: true
- label: I have searched existing issues to ensure this is not a duplicate - label: >-
I have searched existing issues to ensure this is not a duplicate
required: true required: true
- label: This report contains only technical information about a bug - label: This report contains only technical information about a bug
@@ -67,4 +72,4 @@ body:
attributes: attributes:
label: Additional Context label: Additional Context
description: Any other context, screenshots, or examples description: Any other context, screenshots, or examples
placeholder: Add any other context about the problem here... placeholder: Add any other context about the problem here...

View File

@@ -1,3 +1,4 @@
---
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: GitHub Discussions - name: GitHub Discussions
@@ -8,4 +9,4 @@ contact_links:
about: Read our Code of Conduct and community standards about: Read our Code of Conduct and community standards
- name: Contributing Guide - name: Contributing Guide
url: https://github.com/wshobson/agents/blob/main/.github/CONTRIBUTING.md url: https://github.com/wshobson/agents/blob/main/.github/CONTRIBUTING.md
about: Learn how to contribute effectively to this project about: Learn how to contribute effectively to this project

View File

@@ -1,3 +1,4 @@
---
name: Feature Request name: Feature Request
description: Suggest an improvement or new feature for existing subagents description: Suggest an improvement or new feature for existing subagents
title: "[FEATURE] " title: "[FEATURE] "
@@ -6,9 +7,11 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
Thank you for suggesting a feature! Please provide detailed information to help us understand your request. Thank you for suggesting a feature! Please provide detailed
information to help us understand your request.
**Note**: For new subagent proposals, please use the "New Subagent Proposal" template instead.
**Note**: For new subagent proposals, please use the
"New Subagent Proposal" template instead.
- type: checkboxes - type: checkboxes
id: preliminary-checks id: preliminary-checks
@@ -18,7 +21,8 @@ body:
options: options:
- label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md) - label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md)
required: true required: true
- label: I have searched existing issues to ensure this is not a duplicate - label: >-
I have searched existing issues to ensure this is not a duplicate
required: true required: true
- label: This is a constructive feature request for legitimate use cases - label: This is a constructive feature request for legitimate use cases
required: true required: true
@@ -74,4 +78,4 @@ body:
attributes: attributes:
label: Additional Context label: Additional Context
description: Any other relevant information description: Any other relevant information
placeholder: Add any other context, examples, or screenshots here... placeholder: Add any other context, examples, or screenshots here...

View File

@@ -1,16 +1,21 @@
---
name: Moderation Report name: Moderation Report
description: Report inappropriate content, behavior, or Code of Conduct violations description: >-
Report inappropriate content, behavior, or Code of Conduct violations
title: "[MODERATION] " title: "[MODERATION] "
labels: ["moderation"] labels: ["moderation"]
body: body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
**⚠️ Use this template to report violations of our Code of Conduct, inappropriate content, or concerning behavior.** **⚠️ Use this template to report violations of our Code of Conduct,
inappropriate content, or concerning behavior.**
All reports are taken seriously and will be reviewed by maintainers. False reports may result in moderation action.
All reports are taken seriously and will be reviewed by maintainers.
**For urgent safety concerns or severe violations, you may also use GitHub's built-in reporting tools.** False reports may result in moderation action.
**For urgent safety concerns or severe violations, you may also use
GitHub's built-in reporting tools.**
- type: checkboxes - type: checkboxes
id: preliminary-checks id: preliminary-checks
@@ -22,7 +27,9 @@ body:
required: true required: true
- label: I understand that false reports may result in moderation action - label: I understand that false reports may result in moderation action
required: true required: true
- label: I have attempted to resolve minor issues through direct communication (if applicable) - label: >-
I have attempted to resolve minor issues through direct
communication (if applicable)
required: false required: false
- type: dropdown - type: dropdown
@@ -46,8 +53,9 @@ body:
id: location id: location
attributes: attributes:
label: Location of Violation label: Location of Violation
description: Where did this occur? (issue number, PR, comment link, etc.) description: >-
placeholder: e.g., Issue #123, PR #456, comment in issue #789 Where did this occur? (issue number, PR, comment link, etc.)
placeholder: e.g., Issue #123, PR #456, comment in issue #789 # Location
validations: validations:
required: true required: true
@@ -55,14 +63,17 @@ body:
id: user-involved id: user-involved
attributes: attributes:
label: User(s) Involved label: User(s) Involved
description: GitHub username(s) of the person(s) involved (if known) description: >-
GitHub username(s) of the person(s) involved (if known)
placeholder: e.g., @username1, @username2 placeholder: e.g., @username1, @username2
- type: textarea - type: textarea
id: description id: description
attributes: attributes:
label: Description of Violation label: Description of Violation
description: Detailed description of what happened and why it violates our Code of Conduct description: >-
Detailed description of what happened and why it violates
our Code of Conduct
placeholder: Please provide specific details about the violation... placeholder: Please provide specific details about the violation...
validations: validations:
required: true required: true
@@ -84,7 +95,8 @@ body:
attributes: attributes:
label: Impact label: Impact
description: How has this affected you or the community? description: How has this affected you or the community?
placeholder: This behavior has made me feel... It affects the community by... placeholder: >-
This behavior has made me feel... It affects the community by...
- type: checkboxes - type: checkboxes
id: previous-reports id: previous-reports
@@ -102,5 +114,5 @@ body:
- We may follow up with questions if needed - We may follow up with questions if needed
- We will take appropriate action based on our Code of Conduct - We will take appropriate action based on our Code of Conduct
- We will update you on the resolution when possible - We will update you on the resolution when possible
Thank you for helping maintain a respectful community. Thank you for helping maintain a respectful community.

View File

@@ -1,3 +1,4 @@
---
name: New Subagent Proposal name: New Subagent Proposal
description: Propose a new specialized subagent for the collection description: Propose a new specialized subagent for the collection
title: "[NEW AGENT] " title: "[NEW AGENT] "
@@ -6,9 +7,12 @@ body:
- type: markdown - type: markdown
attributes: attributes:
value: | value: |
Thank you for proposing a new subagent! Quality subagents require careful design and clear specialization. Thank you for proposing a new subagent! Quality subagents
require careful design and clear specialization.
**Important**: Only propose subagents for legitimate, constructive use cases. Proposals for malicious or harmful capabilities will be rejected and may result in moderation action.
**Important**: Only propose subagents for legitimate,
constructive use cases. Proposals for malicious or harmful
capabilities will be rejected and may result in moderation action.
- type: checkboxes - type: checkboxes
id: preliminary-checks id: preliminary-checks
@@ -18,7 +22,8 @@ body:
options: options:
- label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md) - label: I have read the [Code of Conduct](.github/CODE_OF_CONDUCT.md)
required: true required: true
- label: I have reviewed existing subagents to ensure this is not a duplicate - label: >-
I have reviewed existing subagents to ensure this is not a duplicate
required: true required: true
- label: This proposal is for legitimate, constructive use cases only - label: This proposal is for legitimate, constructive use cases only
required: true required: true
@@ -38,7 +43,8 @@ body:
id: domain-expertise id: domain-expertise
attributes: attributes:
label: Domain Expertise label: Domain Expertise
description: What specific domain or technology does this agent specialize in? description: >-
What specific domain or technology does this agent specialize in?
placeholder: This agent specializes in... placeholder: This agent specializes in...
validations: validations:
required: true required: true
@@ -47,7 +53,9 @@ body:
id: unique-value id: unique-value
attributes: attributes:
label: Unique Value Proposition label: Unique Value Proposition
description: How is this different from existing subagents? What unique capabilities does it provide? description: >-
How is this different from existing subagents?
What unique capabilities does it provide?
placeholder: Unlike existing agents, this one would... placeholder: Unlike existing agents, this one would...
validations: validations:
required: true required: true
@@ -82,12 +90,14 @@ body:
id: examples id: examples
attributes: attributes:
label: Example Interactions label: Example Interactions
description: Provide 2-3 example interactions showing how users would work with this agent description: >-
Provide 2-3 example interactions showing how users would
work with this agent
placeholder: | placeholder: |
**Example 1:** **Example 1:**
User: "Implement a smart contract for..." User: "Implement a smart contract for..."
Agent response: "I'll create a secure smart contract with..." Agent response: "I'll create a secure smart contract with..."
**Example 2:** **Example 2:**
User: "Optimize this blockchain query..." User: "Optimize this blockchain query..."
Agent response: "Let me analyze the query and suggest optimizations..." Agent response: "Let me analyze the query and suggest optimizations..."
@@ -98,8 +108,11 @@ body:
id: expertise-evidence id: expertise-evidence
attributes: attributes:
label: Your Expertise label: Your Expertise
description: What experience or credentials do you have in this domain? description: >-
placeholder: I have X years of experience in... I've worked with... I hold certifications in... What experience or credentials do you have in this domain?
placeholder: >-
I have X years of experience in... I've worked with...
I hold certifications in...
validations: validations:
required: true required: true
@@ -107,5 +120,7 @@ body:
id: additional-context id: additional-context
attributes: attributes:
label: Additional Context label: Additional Context
description: Any other relevant information, resources, or considerations description: >-
placeholder: Relevant documentation, similar tools, potential challenges... Any other relevant information, resources, or considerations
placeholder: >-
Relevant documentation, similar tools, potential challenges...

View File

@@ -1,6 +1,7 @@
---
name: Content Moderation name: Content Moderation
on: 'on':
issues: issues:
types: [opened, edited] types: [opened, edited]
issue_comment: issue_comment:
@@ -17,7 +18,6 @@ jobs:
issues: write issues: write
pull-requests: write pull-requests: write
contents: read contents: read
steps: steps:
- name: Check for inappropriate content - name: Check for inappropriate content
id: content-check id: content-check
@@ -27,33 +27,37 @@ jobs:
// Define inappropriate content patterns // Define inappropriate content patterns
const hateWords = [ const hateWords = [
// Racial slurs (censored for detection) // Racial slurs (censored for detection)
'n[i1]gg[e3]r', 'n[i1]gg[a4]', 'ch[i1]nk', 'sp[i1]c', 'k[i1]k[e3]', 'n[i1]gg[e3]r', 'n[i1]gg[a4]', 'ch[i1]nk', 'sp[i1]c',
'w[e3]tb[a4]ck', 'b[e3][a4]n[e3]r', 'g[o0][o0]k', 'r[a4]gh[e3][a4]d', 'k[i1]k[e3]', 'w[e3]tb[a4]ck', 'b[e3][a4]n[e3]r',
'g[o0][o0]k', 'r[a4]gh[e3][a4]d',
// Homophobic/transphobic slurs // Homophobic/transphobic slurs
'f[a4]gg[o0]t', 'tr[a4]nn[y1]', 'd[y1]k[e3]', 'f[a4]gg[o0]t', 'tr[a4]nn[y1]', 'd[y1]k[e3]',
// Religious/ethnic slurs // Religious/ethnic slurs
'j[e3]w', 'r[a4]gh[e3][a4]d', 'c[a4]m[e3]lj[o0]ck[e3]y', 'j[e3]w', 'r[a4]gh[e3][a4]d', 'c[a4]m[e3]lj[o0]ck[e3]y',
// General offensive terms // General offensive terms
'r[e3]t[a4]rd', 'sp[a4]st[i1]c' 'r[e3]t[a4]rd', 'sp[a4]st[i1]c'
]; ];
const profanity = [ const profanity = [
'f[u*]ck[i1]ng?', 'sh[i1]t', 'b[i1]tch', 'c[u*]nt', 'p[i1]ss', 'f[u*]ck[i1]ng?', 'sh[i1]t', 'b[i1]tch', 'c[u*]nt',
'd[a4]mn', 'h[e3]ll', 'cr[a4]p', '[a4]ss', 'b[a4]st[a4]rd' 'p[i1]ss', 'd[a4]mn', 'h[e3]ll', 'cr[a4]p', '[a4]ss',
'b[a4]st[a4]rd'
]; ];
const threats = [ const threats = [
'k[i1]ll y[o0]u', 'd[i1][e3]', 'murd[e3]r', 'h[a4]rm y[o0]u', 'k[i1]ll y[o0]u', 'd[i1][e3]', 'murd[e3]r',
'hurt y[o0]u', 'destroy y[o0]u', 'end y[o0]u' 'h[a4]rm y[o0]u', 'hurt y[o0]u', 'destroy y[o0]u',
'end y[o0]u'
]; ];
// Get content based on event type // Get content based on event type
let content = ''; let content = '';
let contentType = ''; let contentType = '';
let itemNumber = 0; let itemNumber = 0;
if (context.eventName === 'issues') { if (context.eventName === 'issues') {
content = context.payload.issue.title + ' ' + context.payload.issue.body; content = context.payload.issue.title + ' ' +
context.payload.issue.body;
contentType = 'issue'; contentType = 'issue';
itemNumber = context.payload.issue.number; itemNumber = context.payload.issue.number;
} else if (context.eventName === 'issue_comment') { } else if (context.eventName === 'issue_comment') {
@@ -61,25 +65,27 @@ jobs:
contentType = 'issue comment'; contentType = 'issue comment';
itemNumber = context.payload.issue.number; itemNumber = context.payload.issue.number;
} else if (context.eventName === 'pull_request') { } else if (context.eventName === 'pull_request') {
content = context.payload.pull_request.title + ' ' + context.payload.pull_request.body; content = context.payload.pull_request.title + ' ' +
context.payload.pull_request.body;
contentType = 'pull request'; contentType = 'pull request';
itemNumber = context.payload.pull_request.number; itemNumber = context.payload.pull_request.number;
} else if (context.eventName === 'pull_request_review_comment') { } else if (context.eventName ===
'pull_request_review_comment') {
content = context.payload.comment.body; content = context.payload.comment.body;
contentType = 'PR comment'; contentType = 'PR comment';
itemNumber = context.payload.pull_request.number; itemNumber = context.payload.pull_request.number;
} }
if (!content) return; if (!content) return;
const normalizedContent = content.toLowerCase() const normalizedContent = content.toLowerCase()
.replace(/[^a-z0-9\s]/g, '') .replace(/[^a-z0-9\s]/g, '')
.replace(/\s+/g, ' '); .replace(/\s+/g, ' ');
// Check for violations // Check for violations
let violation = null; let violation = null;
let severity = 'low'; let severity = 'low';
// Check hate speech (highest severity) // Check hate speech (highest severity)
for (const word of hateWords) { for (const word of hateWords) {
const regex = new RegExp(word, 'i'); const regex = new RegExp(word, 'i');
@@ -89,7 +95,7 @@ jobs:
break; break;
} }
} }
// Check threats (high severity) // Check threats (high severity)
if (!violation) { if (!violation) {
for (const threat of threats) { for (const threat of threats) {
@@ -101,7 +107,7 @@ jobs:
} }
} }
} }
// Check excessive profanity (medium severity) // Check excessive profanity (medium severity)
if (!violation) { if (!violation) {
let profanityCount = 0; let profanityCount = 0;
@@ -115,26 +121,34 @@ jobs:
severity = 'medium'; severity = 'medium';
} }
} }
// Set outputs // Set outputs
core.setOutput('violation', violation || 'none'); core.setOutput('violation', violation || 'none');
core.setOutput('severity', severity); core.setOutput('severity', severity);
core.setOutput('content-type', contentType); core.setOutput('content-type', contentType);
core.setOutput('item-number', itemNumber); core.setOutput('item-number', itemNumber);
if (violation) { if (violation) {
console.log(`⚠️ Detected ${violation} (${severity} severity) in ${contentType} #${itemNumber}`); console.log(
`⚠️ Detected ${violation} (${severity} severity) ` +
`in ${contentType} #${itemNumber}`
);
} }
- name: Handle critical violations - name: Handle critical violations
if: steps.content-check.outputs.violation != 'none' && steps.content-check.outputs.severity == 'critical' if: >-
steps.content-check.outputs.violation != 'none' &&
steps.content-check.outputs.severity == 'critical'
uses: actions/github-script@v7 uses: actions/github-script@v7
with: with:
script: | script: |
const itemNumber = ${{ steps.content-check.outputs.item-number }}; const itemNumber =
const contentType = '${{ steps.content-check.outputs.content-type }}'; ${{ steps.content-check.outputs.item-number }};
const violation = '${{ steps.content-check.outputs.violation }}'; const contentType =
'${{ steps.content-check.outputs.content-type }}';
const violation =
'${{ steps.content-check.outputs.violation }}';
if (contentType === 'issue') { if (contentType === 'issue') {
// Close and lock the issue immediately // Close and lock the issue immediately
await github.rest.issues.update({ await github.rest.issues.update({
@@ -143,31 +157,44 @@ jobs:
issue_number: itemNumber, issue_number: itemNumber,
state: 'closed' state: 'closed'
}); });
await github.rest.issues.lock({ await github.rest.issues.lock({
owner: context.repo.owner, owner: context.repo.owner,
repo: context.repo.repo, repo: context.repo.repo,
issue_number: itemNumber, issue_number: itemNumber,
lock_reason: 'off-topic' lock_reason: 'off-topic'
}); });
// Add moderation comment // Add moderation comment
await github.rest.issues.createComment({ await github.rest.issues.createComment({
owner: context.repo.owner, owner: context.repo.owner,
repo: context.repo.repo, repo: context.repo.repo,
issue_number: itemNumber, issue_number: itemNumber,
body: `🚫 **This issue has been automatically closed and locked due to a Code of Conduct violation.**\n\n**Violation**: ${violation}\n\n**This action was taken because the content violates our community standards. Repeated violations may result in being blocked from this repository.**\n\n📖 Please review our [Code of Conduct](.github/CODE_OF_CONDUCT.md) and [Contributing Guidelines](.github/CONTRIBUTING.md).` body: '🚫 **This issue has been automatically closed ' +
'and locked due to a Code of Conduct violation.**' +
`\n\n**Violation**: ${violation}\n\n` +
'**This action was taken because the content ' +
'violates our community standards. Repeated ' +
'violations may result in being blocked from ' +
'this repository.**\n\n📖 Please review our ' +
'[Code of Conduct](.github/CODE_OF_CONDUCT.md) ' +
'and [Contributing Guidelines]' +
'(.github/CONTRIBUTING.md).'
}); });
} }
- name: Handle high severity violations - name: Handle high severity violations
if: steps.content-check.outputs.violation != 'none' && steps.content-check.outputs.severity == 'high' if: >-
steps.content-check.outputs.violation != 'none' &&
steps.content-check.outputs.severity == 'high'
uses: actions/github-script@v7 uses: actions/github-script@v7
with: with:
script: | script: |
const itemNumber = ${{ steps.content-check.outputs.item-number }}; const itemNumber =
const contentType = '${{ steps.content-check.outputs.content-type }}'; ${{ steps.content-check.outputs.item-number }};
const contentType =
'${{ steps.content-check.outputs.content-type }}';
if (contentType === 'issue') { if (contentType === 'issue') {
// Add warning label and comment // Add warning label and comment
await github.rest.issues.addLabels({ await github.rest.issues.addLabels({
@@ -176,12 +203,17 @@ jobs:
issue_number: itemNumber, issue_number: itemNumber,
labels: ['moderation-review'] labels: ['moderation-review']
}); });
await github.rest.issues.createComment({ await github.rest.issues.createComment({
owner: context.repo.owner, owner: context.repo.owner,
repo: context.repo.repo, repo: context.repo.repo,
issue_number: itemNumber, issue_number: itemNumber,
body: `⚠️ **Content Warning**: This ${contentType} has been flagged for moderation review due to potentially inappropriate content.\n\nPlease ensure all content follows our [Code of Conduct](.github/CODE_OF_CONDUCT.md). A maintainer will review this shortly.` body: `⚠️ **Content Warning**: This ${contentType} ` +
'has been flagged for moderation review due to ' +
'potentially inappropriate content.\n\nPlease ' +
'ensure all content follows our ' +
'[Code of Conduct](.github/CODE_OF_CONDUCT.md). ' +
'A maintainer will review this shortly.'
}); });
} }
@@ -190,18 +222,45 @@ jobs:
uses: actions/github-script@v7 uses: actions/github-script@v7
with: with:
script: | script: |
const violation = '${{ steps.content-check.outputs.violation }}'; const violation =
const severity = '${{ steps.content-check.outputs.severity }}'; '${{ steps.content-check.outputs.violation }}';
const contentType = '${{ steps.content-check.outputs.content-type }}'; const severity =
const itemNumber = ${{ steps.content-check.outputs.item-number }}; '${{ steps.content-check.outputs.severity }}';
const contentType =
'${{ steps.content-check.outputs.content-type }}';
const itemNumber =
${{ steps.content-check.outputs.item-number }};
// Create a moderation alert issue // Create a moderation alert issue
await github.rest.issues.create({ await github.rest.issues.create({
owner: context.repo.owner, owner: context.repo.owner,
repo: context.repo.repo, repo: context.repo.repo,
title: `[MODERATION ALERT] ${violation} detected in ${contentType} #${itemNumber}`, title: `[MODERATION ALERT] ${violation} detected in ` +
body: `🚨 **Automated Moderation Alert**\n\n**Details:**\n- **Type**: ${violation} (${severity} severity)\n- **Location**: ${contentType} #${itemNumber}\n- **Action taken**: ${severity === 'critical' ? 'Automatically closed and locked' : 'Flagged for review'}\n\n**Next steps:**\n- [ ] Review the flagged content\n- [ ] Take additional action if needed\n- [ ] Consider blocking repeat offenders\n\n**Links:**\n- [View ${contentType} #${itemNumber}](https://github.com/${context.repo.owner}/${context.repo.repo}/${contentType === 'issue' ? 'issues' : 'pull'}/${itemNumber})\n\nThis alert was generated automatically by the content moderation system.`, `${contentType} #${itemNumber}`,
body: '🚨 **Automated Moderation Alert**\n\n' +
'**Details:**\n' +
`- **Type**: ${violation} (${severity} severity)\n` +
`- **Location**: ${contentType} #${itemNumber}\n` +
'- **Action taken**: ' +
(severity === 'critical' ?
'Automatically closed and locked' :
'Flagged for review') +
'\n\n**Next steps:**\n' +
'- [ ] Review the flagged content\n' +
'- [ ] Take additional action if needed\n' +
'- [ ] Consider blocking repeat offenders\n\n' +
'**Links:**\n' +
`- [View ${contentType} #${itemNumber}]` +
`(https://github.com/${context.repo.owner}/` +
`${context.repo.repo}/` +
(contentType === 'issue' ? 'issues' : 'pull') +
`/${itemNumber})\n\n` +
'This alert was generated automatically by the ' +
'content moderation system.',
labels: ['moderation', 'automated-alert'] labels: ['moderation', 'automated-alert']
}); });
console.log(`📧 Created moderation alert for ${violation} in ${contentType} #${itemNumber}`); console.log(
`📧 Created moderation alert for ${violation} ` +
`in ${contentType} #${itemNumber}`
);

View File

@@ -1,6 +1,7 @@
---
name: Welcome New Contributors name: Welcome New Contributors
on: 'on':
issues: issues:
types: [opened] types: [opened]
pull_request_target: pull_request_target:
@@ -12,30 +13,38 @@ jobs:
permissions: permissions:
issues: write issues: write
pull-requests: write pull-requests: write
steps: steps:
- name: Welcome first-time contributors - name: Welcome first-time contributors
uses: actions/first-interaction@v1 uses: actions/first-interaction@v1
with: with:
repo-token: ${{ secrets.GITHUB_TOKEN }} repo-token: ${{ secrets.GITHUB_TOKEN }}
issue-message: | issue-message: |
👋 **Welcome to the Claude Code Agents project, @${{ github.actor }}!** 👋 **Welcome to the Claude Code Agents project,
@${{ github.actor }}!**
Thank you for opening your first issue! We appreciate your interest in contributing to our collection of specialized subagents. Thank you for opening your first issue! We appreciate your
interest in contributing to our collection of specialized
subagents.
## 📋 Community Guidelines ## 📋 Community Guidelines
Before we proceed, please take a moment to review our community standards: Before we proceed, please take a moment to review our
community standards:
- 📖 **[Code of Conduct](.github/CODE_OF_CONDUCT.md)** - Our community standards and behavioral expectations - 📖 **[Code of Conduct](.github/CODE_OF_CONDUCT.md)** -
- 🤝 **[Contributing Guidelines](.github/CONTRIBUTING.md)** - How to contribute effectively Our community standards and behavioral expectations
- 💬 **[GitHub Discussions](https://github.com/wshobson/agents/discussions)** - For questions and general discussion - 🤝 **[Contributing Guidelines](.github/CONTRIBUTING.md)** -
How to contribute effectively
- 💬 **[GitHub Discussions]**
(https://github.com/wshobson/agents/discussions)
- For questions and general discussion
## 🛡️ Community Values ## 🛡️ Community Values
We maintain a **respectful, inclusive, and professional environment**. Our community does not tolerate: We maintain a **respectful, inclusive, and professional
environment**. Our community does not tolerate:
- Hate speech, discrimination, or harassment - Hate speech, discrimination, or harassment
- Personal attacks or inflammatory language - Personal attacks or inflammatory language
- Spam, trolling, or off-topic content - Spam, trolling, or off-topic content
- Any content that violates our Code of Conduct - Any content that violates our Code of Conduct
@@ -52,28 +61,38 @@ jobs:
A maintainer will review your issue soon. Please feel free to: A maintainer will review your issue soon. Please feel free to:
- Add any additional context if needed - Add any additional context if needed
- Respond to questions from maintainers - Respond to questions from maintainers
- Join our [Discussions](https://github.com/wshobson/agents/discussions) for general questions - Join our [Discussions] for questions
(https://github.com/wshobson/agents/discussions)
Thank you for helping make this project better! 🎉 Thank you for helping make this project better! 🎉
pr-message: | pr-message: |
👋 **Welcome to the Claude Code Agents project, @${{ github.actor }}!** 👋 **Welcome to the Claude Code Agents project,
@${{ github.actor }}!**
Thank you for opening your first pull request! We appreciate your interest in contributing to our collection of specialized subagents. Thank you for opening your first pull request! We appreciate
your interest in contributing to our collection of specialized
subagents.
## 📋 Community Guidelines ## 📋 Community Guidelines
Before we proceed, please take a moment to review our community standards: Before we proceed, please take a moment to review our
community standards:
- 📖 **[Code of Conduct](.github/CODE_OF_CONDUCT.md)** - Our community standards and behavioral expectations - 📖 **[Code of Conduct](.github/CODE_OF_CONDUCT.md)** -
- 🤝 **[Contributing Guidelines](.github/CONTRIBUTING.md)** - How to contribute effectively Our community standards and behavioral expectations
- 💬 **[GitHub Discussions](https://github.com/wshobson/agents/discussions)** - For questions and general discussion - 🤝 **[Contributing Guidelines](.github/CONTRIBUTING.md)** -
How to contribute effectively
- 💬 **[GitHub Discussions]**
(https://github.com/wshobson/agents/discussions)
- For questions and general discussion
## 🛡️ Community Values ## 🛡️ Community Values
We maintain a **respectful, inclusive, and professional environment**. Our community does not tolerate: We maintain a **respectful, inclusive, and professional
environment**. Our community does not tolerate:
- Hate speech, discrimination, or harassment - Hate speech, discrimination, or harassment
- Personal attacks or inflammatory language - Personal attacks or inflammatory language
- Spam, trolling, or off-topic content - Spam, trolling, or off-topic content
- Any content that violates our Code of Conduct - Any content that violates our Code of Conduct
@@ -88,9 +107,11 @@ jobs:
## 🚀 Next Steps ## 🚀 Next Steps
A maintainer will review your pull request soon. Please feel free to: A maintainer will review your pull request soon.
Please feel free to:
- Add any additional context about your changes - Add any additional context about your changes
- Respond to feedback and questions from maintainers - Respond to feedback and questions from maintainers
- Join our [Discussions](https://github.com/wshobson/agents/discussions) for general questions - Join our [Discussions] for questions
(https://github.com/wshobson/agents/discussions)
Thank you for helping make this project better! 🎉 Thank you for helping make this project better! 🎉