orchestrix-yuri 4.2.4 → 4.2.5
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/package.json +1 -1
- package/skill/tasks/yuri-status.md +50 -14
package/package.json
CHANGED
|
@@ -105,27 +105,63 @@ Read `{project}/.yuri/state/phase2.yaml`.
|
|
|
105
105
|
|
|
106
106
|
### IF Phase 3 (Develop) is in progress or complete:
|
|
107
107
|
|
|
108
|
-
|
|
108
|
+
**Generate a progress card** using these data sources:
|
|
109
109
|
|
|
110
|
-
Scan
|
|
110
|
+
**1. Scan story statuses:**
|
|
111
111
|
```bash
|
|
112
112
|
SCRIPT_DIR="${CLAUDE_SKILL_DIR}/scripts"
|
|
113
113
|
bash "$SCRIPT_DIR/scan-stories.sh" "$PROJECT_DIR"
|
|
114
114
|
```
|
|
115
115
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
| In Progress | {in_progress count} |
|
|
124
|
-
| Blocked | {blocked count} |
|
|
125
|
-
| Remaining | {remaining count} |
|
|
116
|
+
The script outputs:
|
|
117
|
+
- `Total:{N}` — total planned stories from all `docs/prd/epic-*.yaml` definitions
|
|
118
|
+
- `Created:{N}` — story files in `docs/stories/`
|
|
119
|
+
- `StatusDone:{filename}` / `StatusInProgress:{filename}` / etc. — per-file status
|
|
120
|
+
- `Epics:{N}` — total epics (max N from `docs/prd/epic-N-*`)
|
|
121
|
+
- `CurrentEpic:{N}` — epic of current story
|
|
122
|
+
- `CurrentStory:{filename}` — InProgress or last non-Done story
|
|
126
123
|
|
|
127
|
-
|
|
128
|
-
```
|
|
124
|
+
**2. Detect active tmux agent:**
|
|
125
|
+
```bash
|
|
126
|
+
# Check which orchestrix-* session exists
|
|
127
|
+
tmux list-sessions -F "#{session_name}" 2>/dev/null | grep "^orchestrix-"
|
|
128
|
+
|
|
129
|
+
# For each window (0=Architect, 1=SM, 2=Dev, 3=QA):
|
|
130
|
+
# - Window showing "Command | Description" table = IDLE
|
|
131
|
+
# - Window WITHOUT that table = actively executing
|
|
132
|
+
for w in 0 1 2 3; do
|
|
133
|
+
OUTPUT=$(tmux capture-pane -t "$DEV_SESSION:$w" -p -S -15)
|
|
134
|
+
if ! echo "$OUTPUT" | grep -q "Command.*Description"; then
|
|
135
|
+
echo "Window $w is ACTIVE"
|
|
136
|
+
fi
|
|
137
|
+
done
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
**3. Format the progress card:**
|
|
141
|
+
|
|
142
|
+
```
|
|
143
|
+
📊 Dev Progress Report
|
|
144
|
+
━━━━━━━━━━━━━━━━━━━━━
|
|
145
|
+
Epic: {CurrentEpic}/{Epics}
|
|
146
|
+
Story: {done}/{total} done ({pct}%) | {created} created
|
|
147
|
+
▓▓▓▓▓▓░░░░░░░░░░░░░░ {pct}%
|
|
148
|
+
━━━━━━━━━━━━━━━━━━━━━
|
|
149
|
+
✅ Done: {N}
|
|
150
|
+
🔄 InProgress: {N}
|
|
151
|
+
📋 Approved: {N}
|
|
152
|
+
📝 Draft: {N}
|
|
153
|
+
━━━━━━━━━━━━━━━━━━━━━
|
|
154
|
+
📝 Current: {CurrentStory}
|
|
155
|
+
🤖 Agent: {active_agent} (window {N})
|
|
156
|
+
⏱ Running for {elapsed}
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Where:
|
|
160
|
+
- `{pct}` = round(done / total * 100)
|
|
161
|
+
- Progress bar: `▓` for filled, `░` for empty (20 chars total)
|
|
162
|
+
- Only show status categories with count > 0
|
|
163
|
+
- `{elapsed}` = time since `focus.updated_at` or `phase3.started_at`
|
|
164
|
+
- If no agent is active (all windows show Command table), show "All agents idle (waiting for handoff)"
|
|
129
165
|
|
|
130
166
|
### IF Phase 4 (Test) is in progress or complete:
|
|
131
167
|
|