Add AstrBot plugin development skill 🤖🤖🤖 - #2996
Open
Elysium-Seeker wants to merge 1 commit into
Open
Conversation
Contributor
🔒 PR Risk Scan ResultsScanned 23 changed file(s).
|
Contributor
🔍 Vally Lint Results✅ All checks passed
Summary
Full linter output |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Add a self-contained
astrbot-plugin-makerskill for creating, repairing, and testing AstrBot Python plugins with GitHub Copilot. It supplies a runnable configurable-command scaffold, a static metadata/configuration validator, and focused references for version-sensitive AstrBot APIs.The references are checked against AstrBot 4.28.0 / Python 3.12+ and link to the corresponding source commit. They cover
Stardiscovery and handler registration, injected configuration, persistent storage, LLM hooks/tools, adapter declarations, and HTTP response contracts. The scaffold includes tests that call its production implementation, plus separately invoked tests using the real AstrBot SDK.The contribution includes the complete skill folder and the generated entry in
docs/README.skills.md. The scaffold uses the Python standard library and refuses to overwrite an existing directory. HTTP client examples are optional; installing the skill does not start a server or publish a plugin.Validation
npm run skill:validate— all 419 skills passed.npm run plugin:validate— passed; existing external-plugin metadata warnings are unrelated to this contribution.npm run build— passed and generated the skill's catalog entry.npx --yes @microsoft/vally-cli lint skills/astrbot-plugin-maker --verbose— specification and local-reference checks passed.uvx codespell --config .codespellrc skills/astrbot-plugin-maker— passed.bash eng/fix-line-endings.shandgit diff --cached --check— passed.skills add ... --skill astrbot-plugin-maker --agent github-copilot --copy— all 23 installed files matched the published skill.python -m pytest -qpassed 7 tests,python -m pytest runtime_tests -qpassed 2 tests, and Ruff lint/format checks passed.SDK tests cover registration, injected configuration, and message results. WebUI loading/reloading and delivery through a live messaging adapter were not exercised.
Pull Request Checklist
mainbranch.Type of Contribution
Additional Notes
I maintain the source skill repository. This contribution is adapted from commit 40887d7; that repository also contains the scaffold regression suite and Windows/Linux/SDK CI. The contributed folder works independently of that repository.
By submitting this pull request, I confirm that this contribution abides by the project's Code of Conduct and will be licensed under the MIT License.