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
Diffctx will automatically analyse the diff (**and the context of diff**) every new PullRequests in your repo, and leave comments for indicating which part you should care most:
Diffctx will automatically analyse the diff (**and the context of diff**) every new PullRequests in your repo, and leave
17
+
comments for indicating which part you should care most:
20
18
21
-
Based on [LSIF](https://microsoft.github.io/language-server-protocol/overviews/lsif/overview/), diffctx will not only analyse the lines contained by the diff, but also the full scope of your repo, and understand it well.
A real example can be found in: https://github.com/williamfzc/srctx/tree/test_diffctx
64
+
67
65
## How it works
68
66
69
67
1. Scan the repo and understand it well
70
68
2. Extract the sub graph influenced by the diff
71
69
3. Generate a summary from sub graph
72
-
4. Send the summary to AI for evaluation
73
-
5. Create a comment
74
-
75
-
The 1-3 is finished by [srctx](https://github.com/williamfzc/srctx).
70
+
4. Create a comment
76
71
77
-
## Cost
72
+
## Supported Languages
78
73
79
-
Token is expensive. So we did not intend to let AI scan all the codes at the beginning, but advanced and standardized the calculation part through the parser.
74
+
Thanks to tree-sitter and LSIF, diffctx can support nearly all the popular languages.
80
75
81
-
Everything can be done in one request. Which takes ~10s.
76
+
| Languages | Status |
77
+
|-----------|---------|
78
+
| Golang | Done |
79
+
| Python | Done |
80
+
| Java | Working |
82
81
83
82
## Contribution
84
83
@@ -89,7 +88,7 @@ Issues, PRs and suggestions are welcome.
89
88
90
89
## Roadmap
91
90
92
-
- Stable prompt
93
-
- Send AI the necessary code to make better suggestions
91
+
- More languages
94
92
- Better comment format
95
-
- Extract more meaningful columns (like function definition) from code
93
+
- Extract more meaningful columns (like function definition) from code
0 commit comments