GitHub Copilot CLI 및 Claude Code용 Power Pages 플러그인으로 시작하기

GitHub Copilot CLIClaude Code용 Power Pages 플러그인은 최신 단일 페이지 애플리케이션 (SPA) 사이트를 Power Pages에서 생성, 배포 및 관리하기 위한 AI 지원 워크플로를 제공합니다. 프로젝트를 수동으로 스캐폴딩하고 상용구 API 코드를 작성하고 권한을 구성하는 대신 자연어로 원하는 내용을 설명하고 플러그 인이 구현을 처리합니다.

플러그 인은 새 사이트 스캐폴딩에서 배포, Dataverse 데이터 모델 설정 및 인증 구성에 이르기까지 대화형 기술을 통해 전체 사이트 개발 수명 주기를 지원합니다.

Important

  • GitHub Copilot CLI 또는 Claude Code와 같은 생성 AI 코딩 에이전트는 이 플러그 인의 기술과 워크플로를 사용하여 Power Pages 특정 작업을 완료합니다.
  • AI 코딩 에이전트에서 생성한 코드 및 구성은 정확하지 않을 수 있습니다. 생성된 모든 콘텐츠를 승인하거나 배포하기 전에 검토, 테스트 및 유효성을 검사합니다. 승인하기 전에 항상 에이전트 제안을 검토합니다.

Prerequisites

시작하기 전에 필요한 소프트웨어 및 권한이 있는지 확인합니다.

소프트웨어 요구 사항

구성 요소 최소 버전 추가 정보
Node.js 18.0 이상 다운로드 Node.js
Power Platform CLI(PAC CLI) 2.6.3 이상(서버 논리에 필요) PAC CLI 설치
Azure CLI 최근 Azure CLI를 설치합니다
GitHub Copilot CLI 또는 Claude Code 최근 GitHub Copilot CLI 또는 Claude Code
Visual Studio Code 및 Power Platform Tools 확장(선택 사항) 최근 VS Code 다운로드Power Platform Tools 설치

또한 다음이 필요합니다.

  • Power Pages 사용하도록 설정된 Power Platform 환경입니다.
  • 대상 환경에 연결된 인증된 PAC CLI 세션입니다. 아직 연결하지 않은 경우 pac auth create을(를) 실행합니다.
  • 동일한 테넌트에 로그인된 Azure CLI 세션입니다. az login --allow-no-subscriptions 실행하여 인증합니다.

인증 확인:

명령을 사용하여 인증되었는지 확인합니다 pac auth list .

pac auth list           # Should show authenticated profile

인증되지 않은 경우 다음 명령을 실행합니다.

pac auth create --environment <Instance url>        # Authenticate to Power Platform

Tip

인스턴스 URL을 얻으려면 Power Pages 홈으로 이동하여 오른쪽 위 모서리에서 설정 아이콘을 선택한 다음 세션 세부 정보를 선택합니다.

플러그 인 설치

마켓플레이스에서 Power Pages 플러그 인을 설치합니다. GitHub Copilot CLI를 사용하는 경우 해당하는 설치 단계는 Copilot CLI 확장 설명서를 참조하세요. 다음 명령은 Claude Code 구문을 사용합니다.

설치 관리자를 실행하여 자동 업데이트가 사용하도록 설정된 모든 플러그 인을 설정합니다.

Windows(PowerShell):

iwr https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js -OutFile install.js; node install.js; del install.js

macOS/Linux/Windows(cmd):

curl -fsSL https://raw.githubusercontent.com/microsoft/power-platform-skills/main/scripts/install.js | node

설치 관리자는 자동으로 다음을 수행합니다.

  • 아직 pac CLI가 설치되지 않았으면 설치합니다.
  • Claude Code 및 GitHub Copilot CLI와 같은 사용 가능한 도구를 검색합니다.
  • 플러그 인 마켓플레이스를 등록하고 나열된 모든 플러그 인을 설치합니다.
  • 플러그 인이 최신 상태로 유지되도록 자동 업데이트가 가능합니다.

설치 후 Claude Code 또는 GitHub Copilot CLI를 다시 시작하여 에이전트 세션에서 플러그인의 기능을 슬래시 명령으로 사용할 수 있습니다.

마켓플레이스에서 설치

  1. 터미널에서 Claude Code를 엽니다.

  2. Microsoft Marketplace를 추가합니다.

    /plugin marketplace add microsoft/power-platform-skills
    
  3. Power Pages 플러그 인을 설치합니다.

    /plugin install power-pages@power-platform-skills
    

플러그인을 설치한 후, Claude Code 또는 GitHub Copilot CLI를 다시 시작하여 에이전트 세션에서 슬래시 명령으로 플러그인의 기능에 접근하십시오.

Tip

마켓플레이스 및 기술에 대한 업데이트를 자동으로 받으려면 자동 업데이트를 켭니다. /plugin 명령을 사용하고, Marketplace로 이동하고, 마켓플레이스를 선택하고, 자동 업데이트를 켭니다.

기술 개요

플러그 인은 Power Pages 사이트의 전체 수명 주기를 다루는 기술을 제공합니다. 각 기능을 대화형으로 슬래시 명령어로 실행하거나 하고 싶은 일을 설명하여 호출합니다.

