Skip to content

Commit 4747cdd

Browse files
committed
feat: 发布 DevOpsFlow 0.2.16
1 parent bda2259 commit 4747cdd

40 files changed

Lines changed: 804 additions & 95 deletions

.agents/plugins/marketplace.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
2-
"name": "devflow-skills",
2+
"name": "devopsflow",
33
"interface": {
4-
"displayName": "DevFlow Skills"
4+
"displayName": "DevOpsFlow"
55
},
66
"plugins": [
77
{
8-
"name": "devflow-skills",
8+
"name": "devopsflow",
99
"source": {
1010
"source": "local",
1111
"path": "."

.codex-plugin/marketplace.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
2-
"name": "devflow-skills",
2+
"name": "devopsflow",
33
"interface": {
4-
"displayName": "DevFlow Skills"
4+
"displayName": "DevOpsFlow"
55
},
66
"plugins": [
77
{
8-
"name": "devflow-skills",
8+
"name": "devopsflow",
99
"source": {
1010
"source": "local",
1111
"path": "."

.codex-plugin/plugin.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
2-
"name": "devflow-skills",
3-
"version": "0.2.15",
4-
"description": "DevFlow engineering workflow skills for Codex: routing, DDD, TDD, planning, execution, debugging, review, verification, and branch finishing.",
2+
"name": "devopsflow",
3+
"version": "0.2.16",
4+
"description": "DevOpsFlow engineering workflow skills for Codex: routing, DDD, TDD, planning, execution, debugging, review, verification, and branch finishing.",
55
"composerIcon": "./assets/app-icon-small.svg",
66
"logo": "./assets/app-icon.png",
77
"author": {
@@ -15,9 +15,9 @@
1515
"skills": "./skills/",
1616
"hooks": "./hooks/hooks.codex.json",
1717
"interface": {
18-
"displayName": "DevFlow Skills",
18+
"displayName": "DevOpsFlow",
1919
"shortDescription": "Engineering workflow skills for Codex",
20-
"longDescription": "DevFlow Skills provides a composable Codex workflow for routing engineering requests, DDD modeling, TDD handoff, implementation planning, execution, debugging, review, verification, and branch finishing.",
20+
"longDescription": "DevOpsFlow provides a composable Codex workflow for routing engineering requests, DDD modeling, TDD handoff, implementation planning, execution, debugging, review, verification, and branch finishing.",
2121
"developerName": "LiTeXz",
2222
"category": "Developer Tools",
2323
"capabilities": ["Interactive", "Read", "Write"],

.github/workflows/version-check.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ name: Version Check
33
on:
44
push:
55
branches: [main]
6+
tags: ["v*"]
67
pull_request:
78
branches: [main]
89

@@ -20,10 +21,10 @@ jobs:
2021
PKG_VERSION=$(bun -e "console.log(require('./package.json').version)")
2122
PLUGIN_VERSION=$(bun -e "console.log(require('./.codex-plugin/plugin.json').version)")
2223
if grep -q '^version[[:space:]]*=' agents/df-publisher.toml; then
23-
echo "::error::agents/df-publisher.toml must not use top-level version = because Codex agent TOML reserves that field; use # devflow-version = \"...\" instead"
24+
echo "::error::agents/df-publisher.toml must not use top-level version = because Codex agent TOML reserves that field; use # devopsflow-version = \"...\" instead"
2425
exit 1
2526
fi
26-
AGENT_VERSION=$(grep '^#[[:space:]]*devflow-version[[:space:]]*=' agents/df-publisher.toml | head -1 | sed 's/.*"\(.*\)"/\1/')
27+
AGENT_VERSION=$(grep '^#[[:space:]]*devopsflow-version[[:space:]]*=' agents/df-publisher.toml | head -1 | sed 's/.*"\(.*\)"/\1/')
2728
2829
echo "package.json: $PKG_VERSION"
2930
echo "plugin.json: $PLUGIN_VERSION"
@@ -37,6 +38,13 @@ jobs:
3738
echo "::error::package.json ($PKG_VERSION) != agents/df-publisher.toml ($AGENT_VERSION)"
3839
exit 1
3940
fi
41+
if [ "${GITHUB_REF_TYPE:-}" = "tag" ]; then
42+
EXPECTED_TAG="v${PKG_VERSION}"
43+
if [ "$GITHUB_REF_NAME" != "$EXPECTED_TAG" ]; then
44+
echo "::error::package.json version requires tag ${EXPECTED_TAG}, received ${GITHUB_REF_NAME}"
45+
exit 1
46+
fi
47+
fi
4048
4149
echo "All versions aligned: $PKG_VERSION"
4250
- name: Check managed Codex asset hash
@@ -56,6 +64,7 @@ jobs:
5664
exit 1
5765
fi
5866
- name: Check managed Codex assets on version tag
67+
if: github.ref_type == 'tag'
5968
run: |
6069
set -euo pipefail
6170
VERSION=$(bun -e "console.log(require('./package.json').version)")
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ interface OpenCodePluginInput {
1111

1212
function writeBlockMessage(reason: string): void {
1313
process.stderr.write(
14-
`DevFlow 已阻止 OpenCode 工具调用。\n原因:${reason}。\n`,
14+
`DevOpsFlow 已阻止 OpenCode 工具调用。\n原因:${reason}。\n`,
1515
);
1616
}
1717

18-
export default async function devflowSkillsOpenCodePlugin(
18+
export default async function devopsflowOpenCodePlugin(
1919
pluginInput: OpenCodePluginInput = {},
2020
) {
2121
return {

README.md

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
# DevFlow Skills
1+
# DevOpsFlow
22

3-
DevFlow Skills 是一组面向 Codex 的工程工作流 skills,并提供 OpenCode 兼容适配。它把 DDD、Glue Coding、TDD、计划、执行、调试、评审、验证和分支收尾组织成一套可组合的强制工作流。
3+
DevOpsFlow 是一组面向 Codex 的工程工作流 skills,并提供 OpenCode 兼容适配。它把 DDD、Glue Coding、TDD、计划、执行、调试、评审、验证和分支收尾组织成一套可组合的强制工作流。
44

55
插件还包含一个保护分支 hook:在 `main``dev``develop``devlop`
66
等常见集成分支上启动会话时提醒切换新分支;在这些分支上拦截写文件、
77
修改索引、提交、重置、依赖安装和直接 push 等污染操作,并提示改用新分支
88
和 PR 流程。Codex hook 配置位于 `hooks/hooks.codex.json`,并由
9-
`.codex-plugin/plugin.json` 声明为插件 companion;OpenCode 本地插件入口位于 `.opencode/plugin/devflow-skills.ts`
9+
`.codex-plugin/plugin.json` 声明为插件 companion;OpenCode 本地插件入口位于 `.opencode/plugin/devopsflow.ts`
1010
另有 main Codex session 禁写 hook:所有分支上 main Codex session 只能协调、审查和验证,代码写入必须交给 Codex worker session 或兼容适配器识别的写入会话。
1111

1212
## 重要:必须开启 Plan 模式
1313

14-
使用 DevFlow Skills 前,请先在 Codex 中开启 Plan 模式。
14+
使用 DevOpsFlow 前,请先在 Codex 中开启 Plan 模式。
1515

1616
这些 skills 依赖“先澄清、先建模、先计划、再执行”的工作方式。尤其是 DDD、TDD、实现计划、调试和评审流程,如果没有先进入 Plan 模式,Codex 很容易被用户的数据表、CRUD 页面、零散实现要求带偏,直接进入编码或一次性输出未经确认的设计。
1717

@@ -22,7 +22,7 @@ DevFlow Skills 是一组面向 Codex 的工程工作流 skills,并提供 OpenC
2222
3. 按 skill 要求完成确认、建模或计划。
2323
4. 用户确认后再进入实现、验证、提交或 PR。
2424

25-
不要把 Plan 模式当成可选步骤;它是 DevFlow 工作流的入口保护。
25+
不要把 Plan 模式当成可选步骤;它是 DevOpsFlow 工作流的入口保护。
2626

2727
## 安装为 Codex Plugin
2828

@@ -50,8 +50,8 @@ codex-plugin marketplace manifest 保留为兼容副本。两个 marketplace man
5050

5151
```bash
5252
codex plugin marketplace add LiTeXz/devflow-skills
53-
codex plugin marketplace upgrade devflow-skills
54-
codex plugin add devflow-skills@devflow-skills
53+
codex plugin marketplace upgrade devopsflow
54+
codex plugin add devopsflow@devopsflow
5555
```
5656

5757
安装完成后,重开 Codex 线程以加载新的 plugin skills 和 hook。
@@ -64,22 +64,22 @@ codex plugin add devflow-skills@devflow-skills
6464
6565
```bash
6666
codex plugin marketplace add .
67-
codex plugin list --marketplace devflow-skills
68-
codex plugin add devflow-skills@devflow-skills
67+
codex plugin list --marketplace devopsflow
68+
codex plugin add devopsflow@devopsflow
6969
```
7070

7171
</details>
7272

7373
## 本地安装为 OpenCode Plugin
7474

75-
OpenCode 当前按本地 checkout 使用。仓库已提供 `.opencode/plugin/devflow-skills.ts`,从仓库根目录启动 OpenCode 时会自动发现该插件;在其他项目中使用时,可在目标项目的 `opencode.json` 中引用本仓库插件并加载 skills:
75+
OpenCode 当前按本地 checkout 使用。仓库已提供 `.opencode/plugin/devopsflow.ts`,从仓库根目录启动 OpenCode 时会自动发现该插件;在其他项目中使用时,可在目标项目的 `opencode.json` 中引用本仓库插件并加载 skills:
7676

7777
```json
7878
{
7979
"$schema": "https://opencode.ai/config.json",
80-
"plugin": ["/absolute/path/to/devflow-skills/.opencode/plugin/devflow-skills.ts"],
80+
"plugin": ["/absolute/path/to/devopsflow/.opencode/plugin/devopsflow.ts"],
8181
"skills": {
82-
"paths": ["/absolute/path/to/devflow-skills/skills"]
82+
"paths": ["/absolute/path/to/devopsflow/skills"]
8383
}
8484
}
8585
```
@@ -111,7 +111,7 @@ OpenCode 插件会复用同一套保护规则:main Codex session 禁写、兼
111111
```text
112112
.codex-plugin/plugin.json
113113
.codex-plugin/assets/
114-
.opencode/plugin/devflow-skills.ts
114+
.opencode/plugin/devopsflow.ts
115115
assets/
116116
hooks/
117117
scripts/
@@ -129,18 +129,18 @@ bunfig.toml
129129

130130
## Project-Owned Style Packs
131131

132-
DevFlow can use project-owned style packs after the business design is clear. A style pack is not a shared DevFlow template; it is repository-owned material that helps agents preserve local implementation style through rules, golden examples, anti-patterns, and review checklists.
132+
DevOpsFlow can use project-owned style packs after the business design is clear. A style pack is not a shared DevOpsFlow template; it is repository-owned material that helps agents preserve local implementation style through rules, golden examples, anti-patterns, and review checklists.
133133

134134
Project-owned style packs have one default discovery location:
135135

136136
```text
137-
.devflow/style-pack/
137+
.devopsflow/style-pack/
138138
```
139139

140140
Recommended shape:
141141

142142
```text
143-
.devflow/style-pack/
143+
.devopsflow/style-pack/
144144
<style-pack-name>/
145145
.pack.toml
146146
rules.md
@@ -151,7 +151,7 @@ Recommended shape:
151151

152152
`.pack.toml` describes metadata such as scope, applicable task types, primary examples, verification commands, review checks, and known exclusions.
153153

154-
Use style packs with `df-glue-coding` after DDD, CQRS, API, security, validation, and persistence constraints are already respected. Keep project-specific examples in the project repository, not in this public DevFlow repository.
154+
Use style packs with `df-glue-coding` after DDD, CQRS, API, security, validation, and persistence constraints are already respected. Keep project-specific examples in the project repository, not in this public DevOpsFlow repository.
155155

156156
## 开发
157157

@@ -187,6 +187,12 @@ DDD 设计校验回归:
187187
bun test skills/df-ddd-event-storming-design/scripts/
188188
```
189189

190+
IAM 授权标识符校验回归:
191+
192+
```bash
193+
bun test skills/df-iam-access-control-design/scripts/
194+
```
195+
190196
Hook 回归:
191197

192198
```bash

agents/df-publisher.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
# devflow-version = "0.2.15"
1+
# devopsflow-version = "0.2.16"
22
name = "df-publisher"
33
description = "唯一被授权执行 git 和 gh 命令的 Codex worker session。负责提交、推送、PR、合并、发布等全部 git/github 操作。遵守保护分支规则。"
44
nickname_candidates = ["df-publisher", "publisher"]
55

66
developer_instructions = """
77
## 角色定义
88
9-
你是 df-publisher,DevFlow 插件中唯一被授权执行 git 和 gh 命令的 Codex worker session。
9+
你是 df-publisher,DevOpsFlow 插件中唯一被授权执行 git 和 gh 命令的 Codex worker session。
1010
所有其他会话(main Codex session 和普通 Codex worker session)均被禁止执行发布类 git/gh 命令,必须委托给你完成。
1111
1212
## 职责范围

assets/app-icon-small.svg

Lines changed: 1 addition & 1 deletion
Loading

hooks/hooks.codex.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
{
77
"type": "command",
88
"command": "PLUGIN_ROOT=\"${PLUGIN_ROOT}\" bun \"${PLUGIN_ROOT}/skills/df-codex-assets/scripts/df-codex-assets.ts\" hydrate",
9-
"statusMessage": "devflow-skills: ensuring df-publisher agent toml exists"
9+
"statusMessage": "devopsflow: ensuring df-publisher agent toml exists"
1010
}
1111
]
1212
}

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
{
2-
"name": "devflow-skills",
3-
"version": "0.2.15",
2+
"name": "devopsflow",
3+
"version": "0.2.16",
44
"type": "module",
55
"private": true,
66
"scripts": {
77
"check:skill-metadata": "bun scripts/check-skill-metadata.ts",
88
"test": "bun test",
99
"test:hooks": "bun test scripts/",
10-
"test:validators": "bun test skills/df-tdd-skill/scripts/ skills/df-ddd-event-storming-design/scripts/",
10+
"test:validators": "bun test skills/df-tdd-skill/scripts/ skills/df-ddd-event-storming-design/scripts/ skills/df-iam-access-control-design/scripts/",
1111
"typecheck": "bunx tsc --noEmit",
1212
"lint": "bunx biome check ."
1313
},

0 commit comments

Comments
 (0)