home / skills / openclaw / skills / gitee-repo-explorer
npx playbooks add skill openclaw/skills --skill gitee-repo-explorerReview the files below or copy the command above to add this skill to your agents.
---
name: repo-explorer
description: Use this skill when the user asks to explore a repository, get familiar with a project, "repo explorer", "tell me about this repo", "repo-explorer", "what does this repository do", or wants an overview of a Gitee repository. Requires Gitee MCP Server to be configured.
version: 1.0.0
requires:
mcp-servers:
- gitee
---
> **Note**: If you have `mcporter` installed locally, you should use `mcporter` to invoke the MCP tool instead of directly calling the MCP tool. The `mcporter` CLI provides a more convenient interface and better error handling.
# Repo Explorer via Gitee MCP
Quickly explore the structure and core content of a Gitee repository and generate an overview report to help get up to speed on an unfamiliar project.
## Prerequisites
- Gitee MCP Server configured (tools: `get_file_content`, `search_files_by_content`, `list_user_repos`)
- User must provide: repository owner, repository name
- Optional: specific area of interest (e.g., "I want to understand the authentication mechanism")
## Steps
### Step 1: Fetch Key Documentation
Start by reading these files using `get_file_content`:
1. `README.md` or `README_CN.md`: project introduction
2. `CONTRIBUTING.md`: contribution guide (development conventions)
3. `CHANGELOG.md`: change history (evolution of the project)
4. `package.json` / `go.mod` / `pom.xml` / `requirements.txt`: tech stack and dependencies
### Step 2: Explore Project Structure
First, use `get_file_content` with `path="/"` to get the root directory tree:
```
get_file_content(owner="[owner]", repo="[repo]", path="/")
```
This returns the top-level directory structure in a single call, providing a quick overview of the project's layout.
Then, browse key subdirectories to identify:
**Common project structure patterns**
- `src/` or `lib/`: core source code
- `cmd/` or `bin/`: CLI entry points (Go / C++ projects)
- `api/` or `routes/`: API definitions
- `tests/` or `test/`: test code
- `docs/`: detailed documentation
- `scripts/` or `.gitee/` or `.github/`: build / CI scripts
- `config/` or `configs/`: configuration files
### Step 3: Analyze Core Code
Based on the project type, read key files in depth:
**Web application**
- Entry file (main.go / index.js / app.py)
- Route definition files
- Database schema or model definitions
**Library / SDK**
- Main entry file (public API entry point)
- Core algorithm files
**CLI tool**
- Command definition files
- Configuration handling logic
Use `search_files_by_content` to locate core logic:
- Search for `main`, `init`, `Router`, etc.
- Search for specific keywords matching the user's area of interest
### Step 4: Generate Repository Overview Report
```
# Repository Overview: [owner/repo]
## About
[One-paragraph description summarizing the project based on the README]
## Tech Stack
- **Language**: [primary language]
- **Framework**: [main framework]
- **Storage**: [database / cache]
- **Deployment**: [Docker / K8s / other]
## Directory Structure
[Key directory annotations]
├── src/ # Core source code
├── api/ # API definitions
├── tests/ # Tests
└── docs/ # Documentation
## Core Modules
| Module | Path | Responsibility |
|--------|------|---------------|
| [name] | [path] | [one-sentence description] |
## Data Models (if applicable)
[Main entities and their relationships]
## Getting Started
[Setup steps extracted from README / CONTRIBUTING]
\`\`\`bash
# Install dependencies
[command]
# Start the project
[command]
\`\`\`
## Contribution Highlights
[Key conventions from CONTRIBUTING.md]
## Recent Activity
[Latest version highlights from CHANGELOG or README]
```
### Step 5: Deep Dive (optional)
If the user has a specific area of interest, use `search_files_by_content` for targeted searches:
- Authentication: search `auth`, `token`, `permission`
- Database operations: search `SELECT`, `INSERT`, `Model`
- Configuration: search `config`, `env`, `ENV`
## Notes
- Prefer smaller files when reading; avoid loading very large files all at once
- Keep the report focused and concise — do not try to cover everything
- If the project has no README, infer its purpose from the code structure and comments