기술 명령어 용도
사이트 만들기 /create-site 사이트를 스캐폴드하고, 디자인 방향을 적용하고, 페이지 및 구성 요소를 빌드합니다.
사이트 배포 /deploy-site PAC CLI를 사용하여 프로젝트를 빌드하고 Power Pages 업로드합니다.
사이트 활성화 /activate-site 웹 사이트 레코드를 프로비전하고 공용 URL을 할당합니다.
데이터 모델 설정 /setup-datamodel Dataverse 테이블, 열 및 관계를 만듭니다.
샘플 데이터 추가(선택 사항) /add-sample-data 실제 테스트 레코드로 Dataverse 테이블을 채웁니다.
Web API 통합 /integrate-webapi 형식화된 API 클라이언트 코드, 서비스 및 테이블 권한을 생성합니다.
AI 요약 추가 /add-ai-webapi 생성 AI 요약 API(검색 요약 및 데이터 요약)를 페이지에 통합합니다. 위조 방지 토큰 처리, 프레임워크별 래퍼, 유선 호출 사이트 및 일치하는 Summarization 사이트 설정을 사용하여 형식화된 요약 서비스를 생성합니다.
인증 설정 /setup-auth 로그인, 로그아웃 및 역할 기반 액세스 제어를 추가합니다. 다중 공급자 구성을 포함하여 Microsoft Entra ID, Microsoft Entra 외부 ID, OpenID Connect, SAML 2.0, WS-Federation, Microsoft 계정, Facebook, Google 및 로컬 사용자 이름 및 암호 인증을 지원합니다.
웹 역할 만들기 /create-webroles 사용자 액세스 관리를 위한 웹 역할 YAML 파일 생성
서버 논리 추가 /add-server-logic 유효성 검사, 외부 API 호출, 비밀 관리 및 데이터 작업을 위한 보안 서버 쪽 JavaScript 엔드포인트를 생성합니다.
클라우드 흐름 추가 /add-cloud-flow 승인 워크플로, 알림 및 예약된 자동화를 위해 기존 Power Automate 클라우드 흐름을 사이트에 통합합니다.
백 엔드 통합 /integrate-backend 프로토타입을 분석하고, 각 기능에 대한 올바른 접근 방식(Web API, 서버 논리 또는 클라우드 흐름)을 결정하고, 전체 빌드 시퀀스를 오케스트레이션합니다.
SEO 추가 /add-seo robots.txt, sitemap.xml및 메타 태그를 생성합니다.
보안 검토 실행 /security-review 집중된 보안 기술을 오케스트레이션하고 모든 결과를 단일 HTML 보고서로 통합합니다. 코드, 종속성, 배포된 사이트 검사, 브라우저 헤더, 웹 애플리케이션 방화벽, 테이블 권한 및 인증 구성을 다룹니다.
소스 코드 검사 /scan-code 로컬 원본 파일에서 정적 분석 및 종속성 검사를 실행합니다. 코드 패턴, 취약한 패키지, 하드 코드된 비밀 및 라이선스 문제에 대한 결과를 표시합니다.
배포된 사이트 스캔 /scan-site 라이브 사이트에 대해 서버 쪽 보안 검사를 시작하고, 최신 보고서를 가져오고, 결과를 심각도별로 그룹화합니다.
브라우저 보안 헤더 관리 /manage-headers 사이트가 브라우저에 보내는 HTTP 보안 헤더(콘텐츠 보안 정책, 프레임 및 클릭재킹 보호, 원본 간 공유, 쿠키 동작 및 관련 사이트 설정)를 검사하고 구성합니다.
웹 애플리케이션 방화벽 관리 /manage-firewall 프로덕션 사이트에서 WAF(웹 애플리케이션 방화벽)를 검사하고 구성합니다. IP 블록, 국가 블록, 경로 블록 및 속도 제한을 보호, 추가 또는 제거합니다.
테이블 권한 감사 /audit-permissions 기존 테이블 권한을 사이트 코드 및 Dataverse 메타데이터를 기준으로 감사하고, 제안된 수정 사항이 포함된 심각도별 HTML 보고서를 생성합니다.
배포 계획 /plan-alm 프로젝트 상태를 검색하고, 승격 전략을 수집하고, 시각적 계획을 렌더링하고, 올바른 순서로 다른 ALM(애플리케이션 수명 주기 관리) 기술을 오케스트레이션합니다.
솔루션 작성 /setup-solution 게시자 및 솔루션을 만들고, Power Pages 구성 요소를 추가하고, 사이트 설정을 분류하고, 환경 변수 및 Azure Key Vault 비밀을 제안합니다.
파이프라인 호스트 설정 /ensure-pipelines-host Power Platform Pipelines에 대한 호스트 환경을 프로비전하거나 검색합니다.
파이프라인 설정 /setup-pipeline Dataverse에 파이프라인 정의를 등록하고 승격 단계를 대상 환경에 바인딩합니다.
파이프라인을 통해 배포 /deploy-pipeline 단계별 환경 변수 재정의를 사용하여 대상 단계에 대한 파이프라인 배포를 트리거합니다.
강제 연결 환경 /force-link-environment 호스트 충돌이 배포를 차단할 때 대상 환경을 새 Power Platform Pipelines 호스트에 다시 할당합니다.
솔루션 내보내기 /export-solution 내보내기 전에 완전성 검사를 사용하여 솔루션을 관리 또는 관리되지 않는 zip으로 내보냅니다.
솔루션 가져오기 /import-solution 단계적 또는 직접 대상 환경에서 솔루션 zip을 가져옵니다.
테스트 사이트 /test-site 페이지 크롤링, 역할 기반 액세스 검사 및 Web API 확인과 같은 브라우저 기반 테스트를 사용하여 배포된 사이트를 확인합니다.
배포 진단하기 /diagnose-deployment 알려진 오류 카탈로그와 배포 오류를 일치시키고 수정을 제안합니다.

일반적인 워크플로

일반적인 엔드 투 엔드 워크플로는 다음 시퀀스를 따릅니다.

  1. /create-site : 스캐폴드, 디자인 및 빌드 페이지
  2. /deploy-site: Power Pages 환경에 업로드
  3. /activate-site : 공용 URL 설정
  4. /setup-datamodel : Dataverse 테이블 만들기
  5. /add-sample-data : 테스트 레코드로 테이블 채우기
  6. /integration-webapi : API 클라이언트 코드 생성 및 권한 구성
  7. /create-webroles: 액세스 역할 정의
  8. /setup-auth : 로그인, 로그아웃 및 역할 기반 UI 추가
  9. /add-server-logic : 보안 서버 쪽 엔드포인트 추가
  10. /add-cloud-flow: 기존 Power Automate 플로우 통합
  11. /add-seo : 검색 엔진 최적화
  12. /deploy-site : 최종 변경 내용을 라이브 상태로 푸시
  13. /security-review : 프로덕션으로 가기 전에 엔드 투 엔드 보안 검토를 실행합니다.
  14. /plan-alm : 사이트를 테스트 및 프로덕션 환경으로 승격

Tip

  • 이 정확한 순서를 따를 필요는 없습니다. 각 기술은 자체 필수 구성 요소를 확인하고 누락된 항목이 있는지 알려줍니다. 예를 들어, 사이트에서 인증이 먼저 필요한 경우 /setup-auth을(를) /integrate-webapi 전에 실행할 수 있습니다.
  • 각 기능에 사용할 방법을 잘 모르는 경우 4~10단계 대신 개별적으로 실행 /integrate-backend 합니다. 프로토타입을 분석하고, 각 기능에 Web API, 서버 논리 또는 클라우드 흐름이 필요한지 여부를 결정하고, 기술을 올바른 순서로 오케스트레이션합니다.
  • AI로 생성된 검색 및 레코드 요약을 추가하려면 /integrate-webapi 다음에 /add-ai-webapi를 실행하세요. /integrate-webapi가 구성한 테이블 권한 및 사이트 설정을 재사용하므로 Web API 통합이 완료된 후에 실행하세요.

