This document defines the development standards for the Universal Development Standards project itself. As a framework that provides development standards to other projects, we practice what we preach ("dogfooding").
Universal Development Standards is a language-agnostic, framework-agnostic documentation standards framework. It provides:
- Core Standards (
core/): 32 fundamental development standards - AI Skills (
skills/): Claude Code skills for AI-assisted development - CLI Tool (
cli/): Node.js CLI for adopting standards - Integrations (
integrations/): Configurations for various AI tools - Localization (
locales/): Multi-language support (English, Traditional Chinese)
| Component | Technology | Version |
|---|---|---|
| Runtime | Node.js | >= 18.0.0 |
| Module System | ES Modules | - |
| Testing | Vitest | ^4.0.16 |
| Linting | ESLint | ^8.56.0 |
| CLI Framework | Commander.js | ^12.1.0 |
| Interactive Prompts | Inquirer.js | ^9.2.12 |
Core Standards Usage Rule: When verifying standards, checking code, or performing tasks, PRIORITIZE reading the concise rules in
core/(e.g.,core/testing-standards.md). ONLY readcore/guides/ormethodologies/guides/when explicitly asked for educational content, detailed explanations, or tutorials. This ensures token efficiency and focused context.
Follow the Conventional Commits specification defined in core/commit-message-guide.md:
<type>(<scope>): <subject>
<body>
<footer>
Types:
feat: New feature or standardfix: Bug fix or error correctiondocs: Documentation updateschore: Maintenance taskstest: Test-related changesrefactor: Code refactoringstyle: Formatting changes
Examples:
feat(core): add new testing completeness dimensions
docs(skills): update Claude Code skill documentation
fix(cli): resolve path resolution issue on Windows
chore(i18n): sync translations with source filesFollow the Git workflow defined in core/git-workflow.md:
| Branch | Purpose |
|---|---|
main |
Stable, production-ready releases |
feature/* |
New features and enhancements |
fix/* |
Bug fixes |
docs/* |
Documentation updates |
chore/* |
Maintenance tasks |
JavaScript:
- Use single quotes for strings
- End statements with semicolons
- Use ES Module syntax (
import/export) - Follow ESLint configuration in
cli/.eslintrc.json
Markdown:
- Use ATX-style headers (
#,##,###) - Include blank lines before and after headers
- Use fenced code blocks with language specification
- All CLI features must have corresponding tests
- Run tests before committing:
npm test(incli/directory) - Run linting:
npm run lint(incli/directory) - Test coverage reports:
npm run test:coverage
When modifying core standards:
- Update the English source file first
- Sync changes to
locales/zh-TW/directory - Run translation check:
./scripts/check-translation-sync.sh
# CLI development (run from cli/ directory)
cd cli
npm install # Install dependencies
npm test # Run tests
npm run test:watch # Run tests in watch mode
npm run lint # Check code style
npm run test:coverage # Generate coverage report
# Translation sync check (run from root)
./scripts/check-translation-sync.sh
# Version sync check (run from root)
./scripts/check-version-sync.sh
# Standards consistency check (run from root)
./scripts/check-standards-sync.sh
# Pre-release check (run all checks at once)
./scripts/pre-release-check.sh
# Local CLI testing
node cli/bin/uds.js list
node cli/bin/uds.js init --help# CLI development (run from cli\ directory)
cd cli
npm install # Install dependencies
npm test # Run tests
npm run test:watch # Run tests in watch mode
npm run lint # Check code style
npm run test:coverage # Generate coverage report
# Translation sync check (run from root)
.\scripts\check-translation-sync.ps1
# Version sync check (run from root)
.\scripts\check-version-sync.ps1
# Standards consistency check (run from root)
.\scripts\check-standards-sync.ps1
# Pre-release check (run all checks at once)
.\scripts\pre-release-check.ps1
# Local CLI testing
node cli\bin\uds.js list
node cli\bin\uds.js init --help# Same commands as macOS / Linux work in Git Bash
./scripts/check-translation-sync.sh
./scripts/check-version-sync.sh
./scripts/check-standards-sync.sh
./scripts/pre-release-check.sh| Timing | Command | Purpose |
|---|---|---|
| During development | npm run test:watch |
Instant feedback |
| Before commit | Automatic (git hook) | Prevent regressions |
| Before PR | ./scripts/pre-release-check.sh |
Full verification |
| CI/CD | Automatic (GitHub Actions) | Continuous integration |
Pre-commit hook (cli/.husky/pre-commit) automatically runs:
npm run test:unit- Unit tests only, excludes E2E (fast, < 5 seconds)eslint --fix- Code style auto-fix via lint-stagedcheck-standards-sync.sh- If core/*.md files modifiedcheck-cli-docs-sync.sh- If cli/bin/*.js files modified
Note: If any check fails, the commit is aborted.
# In cli/ directory
npm test # Run all tests once
npm run test:watch # Watch mode for development
npm run test:coverage # Generate coverage report
npm run lint # Check code styleImportant: This section provides guidance for AI assistants (Claude Code, etc.) on how to efficiently run tests in this project.
Test Suite Characteristics / 測試套件特性:
- Full test suite: ~1,000 tests across 30+ files (unit + E2E)
- Unit tests: < 10 seconds execution time
- E2E tests: ~6 minutes (spawn CLI subprocesses)
- Full suite runtime: ~6 minutes
🚀 Recommended AI Agent Commands / 推薦的 AI Agent 指令:
| Scenario | Command | Execution Time |
|---|---|---|
| Quick Development | cd cli && npm run test:quick |
< 6 seconds (864 tests) |
| Test Discovery | cd cli && npm run test:discover |
< 1 second |
| Unit Tests Only | cd cli && npm run test:unit |
< 3 seconds |
| Exclude E2E Tests | cd cli && npm run test:fast |
< 5 seconds |
| Specific Changes | npm test -- tests/unit/core/ tests/commands/ |
< 2 seconds |
📋 Test Discovery Tool / 測試發現工具:
# Discover all tests and get execution commands
cd cli && npm run test:discover
# Show commands for different scenarios
cd cli && node scripts/test-discovery.mjs commands development- Using
--reporter=summaryor custom reporters (compatibility issues) - Running tests without checking current working directory
✅ Best Practice / 最佳實踐:
# ✅ Recommended: Quick development testing
cd cli && npm run test:quick
# ✅ Good: Test specific modules
npm test -- tests/commands/ai-context.test.js tests/unit/utils/workflows-installer.test.js
# ✅ Good: Use test discovery for targeted testing
cd cli && npm run test:discover
# ✅ Full test suite is now fast enough to run directly
cd cli && npm test # ~6 minutesThe test certificate system is available for advanced workflows but is not used by default in pre-release checks since the full test suite runs quickly (~6 minutes).
Commands / 指令:
# Generate certificate after passing tests (optional)
cd cli && npm run test:with-cert
# Verify existing certificate
cd cli && npm run test:verifyNote: Pre-release checks (
pre-release-check.sh) always run the full test suite. The certificate system is available for custom CI/CD workflows if needed.
Every commit MUST pass these quality gates before committing:
Every commit should:
- ✅ Be a complete logical unit of work
- ✅ Leave the codebase in a working state
- ✅ Be reversible without breaking functionality
- ✅ Contain its own tests (for new features)
Before EVERY commit, verify:
-
Build Verification
- Code compiles successfully (zero errors)
- All dependencies satisfied
-
Test Verification
- All existing tests pass (100% pass rate)
- New code has corresponding tests
- Test coverage not decreased
-
Code Quality
- Follows coding standards
- No hardcoded secrets (passwords, API keys)
- No security vulnerabilities
-
Documentation
- API documentation updated (if applicable)
- CHANGELOG updated for user-facing changes (follow changelog-standards.md)
-
Workflow Compliance
- Branch naming correct (
feature/,fix/,docs/,chore/) - Commit message follows conventional commits
- Synchronized with target branch
- Branch naming correct (
- Build has errors
- Tests are failing
- Feature is incomplete and would break functionality
- Contains WIP/TODO comments for critical logic
- Contains debugging code (console.log, print statements)
- Contains commented-out code blocks
# In cli/ directory
npm run lint # Check code style
npm test # Run all tests
npm run build # Verify build (if applicable)For complete check-in standards, see core/checkin-standards.md
When using AI assistants (Claude Code, Cursor, etc.) with this project:
- All conversations with AI assistants should be conducted in Traditional Chinese (繁體中文)
- AI 助手應以繁體中文回覆使用者的問題與請求
- Reference existing standards in
core/for consistency - Follow the bilingual format (English + Traditional Chinese) for documentation
- Check translation sync after modifying core standards
- Run tests and linting before committing
- Create new standards without following existing template structure
- Modify translated files without updating source files
- Skip the code review checklist for PRs
- Introduce language-specific or framework-specific content in core standards
- Make claims about code without reading it first (see Anti-Hallucination Standards)
- Commit code without running tests first
- This project uses ES Modules (not CommonJS)
- All core standards should remain language/framework agnostic
- Bilingual documentation is required (English primary, zh-TW translation)
- CLI tool is the primary code component; most content is Markdown
When generating BDD and TDD files from SDD specifications:
| Type | Directory | Description |
|---|---|---|
| BDD Features | tests/features/ |
Gherkin .feature files |
| TDD Unit Tests | cli/tests/unit/ |
Vitest unit tests |
| SDD Specs | docs/specs/ |
Specification documents |
BDD Feature File Format:
- Include
@SPEC-XXXand@AC-Ntags for traceability - Include
# [Source: path:AC-N]comments for source attribution - One Scenario per AC (1:1 mapping)
TDD Test File Format:
- Nested describe: SPEC level → AC level
- AAA pattern comments (Arrange-Act-Assert)
- Use
[TODO]markers for implementation placeholders
When working on this project, AI assistants MUST follow core/anti-hallucination.md:
| Requirement | Description |
|---|---|
| Evidence-Based | Only analyze content that has been explicitly read |
| Source Attribution | Use [Source: Code], [Source: Docs] tags with file:line references |
| Certainty Classification | Use [Confirmed], [Inferred], [Assumption], [Unknown] tags |
| Recommendations | Always include recommended option with reasoning when presenting choices |
| No Fabrication | Never invent APIs, configs, or requirements without verification |
When reviewing code or PRs, follow core/code-review-checklist.md:
Review Checklist Categories:
- Functionality - Does it work correctly?
- Design & Architecture - Follows project patterns?
- Code Quality - Clean, DRY, SOLID?
- Readability - Easy to understand?
- Testing - Adequate coverage?
- Security - No vulnerabilities?
- Performance - Efficient?
- Error Handling - Properly handled?
- Documentation - Updated?
- Dependencies - Justified?
Comment Prefixes:
| Prefix | Meaning |
|---|---|
| ❗ BLOCKING | Must fix before merge |
| Should fix | |
| 💡 SUGGESTION | Nice-to-have |
| ❓ QUESTION | Need clarification |
For testing requirements, follow core/testing-standards.md:
Testing Pyramid (Default Ratios):
| Level | Ratio | Purpose |
|---|---|---|
| Unit Tests (UT) | 70% | Test individual functions/methods |
| Integration Tests (IT) | 20% | Test component interactions |
| E2E Tests | 10% | Test user workflows |
Key Requirements:
- All new features must have corresponding tests
- Run tests before committing
- Maintain or improve test coverage
- Use descriptive test names following
should_[expected]_when_[condition]pattern
| Task | MUST Follow | Reference |
|---|---|---|
| Code analysis | Anti-hallucination | core/anti-hallucination.md |
| PR review | Code Review Checklist | core/code-review-checklist.md |
| Adding features | Testing Standards | core/testing-standards.md |
| Any commit | Check-in Standards | core/checkin-standards.md |
| New feature design | Spec-Driven Development | core/spec-driven-development.md |
| Adding/modifying Core↔Skill | /sdd + Sync Check | See "Core↔Skill Sync Rules" below |
| Writing AI instructions | AI Instruction Standards | core/ai-instruction-standards.md |
| Writing documentation | Documentation Writing | core/documentation-writing-standards.md |
| Project architecture for AI | AI-Friendly Architecture | core/ai-friendly-architecture.md |
所有提交訊息必須使用繁體中文撰寫。
格式:<類型>(<範圍>): <主旨>
MUST follow (每次都要遵守):
| Task | Standard | When |
|---|---|---|
| Writing commits | commit-message.ai.yaml | Every commit |
| Project context | project-context-memory.ai.yaml | Planning & Coding |
SHOULD follow (相關任務時參考):
| Task | Standard | When |
|---|---|---|
| Git workflow | git-workflow.ai.yaml | Branch/merge decisions |
| Writing tests | testing.ai.yaml | When creating tests |
| Developer memory | developer-memory.ai.yaml | Always (protocol) |
本專案採用 UDS 標準。所有規範位於 .standards/:
anti-hallucination.ai.yaml- anti-hallucination.ai.yamlai-friendly-architecture.ai.yaml- ai-friendly-architecture.ai.yamlcommit-message.ai.yaml- 提交訊息格式english.ai.yaml- english.ai.yamlcheckin-standards.ai.yaml- checkin-standards.ai.yamlspec-driven-development.ai.yaml- spec-driven-development.ai.yamlcode-review.ai.yaml- code-review.ai.yamlgit-workflow.ai.yaml- Git 工作流程github-flow.ai.yaml- github-flow.ai.yamlsquash-merge.ai.yaml- squash-merge.ai.yamlversioning.ai.yaml- versioning.ai.yamlchangelog.ai.yaml- changelog.ai.yamltesting.ai.yaml- 測試標準unit-testing.ai.yaml- unit-testing.ai.yamlintegration-testing.ai.yaml- integration-testing.ai.yamldocumentation-structure.ai.yaml- documentation-structure.ai.yamldocumentation-writing-standards.ai.yaml- documentation-writing-standards.ai.yamlai-instruction-standards.ai.yaml- ai-instruction-standards.ai.yamlproject-structure.ai.yaml- project-structure.ai.yamlerror-codes.ai.yaml- error-codes.ai.yamllogging.ai.yaml- logging.ai.yamltest-completeness-dimensions.ai.yaml- test-completeness-dimensions.ai.yamltest-driven-development.ai.yaml- test-driven-development.ai.yamlbehavior-driven-development.ai.yaml- behavior-driven-development.ai.yamlacceptance-test-driven-development.ai.yaml- acceptance-test-driven-development.ai.yamlreverse-engineering-standards.ai.yaml- reverse-engineering-standards.ai.yamlforward-derivation-standards.ai.yaml- forward-derivation-standards.ai.yamlai-agreement-standards.ai.yaml- ai-agreement-standards.ai.yamlvirtual-organization-standards.ai.yaml- virtual-organization-standards.ai.yamlrefactoring-standards.ai.yaml- refactoring-standards.ai.yamlrequirement-engineering.ai.yaml- requirement-engineering.ai.yamlsecurity-standards.ai.yaml- security-standards.ai.yamlperformance-standards.ai.yaml- performance-standards.ai.yamlaccessibility-standards.ai.yaml- accessibility-standards.ai.yamlrequirement-checklist.md- requirement-checklist.mdrequirement-template.md- requirement-template.mdrequirement-document-template.md- requirement-document-template.mddeployment-standards.ai.yaml- deployment-standards.ai.yamldeveloper-memory.ai.yaml- 開發者持久記憶project-context-memory.ai.yaml- 專案情境記憶
IMPORTANT: After completing any of the following modifications, AI assistants MUST read and follow the verification steps in docs/OPERATION-WORKFLOW.md:
| Modification Type | Reference Section |
|---|---|
| Add/modify core standard | §8.1 Adding a New Core Standard |
| Add/modify skill | §8.2 Adding a New Skill |
| Add/modify AI tool integration | §8.3 Adding a New AI Tool Integration |
| Prepare release | §9 Release Process |
| Any multi-file change | §7 Maintenance Workflow |
| Add/modify installation commands | Cross-Platform Command Sync (below) |
After ANY modification, run:
# Run all checks at once (recommended)
./scripts/pre-release-check.sh
# Or run individual checks:
./scripts/check-standards-sync.sh
./scripts/check-translation-sync.sh
./scripts/check-version-sync.sh
./scripts/check-ai-agent-sync.sh
./scripts/check-spec-sync.sh # Core↔Skill sync
./scripts/check-scope-sync.sh # Scope universality check
./scripts/check-docs-integrity.sh # Documentation integrity
cd cli && npm test && npm run lint當 AI Agent 需要執行跨 AI Agent 同步檢查時,遵循以下步驟:
- 使用 Explore Agent 掃描
integrations/目錄 - 識別所有 AI Agent 整合檔案
- 分析 Skills 與 Commands 分發狀態
檢查每個整合檔案是否包含以下核心規則:
| 規則 ID | 名稱 | 嚴重性 | 說明 |
|---|---|---|---|
| AH-001 | Evidence-Based Analysis | ERROR | 必須先讀取檔案再分析 |
| AH-002 | Source Attribution | ERROR | 必須標注來源 |
| AH-003 | Certainty Classification | WARNING | 使用確定性標籤 |
| AH-004 | Recommendation Required | WARNING | 提供推薦選項 |
| SDD-001 | SDD Tool Detection | ERROR | 偵測 OpenSpec/Spec Kit |
| SDD-002 | SDD Command Priority | WARNING | SDD 命令優先級 |
| CMT-001 | Conventional Commits | WARNING | 提交格式 |
輸出格式:
- 同步狀況總覽(百分比)
- 各 Agent 合規狀態表
- 缺失規則清單
- 修復建議
macOS / Linux:
./scripts/check-ai-agent-sync.sh --verboseWindows PowerShell:
.\scripts\check-ai-agent-sync.ps1 -Verbose請執行 UDS 專案的「跨 AI Agent 同步檢查」作業:
1. 掃描 integrations/ 目錄下的所有整合檔案
2. 驗證每個檔案是否包含以下核心規則:
- Anti-Hallucination (AH-001~004)
- SDD Priority (SDD-001~002)
- Commit Format (CMT-001)
3. 生成同步狀況報告
4. 列出需要修復的項目
參考檔案:
- docs/internal/AI-AGENT-SYNC-SOP.md
- integrations/REGISTRY.json
⚠️ This section is UDS project-specific. The UDS project maintains bidirectional relationships between Core Standards, Skills, and Commands.
Core Standard ◄──────────► Skill ◄──────────► Command
│ │ │
└───────────────────────┴───────────────────┘
▼
Translations
| Change Origin | MUST Evaluate Sync To |
|---|---|
| Core Standard | → Skill, Command, AI YAML, Translations |
| Skill | → Core Standard (if applicable), Command, Translations |
| Command | → Skill, Translations |
| Category | Description | Examples |
|---|---|---|
| Has Core Standard | Skill implements a Core Standard | commit-standards ↔ commit-message-guide.md |
| Utility Skill | No Core Standard needed (tool/generator) | docs-generator, code-formatter |
| Static Skill | Reference only, no interaction | Skills that only link to standards |
ANY of the following changes MUST use /sdd first:
-
Adding Features | 新增功能
- New Core Standard
- New Skill
- New Slash Command
-
Modifying Features | 修改功能
- Modifying Core Standard content
- Modifying Skill behavior
- Modifying Command functionality
-
Removing Features | 移除功能
- Removing standards
- Removing Skills/Commands
Exceptions (can skip /sdd):
- Typo fixes
- Formatting changes
- Pure translation updates
- Emergency hotfixes (must document retroactively)
macOS / Linux:
./scripts/check-spec-sync.shWindows PowerShell:
.\scripts\check-spec-sync.ps1Expected output:
✓ commit-standards ↔ core/commit-message-guide.md
✓ testing-guide ↔ core/testing-standards.md
⚠ docs-generator (utility, no core standard required)
✓ All Skills synced with Core Standards
All Core Standards and Skills are marked with a scope field indicating their universality:
| Scope | Description | Usage |
|---|---|---|
universal |
Fully universal, usable by any project | Can be adopted as-is |
partial |
Concept is universal but contains UDS-specific details | Review before adopting |
uds-specific |
UDS project-specific tool or workflow | For internal use only |
Current distribution:
- Core Standards: 14 universal (61%), 7 partial (30%), 2 uds-specific (9%)
- Skills: 12 universal (48%), 10 partial (40%), 3 uds-specific (12%)
-
Skills: In YAML frontmatter of
SKILL.md--- name: skill-name scope: universal description: ... ---
-
Core Standards: In markdown metadata
**Applicability**: All software projects **Scope**: universal
macOS / Linux:
./scripts/check-scope-sync.shWindows PowerShell:
.\scripts\check-scope-sync.ps1
⚠️ This section is UDS project-specific. Not all projects require maintaining bilingual translations with cross-platform commands.
After modifying these UDS project files, verify cross-platform command sync:
- Adoption guides (
adoption/) - Skills installation instructions (
skills/*/README.md) - Maintenance guides (
MAINTENANCE.md,ai/MAINTENANCE.md) - Checklists (
adoption/checklists/)
33 files require cross-platform command maintenance:
- English sources: 11 files
- zh-TW translations: 11 files
- zh-CN translations: 11 files
| Bash | PowerShell | Purpose / 用途 |
|---|---|---|
cp file dest/ |
Copy-Item file dest\ |
Copy file / 複製檔案 |
cp -r dir/ dest/ |
Copy-Item -Recurse dir\ dest\ |
Recursive copy / 遞迴複製 |
mkdir -p dir |
New-Item -ItemType Directory -Force -Path dir |
Create directory / 建立目錄 |
~/ |
$env:USERPROFILE\ |
User home / 使用者目錄 |
./script.sh |
.\script.ps1 |
Run script / 執行腳本 |
Use these labels for platform-specific code blocks:
**macOS / Linux:**followed by bash code block**Windows PowerShell:**followed by powershell code block
When preparing releases or helping with version management:
- Complete Release Workflow: skills/release-standards/release-workflow.md
- Semantic Versioning: skills/release-standards/semantic-versioning.md
- Versioning Standards: core/versioning.md
- CHANGELOG Format: skills/release-standards/changelog-format.md
- Never manually run
npm publish: GitHub Actions handles this automatically - Version Detection is Automatic:
.github/workflows/publish.ymldetects version type and uses correct npm tag - Always follow the checklist: Pre-release checks in release-workflow.md
- CHANGELOG first: Update CHANGELOG.md before creating releases
| Type | Version Pattern | npm Tag | Auto-detected |
|---|---|---|---|
| Stable | X.Y.Z |
@latest |
✅ Yes |
| Beta | X.Y.Z-beta.N |
@beta |
✅ Yes |
| Alpha | X.Y.Z-alpha.N |
@alpha |
✅ Yes |
| RC | X.Y.Z-rc.N |
@rc |
✅ Yes |
When user asks to prepare a release:
- Ask for release type: beta, alpha, rc, or stable
- Run pre-release checks: Tests, linting, git status
- Update ALL version files (see UDS-specific section below)
- Update CHANGELOG.md: Follow the format in release-workflow.md
- Create git tag: Format
vX.Y.ZorvX.Y.Z-beta.N - Commit and push: Git commit and push tags
- Create GitHub Release: Use
gh release createcommand
⚠️ IMPORTANT: This section contains UDS-specific requirements that MUST be followed in addition to the standard release workflow.
When updating version, files must be synchronized based on release type:
| File | Field | Alpha/Beta/RC | Stable |
|---|---|---|---|
cli/package.json |
"version" |
✅ Update | ✅ Update |
cli/standards-registry.json |
"version" (3 places) |
✅ Update | ✅ Update |
.claude-plugin/plugin.json |
"version" |
❌ Keep stable | ✅ Update |
.claude-plugin/marketplace.json |
"version" |
❌ Keep stable | ✅ Update |
README.md |
**Version**: |
✅ Update | ✅ Update |
Marketplace Version Strategy:
.claude-plugin/files are only updated for stable releases. This prevents beta/alpha versions from being automatically pushed to Claude Plugin Marketplace users. Marketplace users will only receive stable versions.
# macOS / Linux
./scripts/pre-release-check.sh
# Windows PowerShell
.\scripts\pre-release-check.ps1This runs 14 checks including:
- Git working directory status
- Version sync (
check-version-sync.sh) - Standards sync (
check-standards-sync.sh) - Translation sync (
check-translation-sync.sh) 5-11. CLI-docs, docs, AI agent, usage docs, spec, scope, commands sync checks - Documentation integrity (
check-docs-integrity.sh) - Linting
- Tests
For stable releases, ensure translations are synchronized:
./scripts/check-translation-sync.sh # zh-TW
./scripts/check-translation-sync.sh zh-CN # zh-CNNote: This workflow is specific to the UDS project. The generic release workflow (see
release-workflow.md) uses a simpler Beta→Stable pattern suitable for most projects.
Workflow Philosophy: Version first, then validate. Assign version number before testing to ensure validation targets the exact release version.
Phase Overview:
| Phase | Version Pattern | npm Tag | Purpose |
|---|---|---|---|
| Phase 1: Alpha | X.Y.Z-alpha.N |
@alpha |
Internal validation, pre-release checks |
| Phase 2: Beta | X.Y.Z-beta.N |
@beta |
Public testing, early adopter feedback |
| Phase 3: Stable | X.Y.Z |
@latest |
Production release |
Detailed Steps:
Phase 1: Alpha Release (Internal)
- Update version to alpha:
npm version X.Y.Z-alpha.1 --no-git-tag-version - Update CLI version files only (2 files):
cli/package.jsoncli/standards-registry.json
- Do NOT update
.claude-plugin/files (keep previous stable version) - Run pre-release checks:
./scripts/pre-release-check.sh - Update CHANGELOG with alpha notes
- Commit:
chore(release): X.Y.Z-alpha.1 - Create tag:
vX.Y.Z-alpha.1 - Push and create GitHub Release (mark as pre-release)
Phase 2: Beta Release (Public Testing)
- After alpha validation passes, update to beta:
npm version X.Y.Z-beta.1 --no-git-tag-version - Update CLI version files only (2 files):
cli/package.jsoncli/standards-registry.json
- Do NOT update
.claude-plugin/files (keep previous stable version) - Run full test suite
- Update CHANGELOG with beta notes
- Commit:
chore(release): X.Y.Z-beta.1 - Create tag:
vX.Y.Z-beta.1 - Push and create GitHub Release (mark as pre-release)
- Announce to early adopters for feedback
Phase 3: Stable Release (Production)
- After beta testing completes, update to stable:
npm version X.Y.Z --no-git-tag-version - Update ALL version files (5 files):
cli/package.jsoncli/standards-registry.json.claude-plugin/plugin.json← Marketplace updated here.claude-plugin/marketplace.json← Marketplace updated hereREADME.md
- Finalize CHANGELOG (remove beta warnings, add stable notes)
- Sync translations:
./scripts/check-translation-sync.sh - Run final pre-release checks
- Commit:
chore(release): X.Y.Z - Create tag:
vX.Y.Z - Push and create GitHub Release
- Verify npm publication:
npm view universal-dev-standards dist-tags
When to Use This Workflow:
- Major releases with breaking changes
- Features requiring extensive testing
- Releases needing early adopter validation
When to Skip Alpha (Beta→Stable only):
- Patch releases (bug fixes only)
- Minor releases with low-risk changes
- Urgent security fixes
User: "我想發布 beta 版本"
AI:
我會協助你準備 beta 版本發布。
首先,讓我執行預發布檢查:
1. ✅ 執行測試
2. ✅ 執行 linting
3. ✅ 檢查 git 狀態
請提供以下資訊:
1. 版本號是多少?(例如:3.2.2-beta.1)
2. 主要包含哪些變更?
確認後,我會:
1. 更新 cli/package.json 版本號
2. 更新 CHANGELOG.md
3. 建立 git tag (vX.Y.Z-beta.N)
4. 提交並推送變更
5. 提供建立 GitHub Release 的步驟
**重要**:建立 GitHub Release 後,GitHub Actions 會自動:
- 偵測版本類型(beta)
- 發布到 npm 並標記為 @beta
- 無需手動執行 npm publish
universal-dev-standards/
├── core/ # Core standards (32 files)
├── skills/ # AI tool skills
│ └── claude-code/ # Claude Code skills (26 skills)
├── cli/ # Node.js CLI tool
│ ├── src/ # Source code
│ ├── tests/ # Test files
│ └── package.json # Dependencies
├── locales/ # Translations
│ └── zh-TW/ # Traditional Chinese
├── integrations/ # AI tool configurations
├── templates/ # Document templates
├── adoption/ # Adoption guides
└── scripts/ # Maintenance scripts
See CONTRIBUTING.md for detailed contribution guidelines.
- Documentation (Markdown): CC BY 4.0
- Code (JavaScript): MIT