Skip to main content

skill-pilot-extension

Create, update, install, uninstall, or use Skill Pilot extensions under `extensions/`, including optional extension-specific agent guidance.

Informations de source

Dépôt
X-School-Academy/skill-pilot
Dernière activité de la source
17 avril 2026 à 12:13
Langue détectée de SKILL.md
anglais
Étoiles
20
Forks
13

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Explorateur de fichiers
3 fichiers

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
skill-pilot-extension
description
Create, update, install, uninstall, or use Skill Pilot extensions under `extensions/`, including optional extension-specific agent guidance.
# AI Builder - Skill Pilot Extension This skill creates or updates Skill Pilot extensions that appear in the WebUI Extensions screen. ## When to Use This Skill - The user asks to create a new extension under `extensions/` - The user asks to update an existing Skill Pilot extension - The user wants to add or change `extension.json5` - The user wants to add a `prompt`, `skill`, or `script` extension type - The user asks to use an extension under `extensions/<name>` - The user wants an extension installer script or packaged extension assets added or updated - The user asks to install, update, or uninstall an existing extension ## Your Roles in This Skill - **Project Manager**: Clarify the extension goal, choose the correct extension type, and keep the work aligned with the WebUI extension contract. - **Backend Developer (Engineer)**: Create or update extension folders, metadata files, installer scripts, and any packaged extension assets. - **Technical Writer**: Keep extension metadata and supporting docs concise, correct, and maintainable. ## Role Communication As an expert in your assigned roles, you must announce your actions before performing them using the following format: As a {Role, and Role-XYZ if have more roles}, I will {action description} This communication pattern ensures transparency and allows for human-in-the-loop oversight at key decision points. ## Instructions Follow these steps in order: ### Step 1: Resolve the extension target - Determine whether the task is for a new extension or an update. - Resolve the extension folder under `extensions/`. - If no folder name is provided, choose a concise kebab-case name that matches the extension purpose. ### Step 2: Choose the correct extension type - Use `prompt` when the WebUI should open a new agent session using a configured prompt. - Use `skill` when the WebUI should open a new agent session that invokes an installed agent skill. - Use `script` when the WebUI should run `install`, `update`, or `uninstall` through `extension.py`. - Refer to `references/extension-contract.md` for the exact metadata contract and runtime behavior. ### Step 3: Create or update extension metadata - Create or update `extension.json5` in the extension root. - Always include `name`, `description`, and `type`. - If `type` is `prompt`, include `prompt`. - If `type` is `skill`, include `skill`. - If `type` is `script`, include `script` only when not using the default `extension.py`. - Include `entrypoint` when the extension has an HTML page the WebUI should serve (e.g. `index.html`). - Include `installed` (defaults to `false`); script extensions must update this field after successful install/uninstall. ### Step 4: Add extension implementation files - For `prompt`, keep the prompt generic because the WebUI appends the extension path separately. - For `skill`, ensure the referenced agent skill exists and is the right category for the task. - For `script`, add or update `extension.py` and support `install`, `update`, and `uninstall`. - When the extension needs agent-specific operating instructions, add `extensions/<extension-name>/AGENTS.md`. - `AGENTS.md` is optional, but create it when the extension needs custom usage rules, lookup rules, trust boundaries, or fallback guidance for future agents. - If the script depends on a Git repository, check out the repository to `.skillpilot/temp/` and understand its structure before writing the script. - If the checked-out structure differs materially from the user's instruction, stop and ask the user to confirm the intended behavior before creating or changing the script. - Repositories under `https://github.com/X-School-Academy/` are trusted for this inspection step and do not require an extra trust confirmation. - If the script needs temporary or intermediate files, write them under `.skillpilot/temp/`. - Refer to `references/script-extension-packaging.md` for script layout and lifecycle guidance. ### Step 5: Run install, update, or uninstall when requested When the user asks to install, update, or uninstall an existing extension: - Locate the extension folder under `extensions/` and read its `extension.json5`. - Before using the extension, check whether `extensions/<extension-name>/AGENTS.md` exists. - If that `AGENTS.md` exists, read it and follow its instructions before inspecting extension code or assets. - If that `AGENTS.md` does not exist, tell the user there is no extension-specific `AGENTS.md` and offer to inspect the extension code to determine how to use it. - For `script` extensions, run the action via `core/bin/python {ext-path}/extension.py {action}` where `{action}` is `install`, `update`, or `uninstall`. - For `prompt` extensions, start a new session using the configured `prompt` with the extension path appended. - For `skill` extensions, start a new session that invokes the referenced agent skill. - After a successful `install` or `update`, verify that `installed` is set to `true` in `extension.json5`. - After a successful `uninstall`, verify that `installed` is set to `false` in `extension.json5`. ### Step 6: Validate and document - Ensure the extension is discoverable by the WebUI by keeping `extension.json5` in the extension root. - If the extension adds reusable user skills, validate them with `core/bin/skill-verify` and refresh installed skills with `core/bin/skill-install`. - Update extension documentation when the metadata contract or install flow changes. ## Expected Output - A ready-to-use extension folder under `extensions/` - Valid `extension.json5` metadata - Any required `extension.py`, packaged assets, and supporting docs ## Key Principles - Keep the extension contract data-driven rather than hard-coded in the WebUI - Keep prompt extension text generic and let the WebUI append the extension path - Keep extension implementation scoped to that extension folder - Use extension-local `AGENTS.md` files for custom agent behavior when an extension needs usage-specific instructions - Prefer concise `SKILL.md` instructions and move detailed operational rules into reference files
Voir sur GitHub