Power Pages 사이트 빌드

이 안내서에서는 스캐폴딩 과정부터 배포까지 플러그 인을 사용하여 Power Pages 사이트를 빌드하는 전체 수명 주기를 다루는 과정을 설명합니다. 각 단계에서는 사용자가 말하는 내용과 플러그 인이 응답에서 수행하는 작업을 설명합니다.

1단계: 사이트 만들기

자연어로 원하는 사이트, 대상, 필요한 페이지 및 색 구성표, 레이아웃 스타일 또는 글꼴과 같은 디자인 기본 설정을 설명합니다. /create-site를 실행하거나 설명하면 플러그 인이 의도를 인식합니다.

프레임워크를 지정하지 않으면 플러그 인에서 다음 중 하나를 선택하도록 요청합니다(React, Vue, Angular 또는 Astro).

  1. 템플릿에서 프로젝트를 스캐폴드하고 사이트 이름, 색 및 디자인 토큰을 적용합니다.
  2. 종속성을 설치하고, 개발 서버를 시작하고, 라이브 브라우저 미리 보기를 엽니다.
  3. 관련 이미지를 사용하여 요청한 각 페이지, 구성 요소 및 경로를 빌드합니다.
  4. 기본 제공 롤백 기록이 있도록 중요한 중요 시점에 git 커밋을 만듭니다.

2단계: 사이트 배포

/deploy-site 실행하여 사이트를 Power Pages 업로드합니다. 플러그 인:

  1. PAC CLI가 설치되어 있고 인증 세션이 활성 상태인지 확인합니다.
  2. 계속하기 전에 대상 환경을 확인합니다.
  3. 프로덕션 빌드를 실행하고 컴파일된 출력을 업로드합니다.
  4. 배포 아티팩트 디렉터리가 아직 없는 경우 만듭니다.

메모

환경에서 특정 파일 첨부 파일을 차단하는 경우 플러그 인은 문제를 감지하고 이를 해결하기 위한 지침을 제공합니다.

3단계: 사이트 활성화

사이트를 공개적으로 액세스할 수 있도록 실행 /activate-site 합니다. 플러그 인:

  1. 사이트 이름에 따라 하위 도메인을 제안하고 사용자 지정할 수 있습니다.
  2. Power Platform API를 통해 웹 사이트 레코드를 프로비전합니다.
  3. 사이트가 라이브 상태가 될 때까지 폴링하고 공용 URL을 반환합니다.

이 시점에서 공용 URL에 작업 사이트가 있습니다. 나머지 단계에서는 데이터, 인증 및 SEO를 추가합니다. 사이트에 적용되지 않는 단계를 건너뜁니다.

4단계: 데이터 모델 설정

실행 /setup-datamodel 하여 사이트에 필요한 Dataverse 테이블을 만듭니다. ER 다이어그램 또는 특정 스키마가 이미 있는 경우 에이전트가 코드를 분석하는 대신 직접 제공합니다.

플러그 인은 다음과 같은 데이터 모델 설계자 에이전트를 생성합니다.

  1. 사이트 코드를 분석하여 페이지와 구성 요소에 필요한 데이터를 결정합니다.
  2. 중복을 방지하기 위해 기존 테이블에 대한 Dataverse 환경을 쿼리합니다.
  3. ER 다이어그램으로 시각화된 테이블, 열, 데이터 형식 및 관계가 있는 데이터 모델을 제안합니다.

제안을 검토하고 승인합니다. 플러그 인은 확인할 때까지 아무것도 만들지 않습니다. 승인 후 플러그 인은 API 호출을 통해 테이블과 열을 만들고 5단계와 6단계에서 사용하는 매니페스트 파일을 저장합니다.

5단계: 샘플 데이터 추가(선택 사항)

실행 /add-sample-data 하여 테스트 레코드로 테이블을 채웁니다. 이 단계에서는 4단계의 데이터 모델이 필요합니다.

플러그 인은 다음 작업을 수행합니다.

  1. 매니페스트 파일을 읽어 테이블, 열, 관계를 이해합니다.
  2. 현실적인 이메일, 그럴듯한 날짜 및 형식이 지정된 통화 금액과 같은 각 열 형식에 대해 상황에 맞는 값을 생성합니다.
  3. 종속성 순서(자식 테이블 앞에 부모 테이블)로 레코드를 삽입하고 대량 삽입 중에 인증 토큰을 자동으로 새로 고칩니다.

6단계: Dataverse Web API와 통합

실행 /integrate-webapi 하여 모의 데이터를 라이브 Dataverse 쿼리로 대체합니다. 이 단계에서는 4단계의 데이터 모델이 필요합니다.

플러그 인은 다음 작업을 수행합니다.

  1. 모의 데이터, 자리 표시자 페치 호출 또는 하드 코드된 배열을 사용하는 구성 요소에 대한 코드베이스를 검색합니다. 이러한 구성 요소는 Dataverse 테이블에 매핑됩니다.
  2. 각 테이블에 대해 Web API 통합 에이전트를 생성하여 다음을 생성합니다.
    • 위조 방지 토큰 관리 및 재시도 논리가 있는 공유 API 클라이언트입니다.
    • TypeScript 엔터티 형식 및 도메인 매퍼.
    • CRUD 서비스 계층입니다.
    • 프레임워크에 특정된 패턴으로는 React 후크, Vue 컴포저블, 또는 Angular 서비스 등이 있습니다.
  3. 테이블 사용 권한 및 사이트 설정을 제안하는 Permissions Architect 에이전트를 생성합니다.

사용 권한 제안을 검토하고 승인합니다. 플러그 인은 확인할 때까지 구성 파일을 만들지 않습니다.

AI 생성 요약 추가(선택 사항)

Web API 통합 위에 생성형 AI 요약을 추가하려면 /add-ai-webapi을 실행하세요. 이 기술은 두 개의 미리 보기 요약 API를 레코드 세부 정보 및 목록 페이지에 연결합니다.

  • 검색 요약 API: 인용을 사용하여 검색 결과의 AI로 압축된 요약을 반환합니다.
  • 데이터 요약 API: Dataverse 테이블에 대한 레코드별 요약 또는 목록 수준 인사이트를 반환합니다.

