感谢你关注 LinX,也感谢你愿意一起把它做得更好。
为了减少来回沟通,建议先快速阅读这些文件:
- 欢迎提交 Issue、文档修订、测试补充、Bug 修复和功能改进
- 提交贡献即表示你同意维护者可以将你的提交整合进项目并按仓库当前双许可证方式发布
- LinX 当前采用
MIT OR Apache-2.0双许可证;具体条款以LICENSE、LICENSE-MIT和LICENSE-APACHE为准
如果你发现了 Bug 或有功能建议:
- 先在 Issues 中搜索是否已有相关问题
- 如果没有,再创建新的 Issue
- 尽量写清楚预期行为、实际行为、复现步骤和运行环境
- 如果是界面问题,建议附上截图或录屏
- Fork 仓库
- 创建分支,例如:
git checkout -b feat/my-change - 完成修改并自测
- 提交更改
- 推送分支并发起 Pull Request
建议使用语义化提交信息:
feat:新功能fix:修复问题docs:文档更新refactor:重构test:测试相关chore:工具或流程调整
示例:
feat(skill-library): add skill package validation
fix(project-execution): handle missing lease status
docs: refresh public README and license guide
请始终使用项目内虚拟环境 backend/.venv。
cd backend
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/pip install -r requirements-dev.txt
.venv/bin/python scripts/dev_server.py preflight常用命令:
cd backend
source .venv/bin/activate
make run
make run-debug
make format
make lint
make type-check
make test
make test-cov
make migratecd frontend
npm install常用命令:
cd frontend
npm run dev
npm run lint
npm run type-check
npm run format
npm run test
npm run build如果你需要本地依赖服务:
docker compose up -d postgres redis minio etcd minio-milvus milvus或者直接拉起整套本地环境:
docker compose up -d- 遵循 PEP 8
- 使用 Black + isort
- 生产代码尽量补全 type hints
- 与现有模块边界保持一致,不要随意跨域塞逻辑
推荐检查方式:
cd backend
source .venv/bin/activate
make format
make lint
make type-check- 遵循 ESLint 与 Prettier 约束
- 保持类型定义和页面/状态逻辑同步
- 尽量复用已有组件、hooks 和 stores
推荐检查方式:
cd frontend
npm run lint
npm run type-check
npm run format提交 PR 前,请尽量完成与改动范围相匹配的测试。
cd backend
source .venv/bin/activate
make test如需更完整覆盖:
cd backend
source .venv/bin/activate
make test-covcd frontend
npm run test如果你的改动影响以下任一内容,请同步更新文档:
- 对外功能描述
- 安装与部署步骤
- 配置项
- API 或页面行为
- 授权说明
至少请检查:
README.mdREADME_EN.mddocs/下相关文档
请尽量遵循现有目录边界:
backend/
├── api_gateway/ # API 网关、路由与中间件
├── agent_framework/ # 智能体框架
├── task_manager/ # 任务协调
├── knowledge_base/ # 知识库
├── user_memory/ # 用户记忆
├── skill_library/ # 技能系统
├── llm_providers/ # 模型提供方接入
└── tests/ # 测试
frontend/
├── src/
│ ├── api/ # API 层
│ ├── components/ # 组件
│ ├── pages/ # 页面
│ ├── stores/ # Zustand 状态管理
│ ├── hooks/ # 自定义 hooks
│ └── types/ # 类型定义
└── tests/ # 测试
- 尊重所有贡献者
- 保持专业、友好、可协作
- 关注问题本身,不做人身攻击
- 接受建设性反馈,也尽量给出可执行建议
你可以:
再次感谢你的投入,哪怕只是一个小修复,也会让这个项目更稳一点。