eslint-plugin-copilot 1.0.8 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +71 -72
- package/dist/_internal/copilot-config-references.d.ts +1 -1
- package/dist/_internal/copilot-config-references.d.ts.map +1 -1
- package/dist/_internal/copilot-config-references.js +3 -1
- package/dist/_internal/copilot-config-references.js.map +1 -1
- package/dist/_internal/copilot-file-kind.d.ts.map +1 -1
- package/dist/_internal/copilot-file-kind.js +4 -3
- package/dist/_internal/copilot-file-kind.js.map +1 -1
- package/dist/_internal/create-copilot-rule.d.ts +4 -2
- package/dist/_internal/create-copilot-rule.d.ts.map +1 -1
- package/dist/_internal/create-copilot-rule.js.map +1 -1
- package/dist/_internal/file-system.d.ts.map +1 -1
- package/dist/_internal/file-system.js +31 -18
- package/dist/_internal/file-system.js.map +1 -1
- package/dist/_internal/frontmatter.d.ts +1 -1
- package/dist/_internal/frontmatter.d.ts.map +1 -1
- package/dist/_internal/frontmatter.js +151 -119
- package/dist/_internal/frontmatter.js.map +1 -1
- package/dist/_internal/markdown-links.d.ts.map +1 -1
- package/dist/_internal/markdown-links.js +3 -1
- package/dist/_internal/markdown-links.js.map +1 -1
- package/dist/_internal/markdown-rule.d.ts +2 -1
- package/dist/_internal/markdown-rule.d.ts.map +1 -1
- package/dist/_internal/markdown-rule.js.map +1 -1
- package/dist/_internal/repository-hooks-json.d.ts +5 -2
- package/dist/_internal/repository-hooks-json.d.ts.map +1 -1
- package/dist/_internal/repository-hooks-json.js +7 -6
- package/dist/_internal/repository-hooks-json.js.map +1 -1
- package/dist/_internal/rule-catalog.d.ts.map +1 -1
- package/dist/_internal/rule-catalog.js +2 -3
- package/dist/_internal/rule-catalog.js.map +1 -1
- package/dist/plugin.cjs +560 -633
- package/dist/plugin.cjs.map +4 -4
- package/dist/plugin.d.cts +2 -1
- package/dist/plugin.d.ts +2 -1
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +4 -3
- package/dist/plugin.js.map +1 -1
- package/dist/rules/no-blank-customization-body.d.ts +1 -0
- package/dist/rules/no-blank-customization-body.d.ts.map +1 -1
- package/dist/rules/no-blank-customization-body.js +3 -0
- package/dist/rules/no-blank-customization-body.js.map +1 -1
- package/dist/rules/no-blank-repository-instructions.d.ts +1 -0
- package/dist/rules/no-blank-repository-instructions.d.ts.map +1 -1
- package/dist/rules/no-blank-repository-instructions.js +3 -0
- package/dist/rules/no-blank-repository-instructions.js.map +1 -1
- package/dist/rules/no-blank-skill-body.d.ts +1 -0
- package/dist/rules/no-blank-skill-body.d.ts.map +1 -1
- package/dist/rules/no-blank-skill-body.js +3 -0
- package/dist/rules/no-blank-skill-body.js.map +1 -1
- package/dist/rules/no-deprecated-agent-infer.d.ts +1 -0
- package/dist/rules/no-deprecated-agent-infer.d.ts.map +1 -1
- package/dist/rules/no-deprecated-agent-infer.js +3 -0
- package/dist/rules/no-deprecated-agent-infer.js.map +1 -1
- package/dist/rules/no-duplicate-agent-names.d.ts +1 -0
- package/dist/rules/no-duplicate-agent-names.d.ts.map +1 -1
- package/dist/rules/no-duplicate-agent-names.js +6 -4
- package/dist/rules/no-duplicate-agent-names.js.map +1 -1
- package/dist/rules/no-duplicate-prompt-names.d.ts +1 -0
- package/dist/rules/no-duplicate-prompt-names.d.ts.map +1 -1
- package/dist/rules/no-duplicate-prompt-names.js +6 -4
- package/dist/rules/no-duplicate-prompt-names.js.map +1 -1
- package/dist/rules/no-duplicate-skill-names.d.ts +1 -0
- package/dist/rules/no-duplicate-skill-names.d.ts.map +1 -1
- package/dist/rules/no-duplicate-skill-names.js +6 -4
- package/dist/rules/no-duplicate-skill-names.js.map +1 -1
- package/dist/rules/no-duplicate-slash-command-names.d.ts +1 -0
- package/dist/rules/no-duplicate-slash-command-names.d.ts.map +1 -1
- package/dist/rules/no-duplicate-slash-command-names.js +6 -4
- package/dist/rules/no-duplicate-slash-command-names.js.map +1 -1
- package/dist/rules/no-empty-repository-hook-arrays.d.ts +1 -0
- package/dist/rules/no-empty-repository-hook-arrays.d.ts.map +1 -1
- package/dist/rules/no-empty-repository-hook-arrays.js +7 -3
- package/dist/rules/no-empty-repository-hook-arrays.js.map +1 -1
- package/dist/rules/no-legacy-chatmode-files.d.ts +1 -0
- package/dist/rules/no-legacy-chatmode-files.d.ts.map +1 -1
- package/dist/rules/no-legacy-chatmode-files.js +3 -0
- package/dist/rules/no-legacy-chatmode-files.js.map +1 -1
- package/dist/rules/prefer-custom-instructions-under-code-review-limit.d.ts +1 -0
- package/dist/rules/prefer-custom-instructions-under-code-review-limit.d.ts.map +1 -1
- package/dist/rules/prefer-custom-instructions-under-code-review-limit.js +3 -0
- package/dist/rules/prefer-custom-instructions-under-code-review-limit.js.map +1 -1
- package/dist/rules/prefer-fast-repository-hooks.d.ts +1 -0
- package/dist/rules/prefer-fast-repository-hooks.d.ts.map +1 -1
- package/dist/rules/prefer-fast-repository-hooks.js +5 -1
- package/dist/rules/prefer-fast-repository-hooks.js.map +1 -1
- package/dist/rules/prefer-qualified-tools.d.ts +1 -0
- package/dist/rules/prefer-qualified-tools.d.ts.map +1 -1
- package/dist/rules/prefer-qualified-tools.js +8 -3
- package/dist/rules/prefer-qualified-tools.js.map +1 -1
- package/dist/rules/require-agent-tool-for-subagents.d.ts +1 -0
- package/dist/rules/require-agent-tool-for-subagents.d.ts.map +1 -1
- package/dist/rules/require-agent-tool-for-subagents.js +6 -2
- package/dist/rules/require-agent-tool-for-subagents.js.map +1 -1
- package/dist/rules/require-agents-md-for-cross-surface-agent-instructions.d.ts +1 -0
- package/dist/rules/require-agents-md-for-cross-surface-agent-instructions.d.ts.map +1 -1
- package/dist/rules/require-agents-md-for-cross-surface-agent-instructions.js +3 -0
- package/dist/rules/require-agents-md-for-cross-surface-agent-instructions.js.map +1 -1
- package/dist/rules/require-chatmode-file-metadata.d.ts +1 -0
- package/dist/rules/require-chatmode-file-metadata.d.ts.map +1 -1
- package/dist/rules/require-chatmode-file-metadata.js +5 -1
- package/dist/rules/require-chatmode-file-metadata.js.map +1 -1
- package/dist/rules/require-existing-agent-hook-cwd.d.ts +1 -0
- package/dist/rules/require-existing-agent-hook-cwd.d.ts.map +1 -1
- package/dist/rules/require-existing-agent-hook-cwd.js +6 -2
- package/dist/rules/require-existing-agent-hook-cwd.js.map +1 -1
- package/dist/rules/require-existing-agent-mcp-servers.d.ts +1 -0
- package/dist/rules/require-existing-agent-mcp-servers.d.ts.map +1 -1
- package/dist/rules/require-existing-agent-mcp-servers.js +6 -2
- package/dist/rules/require-existing-agent-mcp-servers.js.map +1 -1
- package/dist/rules/require-existing-relative-agent-links.d.ts +1 -0
- package/dist/rules/require-existing-relative-agent-links.d.ts.map +1 -1
- package/dist/rules/require-existing-relative-agent-links.js +3 -0
- package/dist/rules/require-existing-relative-agent-links.js.map +1 -1
- package/dist/rules/require-existing-relative-instructions-links.d.ts +1 -0
- package/dist/rules/require-existing-relative-instructions-links.d.ts.map +1 -1
- package/dist/rules/require-existing-relative-instructions-links.js +3 -0
- package/dist/rules/require-existing-relative-instructions-links.js.map +1 -1
- package/dist/rules/require-existing-relative-prompt-links.d.ts +1 -0
- package/dist/rules/require-existing-relative-prompt-links.d.ts.map +1 -1
- package/dist/rules/require-existing-relative-prompt-links.js +3 -0
- package/dist/rules/require-existing-relative-prompt-links.js.map +1 -1
- package/dist/rules/require-existing-relative-skill-links.d.ts +1 -0
- package/dist/rules/require-existing-relative-skill-links.d.ts.map +1 -1
- package/dist/rules/require-existing-relative-skill-links.js +3 -0
- package/dist/rules/require-existing-relative-skill-links.js.map +1 -1
- package/dist/rules/require-existing-repository-hook-cwd.d.ts +1 -0
- package/dist/rules/require-existing-repository-hook-cwd.d.ts.map +1 -1
- package/dist/rules/require-existing-repository-hook-cwd.js +5 -1
- package/dist/rules/require-existing-repository-hook-cwd.js.map +1 -1
- package/dist/rules/require-github-copilot-target-for-mcp-servers.d.ts +1 -0
- package/dist/rules/require-github-copilot-target-for-mcp-servers.d.ts.map +1 -1
- package/dist/rules/require-github-copilot-target-for-mcp-servers.js +5 -1
- package/dist/rules/require-github-copilot-target-for-mcp-servers.js.map +1 -1
- package/dist/rules/require-instructions-apply-to.d.ts +1 -0
- package/dist/rules/require-instructions-apply-to.d.ts.map +1 -1
- package/dist/rules/require-instructions-apply-to.js +5 -1
- package/dist/rules/require-instructions-apply-to.js.map +1 -1
- package/dist/rules/require-json-agent-mcp-servers.d.ts +1 -0
- package/dist/rules/require-json-agent-mcp-servers.d.ts.map +1 -1
- package/dist/rules/require-json-agent-mcp-servers.js +6 -2
- package/dist/rules/require-json-agent-mcp-servers.js.map +1 -1
- package/dist/rules/require-prompt-file-metadata.d.ts +1 -0
- package/dist/rules/require-prompt-file-metadata.d.ts.map +1 -1
- package/dist/rules/require-prompt-file-metadata.js +43 -32
- package/dist/rules/require-prompt-file-metadata.js.map +1 -1
- package/dist/rules/require-qualified-agent-handoff-models.d.ts +1 -0
- package/dist/rules/require-qualified-agent-handoff-models.d.ts.map +1 -1
- package/dist/rules/require-qualified-agent-handoff-models.js +6 -2
- package/dist/rules/require-qualified-agent-handoff-models.js.map +1 -1
- package/dist/rules/require-relative-agent-hook-cwd.d.ts +1 -0
- package/dist/rules/require-relative-agent-hook-cwd.d.ts.map +1 -1
- package/dist/rules/require-relative-agent-hook-cwd.js +6 -2
- package/dist/rules/require-relative-agent-hook-cwd.js.map +1 -1
- package/dist/rules/require-relative-agent-links.d.ts +1 -0
- package/dist/rules/require-relative-agent-links.d.ts.map +1 -1
- package/dist/rules/require-relative-agent-links.js +3 -0
- package/dist/rules/require-relative-agent-links.js.map +1 -1
- package/dist/rules/require-relative-instructions-links.d.ts +1 -0
- package/dist/rules/require-relative-instructions-links.d.ts.map +1 -1
- package/dist/rules/require-relative-instructions-links.js +3 -0
- package/dist/rules/require-relative-instructions-links.js.map +1 -1
- package/dist/rules/require-relative-prompt-links.d.ts +1 -0
- package/dist/rules/require-relative-prompt-links.d.ts.map +1 -1
- package/dist/rules/require-relative-prompt-links.js +3 -0
- package/dist/rules/require-relative-prompt-links.js.map +1 -1
- package/dist/rules/require-relative-repository-hook-cwd.d.ts +1 -0
- package/dist/rules/require-relative-repository-hook-cwd.d.ts.map +1 -1
- package/dist/rules/require-relative-repository-hook-cwd.js +5 -1
- package/dist/rules/require-relative-repository-hook-cwd.js.map +1 -1
- package/dist/rules/require-relative-skill-links.d.ts +1 -0
- package/dist/rules/require-relative-skill-links.d.ts.map +1 -1
- package/dist/rules/require-relative-skill-links.js +3 -0
- package/dist/rules/require-relative-skill-links.js.map +1 -1
- package/dist/rules/require-repository-hook-arrays.d.ts +1 -0
- package/dist/rules/require-repository-hook-arrays.d.ts.map +1 -1
- package/dist/rules/require-repository-hook-arrays.js +7 -3
- package/dist/rules/require-repository-hook-arrays.js.map +1 -1
- package/dist/rules/require-repository-hook-command-shell.d.ts +1 -0
- package/dist/rules/require-repository-hook-command-shell.d.ts.map +1 -1
- package/dist/rules/require-repository-hook-command-shell.js +5 -1
- package/dist/rules/require-repository-hook-command-shell.js.map +1 -1
- package/dist/rules/require-repository-hooks-object.d.ts +1 -0
- package/dist/rules/require-repository-hooks-object.d.ts.map +1 -1
- package/dist/rules/require-repository-hooks-object.js +3 -0
- package/dist/rules/require-repository-hooks-object.js.map +1 -1
- package/dist/rules/require-repository-instructions-file.d.ts +1 -0
- package/dist/rules/require-repository-instructions-file.d.ts.map +1 -1
- package/dist/rules/require-repository-instructions-file.js +3 -0
- package/dist/rules/require-repository-instructions-file.js.map +1 -1
- package/dist/rules/require-skill-file-location.d.ts +1 -0
- package/dist/rules/require-skill-file-location.d.ts.map +1 -1
- package/dist/rules/require-skill-file-location.js +3 -0
- package/dist/rules/require-skill-file-location.js.map +1 -1
- package/dist/rules/require-skill-file-metadata.d.ts +1 -0
- package/dist/rules/require-skill-file-metadata.d.ts.map +1 -1
- package/dist/rules/require-skill-file-metadata.js +6 -2
- package/dist/rules/require-skill-file-metadata.js.map +1 -1
- package/dist/rules/require-skill-md-filename.d.ts +1 -0
- package/dist/rules/require-skill-md-filename.d.ts.map +1 -1
- package/dist/rules/require-skill-md-filename.js +3 -0
- package/dist/rules/require-skill-md-filename.js.map +1 -1
- package/dist/rules/require-skill-name-match-directory.d.ts +1 -0
- package/dist/rules/require-skill-name-match-directory.d.ts.map +1 -1
- package/dist/rules/require-skill-name-match-directory.js +5 -1
- package/dist/rules/require-skill-name-match-directory.js.map +1 -1
- package/dist/rules/require-string-repository-hook-env-values.d.ts +1 -0
- package/dist/rules/require-string-repository-hook-env-values.d.ts.map +1 -1
- package/dist/rules/require-string-repository-hook-env-values.js +6 -2
- package/dist/rules/require-string-repository-hook-env-values.js.map +1 -1
- package/dist/rules/require-valid-agent-argument-hint.d.ts +1 -0
- package/dist/rules/require-valid-agent-argument-hint.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-argument-hint.js +5 -1
- package/dist/rules/require-valid-agent-argument-hint.js.map +1 -1
- package/dist/rules/require-valid-agent-handoff-send.d.ts +1 -0
- package/dist/rules/require-valid-agent-handoff-send.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-handoff-send.js +7 -3
- package/dist/rules/require-valid-agent-handoff-send.js.map +1 -1
- package/dist/rules/require-valid-agent-handoffs.d.ts +1 -0
- package/dist/rules/require-valid-agent-handoffs.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-handoffs.js +5 -1
- package/dist/rules/require-valid-agent-handoffs.js.map +1 -1
- package/dist/rules/require-valid-agent-hook-events.d.ts +1 -0
- package/dist/rules/require-valid-agent-hook-events.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-hook-events.js +6 -2
- package/dist/rules/require-valid-agent-hook-events.js.map +1 -1
- package/dist/rules/require-valid-agent-hook-timeouts.d.ts +1 -0
- package/dist/rules/require-valid-agent-hook-timeouts.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-hook-timeouts.js +6 -2
- package/dist/rules/require-valid-agent-hook-timeouts.js.map +1 -1
- package/dist/rules/require-valid-agent-hooks.d.ts +1 -0
- package/dist/rules/require-valid-agent-hooks.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-hooks.js +31 -21
- package/dist/rules/require-valid-agent-hooks.js.map +1 -1
- package/dist/rules/require-valid-agent-invocation-controls.d.ts +1 -0
- package/dist/rules/require-valid-agent-invocation-controls.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-invocation-controls.js +7 -3
- package/dist/rules/require-valid-agent-invocation-controls.js.map +1 -1
- package/dist/rules/require-valid-agent-mcp-servers.d.ts +1 -0
- package/dist/rules/require-valid-agent-mcp-servers.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-mcp-servers.js +8 -4
- package/dist/rules/require-valid-agent-mcp-servers.js.map +1 -1
- package/dist/rules/require-valid-agent-model.d.ts +1 -0
- package/dist/rules/require-valid-agent-model.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-model.js +7 -3
- package/dist/rules/require-valid-agent-model.js.map +1 -1
- package/dist/rules/require-valid-agent-name.d.ts +1 -0
- package/dist/rules/require-valid-agent-name.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-name.js +5 -1
- package/dist/rules/require-valid-agent-name.js.map +1 -1
- package/dist/rules/require-valid-agent-subagents.d.ts +1 -0
- package/dist/rules/require-valid-agent-subagents.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-subagents.js +8 -4
- package/dist/rules/require-valid-agent-subagents.js.map +1 -1
- package/dist/rules/require-valid-agent-target.d.ts +1 -0
- package/dist/rules/require-valid-agent-target.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-target.js +6 -2
- package/dist/rules/require-valid-agent-target.js.map +1 -1
- package/dist/rules/require-valid-agent-tools.d.ts +1 -0
- package/dist/rules/require-valid-agent-tools.d.ts.map +1 -1
- package/dist/rules/require-valid-agent-tools.js +8 -4
- package/dist/rules/require-valid-agent-tools.js.map +1 -1
- package/dist/rules/require-valid-instructions-apply-to-globs.d.ts +1 -0
- package/dist/rules/require-valid-instructions-apply-to-globs.d.ts.map +1 -1
- package/dist/rules/require-valid-instructions-apply-to-globs.js +8 -3
- package/dist/rules/require-valid-instructions-apply-to-globs.js.map +1 -1
- package/dist/rules/require-valid-prompt-argument-hint.d.ts +1 -0
- package/dist/rules/require-valid-prompt-argument-hint.d.ts.map +1 -1
- package/dist/rules/require-valid-prompt-argument-hint.js +6 -3
- package/dist/rules/require-valid-prompt-argument-hint.js.map +1 -1
- package/dist/rules/require-valid-prompt-model.d.ts +1 -0
- package/dist/rules/require-valid-prompt-model.d.ts.map +1 -1
- package/dist/rules/require-valid-prompt-model.js +9 -5
- package/dist/rules/require-valid-prompt-model.js.map +1 -1
- package/dist/rules/require-valid-prompt-name.d.ts +1 -0
- package/dist/rules/require-valid-prompt-name.d.ts.map +1 -1
- package/dist/rules/require-valid-prompt-name.js +5 -1
- package/dist/rules/require-valid-prompt-name.js.map +1 -1
- package/dist/rules/require-valid-prompt-tools.d.ts +1 -0
- package/dist/rules/require-valid-prompt-tools.d.ts.map +1 -1
- package/dist/rules/require-valid-prompt-tools.js +8 -4
- package/dist/rules/require-valid-prompt-tools.js.map +1 -1
- package/dist/rules/require-valid-repository-hook-command-type.d.ts +1 -0
- package/dist/rules/require-valid-repository-hook-command-type.d.ts.map +1 -1
- package/dist/rules/require-valid-repository-hook-command-type.js +5 -1
- package/dist/rules/require-valid-repository-hook-command-type.js.map +1 -1
- package/dist/rules/require-valid-repository-hook-env.d.ts +1 -0
- package/dist/rules/require-valid-repository-hook-env.d.ts.map +1 -1
- package/dist/rules/require-valid-repository-hook-env.js +6 -2
- package/dist/rules/require-valid-repository-hook-env.js.map +1 -1
- package/dist/rules/require-valid-repository-hook-events.d.ts +1 -0
- package/dist/rules/require-valid-repository-hook-events.d.ts.map +1 -1
- package/dist/rules/require-valid-repository-hook-events.js +5 -1
- package/dist/rules/require-valid-repository-hook-events.js.map +1 -1
- package/dist/rules/require-valid-repository-hook-timeouts.d.ts +1 -0
- package/dist/rules/require-valid-repository-hook-timeouts.d.ts.map +1 -1
- package/dist/rules/require-valid-repository-hook-timeouts.js +7 -3
- package/dist/rules/require-valid-repository-hook-timeouts.js.map +1 -1
- package/dist/rules/require-valid-repository-hook-version.d.ts +1 -0
- package/dist/rules/require-valid-repository-hook-version.d.ts.map +1 -1
- package/dist/rules/require-valid-repository-hook-version.js +3 -0
- package/dist/rules/require-valid-repository-hook-version.js.map +1 -1
- package/dist/rules/require-valid-skill-directory-name.d.ts +1 -0
- package/dist/rules/require-valid-skill-directory-name.d.ts.map +1 -1
- package/dist/rules/require-valid-skill-directory-name.js +3 -0
- package/dist/rules/require-valid-skill-directory-name.js.map +1 -1
- package/dist/rules/require-valid-skill-license.d.ts +1 -0
- package/dist/rules/require-valid-skill-license.d.ts.map +1 -1
- package/dist/rules/require-valid-skill-license.js +5 -1
- package/dist/rules/require-valid-skill-license.js.map +1 -1
- package/dist/rules/require-valid-skill-name.d.ts +1 -0
- package/dist/rules/require-valid-skill-name.d.ts.map +1 -1
- package/dist/rules/require-valid-skill-name.js +5 -1
- package/dist/rules/require-valid-skill-name.js.map +1 -1
- package/package.json +37 -277
|
@@ -6,6 +6,8 @@ import { isCustomAgentFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { getCustomizationBodyWithOffset } from "../_internal/customization-body.js";
|
|
8
8
|
import { extractMarkdownLinks, isInvalidWorkspaceLinkDestination, } from "../_internal/markdown-links.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
10
|
+
/** Rule module for `require-relative-agent-links`. */
|
|
9
11
|
const requireRelativeAgentLinksRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return {
|
|
@@ -44,6 +46,7 @@ const requireRelativeAgentLinksRule = createCopilotRule({
|
|
|
44
46
|
frozen: false,
|
|
45
47
|
recommended: true,
|
|
46
48
|
requiresTypeChecking: false,
|
|
49
|
+
url: createRuleDocsUrl("require-relative-agent-links"),
|
|
47
50
|
},
|
|
48
51
|
messages: {
|
|
49
52
|
nonRelativeAgentLink: "Copilot custom agents should reference workspace files with relative Markdown links, not `{{destination}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-agent-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-agent-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-agent-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-agent-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,sDAAsD;AACtD,MAAM,6BAA6B,GAAsB,iBAAiB,CAAC;IACvE,MAAM,CAAC,OAAO;QACV,OAAO;YACH,IAAI;gBACA,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC3C,OAAO;gBACX,CAAC;gBAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,8BAA8B,CACnD,OAAO,CAAC,UAAU,CAAC,IAAI,CAC1B,CAAC;gBAEF,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACpD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;wBACvD,SAAS;oBACb,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC;wBACX,IAAI,EAAE;4BACF,WAAW,EAAE,IAAI,CAAC,WAAW;yBAChC;wBACD,GAAG,EAAE;4BACD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;4BACjD,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CACrC,IAAI,CAAC,KAAK,CACb;yBACJ;wBACD,SAAS,EAAE,sBAAsB;qBACpC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,mFAAmF;YACvF,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,8BAA8B,CAAC;SACzD;QACD,QAAQ,EAAE;YACN,oBAAoB,EAChB,6GAA6G;SACpH;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,8BAA8B;CACvC,CAAC,CAAC;AAEH,eAAe,6BAA6B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-relative-instructions-links`. */
|
|
2
3
|
declare const requireRelativeInstructionsLinksRule: CopilotRuleModule;
|
|
3
4
|
export default requireRelativeInstructionsLinksRule;
|
|
4
5
|
//# sourceMappingURL=require-relative-instructions-links.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-instructions-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-instructions-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-instructions-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-instructions-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAe7E,6DAA6D;AAC7D,QAAA,MAAM,oCAAoC,EAAE,iBA+DtC,CAAC;AAEP,eAAe,oCAAoC,CAAC"}
|
|
@@ -6,6 +6,8 @@ import { getCopilotFileKind } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { getCustomizationBodyWithOffset } from "../_internal/customization-body.js";
|
|
8
8
|
import { extractMarkdownLinks, isInvalidWorkspaceLinkDestination, } from "../_internal/markdown-links.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
10
|
+
/** Rule module for `require-relative-instructions-links`. */
|
|
9
11
|
const requireRelativeInstructionsLinksRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return {
|
|
@@ -44,6 +46,7 @@ const requireRelativeInstructionsLinksRule = createCopilotRule({
|
|
|
44
46
|
frozen: false,
|
|
45
47
|
recommended: true,
|
|
46
48
|
requiresTypeChecking: false,
|
|
49
|
+
url: createRuleDocsUrl("require-relative-instructions-links"),
|
|
47
50
|
},
|
|
48
51
|
messages: {
|
|
49
52
|
nonRelativeInstructionsLink: "Copilot instructions files should reference workspace files with relative Markdown links, not `{{destination}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-instructions-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-instructions-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-instructions-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-instructions-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,6DAA6D;AAC7D,MAAM,oCAAoC,GACtC,iBAAiB,CAAC;IACd,MAAM,CAAC,OAAO;QACV,OAAO;YACH,IAAI;gBACA,IACI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,cAAc,EACzD,CAAC;oBACC,OAAO;gBACX,CAAC;gBAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,8BAA8B,CACnD,OAAO,CAAC,UAAU,CAAC,IAAI,CAC1B,CAAC;gBAEF,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACpD,IACI,CAAC,iCAAiC,CAAC,IAAI,CAAC,WAAW,CAAC,EACtD,CAAC;wBACC,SAAS;oBACb,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC;wBACX,IAAI,EAAE;4BACF,WAAW,EAAE,IAAI,CAAC,WAAW;yBAChC;wBACD,GAAG,EAAE;4BACD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CACnC,IAAI,CAAC,GAAG,CACX;4BACD,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CACrC,IAAI,CAAC,KAAK,CACb;yBACJ;wBACD,SAAS,EAAE,6BAA6B;qBAC3C,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,sGAAsG;YAC1G,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,qCAAqC,CAAC;SAChE;QACD,QAAQ,EAAE;YACN,2BAA2B,EACvB,kHAAkH;SACzH;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,qCAAqC;CAC9C,CAAC,CAAC;AAEP,eAAe,oCAAoC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-relative-prompt-links`. */
|
|
2
3
|
declare const requireRelativePromptLinksRule: CopilotRuleModule;
|
|
3
4
|
export default requireRelativePromptLinksRule;
|
|
4
5
|
//# sourceMappingURL=require-relative-prompt-links.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-prompt-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-prompt-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-prompt-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-prompt-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AA+C7E,uDAAuD;AACvD,QAAA,MAAM,8BAA8B,EAAE,iBA2DpC,CAAC;AAEH,eAAe,8BAA8B,CAAC"}
|
|
@@ -6,6 +6,7 @@ import { getCopilotFileKind } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { extractFrontmatter } from "../_internal/frontmatter.js";
|
|
8
8
|
import { extractMarkdownLinks, isInvalidWorkspaceLinkDestination, } from "../_internal/markdown-links.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
9
10
|
const isInvalidPromptWorkspaceLinkDestination = (destination) => {
|
|
10
11
|
const normalizedDestination = destination.trim();
|
|
11
12
|
if (normalizedDestination.length === 0) {
|
|
@@ -26,6 +27,7 @@ const isInvalidPromptWorkspaceLinkDestination = (destination) => {
|
|
|
26
27
|
}
|
|
27
28
|
return isInvalidWorkspaceLinkDestination(normalizedDestination);
|
|
28
29
|
};
|
|
30
|
+
/** Rule module for `require-relative-prompt-links`. */
|
|
29
31
|
const requireRelativePromptLinksRule = createCopilotRule({
|
|
30
32
|
create(context) {
|
|
31
33
|
return {
|
|
@@ -68,6 +70,7 @@ const requireRelativePromptLinksRule = createCopilotRule({
|
|
|
68
70
|
frozen: false,
|
|
69
71
|
recommended: true,
|
|
70
72
|
requiresTypeChecking: false,
|
|
73
|
+
url: createRuleDocsUrl("require-relative-prompt-links"),
|
|
71
74
|
},
|
|
72
75
|
messages: {
|
|
73
76
|
nonRelativePromptLink: "Copilot prompt files should reference workspace files with relative Markdown links, not `{{destination}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-prompt-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-prompt-links.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-prompt-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-prompt-links.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,uCAAuC,GAAG,CAC5C,WAAmB,EACZ,EAAE;IACT,MAAM,qBAAqB,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC;IAEjD,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,oBAAoB,GAAG,qBAAqB,CAAC,WAAW,EAAE,CAAC;IAEjE,IACI,oBAAoB,CAAC,UAAU,CAAC,GAAG,CAAC;QACpC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC,EACxC,CAAC;QACC,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,IACI,oBAAoB,CAAC,UAAU,CAAC,GAAG,CAAC;QACpC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,oBAAoB,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,oBAAoB,CAAC,UAAU,CAAC,KAAK,CAAC;QACtC,oBAAoB,CAAC,UAAU,CAAC,OAAO,CAAC,EAC1C,CAAC;QACC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,OAAO,iCAAiC,CAAC,qBAAqB,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,uDAAuD;AACvD,MAAM,8BAA8B,GAAsB,iBAAiB,CAAC;IACxE,MAAM,CAAC,OAAO;QACV,OAAO;YACH,IAAI;gBACA,IAAI,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,QAAQ,EAAE,CAAC;oBACpD,OAAO;gBACX,CAAC;gBAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;gBAC3C,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;gBACnD,MAAM,IAAI,GAAG,WAAW,EAAE,IAAI,IAAI,UAAU,CAAC;gBAC7C,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAEnD,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,CAAC;oBACxD,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC;oBAE7B,IAAI,CAAC,uCAAuC,CAAC,WAAW,CAAC,EAAE,CAAC;wBACxD,SAAS;oBACb,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC;wBACX,IAAI,EAAE;4BACF,WAAW;yBACd;wBACD,GAAG,EAAE;4BACD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;4BACjD,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CACrC,IAAI,CAAC,KAAK,CACb;yBACJ;wBACD,SAAS,EAAE,uBAAuB;qBACrC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,kFAAkF;YACtF,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,+BAA+B,CAAC;SAC1D;QACD,QAAQ,EAAE;YACN,qBAAqB,EACjB,4GAA4G;SACnH;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,+BAA+B;CACxC,CAAC,CAAC;AAEH,eAAe,8BAA8B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-relative-repository-hook-cwd`. */
|
|
2
3
|
declare const requireRelativeRepositoryHookCwdRule: CopilotRuleModule;
|
|
3
4
|
export default requireRelativeRepositoryHookCwdRule;
|
|
4
5
|
//# sourceMappingURL=require-relative-repository-hook-cwd.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-repository-hook-cwd.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-repository-hook-cwd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-relative-repository-hook-cwd.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-repository-hook-cwd.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAiB7E,8DAA8D;AAC9D,QAAA,MAAM,oCAAoC,EAAE,iBAgEtC,CAAC;AAEP,eAAe,oCAAoC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isDefined } from "ts-extras";
|
|
1
2
|
/**
|
|
2
3
|
* @packageDocumentation
|
|
3
4
|
* ESLint rule implementation for `require-relative-repository-hook-cwd`.
|
|
@@ -7,6 +8,8 @@ import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
|
7
8
|
import { isNonRelativeWorkspacePath } from "../_internal/file-system.js";
|
|
8
9
|
import { reportAtDocumentStart } from "../_internal/markdown-rule.js";
|
|
9
10
|
import { getRepositoryHookObjects, isJsonString, parseJsonText, } from "../_internal/repository-hooks-json.js";
|
|
11
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
12
|
+
/** Rule module for `require-relative-repository-hook-cwd`. */
|
|
10
13
|
const requireRelativeRepositoryHookCwdRule = createCopilotRule({
|
|
11
14
|
create(context) {
|
|
12
15
|
return {
|
|
@@ -20,7 +23,7 @@ const requireRelativeRepositoryHookCwdRule = createCopilotRule({
|
|
|
20
23
|
return (isJsonString(cwd) &&
|
|
21
24
|
isNonRelativeWorkspacePath(cwd));
|
|
22
25
|
});
|
|
23
|
-
if (invalidHook
|
|
26
|
+
if (!isDefined(invalidHook)) {
|
|
24
27
|
return;
|
|
25
28
|
}
|
|
26
29
|
const cwd = invalidHook.hook["cwd"];
|
|
@@ -49,6 +52,7 @@ const requireRelativeRepositoryHookCwdRule = createCopilotRule({
|
|
|
49
52
|
frozen: false,
|
|
50
53
|
recommended: true,
|
|
51
54
|
requiresTypeChecking: false,
|
|
55
|
+
url: createRuleDocsUrl("require-relative-repository-hook-cwd"),
|
|
52
56
|
},
|
|
53
57
|
messages: {
|
|
54
58
|
nonRelativeRepositoryHookCwd: "Repository hook `cwd` values for `{{eventName}}` should use repository-relative paths, not `{{cwd}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-repository-hook-cwd.js","sourceRoot":"","sources":["../../src/rules/require-relative-repository-hook-cwd.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-relative-repository-hook-cwd.js","sourceRoot":"","sources":["../../src/rules/require-relative-repository-hook-cwd.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC;;;GAGG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACH,wBAAwB,EACxB,YAAY,EACZ,aAAa,GAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,8DAA8D;AAC9D,MAAM,oCAAoC,GACtC,iBAAiB,CAAC;IACd,MAAM,CAAC,OAAO;QACV,OAAO;YACH,QAAQ;gBACJ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC,IAAI,CACnD,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;oBACT,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;oBAExB,OAAO,CACH,YAAY,CAAC,GAAG,CAAC;wBACjB,0BAA0B,CAAC,GAAG,CAAC,CAClC,CAAC;gBACN,CAAC,CACJ,CAAC;gBAEF,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC1B,OAAO;gBACX,CAAC;gBAED,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEpC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrB,OAAO;gBACX,CAAC;gBAED,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,IAAI,EAAE;wBACF,GAAG;wBACH,SAAS,EAAE,WAAW,CAAC,SAAS;qBACnC;oBACD,SAAS,EAAE,8BAA8B;iBAC5C,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,wEAAwE;YAC5E,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,sCAAsC,CAAC;SACjE;QACD,QAAQ,EAAE;YACN,4BAA4B,EACxB,uGAAuG;SAC9G;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,sCAAsC;CAC/C,CAAC,CAAC;AAEP,eAAe,oCAAoC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-relative-skill-links`. */
|
|
2
3
|
declare const requireRelativeSkillLinksRule: CopilotRuleModule;
|
|
3
4
|
export default requireRelativeSkillLinksRule;
|
|
4
5
|
//# sourceMappingURL=require-relative-skill-links.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-skill-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-skill-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-skill-links.d.ts","sourceRoot":"","sources":["../../src/rules/require-relative-skill-links.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAe7E,sDAAsD;AACtD,QAAA,MAAM,6BAA6B,EAAE,iBAwDnC,CAAC;AAEH,eAAe,6BAA6B,CAAC"}
|
|
@@ -6,6 +6,8 @@ import { isSkillFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { getCustomizationBodyWithOffset } from "../_internal/customization-body.js";
|
|
8
8
|
import { extractMarkdownLinks, isInvalidWorkspaceLinkDestination, } from "../_internal/markdown-links.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
10
|
+
/** Rule module for `require-relative-skill-links`. */
|
|
9
11
|
const requireRelativeSkillLinksRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return {
|
|
@@ -44,6 +46,7 @@ const requireRelativeSkillLinksRule = createCopilotRule({
|
|
|
44
46
|
frozen: false,
|
|
45
47
|
recommended: true,
|
|
46
48
|
requiresTypeChecking: false,
|
|
49
|
+
url: createRuleDocsUrl("require-relative-skill-links"),
|
|
47
50
|
},
|
|
48
51
|
messages: {
|
|
49
52
|
nonRelativeSkillLink: "Copilot skill definition files should reference workspace resources with relative Markdown links, not `{{destination}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-relative-skill-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-skill-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-relative-skill-links.js","sourceRoot":"","sources":["../../src/rules/require-relative-skill-links.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,8BAA8B,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,EACH,oBAAoB,EACpB,iCAAiC,GACpC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,sDAAsD;AACtD,MAAM,6BAA6B,GAAsB,iBAAiB,CAAC;IACvE,MAAM,CAAC,OAAO;QACV,OAAO;YACH,IAAI;gBACA,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACrC,OAAO;gBACX,CAAC;gBAED,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,8BAA8B,CACnD,OAAO,CAAC,UAAU,CAAC,IAAI,CAC1B,CAAC;gBAEF,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;oBACpD,IAAI,CAAC,iCAAiC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;wBACvD,SAAS;oBACb,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC;wBACX,IAAI,EAAE;4BACF,WAAW,EAAE,IAAI,CAAC,WAAW;yBAChC;wBACD,GAAG,EAAE;4BACD,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC;4BACjD,KAAK,EAAE,OAAO,CAAC,UAAU,CAAC,eAAe,CACrC,IAAI,CAAC,KAAK,CACb;yBACJ;wBACD,SAAS,EAAE,sBAAsB;qBACpC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,gGAAgG;YACpG,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,8BAA8B,CAAC;SACzD;QACD,QAAQ,EAAE;YACN,oBAAoB,EAChB,0HAA0H;SACjI;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,8BAA8B;CACvC,CAAC,CAAC;AAEH,eAAe,6BAA6B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-repository-hook-arrays`. */
|
|
2
3
|
declare const requireRepositoryHookArraysRule: CopilotRuleModule;
|
|
3
4
|
export default requireRepositoryHookArraysRule;
|
|
4
5
|
//# sourceMappingURL=require-repository-hook-arrays.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hook-arrays.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hook-arrays.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-repository-hook-arrays.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hook-arrays.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAiB7E,wDAAwD;AACxD,QAAA,MAAM,+BAA+B,EAAE,iBAmDrC,CAAC;AAEH,eAAe,+BAA+B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { arrayFirst } from "ts-extras";
|
|
1
2
|
/**
|
|
2
3
|
* @packageDocumentation
|
|
3
4
|
* ESLint rule implementation for `require-repository-hook-arrays`.
|
|
@@ -6,6 +7,8 @@ import { isRepositoryHookFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
7
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
8
|
import { reportAtDocumentStart } from "../_internal/markdown-rule.js";
|
|
8
9
|
import { formatJsonValue, getRepositoryHookEventEntries, isJsonArray, parseJsonText, } from "../_internal/repository-hooks-json.js";
|
|
10
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
11
|
+
/** Rule module for `require-repository-hook-arrays`. */
|
|
9
12
|
const requireRepositoryHookArraysRule = createCopilotRule({
|
|
10
13
|
create(context) {
|
|
11
14
|
return {
|
|
@@ -14,13 +17,13 @@ const requireRepositoryHookArraysRule = createCopilotRule({
|
|
|
14
17
|
return;
|
|
15
18
|
}
|
|
16
19
|
const root = parseJsonText(context.sourceCode.text);
|
|
17
|
-
const invalidEntry = getRepositoryHookEventEntries(root).find(([, eventValue]) => !isJsonArray(eventValue));
|
|
18
|
-
if (invalidEntry ===
|
|
20
|
+
const invalidEntry = getRepositoryHookEventEntries(root).find(([, eventValue]) => !isJsonArray(eventValue)) ?? null;
|
|
21
|
+
if (invalidEntry === null) {
|
|
19
22
|
return;
|
|
20
23
|
}
|
|
21
24
|
reportAtDocumentStart(context, {
|
|
22
25
|
data: {
|
|
23
|
-
eventName: invalidEntry
|
|
26
|
+
eventName: arrayFirst(invalidEntry),
|
|
24
27
|
value: formatJsonValue(invalidEntry[1]),
|
|
25
28
|
},
|
|
26
29
|
messageId: "invalidRepositoryHookArray",
|
|
@@ -40,6 +43,7 @@ const requireRepositoryHookArraysRule = createCopilotRule({
|
|
|
40
43
|
frozen: false,
|
|
41
44
|
recommended: true,
|
|
42
45
|
requiresTypeChecking: false,
|
|
46
|
+
url: createRuleDocsUrl("require-repository-hook-arrays"),
|
|
43
47
|
},
|
|
44
48
|
messages: {
|
|
45
49
|
invalidRepositoryHookArray: "Repository hook event `{{eventName}}` must map to an array of hook definitions (current value: `{{value}}`).",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hook-arrays.js","sourceRoot":"","sources":["../../src/rules/require-repository-hook-arrays.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-repository-hook-arrays.js","sourceRoot":"","sources":["../../src/rules/require-repository-hook-arrays.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIvC;;;GAGG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACH,eAAe,EACf,6BAA6B,EAC7B,WAAW,EACX,aAAa,GAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,wDAAwD;AACxD,MAAM,+BAA+B,GAAsB,iBAAiB,CAAC;IACzE,MAAM,CAAC,OAAO;QACV,OAAO;YACH,QAAQ;gBACJ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,YAAY,GACd,6BAA6B,CAAC,IAAI,CAAC,CAAC,IAAI,CACpC,CAAC,CAAC,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,WAAW,CAAC,UAAU,CAAC,CAC/C,IAAI,IAAI,CAAC;gBAEd,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oBACxB,OAAO;gBACX,CAAC;gBAED,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,IAAI,EAAE;wBACF,SAAS,EAAE,UAAU,CAAC,YAAY,CAAC;wBACnC,KAAK,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;qBAC1C;oBACD,SAAS,EAAE,4BAA4B;iBAC1C,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,qEAAqE;YACzE,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,gCAAgC,CAAC;SAC3D;QACD,QAAQ,EAAE;YACN,0BAA0B,EACtB,8GAA8G;SACrH;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,gCAAgC;CACzC,CAAC,CAAC;AAEH,eAAe,+BAA+B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-repository-hook-command-shell`. */
|
|
2
3
|
declare const requireRepositoryHookCommandShellRule: CopilotRuleModule;
|
|
3
4
|
export default requireRepositoryHookCommandShellRule;
|
|
4
5
|
//# sourceMappingURL=require-repository-hook-command-shell.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hook-command-shell.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hook-command-shell.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-repository-hook-command-shell.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hook-command-shell.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAmB7E,+DAA+D;AAC/D,QAAA,MAAM,qCAAqC,EAAE,iBAsDvC,CAAC;AAEP,eAAe,qCAAqC,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isDefined } from "ts-extras";
|
|
1
2
|
/**
|
|
2
3
|
* @packageDocumentation
|
|
3
4
|
* ESLint rule implementation for `require-repository-hook-command-shell`.
|
|
@@ -6,7 +7,9 @@ import { isRepositoryHookFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
7
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
8
|
import { reportAtDocumentStart } from "../_internal/markdown-rule.js";
|
|
8
9
|
import { getRepositoryHookObjects, isJsonString, parseJsonText, } from "../_internal/repository-hooks-json.js";
|
|
10
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
9
11
|
const hasHookShellCommand = (value) => typeof value === "string" && value.trim().length > 0;
|
|
12
|
+
/** Rule module for `require-repository-hook-command-shell`. */
|
|
10
13
|
const requireRepositoryHookCommandShellRule = createCopilotRule({
|
|
11
14
|
create(context) {
|
|
12
15
|
return {
|
|
@@ -19,7 +22,7 @@ const requireRepositoryHookCommandShellRule = createCopilotRule({
|
|
|
19
22
|
hook["type"] === "command" &&
|
|
20
23
|
!hasHookShellCommand(hook["bash"]) &&
|
|
21
24
|
!hasHookShellCommand(hook["powershell"]));
|
|
22
|
-
if (invalidHook
|
|
25
|
+
if (!isDefined(invalidHook)) {
|
|
23
26
|
return;
|
|
24
27
|
}
|
|
25
28
|
reportAtDocumentStart(context, {
|
|
@@ -43,6 +46,7 @@ const requireRepositoryHookCommandShellRule = createCopilotRule({
|
|
|
43
46
|
frozen: false,
|
|
44
47
|
recommended: true,
|
|
45
48
|
requiresTypeChecking: false,
|
|
49
|
+
url: createRuleDocsUrl("require-repository-hook-command-shell"),
|
|
46
50
|
},
|
|
47
51
|
messages: {
|
|
48
52
|
missingRepositoryHookShellCommand: "Repository `command` hooks for `{{eventName}}` must declare a non-empty `bash` or `powershell` command.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hook-command-shell.js","sourceRoot":"","sources":["../../src/rules/require-repository-hook-command-shell.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-repository-hook-command-shell.js","sourceRoot":"","sources":["../../src/rules/require-repository-hook-command-shell.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC;;;GAGG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACH,wBAAwB,EACxB,YAAY,EACZ,aAAa,GAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,MAAM,mBAAmB,GAAG,CAAC,KAAc,EAAW,EAAE,CACpD,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AAEzD,+DAA+D;AAC/D,MAAM,qCAAqC,GACvC,iBAAiB,CAAC;IACd,MAAM,CAAC,OAAO;QACV,OAAO;YACH,QAAQ;gBACJ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,WAAW,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC,IAAI,CACnD,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CACT,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC1B,IAAI,CAAC,MAAM,CAAC,KAAK,SAAS;oBAC1B,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAClC,CAAC,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAC/C,CAAC;gBAEF,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;oBAC1B,OAAO;gBACX,CAAC;gBAED,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,IAAI,EAAE;wBACF,SAAS,EAAE,WAAW,CAAC,SAAS;qBACnC;oBACD,SAAS,EAAE,mCAAmC;iBACjD,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,mHAAmH;YACvH,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,uCAAuC,CAAC;SAClE;QACD,QAAQ,EAAE;YACN,iCAAiC,EAC7B,yGAAyG;SAChH;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,uCAAuC;CAChD,CAAC,CAAC;AAEP,eAAe,qCAAqC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-repository-hooks-object`. */
|
|
2
3
|
declare const requireRepositoryHooksObjectRule: CopilotRuleModule;
|
|
3
4
|
export default requireRepositoryHooksObjectRule;
|
|
4
5
|
//# sourceMappingURL=require-repository-hooks-object.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hooks-object.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hooks-object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-repository-hooks-object.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-hooks-object.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAgB7E,yDAAyD;AACzD,QAAA,MAAM,gCAAgC,EAAE,iBA4CtC,CAAC;AAEH,eAAe,gCAAgC,CAAC"}
|
|
@@ -6,6 +6,8 @@ import { isRepositoryHookFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { reportAtDocumentStart } from "../_internal/markdown-rule.js";
|
|
8
8
|
import { getRepositoryHooksValue, isJsonObject, parseJsonText, } from "../_internal/repository-hooks-json.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
10
|
+
/** Rule module for `require-repository-hooks-object`. */
|
|
9
11
|
const requireRepositoryHooksObjectRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return {
|
|
@@ -36,6 +38,7 @@ const requireRepositoryHooksObjectRule = createCopilotRule({
|
|
|
36
38
|
frozen: false,
|
|
37
39
|
recommended: true,
|
|
38
40
|
requiresTypeChecking: false,
|
|
41
|
+
url: createRuleDocsUrl("require-repository-hooks-object"),
|
|
39
42
|
},
|
|
40
43
|
messages: {
|
|
41
44
|
invalidRepositoryHooksObject: "Repository hook configuration files must declare a top-level `hooks` object.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-hooks-object.js","sourceRoot":"","sources":["../../src/rules/require-repository-hooks-object.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACH,uBAAuB,EACvB,YAAY,EACZ,aAAa,GAChB,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-repository-hooks-object.js","sourceRoot":"","sources":["../../src/rules/require-repository-hooks-object.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EACH,uBAAuB,EACvB,YAAY,EACZ,aAAa,GAChB,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,yDAAyD;AACzD,MAAM,gCAAgC,GAAsB,iBAAiB,CAAC;IAC1E,MAAM,CAAC,OAAO;QACV,OAAO;YACH,QAAQ;gBACJ,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9C,OAAO;gBACX,CAAC;gBAED,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gBACpD,MAAM,UAAU,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAEjD,IAAI,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC3B,OAAO;gBACX,CAAC;gBAED,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,SAAS,EAAE,8BAA8B;iBAC5C,CAAC,CAAC;YACP,CAAC;SACJ,CAAC;IACN,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,oFAAoF;YACxF,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,iCAAiC,CAAC;SAC5D;QACD,QAAQ,EAAE;YACN,4BAA4B,EACxB,8EAA8E;SACrF;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,iCAAiC;CAC1C,CAAC,CAAC;AAEH,eAAe,gCAAgC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-repository-instructions-file`. */
|
|
2
3
|
declare const requireRepositoryInstructionsFileRule: CopilotRuleModule;
|
|
3
4
|
export default requireRepositoryInstructionsFileRule;
|
|
4
5
|
//# sourceMappingURL=require-repository-instructions-file.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-instructions-file.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-instructions-file.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-repository-instructions-file.d.ts","sourceRoot":"","sources":["../../src/rules/require-repository-instructions-file.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAa7E,8DAA8D;AAC9D,QAAA,MAAM,qCAAqC,EAAE,iBAsDvC,CAAC;AAEP,eAAe,qCAAqC,CAAC"}
|
|
@@ -6,6 +6,8 @@ import * as fs from "node:fs";
|
|
|
6
6
|
import { getCopilotFileKind, getRepositoryInstructionsPaths, } from "../_internal/copilot-file-kind.js";
|
|
7
7
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
8
8
|
import { createMarkdownDocumentListener, reportAtDocumentStart, } from "../_internal/markdown-rule.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
10
|
+
/** Rule module for `require-repository-instructions-file`. */
|
|
9
11
|
const requireRepositoryInstructionsFileRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return createMarkdownDocumentListener(() => {
|
|
@@ -36,6 +38,7 @@ const requireRepositoryInstructionsFileRule = createCopilotRule({
|
|
|
36
38
|
frozen: false,
|
|
37
39
|
recommended: false,
|
|
38
40
|
requiresTypeChecking: false,
|
|
41
|
+
url: createRuleDocsUrl("require-repository-instructions-file"),
|
|
39
42
|
},
|
|
40
43
|
messages: {
|
|
41
44
|
missingRepositoryInstructions: "Repositories that define Copilot prompts, custom agents, legacy chat modes, agent instructions, or path-specific instructions should also provide baseline repository guidance in `.github/copilot-instructions.md` or `.github/instructions/copilot-instructions.md`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-repository-instructions-file.js","sourceRoot":"","sources":["../../src/rules/require-repository-instructions-file.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAI9B,OAAO,EACH,kBAAkB,EAClB,8BAA8B,GACjC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"require-repository-instructions-file.js","sourceRoot":"","sources":["../../src/rules/require-repository-instructions-file.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAI9B,OAAO,EACH,kBAAkB,EAClB,8BAA8B,GACjC,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,8DAA8D;AAC9D,MAAM,qCAAqC,GACvC,iBAAiB,CAAC;IACd,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAEtD,IACI,QAAQ,KAAK,oBAAoB;gBACjC,QAAQ,KAAK,UAAU;gBACvB,QAAQ,KAAK,cAAc;gBAC3B,QAAQ,KAAK,QAAQ,EACvB,CAAC;gBACC,OAAO;YACX,CAAC;YAED,MAAM,2BAA2B,GAC7B,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAErD,IACI,2BAA2B,CAAC,IAAI,CAC5B,CAAC,0BAA0B,EAAE,EAAE,CAC3B,EAAE,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAChD,EACH,CAAC;gBACC,OAAO;YACX,CAAC;YAED,qBAAqB,CAAC,OAAO,EAAE;gBAC3B,SAAS,EAAE,+BAA+B;aAC7C,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,gMAAgM;YACpM,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,KAAK;YAClB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,sCAAsC,CAAC;SACjE;QACD,QAAQ,EAAE;YACN,6BAA6B,EACzB,wQAAwQ;SAC/Q;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,YAAY;KACrB;IACD,IAAI,EAAE,sCAAsC;CAC/C,CAAC,CAAC;AAEP,eAAe,qCAAqC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-skill-file-location`. */
|
|
2
3
|
declare const requireSkillFileLocationRule: CopilotRuleModule;
|
|
3
4
|
export default requireSkillFileLocationRule;
|
|
4
5
|
//# sourceMappingURL=require-skill-file-location.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-file-location.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-file-location.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-skill-file-location.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-file-location.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAU7E,qDAAqD;AACrD,QAAA,MAAM,4BAA4B,EAAE,iBAuClC,CAAC;AAEH,eAAe,4BAA4B,CAAC"}
|
|
@@ -5,7 +5,9 @@
|
|
|
5
5
|
import * as path from "node:path";
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { createMarkdownDocumentListener, reportAtDocumentStart, } from "../_internal/markdown-rule.js";
|
|
8
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
8
9
|
import { isValidSkillDefinitionLocation } from "../_internal/skill-files.js";
|
|
10
|
+
/** Rule module for `require-skill-file-location`. */
|
|
9
11
|
const requireSkillFileLocationRule = createCopilotRule({
|
|
10
12
|
create(context) {
|
|
11
13
|
return createMarkdownDocumentListener(() => {
|
|
@@ -32,6 +34,7 @@ const requireSkillFileLocationRule = createCopilotRule({
|
|
|
32
34
|
frozen: false,
|
|
33
35
|
recommended: true,
|
|
34
36
|
requiresTypeChecking: false,
|
|
37
|
+
url: createRuleDocsUrl("require-skill-file-location"),
|
|
35
38
|
},
|
|
36
39
|
messages: {
|
|
37
40
|
invalidSkillLocation: "Copilot skill definition files should live at `.github/skills/<skill>/SKILL.md` or `.claude/skills/<skill>/SKILL.md`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-file-location.js","sourceRoot":"","sources":["../../src/rules/require-skill-file-location.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAE7E,MAAM,4BAA4B,GAAsB,iBAAiB,CAAC;IACtE,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;gBACjD,OAAO;YACX,CAAC;YAED,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnD,OAAO;YACX,CAAC;YAED,qBAAqB,CAAC,OAAO,EAAE;gBAC3B,SAAS,EAAE,sBAAsB;aACpC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,6IAA6I;YACjJ,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"require-skill-file-location.js","sourceRoot":"","sources":["../../src/rules/require-skill-file-location.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,8BAA8B,EAAE,MAAM,6BAA6B,CAAC;AAE7E,qDAAqD;AACrD,MAAM,4BAA4B,GAAsB,iBAAiB,CAAC;IACtE,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,UAAU,EAAE,CAAC;gBACjD,OAAO;YACX,CAAC;YAED,IAAI,8BAA8B,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnD,OAAO;YACX,CAAC;YAED,qBAAqB,CAAC,OAAO,EAAE;gBAC3B,SAAS,EAAE,sBAAsB;aACpC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,6IAA6I;YACjJ,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,6BAA6B,CAAC;SACxD;QACD,QAAQ,EAAE;YACN,oBAAoB,EAChB,uHAAuH;SAC9H;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,6BAA6B;CACtC,CAAC,CAAC;AAEH,eAAe,4BAA4B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-skill-file-metadata`. */
|
|
2
3
|
declare const requireSkillFileMetadataRule: CopilotRuleModule;
|
|
3
4
|
export default requireSkillFileMetadataRule;
|
|
4
5
|
//# sourceMappingURL=require-skill-file-metadata.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-file-metadata.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-file-metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-skill-file-metadata.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-file-metadata.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAkB7E,qDAAqD;AACrD,QAAA,MAAM,4BAA4B,EAAE,iBAyDlC,CAAC;AAEH,eAAe,4BAA4B,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { isDefined } from "ts-extras";
|
|
1
2
|
import { isSkillFilePath } from "../_internal/copilot-file-kind.js";
|
|
2
3
|
/**
|
|
3
4
|
* @packageDocumentation
|
|
@@ -6,6 +7,8 @@ import { isSkillFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
7
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
8
|
import { extractFrontmatter, getFrontmatterScalar, } from "../_internal/frontmatter.js";
|
|
8
9
|
import { createMarkdownDocumentListener, reportAtDocumentStart, } from "../_internal/markdown-rule.js";
|
|
10
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
11
|
+
/** Rule module for `require-skill-file-metadata`. */
|
|
9
12
|
const requireSkillFileMetadataRule = createCopilotRule({
|
|
10
13
|
create(context) {
|
|
11
14
|
return createMarkdownDocumentListener(() => {
|
|
@@ -19,13 +22,13 @@ const requireSkillFileMetadataRule = createCopilotRule({
|
|
|
19
22
|
});
|
|
20
23
|
return;
|
|
21
24
|
}
|
|
22
|
-
if (getFrontmatterScalar(frontmatter, "name")
|
|
25
|
+
if (!isDefined(getFrontmatterScalar(frontmatter, "name"))) {
|
|
23
26
|
reportAtDocumentStart(context, {
|
|
24
27
|
messageId: "missingSkillName",
|
|
25
28
|
});
|
|
26
29
|
return;
|
|
27
30
|
}
|
|
28
|
-
if (getFrontmatterScalar(frontmatter, "description")
|
|
31
|
+
if (!isDefined(getFrontmatterScalar(frontmatter, "description"))) {
|
|
29
32
|
reportAtDocumentStart(context, {
|
|
30
33
|
messageId: "missingSkillDescription",
|
|
31
34
|
});
|
|
@@ -44,6 +47,7 @@ const requireSkillFileMetadataRule = createCopilotRule({
|
|
|
44
47
|
frozen: false,
|
|
45
48
|
recommended: true,
|
|
46
49
|
requiresTypeChecking: false,
|
|
50
|
+
url: createRuleDocsUrl("require-skill-file-metadata"),
|
|
47
51
|
},
|
|
48
52
|
messages: {
|
|
49
53
|
missingSkillDescription: "Copilot skill definition files must declare a non-empty `description` frontmatter value.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-file-metadata.js","sourceRoot":"","sources":["../../src/rules/require-skill-file-metadata.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-skill-file-metadata.js","sourceRoot":"","sources":["../../src/rules/require-skill-file-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAItC,OAAO,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AACpE;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EACH,kBAAkB,EAClB,oBAAoB,GACvB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAElE,qDAAqD;AACrD,MAAM,4BAA4B,GAAsB,iBAAiB,CAAC;IACtE,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrC,OAAO;YACX,CAAC;YAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEhE,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACvB,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,SAAS,EAAE,yBAAyB;iBACvC,CAAC,CAAC;gBACH,OAAO;YACX,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBACxD,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,SAAS,EAAE,kBAAkB;iBAChC,CAAC,CAAC;gBACH,OAAO;YACX,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;gBAC/D,qBAAqB,CAAC,OAAO,EAAE;oBAC3B,SAAS,EAAE,yBAAyB;iBACvC,CAAC,CAAC;YACP,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,yFAAyF;YAC7F,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,6BAA6B,CAAC;SACxD;QACD,QAAQ,EAAE;YACN,uBAAuB,EACnB,0FAA0F;YAC9F,uBAAuB,EACnB,kHAAkH;YACtH,gBAAgB,EACZ,mFAAmF;SAC1F;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,6BAA6B;CACtC,CAAC,CAAC;AAEH,eAAe,4BAA4B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-skill-md-filename`. */
|
|
2
3
|
declare const requireSkillMdFilenameRule: CopilotRuleModule;
|
|
3
4
|
export default requireSkillMdFilenameRule;
|
|
4
5
|
//# sourceMappingURL=require-skill-md-filename.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-md-filename.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-md-filename.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"require-skill-md-filename.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-md-filename.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAmB7E,mDAAmD;AACnD,QAAA,MAAM,0BAA0B,EAAE,iBAkDhC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
|
|
@@ -6,7 +6,9 @@ import { isSkillMarkdownFilePath } from "../_internal/copilot-file-kind.js";
|
|
|
6
6
|
import { createCopilotRule } from "../_internal/create-copilot-rule.js";
|
|
7
7
|
import { extractFrontmatter } from "../_internal/frontmatter.js";
|
|
8
8
|
import { createMarkdownDocumentListener, reportAtDocumentStart, } from "../_internal/markdown-rule.js";
|
|
9
|
+
import { createRuleDocsUrl } from "../_internal/rule-docs-url.js";
|
|
9
10
|
import { getSkillFileBasename, looksLikeSkillDefinitionDocument, } from "../_internal/skill-files.js";
|
|
11
|
+
/** Rule module for `require-skill-md-filename`. */
|
|
10
12
|
const requireSkillMdFilenameRule = createCopilotRule({
|
|
11
13
|
create(context) {
|
|
12
14
|
return createMarkdownDocumentListener(() => {
|
|
@@ -41,6 +43,7 @@ const requireSkillMdFilenameRule = createCopilotRule({
|
|
|
41
43
|
frozen: false,
|
|
42
44
|
recommended: true,
|
|
43
45
|
requiresTypeChecking: false,
|
|
46
|
+
url: createRuleDocsUrl("require-skill-md-filename"),
|
|
44
47
|
},
|
|
45
48
|
messages: {
|
|
46
49
|
invalidSkillDefinitionFilename: "Skill-definition markdown files should be named `SKILL.md`, not `{{basename}}`.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-md-filename.js","sourceRoot":"","sources":["../../src/rules/require-skill-md-filename.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACH,oBAAoB,EACpB,gCAAgC,GACnC,MAAM,6BAA6B,CAAC;AAErC,MAAM,0BAA0B,GAAsB,iBAAiB,CAAC;IACpE,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAExD,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC1B,OAAO;YACX,CAAC;YAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEhE,IAAI,CAAC,gCAAgC,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjD,OAAO;YACX,CAAC;YAED,qBAAqB,CAAC,OAAO,EAAE;gBAC3B,IAAI,EAAE;oBACF,QAAQ;iBACX;gBACD,SAAS,EAAE,gCAAgC;aAC9C,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,6GAA6G;YACjH,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"require-skill-md-filename.js","sourceRoot":"","sources":["../../src/rules/require-skill-md-filename.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E;;;GAGG;AACH,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EACH,8BAA8B,EAC9B,qBAAqB,GACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EACH,oBAAoB,EACpB,gCAAgC,GACnC,MAAM,6BAA6B,CAAC;AAErC,mDAAmD;AACnD,MAAM,0BAA0B,GAAsB,iBAAiB,CAAC;IACpE,MAAM,CAAC,OAAO;QACV,OAAO,8BAA8B,CAAC,GAAG,EAAE;YACvC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7C,OAAO;YACX,CAAC;YAED,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAExD,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBAC1B,OAAO;YACX,CAAC;YAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEhE,IAAI,CAAC,gCAAgC,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjD,OAAO;YACX,CAAC;YAED,qBAAqB,CAAC,OAAO,EAAE;gBAC3B,IAAI,EAAE;oBACF,QAAQ;iBACX;gBACD,SAAS,EAAE,gCAAgC;aAC9C,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACD,IAAI,EAAE;QACF,UAAU,EAAE,KAAK;QACjB,IAAI,EAAE;YACF,cAAc,EAAE;gBACZ,6BAA6B;gBAC7B,wBAAwB;gBACxB,qBAAqB;aACxB;YACD,WAAW,EACP,6GAA6G;YACjH,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,IAAI;YACjB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,EAAE,iBAAiB,CAAC,2BAA2B,CAAC;SACtD;QACD,QAAQ,EAAE;YACN,8BAA8B,EAC1B,iFAAiF;SACxF;QACD,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,SAAS;KAClB;IACD,IAAI,EAAE,2BAA2B;CACpC,CAAC,CAAC;AAEH,eAAe,0BAA0B,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { CopilotRuleModule } from "../_internal/create-copilot-rule.js";
|
|
2
|
+
/** Rule module for `require-skill-name-match-directory`. */
|
|
2
3
|
declare const requireSkillNameMatchDirectoryRule: CopilotRuleModule;
|
|
3
4
|
export default requireSkillNameMatchDirectoryRule;
|
|
4
5
|
//# sourceMappingURL=require-skill-name-match-directory.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"require-skill-name-match-directory.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-name-match-directory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"require-skill-name-match-directory.d.ts","sourceRoot":"","sources":["../../src/rules/require-skill-name-match-directory.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAsB7E,4DAA4D;AAC5D,QAAA,MAAM,kCAAkC,EAAE,iBAyDzC,CAAC;AAEF,eAAe,kCAAkC,CAAC"}
|