Skip to content

Commit ab0010a

Browse files
author
zhangzeyu.35
committed
feat: init
1 parent 406d293 commit ab0010a

File tree

264 files changed

+179408
-203
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

264 files changed

+179408
-203
lines changed
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
name: "Bug report"
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
> A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
> Steps to reproduce the bug.
15+
16+
**Screenshots**
17+
> If possible, please upload screenshots of the code, console, terminal, etc. to help us understand your problem.
18+
19+
**Reproduce repository**
20+
> Please provide a condensed code repository and upload it to your own github to help us reproduce your problem.
21+
22+
**Environment**
23+
- Oxygent version:
24+
- Build tools & version:
25+
- Other deployments:
26+
27+
**Logs and Reports**
28+
> If possible, please upload files containing `/cache_dir` or `/cache_dir_dev` for detailed error logs.

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
blank_issues_enabled: false
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: "Feature request"
3+
about: Suggest a feature for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
> A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
> A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
> A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
> Add any other context or screenshots about the feature request here.
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: "Suggestion"
3+
about: Other suggestions for this project
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
**Describe your suggestion or comments here**
11+
> A clear and concise description of what your suggestion or comment is.
12+
13+
**Describe factors or reasons you've considered**
14+
> For ugent or essential suggestions please add your consideration here.
15+
16+
**Additional context**
17+
> Add any other context or screenshots about the feature request here.
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
name: "Other Issues"
3+
about: Other issues
4+
title: ''
5+
labels: ''
6+
assignees: ''
7+
8+
---
9+
10+
## Issue content
11+
> Please add your issue here.

.github/pull_request_template.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
### Summary
2+
3+
<!-- Describe the changes introduced by this PR -->
4+
5+
### Related Issue(s)
6+
7+
<!-- Describe relevant issues here, such as: -->
8+
9+
- Closes #123
10+
- Fixes #456
11+
12+
### Changes
13+
14+
<!-- Describe your changes here, such as: -->
15+
16+
- [ ] Feature A added
17+
18+
contents
19+
20+
- [ ] Refactor B
21+
22+
contents
23+
24+
- [ ] Fix for C
25+
26+
contents
27+
28+
29+
<!--
30+
In each section, please describe design decisions made, including:
31+
- Choice of algorithms.
32+
- Behavioral aspects.
33+
- Class organization and design.
34+
- Method organization and design (how the logic is split between methods, parameters and return types)
35+
- Naming (class, method, API, configuration, HTTP endpoint, names of emitted metrics)
36+
-->
37+
38+
### Screenshots (if UI changes)
39+
40+
<!-- Optional: add before/after screenshots -->
41+
42+
### Checklist
43+
44+
- [ ] been self-reviewed.
45+
- [ ] Code is formatted
46+
- [ ] Tests added/updated
47+
- [ ] All CI checks passed
48+
- [ ] Documentation updated
49+
- [ ] added documentation for new or modified features or behaviors.
50+
- [ ] added new features, such as new agents, new flows, etc.
51+
- [ ] added or updated version, __license__, or notice information.
52+
- [ ] added or updated demo, integration tests, unit tests, or others.
53+
- [ ] added or updated ui, or had changes in frontend.
54+

.github/workflows/ci.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Oxygent CI
2+
3+
on:
4+
push:
5+
branches: [main, dev]
6+
pull_request:
7+
branches: [main, dev]
8+
9+
jobs:
10+
build-and-test:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
python-version: ["3.10"]
16+
17+
steps:
18+
- name: Checkout repository
19+
uses: actions/checkout@v4
20+
21+
- name: Set up Python ${{ matrix.python-version }}
22+
uses: actions/setup-python@v4
23+
with:
24+
python-version: ${{ matrix.python-version }}
25+
26+
- name: Install dependencies
27+
run: |
28+
python -m pip install --upgrade pip
29+
pip install pytest pytest-asyncio
30+
pip install ruff docformatter
31+
pip install -r requirements.txt
32+
33+
- name: Format code with Ruff (auto-fix)
34+
run: |
35+
ruff format .
36+
37+
- name: Run Unit Tests
38+
run: |
39+
pytest oxygent/test/unittest

.gitignore

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -205,3 +205,42 @@ cython_debug/
205205
marimo/_static/
206206
marimo/_lsp/
207207
__marimo__/
208+
209+
# Python 缓存文件和编译文件
210+
__pycache__/
211+
*.pyc
212+
213+
# Jupyter Notebook 检查点文件
214+
.ipynb_checkpoints/
215+
216+
# 常见压缩包及二进制文件
217+
*.zip
218+
*.bin
219+
*.pkl
220+
221+
# 常见项目配置目录及文件(如 IDE 配置)
222+
.idea/
223+
.vscode/
224+
.joycoder/
225+
.joycode/
226+
*.iml
227+
*.xml
228+
pyproject.toml*
229+
230+
# 数据文件与日志文件
231+
*.jsonl
232+
*.log
233+
*.lock
234+
235+
# macOS 系统生成的隐藏文件
236+
.DS_Store
237+
238+
# 环境变量及敏感信息文件
239+
.env
240+
241+
# 运行时产生的文件
242+
cache_dir/
243+
cache_dir_dev/
244+
local_file/
245+
docs/
246+
deployment/

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Changelog

CONTRIBUTING.md

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
<!-- Copyright 2025 JD.com
2+
3+
Licensed under the Apache License, Version 2.0 (the "License");
4+
you may not use this project except in compliance with the License.
5+
You may obtain a copy of the License at
6+
7+
http://www.apache.org/licenses/LICENSE-2.0
8+
9+
Unless required by applicable law or agreed to in writing, software
10+
distributed under the License is distributed on an "AS IS" BASIS,
11+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
See the License for the specific language governing permissions and
13+
limitations under the License. -->
14+
15+
[English](./CONTRIBUTING.md) | [中文](./CONTRIBUTING_zh.md)
16+
17+
# Contribute to OxyGent
18+
19+
Our project welcomes contributions from developers and organizations from all over the world. Our project is dedicated to creating a multi-agent development platform for all users, so whether you are an expert in your field or a regular user of the project, we welcome you to participate in shaping the future of this project. You can get involved in the project in the following ways:
20+
21+
+ Write / translate / fix our documentation
22+
+ Raise questions / Answer questions
23+
+ Provide demos, examples or test cases
24+
+ Give suggestions or other comments
25+
+ Paticipate in [issues](https://github.com/jd-opensource/OxyGent/issues) or [discussions](https://github.com/jd-opensource/OxyGent/discussions)
26+
+ Pull requests
27+
+ Sharing related research / application
28+
+ Any other ways to improve OxyGent
29+
30+
For developers who want to contribute to our code, here is the guidance:
31+
32+
## 1. Choose an issue to contribute
33+
+ Issues with label `PR welcome`, which means:
34+
+ A reproducible bug
35+
+ A function in plan
36+
37+
## 2. Install environment for development
38+
+ We strongly suggest you to read our **[Document](http://oxygent.jd.com/docs/)** before developing
39+
+ For setting environment, please check our **[Readme file](/README.md)**
40+
41+
## 3. Build our project
42+
+ You could run our demo to check whether the requirements are successfully installed:
43+
```bash
44+
python demo.py
45+
```
46+
```bash
47+
python -m examples.agents.single_demo
48+
```
49+
50+
## 4. Test
51+
We provide some tests to check your code before pull request.
52+
+ Before testing, you should install `pytest`:
53+
```bash
54+
pip install pytest pytest-asyncio
55+
```
56+
+ Format code:
57+
```bash
58+
ruff format .
59+
docformatter -r -i --wrap-summaries 88 --wrap-descriptions 88 oxygent/
60+
```
61+
+ Unit test:
62+
```bash
63+
pytest oxygent/test/unittest
64+
```
65+
+ Integration test (Optional):
66+
```bash
67+
pytest oxygent/test/integration
68+
```
69+
After the PR is submitted, we will format and test the code.
70+
Our tests are still far from perfect, so you are welcomed to add tests to our project!

0 commit comments

Comments
 (0)