Skip to content

feat(bootstrap): add agentguard builtin skill#526

Open
dongmucat wants to merge 1 commit into
mainfrom
feature/add-agentguard-skill
Open

feat(bootstrap): add agentguard builtin skill#526
dongmucat wants to merge 1 commit into
mainfrom
feature/add-agentguard-skill

Conversation

@dongmucat

@dongmucat dongmucat commented Jun 15, 2026

Copy link
Copy Markdown
Collaborator

概述

新增 AgentGuard 作为 cloud-url built-in skill,并补齐 SKILL.md metadata.version 版本字段兼容,确保启动同步时 manifest 版本校验可以通过。

变更内容

后端实现

  • server/skillhub-app/src/main/resources/builtin-skills/manifest.json 新增 agentguard 条目。
  • SkillMetadataParser 中增加顶层 version 缺失时读取 metadata.version 的 fallback。
  • 保持顶层 version 优先级不变:当 versionmetadata.version 同时存在时仍使用顶层字段。
  • 未修改 Controller;不涉及 OpenAPI 契约变更。
  • 未新增 DB migration。

前端实现

  • 本次不涉及前端代码变更。

测试覆盖

  • 后端单测:新增 SkillMetadataParserTest.testUsesMetadataVersionWhenTopLevelVersionIsMissing,覆盖 AgentGuard 包的 metadata 版本格式。
  • 后端单测:新增 SkillMetadataParserTest.testTopLevelVersionTakesPrecedenceOverMetadataVersion,覆盖向后兼容优先级。
  • Built-in skill 同步链路:回归 BuiltinSkillManifestLoaderTestBuiltinSkillPackageExtractorTestBuiltinSkillInitializerTest
  • 前端单测:本次无前端实现变更;执行现有前端测试回归。
  • E2E 测试:本次无 web/src 变更,未触发 Playwright E2E 必跑条件;远端 PR E2E 已通过。

质量门禁

  • make typecheck-web 通过(0 errors)
  • make lint-web 通过(0 errors, 0 warnings)
  • make test-frontend 通过(180 files / 601 tests)
  • make test-backend-app 通过(526 tests, 0 failures, 0 errors)
  • Focused built-in validation 通过:SkillMetadataParserTest 11 tests,built-in loader/extractor/initializer 25 tests
  • 远端 CI 通过:DCO、Docs Build、Web Build And Test、Server Unit Tests、E2E (Real Services)
  • make staging 本地未完成:Docker Hub 拉取 eclipse-temurin:21-jre-alpine 时出现 TLS handshake timeout
  • make generate-api 不适用:未修改 Controller / OpenAPI 契约

安全考虑

  • 本次新增的是内置 skill manifest 远程包声明;下载仍复用现有 built-in skill downloader 的 HTTPS host allowlist 与包大小限制。
  • 解析器仅增加对 SKILL.md YAML metadata.version 的读取,不扩大执行或下载权限。
  • 未引入密钥、token 或内部地址。
  • 本 PR 的验收范围是 SkillHub built-in skill 下载、解析、校验与发布链路;zip 包内部脚本运行质量不作为本次内置接入的阻塞项。

相关 Issue

Related to #477

测试说明

本地验证步骤

  1. 启动应用后确认 built-in skill 同步任务读取 builtin-skills/manifest.json
  2. 确认 agentguard 包的 name=agentguardmetadata.version=1.1 与 manifest 条目一致。
  3. 确认 @global/agentguard 可按现有 built-in skill 同步路径发布为 public skill。

回归测试范围

  • Built-in skill manifest 加载与启动同步。
  • SKILL.md frontmatter 版本解析。
  • 既有顶层 version 字段解析保持不变。

截图/录屏(如有 UI 变更)

本次无 UI 变更。

@dongmucat dongmucat force-pushed the feature/add-agentguard-skill branch from d977317 to 1fbc26f Compare June 15, 2026 06:46
Signed-off-by: dongmucat <1127093059@qq.com>
@dongmucat dongmucat force-pushed the feature/add-agentguard-skill branch from 1fbc26f to abdad25 Compare June 15, 2026 07:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant