# LinkToolAddin(灵图插件) ## 介绍 灵图是一个将LLM运用MCP技术与ArcGIS Pro结合的插件,该插件实现以下功能: - 以自然语言对话的形式接收用户输入的需求并与模型进行交互 - 根据需要调用ArcGIS Pro地理处理工具的API或者执行arcpy代码,实现对地理数据的处理,完成用户需求 - 将处理结果以自然语言的形式反馈给用户 ## 开发协作 ### 首次贡献前准备 本项目为.NET 8.0开发,使用C#语言编写,使用Visual Studio 2022或Rider 2024及以上进行开发。 协作时需要先拉取主分支代码,通过以下命令进行拉取: ```bash git clone xxx.git ``` 然后在本地创建一个新的分支进行开发,以功能或模块进行命名,请修改下面命令的`branch_name`为你要创建的分支名称: ```bash git checkout -b branch_name ``` ### 开发流程 完成开发后,使用以下命令将代码提交到本地分支,请修改下面命令的`commit message`为你的提交信息,简要说明本次提交修改了什么: ```bash git add . git commit -m "your commit message" ``` 然后将本地分支推送到远程分支,请修改下面命令的`branch_name`为你要推送的分支名称: ```bash git push origin branch_name ``` ### 提交PR(合并请求) 在Gitea网站上,进入到你的分支页面,点击“创建拉取请求”按钮,填写PR的标题和描述,详细描述本次PR的修改内容,选择要合并到的主分支(`master`),然后点击“创建拉取请求”按钮。 PR创建后,微信群内通报,等待其他开发者进行代码审查和合并。审查通过后,PR将被合并到主分支。 ### 提交要求 1. 确保代码跑的通才提交(commit),未完成的请通过stage存档,不要commit不完整的代码。 2. 勤提交,单个模块提交一次,避免一次性提交过多代码,严禁在一次提交中修改多个模块的代码。 3. 提交消息统一用中文,简要描述本次提交的修改内容。 4. 提交代码前,确保代码格式化完成,使用VS2022或Rider2024的格式化功能进行格式化,严禁提交不格式化的代码。 5. 特殊情况下如需提交测试未通过的代码,请提交到新的分支临时用于协作 ## 代码规范 代码命名规范 - 文件命名:使用大驼峰命名法,文件名与类名一致,文件后缀为.cs - 类命名:使用大驼峰命名法,类名与文件名一致 - 方法命名:使用大驼峰命名法,方法名以动词开头,描述方法的功能 - 变量命名:使用小驼峰命名法,变量名以小写字母开头,描述变量的含义 - 常量命名:使用大驼峰命名法,常量名以大写字母开头,描述常量的含义 代码或文档中待办事项使用`TODO`标记,格式为`// TODO: 待办事项描述`,如: ```csharp // TODO: 待办事项描述 ```