universal-dev-standards 5.1.1 → 5.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundled/ai/options/push/single-owner-mode.ai.yaml +60 -0
- package/bundled/ai/options/push/team-mode.ai.yaml +64 -0
- package/bundled/ai/options/release/publish-mode-github-actions.ai.yaml +65 -0
- package/bundled/ai/standards/agent-behavior-discipline.ai.yaml +142 -0
- package/bundled/ai/standards/cd-deployment-strategies.ai.yaml +73 -0
- package/bundled/ai/standards/no-cicd-deployment.ai.yaml +134 -0
- package/bundled/ai/standards/pipeline-security-gates.ai.yaml +71 -0
- package/bundled/ai/standards/push-standards.ai.yaml +105 -0
- package/bundled/ai/standards/rollback-standards.ai.yaml +68 -0
- package/bundled/core/agent-behavior-discipline.md +178 -0
- package/bundled/core/cd-deployment-strategies.md +121 -0
- package/bundled/core/no-cicd-deployment.md +205 -0
- package/bundled/core/pipeline-security-gates.md +109 -0
- package/bundled/core/rollback-standards.md +104 -0
- package/bundled/core/versioning.md +1 -1
- package/bundled/locales/zh-CN/CHANGELOG.md +34 -3
- package/bundled/locales/zh-CN/README.md +54 -7
- package/bundled/locales/zh-CN/SECURITY.md +8 -0
- package/bundled/locales/zh-CN/core/ai-friendly-architecture.md +8 -0
- package/bundled/locales/zh-CN/core/workflow-enforcement.md +8 -0
- package/bundled/locales/zh-CN/docs/CHEATSHEET.md +8 -0
- package/bundled/locales/zh-CN/docs/CLI-FLOW.md +8 -0
- package/bundled/locales/zh-CN/docs/FEATURE-REFERENCE.md +8 -0
- package/bundled/locales/zh-CN/docs/STANDARDS-REFERENCE.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/requirement.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/reverse-bdd.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/reverse-sdd.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/reverse-tdd.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/reverse.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/review.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/sdd-retro.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/sdd.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/tdd.md +8 -0
- package/bundled/locales/zh-CN/skills/commands/update.md +8 -0
- package/bundled/locales/zh-TW/CHANGELOG.md +34 -3
- package/bundled/locales/zh-TW/MAINTENANCE.md +17 -6
- package/bundled/locales/zh-TW/README.md +53 -6
- package/bundled/locales/zh-TW/SECURITY.md +8 -0
- package/bundled/locales/zh-TW/adoption/STATIC-DYNAMIC-GUIDE.md +1 -1
- package/bundled/locales/zh-TW/core/ai-friendly-architecture.md +8 -0
- package/bundled/locales/zh-TW/core/anti-hallucination.md +8 -0
- package/bundled/locales/zh-TW/core/git-workflow.md +8 -0
- package/bundled/locales/zh-TW/core/refactoring-standards.md +8 -0
- package/bundled/locales/zh-TW/core/spec-driven-development.md +8 -0
- package/bundled/locales/zh-TW/core/structured-task-definition.md +8 -0
- package/bundled/locales/zh-TW/core/test-driven-development.md +8 -0
- package/bundled/locales/zh-TW/core/versioning.md +1 -1
- package/bundled/locales/zh-TW/core/workflow-enforcement.md +8 -0
- package/bundled/locales/zh-TW/core/workflow-state-protocol.md +8 -0
- package/bundled/locales/zh-TW/docs/CHEATSHEET.md +8 -0
- package/bundled/locales/zh-TW/docs/CLI-FLOW.md +8 -0
- package/bundled/locales/zh-TW/docs/FEATURE-REFERENCE.md +8 -0
- package/bundled/locales/zh-TW/docs/MIGRATION-V5.md +8 -0
- package/bundled/locales/zh-TW/docs/STANDARDS-REFERENCE.md +8 -0
- package/bundled/locales/zh-TW/integrations/claude-code/README.md +8 -0
- package/bundled/locales/zh-TW/skills/deploy-assistant/SKILL.md +178 -0
- package/bundled/skills/deploy-assistant/SKILL.md +183 -0
- package/bundled/skills/push/SKILL.md +203 -0
- package/package.json +1 -1
- package/src/config/ai-agent-paths.js +0 -1
- package/standards-registry.json +71 -4
- package/bundled/locales/zh-CN/docs/AI-AGENT-ROADMAP.md +0 -410
- package/bundled/locales/zh-CN/docs/OPERATION-WORKFLOW.md +0 -1074
- package/bundled/locales/zh-TW/docs/AI-AGENT-ROADMAP.md +0 -410
- package/bundled/locales/zh-TW/docs/OPERATION-WORKFLOW.md +0 -1074
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deploy
|
|
3
|
+
scope: universal
|
|
4
|
+
description: |
|
|
5
|
+
Guide reliable deployments without CI/CD platforms (GitHub Actions / GitLab CI).
|
|
6
|
+
Use when: deploying to VPS, air-gapped servers, or environments without CI/CD infrastructure.
|
|
7
|
+
Keywords: deployment, no-cicd, shell script, blue-green, smoke test, rollback, 無CI/CD, 部署.
|
|
8
|
+
allowed-tools: Read, Bash(cat VERSION:*), Bash(git describe:*), Bash(which nginx:*), Bash(which rsync:*)
|
|
9
|
+
argument-hint: "[project type | 專案類型: node/python/docker/go]"
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# No-CI/CD Deploy Assistant | 無 CI/CD 部署助手
|
|
13
|
+
|
|
14
|
+
> **Language**: English | [繁體中文](../../locales/zh-TW/skills/deploy-assistant/SKILL.md)
|
|
15
|
+
|
|
16
|
+
Guide reliable deployments in environments without GitHub Actions or GitLab CI, using a three-layer architecture: prevent errors, verify correctness, recover fast.
|
|
17
|
+
|
|
18
|
+
引導無 CI/CD 平台環境下的可靠部署,採用三層架構:防錯、驗證、快速回復。
|
|
19
|
+
|
|
20
|
+
## Three-Layer Architecture | 三層部署架構
|
|
21
|
+
|
|
22
|
+
```
|
|
23
|
+
Layer 1: Prevent Wrong Deployments Layer 2: Verify Correctness Layer 3: Fast Recovery
|
|
24
|
+
set -euo pipefail Smoke Test + /health Blue-Green switching
|
|
25
|
+
Version tag enforcement Version number comparison rollback.sh < 30s
|
|
26
|
+
deploy.lock concurrency guard Auto-rollback on failure
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Interactive Questionnaire | 引導式問答
|
|
30
|
+
|
|
31
|
+
| Question | Options | Impact |
|
|
32
|
+
|----------|---------|--------|
|
|
33
|
+
| Project type | node / python / go / docker | Build command |
|
|
34
|
+
| Deploy target | SSH+rsync / Docker Compose | Transfer method |
|
|
35
|
+
| Blue-Green support | yes / no | rollback.sh generation |
|
|
36
|
+
| Health check URL | URL input | verify.sh target |
|
|
37
|
+
| Version source | VERSION file / package.json / git tag | Version comparison logic |
|
|
38
|
+
|
|
39
|
+
## Generated Script Set | 生成的腳本組
|
|
40
|
+
|
|
41
|
+
### deploy.sh — Main Deploy Script
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
#!/usr/bin/env bash
|
|
45
|
+
set -euo pipefail
|
|
46
|
+
|
|
47
|
+
LOCK_FILE="/tmp/deploy.lock"
|
|
48
|
+
trap "rm -f $LOCK_FILE" EXIT
|
|
49
|
+
|
|
50
|
+
# Concurrency guard | 防並發
|
|
51
|
+
if [ -f "$LOCK_FILE" ]; then
|
|
52
|
+
echo "❌ Deploy in progress (PID: $(cat $LOCK_FILE))"
|
|
53
|
+
exit 1
|
|
54
|
+
fi
|
|
55
|
+
echo $$ > "$LOCK_FILE"
|
|
56
|
+
|
|
57
|
+
# Version tag enforcement | 版本 tag 強制
|
|
58
|
+
CURRENT_TAG=$(git describe --exact-match --tags HEAD 2>/dev/null || echo "")
|
|
59
|
+
if [ -z "$CURRENT_TAG" ]; then
|
|
60
|
+
echo "❌ No version tag on HEAD. Run: git tag vX.Y.Z && git push --tags"
|
|
61
|
+
exit 1
|
|
62
|
+
fi
|
|
63
|
+
|
|
64
|
+
echo "[1/4] Running tests..."
|
|
65
|
+
# {TEST_COMMAND}
|
|
66
|
+
|
|
67
|
+
echo "[2/4] Building artifact..."
|
|
68
|
+
# {BUILD_COMMAND}
|
|
69
|
+
|
|
70
|
+
echo "[3/4] Syncing to server..."
|
|
71
|
+
rsync -avz --delete ./dist/ {USER}@{SERVER}:/app/
|
|
72
|
+
|
|
73
|
+
echo "[4/4] Verifying deployment..."
|
|
74
|
+
./verify.sh || { echo "Verification failed, rolling back..."; ./rollback.sh; exit 1; }
|
|
75
|
+
|
|
76
|
+
echo "{\"timestamp\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\",\"version\":\"$CURRENT_TAG\",\"operator\":\"$(whoami)\",\"result\":\"success\"}" >> /var/log/deployments.jsonl
|
|
77
|
+
echo "✅ Deploy successful: $CURRENT_TAG"
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
### verify.sh — Smoke Test
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
#!/usr/bin/env bash
|
|
84
|
+
set -euo pipefail
|
|
85
|
+
|
|
86
|
+
HEALTH_URL="${HEALTH_URL:-{HEALTH_URL}}"
|
|
87
|
+
EXPECTED_VERSION=$(cat VERSION)
|
|
88
|
+
|
|
89
|
+
for i in $(seq 1 3); do
|
|
90
|
+
RESPONSE=$(curl -sf --max-time 10 "$HEALTH_URL" 2>/dev/null) && break
|
|
91
|
+
echo "Health check attempt $i/3 failed, retrying in 5s..."
|
|
92
|
+
sleep 5
|
|
93
|
+
done
|
|
94
|
+
|
|
95
|
+
ACTUAL_VERSION=$(echo "$RESPONSE" | python3 -c "import json,sys; print(json.load(sys.stdin)['version'])")
|
|
96
|
+
|
|
97
|
+
if [ "$ACTUAL_VERSION" != "$EXPECTED_VERSION" ]; then
|
|
98
|
+
echo "❌ Version mismatch! Expected $EXPECTED_VERSION, got $ACTUAL_VERSION"
|
|
99
|
+
exit 1
|
|
100
|
+
fi
|
|
101
|
+
|
|
102
|
+
echo "✅ Version verified: $ACTUAL_VERSION"
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
### rollback.sh — Blue-Green Rollback
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
#!/usr/bin/env bash
|
|
109
|
+
set -euo pipefail
|
|
110
|
+
|
|
111
|
+
CURRENT=$(readlink /app/current 2>/dev/null || echo "/app/blue")
|
|
112
|
+
TARGET=$([[ "$CURRENT" == *"green"* ]] && echo "/app/blue" || echo "/app/green")
|
|
113
|
+
|
|
114
|
+
ln -sfn "$TARGET" /app/current
|
|
115
|
+
nginx -s reload
|
|
116
|
+
|
|
117
|
+
echo "✅ Rolled back to $TARGET ($(date -u +%Y-%m-%dT%H:%M:%SZ))"
|
|
118
|
+
echo "{\"timestamp\":\"$(date -u +%Y-%m-%dT%H:%M:%SZ)\",\"event\":\"rollback\",\"from\":\"$CURRENT\",\"to\":\"$TARGET\",\"operator\":\"$(whoami)\"}" >> /var/log/deployments.jsonl
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Makefile
|
|
122
|
+
|
|
123
|
+
```makefile
|
|
124
|
+
.PHONY: deploy rollback verify status
|
|
125
|
+
|
|
126
|
+
deploy:
|
|
127
|
+
@./deploy.sh
|
|
128
|
+
|
|
129
|
+
rollback:
|
|
130
|
+
@./rollback.sh
|
|
131
|
+
|
|
132
|
+
verify:
|
|
133
|
+
@./verify.sh
|
|
134
|
+
|
|
135
|
+
status:
|
|
136
|
+
@echo "Current slot: $$(readlink /app/current 2>/dev/null || echo 'N/A')"
|
|
137
|
+
@curl -s $${HEALTH_URL:-http://localhost/health} | python3 -m json.tool 2>/dev/null || echo "Health check failed"
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Output Checklist | 輸出確認清單
|
|
141
|
+
|
|
142
|
+
After generation, AI assistant must confirm:
|
|
143
|
+
|
|
144
|
+
- [ ] `deploy.sh` includes `set -euo pipefail`
|
|
145
|
+
- [ ] `deploy.sh` includes deploy.lock concurrency guard
|
|
146
|
+
- [ ] `verify.sh` compares version number (not just HTTP 200)
|
|
147
|
+
- [ ] `rollback.sh` triggers automatically on verify failure
|
|
148
|
+
- [ ] `Makefile` provides `make deploy / make rollback / make status`
|
|
149
|
+
|
|
150
|
+
## Usage | 使用方式
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
/deploy # Interactive mode — auto-detect project type
|
|
154
|
+
/deploy node # Node.js project, generate directly
|
|
155
|
+
/deploy docker # Docker Compose deploy mode
|
|
156
|
+
/deploy --verify-only # Generate verify.sh only
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Next Steps Guidance | 下一步引導
|
|
160
|
+
|
|
161
|
+
After `/deploy` completes, the AI assistant should suggest:
|
|
162
|
+
|
|
163
|
+
> **Deploy scripts generated. Suggested next steps / 部署腳本已生成,建議下一步:**
|
|
164
|
+
> - `chmod +x deploy.sh verify.sh rollback.sh` — Set executable permissions | 設定執行權限
|
|
165
|
+
> - `make verify` — Test health check configuration | 測試健康檢查設定
|
|
166
|
+
> - `git tag v1.0.0 && git push --tags` — Create version tag | 建立版本 tag
|
|
167
|
+
> - `make deploy` — First deployment | 執行第一次部署
|
|
168
|
+
|
|
169
|
+
## Reference | 參考
|
|
170
|
+
|
|
171
|
+
- Core standard: [no-cicd-deployment.md](../../core/no-cicd-deployment.md)
|
|
172
|
+
- Core standard: [deployment-standards.md](../../core/deployment-standards.md)
|
|
173
|
+
- Related: [ci-cd-assistant](../ci-cd-assistant/SKILL.md) — For environments WITH CI/CD
|
|
174
|
+
|
|
175
|
+
## Version History | 版本歷史
|
|
176
|
+
|
|
177
|
+
| Version | Date | Changes | 變更說明 |
|
|
178
|
+
|---------|------|---------|----------|
|
|
179
|
+
| 1.0.0 | 2026-04-26 | Initial release — XSPEC-085 Phase 1b | 初始版本 |
|
|
180
|
+
|
|
181
|
+
## License | 授權
|
|
182
|
+
|
|
183
|
+
CC BY 4.0 — Documentation content
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: push
|
|
3
|
+
scope: universal
|
|
4
|
+
description: |
|
|
5
|
+
AI-assisted safety layer for git push operations with quality gates and collaboration guardrails.
|
|
6
|
+
Use when: pushing commits, force pushing, pushing to protected branches, pushing feature branches.
|
|
7
|
+
Keywords: git push, force push, protected branch, quality gate, push receipt, PR automation, 推送, 保護分支, 品質閘門.
|
|
8
|
+
allowed-tools: Read, Bash(git:*), Bash(npm:*), Bash(pnpm:*), Bash(yarn:*), Bash(bun:*)
|
|
9
|
+
argument-hint: "[--force] [--target <branch>] [--skip-gates] [--no-pr]"
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# Push Assistant | 推送助手
|
|
13
|
+
|
|
14
|
+
> **Language**: English | 繁體中文
|
|
15
|
+
|
|
16
|
+
**Version**: 1.0.0
|
|
17
|
+
**Created**: 2026-04-23
|
|
18
|
+
**Applicability**: Claude Code Skills
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
AI-assisted safety layer for `git push`. Detects protected branches, enforces force-push guardrails, runs pre-push quality gates, outputs a structured push receipt, and integrates with PR automation.
|
|
23
|
+
|
|
24
|
+
`git push` 的 AI 輔助安全層。偵測保護分支、強制 force-push 護欄、執行 pre-push 品質 gate、輸出結構化推送收據,並整合 PR 自動化。
|
|
25
|
+
|
|
26
|
+
## Core Standard | 核心標準
|
|
27
|
+
|
|
28
|
+
This skill implements [`.standards/push-standards.ai.yaml`](../../.standards/push-standards.ai.yaml).
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## Features | 功能說明
|
|
33
|
+
|
|
34
|
+
### 1. Push Target Risk Detection | 推送目標風險偵測
|
|
35
|
+
|
|
36
|
+
Before pushing, the assistant detects whether the target branch is a protected branch (e.g., `main`, `master`, `release/*`, `hotfix/*`).
|
|
37
|
+
|
|
38
|
+
推送前偵測目標分支是否為保護分支(例如 `main`、`master`、`release/*`、`hotfix/*`)。
|
|
39
|
+
|
|
40
|
+
- Displays a **warning** with branch name and commit list
|
|
41
|
+
- Requires explicit user confirmation before proceeding
|
|
42
|
+
- Aborts push if user does not confirm
|
|
43
|
+
|
|
44
|
+
### 2. Force-Push Guardrails | Force-Push 護欄
|
|
45
|
+
|
|
46
|
+
When `--force` is detected, shows the impact before allowing execution.
|
|
47
|
+
|
|
48
|
+
偵測到 `--force` 時,推送前顯示影響範圍。
|
|
49
|
+
|
|
50
|
+
- Calculates commits that will be overwritten on remote
|
|
51
|
+
- Shows count and authors of overwritten commits
|
|
52
|
+
- Requires user to type a confirmation string (`yes, force push`)
|
|
53
|
+
- Records `force_push: true` in the push receipt
|
|
54
|
+
|
|
55
|
+
### 3. Pre-Push Quality Gates | Pre-Push 品質 Gate
|
|
56
|
+
|
|
57
|
+
Runs configured quality gates in sequence before pushing.
|
|
58
|
+
|
|
59
|
+
推送前依序執行已設定的品質 gate。
|
|
60
|
+
|
|
61
|
+
| Gate | Description | 說明 |
|
|
62
|
+
|------|-------------|------|
|
|
63
|
+
| `lint` | Run project lint command | 執行 lint 檢查 |
|
|
64
|
+
| `test` | Run project test command | 執行測試 |
|
|
65
|
+
| `type-check` | TypeScript type checking (optional) | TypeScript 型別檢查(選用) |
|
|
66
|
+
| `ac-coverage` | Acceptance criteria coverage check (optional) | AC 覆蓋率檢查(選用) |
|
|
67
|
+
| `security-scan` | Security vulnerability scan (optional) | 安全掃描(選用) |
|
|
68
|
+
|
|
69
|
+
### 4. Push Receipt | 推送收據
|
|
70
|
+
|
|
71
|
+
After a successful push, outputs a structured receipt for audit trail purposes.
|
|
72
|
+
|
|
73
|
+
推送成功後輸出結構化收據,供稽核追蹤使用。
|
|
74
|
+
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"branch": "feature/my-feature",
|
|
78
|
+
"commit_sha": "a1b2c3d",
|
|
79
|
+
"gates_passed": ["lint", "test"],
|
|
80
|
+
"gates_skipped": false,
|
|
81
|
+
"force_push": false,
|
|
82
|
+
"timestamp": "2026-04-23T10:00:00Z",
|
|
83
|
+
"target_remote": "origin"
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
Optionally appended to `~/.uds/push-history.jsonl` for persistent audit trail.
|
|
88
|
+
|
|
89
|
+
可選擇附加到 `~/.uds/push-history.jsonl` 以持久化稽核追蹤。
|
|
90
|
+
|
|
91
|
+
### 5. PR Automation Integration | PR 自動化整合入口
|
|
92
|
+
|
|
93
|
+
After pushing a feature branch, prompts user to create a Pull Request if none exists.
|
|
94
|
+
|
|
95
|
+
推送 feature branch 後,若尚無 PR,提示使用者建立 Pull Request。
|
|
96
|
+
|
|
97
|
+
- Checks if an open PR exists for the branch
|
|
98
|
+
- Prompts user to run `pr-automation-assistant`
|
|
99
|
+
- Skipped in `single-owner` repo mode or when `--no-pr` flag is used
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Usage | 使用方式
|
|
104
|
+
|
|
105
|
+
```bash
|
|
106
|
+
# Standard push (runs quality gates automatically)
|
|
107
|
+
/push
|
|
108
|
+
|
|
109
|
+
# Push with force (shows overwritten commits, requires confirmation)
|
|
110
|
+
/push --force
|
|
111
|
+
|
|
112
|
+
# Push to a specific remote branch
|
|
113
|
+
/push --target main
|
|
114
|
+
|
|
115
|
+
# Skip quality gates (emergency use)
|
|
116
|
+
/push --skip-gates
|
|
117
|
+
|
|
118
|
+
# Push without PR prompt
|
|
119
|
+
/push --no-pr
|
|
120
|
+
|
|
121
|
+
# Force push without PR prompt (e.g., updating a personal branch)
|
|
122
|
+
/push --force --no-pr
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## Arguments | 參數說明
|
|
126
|
+
|
|
127
|
+
| Argument | Description | 說明 |
|
|
128
|
+
|----------|-------------|------|
|
|
129
|
+
| `--force` | Enable force push with guardrail checks | 啟用 force push,含護欄確認 |
|
|
130
|
+
| `--target <branch>` | Specify target remote branch explicitly | 明確指定目標遠端分支 |
|
|
131
|
+
| `--skip-gates` | Skip pre-push quality gates (emergency only) | 跳過品質 gate(僅緊急情況) |
|
|
132
|
+
| `--no-pr` | Suppress PR automation prompt after push | 推送後不提示建立 PR |
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Configuration | 設定
|
|
137
|
+
|
|
138
|
+
Configure via `uds.project.yaml`:
|
|
139
|
+
|
|
140
|
+
```yaml
|
|
141
|
+
push:
|
|
142
|
+
repo_mode: team # "team" | "single-owner"
|
|
143
|
+
protected_branches:
|
|
144
|
+
- main
|
|
145
|
+
- master
|
|
146
|
+
- "release/*"
|
|
147
|
+
- "hotfix/*"
|
|
148
|
+
push_gates:
|
|
149
|
+
default:
|
|
150
|
+
- lint
|
|
151
|
+
- test
|
|
152
|
+
optional:
|
|
153
|
+
- type-check
|
|
154
|
+
- ac-coverage
|
|
155
|
+
- security-scan
|
|
156
|
+
receipt:
|
|
157
|
+
output: console # "console" | "file" | "both"
|
|
158
|
+
file_path: "~/.uds/push-history.jsonl"
|
|
159
|
+
auto_pr: true # prompt to create PR after push to non-protected branch
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### Options | 選項模式
|
|
163
|
+
|
|
164
|
+
| Option File | Mode | Description | 說明 |
|
|
165
|
+
|-------------|------|-------------|------|
|
|
166
|
+
| [`options/push/team-mode.md`](../../options/push/team-mode.md) | `team` | Full collaboration guardrails (default) | 完整協作護欄(預設) |
|
|
167
|
+
| [`options/push/single-owner-mode.md`](../../options/push/single-owner-mode.md) | `single-owner` | Reduced friction for personal repos | 個人 repo 低摩擦模式 |
|
|
168
|
+
|
|
169
|
+
---
|
|
170
|
+
|
|
171
|
+
## Next Steps Guidance | 下一步引導
|
|
172
|
+
|
|
173
|
+
After `/push` completes, the AI assistant should suggest:
|
|
174
|
+
|
|
175
|
+
> **推送完成。建議下一步 / Push complete. Suggested next steps:**
|
|
176
|
+
> - 執行 `/pr-automation-assistant` 建立或更新 Pull Request ⭐ **Recommended / 推薦** — 確保協作流程完整 / Ensure complete collaboration workflow
|
|
177
|
+
> - 執行 `/checkin` 確認程式碼簽入品質 — 下次提交前的品質確認 / Quality verification before next commit
|
|
178
|
+
> - 查看 `~/.uds/push-history.jsonl` 確認推送紀錄 — 稽核追蹤 / Audit trail verification
|
|
179
|
+
|
|
180
|
+
---
|
|
181
|
+
|
|
182
|
+
## Related Standards | 相關標準
|
|
183
|
+
|
|
184
|
+
- [Push Standards](.standards/push-standards.ai.yaml) — Core push safety rules
|
|
185
|
+
- [Git Workflow](../../.standards/git-workflow.ai.yaml) — Branching strategy
|
|
186
|
+
- [Commit Message](../../.standards/commit-message.ai.yaml) — Commit conventions
|
|
187
|
+
- [PR Automation](../pr-automation-assistant/SKILL.md) — Pull Request automation
|
|
188
|
+
|
|
189
|
+
---
|
|
190
|
+
|
|
191
|
+
## Version History | 版本歷程
|
|
192
|
+
|
|
193
|
+
| Version | Date | Changes |
|
|
194
|
+
|---------|------|---------|
|
|
195
|
+
| 1.0.0 | 2026-04-23 | Initial release — XSPEC-081 Phase 1 |
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## License | 授權
|
|
200
|
+
|
|
201
|
+
This skill is released under [MIT License](https://opensource.org/licenses/MIT) and [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/).
|
|
202
|
+
|
|
203
|
+
**Source**: [universal-dev-standards](https://github.com/AsiaOstrich/universal-dev-standards)
|
package/package.json
CHANGED
package/standards-registry.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.3.0",
|
|
4
4
|
"lastUpdated": "2026-04-16",
|
|
5
5
|
"description": "Standards registry for universal-dev-standards with integrated skills and AI-optimized formats",
|
|
6
6
|
"formats": {
|
|
@@ -58,14 +58,14 @@
|
|
|
58
58
|
"standards": {
|
|
59
59
|
"name": "universal-dev-standards",
|
|
60
60
|
"url": "https://github.com/AsiaOstrich/universal-dev-standards",
|
|
61
|
-
"version": "5.
|
|
61
|
+
"version": "5.3.0"
|
|
62
62
|
},
|
|
63
63
|
"skills": {
|
|
64
64
|
"name": "universal-dev-standards",
|
|
65
65
|
"url": "https://github.com/AsiaOstrich/universal-dev-standards",
|
|
66
66
|
"localPath": "skills",
|
|
67
67
|
"rawUrl": "https://raw.githubusercontent.com/AsiaOstrich/universal-dev-standards/main/skills",
|
|
68
|
-
"version": "5.
|
|
68
|
+
"version": "5.3.0",
|
|
69
69
|
"note": "Skills are now included in the main repository under skills/"
|
|
70
70
|
}
|
|
71
71
|
},
|
|
@@ -704,6 +704,17 @@
|
|
|
704
704
|
"skillName": "ai-collaboration-standards",
|
|
705
705
|
"description": "Guidelines for AI collaboration to prevent hallucination and ensure evidence-based responses"
|
|
706
706
|
},
|
|
707
|
+
{
|
|
708
|
+
"id": "agent-behavior-discipline",
|
|
709
|
+
"name": "Agent Behavior Discipline",
|
|
710
|
+
"nameZh": "Agent 行為紀律標準",
|
|
711
|
+
"source": {
|
|
712
|
+
"human": "core/agent-behavior-discipline.md",
|
|
713
|
+
"ai": "ai/standards/agent-behavior-discipline.ai.yaml"
|
|
714
|
+
},
|
|
715
|
+
"category": "core",
|
|
716
|
+
"description": "Four behavioral disciplines for AI agents: Ask (surface assumptions), Simple (minimum code), Precision (scope only what's needed), Test (loop until verified)"
|
|
717
|
+
},
|
|
707
718
|
{
|
|
708
719
|
"id": "ai-friendly-architecture",
|
|
709
720
|
"name": "AI-Friendly Architecture",
|
|
@@ -2051,6 +2062,62 @@
|
|
|
2051
2062
|
},
|
|
2052
2063
|
"category": "core",
|
|
2053
2064
|
"description": "MISSING vs OUTDATED distinction, semver-aware severity (PATCH/MINOR/MAJOR), and automation integration (pre-commit hook, release gate) for multi-locale documentation"
|
|
2065
|
+
},
|
|
2066
|
+
{
|
|
2067
|
+
"id": "push-standards",
|
|
2068
|
+
"name": "Git Push Safety Gates",
|
|
2069
|
+
"nameZh": "Git Push 安全閘門標準",
|
|
2070
|
+
"source": {
|
|
2071
|
+
"human": "skills/push/SKILL.md",
|
|
2072
|
+
"ai": "ai/standards/push-standards.ai.yaml"
|
|
2073
|
+
},
|
|
2074
|
+
"category": "skill",
|
|
2075
|
+
"skillName": "push",
|
|
2076
|
+
"description": "Git push safety gates, protected branch detection, force-push guardrails, pre-push quality gate enforcement, and push receipt audit trail"
|
|
2077
|
+
},
|
|
2078
|
+
{
|
|
2079
|
+
"id": "no-cicd-deployment",
|
|
2080
|
+
"name": "No-CI/CD Deployment Strategy",
|
|
2081
|
+
"nameZh": "無 CI/CD 部署策略",
|
|
2082
|
+
"source": {
|
|
2083
|
+
"human": "core/no-cicd-deployment.md",
|
|
2084
|
+
"ai": "ai/standards/no-cicd-deployment.ai.yaml"
|
|
2085
|
+
},
|
|
2086
|
+
"category": "core",
|
|
2087
|
+
"description": "Reliable deployment strategy without CI/CD platforms: shell scripts with fail-fast, smoke test verification, Blue-Green rollback"
|
|
2088
|
+
},
|
|
2089
|
+
{
|
|
2090
|
+
"id": "rollback-standards",
|
|
2091
|
+
"name": "Rollback Standards",
|
|
2092
|
+
"nameZh": "回滾標準",
|
|
2093
|
+
"source": {
|
|
2094
|
+
"human": "core/rollback-standards.md",
|
|
2095
|
+
"ai": "ai/standards/rollback-standards.ai.yaml"
|
|
2096
|
+
},
|
|
2097
|
+
"category": "core",
|
|
2098
|
+
"description": "Rollback trigger conditions, auto vs manual decisions, and error budget integration"
|
|
2099
|
+
},
|
|
2100
|
+
{
|
|
2101
|
+
"id": "cd-deployment-strategies",
|
|
2102
|
+
"name": "CD Deployment Strategies",
|
|
2103
|
+
"nameZh": "CD 部署策略",
|
|
2104
|
+
"source": {
|
|
2105
|
+
"human": "core/cd-deployment-strategies.md",
|
|
2106
|
+
"ai": "ai/standards/cd-deployment-strategies.ai.yaml"
|
|
2107
|
+
},
|
|
2108
|
+
"category": "core",
|
|
2109
|
+
"description": "Strategy selection matrix for blue-green, canary, rolling, and recreate deployments"
|
|
2110
|
+
},
|
|
2111
|
+
{
|
|
2112
|
+
"id": "pipeline-security-gates",
|
|
2113
|
+
"name": "Pipeline Security Gates",
|
|
2114
|
+
"nameZh": "CI Pipeline 安全閘門",
|
|
2115
|
+
"source": {
|
|
2116
|
+
"human": "core/pipeline-security-gates.md",
|
|
2117
|
+
"ai": "ai/standards/pipeline-security-gates.ai.yaml"
|
|
2118
|
+
},
|
|
2119
|
+
"category": "core",
|
|
2120
|
+
"description": "Security checkpoints embedded in CI pipeline — SAST, DAST, SCA, secrets scan with block/warn/log behavior"
|
|
2054
2121
|
}
|
|
2055
2122
|
]
|
|
2056
|
-
}
|
|
2123
|
+
}
|