From copilot-studio
Validates Copilot Studio agent YAML files using LSP binary diagnostics for YAML structure, Power Fx expressions, schema validation, and cross-file references. Useful when asked to check, validate, or verify YAML files.
npx claudepluginhub microsoft/skills-for-copilot-studio --plugin copilot-studioThis skill is limited to using the following tools:
Validate Copilot Studio agent YAML files using the LanguageServerHost binary's full diagnostics — the same validation engine used by the VS Code Copilot Studio extension.
Enforces C++ Core Guidelines for writing, reviewing, and refactoring modern C++ code (C++17+), promoting RAII, immutability, type safety, and idiomatic practices.
Provides patterns for shared UI in Compose Multiplatform across Android, iOS, Desktop, and Web: state management with ViewModels/StateFlow, navigation, theming, and performance.
Implements Playwright E2E testing patterns: Page Object Model, test organization, configuration, reporters, artifacts, and CI/CD integration for stable suites.
Validate Copilot Studio agent YAML files using the LanguageServerHost binary's full diagnostics — the same validation engine used by the VS Code Copilot Studio extension.
Locate the agent workspace. Find the directory containing .mcs/conn.json. If a specific file was requested, use the workspace that contains it.
Run LSP-based validation:
node ${CLAUDE_SKILL_DIR}/../../scripts/manage-agent.bundle.js validate \
--workspace "<path-to-agent-folder>" \
--tenant-id "<tenantId>" \
--environment-id "<envId>" \
--environment-url "<envUrl>" \
--agent-mgmt-url "<mgmtUrl>"
This validates all .mcs.yml files in the workspace using the LSP binary's full diagnostics: YAML structure, Power Fx expressions, schema validation, cross-file references, and environment-specific checks.
Connection details come from .mcs/conn.json — read it to get tenant-id, environment-id, environment-url, and agent-mgmt-url.
Parse the JSON output:
valid: true → all files pass (may still have warnings)valid: false + summary.errors > 0 → report errors as FAIL itemssummary.warnings > 0 → report as WARN itemsIf the user asked about a specific file, filter the output to show only that file's diagnostics.
For additional context on specific errors, use schema lookup:
node ${CLAUDE_SKILL_DIR}/../../scripts/schema-lookup.bundle.js resolve <kind>
Report findings:
Validation Results for: <agent-name>
[PASS] <filename> — no issues
[FAIL] <filename> — <error message> (line X)
[WARN] <filename> — <warning message> (line X)
Summary: X files checked, Y errors, Z warnings