# 에 대한 플러그 인 만들기 GitHub Copilot CLI

설치하기 쉬운 패키지에서 사용자 지정을 공유하는 플러그 인을 만듭니다.

## 소개

플러그 인은 .의 기능을 확장하는 패키지입니다 Copilot CLI.
[플러그 인 정보 GitHub Copilot](/ko/copilot/concepts/agents/about-plugins)을(를) 참조하세요.

> \[!NOTE]
> 터미널에 입력 `copilot plugin [SUBCOMMAND] --help` 하여 플러그 인 사용에 대한 도움말을 찾을 수 있습니다.

## 플러그 인 구조

플러그 인은 특정 구조의 디렉터리로 구성됩니다. 최소한 디렉터리의 루트에 `plugin.json` 매니페스트 파일이 포함되어야 합니다. 에이전트, 기술, 후크 및 MCP 서버 구성의 조합을 포함할 수도 있습니다.

### 플러그 인 구조 예제

```text
my-plugin/
├── plugin.json           # Required manifest
├── agents/               # Custom agents (optional)
│   └── helper.agent.md
├── skills/               # Skills (optional)
│   └── deploy/
│       └── SKILL.md
├── hooks.json            # Hook configuration (optional)
└── .mcp.json             # MCP server config (optional)
```

## 플러그 인 만들기

1. 플러그 인에 대한 디렉터리를 만듭니다.

2. `plugin.json` 디렉터리의 루트에 매니페스트 파일을 추가합니다.

**예제 `plugin.json` 파일**

```json copy
{
  "name": "my-dev-tools",
  "description": "React development utilities",
  "version": "1.2.0",
  "author": {
    "name": "Jane Doe",
    "email": "jane@example.com"
  },
  "license": "MIT",
  "keywords": ["react", "frontend"],
  "agents": "agents/",
  "skills": ["skills/", "extra-skills/"],
  "hooks": "hooks.json",
  "mcpServers": ".mcp.json"
}
```

이 파일에 포함할 수 있는 전체 필드 집합에 대한 자세한 내용은 [GitHub Copilot CLI 플러그 인 참조](/ko/copilot/reference/copilot-cli-reference/cli-plugin-reference#pluginjson)을 참조하세요.

1. 에이전트, 기술, 후크 및 MCP 서버 구성에 적합한 파일 및 디렉터리를 만들어 플러그 인에 일부 구성 요소를 추가합니다.

   다음은 그 예입니다.

   1. 하위 디렉터리에 `NAME.agent.md` 파일을 만들어 에이전트를 `agents`에 추가합니다.

      ```markdown copy
      ---
      name: my-agent
      description: Helps with specific tasks
      tools: ["bash", "edit", "view"]
      ---

      You are a specialized assistant that...
      ```

   2. 플러그인 디렉터리 내에 `skills/NAME` 하위 디렉터리를 생성하여 스킬을 추가합니다. 여기서 `NAME`는 스킬의 이름입니다. 그런 다음, 이 하위 디렉터리 내에서 기술을 정의하는 파일을 만듭니 `SKILL.md` 다.

      예를 들어 "배포" 기술을 만들려면 다음을 만듭니다 `skills/deploy/SKILL.md`.

      ```markdown copy
      ---
      name: deploy
      description: Deploy the current project to...
      ---

      Instructions for the skill...
      ```

2. 플러그 인을 개발할 때 테스트할 수 있도록 로컬로 설치합니다.

   예를 들어, `./my-plugin`가 플러그인 디렉터리의 경로인 경우 다음을 입력하십시오.

   ```shell copy
   copilot plugin install ./my-plugin
   ```

3. 설치된 플러그 인 목록을 확인하여 플러그 인이 성공적으로 로드되었는지 확인합니다.

   ```shell copy
   copilot plugin list
   ```

   또는 새 대화형 세션을 시작하고 다음을 입력할 수 있습니다.

   ```copilot copy
   /plugin list
   ```

4. 정의한 에이전트, 기술, 후크 및 MCP 서버 구성이 올바르게 로드되었는지 확인합니다.

   예를 들어 대화형 세션에서 플러그 인에 정의된 사용자 지정 에이전트가 로드되었는지 확인하려면 다음을 입력합니다.

   ```copilot copy
   /agent
   ```

   플러그 인에 정의된 기술이 로드되었는지 확인하려면 다음을 입력합니다.

   ```copilot copy
   /skills list
   ```

5. 플러그 인 구성 요소에서 제공하는 기능을 사용하여 각 구성 요소가 예상대로 작동하는지 확인합니다.

6. 필요에 따라 플러그 인 개발을 반복합니다.

   > \[!IMPORTANT]
   > 플러그 인을 설치하면 해당 구성 요소가 캐시되고 CLI가 후속 세션을 위해 캐시에서 읽습니다. 로컬 플러그 인에 대한 변경 내용을 선택하려면 다시 설치합니다.
   >
   > ```shell copy
   > copilot plugin install ./my-plugin
   > ```

7. 테스트를 완료한 후 다음을 입력하여 플러그 인의 로컬 버전을 제거할 수 있습니다.

   ```shell copy
   copilot plugin uninstall NAME
   ```

   > \[!NOTE]
   > 플러그 인을 제거하려면 플러그 인의 디렉터리에 대한 `name` 경로가 아니라 플러그 인의 `plugin.json` 매니페스트 파일 필드에 지정된 대로 플러그 인의 이름을 사용합니다.

## 플러그 인 배포

플러그 인을 배포하려면 마켓플레이스에 플러그 인을 추가할 수 있습니다.
[에 대한 플러그 인 마켓플레이스 만들기 GitHub Copilot CLI](/ko/copilot/how-tos/copilot-cli/customize-copilot/plugins-marketplace)을(를) 참조하세요.

## 추가 읽기

* [에 대한 플러그 인 찾기 및 설치 GitHub Copilot CLI](/ko/copilot/how-tos/copilot-cli/customize-copilot/plugins-finding-installing)
* [GitHub Copilot CLI 플러그 인 참조](/ko/copilot/reference/copilot-cli-reference/cli-plugin-reference)