openspec-archivelisted
Install: claude install-skill 10CG/aria-plugin
# OpenSpec Archive (归档器)
> **版本**: 1.0.0 | **十步循环**: D.2
> **更新**: 2026-02-08 - 初始版本,修复 CLI 归档位置 bug
## 快速开始
### 我应该使用这个 Skill 吗?
**使用场景**:
- Spec 所有任务已完成,需要归档
- Phase D.2 收尾阶段
- 清理已完成的变更
**不使用场景**:
- Spec 仍有活跃任务 → 完成任务后再归档
- 需要继续修改 Spec → 保持变更活跃状态
---
## 核心功能
| 功能 | 说明 |
|------|------|
| **状态验证** | 检查 Spec 完成状态和任务完成度 |
| **执行归档** | 调用 openspec archive CLI |
| **自动修正** | 修正 CLI 的归档目录位置 bug |
| **清理验证** | 清理空目录,验证最终结果 |
---
## ⚠️ 已知 Bug: OpenSpec CLI 归档位置错误
**问题**: `openspec archive` CLI 命令有 bug,输出到错误位置:
```
❌ CLI 输出: openspec/changes/archive/YYYY-MM-DD-{feature}/
✅ 正确位置: openspec/archive/YYYY-MM-DD-{feature}/
```
**本 Skill 会自动修正此问题**。
---
## 正确的目录结构
```
openspec/
├── archive/ # ✅ 正确的归档位置
│ └── YYYY-MM-DD-{feature}/
│ ├── proposal.md
│ ├── tasks.md
│ └── detailed-tasks.yaml
└── changes/ # 活跃变更
└── {active-feature}/
```
---
## 执行流程
### 输入
```yaml
change_name:
required: true
description: 要归档的变更目录名
example: "cloudflare-access-auto-handling"
options:
skip_verification: false # 跳过完成状态验证
keep_changes_copy: false # 在 changes/ 中保留副本
dry_run: false # 仅验证不执行
```
### 步骤
```yaml
Step 1 - 验证完成状态:
检查: openspec/changes/{change_name}/tasks.md
验证: 所有任务标记为 [x] (完成)
失败: 提示未完成任务,中止归档
Step 2 - 更新 proposal.md 状态:
读取: openspec/changes/{change_name}/proposal.md
更新: Status: Implemented → Co