Copilot Instruction: Moodle
Copilot Instruction: Moodle is a verified IDE_RULE blueprint on Promptally in Cross-Agent Directives optimized for leading AI models. Copilot_Instruction specification for Copilot Instruction: Moodle. Available to explore, customize with pre-filled variables, and copy with zero authentication required.
Technical Specifications
| Specification | Value |
|---|---|
| Artifact type | IDE RULE (Cross-Agent Directives) |
| Compatible engines | Universal / Model Agnostic |
| Input variables | None (pre-filled) |
| Approximate tokens | 591 |
| Source file | AGENTS.md |
| Access tier | Free public (MIT) |
Pre-Filled Template
--- applyTo: '**/*.php, **/*.js, **/*.mustache, **/*.xml, **/*.css, **/*.scss' description: 'Instructions for GitHub Copilot to generate code in a Moodle project context.' --- # Project Context This repository contains a Moodle project. Ensure that any generated code is compatible with the specific Moodle version used in this project (for example, Moodle 3.11, 4.1 LTS, or later). It includes: - Plugin development (local, block, mod, auth, enrol, tool, etc.) - Theme customization - CLI scripts - Integrations with external services using the Moodle API # Code Standards - Follow the official Moodle Coding guidelines: https://moodledev.io/general/development/policies/codingstyle - PHP must be compatible with the core version (e.g., PHP 7.4 / 8.0 / 8.1). - Do not use modern syntax that is not supported by core if it breaks compatibility. - Class naming must use Moodle namespaces. - Follow Moodle’s standard plugin directory layout (for example: classes/output, classes/form, db/, lang/, templates/…). - Mandatory use of Moodle security functions: - `$DB` with SQL placeholders - `require_login()`, `require_capability()` - Parameters handled with `required_param()` / `optional_param()` # Code Generation Rules - When creating new PHP classes in plugins, use the Moodle component (Frankenstyle) namespace that matches the plugin's component name, e.g. `local_myplugin`, `mod_forum`, `block_mycatalog`, `tool_mytool`. - In plugins, always respect the structure: - /db - /lang - /classes - /templates - /version.php - /settings.php - /lib.php (only if necessary) - Use renderers and Mustache templates for HTML. Do not mix HTML inside PHP. - In JavaScript code, use AMD modules, not inline scripts. - Prefer Moodle API functions over manual code whenever possible. - Do not invent Moodle functions that do not exist. # Examples of What Copilot Should Be Able to Answer - "Generate a basic local plugin with version.php, settings.php, and lib.php." - "Create a new table in db/install.xml and an upgrade script in db/upgrade.php." - "Generate a Moodle form using moodleform." - "Create a renderer with Mustache to display a table." # Expected Style - Clear and specific answers in the Moodle context. - Always include files with full paths. - If there are multiple ways to do something, use the approach recommended by Moodle.
How to use this ide rule
- Review the pre-filled example and source files above.
- Copy the template or download
AGENTS.md, then use it in your model, IDE, or workflow tool. - Compare your result with the sample output when one is provided.
Frequently Asked Questions
How do I use Copilot Instruction: Moodle?
Open the ide rule on Promptally, review the pre-filled example, then copy the template or download AGENTS.md and paste it into your model, IDE or workflow tool. Copilot Instruction: Moodle is a static blueprint with no dynamic variables. Copy it and use it as-is.
Is Copilot Instruction: Moodle free?
Yes. Copilot Instruction: Moodle is free to view, copy and download on Promptally without creating an account. It is published under the MIT license.
What variables does Copilot Instruction: Moodle need?
Copilot Instruction: Moodle is a static blueprint with no dynamic variables. Copy it and use it as-is.