이 단계는 4단계의 데이터 모델과 6단계의 Web API 통합을 기반으로 합니다. 플러그 인은 다음 작업을 수행합니다.

  1. 코드에서 요약 통합 지점을 검색하고 대상 페이지, 테이블 및 사용할 API를 확인합니다.
  2. 누락된 Web API 사전 요구 사항(테이블 사용 권한, 열 목록, 웹 역할)을 /integrate-webapi/create-webroles에 위임하므로, 사용 권한에 대한 단일 기준이 마련됩니다.
  3. 타입이 지정된 요약 서비스(aiSummaryService.ts), 위조 방지 토큰 처리, 프레임워크별 래퍼(React hooks, Vue 컴포저블 또는 Angular 서비스), 그리고 대상 페이지에 연결된 호출 지점을 생성하는 AI Web API Integration 에이전트를 생성합니다.
  4. 프롬프트 및 콘텐츠 제한에 대한 사이트 설정을 만드는 AI Web API 설정 설계 자 에이전트를 생성 Summarization 합니다.

제안을 검토하고 승인합니다. 플러그 인은 확인할 때까지 코드를 생성하거나 설정을 만들지 않습니다.

메모

요약 API는 미리 보기 상태이며 켜져 있는 관리 및 사이트 수준 컨트롤에 따라 달라집니다. 배포 후에 요약이 표시되지 않으면 관련 사이트 설정 및 관리자 컨트롤을 통해 기능이 사용하도록 설정되어 있는지 확인합니다. 자세한 내용은 데이타 요약 API 개요 및 생성 AI를 사용한 Power Pages 검색 참조하세요.

7단계: 웹 역할 만들기

실행 /create-webroles 하여 사용자 액세스 역할을 정의합니다. 플러그 인:

  1. 중복을 방지하기 위해 기존 웹 역할에 대한 환경을 쿼리합니다.
  2. 고유 식별자를 사용하여 역할 정의를 생성합니다.
  3. 각 사이트에는 최대 하나의 익명 역할과 하나의 인증된 역할이 적용됩니다.

8단계: 인증 설정

실행 /setup-auth 하여 사이트에 로그인, 로그아웃 및 역할 기반 액세스 제어를 추가합니다. 플러그 인은 다음 ID 공급자를 지원하며 한 공급자 또는 여러 공급자를 동시에 구성할 수 있습니다.

Provider 적합한 대상
Microsoft Entra 외부 ID(고객 관련 사이트에 권장) 셀프 서비스 등록을 사용하는 공용 사이트 및 고객 포털.
Microsoft Entra ID (마이크로소프트 엔트라 ID) 내부 직원 포털 또는 B2B(Business-to-Business) 파트너 사이트 Power Pages 사이트의 부모 테넌트가 자동으로 구성되므로 테넌트 정보를 입력할 필요가 없습니다.
Microsoft, 페이스 북, 구글 소비자 대상 그룹을 위한 소셜 로그인입니다.
로컬 인증 사용자 이름 및 암호 로그인 권장되지 않으며 명시적으로 요청하는 경우에만 구성됩니다.

프로토콜 및 구성 고려 사항을 포함하여 지원되는 공급자에 대한 자세한 내용은 Power Pages 참조하세요.

플러그 인:

  1. 사이트(목적, 페이지, 대상 그룹)를 분석하고 합리적인 기본값을 제안합니다. 예를 들어 플러그 인은 고객 관련 사이트에 대해 열린 등록이 있는 Microsoft Entra 외부 ID 제안하거나 내부 포털에 대한 초대 전용 등록이 있는 Microsoft Entra ID 제안합니다. 권장 사항을 수락하거나 고유한 공급자를 선택합니다.
  2. 각 공급자에 대해 테넌트 만들기, 앱 등록, 사용자 흐름 만들기, 클라이언트 ID 캡처 및 리디렉션 URI와 같은 ID 공급자 관리 센터의 모든 필수 구성 요소 단계를 안내합니다. 플러그 인은 대화에 다시 붙여넣은 각 값의 유효성을 검사하고, 앱 등록에 붙여넣은 값이 사이트 설정에 기록된 값과 일치할 수 있도록 사이트의 정확한 리디렉션 URI를 계산합니다.
  3. 사용자 프로필 데이터가 ID 공급자에서 Dataverse 연락처 레코드(클레임 매핑)로 이동하는 방법, 모든 로그인 또는 첫 번째 로그인에서만 동기화할지 여부, 외부 로그인을 전자 메일로 기존 연락처에 자동으로 연결할지 여부를 묻습니다.
  4. 인증 서비스, 형식 선언, 역할 기반 권한 부여 유틸리티(hasRole, RequireAuth, ), RequireRoleSPA 세션이 자동으로 만료되지 않도록 하는 세션 유지 후크 및 사이트 레이아웃과 통합된 로그인/로그아웃 UI 구성 요소를 생성합니다. 플러그 인은 React 후크, Vue 구성 요소, Angular 서비스 또는 Astro 구성 요소와 같은 프레임워크의 패턴을 전체적으로 사용합니다.
  5. 둘 이상의 공급자가 구성된 경우 선택한 레이아웃(가로 행, 세로 스택, 기본 스포트라이트 또는 탭 형식)으로 렌더링되는 /login 페이지를 생성합니다.
  6. 각 공급자, 등록 모드, 클레임 매핑, 선택적 기능에 대해 일치하는 사이트 설정을 .powerpages-site/site-settings/ 아래에 기록합니다.

또한 플러그 인은 다음 선택적 기능을 켤 때 구성합니다.

  • 사용 약관: /terms SPA 페이지 사용자는 로그인을 완료하기 전에 동의해야 하며 일치하는 사이트 설정 및 콘텐츠 조각도 포함해야 합니다.
  • 사용자 프로필 페이지: 로그인한 사용자가 Power Pages Web API를 통해 연락처 정보를 편집하는 /user-profile SPA 페이지입니다.
  • 페더레이션 로그아웃: 사용자가 사이트에서 로그아웃할 때 ID 공급자에서도 로그아웃되도록 하며, 공유 디바이스 환경이나 규제가 적용되는 시나리오에 적합합니다.

Tip

기존 사이트에 두 번째 ID 공급자를 추가하려면 다시 실행 /setup-auth 합니다. 플러그 인은 이미 구성된 항목을 검색하고 기존 공급자를 덮어쓰지 않고 새 공급자를 추가하도록 제안합니다. 이 방법은 Microsoft Entra 외부 ID 시작하고 나중에 소셜 로그인을 위해 Google을 추가하는 등의 증분 시나리오에 유용합니다.

메모

클라이언트 쪽 권한 부여(RequireAuth, RequireRole, hasRole)는 사용자 환경 전용입니다. 사용자가 보는 것을 제어합니다. /integrate-webapi에 의해 구성된 서버 측 테이블 권한은 실질적인 보안을 적용합니다.

9단계: 서버 논리 추가

실행 /add-server-logic 하여 사이트에 보안 서버 쪽 엔드포인트를 추가합니다. 외부 API 호출, 서버 쪽 유효성 검사, 비밀 관리 또는 엔터티 간 데이터 작업과 같이 브라우저에서 실행할 수 없는 논리가 사이트에 필요한 경우 서버 논리 를 사용합니다.

Important

서버 논리 지원에는 PAC CLI 버전 2.6.3 이상이 필요합니다. 빠른 설치 스크립트를 사용하여 최신 버전으로 업데이트합니다.

일반 언어 및 플러그 인에서 필요한 사항을 설명합니다.

  1. 사용 사례를 분석하고 복잡성을 분류하는 서버 논리 설계자 에이전트를 생성합니다.
  2. 검토를 위해 엔드포인트 디자인, 보안 구성 및 필요한 테이블 권한을 제안합니다.
  3. 승인한 후 서버 쪽 JavaScript 엔드포인트 /_api/serverlogics/<name>를 생성합니다.
  4. 구성 요소에서 엔드포인트를 호출하는 형식화된 클라이언트 쪽 서비스를 만듭니다.
  5. 구성 요소를 업데이트하여 새 서비스를 호출합니다.
  6. 엔드포인트에 대한 웹 역할 할당 및 테이블 권한을 구성합니다.

제안을 검토하고 승인합니다. 확인할 때까지 코드가 생성되지 않습니다.

일반적인 사용 사례:

  • 외부 서비스에 연결합니다. 자격 증명을 노출하지 않고 REST API, Azure Functions 또는 타사 서비스를 호출합니다. (자습서: 외부 서비스와 상호 작용)
  • 보안 데이터 작업을 수행합니다. 일관된 서버 쪽 유효성 검사를 사용하여 Dataverse 레코드를 쿼리, 업데이트 또는 삭제합니다. (자습서: Dataverse 테이블과 상호 작용)
  • 사용자 지정 논리를 실행합니다. 결과를 클라이언트에 반환하기 전에 테이블 간에 데이터를 집계하거나, 비즈니스 규칙을 적용하거나, 파생 값을 계산합니다.
  • 서버 측에서 비밀을 관리합니다. 서버에 자격 증명 및 API 키를 저장하고 클라이언트 코드에는 저장하지 않습니다. (Tutorial: Microsoft Graph 및 SharePoint와 상호 작용하기)

메모

사용 사례별로 한 번 실행 /add-server-logic 합니다. 예를 들어 사이트에 인벤토리 유효성 검사 엔드포인트와 전역 검색 엔드포인트가 모두 필요한 경우 기술을 두 번 실행합니다.

10단계: 클라우드 흐름 통합

/add-cloud-flow 실행하여 기존 Power Automate 클라우드 흐름을 사이트에 통합합니다. 이 기능은 이미 Power Automate에서 만든 흐름을 Power Pages 사이트에 연결합니다. 새 클라우드 흐름은 만들지 않습니다.

플러그 인:

  1. 기존 클라우드 흐름을 사이트에 등록합니다.
  2. 페이지에서 흐름을 트리거하는 클라이언트 쪽 코드를 생성합니다.
  3. 비동기 워크플로 상태 및 콜백 패턴을 처리합니다.
  4. 페이지와 흐름 간에 데이터 교환을 연결합니다.

/add-cloud-flow 사용하여 서버 쪽 엔드포인트보다 Power Automate 더 잘 처리하는 승인 워크플로, 이메일 알림, 예약된 작업 및 이벤트 기반 자동화를 사용합니다.

대안: /integration-backend를 사용하여 전체 서비스 계층 계획

Web API, 서버 논리 또는 클라우드 흐름이 필요한 기능에 확신이 없다면, 4번부터 10번까지의 단계를 수동으로 실행하는 대신 /integrate-backend을 실행하세요. 이 기술은 다음과 같은 오케스트레이터 역할을 합니다.

  1. 프로토타입을 분석하여 서비스 계층이 필요한 모든 기능을 식별합니다.
  2. 각 기능을 표준 CRUD용 Web API, 서버 쪽 유효성 검사용 서버 논리 및 외부 API 또는 승인 워크플로 및 자동화를 위한 클라우드 흐름으로 분류합니다.
  3. 모든 기술, 종속성 및 구성을 사용하여 시퀀스된 실행 계획을 제안합니다.
  4. 승인한 후에는 올바른 순서로 기술을 구성합니다.

계획은 영구적이고, 다시 시작하고, 편집할 수 있습니다. 단계별로 진행 중 언제든지 중단하여 생성된 코드를 검토하거나 사이트를 테스트하고, /integrate-backend를 다시 실행하여 이전 단계부터 작업을 재개할 수 있습니다.

11단계: SEO 추가

실행 /add-seo 하여 검색 엔진에 대한 사이트를 최적화합니다. 플러그 인:

  1. 프레임워크의 라우터 구성에서 경로를 검색합니다.
  2. 검색된 모든 경로에 대한 검색 엔진 지시문 및 사이트맵을 생성합니다.
  3. 뷰포트, 문자 집합, 설명, Open Graph, Twitter Card 및 favicon 참조와 같은 메타 태그를 추가합니다.

12단계: 최종 사이트 배포

선택적 단계를 수행하는 경우 다시 실행 /deploy-site 하여 변경 내용을 라이브로 푸시합니다. 플러그 인은 프로덕션 빌드를 실행하고 모든 배포 아티팩트(테이블 권한, 사이트 설정, 웹 역할, 서버 논리 파일)와 함께 사이트를 Power Pages 환경에 업로드합니다.

13단계: 보안 검토 실행

프로덕션으로 가기 전에 실행 /security-review 하여 사이트의 엔드 투 엔드 보안 검토를 수행합니다. 이 기술은 집중된 보안 기술을 오케스트레이션하고 모든 결과를 단일 HTML 보고서로 통합합니다 docs/security-review-<timestamp>.html.

플러그 인은 목표에 대한 하나의 일반 언어 질문을 하고 일치하는 집중 기술 세트를 선택합니다.

