GitLab代码搜索Skill search-code

这个技能用于在GitLab平台中搜索代码,支持语义搜索和关键字搜索,帮助开发者快速定位代码片段、文件路径和项目信息。关键词包括GitLab、代码搜索、语义搜索、关键字搜索、DevOps、开发工具。

DevOps 0 次安装 0 次浏览 更新于 3/25/2026

名称: search-code 描述: 在您的GitLab实例中搜索代码

搜索GitLab代码

名称

gitlab:search-code - 在您的GitLab实例中搜索代码

概要

/search-code [参数]

描述

在您的GitLab实例中搜索代码

实现

使用语义或关键字搜索在您的GitLab实例中搜索代码、文件或实现。

用法

/search-code [查询]

此命令帮助您在所有可访问的项目中找到相关代码。

此命令的功能

  1. 接受自然语言查询或搜索词
  2. 首先尝试语义代码搜索(仅限GitLab.com
  3. 如果语义搜索不可用,则回退到关键字搜索
  4. 返回相关代码片段,包括:
    • 文件路径和行号
    • 匹配周围的上下文
    • 项目名称和链接
    • 相关性分数(用于语义搜索)

前提条件

  • 必须安装并配置GitLab MCP服务器
  • 必须完成OAuth认证
  • 对于语义搜索:需要启用GitLab Duo的GitLab.com账户

示例交互

语义搜索(GitLab.com

用户: /search-code JWT令牌验证是如何实现的?

Claude: 正在搜索JWT令牌验证的实现...

找到4个相关代码片段:

### 1. auth-service/src/middleware/validateToken.ts (相关性: 95%)
```typescript
export function validateJWT(token: string): UserPayload {
  try {
    const decoded = jwt.verify(token, process.env.JWT_SECRET);
    return decoded as UserPayload;
  } catch (error) {
    throw new UnauthorizedError('无效令牌');
  }
}

2. api-gateway/lib/security/jwt.ts (相关性: 87%)

async function verifyToken(req: Request): Promise<boolean> {
  const token = req.headers.authorization?.split(' ')[1];
  if (!token) return false;

  return await jwt.verify(token, publicKey, { algorithms: ['RS256'] });
}

3. user-service/utils/auth.ts (相关性: 82%)

const validateAuthToken = (token: string) => {
  const payload = jwt.decode(token, { complete: true });
  return payload?.exp && payload.exp > Date.now() / 1000;
};

您想查看更多结果或探索任何这些实现吗?


### 关键字搜索

用户: /search-code 认证中间件

Claude: 正在搜索“认证中间件”…

在4个项目中找到7个结果:

项目: api-service

  • src/middleware/auth.ts:15 - export const authenticationMiddleware = async
  • src/middleware/auth.ts:42 - // 用于受保护路由的认证中间件

项目: user-api

  • lib/middleware/authenticate.ts:8 - class AuthenticationMiddleware {
  • lib/middleware/authenticate.ts:23 - // 主要认证检查

项目: microservices-core

  • shared/middleware/auth.ts:5 - const authMiddleware = (req, res, next) => {

您想查看任何这些文件的完整上下文吗?


## 参数

- `查询`(必需):自然语言描述或搜索关键词
  - 对于语义搜索:“我们如何处理用户权限?”
  - 对于关键字搜索:“redis缓存实现”

## 搜索类型

### 语义搜索(仅限GitLab.com)
最适合:
- 理解某物如何工作
- 通过概念找到实现
- 发现相关代码
- 架构问题

示例:
- “数据库迁移是如何处理的?”
- “我们在哪里验证API请求?”
- “显示错误处理模式”

### 关键字搜索(所有实例)
最适合:
- 查找特定函数或类名
- 按名称定位文件
- 搜索精确文本匹配
- 查找配置值

示例:
- “validateUserInput函数”
- “config.yml数据库”
- “TODO: 修复内存泄漏”

## 提示

- 使用自然语言进行语义搜索
- 查询要具体
- 结合其他命令进行深入分析
- 在关键字搜索中使用引号进行精确短语匹配
- 如果结果不相关,优化查询
- 检查多个项目以保持一致性
- 搜索所有项目时考虑隐私

## 高级用法

### 带范围的搜索

用户: /search-code 查找所有测试认证的测试文件,范围:测试

Claude: 正在搜索测试文件中的认证测试…


### 在特定项目中搜索

用户: /search-code 在项目auth-service中搜索Redis缓存实现

Claude: 将搜索限制到auth-service项目…


### 按文件类型搜索

用户: /search-code 在YAML文件中搜索数据库连接配置

Claude: 正在搜索YAML文件中的数据库配置…


## 相关命令

- `/view-issue`: 在找到代码后查看相关问题
- `/create-issue`: 为搜索中发现的错误创建问题
- `/review-mr`: 审查搜索中找到的实现