copilot-spaces skill
✓ 인증됨GitHub Copilot Spaces에서 공유 지식 베이스, 문서, 코드 및 지침을 로드하여 대화에 프로젝트별 컨텍스트를 제공합니다.
- GitHub 스타
- 41,038
- 파일
- 1
- 마지막 커밋
- 2026년 11월 11일
- 라이선스
- MIT
- 허용된 도구
- —
copilot-spaces skill은 무엇을 하나요?
copilot-spaces은(는) agent skill입니다. GitHub Copilot Spaces에서 공유 지식 베이스, 문서, 코드 및 지침을 로드하여 대화에 프로젝트별 컨텍스트를 제공합니다.
skill의 SKILL.md에서 생성된 요약입니다.
copilot-spaces skill 정보
AI 대화의 근거를 특정 프로젝트 지식에 두어야 하는 개발자는 이 SKILL을 사용하여 GitHub Copilot Spaces에서 공유 컨텍스트를 로드할 수 있습니다. 이를 통해 에이전트는 팀의 실제 코드와 표준을 나타내는 저장소, 문서 및 사용자 정의 지침의 큐레이션된 컬렉션에 접근할 수 있습니다. Space를 로드함으로써 에이전트는 아키텍처에 관한 질문에 답하거나, 특정 코딩 컨벤션을 준수하거나, 팀이 정의한 구조화된 워크플로우를 실행할 수 있습니다.
사용자가 특정 Copilot space를 찾거나 로드하도록 요청할 때 에이전트는 이 SKILL을 로드해야 합니다. 이 SKILL은 mcp__github__list_copilot_spaces 및 mcp__github__get_copilot_space 도구를 통해 읽기 전용 액세스를 제공합니다. MCP 도구가 검색 및 읽기를 처리하는 동안, space 생성, 업데이트 또는 삭제와 같은 전체 CRUD 작업은 gh api를 통해 수행해야 합니다. 이를 통해 에이전트는 연결된 파일과 issue에서 심층적인 컨텍스트를 검색하여 매우 관련성 높은 프로젝트별 응답을 제공할 수 있습니다.
agent가 수행할 수 있는 작업
- 1사용 가능한 프로젝트 space 검색에이전트는 사용 가능한 모든 space를 나열하여 어떤 공유 지식 베이스에 접근할 수 있는지 식별할 수 있습니다.
- 2특정 프로젝트 컨텍스트 로드개발자는 AI 대화의 근거를 마련하기 위해 지정된 space에서 모든 문서와 코드 지침을 가져올 수 있습니다.
- 3구조화된 팀 워크플로우 실행에이전트는 표준화된 결과물을 생성하기 위해 space 내에 정의된 단계별 프로세스 또는 템플릿을 따를 수 있습니다.
- 4API를 통한 space 설정 관리사용자는 GitHub CLI 명령을 사용하여 space의 지침 또는 메타데이터를 프로그래밍 방식으로 업데이트할 수 있습니다.
skill의 SKILL.md를 기반으로 작성되었습니다. 모든 사용 사례는 해당 문서의 인용구와 대조 확인되었습니다.
copilot-spaces skill 설치 방법
각 명령은 skill 폴더를 클라이언트의 skills 디렉터리에 복사합니다. 클라이언트를 재시작하거나 새 세션을 시작하여 로드하세요.Claude Code에 copilot-spaces skill 설치
~/.claude/skills/copilot-spaces/SKILL.md
$ npx degit github/awesome-copilot/skills/copilot-spaces ~/.claude/skills/copilot-spacesClaude Code (project)에 copilot-spaces skill 설치
.claude/skills/copilot-spaces/SKILL.md
$ npx degit github/awesome-copilot/skills/copilot-spaces .claude/skills/copilot-spacesCodex에 copilot-spaces skill 설치
~/.agents/skills/copilot-spaces/SKILL.md
$ npx degit github/awesome-copilot/skills/copilot-spaces ~/.agents/skills/copilot-spacesGemini CLI에 copilot-spaces skill 설치
~/.gemini/skills/copilot-spaces/SKILL.md
$ npx degit github/awesome-copilot/skills/copilot-spaces ~/.gemini/skills/copilot-spacesClaude.ai에 copilot-spaces skill 설치
npx degit github/awesome-copilot/skills/copilot-spaces copilot-spaces && zip -r copilot-spaces.zip copilot-spaces # claude.ai → Customize → Skills → + → Create skill → Upload a skill → copilot-spaces.zip
자동 검사
2026년 11월 13일에 실행됨전체 보고서 →자동 검사를 통과했습니다. 보안 감사는 아닙니다. 에이전트가 실행하기 전에 스크립트를 읽어 보세요. 검사 방식
- 소스 저장소 연결 및 접근 가능github/awesome-copilot/skills/copilot-spaces is public and reachablegithub.com/github/awesome-copilot/tree/HEAD/skills/copilot-s ↗통과
- 오픈 소스 라이선스 (OSI)MITspdx.org/licenses/MIT.html ↗통과
- 최근 1년 내 커밋 또는 릴리스Last commit 2026-11-11github.com/github/awesome-copilot/commits ↗통과
- 스크립트에 다운로드 후 실행이나 자격 증명 탈취가 없음No scripts in the skill folder통과
- SKILL.md에 숨겨진 지침 없음No override phrases, safeguard switches, credential requests or hidden charactersgithub.com/github/awesome-copilot/blob/HEAD/skills/copilot-s ↗통과
- 사전 허용 도구가 제한됨No pre-approved tools; the agent asks before using onegithub.com/github/awesome-copilot/blob/HEAD/skills/copilot-s ↗통과
SKILL.md
GitHub에서 보기Copilot Spaces
Use Copilot Spaces to bring curated, project-specific context into conversations. A Space is a shared collection of repositories, files, documentation, and instructions that grounds Copilot responses in your team's actual code and knowledge.
Available Tools
MCP Tools (Read-only)
| Tool | Purpose |
|---|---|
mcp__github__list_copilot_spaces |
List all spaces accessible to the current user |
mcp__github__get_copilot_space |
Load a space's full context by owner and name |
REST API via gh api (Full CRUD)
The Spaces REST API supports creating, updating, deleting spaces, and managing collaborators. The MCP server only exposes read operations, so use gh api for writes.
User Spaces:
| Method | Endpoint | Purpose |
|---|---|---|
POST |
/users/{username}/copilot-spaces |
Create a space |
GET |
/users/{username}/copilot-spaces |
List spaces |
GET |
/users/{username}/copilot-spaces/{number} |
Get a space |
PUT |
/users/{username}/copilot-spaces/{number} |
Update a space |
DELETE |
/users/{username}/copilot-spaces/{number} |
Delete a space |
Organization Spaces: Same pattern under /orgs/{org}/copilot-spaces/...
Collaborators: Add, list, update, and remove collaborators at .../collaborators
Scope requirements: PAT needs read:user for reads, user for writes. Add with gh auth refresh -h github.com -s user.
Note: This API is functional but not yet in the public REST API docs. It may require the copilot_spaces_api feature flag.
When to Use Spaces
- User mentions "Copilot space" or asks to "load a space"
- User wants answers grounded in specific project docs, code, or standards
- User asks "what spaces are available?" or "find a space for X"
- User needs onboarding context, architecture docs, or team-specific guidance
- User wants to follow a structured workflow defined in a Space (templates, checklists, multi-step processes)
Workflow
1. Discover Spaces
When a user asks what spaces are available or you need to find the right space:
Call mcp__github__list_copilot_spaces
This returns all spaces the user can access, each with a name and owner_login. Present relevant matches to the user.
To filter for a specific user's spaces, match owner_login against the username (e.g., "show me my spaces").
2. Load a Space
When a user names a specific space or you've identified the right one:
Call mcp__github__get_copilot_space with:
owner: "org-or-user" (the owner_login from the list)
name: "Space Name" (exact space name, case-sensitive)
This returns the space's full content: attached documentation, code context, custom instructions, and any other curated materials. Use this context to inform your responses.
3. Follow the Breadcrumbs
Space content often references external resources: GitHub issues, dashboards, repos, discussions, or other tools. Proactively fetch these using other MCP tools to gather complete context. For example:
- A space references an initiative tracking issue. Use
issue_readto get the latest comments. - A space links to a project board. Use project tools to check current status.
- A space mentions a repo's masterplan. Use
get_file_contentsto read it.
4. Answer or Execute
Once loaded, use the space content based on what it contains:
If the space contains reference material (docs, code, standards):
- Answer questions about the project's architecture, patterns, or standards
- Generate code that follows the team's conventions
- Debug issues using project-specific knowledge
If the space contains workflow instructions (templates, step-by-step processes):
- Follow the workflow as defined, step by step
- Gather data from the sources the workflow specifies
- Produce output in the format the workflow defines
- Show progress after each step so the user can steer
5. Manage Spaces (via gh api)
When a user wants to create, update, or delete a space, use gh api. First, find the space number from the list endpoint.
Update a space's instructions:
gh api users/{username}/copilot-spaces/{number} \
-X PUT \
-f general_instructions="New instructions here"
Update name, description, or instructions together:
gh api users/{username}/copilot-spaces/{number} \
-X PUT \
-f name="Updated Name" \
-f description="Updated description" \
-f general_instructions="Updated instructions"
Create a new space:
gh api users/{username}/copilot-spaces \
-X POST \
-f name="My New Space" \
-f general_instructions="Help me with..." \
-f visibility="private"
Attach resources (replaces entire resource list):
{
"resources_attributes": [
{ "resource_type": "free_text", "metadata": { "name": "Notes", "text": "Content here" } },
{ "resource_type": "github_issue", "metadata": { "repository_id": 12345, "number": 42 } },
{ "resource_type": "github_file", "metadata": { "repository_id": 12345, "file_path": "docs/guide.md" } }
]
}
Delete a space:
gh api users/{username}/copilot-spaces/{number} -X DELETE
Updatable fields: name, description, general_instructions, icon_type, icon_color, visibility ("private"/"public"), base_role ("no_access"/"reader"), resources_attributes
Examples
Example 1: User Asks for a Space
User: "Load the Accessibility copilot space"
Action:
- Call
mcp__github__get_copilot_spacewith owner"github", name"Accessibility" - Use the returned context to answer questions about accessibility standards, MAS grades, compliance processes, etc.
Example 2: User Wants to Find Spaces
User: "What copilot spaces are available for our team?"
Action:
- Call
mcp__github__list_copilot_spaces - Filter/present spaces relevant to the user's org or interests
- Offer to load any space they're interested in
Example 3: Context-Grounded Question
User: "Using the security space, what's our policy on secret scanning?"
Action:
- Call
mcp__github__get_copilot_spacewith the appropriate owner and name - Find the relevant policy in the space content
- Answer based on the actual internal documentation
Example 4: Space as a Workflow Engine
User: "Write my weekly update using the PM Weekly Updates space"
Action:
- Call
mcp__github__get_copilot_spaceto load the space. It contains a template format and step-by-step instructions. - Follow the space's workflow: pull data from attached initiative issues, gather metrics, draft each section.
- Fetch external resources referenced by the space (tracking issues, dashboards) using other MCP tools.
- Show the draft after each section so the user can review and fill in gaps.
- Produce the final output in the format the space defines.
Example 5: Update Space Instructions Programmatically
User: "Update my PM Weekly Updates space to include a new writing guideline"
Action:
- Call
mcp__github__list_copilot_spacesand find the space number (e.g., 19). - Call
mcp__github__get_copilot_spaceto read current instructions. - Modify the instructions text as requested.
- Push the update:
gh api users/labudis/copilot-spaces/19 -X PUT -f general_instructions="updated instructions..."
Tips
- Space names are case-sensitive. Use the exact name from
list_copilot_spaces. - Spaces can be owned by users or organizations. Always provide both
ownerandname. - Space content can be large (20KB+). If returned as a temp file, use grep or view_range to find relevant sections rather than reading everything at once.
- If a space isn't found, suggest listing available spaces to find the right name.
- Spaces auto-update as underlying repos change, so the context is always current.
- Some spaces contain custom instructions that should guide your behavior (coding standards, preferred patterns, workflows). Treat these as directives, not suggestions.
- Write operations (
gh apifor create/update/delete) require theuserPAT scope. If you get a 404 on write operations, rungh auth refresh -h github.com -s user. - Resource updates replace the entire array. To add a resource, include all existing resources plus the new one. To remove one, include
{ "id": 123, "_destroy": true }in the array.
이 스킬의 파일
1copilot-spaces skill 질문
Claude Code에 copilot-spaces skill을 어떻게 설치하나요?
npx degit github/awesome-copilot/skills/copilot-spaces ~/.claude/skills/copilot-spaces를 실행합니다. Claude Code는 ~/.claude/skills(모든 프로젝트) 또는 .claude/skills(한 프로젝트)에서 skills를 로드하며, 설명이 작업과 일치할 때 skill을 사용합니다.
copilot-spaces skill을 사용할 수 있는 클라이언트는 무엇인가요?
Agent Skills 형식을 읽는 모든 클라이언트(Claude Code, Codex, Gemini CLI, claude.ai(ZIP으로 업로드))가 사용할 수 있습니다. skill 내 스크립트는 클라이언트가 코드 실행을 허용하는 경우에만 실행됩니다.
MCP 도구를 사용하여 Copilot space를 생성하거나 삭제할 수 있나요?
아니요, MCP server는 읽기 전용 작업만 제공합니다. space를 생성, 업데이트 또는 삭제하려면 REST API를 통해 GitHub CLI를 사용해야 합니다.
Copilot Space에는 어떤 정보가 포함되어 있나요?
Space에는 프로젝트 지식을 바탕으로 응답을 생성할 수 있도록 저장소, 파일, 문서 및 사용자 정의 지침이 공유 컬렉션 형태로 포함되어 있습니다.
Spaces API에 쓰기 권한을 부여하려면 어떤 권한이 필요한가요?
쓰기 작업을 수행하려면 'user' scope가 포함된 Personal Access Token (PAT)이 필요합니다.