Compile selected plugins into the svc deploy binary

Why: deploy needs to choose registered plugins and ship them inside one agent-system, then refuse the release when they are not active.
Evidence: python3 -m unittest tests.test_svc_plugins tests.test_svc_user_help tests.test_svc tests.test_svc_u2 (SELF, 63 passed, 1 skipped). Real compose build and make test-lifecycle are NOT_RUN.
Impact: --with is mutually exclusive with --from rdm and --from release. Existing non-interactive deploys stay without plugins unless plugins= is already recorded. Changing the plugin id set on a live service requires --allow-source-switch.
Refs: .task/feature-svc-plugin-compose.md modules/documents/docs/proposals/2026-10-14-svc-plugin-compose-deploy.md
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-10-14 16:08:13 +00:00
co-authored by Cursor
parent c60bfa9474
commit 1cf2f533f7
9 changed files with 988 additions and 39 deletions
+2
View File
@@ -1,3 +1,5 @@
# plugins/
示例插件与插件开发参考(P4 起填充;插件开发指南见 modules/documents/docs/guides/)。
`registry.json` 是 `svc.sh deploy --with` 的编译插件登记表。Dev 仓只保存登记,插件源码在各自仓库。说明见 `docs/svc.md` 与 `scripts/svc.sh help plugins`。
+15
View File
@@ -0,0 +1,15 @@
{
"plugins": [
{
"id": "rdm",
"name": "研发记忆 RDM",
"repo": "ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-RDM.git",
"repoEnv": "SVC_RDM_ORIGIN",
"defaultRef": "origin/main",
"goModule": "agent-system-rdm",
"entryPackage": "agent-system-rdm/plugins/rdm",
"commandPrefix": "rdm.",
"web": "web"
}
]
}