You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* update Anthropic client to use tool calling and add tests
* fix linting errors before creating pull request by making literal types for anthropic models
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+62-51Lines changed: 62 additions & 51 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,104 +9,114 @@ We've restructured our contribution paths to solve this problem:
9
9
# Four Ways to Get Involved
10
10
11
11
### Pick Up Existing Issues
12
+
12
13
Our developers regularly tag issues with "help wanted" and "good first issue." These are pre-vetted tasks with clear scope and someone ready to help you if you get stuck.
13
14
14
15
### Create Your Own Tickets
16
+
15
17
See something that needs fixing? Have an idea for an improvement? You don't need permission to identify problems. The people closest to the pain are often best positioned to describe the solution.
16
18
17
19
For **feature requests**, tell us the story of what you're trying to accomplish. What are you working on? What's getting in your way? What would make your life easier? Submit these through our [GitHub issue tracker](https://github.com/getzep/graphiti/issues) with a "Feature Request" label.
18
20
19
21
For **bug reports**, we need enough context to reproduce the problem. Use the [GitHub issue tracker](https://github.com/getzep/graphiti/issues) and include:
20
-
- A clear title that summarizes the specific problem
21
-
- What you were trying to do when you encountered the bug
22
-
- What you expected to happen
23
-
- What actually happened
24
-
- A code sample or test case that demonstrates the issue
22
+
23
+
- A clear title that summarizes the specific problem
24
+
- What you were trying to do when you encountered the bug
25
+
- What you expected to happen
26
+
- What actually happened
27
+
- A code sample or test case that demonstrates the issue
25
28
26
29
### Share Your Use Cases
30
+
27
31
Sometimes the most valuable contribution isn't code. If you're using our project in an interesting way, add it to the [examples](https://github.com/getzep/graphiti/tree/main/examples) folder. This helps others discover new possibilities and counts as a meaningful contribution. We regularly feature compelling examples in our blog posts and videos - your work might be showcased to the broader community!
28
32
29
33
### Help Others in Discord
30
-
Join our [Discord server](https://discord.gg/2JbGZQZT) community and pitch in at the helpdesk. Answering questions and helping troubleshoot issues is an incredibly valuable contribution that benefits everyone. The knowledge you share today saves someone hours of frustration tomorrow.
34
+
35
+
Join our [Discord server](https://discord.gg/2JbGZQZT) community and pitch in at the helpdesk. Answering questions and helping troubleshoot issues is an incredibly valuable contribution that benefits everyone. The knowledge you share today saves someone hours of frustration tomorrow.
31
36
32
37
## What happens next?
38
+
33
39
Once you've found an issue tagged with "good first issue" or "help wanted," or prepared an example to share, here's how to turn that into a contribution:
34
40
35
-
1. Share your approach in the issue discussion or [Discord](https://discord.gg/2JbGZQZT) before diving deep into code. This helps ensure your solution adheres to the architecture of Graphiti from the start and saves you from potential rework.
41
+
1. Share your approach in the issue discussion or [Discord](https://discord.gg/2JbGZQZT) before diving deep into code. This helps ensure your solution adheres to the architecture of Graphiti from the start and saves you from potential rework.
36
42
37
43
2. Fork the repo, make your changes in a branch, and submit a PR. We've included more detailed technical instructions below; be open to feedback during review.
- To run integration tests, set the appropriate environment variables
62
+
63
+
```
64
+
export TEST_OPENAI_API_KEY=...
65
+
export TEST_OPENAI_MODEL=...
66
+
export TEST_ANTHROPIC_API_KEY=...
67
+
68
+
export NEO4J_URI=neo4j://...
69
+
export NEO4J_USER=...
70
+
export NEO4J_PASSWORD=...
71
+
```
62
72
63
73
## Making Changes
64
74
65
75
1. Create a new branch for your changes:
66
-
```
67
-
git checkout -b your-branch-name
68
-
```
76
+
```
77
+
git checkout -b your-branch-name
78
+
```
69
79
2. Make your changes in the codebase.
70
80
3. Write or update tests as necessary.
71
81
4. Run the tests to ensure they pass:
72
-
```
73
-
make test
74
-
```
82
+
```
83
+
make test
84
+
```
75
85
5. Format your code:
76
-
```
77
-
make format
78
-
```
86
+
```
87
+
make format
88
+
```
79
89
6. Run linting checks:
80
-
```
81
-
make lint
82
-
```
90
+
```
91
+
make lint
92
+
```
83
93
84
94
## Submitting Changes
85
95
86
96
1. Commit your changes:
87
-
```
88
-
git commit -m "Your detailed commit message"
89
-
```
97
+
```
98
+
git commit -m "Your detailed commit message"
99
+
```
90
100
2. Push to your fork:
91
-
```
92
-
git push origin your-branch-name
93
-
```
101
+
```
102
+
git push origin your-branch-name
103
+
```
94
104
3. Submit a pull request through the GitHub website to https://github.com/getzep/graphiti.
95
105
96
106
## Pull Request Guidelines
97
107
98
-
- Provide a clear title and description of your changes.
99
-
- Include any relevant issue numbers in the PR description.
100
-
- Ensure all tests pass and there are no linting errors.
101
-
- Update documentation if you're changing functionality.
108
+
- Provide a clear title and description of your changes.
109
+
- Include any relevant issue numbers in the PR description.
110
+
- Ensure all tests pass and there are no linting errors.
111
+
- Update documentation if you're changing functionality.
102
112
103
113
## Code Style and Quality
104
114
105
115
We use several tools to maintain code quality:
106
116
107
-
- Ruff for linting and formatting
108
-
- Mypy for static type checking
109
-
- Pytest for testing
117
+
- Ruff for linting and formatting
118
+
- Mypy for static type checking
119
+
- Pytest for testing
110
120
111
121
Before submitting a pull request, please run:
112
122
@@ -117,6 +127,7 @@ make check
117
127
This command will format your code, run linting checks, and execute tests.
118
128
119
129
# Questions?
130
+
120
131
Stuck on a contribution or have a half-formed idea? Come say hello in our [Discord server](https://discord.gg/2JbGZQZT). Whether you're ready to contribute or just want to learn more, we're happy to have you! It's faster than GitHub issues and you'll find both maintainers and fellow contributors ready to help.
0 commit comments