목표 검사 내용
코드 및 구성 소스 코드, 종속성, 테이블 권한 및 인증 구성. 로컬 파일에서만 작동합니다. 배포가 필요하지 않습니다.
릴리스 준비 (권장) 게시하기 전에 전체 검토 코드 및 종속성, 배포된 사이트 검색, 브라우저 보안 헤더, 웹 애플리케이션 방화벽, 테이블 권한 및 인증 등 모든 포커스가 있는 기술을 실행합니다.
배포된 사이트 실시간 배포 사이트 스캔만. 게시된 사이트의 지속적인 모니터링에 유용합니다.

확인 후 플러그 인은 일치하는 포커스가 있는 기술을 병렬로 실행하고 결과를 단일 보고서에 씁니다.

  • /scan-code: 로컬 소스 파일에서 정적 분석(opengrep) 및 종속성 검사(trivy)를 실행합니다. 코드 패턴, 취약한 패키지, 하드 코드된 비밀 및 라이선스 문제를 표시합니다. 두 도구 중 하나가 설치되지 않은 경우 기술은 대체(fallback)로 수동 코드 검토를 제공합니다.
  • /scan-site: 라이브 사이트에 대한 서버 쪽 보안 검사를 시작하고 최신 보고서를 가져옵니다. 검사 기간은 사이트 크기에 따라 달라집니다. 작은 사이트는 몇 분 안에 완료되며 대규모 사이트는 몇 시간이 걸릴 수 있습니다. 결과는 심각도별로 그룹화됩니다. 배포된 사이트가 필요합니다.
  • /manage-headers: 콘텐츠 보안 정책, X-프레임 옵션, CORS, 쿠키 SameSite 및 관련 설정 아래에 .powerpages-site/site-settings/구성된 HTTP 보안 헤더를 검사합니다. 누락되거나 약한 값을 식별하고 권장되는 기본값을 제안합니다.
  • /manage-firewall: 관리형 규칙 상태 및 사용자 지정 규칙(IP 블록, 국가 블록, 경로 블록, 속도 제한)을 포함하여 프로덕션 사이트에 대한 WAF(웹 애플리케이션 방화벽)를 검사합니다. 지원되는 지역의 프로덕션 사이트에서만 사용할 수 있습니다. 기술은 자격 문제를 감지하고 보고합니다.
  • /audit-permissions: 기존 테이블 권한을 사이트 코드 및 Dataverse 메타데이터와 대조하여 검사합니다. 누락된 권한, 지나치게 허용되는 역할, 사용되지 않는 권한 및 YAML 스키마 문제를 표시합니다.

통합 보고서는 섹션별로 결과를 그룹화하고, 기본 브라우저에서 열리며, 일반 언어 수정 지침을 포함합니다. 채팅에서 플러그 인은 수정 사항을 안내합니다. 찾기를 선택하고 플러그 인은 일치하는 포커스가 있는 기술을 대화형으로 호출하여 변경 사항을 적용합니다.

메모

보안 검토는 변경 내용을 자동으로 적용하지 않습니다. 각 포커스가 있는 기술은 통합 실행 중에 읽기 전용 검토 모드로 실행됩니다. 수정 사항을 적용하기 위해 플러그 인은 작업을 선택한 후 일치하는 기술을 대화형으로 호출합니다.

Tip

또한 포커스가 있는 기술을 자체적으로 실행할 수도 있습니다.

  • 개발 중에는 /scan-code을 실행하여 코드 수준의 문제를 조기에 발견하세요.
  • 실행 /manage-headers 하여 특정 콘텐츠 보안 정책 오류를 해결하거나 CORS를 설정합니다.
  • 실행 /manage-firewall 하여 로그인 페이지에 속도 제한을 추가하거나 국가별 트래픽을 차단합니다.
  • 테이블 사용 권한을 변경한 후 실행 /audit-permissions 하여 사이트 코드와 일치하는지 확인합니다.
  • /security-review 목표를 사용하여 다시 실행 하여 시간이 지남에 따라 프로덕션 사이트를 모니터링합니다.

사이트 확인

기술을 완료한 후 Power Pages 사이트가 제대로 작동하는지 확인합니다.

  1. Power Pages 이동합니다.
  2. 활성 사이트 목록에서 사이트를 찾으세요.
  3. 미리 보기 옵션을 사용하여 데스크톱에서 사이트를 미리 봅니 다.
  4. 기능을 테스트합니다.

여러 환경에 걸쳐 사이트 배포

사이트가 개발 환경에서 작동하면 ALM(애플리케이션 수명 주기 관리) 기술을 사용하여 테스트 및 프로덕션 환경으로 승격합니다. 플러그 인은 사이트를 Power Platform 솔루션으로 패키지하고, 환경에 따라 다른 값을 식별하며, Power Platform 파이프라인 을 통해 또는 수동 내보내기 및 가져오기를 통해 솔루션을 배포합니다.

ALM 기술을 사용하려면 하나 이상의 대상 Power Platform 환경(테스트, 프로덕션 또는 둘 다)이 필요합니다. 비밀에 대한 선택적 Azure Key Vault 흐름을 사용하려면 Azure 구독에서 키 자격 증명 모음을 만들 수 있는 권한도 필요합니다.

배포 계획

시작하려면 /plan-alm을(를) 실행하세요. /plan-alm 는 ALM의 진입점이며 다른 ALM 기술을 오케스트레이션하므로 일반적으로 직접 실행하지 않습니다. 플러그 인:

  1. 프로젝트, 솔루션 및 대상 환경의 현재 상태를 검색합니다.
  2. 승격 전략(Power Platform Pipelines 또는 수동 내보내기 및 가져오기), 대상 단계 및 적용할 제약 조건에 대해 묻습니다.
  3. 수행하려는 모든 작업을 보여 주는 시각적 계획을 docs/alm-plan.html에 생성합니다.
  4. 다운스트림 기술을 실행하기 전에 승인을 기다립니다.

계획은 디스크에 유지되므로 각 다운스트림 기술은 동일한 지속형 계획에서 읽고 씁니다. 단계가 실패하면 다시 실행하고 중지된 위치에서 다시 시작 /plan-alm 합니다.

솔루션 작성

실행 /setup-solution 하여 사이트를 Power Platform 솔루션으로 패키지합니다. 플러그 인:

  1. 게시자 및 솔루션을 만든 다음 사이트, 웹 역할, 서버 논리 엔드포인트, 클라우드 흐름 등록 및 OAuth 공급자 설정과 같은 Power Pages 구성 요소를 추가합니다.
  2. 각 사이트 설정을 민감도별로 분류하고 환경마다 다른 값에 대한 환경 변수 를 제안합니다.
  3. Azure Key Vault를 프로비전하고 연결 문자열 및 API 키와 같은 자격 증명 유형의 값을 저장하는 기능을 제공합니다.
  4. 사이트에 대한 솔루션이 이미 있는 경우 동기화 모드로 실행되어 새 솔루션을 만들지 않고 구성 요소를 조정합니다.

제안을 검토하고 승인합니다. 플러그 인은 확인할 때까지 구성을 만들지 않습니다.

Tip

솔루션이 너무 크거나 얽혀서 안정적으로 배포할 수 없는 경우 플러그 인은 분할을 권장하고 분할 위치를 제안합니다. 변경 내용이 적용되기 전에 분할을 확인합니다.

Power Platform Pipelines를 사용하여 배포

프로모션 전략으로 Power Platform Pipelines를 선택한 경우 플러그 인은 다음 기술을 실행합니다.

  1. /ensure-pipelines-host Power Platform Pipelines에 대한 호스트 환경을 프로비전하거나 검색합니다. 기술은 테넌트에 사용할 수 있는 가장 저렴한 옵션(무료 플랫폼 호스트, 기존 환경의 파이프라인 앱 또는 사용자 지정 호스트)을 선택합니다.
  2. /setup-pipeline 는 Dataverse에서 파이프라인 정의를 등록하고 선택한 단계를 구성하며 각 단계를 대상 환경에 바인딩합니다.
  3. /deploy-pipeline는 단계의 배포를 트리거하고, deploymentSettings.json를 통해 단계별 환경 변수 재정의를 적용하며, 배포 원장에 상태를 추적합니다.

대상 환경이 이미 다른 Power Platform Pipelines 호스트에 연결되어 있으므로 배포가 실패하는 경우 플러그 인을 실행 /force-link-environment 하여 다시 할당할 수 있습니다. 이 작업에는 명시적 동의가 필요하며 되돌릴 수 있습니다.

수동 내보내기 및 가져오기를 사용하여 배포

수동 경로를 선택하면 플러그 인이 실행됩니다.

  1. /export-solution 내보내기 전에 완전성 검사를 사용하여 솔루션을 관리 또는 관리되지 않는 ZIP으로 내보냅니다.
  2. /import-solution 대상 환경에서 ZIP을 가져오려면 먼저 종속성을 확인하거나 직접 확인하도록 준비합니다.

배포된 사이트 활성화 및 유효성 검사

대상 환경에 성공적으로 배포한 후 플러그 인은 다음을 수행합니다.

  1. 대상 환경에서 공용 URL을 프로비전하기 위해 실행됩니다 /activate-site .
  2. 배포를 확인하기 위해 /test-site를 실행합니다. 플러그 인은 브라우저를 사용하여 대표 페이지를 크롤링하고, 역할 기반 액세스 검사를 실행하고, 호출을 확인하고 /_api/ , 엔드포인트에서 /_api/serverlogics/ 응답 셰이프를 캡처합니다. 스킬은 결과를 PASS, WARNINGS, 또는 FAIL로 보고하며, 각 검사별 세부 정보는 계획에서 연결됩니다.

단계가 실패하면 플러그 인이 실행됩니다 /diagnose-deployment. 이 기술은 부실 매니페스트, 누락된 종속성, 호스트 충돌, 차단된 JavaScript 또는 만료된 인증과 같은 알려진 배포 오류 카탈로그와 실패를 일치시키고 구체적인 수정을 제안합니다. 플러그 인은 사용자의 동의 없이 수정 사항을 적용하지 않습니다.

메모

모든 ALM 기술은 솔루션 매니페스트, 계획 데이터, 파이프라인 원장, 배포 원장 및 테스트 결과와 같은 디스크의 아티팩트에서 읽고 씁니다. 오케스트레이션은 재개 가능하며 감사 가능합니다. 모든 단계에서 발생한 작업을 확인하려면 아티팩트 검사를 수행합니다.

팁 및 모범 사례

다음 팁은 Power Pages 사이트를 빌드할 때 플러그 인 및 AI 코딩 에이전트를 최대한 활용할 수 있도록 도와 드립니다.

처음 실행할 때 누락된 도구에 대한 터미널 출력 보기

플러그 인은 기술과 워크플로를 제공하지만 AI 코딩 에이전트(GitHub Copilot CLI 또는 Claude Code)는 머신에서 실제 명령을 실행합니다. 이러한 도구를 처음으로 사용하는 경우 터미널 출력을 자세히 확인합니다. AI 코딩 에이전트는 백그라운드에서 명령과 스크립트를 실행하며, 이러한 명령 중 일부는 컴퓨터에 설치되지 않을 수 있는 도구에 따라 달라집니다. 단계가 실패하면 터미널 출력은 일반적으로 찾을 수 없는 도구 또는 명령을 표시합니다.

같은 command not foundis not recognized오류가 표시되면 누락된 도구를 설치하고 워크플로를 다시 트리거합니다. AI 코딩 에이전트는 도구 사용 가능 시 중단한 지점에서 다시 시작합니다.

승인하기 전에 에이전트 제안 검토

AI 코딩 에이전트는 변경하기 전에 데이터 모델 설계자 및 권한 설계자의 제안과 같은 제안을 제공합니다. AI 코딩 에이전트에서 생성한 코드 및 구성은 정확하지 않을 수 있으므로 승인하거나 배포하기 전에 모든 제안 및 생성된 모든 코드를 검토, 테스트 및 유효성을 검사합니다.

  • 데이터 모델 제안: 테이블 이름, 열 형식 및 관계가 비즈니스 요구 사항과 일치하는지 확인합니다. 데이터가 이미 삽입된 후 열의 이름을 바꾸는 것보다 제안을 조정하는 것이 더 쉽습니다.
  • 사용 권한 제안: 각 역할에 각 테이블에 대한 올바른 액세스 수준(만들기, 읽기, 업데이트, 삭제)이 있는지 확인합니다. 지나치게 허용되는 테이블 사용 권한은 일반적인 보안 위험입니다.
  • 생성된 코드: 생성된 코드를 읽고 배포하기 전에 사이트를 로컬로 테스트합니다. AI 생성 코드에는 오류 또는 보안 문제가 포함될 수 있습니다.

컨텍스트를 사용하여 직접 오류 붙여넣기

빌드 오류, 배포 오류 또는 브라우저의 런타임 예외 등 오류가 발생하면 전체 오류 출력을 복사합니다. 무엇을 하고 있었는지에 대한 간략한 설명과 함께 붙여넣습니다. 더 많은 컨텍스트를 제공할수록 수정 속도가 빨라집니다.

예제: 빌드 오류

I ran npm run build and got this error. Fix it.

error TS2339: Property 'jobTitle' does not exist on type 'JobPosting'.

  src/components/JobCard.tsx:24:31
    24   <Text>{posting.jobTitle}</Text>
                                 

Tip

파일 이름, 실행한 명령 및 예상되는 작업을 포함합니다. 플러그 인은 이 컨텍스트를 사용하여 문제를 찾고 추측하는 대신 대상 수정을 적용합니다.

전체 요청 URL과 Web API 오류 공유

배포 후 일반적인 문제로는 열이 API 액세스를 위해 사용 설정되지 않았을 때 발생하는 Power Pages Web API 오류가 있습니다. 이 오류가 발생하면 전체 API URL전체 JSON 오류 응답을 붙여넣습니다. 오류 메시지는 수정해야 하는 테이블과 열을 정확히 알려주며 플러그 인은 테이블 사용 권한 YAML 및 사이트 설정을 업데이트할 수 있습니다.

예: Web API에 열이 활성화되지 않음(403)

I'm getting a 403 error when the documents page loads. Here's the API call and the response. Fix the issue so this API works.

URL:
https://my-site.powerappsportals.com/_api/crd50_documents?$select=crd50_documentid,crd50_name,crd50_documentcategory,crd50_filetype,crd50_filesize,crd50_updateddate,crd50_description,_crd50_propertyid_value

Response:
{
  "error": {
    "code": "90040101",
    "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
    "innererror": {
      "code": "90040101",
      "message": "Attribute _crd50_propertyid_value in table crd50_document is not enabled for Web Api.",
      "type": "AttributePermissionIsMissing"
    }
  }
}

이 오류(AttributePermissionIsMissing)는 조회 열 _crd50_propertyid_value 이 Dataverse 테이블에 있지만 Web API에 대한 테이블 권한 구성에 나열되지 않음을 의미합니다. 플러그 인은 누락된 열을 테이블 권한 YAML .powerpages-site/table-permissions/ 에 추가하고 다시 배포하여 이 오류를 해결합니다.

메모

Power Pages Web API를 사용하려면 API 호출에서 반환된 모든 열을 테이블 권한에 명시적으로 나열해야 합니다. 조회 속성 (_이 접두사로, _value이 접미사로 붙어 있음)은 API 이름이 Dataverse의 열 논리 이름과 다르기 때문에 쉽게 눈에 띄지 않을 수 있습니다. 표시되는 AttributePermissionIsMissing경우 항상 테이블 권한에 해당 열을 추가합니다. API 쿼리를 변경하지 마세요.

원하는 항목에 대해 구체적으로 설명

모호한 요청은 모호한 결과를 생성합니다. 레이아웃 기본 설정, 데이터 필드 및 동작을 포함하여 플러그 인에 필요한 사항을 정확하게 알릴 수 있습니다.

이전 사용해 보기
채용 페이지 만들기 "맨 위에 검색 창이 있는 작업 목록 페이지를 만들고, 위치 및 부서에 대한 칩을 필터링하고, 타이틀, 회사, 급여 범위 및 각 작업에 대해 게시된 날짜를 보여 주는 카드 그리드를 만듭니다."
"스타일 수정" "작업 카드는 데스크톱에 세로로 쌓입니다. 768px보다 넓은 화면에서 16px 간격으로 3열 그리드에 표시합니다."
"일부 데이터 추가" "현실적인 직함, 급여 범위 $60k-$180k, 지난 30일 동안 게시된 날짜로 4개 부서(엔지니어링, 마케팅, 영업, HR)에 20개의 샘플 채용 공고를 추가합니다."
"API 설정" "JobListings 구성 요소를 cr_jobposting Dataverse 테이블에 연결합니다. 하드 코딩된 배열을 타이틀, 부서, 급여 및 게시된 날짜를 가져오는 실제 API 호출로 바꿉니다."
"로그인 추가" 공개 등록이 가능한 Microsoft Entra 외부 ID 로그인을 설정하고, Google을 두 번째 ID 공급자로 추가합니다. 로그인 페이지에서 가로 행으로 표시합니다."

시각적 문제에 대한 스크린샷 사용

사이트가 브라우저에서 제대로 표시되지 않는 경우 스크린샷을 찍어 대화에 직접 붙여넣거나 파일 경로를 제공합니다. 시각적 컨텍스트는 텍스트에서 설명하기 어려운 레이아웃, 간격 및 스타일 지정 문제를 식별하는 데 도움이 됩니다.

The header overlaps the hero section on mobile. Here's a screenshot:

[paste screenshot or provide path to screenshot file]

Fix the header so it doesn't overlap. It should be a fixed header with the content starting below it.

작은 단계로 반복

하나의 프롬프트에서 전체 사이트를 설명하는 대신 증분 방식으로 빌드합니다. 구조 및 레이아웃으로 시작한 다음 기능을 한 번에 하나씩 추가합니다. 이 방법을 사용하면 각 단계에서 검토하고 과정을 수정할 수 있습니다.

Step 1: /create-site → Get the basic scaffold and layout right
Step 2: "Add a hero section to the home page with a search bar"
Step 3: "Add a job listings page with filter and sort"
Step 4: "Add a job detail page that shows full description"
Step 5: /setup-datamodel → Create tables now that you know the data shape
Step 6: /integrate-webapi → Wire up real data

Tip

각 단계가 끝나면 브라우저 미리 보기를 확인합니다. 문제가 해결되지 않으면 계속 진행하기 전에 수정합니다. 전체 사이트에서 문제를 풀기보다 한 구성 요소의 문제를 해결하는 것이 더 쉽습니다.

승인하기 전에 설명 요청

제안된 변경 사항, 특히 권한, 데이터 모델 수정 또는 인증 구성에 대해 잘 모르는 경우, 승인을 내리기 전에 플러그인에게 수행할 작업과 그 이유를 설명해 달라고 요청하십시오.

Before you create the table permissions, explain what access each role will have and why. I want to understand the security implications.

독립적으로 기술을 실행하여 문제 복구

스킬이 중간에 실패하는 경우 다시 시작할 필요가 없습니다. 각 기술은 독립적으로 실행되며 중단된 지점에서 다시 시작할 수 있습니다. 예를 들어 세 번째 테이블에서 오류가 발생하면 /integrate-webapi 다시 실행할 수 있으며 이미 완료된 작업을 검색합니다.

/integrate-webapi failed while processing the cr_applications table. Here's the error: [paste error]. Resume the integration from where it stopped.