Copilot 확장 및 마켓플레이스
GitHub Copilot은 다음과 같이 설계되었습니다. 확장 가능. 통해 부조종사 확장, AI 비서의 역량 확장이 가능하다 타사 통합, 맞춤형 도구 및 전문 에이전트를 사용합니다. 확장 Copilot을 데이터베이스, 클라우드 서비스, 테스트 플랫폼, 도구에 연결할 수 있습니다. 모니터링 등을 통해 전체 워크플로를 위한 중앙 집중식 허브로 전환 개발의.
이 기사에서는 확장 생태계, 사용 가능한 유형, 이를 워크플로에 통합하는 방법과 사용자 정의 확장을 구축하는 방법 팀의 특정 요구 사항에 맞게.
전체 시리즈 개요
| # | Articolo | 집중하다 |
|---|---|---|
| 1 | 기초와 사고방식 | 설정과 사고방식 |
| 2 | 개념 및 요구사항 | 아이디어에서 MVP까지 |
| 3 | 백엔드/프런트엔드 아키텍처 | API 및 데이터베이스 |
| 4 | 코드의 구조 | 조직 및 명칭 |
| 5 | 신속한 엔지니어링 | MCP 프롬프트 및 에이전트 |
| 6 | 테스트와 품질' | 단위, 통합, E2E |
| 7 | 선적 서류 비치 | 읽어보기, API 문서, ADR |
| 8 | 배포 및 DevOps | 도커, CI/CD |
| 9 | 진화 | 확장성 및 유지 관리 |
| 10 | 코딩 에이전트 | GitHub 자율 에이전트 |
| 11 | 코드 검토 | 자동 검토 |
| 12 | 부조종사 편집 | 다중 파일 편집 |
| 13 | GitHub 스파크 | 코드가 필요 없는 마이크로 앱 |
| 14 | 부조종사 공간 | 공유 컨텍스트 |
| 15 | AI 모델 | 다중 모델 및 선택 |
| 16 | 맞춤화 | 지침 및 설정 |
| 17 | 기업 및 비즈니스 | 계획, 분석, 정책 |
| 18 | 현재 위치 → 확장 프로그램 및 마켓플레이스 | 확장 및 통합 |
| 19 | 안전과 책임 있는 사용 | 보안 및 규정 준수 |
Copilot Extension 개요
Copilot Extensions는 GitHub Copilot의 기능을 확장하는 애플리케이션입니다. 그들은에 사용할 수 있습니다 GitHub 마켓플레이스 그리고 설치가 가능해요 개인과 조직 차원 모두에서. 확장 기능이 직접 통합됩니다. Copilot Chat을 사용하면 개발자가 외부 도구와 상호 작용할 수 있습니다. IDE나 브라우저를 떠나지 않고도 말이죠.
확장 아키텍처
Copilot 확장은 다음과 같이 구축됩니다. GitHub 앱, 이는 다음을 보장합니다. 플랫폼 간 호환성과 강력한 인증 및 권한 부여 모델. 사용자가 Copilot Chat을 통해 확장 프로그램을 호출하면 요청이 라우팅됩니다. GitHub 인프라를 통해 요청을 처리하는 확장 엔드포인트로 그리고 응답을 반환합니다.
Copilot Extension의 흐름
| 단계 | 배우 | 행동 | 세부 사항 |
|---|---|---|---|
| 1 | 사용자 | 채팅에서 확장 프로그램 호출 | @extension-name come posso...? |
| 2 | GitHub | 요청 인증 | 사용자 및 앱 권한 확인 |
| 3 | GitHub | 엔드포인트로 전달 | 확장 서버에 대한 HTTP POST |
| 4 | 확대 | 요청 처리 | 외부 API 호출, 데이터 분석 |
| 5 | 확대 | 응답 생성 | 텍스트, 코드, 링크, 작업 |
| 6 | GitHub | 응답을 반환합니다. | Copilot 채팅으로 포맷됨 |
확장 유형
GitHub는 각각 특성이 있는 두 가지 주요 확장 유형을 구분합니다. 구현 복잡성이 다릅니다.
전체 확장(에이전트)
- 서버측 로직을 갖춘 완벽한 애플리케이션
- 외부 API를 호출할 수 있습니다.
- 상태와 세션을 관리합니다.
- 복잡한 다단계 흐름을 지원합니다.
- 자체 호스팅 인프라가 필요합니다.
- 유연성과 성능 향상
- 개발 기간: 주/월
스킬셋(경량)
- 경량의 작업별 확장
- 구성을 통해 정의됨, 작은 코드
- 하나의 역량에 집중하라'
- 빠른 구축 및 배포
- 복잡한 인프라가 필요하지 않습니다.
- 간단한 자동화에 이상적
- 개발 시간: 시간/일
스킬셋: 가벼운 확장
스킬셋은 맞춤형 기능으로 Copilot을 확장하는 가장 쉬운 방법입니다. 복잡한 논리가 필요하지 않은 특정하고 반복적인 작업에 이상적입니다. 기술 세트 그것은 본질적으로 도구 Copilot이 사용할 수 있는 특정 요청에 응답합니다.
스킬셋의 구조
{
"name": "db-query-helper",
"description": "Helps developers write and optimize SQL queries for PostgreSQL",
"version": "1.0.0",
"skills": [
{
"name": "explain-query",
"description": "Analyze and explain a SQL query step by step",
"parameters": {
"query": {
"type": "string",
"description": "The SQL query to analyze"
},
"database": {
"type": "string",
"description": "Target database type",
"enum": ["postgresql", "mysql", "sqlite"],
"default": "postgresql"
}
}
},
{
"name": "optimize-query",
"description": "Suggest optimizations for a SQL query including index recommendations",
"parameters": {
"query": {
"type": "string",
"description": "The SQL query to optimize"
},
"table_info": {
"type": "string",
"description": "Table schemas and current indexes"
},
"expected_rows": {
"type": "number",
"description": "Expected number of rows in result"
}
}
},
{
"name": "generate-migration",
"description": "Generate a database migration script from a description",
"parameters": {
"description": {
"type": "string",
"description": "Description of schema changes"
},
"format": {
"type": "string",
"description": "Migration format",
"enum": ["flyway", "liquibase", "prisma", "raw-sql"],
"default": "flyway"
}
}
}
]
}
스킬셋 사용 사례
개발팀의 공통 기술
| 스킬셋 | 기능 | 트리거 | 출력 |
|---|---|---|---|
| 코드 포맷터 | 회사 표준에 따라 코드 형식을 지정하세요. | @formatter format this code | 형식화된 코드 + 차이점 |
| 정규식 작성기 | 자연 설명에서 정규식 생성 | @regex validate Italian fiscal code | 정규식 패턴 + 테스트 사례 |
| API 모의 생성기 | OpenAPI 스키마에서 모의 데이터 생성 | @mock generate 10 users | 현실적인 데이터가 포함된 JSON |
| 변경 로그 작성자 | 커밋 기록에서 변경 로그 생성 | @changelog since v2.1.0 | 마크다운 변경 로그 형식 |
| 종속성 검사기 | 오래되고 취약한 종속성을 확인하세요. | @deps check this project | 버전 및 CVE가 포함된 보고서 |
| i18n 도우미 | 누락된 키에 대한 번역 생성 | @i18n translate to Italian | 번역이 포함된 JSON/YAML 파일 |
GitHub 앱 통합
전체 Copilot Extensions는 GitHub 앱으로 구축되었습니다. 이는 다음을 의미합니다. GitHub Apps의 전체 보안, 인증 및 권한 부여 모델을 상속합니다. 안전하고 제어 가능한 통합을 보장합니다.
인증 및 승인
확장 보안 모델
| 수준 | 기구 | 설명 |
|---|---|---|
| 앱 수준 | JWT(JSON 웹 토큰) | GitHub에서 앱 자체 식별 |
| 설치 수준 | 설치 액세스 토큰 | 조직에 설치하기 위한 특정 토큰 |
| 사용자 수준 | OAuth 사용자 액세스 토큰 | 특정 사용자를 대신한 작업 |
| 권한 | 세분화된 권한 | 필요한 리소스(repo, 이슈, PR)에만 액세스 |
| 웹훅 | HMAC-SHA256 서명 | 수신된 이벤트의 신뢰성 확인 |
필요한 권한
각 확장 프로그램은 필요한 권한을 선언합니다. 사용자 또는 조직 관리자 설치하기 전에 명시적으로 승인해야 합니다. 최소 권한의 원칙 허가 선택을 안내해야 합니다.
{
"name": "Copilot DB Assistant",
"description": "Database query helper for Copilot Chat",
"url": "https://db-assistant.example.com",
"hook_attributes": {
"url": "https://db-assistant.example.com/webhooks"
},
"redirect_url": "https://db-assistant.example.com/auth/callback",
"public": true,
"default_events": [
"issues",
"pull_request"
],
"default_permissions": {
"contents": "read",
"issues": "write",
"pull_requests": "read",
"metadata": "read"
},
"copilot_agent": {
"url": "https://db-assistant.example.com/copilot/agent",
"description": "Helps with database queries and migrations"
}
}
확장 컨텍스트에서 MCP 통합
Il 모델 컨텍스트 프로토콜(MCP) 에 대한 보완적인 대안이다. 외부 도구를 Copilot에 연결하는 Copilot 확장입니다. 확장하는 동안 GitHub Apps 모델을 따르며 MCP는 연결을 위한 표준화된 프로토콜을 제공합니다. 도구 및 데이터 소스.
GitHub MCP 레지스트리
GitHub MCP 레지스트리는 MCP 서버를 위한 선별된 검색 서비스입니다. 그것은 다음과 같이 작동합니다 검증된 MCP 서버를 빠르게 찾아 설치할 수 있는 카탈로그, 안전하지 않은 통합의 위험을 줄입니다.
비교: 확장과 MCP 서버
| 나는 기다린다 | 부조종사 확장 | MCP 서버 |
|---|---|---|
| 플랫폼 | GitHub 마켓플레이스 | MCP 레지스트리 + 로컬 구성 |
| 입증 | GitHub OAuth/앱 토큰 | 다양함(API 키, OAuth, 없음) |
| 호스팅 | 외부서버(클라우드) | 로컬(stdio) 또는 원격(HTTP/SSE) |
| 설정의 복잡성 | 미디어(GitHub 앱) | 낮음(구성 파일) |
| 크로스 플랫폼 | 모든 Copilot 환경 | 주로 IDE(VS Code) |
| 통치 | GitHub 마켓플레이스 리뷰 | 사용자/조직의 책임 |
| 사용 사례 | SaaS 통합, 복잡한 워크플로우 | 로컬 도구, 데이터베이스, 파일 시스템 |
| 분포 | 게시(마켓플레이스) | 비공개 또는 공개(레지스트리) |
도구 세트: 그룹 MCP 도구
I 도구 세트 관련 MCP 도구를 그룹화하는 메커니즘입니다. 단일 네임스페이스. 이는 MCP 서버가 많을 때 관리를 단순화합니다. 동시에 활성화되어 도구 그룹을 활성화/비활성화할 수 있습니다. 단일 작업으로.
{
"servers": {
"development-tools": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@dev-tools/mcp-server"],
"toolsets": {
"database": {
"description": "Database management tools",
"tools": ["query", "migrate", "seed", "backup"]
},
"testing": {
"description": "Testing utilities",
"tools": ["generate-test", "run-test", "coverage-report"]
},
"documentation": {
"description": "Documentation generation",
"tools": ["generate-docs", "update-readme", "create-adr"]
}
}
},
"cloud-services": {
"type": "remote",
"url": "https://cloud-mcp.example.com/sse",
"toolsets": {
"aws": {
"description": "AWS service management",
"tools": ["s3-upload", "lambda-deploy", "cloudwatch-logs"]
},
"monitoring": {
"description": "Monitoring and alerting",
"tools": ["check-health", "get-metrics", "create-alert"]
}
}
}
}
}
제3자 에이전트
Copilot 생태계의 가장 중요한 발전 중 하나는 제3자 대리인 플랫폼에서 직접. 이들 에이전트 대체 AI 모델의 기능을 Copilot 경험에 도입하세요.
사용 가능한 에이전트
Copilot의 제3자 에이전트
| 대리인 | 공급자 | 전문화 | 유효성' | 모델 |
|---|---|---|---|---|
| 클로드 | 인류학 | 심층 코드 분석, 리팩토링, 문서화 | 프로+/엔터프라이즈 | 클로드 소네트 4 |
| 사본 | 오픈AI | 코드 생성, 고급 완성 | 프로+/엔터프라이즈 | 코덱스/o3-미니 |
| 쌍둥이자리 | 다중 모드 이해, 긴 맥락 | 프로+/엔터프라이즈 | 제미니 2.5 프로 |
각 에이전트를 사용하는 경우
| 대본 | 추천 에이전트 | 동기 부여 |
|---|---|---|
| 레거시 코드베이스를 리팩터링 | 클로드 | 복잡한 코드를 분석하고 점진적인 구조 조정을 제안하는 데 탁월합니다. |
| 빠른 상용구 생성 | 기본 부조종사(GPT-4) | 빠른 완료 및 스캐폴딩에 최적화됨 |
| UI 스크린샷 분석 | 쌍둥이자리 | 인터페이스 이미지 분석을 위한 다중 모드 이해 |
| 복잡한 알고리즘 디버깅 | 코덱스/o3-미니 | 논리적 추론 및 알고리즘 문제 해결에 강함 |
| 자세한 기술 문서 | 클로드 | 긴 맥락을 갖춘 고품질 기술 텍스트를 생성합니다. |
| 프레임워크 간 마이그레이션 | 클로드 또는 네이티브 부조종사 | 다양한 프레임워크의 패턴에 대한 깊은 이해 |
가용성에 대한 참고 사항
제3자 대리인이 현재 공개 미리보기 그리고 사용 가능 바닥에만 해당 프로+ e 기업. 가용성 시간이 지남에 따라 새로운 제공업체가 등장함에 따라 특정 모델이 변경될 수 있습니다. 플랫폼에 통합되었습니다.
타사 에이전트를 사용하면 월 예산에서 프리미엄 요청이 소모됩니다. 고급 모델에 대한 요청은 요청보다 더 많은 프리미엄 요청을 소비할 수 있습니다. 기본 Copilot 모델.
나만의 Copilot 확장 구축
Marketplace에서 사용 가능한 확장 기능이 특정 요구 사항을 충족하지 못하는 경우 팀에서는 자신만의 Copilot Extension을 구축할 수 있습니다. 이 프로세스에는 Copilot 요청을 처리하는 서버 엔드포인트가 있는 GitHub 앱.
전제 조건
확장을 구축하는 데 필요한 것
- GitHub 계정: GitHub 앱 구축에 대한 액세스 권한
- 웹서버: 확장 엔드포인트(Node.js, Python, Go 등)를 호스팅하려면
- HTTPS 도메인: 엔드포인트는 HTTPS를 통해 액세스할 수 있어야 합니다.
- GitHub 앱 API에 대한 지식: 인증 및 웹훅을 관리하려면
- Copilot 확장 SDK: 개발을 단순화하는 공식 SDK
확장 아키텍처
# Architettura di una Copilot Extension
GitHub Infrastructure
+-------------------+
| |
User in IDE ---> | Copilot Chat |
"@my-ext help" | (message router) |
| |
+--------+----------+
|
HTTP POST (authenticated)
|
+--------v----------+
| |
| Your Extension |
| Server |
| |
| +---------------+ |
| | Request | |
| | Handler | |
| +-------+-------+ |
| | |
| +-------v-------+ |
| | Business | |
| | Logic | |
| +-------+-------+ |
| | |
| +-------v-------+ |
| | External | |
| | Services | |
| | (DB, API, | |
| | tools) | |
| +---------------+ |
| |
+--------+----------+
|
HTTP Response (streaming)
|
+--------v----------+
| |
| Copilot Chat |
| (rendered to |
| user) |
| |
+-------------------+
Node.js를 사용한 기본 구현
import express from 'express';
import { Octokit } from '@octokit/rest';
import { createNodeMiddleware } from '@octokit/webhooks';
import { verifyRequestByKeyId } from '@copilot-extensions/preview-sdk';
const app = express();
app.use(express.json());
// Endpoint principale per Copilot Chat
app.post('/copilot/agent', async (req, res) => {
try {
// 1. Verifica autenticita' della richiesta
const signature = req.headers['github-public-key-signature'] as string;
const keyId = req.headers['github-public-key-identifier'] as string;
const body = JSON.stringify(req.body);
const isValid = await verifyRequestByKeyId(body, signature, keyId, {
token: process.env.GITHUB_TOKEN!
});
if (!isValid) {
return res.status(401).json({ error: 'Invalid signature' });
}
// 2. Estrai il messaggio dell'utente
const messages = req.body.messages;
const lastMessage = messages[messages.length - 1];
const userQuery = lastMessage.content;
// 3. Elabora la richiesta in base al contenuto
const response = await processQuery(userQuery, req.body);
// 4. Restituisci risposta in streaming (SSE format)
res.setHeader('Content-Type', 'text/event-stream');
res.setHeader('Cache-Control', 'no-cache');
res.setHeader('Connection', 'keep-alive');
// Invia la risposta come stream di eventi
res.write(`data: ${JSON.stringify({
choices: [{
index: 0,
delta: {
role: 'assistant',
content: response
}
}]
})}\n\n`);
res.write('data: [DONE]\n\n');
res.end();
} catch (error) {
console.error('Extension error:', error);
res.status(500).json({ error: 'Internal server error' });
}
});
async function processQuery(
query: string,
context: any
): Promise<string> {
// Logica personalizzata dell'extension
// Qui puoi chiamare database, API esterne, ecc.
if (query.includes('status')) {
return await getSystemStatus();
}
if (query.includes('deploy')) {
return await getDeploymentInfo();
}
if (query.includes('metrics')) {
return await getProjectMetrics();
}
return `Ciao! Sono l'extension personalizzata del team.
Posso aiutarti con:
- **status**: Stato attuale dei servizi
- **deploy**: Informazioni sull'ultimo deployment
- **metrics**: Metriche del progetto
Come posso aiutarti?`;
}
async function getSystemStatus(): Promise<string> {
// Esempio: chiama un health check endpoint
const services = ['api', 'database', 'cache', 'queue'];
const results = await Promise.all(
services.map(async (service) => {
try {
const response = await fetch(
`https://monitoring.example.com/health/${service}`
);
const data = await response.json();
return `- **${service}**: ${data.status} (uptime: ${data.uptime})`;
} catch {
return `- **${service}**: UNREACHABLE`;
}
})
);
return `## System Status\n\n${results.join('\n')}`;
}
async function getDeploymentInfo(): Promise<string> {
// Esempio: informazioni dall'ultimo deploy
return `## Last Deployment
- **Version**: v2.4.1
- **Environment**: production
- **Time**: 2 hours ago
- **Status**: Successful
- **Deployed by**: CI/CD Pipeline
- **Commit**: abc1234`;
}
async function getProjectMetrics(): Promise<string> {
// Esempio: metriche dal sistema di monitoring
return `## Project Metrics (Last 24h)
- **Requests**: 125,430
- **Error Rate**: 0.12%
- **p95 Latency**: 245ms
- **Active Users**: 3,421
- **CPU Usage**: 45%
- **Memory**: 62%`;
}
const PORT = process.env.PORT || 3000;
app.listen(PORT, () => {
console.log(`Extension server running on port ${PORT}`);
});
확장 테스트
import request from 'supertest';
import { app } from '../server';
describe('Copilot Extension', () => {
describe('POST /copilot/agent', () => {
it('should respond to status query', async () => {
const response = await request(app)
.post('/copilot/agent')
.set('Content-Type', 'application/json')
.send({
messages: [
{
role: 'user',
content: 'What is the current status?'
}
]
});
expect(response.status).toBe(200);
expect(response.headers['content-type']).toContain('text/event-stream');
});
it('should handle unknown queries gracefully', async () => {
const response = await request(app)
.post('/copilot/agent')
.send({
messages: [
{
role: 'user',
content: 'random question'
}
]
});
expect(response.status).toBe(200);
// Should return help message
});
it('should reject unauthenticated requests', async () => {
// Test without proper GitHub signature headers
const response = await request(app)
.post('/copilot/agent')
.set('github-public-key-signature', 'invalid')
.set('github-public-key-identifier', 'invalid')
.send({
messages: [{ role: 'user', content: 'test' }]
});
expect(response.status).toBe(401);
});
});
});
마켓플레이스에 게시
출판 과정
| 단계 | 행동 | 요구사항 | 예상 시간 |
|---|---|---|---|
| 1 | GitHub 앱 만들기 | GitHub 계정, HTTPS 도메인 | 1시간 |
| 2 | 엔드포인트 구현 | Copilot Extensions SDK가 포함된 서버 | 1~4주 |
| 3 | 로컬 테스트 | 비공개 앱 설치 | 1~2일 |
| 4 | 선적 서류 비치 | README, 예제, API 문서 | 2~3일 |
| 5 | 검토를 위해 제출 | 전체 마켓플레이스 목록 | 1일 |
| 6 | GitHub 검토 | 가이드라인 준수 | 3~10일 |
| 7 | 출판 | 승인 획득 | 즉각적인 |
인기 확장 카테고리
GitHub Marketplace는 카테고리별로 구성된 확장 기능을 제공합니다. 카테고리는 다음과 같습니다. 가장 인기 있고 사용 가능한 확장 유형입니다.
주요 마켓플레이스 카테고리
| 범주 | Esempi | 부가가치 |
|---|---|---|
| 코드 분석 | 린터, 보안 스캐너, 복잡성 분석기 | 코드의 품질 및 보안 문제 식별 |
| 데이터베이스 | 쿼리 빌더, 스키마 시각화 도우미, 마이그레이션 도우미 | Gestione database integrata nella chat |
| Cloud & DevOps | AWS helper, Kubernetes manager, CI/CD status | Operazioni cloud senza uscire dall'IDE |
| Testing | Test generator, coverage reporter, E2E runner | Accelera la creazione e l'esecuzione dei test |
| Documentation | API doc generator, diagram creator, README builder | Documentazione automatica e aggiornata |
| Project Management | Jira integration, sprint planner, estimation helper | Connessione tra codice e gestione progetto |
| Monitoring | Sentry, DataDog, PagerDuty integrations | Visibilità' su errori e performance nella chat |
| Design | Figma integration, color palette helper, icon finder | Bridge tra design e implementazione |
Best Practices per Extension Development
Da Fare
- Risposte veloci (timeout < 30s)
- Gestione errori graceful
- Documentazione chiara e completa
- Permessi minimi necessari
- Logging strutturato per debug
- Rate limiting interno
- Test automatizzati completi
- Versionamento semantico
- Risposta in formato Markdown
- Suggerire next steps all'utente
Da Evitare
- Risposte troppo lunghe (> 4000 char)
- Operazioni distruttive senza conferma
- Esporre dati sensibili nelle risposte
- Richiedere permessi non necessari
- Ignorare la verifica della firma
- Risposte senza contesto o struttura
- Dipendenze non mantenute
- Mancanza di error messages chiari
- Chiamate API sincrone bloccanti
- Mancanza di health check endpoint
Pattern di Risposta Consigliato
Le risposte delle extensions dovrebbero seguire un pattern consistente per fornire un'esperienza utente uniforme. Ecco il formato raccomandato:
- Titolo: Heading chiaro che descrive il risultato
- Risultato: Dati richiesti formattati in modo leggibile
- Contesto: 해석에 유용한 추가 정보
- 다음 단계: 가능한 다음 조치에 대한 제안
확장 보안
확장을 사용하거나 구축할 때는 안전이 최우선입니다. 각 확장 프로그램은 민감한 데이터에 대한 잠재적인 액세스 권한을 갖고 있으며 이를 처리해야 합니다. 타사 통합에도 동일한 관심을 기울입니다.
확장에 대한 보안 체크리스트
| 영역 | 확인하다 | 무시할 경우 위험 |
|---|---|---|
| 입증 | 요청의 GitHub 서명을 항상 확인하세요. | 허위 요청 처리됨 |
| 권한 부여 | 조치를 취하기 전에 사용자의 권한을 확인하세요 | 권한 승격 |
| 입력 검증 | 모든 입력 매개변수의 유효성을 검사합니다. | 주입 공격 |
| 기미 | 응답에 토큰/키를 노출하지 마세요. | 자격 증명 유출 |
| 비율 제한 | 사용자별 및 IP별 제한 구현 | 서비스 거부 |
| 벌채 반출 | 민감한 데이터 없이 기록(PII 없음, 토큰 없음) | 로그를 통한 데이터 유출 |
| HTTPS | 암호화된 통신만 | 중간자 공격 |
| 종속성 | 종속성에 대한 정기 감사 | 공급망 공격 |
결론
Copilot Extensions 에코시스템은 GitHub Copilot을 보조자에서 탈바꿈시킵니다. 코딩은 중앙 집중식 허브 전체 작업 흐름에 대해 개발의. 데이터베이스, 클라우드 서비스, 모니터링 도구 연결 여부 또는 타사 AI 에이전트, 확장 프로그램을 사용하면 모든 컨텍스트를 가져올 수 있습니다. Copilot과의 대화에서 직접 필요합니다.
팀의 경우 확장은 다음과 같은 기회를 나타냅니다. 자동화하다 반복적인 작업흐름 e 정보를 중앙 집중화. 에 대한 개별 개발자는 Copilot 경험을 사용자 정의하는 방법입니다. 귀하의 도메인에 특정한 도구를 사용하십시오.
시리즈의 다음이자 마지막 기사에서는 다음과 같은 중요한 주제를 다룰 것입니다. 안전과 책임감 있는 사용 Copilot의 보호 기능 탐색 통합 데이터 개인 정보 보호 지침 및 사용 모범 사례 소프트웨어 개발에 있어서 윤리적이고 안전한 AI.
시리즈 진행
| # | Articolo | 상태 |
|---|---|---|
| 1 | 기초와 사고방식 | ✅ |
| 2 | 개념 및 요구사항 | ✅ |
| 3 | 백엔드/프런트엔드 아키텍처 | ✅ |
| 4 | 코드의 구조 | ✅ |
| 5 | 신속한 엔지니어링 | ✅ |
| 6 | 테스트와 품질' | ✅ |
| 7 | 선적 서류 비치 | ✅ |
| 8 | 배포 및 DevOps | ✅ |
| 9 | 진화 | ✅ |
| 10 | 코딩 에이전트 | ✅ |
| 11 | 코드 검토 | ✅ |
| 12 | 부조종사 편집 | ✅ |
| 13 | GitHub 스파크 | ✅ |
| 14 | 부조종사 공간 | ✅ |
| 15 | AI 모델 | ✅ |
| 16 | 고급 사용자 정의 | ✅ |
| 17 | 기업 및 비즈니스 | ✅ |
| 18 | 확장 프로그램 및 마켓플레이스 | 📍 |
| 19 | 안전과 책임 있는 사용 | ◻ |







