Skip to content

Add AstrBot plugin development skill 🤖🤖🤖 - #2996

Open
Elysium-Seeker wants to merge 1 commit into
github:mainfrom
Elysium-Seeker:add/astrbot-plugin-maker
Open

Add AstrBot plugin development skill 🤖🤖🤖#2996
Elysium-Seeker wants to merge 1 commit into
github:mainfrom
Elysium-Seeker:add/astrbot-plugin-maker

Conversation

@Elysium-Seeker

Copy link
Copy Markdown

Description

Add a self-contained astrbot-plugin-maker skill 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 Star discovery 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.sh and git diff --cached --check — passed.
  • Real project installation with skills add ... --skill astrbot-plugin-maker --agent github-copilot --copy — all 23 installed files matched the published skill.
  • GitHub Copilot CLI 1.0.21 with GPT-4.1 loaded the skill and generated a greeting plugin. With the CLI started in the generated plugin directory, python -m pytest -q passed 7 tests, python -m pytest runtime_tests -q passed 2 tests, and Ruff lint/format checks passed.
  • An independently generated HTTP example passed 19 offline tests, 2 real-SDK tests, static validation, and Ruff checks.

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

  • I have read and followed the contribution guidelines.
  • I have read and followed the guidance for submissions involving paid services.
  • My contribution adds a new skill in the correct directory.
  • The skill name and frontmatter follow the required conventions.
  • The content is clearly structured and bundled resources are referenced.
  • I have tested the skill with GitHub Copilot.
  • I have run the build and verified the generated documentation.
  • I am targeting the main branch.

Type of Contribution

  • New skill.

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.

Copilot AI balanced review requested due to automatic review settings September 9, 2026 06:39

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

🔒 PR Risk Scan Results

Scanned 23 changed file(s).

Severity Count
🔴 High 0
🟠 Medium 2
ℹ️ Info 2
Severity Rule File Line Match
🟠 unpinned-version-indicator skills/astrbot-plugin-maker/assets/requirements-dev.txt.template 3 packaging>=24
🟠 unpinned-version-indicator skills/astrbot-plugin-maker/assets/requirements-dev.txt.template 4 ruff>=0.15
ℹ️ skill-script-touched skills/astrbot-plugin-maker/scripts/scaffold_plugin.py 1 skills/astrbot-plugin-maker/scripts/scaffold_plugin.py
ℹ️ skill-script-touched skills/astrbot-plugin-maker/scripts/validate_plugin.py 1 skills/astrbot-plugin-maker/scripts/validate_plugin.py

This is an automated soft-gate report. Findings indicate review targets and do not block merge by themselves.

@github-actions github-actions Bot added new-submission PR adds at least one new contribution skills PR touches skills labels Sep 9, 2026
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

🔍 Vally Lint Results

✅ All checks passed

Scope Checked
Skills 1
Agents 0
Total 1
Severity Count
❌ Errors 0
⚠️ Warnings 0
ℹ️ Advisories 0

Summary

Level Finding
ℹ️ ✅ astrbot-plugin-maker (2/2 checks passed)
ℹ️ ✓ [spec-compliance] All 1 skill(s) are spec-compliant.
ℹ️ ✓ spec-compliance: All spec checks passed.
ℹ️ ✓ [valid-refs] All file references across 1 skill(s) are valid.
ℹ️ ✓ valid-refs: All file references resolve to existing files within the skill directory.
ℹ️ 1 skill(s) linted, 1 passed
Full linter output
### Linting skills/astrbot-plugin-maker
✅ astrbot-plugin-maker (2/2 checks passed)
    ✓ [spec-compliance] All 1 skill(s) are spec-compliant.
        ✓ spec-compliance: All spec checks passed.
    ✓ [valid-refs] All file references across 1 skill(s) are valid.
        ✓ valid-refs: All file references resolve to existing files within the skill directory.

1 skill(s) linted, 1 passed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

new-submission PR adds at least one new contribution skills PR touches skills

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants