Skip to content

Commit 3fe9fd6

Browse files
jwesleyeclaude
andcommitted
feat: add complete open source community infrastructure
Community health files, dev experience configs, automation workflows, enhanced PyPI metadata. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 91b4948 commit 3fe9fd6

22 files changed

Lines changed: 1393 additions & 2 deletions

.editorconfig

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# EditorConfig helps maintain consistent coding styles across different editors and IDEs
2+
# https://editorconfig.org/
3+
4+
root = true
5+
6+
# Default settings for all files
7+
[*]
8+
charset = utf-8
9+
end_of_line = lf
10+
insert_final_newline = true
11+
trim_trailing_whitespace = true
12+
indent_style = space
13+
indent_size = 4
14+
15+
# Python files
16+
[*.py]
17+
indent_size = 4
18+
max_line_length = 88
19+
20+
# YAML files
21+
[*.{yml,yaml}]
22+
indent_size = 2
23+
24+
# TOML files
25+
[*.toml]
26+
indent_size = 2
27+
28+
# Markdown files
29+
[*.md]
30+
trim_trailing_whitespace = false
31+
max_line_length = off
32+
33+
# JSON files
34+
[*.json]
35+
indent_size = 2
36+
37+
# Shell scripts
38+
[*.sh]
39+
indent_size = 2
40+
end_of_line = lf
41+
42+
# Makefiles require tabs
43+
[Makefile]
44+
indent_style = tab
45+
46+
# GitHub Actions
47+
[.github/workflows/*.yml]
48+
indent_size = 2

.github/CODEOWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# CODEOWNERS file
2+
# These owners will be automatically requested for review when someone opens a PR.
3+
# https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/about-code-owners
4+
5+
# Global owners - will be requested for review on all PRs
6+
* @jwesleye @unseriousai
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: Bug Report
3+
about: Report a bug or unexpected behavior
4+
title: '[BUG] '
5+
labels: 'type: bug'
6+
assignees: ''
7+
---
8+
9+
## Bug Description
10+
<!-- A clear and concise description of what the bug is -->
11+
12+
## Steps to Reproduce
13+
1.
14+
2.
15+
3.
16+
17+
## Expected Behavior
18+
<!-- What you expected to happen -->
19+
20+
## Actual Behavior
21+
<!-- What actually happened -->
22+
23+
## Environment
24+
- **OS**: <!-- e.g., macOS 13.0, Ubuntu 22.04, Windows 11 -->
25+
- **Python Version**: <!-- e.g., 3.11.4 -->
26+
- **Package Version**: <!-- e.g., 0.12.0 -->
27+
- **Installation Method**: <!-- e.g., pip, uv, from source -->
28+
29+
## Error Messages
30+
<!-- Paste any error messages or stack traces here -->
31+
```
32+
```
33+
34+
## Additional Context
35+
<!-- Add any other context about the problem here -->
36+
37+
## Possible Solution
38+
<!-- Optional: Suggest a fix or workaround if you have one -->

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: 💬 GitHub Discussions
4+
url: https://github.com/Open-Agent-Tools/agent-examples/discussions
5+
about: Ask questions, share ideas, or discuss the project with the community
6+
- name: 🔒 Security Vulnerability
7+
url: https://github.com/Open-Agent-Tools/agent-examples/security/advisories/new
8+
about: Report a security vulnerability privately (please do not open a public issue)
9+
- name: 📚 Documentation
10+
url: https://github.com/Open-Agent-Tools/agent-examples#readme
11+
about: Read the documentation and usage guides
12+
- name: 📦 PyPI Package
13+
url: https://pypi.org/project/agent-examples/
14+
about: View the package on PyPI
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
name: Feature Request
3+
about: Suggest a new feature or enhancement
4+
title: '[FEATURE] '
5+
labels: 'type: enhancement'
6+
assignees: ''
7+
---
8+
9+
## Feature Description
10+
<!-- A clear and concise description of the feature you'd like -->
11+
12+
## Motivation
13+
<!-- Why is this feature needed? What problem does it solve? -->
14+
15+
## Proposed Solution
16+
<!-- How would you like this feature to work? -->
17+
18+
## Example Usage
19+
<!-- Show how you would use this feature with code examples -->
20+
```python
21+
# Example usage here
22+
```
23+
24+
## Alternatives Considered
25+
<!-- What other approaches have you considered? -->
26+
27+
## Additional Context
28+
<!-- Add any other context, screenshots, or examples about the feature request here -->
29+
30+
## Implementation Notes
31+
<!-- Optional: Technical details about how this could be implemented -->

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Pull Request
2+
3+
## Description
4+
<!-- Provide a clear and concise description of your changes -->
5+
6+
## Type of Change
7+
<!-- Mark the relevant option with an "x" -->
8+
- [ ] Bug fix (non-breaking change which fixes an issue)
9+
- [ ] New feature (non-breaking change which adds functionality)
10+
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
11+
- [ ] Documentation update
12+
- [ ] Code refactoring
13+
- [ ] Performance improvement
14+
- [ ] Test addition or modification
15+
- [ ] Build/CI change
16+
17+
## Related Issues
18+
<!-- Link related issues here using #issue_number -->
19+
Fixes #
20+
Relates to #
21+
22+
## Changes Made
23+
<!-- List the key changes in this PR -->
24+
-
25+
-
26+
-
27+
28+
## Testing
29+
<!-- Describe the tests you ran and how to reproduce them -->
30+
- [ ] All existing tests pass
31+
- [ ] Added new tests for changes
32+
- [ ] Manual testing performed
33+
34+
### Test Coverage
35+
<!-- Add test coverage information if applicable -->
36+
```
37+
```
38+
39+
## Screenshots/Examples
40+
<!-- If applicable, add screenshots or example output -->
41+
42+
## Checklist
43+
- [ ] My code follows the style guidelines of this project
44+
- [ ] I have performed a self-review of my code
45+
- [ ] I have commented my code, particularly in hard-to-understand areas
46+
- [ ] I have made corresponding changes to the documentation
47+
- [ ] My changes generate no new warnings
48+
- [ ] I have added tests that prove my fix is effective or that my feature works
49+
- [ ] New and existing unit tests pass locally with my changes
50+
- [ ] Any dependent changes have been merged and published
51+
52+
## Breaking Changes
53+
<!-- If this is a breaking change, describe the impact and migration path -->
54+
55+
## Additional Notes
56+
<!-- Add any additional notes for reviewers -->

.github/labeler.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Auto-labeling rules for PRs based on changed files
2+
# https://github.com/actions/labeler
3+
4+
# Documentation changes
5+
"area: documentation":
6+
- changed-files:
7+
- any-glob-to-any-file:
8+
- "**/*.md"
9+
- "docs/**/*"
10+
11+
# Tests
12+
"area: tests":
13+
- changed-files:
14+
- any-glob-to-any-file:
15+
- "tests/**/*"
16+
- "**/test_*.py"
17+
- "**/*_test.py"
18+
19+
# CI/CD and workflows
20+
"area: ci":
21+
- changed-files:
22+
- any-glob-to-any-file:
23+
- ".github/**/*"
24+
- ".gitignore"
25+
- ".pre-commit-config.yaml"
26+
27+
# Dependencies
28+
"type: dependencies":
29+
- changed-files:
30+
- any-glob-to-any-file:
31+
- "pyproject.toml"
32+
- "requirements*.txt"
33+
- "uv.lock"
34+
35+
# Core functionality
36+
"area: core":
37+
- changed-files:
38+
- any-glob-to-any-file:
39+
- "src/agent_examples/**/*.py"
40+
41+
# Security
42+
"area: security":
43+
- changed-files:
44+
- any-glob-to-any-file:
45+
- "SECURITY.md"
46+
- "**/security*.py"

.github/release-drafter.yml

Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
# Release Drafter configuration
2+
# https://github.com/release-drafter/release-drafter
3+
4+
name-template: "v$RESOLVED_VERSION"
5+
tag-template: "v$RESOLVED_VERSION"
6+
7+
categories:
8+
- title: "🚀 Features"
9+
labels:
10+
- "type: enhancement"
11+
- "type: feature"
12+
- title: "🐛 Bug Fixes"
13+
labels:
14+
- "type: bug"
15+
- title: "🔒 Security"
16+
labels:
17+
- "type: security"
18+
- "area: security"
19+
- title: "⚠️ Breaking Changes"
20+
labels:
21+
- "type: breaking-change"
22+
- title: "📚 Documentation"
23+
labels:
24+
- "area: documentation"
25+
- title: "🧪 Tests"
26+
labels:
27+
- "area: tests"
28+
- title: "🔧 Maintenance"
29+
labels:
30+
- "area: ci"
31+
- "type: dependencies"
32+
- title: "🎨 Style & Refactoring"
33+
labels:
34+
- "type: refactor"
35+
- "type: style"
36+
37+
change-template: "- $TITLE (#$NUMBER) @$AUTHOR"
38+
change-title-escapes: '\<*_&'
39+
40+
version-resolver:
41+
major:
42+
labels:
43+
- "type: breaking-change"
44+
- "version: major"
45+
minor:
46+
labels:
47+
- "type: enhancement"
48+
- "type: feature"
49+
- "version: minor"
50+
patch:
51+
labels:
52+
- "type: bug"
53+
- "type: security"
54+
- "type: dependencies"
55+
- "version: patch"
56+
default: patch
57+
58+
template: |
59+
## What's Changed
60+
61+
$CHANGES
62+
63+
## Contributors
64+
65+
Thank you to all contributors who made this release possible!
66+
67+
$CONTRIBUTORS
68+
69+
**Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...v$RESOLVED_VERSION
70+
71+
autolabeler:
72+
- label: "area: documentation"
73+
files:
74+
- "*.md"
75+
- "docs/**/*"
76+
- label: "area: tests"
77+
files:
78+
- "tests/**/*"
79+
- "**/test_*.py"
80+
- label: "area: ci"
81+
files:
82+
- ".github/**/*"
83+
- label: "type: dependencies"
84+
files:
85+
- "pyproject.toml"
86+
- "requirements*.txt"
87+
- "uv.lock"
88+
- label: "area: core"
89+
files:
90+
- "src/basic_open_agent_tools/**/*.py"
91+
92+
exclude-labels:
93+
- "skip-changelog"
94+
- "status: duplicate"
95+
- "status: invalid"
96+
- "status: wontfix"
97+
98+
replacers:
99+
# Replace "Fix #123" with a link
100+
- search: '/\bFix #(\d+)\b/g'
101+
replace: "Fix [#$1](https://github.com/$OWNER/$REPOSITORY/issues/$1)"
102+
# Replace "Close #123" with a link
103+
- search: '/\bClose #(\d+)\b/g'
104+
replace: "Close [#$1](https://github.com/$OWNER/$REPOSITORY/issues/$1)"
105+
# Replace "Resolve #123" with a link
106+
- search: '/\bResolve #(\d+)\b/g'
107+
replace: "Resolve [#$1](https://github.com/$OWNER/$REPOSITORY/issues/$1)"

.github/workflows/auto-assign.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Auto Assign
2+
on:
3+
issues:
4+
types: [opened]
5+
pull_request:
6+
types: [opened]
7+
jobs:
8+
run:
9+
runs-on: ubuntu-latest
10+
permissions:
11+
issues: write
12+
pull-requests: write
13+
steps:
14+
- name: 'Auto-assign issue'
15+
uses: pozil/auto-assign-issue@v1
16+
with:
17+
repo-token: ${{ secrets.GITHUB_TOKEN }}
18+
assignees: unseriousAI
19+
numOfAssignee: 1

0 commit comments

Comments
 (0)