Sync Etunel role collaboration from release v1.0.1

This commit is contained in:
KeyInfo Bot committed 2026-09-09 11:11:54 +08:00
1 parent 64f9a39909
commit 47b73b8e4b
6 files changed
+24 -17

No files matched your search

+2
View File
@@ -31,6 +31,8 @@ Codex 插件页的大标题按 marketplace 来源分组,不是按插件 `categ
部分插件依赖特定运行环境。`$updating-gitea-repositories` 面向 Gitea HTTPS、GCM 和 PAT 工作流;`$etunel-role-collaboration` 仅在 Etunel 提供角色、成员、Hook 和任务上下文时使用。安装前应查看插件详情并确认运行前置条件。
`etunel-role-collaboration` 的插件版本对应上游正式 release 的版本号。更新插件不会自动修改 Etunel 的 Hook 配置或迁移在途项目;实际项目仍需按已确认的流程基线使用。
`caveman` 插件中的大多数工作流可直接使用。可选的 `$caveman-compress` 需要 Python 3.10,以及 `ANTHROPIC_API_KEY` 或已登录的 Claude CLI;仅在用户明确指定文件后执行,并会把该文件内容发送给 Anthropic。该插件不包含 Claude Code 专用统计 hooks、statusline、Caveman CLI、代理或 MCP shrink。
如果插件刚安装到当前 Codex 会话中,启动新的 Codex thread 或新的 Codex 调用后再依赖新增 skills/hooks/MCP/app 配置。
+2 -2
View File
@@ -749,7 +749,8 @@
{
"id": "etunel-role-collaboration",
"repo": "https://git.playones.com/chenmingxuan/EP-Hub-Skill.git",
"ref": "main",
"releaseChannel": "latest-stable",
"releaseProvider": "gitea",
"adapter": "claude-skill",
"pluginName": "etunel-role-collaboration",
"category": "Business & Operations",
@@ -759,7 +760,6 @@
],
"brandColor": "#0F766E",
"manifestOverrides": {
"version": "0.1.0",
"description": "Etunel 多 Agent 项目的角色识别、Hub 中介、依赖任务波次、成果交接和消息流程协作规范。",
"author": {
"name": "chenmingxuan",
+9 -9
View File
@@ -126,15 +126,6 @@
"commit": "3a0b288dfa4df0657dc63c0fd424069432016595",
"syncedAt": "2026-09-03T09:20:38Z"
},
{
"id": "etunel-role-collaboration",
"pluginName": "etunel-role-collaboration",
"repo": "https://git.playones.com/chenmingxuan/EP-Hub-Skill.git",
"ref": "main",
"adapter": "claude-skill",
"commit": "4f9efd175d165153b99a4a0767afb00b0f066142",
"syncedAt": "2026-09-08T16:00:01Z"
},
{
"id": "next-skills",
"pluginName": "next-skills",
@@ -152,6 +143,15 @@
"adapter": "claude-skill",
"commit": "d2d0ce27da295581c3cf87a30ab65deb7d0ddfb8",
"syncedAt": "2026-09-03T02:45:43Z"
},
{
"id": "etunel-role-collaboration",
"pluginName": "etunel-role-collaboration",
"repo": "https://git.playones.com/chenmingxuan/EP-Hub-Skill.git",
"ref": "v1.0.1",
"adapter": "claude-skill",
"commit": "4f9efd175d165153b99a4a0767afb00b0f066142",
"syncedAt": "2026-09-09T03:10:50Z"
}
]
}
@@ -1,6 +1,6 @@
{
"name": "etunel-role-collaboration",
"version": "0.1.0",
"version": "1.0.1",
"description": "Etunel 多 Agent 项目的角色识别、Hub 中介、依赖任务波次、成果交接和消息流程协作规范。",
"author": {
"name": "chenmingxuan",
@@ -1,9 +1,9 @@
{
"sourceId": "etunel-role-collaboration",
"repo": "https://git.playones.com/chenmingxuan/EP-Hub-Skill.git",
"ref": "main",
"ref": "v1.0.1",
"commit": "4f9efd175d165153b99a4a0767afb00b0f066142",
"adapter": "claude-skill",
"sourcePath": "etunel-role-collaboration",
"syncedAt": "2026-09-08T16:00:01Z"
"syncedAt": "2026-09-09T03:10:50Z"
}
+8 -3
View File
@@ -683,10 +683,15 @@ function Get-Clone {
[string]$CloneRoot
)
if ($Source.PSObject.Properties.Name -contains "releaseChannel" -and $Source.releaseChannel) {
if ($Source.releaseChannel -ne "latest-stable" -or $Source.repo -notmatch '^https://github\.com/([\w-]+)/([\w.-]+?)(?:\.git)?$') {
throw "releaseChannel requires latest-stable and a GitHub HTTPS repository"
$provider = "github"
if ($Source.PSObject.Properties.Name -contains "releaseProvider") { $provider = $Source.releaseProvider }
if ($Source.releaseChannel -ne "latest-stable" -or $provider -notin @("github", "gitea") -or $Source.repo -notmatch '^https://([A-Za-z0-9.-]+(?::[0-9]+)?)/([\w-]+)/([\w.-]+?)(?:\.git)?$') {
throw "Stable releases require a GitHub or Gitea HTTPS repository"
}
$release = Invoke-RestMethod -Uri "https://api.github.com/repos/$($Matches[1])/$($Matches[2])/releases/latest" -Headers @{ Accept = "application/vnd.github+json"; "User-Agent" = "skill-market" } -TimeoutSec 30
$repoHost, $owner, $repoName = $Matches[1], $Matches[2], $Matches[3]
if ($provider -eq "github" -and $repoHost -ne "github.com") { throw "GitHub releases require github.com; specify releaseProvider for Gitea" }
$apiRoot = if ($provider -eq "github") { "https://api.github.com" } else { "https://$repoHost/api/v1" }
$release = Invoke-RestMethod -Uri "$apiRoot/repos/$owner/$repoName/releases/latest" -Headers @{ Accept = "application/json"; "User-Agent" = "skill-market" } -TimeoutSec 30
$tag = [string]$release.tag_name
if ($release.draft -or $release.prerelease -or $tag -notmatch '^v?(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$') {
throw "Invalid stable release tag: $tag"