coldfusion-cfm — правило для GitHub Copilot: что делает и установка
Правило задаёт стандарты для ColdFusion-файлов *.cfm: синтаксис, безопасность запросов и структуру приложения. Оно срабатывает при работе с такими файлами.
.github/instructions/coldfusion-cfm.instructions.mdЧто делает coldfusion-cfm
Правило применяется к файлам по шаблону **/*.cfm. Оно советует использовать CFScript, единые имена переменных и компонентов, отказываться от устаревших тегов и функций, а общую логику выносить в CFC. Для настроек приложения и обработки запросов предусмотрен Application.cfc, а общие шаблоны подключаются через cfinclude без циклических включений.
В правилах отдельно закреплены cfqueryparam для защиты SQL-запросов, проверка и очистка пользовательского ввода, обработка ошибок через cftry/cfcatch и запрет на хранение секретов в исходниках. Внутри <cfoutput> символ # для CSS и HTMX нужно экранировать как ##. Для HTMX target-файла первой строкой должна быть <cfsetting showDebugOutput = "false">.
Правило также задаёт отступ в 2 пробела, выравнивание табуляции, комментарии для сложной логики и документацию функций. Без cfqueryparam запросы с пользовательскими значениями расходятся с этим стандартом.
Какие задачи решает
- оформить файл ColdFusion по единым соглашениям
- защитить SQL-запрос от инъекций через
cfqueryparam - обработать ошибки с помощью
cftry/cfcatch - экранировать
#в блоках<cfoutput> - разнести логику по переиспользуемым CFC
Примеры запросов агенту
- Проверь файл
profile.cfmпо правилам ColdFusion и исправь найденные проблемы. - Добавь в запрос из
users.cfmзащиту пользовательских значений черезcfqueryparam. - Создай HTMX target-файл и добавь первой строкой
<cfsetting showDebugOutput = "false">.
Как установить coldfusion-cfm
Вручную: положить файлы
.github/instructions/coldfusion-cfm.instructions.mdПоле applyTo задаёт, к каким файлам применять
Вручную: положить файлы
.claude/rules/coldfusion-cfm.mdПоле paths во frontmatter ограничивает файлы: applyTo из источника → paths
AGENTS.md
Codex читает AGENTS.md: вставьте текст правила туда
Вручную: положить файлы
.cursor/rules/coldfusion-cfm.mdcВо frontmatter: description, globs, alwaysApply. applyTo из источника → globs, иначе правило само не подключится
Вручную: положить файлы
.devin/rules/coldfusion-cfm.mdВручную: положить файлы
.clinerules/coldfusion-cfm.mdПо шагам, с командами для каждой платформы: AGENTS.md и CLAUDE.md: что это, кто читает и какой выбрать
Вопросы о coldfusion-cfm
Как установить coldfusion-cfm в GitHub Copilot?
Добавьте файл в проект по пути .github/instructions/coldfusion-cfm.instructions.md. GitHub Copilot применит правило к файлам **/*.cfm.
Что делает coldfusion-cfm?
Правило задаёт соглашения для ColdFusion: рекомендует CFScript и CFC, описывает работу с Application.cfc, проверку ввода, обработку ошибок и безопасные запросы через cfqueryparam.
Что нужно сделать с символом # в HTMX внутри <cfoutput>?
Экранируйте его двойным символом ##, чтобы ColdFusion не интерпретировал его как переменную. В HTMX target-файле первой строкой также должна быть <cfsetting showDebugOutput = "false">.
Исходный текст
coldfusion-cfm.instructions.md · MIT
--- description: 'ColdFusion cfm files and application patterns' applyTo: "**/*.cfm" --- # ColdFusion Coding Standards - Use CFScript where possible for cleaner syntax. - Avoid using deprecated tags and functions. - Follow consistent naming conventions for variables and components. - Use `cfqueryparam` to prevent SQL injection. - Escape CSS hash symbols inside <cfoutput> blocks using ## - When using HTMX inside <cfoutput> blocks, escape hash symbols (#) by using double hashes (##) to prevent unintended variable interpolation. - If you are in a HTMX target file then make sure the top line is: <cfsetting showDebugOutput = "false"> # Additional Best Practices - Use `Application.cfc` for application settings and request handling. - Organize code into reusable CFCs (components) for maintainability. - Validate and sanitize all user input. - Use `cftry`/`cfcatch` for error handling and logging. - Avoid hardcoding credentials or sensitive data in source files. - Use consistent indentation (2 spaces, as per global standards). - Comment complex logic and document functions with purpose and parameters. - Prefer `cfinclude` for shared templates, but avoid circular includes. - Use ternary operators where possible - Ensure consistent tab alignment.
© github · MIT · github/awesome-copilot