Skip to content

bigsmartben/iis-sourcegraph

Repository files navigation

Sourcegraph Integration (iis-sourcegraph)

将本地 Sourcegraph 实例集成到 Copilot agent 工作流的完整方案(iis-sourcegraph),包含 MCP Server、Copilot Skill、Docker 部署。

项目结构

├── .github/
│   ├── agents/          # Copilot agent 定义
│   ├── prompts/         # Copilot prompt 文件
│   └── workflows/       # GitHub Actions CI/CD
│       ├── ci.yml       # Lint & 格式检查
│       └── docker-build.yml  # Docker 镜像构建 & 推送
├── .vscode/
│   ├── mcp.json         # VS Code MCP server 注册
│   └── settings.json    # 工作区设置
├── sourcegraph-mcp/     # MCP Server 源码(Python/FastMCP)
│   ├── src/             # 源代码
│   │   ├── backends/    # Sourcegraph API 客户端
│   │   ├── core/        # Prompt 管理
│   │   └── prompts/     # 提示词 YAML
│   ├── pyproject.toml   # 项目元数据 & 依赖
│   └── README.md        # MCP Server 文档
├── sourcegraph-ops/     # Docker 部署 & 运维
│   ├── Dockerfile
│   ├── docker-compose.yml
│   ├── start-mcp-server.sh
│   ├── configure-mcp-client.sh
│   └── .env.sample
├── sourcegraph-skill/   # Copilot Skill(curl 直调 API)
│   ├── SKILL.md         # 技能定义
│   └── start-mcp-server.sh  # 委托到 ops 启动脚本
└── specs/               # 技术调研文档

快速开始

前提

启动 MCP Server

# 保存 token
echo "sgp_xxxx" > sourcegraph-ops/sourcegraph.accesstoken.env

# 启动全部依赖容器(Sourcegraph + MCP,自动构建 MCP 镜像)
cd sourcegraph-ops
cp .env.sample .env
export SRC_ACCESS_TOKEN=$(tr -d '\n' < sourcegraph.accesstoken.env)
docker compose --env-file .env up -d --build
#
bash ./start-stack.sh

# 生成 MCP 客户端配置(默认写入 .vscode/mcp.json)
bash ./configure-mcp-client.sh

VS Code 集成

.vscode/mcp.json 使用 Streamable HTTP 端点 http://localhost:8002/sourcegraph/mcp, 重启 VS Code 后 Copilot 即可发现 MCP 工具:

  • search — 代码搜索
  • search_prompt_guide — 搜索提示指南
  • fetch_content — 文件内容获取

Copilot Skill

sourcegraph-skill/ 复制到 ~/.copilot/skills/sourcegraph/ 即可启用 Skill 方案(无需 MCP Server,通过 curl 直调 API)。

开发

cd sourcegraph-mcp

# 安装依赖
uv sync --dev

# Lint
uv run ruff check src/

# 格式化
uv run ruff format src/

CI/CD

  • ci.yml: 在 sourcegraph-mcp 变更时自动运行 iis-sourcegraph lint & format 检查
  • docker-build.yml: 在 push 到 master 时构建并推送 Docker 镜像到 GHCR

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors