Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions tools/pikapython-c/.github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Copilot Instructions for pikapython-c

## 项目架构概览
- 本项目为面向 PikaPython 的 AI 驱动 Python-C 编译加速器与自动化验证平台。
- 主要组件:
- `Client.py`:核心入口,负责与 MCP 服务端交互,管理会话、工具加载、LLM 初始化和代理图构建。
- `MCP_server.py`:MCP 服务端,基于 FastMCP,注册文件读写等工具,供客户端调用。
- `MCP_config.py`:配置文件,包含模型、API、超参数等关键配置。
- `Prompt.py`:存放自动化测试/验证相关的 prompt 模板。

## 关键开发流程
- 启动流程:
1. `Client.py` 初始化 MCP 客户端(通过 `StdioServerParameters` 启动 `MCP_server.py`)。
2. 加载工具(如文件读写),绑定到 LLM。
3. 构建代理图(StateGraph),实现 agent-tool 交互。
- 工具注册与调用:
- 服务端通过 `@mcp.tool()` 装饰器注册工具(如 `read_file`, `write_file`)。
- 客户端通过 LLM 工具绑定和 agent graph 调用工具。
- 配置管理:
- 所有模型、API、超参数均在 `MCP_config.py` 配置,需统一引用。

## 项目约定与模式
- 所有文件路径需使用 Linux 风格(如 `./` 前缀)。
- 工具函数需通过 MCP 工具注册,便于 agent 自动发现和调用。
- 分支命名采用 `Feat_xxx` 约定,贡献流程见 README。
- 测试/验证逻辑建议集中在 `Prompt.py`,便于 prompt 复用。

## 依赖与集成
- 依赖 `langchain_openai`, `langchain_mcp_adapters`, `fastmcp` 等库。
- LLM 相关参数(如模型名、API key)需从 `MCP_config.py` 读取。
- MCP 工具与 LLM 通过 `bind_tools` 集成。

## 示例:注册与调用工具
```python
# 服务端注册工具
@mcp.tool()
def read_file(file_path: str) -> str:
...

# 客户端调用工具
self.mcp_tools = await load_mcp_tools(self.session)
self.llm_with_tools = llm.bind_tools(self.mcp_tools)
```

## 重要文件参考
- `Client.py`:agent 入口与主流程
- `MCP_server.py`:工具注册与服务端逻辑
- `MCP_config.py`:统一配置
- `Prompt.py`:自动化验证模板

---
如有不清楚或遗漏的部分,请反馈以便进一步完善说明。
8 changes: 8 additions & 0 deletions tools/pikapython-c/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
**/__pycache__
file_create/
logs/
pikapython-linux/build/
pikapython-linux/pikapython/pikascript-api/
**/*.bak*
**/*.backup*
pikapython-linux/pikapython/pikascript-api*/
Loading
Loading