wb-flow 1.0.0-r01
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/CHANGELOG.md +12 -0
- package/LICENSE +21 -0
- package/README.md +128 -0
- package/assets/demo.gif +0 -0
- package/bin/install.js +175 -0
- package/bin/link.js +71 -0
- package/bin/verify-wrappers.js +49 -0
- package/package.json +56 -0
- package/templates/commands/_shared/output_conventions.md +433 -0
- package/templates/commands/_shared/wb_universal_agent_instructions.md +72 -0
- package/templates/commands/model_recommendation_updates.md +74 -0
- package/templates/commands/model_recommendations.md +112 -0
- package/templates/commands/wbActOn/wbActOn_template.md +546 -0
- package/templates/commands/wbAudit/wbAudit_template.md +315 -0
- package/templates/commands/wbBroadcast/wbBroadcast_template.md +133 -0
- package/templates/commands/wbCheck/wbCheck_template.md +322 -0
- package/templates/commands/wbClean/wbClean_template.md +118 -0
- package/templates/commands/wbContext/wbContext_template.md +213 -0
- package/templates/commands/wbDebug/wbDebug_template.md +132 -0
- package/templates/commands/wbDeploy/wbDeploy_template.md +224 -0
- package/templates/commands/wbDoc/wbDoc_template.md +138 -0
- package/templates/commands/wbExplain/wbExplain_template.md +98 -0
- package/templates/commands/wbGit/wbGit_template.md +160 -0
- package/templates/commands/wbHelp/wbHelp_template.md +101 -0
- package/templates/commands/wbIdea/wbIdea_template.md +337 -0
- package/templates/commands/wbLicense/wbLicense_template.md +148 -0
- package/templates/commands/wbMonetize/wbMonetize_template.md +113 -0
- package/templates/commands/wbNext/wbNext_template.md +270 -0
- package/templates/commands/wbPlan/wbPlan_template.md +413 -0
- package/templates/commands/wbPublish/wbPublish_template.md +205 -0
- package/templates/commands/wbRefactor/wbRefactor_template.md +129 -0
- package/templates/commands/wbRelease/wbRelease_template.md +229 -0
- package/templates/commands/wbReview/wbReview_template.md +252 -0
- package/templates/commands/wbSecure/wbSecure_template.md +157 -0
- package/templates/commands/wbSetup/wbSetup_template.md +203 -0
- package/templates/commands/wbStandup/wbStandup_template.md +198 -0
- package/templates/commands/wbTest/wbTest_template.md +226 -0
- package/templates/commands/wbToWBC/wbToWBC_template.md +91 -0
- package/templates/commands/wbTrack/wbTrack_template.md +555 -0
- package/templates/commands/wbTranslate/wbTranslate_template.md +114 -0
- package/templates/commands/wbValid/wbValid_template.md +142 -0
- package/templates/commands/wbVision/wbVision_template.md +141 -0
- package/templates/commands/wbWork/wbWork_template.md +140 -0
- package/templates/commands/wb_commands_reference.claude.json +2305 -0
- package/templates/commands/wb_commands_reference.json +1109 -0
- package/templates/shortcuts/shortcuts.md +413 -0
- package/templates/shortcuts/usage-management-examples-shortcuts/budget_controllers_examples.md +96 -0
- package/templates/shortcuts/usage-management-examples-shortcuts/ultimate_shortcuts_examples.md +1531 -0
|
@@ -0,0 +1,555 @@
|
|
|
1
|
+
# /wbTrack β Session Tracking (v2: Universal Daily Session)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<!-- HELP_GATE_START -->
|
|
5
|
+
## Help intercept (handle FIRST β before any other action)
|
|
6
|
+
|
|
7
|
+
**If `$ARGUMENTS` contains `--help`, `-h`, or `--h`** (case-insensitive, anywhere in the args), DO NOT execute the command's normal procedure. Instead:
|
|
8
|
+
|
|
9
|
+
1. Output the **HELP BLOCK** below verbatim (rendered as markdown).
|
|
10
|
+
2. Stop. Do not perform any file reads, writes, or other tool calls.
|
|
11
|
+
3. Do not generate any reports under `.wb/workflows/reports/`.
|
|
12
|
+
|
|
13
|
+
Otherwise, ignore this section and proceed to the rest of the template.
|
|
14
|
+
|
|
15
|
+
### HELP BLOCK β `/wbTrack`
|
|
16
|
+
|
|
17
|
+
# /wbTrack: Practical Guide π οΈ (Claude version)
|
|
18
|
+
|
|
19
|
+
## Quick Start
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
/wbTrack packages/wb-core # start tracking (create or join today's file)
|
|
23
|
+
/wbTest wb-core # creates report + Β§N *(Your Model β HH:MM)* in session
|
|
24
|
+
/wbAudit wb-core # creates report + Β§N *(Your Model β HH:MM)* in session
|
|
25
|
+
/wbTrack --stop # Β§STOP for your model (file stays open for others)
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## The Rule of Two Outputs
|
|
29
|
+
|
|
30
|
+
When tracking is ON, every command produces **two things**:
|
|
31
|
+
|
|
32
|
+
| Output | Location | Purpose |
|
|
33
|
+
|---|---|---|
|
|
34
|
+
| **Report file** | `reports/<date>/<type>/<type>_<target>_<date>.md` | Structured data, scanned tomorrow |
|
|
35
|
+
| **Β§N in session** | `walkthroughs/<date>/session_<target>_<date>.md` | Narrative with commentary (shared by all models) |
|
|
36
|
+
|
|
37
|
+
When tracking is OFF, only the report is created.
|
|
38
|
+
|
|
39
|
+
## Create vs Append
|
|
40
|
+
|
|
41
|
+
| Situation | Behavior |
|
|
42
|
+
|---|---|
|
|
43
|
+
| First model today runs `/wbTrack` | **Creates** the file + writes Β§0 |
|
|
44
|
+
| Later model runs `/wbTrack` same scope | **Appends** contributor entry to existing file |
|
|
45
|
+
| Any model runs `/wb*` while tracking | **Appends** Β§N tagged with model name + time |
|
|
46
|
+
|
|
47
|
+
## Scoping Cheat Sheet
|
|
48
|
+
|
|
49
|
+
| You type | Session file lives at | Β§0 reads |
|
|
50
|
+
|---|---|---|
|
|
51
|
+
| `/wbTrack packages/wb-core` | `wb-core/.wb/workflows/walkthroughs/<date>/session_wb-core_<date>.md` | wb-core code + reports |
|
|
52
|
+
| `/wbTrack` | `core2/.wb/workflows/walkthroughs/<date>/session_core2_<date>.md` | All packages |
|
|
53
|
+
|
|
54
|
+
## Common Mistakes
|
|
55
|
+
|
|
56
|
+
β Expecting a `<model>/` subfolder under `walkthroughs/` β there is none in v2
|
|
57
|
+
β Expecting reports to go to `walkthroughs/` β they always go to `reports/`
|
|
58
|
+
β Using `/wbTrack` for a single command β overkill, just run the command
|
|
59
|
+
β Running `/wbTrack --stop --finalize` mid-day β extracts partial derivatives (wait until end of day)
|
|
60
|
+
|
|
61
|
+
## When NOT to Track
|
|
62
|
+
|
|
63
|
+
- Quick one-off `/wbTest` or `/wbGit`
|
|
64
|
+
- Commands you've run dozens of times
|
|
65
|
+
- When you don't need commentary (just the facts)
|
|
66
|
+
|
|
67
|
+
> For deeper reading: [`docs_claude/commands/wbTrack/wbTrack_practical_claude.md`](../../docs/docs_claude/commands/wbTrack/wbTrack_practical_claude.md) (or the `_eli5_`, `_expert_`, `_examples_` siblings).
|
|
68
|
+
|
|
69
|
+
<!-- FLAGS_TABLE_START -->
|
|
70
|
+
## Flags & shortcuts
|
|
71
|
+
|
|
72
|
+
Both forms are equivalent β pass either:
|
|
73
|
+
|
|
74
|
+
| Long form | Shortcut |
|
|
75
|
+
|---|---|
|
|
76
|
+
| `--finalize` | `-f` |
|
|
77
|
+
| `--scope` | `-s` |
|
|
78
|
+
|
|
79
|
+
`-h` / `--help` / `--h` (any command) prints this help block instead of executing.
|
|
80
|
+
## Self-correct mode (dual-mode invocation)
|
|
81
|
+
|
|
82
|
+
```
|
|
83
|
+
/wbTrack <scope_folder> # normal mode β produce a fresh output file
|
|
84
|
+
/wbTrack <previous_output_file> # self-correct mode β verify & repair the file in place
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
When the first arg is an existing output file from a prior `/wbTrack` run (detected by its first H1 β see this template's **Detection** section), the command runs in **verify-and-repair** mode: gap-fills missing fields, normalizes links, ticks done/valid checkboxes whose reports exist, never rewrites authored content. See [`../_shared/output_conventions.md`](../_shared/output_conventions.md) Β§3.
|
|
88
|
+
|
|
89
|
+
<!-- FLAGS_TABLE_END -->
|
|
90
|
+
<!-- HELP_GATE_END -->
|
|
91
|
+
|
|
92
|
+
<!-- FLAG_NORMALIZE_START -->
|
|
93
|
+
## Flag normalization (apply BEFORE parsing args)
|
|
94
|
+
|
|
95
|
+
Before processing `$ARGUMENTS`, normalize these short-form flags to their long equivalents:
|
|
96
|
+
|
|
97
|
+
- `-f` β `--finalize`
|
|
98
|
+
- `-s` β `--scope`
|
|
99
|
+
|
|
100
|
+
The rest of this template documents only the long forms; the substitution above is the only place short forms are mentioned.
|
|
101
|
+
<!-- FLAG_NORMALIZE_END -->
|
|
102
|
+
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
> **Command #25** in the `/wb*` suite
|
|
106
|
+
> **Purpose**: Toggle session tracking ON. Every `/wb*` command produces its normal report AND gets logged into a **universal daily session file** with strategic commentary.
|
|
107
|
+
> **Companion**: `/wbTrack --stop` ends this model's tracking and writes a Β§STOP block.
|
|
108
|
+
> **Read first:** [`../_shared/output_conventions.md`](../_shared/output_conventions.md) β every Β§N section appended to the session file MUST follow the relative-link rule (Β§1) and full-syntax-command rule (Β§2). Self-correct mode (Β§3) applies in a **limited** form: see the Detection block below β gap-fill only, never rewrites existing Β§N bodies.
|
|
109
|
+
|
|
110
|
+
---
|
|
111
|
+
|
|
112
|
+
## Convention Notes for Session Entries
|
|
113
|
+
|
|
114
|
+
When writing each Β§N section to the session file:
|
|
115
|
+
|
|
116
|
+
- **Relative links (Β§1):** Every `Files read`, `Files created/modified`, and `Report file` reference MUST be a relative markdown link computed from the session file's directory. Plain-text paths are forbidden.
|
|
117
|
+
- **Full-syntax commands (Β§2):** The `# Β§N β \`/wbCommand target [flags]\`` heading and every entry in the `Recommended Next` table MUST use the full invocable form (e.g., `/wbTest packages/wb-core --scope=task-1`, not bare `/wbTest`).
|
|
118
|
+
- **Limited self-correct on the session file itself:** Re-running `/wbTrack` on an existing track file (when the path is passed *as the argument*, not as the scope) triggers the Detection block below β verify-and-repair only. Re-running `/wbTrack` on the *scope folder* still appends a new contributor entry (Β§N) and never rewrites previous entries.
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## βββ DETECTION (Self-Correct Mode) βββ
|
|
123
|
+
|
|
124
|
+
**Trigger:** `$ARGUMENTS` resolves to a file (not a folder) AND that file's first H1 matches:
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
# Track: <scope> β <YYYY-MM-DD>
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
When triggered, switch from "create / append contributor" mode to **verify-and-repair mode**. Behavior is governed by [`../_shared/output_conventions.md`](../_shared/output_conventions.md) Β§3, with these track-specific gap-fills.
|
|
131
|
+
|
|
132
|
+
### What track self-correct CHECKS
|
|
133
|
+
|
|
134
|
+
1. **Β§N order:** sections numbered Β§0, Β§1, Β§2, β¦ with no gaps. Flag (do not renumber) if a Β§N is missing β could be intentional from another model.
|
|
135
|
+
2. **Model-tag formatting:** every `# Β§N β ... *(<Model> β <HH:MM>)*` heading has both model name and time in italics+parens.
|
|
136
|
+
3. **Footer present:** the `## π Generated Files (<YYYYMMDD>)` block exists at the bottom with at least the Base Reference Files table.
|
|
137
|
+
4. **Link integrity:** every relative markdown link in the file resolves to an actual on-disk file from the session file's directory. Broken links β list them under a `## β οΈ Self-Correct Findings` section near the bottom (do NOT edit the original Β§N bodies β see "What it does NOT do" below).
|
|
138
|
+
5. **Bare /wbX in `Recommended Next` tables:** expand to full-syntax `/wbX <target> [flags]` per Β§2 of output_conventions.
|
|
139
|
+
6. **Plain-text file references in `Files read` / `Files created`:** convert to relative markdown links per Β§1.
|
|
140
|
+
7. **Status freshness:** if the front-matter `> **Status:**` is `π’ ACTIVE` but the most recent Β§N is > 24h old, change to `π‘ STALE` and note the lag in `## β οΈ Self-Correct Findings`.
|
|
141
|
+
|
|
142
|
+
### What track self-correct does NOT do
|
|
143
|
+
|
|
144
|
+
- Does NOT rewrite the body text of any Β§N (preserve each model's voice and audit trail).
|
|
145
|
+
- Does NOT add or delete Β§N sections.
|
|
146
|
+
- Does NOT change the Β§0 strategic vision content.
|
|
147
|
+
- Does NOT re-run `/wbStandup` or any sub-command (no new analysis).
|
|
148
|
+
- Does NOT delete broken-link references β only flags them in the Findings section.
|
|
149
|
+
|
|
150
|
+
### Where self-correct WRITES
|
|
151
|
+
|
|
152
|
+
Append (or update if it exists) a **single section** at the bottom of the file, just above the `## π Generated Files` footer:
|
|
153
|
+
|
|
154
|
+
```markdown
|
|
155
|
+
## β οΈ Self-Correct Findings *(<Model> β <YYYY-MM-DD HH:MM>)*
|
|
156
|
+
|
|
157
|
+
**Verified:** Β§N order, model-tag formatting, footer present (β
all clean) OR list specific issues found.
|
|
158
|
+
|
|
159
|
+
**Auto-repaired:**
|
|
160
|
+
- bare `/wbX` β full-syntax in Β§<N> "Recommended Next" table (rows: β¦)
|
|
161
|
+
- plain-text path `<old>` β relative link `[<text>](<rel>)` in Β§<N>
|
|
162
|
+
|
|
163
|
+
**Flagged (NOT auto-repaired β needs human decision):**
|
|
164
|
+
- Broken link in Β§<N>: `<bad-link>` β no file at resolved path `<resolved>`
|
|
165
|
+
- Β§<N> missing model tag β last edited by ?
|
|
166
|
+
|
|
167
|
+
> _Self-corrected: <YYYY-MM-DD HH:MM> by <Model>_
|
|
168
|
+
```
|
|
169
|
+
|
|
170
|
+
If a previous self-correct run already wrote this section, **update it in place** (do not stack multiple Findings sections β the file is meant to grow Β§N entries, not Findings entries).
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
---
|
|
175
|
+
|
|
176
|
+
## How It Works
|
|
177
|
+
|
|
178
|
+
`/wbTrack` is a **toggle**, not a one-shot command. It changes the model's behavior for the rest of the session.
|
|
179
|
+
|
|
180
|
+
| State | What happens when you run a `/wb*` command |
|
|
181
|
+
|---|---|
|
|
182
|
+
| **Tracking OFF** (default) | Command creates its report in `reports/<date>/<type>/<type>_<target>_<date>.md` (universal daily file). Nothing else. |
|
|
183
|
+
| **Tracking ON** (`/wbTrack` active) | Command creates its report **AND** appends a Β§N section to the **universal daily session file**. |
|
|
184
|
+
|
|
185
|
+
**Key principle:** Commands always produce their normal reports. Tracking is an **addition**, never a replacement.
|
|
186
|
+
|
|
187
|
+
### v2: One File Per Day Per Scope
|
|
188
|
+
|
|
189
|
+
In v2, **all models share a single session file per day**. There is no `<model>/` subfolder under `tracks/`.
|
|
190
|
+
|
|
191
|
+
| v1 (old) | v2 (current) |
|
|
192
|
+
|---|---|
|
|
193
|
+
| `tracks/<date>/<model_slug>/track_<target>_<timestamp>.md` | `tracks/<date>/track_<target>_<date>.md` |
|
|
194
|
+
| One file per model per session | **One file per day per scope, all models contribute** |
|
|
195
|
+
| 4 models = 4 files + 24 derivatives | 4 models = **1 file** + 6 derivatives |
|
|
196
|
+
|
|
197
|
+
---
|
|
198
|
+
|
|
199
|
+
## Scoping Rules
|
|
200
|
+
|
|
201
|
+
### Syntax
|
|
202
|
+
```bash
|
|
203
|
+
/wbTrack <target> # scoped to a specific package/app
|
|
204
|
+
/wbTrack # scoped to the monorepo root (core2)
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### What the target arg controls
|
|
208
|
+
|
|
209
|
+
| | `/wbTrack packages/wb-core` | `/wbTrack` (no args) |
|
|
210
|
+
|---|---|---|
|
|
211
|
+
| **Β§0 reads** | wb-core's source, reports, `.agents/` | Monorepo-wide state |
|
|
212
|
+
| **Session file lives in** | `packages/wb-core/.wb/workflows/tracks/` | `.wb/workflows/tracks/` (core2 root) |
|
|
213
|
+
| **Best for** | Focused session on one package | Cross-package session |
|
|
214
|
+
|
|
215
|
+
### One session at a time (per model)
|
|
216
|
+
|
|
217
|
+
If tracking is already active for this model:
|
|
218
|
+
```
|
|
219
|
+
/wbTrack packages/wb-dataviewer
|
|
220
|
+
|
|
221
|
+
β οΈ Already tracking: core2
|
|
222
|
+
Run /wbTrack --stop first, then start a new session.
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
You cannot run two `/wbTrack` sessions in parallel from the same model. Stop the current one before starting another.
|
|
226
|
+
|
|
227
|
+
### Multi-model sessions (v2 change)
|
|
228
|
+
|
|
229
|
+
Multiple **different** models can track the **same scope on the same day**. They all contribute to the same file:
|
|
230
|
+
|
|
231
|
+
```
|
|
232
|
+
Model A (Opus 4.7 via Cline): /wbTrack core2 β creates session file + writes Β§0
|
|
233
|
+
Model B (Gemini 3.1 Pro via AG): /wbTrack core2 β file exists β appends contributor entry
|
|
234
|
+
Model C (DeepSeek V4 via OC): /wbTrack core2 β file exists β appends contributor entry
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
But each model can only track **one scope at a time**. Model A tracking `core2` cannot also start tracking `wb-core` β it must `/wbTrack --stop` first.
|
|
238
|
+
|
|
239
|
+
### Different scopes are different files
|
|
240
|
+
|
|
241
|
+
Different models tracking different scopes write to **different files** β this is fine:
|
|
242
|
+
```
|
|
243
|
+
Model A tracks core2: β core2/.wb/workflows/tracks/20260429/track_core2_20260429.md
|
|
244
|
+
Model B tracks wb-core: β packages/wb-core/.wb/workflows/tracks/20260429/track_wb-core_20260429.md
|
|
245
|
+
```
|
|
246
|
+
|
|
247
|
+
### Cross-package work during a session
|
|
248
|
+
|
|
249
|
+
If you're tracking `wb-core` and run `/wbTest packages/wb-dataviewer`:
|
|
250
|
+
- The **test report** goes to `packages/wb-dataviewer/.wb/workflows/reports/.../tests/` (normal behavior β report always goes to the target package)
|
|
251
|
+
- The **Β§N section** gets appended to the wb-core session file (because wb-core is the active tracking target)
|
|
252
|
+
|
|
253
|
+
This is fine β the session file is a narrative of what **you did**, not where the reports land.
|
|
254
|
+
|
|
255
|
+
---
|
|
256
|
+
|
|
257
|
+
## π The /wbTrack Prompt (copy to model β)
|
|
258
|
+
|
|
259
|
+
```
|
|
260
|
+
βββββββββββββ /wbTrack v2 βββββββββββββ
|
|
261
|
+
|
|
262
|
+
π TARGET: __TARGET_PATH__
|
|
263
|
+
π
DATE: __TODAY__
|
|
264
|
+
π€ MODEL: __YOUR_MODEL_NAME__
|
|
265
|
+
π₯οΈ CLIENT: __YOUR_CLIENT__ (Cline / Antigravity / OpenCode / Gemini CLI / etc.)
|
|
266
|
+
|
|
267
|
+
βββ TRACKING MODE ACTIVATED βββ
|
|
268
|
+
|
|
269
|
+
From this point forward, you are in session tracking mode.
|
|
270
|
+
|
|
271
|
+
1. LOCATE the universal session file at:
|
|
272
|
+
__TARGET_PATH__/.wb/workflows/tracks/__TODAY_YYYY__/__TODAY_MM__/__TODAY_DD__/track___TARGET_NAME_____TODAY_YYYY__/__TODAY_MM__/__TODAY_DD__.md
|
|
273
|
+
|
|
274
|
+
NOTE: `tracks/` is a SIBLING of `reports/`, NOT inside it.
|
|
275
|
+
NOTE: There is NO `<model_slug>/` subfolder β one file per day per scope.
|
|
276
|
+
|
|
277
|
+
2. CHECK if the file already exists:
|
|
278
|
+
|
|
279
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
280
|
+
β FILE DOES NOT EXIST β CREATE (you are the first model today)β
|
|
281
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
282
|
+
|
|
283
|
+
Create the file with this header:
|
|
284
|
+
|
|
285
|
+
# Track: __TARGET_NAME__ β __TODAY__
|
|
286
|
+
|
|
287
|
+
> **Target:** Monorepo root (`frontEnd/wbc-ui/__TARGET_PATH__/`)
|
|
288
|
+
> **Created by:** __YOUR_MODEL_NAME__ via __YOUR_CLIENT__
|
|
289
|
+
> **Started:** __TODAY__ __CURRENT_TIME__
|
|
290
|
+
> **Status:** π’ ACTIVE
|
|
291
|
+
|
|
292
|
+
---
|
|
293
|
+
|
|
294
|
+
Then write Β§0 β your strategic vision BEFORE I give you any commands:
|
|
295
|
+
|
|
296
|
+
# Β§0 β Strategic Vision *(__YOUR_MODEL_NAME__ β __CURRENT_TIME__)*
|
|
297
|
+
|
|
298
|
+
## Current State
|
|
299
|
+
[Read the package/app source code, .wb/workflows/ files, and past reports.
|
|
300
|
+
Summarize: What is the current state of this target? What was done before?
|
|
301
|
+
What is broken, pending, or deferred?]
|
|
302
|
+
|
|
303
|
+
## Past Debt: `/wbStandup __TARGET_NAME__` output
|
|
304
|
+
**MANDATORY:** Execute `/wbStandup __TARGET_NAME__` as a sub-command RIGHT NOW.
|
|
305
|
+
Paste its FULL output below β do NOT summarize, do NOT reference a report file.
|
|
306
|
+
This gives subsequent models the complete context without needing to re-run standup.
|
|
307
|
+
|
|
308
|
+
```
|
|
309
|
+
[PASTE FULL /wbStandup OUTPUT HERE]
|
|
310
|
+
```
|
|
311
|
+
|
|
312
|
+
## My Recommendation
|
|
313
|
+
[If you were working on this package today, what would YOU do?
|
|
314
|
+
Prioritize based on: blockers first, then technical debt, then new features.
|
|
315
|
+
List 5-8 commands in recommended order with reasoning.
|
|
316
|
+
**For each recommendation, specify 2-3 models** from `commands/model_recommendations.md`, ordered best β budget.]
|
|
317
|
+
|
|
318
|
+
## Suggested Command Sequence
|
|
319
|
+
|
|
320
|
+
| Order | Command | Why | Recommended Models (ordered) | Alternatives |
|
|
321
|
+
|---|---|---|---|---|
|
|
322
|
+
| 1 | `/wbStandup __TARGET_NAME__` | Resume from last session | β‘ Gemini 3 Flash / DeepSeek V4 Flash | `/wbContext` if no prior session |
|
|
323
|
+
| 2 | `...` | `...` | π» Model1 / Model2 / Model3 | `...` |
|
|
324
|
+
| ... | | | | |
|
|
325
|
+
|
|
326
|
+
## First Command
|
|
327
|
+
|
|
328
|
+
**Recommended:** `/wbXxx __TARGET_NAME__ [flags]`
|
|
329
|
+
**Recommended Model:** `Model1 (1st) / Model2 (2nd)` β [why this model for this task]
|
|
330
|
+
**Why this first:** [1-2 sentences]
|
|
331
|
+
**Alternative:** `/wbYyy __TARGET_NAME__` β [why this is also valid]
|
|
332
|
+
|
|
333
|
+
> [!NOTE]
|
|
334
|
+
> This is my suggestion. You decide what to run. Tell me your first command.
|
|
335
|
+
|
|
336
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
337
|
+
β FILE ALREADY EXISTS β APPEND (another model started today) β
|
|
338
|
+
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
|
|
339
|
+
|
|
340
|
+
Read the existing session file. Determine the next Β§N number.
|
|
341
|
+
Append a contributor entry:
|
|
342
|
+
|
|
343
|
+
---
|
|
344
|
+
|
|
345
|
+
# Β§N β Contributor Entry *(__YOUR_MODEL_NAME__ via __YOUR_CLIENT__ β __CURRENT_TIME__)*
|
|
346
|
+
|
|
347
|
+
> **Model:** __YOUR_MODEL_NAME__
|
|
348
|
+
> **Client:** __YOUR_CLIENT__
|
|
349
|
+
> **Joined:** __TODAY__ __CURRENT_TIME__
|
|
350
|
+
|
|
351
|
+
## My Assessment
|
|
352
|
+
[Read the existing session file + current source code state.
|
|
353
|
+
What has changed since the last entry? What do you see differently?
|
|
354
|
+
Agreement/disagreement with previous Β§0 or Β§N recommendations.]
|
|
355
|
+
|
|
356
|
+
## My Recommendation
|
|
357
|
+
[If you were continuing this session, what would you do next?
|
|
358
|
+
How does your view differ from the previous contributor(s)?]
|
|
359
|
+
|
|
360
|
+
## Suggested Next Steps
|
|
361
|
+
|
|
362
|
+
| Priority | Command | Why | Recommended Models (ordered) | Alternative |
|
|
363
|
+
|---|---|---|---|---|
|
|
364
|
+
| π΄ 1st | ... | ... | ... | ... |
|
|
365
|
+
| π‘ 2nd | ... | ... | ... | ... |
|
|
366
|
+
|
|
367
|
+
> [!NOTE]
|
|
368
|
+
> This is my perspective. Previous contributors may have different priorities.
|
|
369
|
+
|
|
370
|
+
3. For EVERY /wb* command I give you:
|
|
371
|
+
|
|
372
|
+
a) Execute the command normally and create its report in the universal daily file:
|
|
373
|
+
__TARGET_PATH__/.wb/workflows/reports/__TODAY_YYYY__/__TODAY_MM__/__TODAY_DD__/<type>/<type>___TARGET_NAME_____TODAY_YYYY__/__TODAY_MM__/__TODAY_DD__.md
|
|
374
|
+
|
|
375
|
+
b) THEN append a Β§N section to the universal session file in this exact format:
|
|
376
|
+
|
|
377
|
+
# Β§N β `/wbCommandName target [flags]` *(__YOUR_MODEL_NAME__ β __CURRENT_TIME__)*
|
|
378
|
+
|
|
379
|
+
## What the user did
|
|
380
|
+
|
|
381
|
+
/wbCommandName target [flags]
|
|
382
|
+
|
|
383
|
+
**What the user wants:** [1-2 sentences]
|
|
384
|
+
|
|
385
|
+
## What happened
|
|
386
|
+
|
|
387
|
+
### Files read (input)
|
|
388
|
+
[List files you read]
|
|
389
|
+
|
|
390
|
+
### Files created/modified (output)
|
|
391
|
+
| File | Action | What it contains |
|
|
392
|
+
|---|---|---|
|
|
393
|
+
|
|
394
|
+
### Report file
|
|
395
|
+
[Path to the report entry in reports/<date>/<type>/<type>_<target>_<date>.md β specify Entry #N]
|
|
396
|
+
|
|
397
|
+
## Commentary
|
|
398
|
+
|
|
399
|
+
- **Outcome:** (What went well / What went wrong / Final result)
|
|
400
|
+
- **Insights:** (Lesson learned / Key finding / Self-correction note)
|
|
401
|
+
- **Decisions:** (Why this command now / Why this matters / What was NOT produced)
|
|
402
|
+
- **Status:** (Conclusion / Current state)
|
|
403
|
+
- **Next Step:** (Next step used / Next meaningful step)
|
|
404
|
+
|
|
405
|
+
> [!TIP/WARNING/IMPORTANT]
|
|
406
|
+
> [High-value strategic callout]
|
|
407
|
+
|
|
408
|
+
## Recommended Next
|
|
409
|
+
|
|
410
|
+
| Priority | Command | Why | Recommended Models (ordered) | Alternative |
|
|
411
|
+
|---|---|---|---|---|
|
|
412
|
+
| π΄ 1st | `/wbXxx target` | [reason based on what just happened] | π» Model1 / Model2 | `/wbYyy target` |
|
|
413
|
+
| π‘ 2nd | `/wbZzz target` | [reason] | β‘ Model1 / Model2 | β |
|
|
414
|
+
| π’ 3rd | `/wbAaa target` | [reason] | π» Model1 / Model2 | β |
|
|
415
|
+
|
|
416
|
+
4. You are NOT a passive logger. You are a strategic agent:
|
|
417
|
+
- Analyze outcomes: say WHY it matters, not just what happened
|
|
418
|
+
- Provide vision: compare what the AI saw vs. what is actually true
|
|
419
|
+
- Decide next steps: if a command reveals a critical issue, suggest course correction
|
|
420
|
+
- After EVERY section, suggest what comes next (the "Recommended Next" table)
|
|
421
|
+
|
|
422
|
+
βββ AUTO-APPEND FOOTER βββ
|
|
423
|
+
|
|
424
|
+
At the VERY END of the file (after "What's Next?"), you MUST append the `## π Generated Files (__YYYYMMDD__)` cross-link footer. Do NOT use simple tables. You MUST use the rich "Tier 1" layout from `_shared/output_conventions.md` Β§5.
|
|
425
|
+
|
|
426
|
+
Format required:
|
|
427
|
+
```markdown
|
|
428
|
+
---
|
|
429
|
+
## π Generated Files (__YYYYMMDD__)
|
|
430
|
+
> Auto-appended per `_shared/output_conventions.md` Β§5. Same-level snapshot of top-level command outputs at write time.
|
|
431
|
+
|
|
432
|
+
### π Base Reference Files
|
|
433
|
+
| Type | File | Description |
|
|
434
|
+
|---|---|---|
|
|
435
|
+
| Foundational | [context.md](../../../../../context.md) | Permanent Identity and Architecture (Source of Truth) |
|
|
436
|
+
| Snapshot | [context_<scope>_<date>.md](../contexts/context_<scope>_<date>.md) | Daily snapshot used for current session context |
|
|
437
|
+
| Foundational | [dev.md](../../../../../dev.md) | Permanent Development Commands and Status |
|
|
438
|
+
|
|
439
|
+
### Global Files (`core2/` monorepo root)
|
|
440
|
+
| Category | File | Source Command |
|
|
441
|
+
|---|---|---|
|
|
442
|
+
| Reports | [audit_core2_<date>.md](../../../../../../../../../../.wb/workflows/reports/<YYYY>/<MM>/<DD>/audits/audit_core2_<date>.md) | `/wbAudit core2/` |
|
|
443
|
+
| Reports | [plan_core2_<date>.md](../../../../../../../../../../.wb/workflows/reports/<YYYY>/<MM>/<DD>/plans/plan_core2_<date>.md) | `/wbPlan core2/` |
|
|
444
|
+
| Tracks | [track_core2_<date>.md](../../../../../../../../../../.wb/workflows/tracks/<YYYY>/<MM>/<DD>/track_core2_<date>.md) | `/wbTrack core2/` |
|
|
445
|
+
|
|
446
|
+
<details>
|
|
447
|
+
<summary>π Sub-Package: [Active Package Name]</summary>
|
|
448
|
+
|
|
449
|
+
| Category | File | Source Command |
|
|
450
|
+
|---|---|---|
|
|
451
|
+
| Reports | [audit_subpkg_<date>.md](../../../../../../../../../../apps/wb-core/subpkg/.wb/workflows/reports/<YYYY>/<MM>/<DD>/audits/audit_subpkg_<date>.md) | `/wbAudit` |
|
|
452
|
+
|
|
453
|
+
</details>
|
|
454
|
+
```
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
---
|
|
458
|
+
|
|
459
|
+
## Variables to Replace
|
|
460
|
+
|
|
461
|
+
| Variable | Description | Example |
|
|
462
|
+
|---|---|---|
|
|
463
|
+
| `__TARGET_PATH__` | Path to the package or app | `packages/wb-core` |
|
|
464
|
+
| `__TODAY__` | Today's date (YYYY-MM-DD) | `2026-04-29` |
|
|
465
|
+
| `__TODAY_YYYY__/__TODAY_MM__/__TODAY_DD__` | Today's date (no dashes) | `20260429` |
|
|
466
|
+
| `__YOUR_MODEL_NAME__` | Model running the session | `DeepSeek V4 Pro` |
|
|
467
|
+
| `__YOUR_CLIENT__` | AI client/tool being used | `Antigravity` / `Cline` / `OpenCode` / `Gemini CLI` |
|
|
468
|
+
| `__MODEL_SLUG__` | Lowercase model name for report folder paths | `deepseek-v4-pro` |
|
|
469
|
+
| `__TARGET_NAME__` | Short name for filenames | `wb-core` |
|
|
470
|
+
| `__CURRENT_TIME__` | Current time (HH:MM) | `22:38` |
|
|
471
|
+
|
|
472
|
+
---
|
|
473
|
+
|
|
474
|
+
## Directory Structure
|
|
475
|
+
|
|
476
|
+
```
|
|
477
|
+
.wb/workflows/
|
|
478
|
+
βββ reports/ β command outputs (scanned by /wbStandup, /wbPlan, etc.)
|
|
479
|
+
β βββ 20260429/
|
|
480
|
+
β βββ tests/deepseek-v4-pro/test_wb-core_unit_*.md β from /wbTest
|
|
481
|
+
β βββ plans/gemini-3.1-pro/plan_wb-core_*.md β from /wbPlan
|
|
482
|
+
β βββ audits/opus-4.7/audit_wb-core_*.md β from /wbAudit
|
|
483
|
+
β βββ standups/gemini-3.1-pro/standup_wb-core_*.md β from /wbStandup
|
|
484
|
+
β
|
|
485
|
+
βββ tracks/ β session narratives (universal daily file)
|
|
486
|
+
βββ 20260429/
|
|
487
|
+
βββ track_wb-core_20260429.md β ONE file, ALL models contribute
|
|
488
|
+
βββ track_wb-core_20260429_tips.md β derivative (all models' tips)
|
|
489
|
+
βββ track_wb-core_20260429_warnings.md
|
|
490
|
+
βββ track_wb-core_20260429_importants.md
|
|
491
|
+
βββ track_wb-core_20260429_commentaries.md
|
|
492
|
+
βββ track_wb-core_20260429_all_commands.md
|
|
493
|
+
βββ track_wb-core_20260429_resume.md
|
|
494
|
+
```
|
|
495
|
+
|
|
496
|
+
### The Key Principle
|
|
497
|
+
|
|
498
|
+
| Folder | Contains | Scanned by | Purpose |
|
|
499
|
+
|---|---|---|---|
|
|
500
|
+
| `reports/<date>/<type>/<type>_<target>_<date>.md` | Structured command outputs (universal daily file) | `/wbStandup`, `/wbContext`, `/wbPlan`, `/wbAudit` | Data for automation |
|
|
501
|
+
| `tracks/<date>/` | Universal session narrative | Humans, future sessions, all models | Audit trail + learning |
|
|
502
|
+
|
|
503
|
+
**Reports** = what happened (facts, scores, file lists).
|
|
504
|
+
**Walkthroughs** = why it happened (analysis, decisions, recommendations) β **from all models' perspectives**.
|
|
505
|
+
|
|
506
|
+
---
|
|
507
|
+
|
|
508
|
+
## Best Practice: Daily Session Pattern
|
|
509
|
+
|
|
510
|
+
The recommended workflow is: **one universal session file per day per scope, contributed to by all models**.
|
|
511
|
+
|
|
512
|
+
```
|
|
513
|
+
Morning (Model A β Opus 4.7 via Cline):
|
|
514
|
+
/wbTrack β creates file + writes Β§0
|
|
515
|
+
|
|
516
|
+
Mid-day (Model B β Gemini 3.1 Pro via Antigravity):
|
|
517
|
+
/wbTrack β file exists β appends contributor entry
|
|
518
|
+
/wbPlan wb-core β report + Β§N (tagged as Gemini)
|
|
519
|
+
/wbTest wb-core β report + Β§N (tagged as Gemini)
|
|
520
|
+
/wbTrack --stop β Β§STOP for Gemini
|
|
521
|
+
|
|
522
|
+
Evening (Model C β DeepSeek V4 via OpenCode):
|
|
523
|
+
/wbTrack β file exists β appends contributor entry
|
|
524
|
+
/wbRefactor wb-core src/WBC.js β report + Β§N (tagged as DeepSeek)
|
|
525
|
+
/wbTrack --stop --finalize β Β§STOP for DeepSeek + extract derivatives
|
|
526
|
+
/wbGit β commit everything
|
|
527
|
+
```
|
|
528
|
+
|
|
529
|
+
This gives you a **single daily narrative** with contributions from all models β like a relay journal. Tomorrow, `/wbStandup` scans `reports/` for the facts, and you can read the session file for the multi-model story.
|
|
530
|
+
|
|
531
|
+
---
|
|
532
|
+
|
|
533
|
+
## When to Use /wbTrack
|
|
534
|
+
|
|
535
|
+
| Situation | Use /wbTrack? |
|
|
536
|
+
|---|---|
|
|
537
|
+
| Starting a full day's work with a model | β
Yes β run once at the start |
|
|
538
|
+
| Long session with 5+ commands | β
Yes β you want a trail |
|
|
539
|
+
| Learning a new package | β
Yes β commentary helps future you |
|
|
540
|
+
| Documenting a workflow for the team | β
Yes β produces shareable session files |
|
|
541
|
+
| Quick one-off command (e.g., `/wbTest`) | β No β just run the command |
|
|
542
|
+
| Running `/wbGit` at end of day | β No β no need to track a commit |
|
|
543
|
+
| Model already verified via `/wbCheck` | β
Optional β `/wbTrack` adds value independently |
|
|
544
|
+
|
|
545
|
+
---
|
|
546
|
+
|
|
547
|
+
## Relationship with Other Commands
|
|
548
|
+
|
|
549
|
+
| Command | Relationship |
|
|
550
|
+
|---|---|
|
|
551
|
+
| `/wbCheck` | Independent. `/wbCheck` verifies the model. `/wbTrack` logs the session. You can use either or both. |
|
|
552
|
+
| `/wbStandup` | Scans `reports/` β unaffected by tracking. Session files live in `tracks/`. |
|
|
553
|
+
| `/wbPlan` | Creates plan in `reports/plans/`. If tracking is ON, Β§N documents the plan creation. |
|
|
554
|
+
| `/wbTest` | Creates test report in `reports/tests/`. If tracking is ON, Β§N documents the test results. |
|
|
555
|
+
| `/wbTrack --stop` | Ends tracking **for this model**. Optionally extracts derivatives with `--finalize`. |
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
# /wbTranslate: Execution Template
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
<!-- HELP_GATE_START -->
|
|
5
|
+
## Help intercept (handle FIRST β before any other action)
|
|
6
|
+
|
|
7
|
+
**If `$ARGUMENTS` contains `--help`, `-h`, or `--h`** (case-insensitive, anywhere in the args), DO NOT execute the command's normal procedure. Instead:
|
|
8
|
+
|
|
9
|
+
1. Output the **HELP BLOCK** below verbatim (rendered as markdown).
|
|
10
|
+
2. Stop. Do not perform any file reads, writes, or other tool calls.
|
|
11
|
+
3. Do not generate any reports under `.wb/workflows/reports/`.
|
|
12
|
+
|
|
13
|
+
Otherwise, ignore this section and proceed to the rest of the template.
|
|
14
|
+
|
|
15
|
+
### HELP BLOCK β `/wbTranslate`
|
|
16
|
+
|
|
17
|
+
## Two forms
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/wbTranslate <file> # extract + translate all hardcoded strings
|
|
21
|
+
/wbTranslate <file> --new-only # only handle strings not yet keyed
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## When to run
|
|
25
|
+
|
|
26
|
+
- After the component's UI is stable (post-design, post-iteration).
|
|
27
|
+
- Before shipping a user-facing release that needs FR/AR coverage.
|
|
28
|
+
- When adding new user-facing strings to an already-translated component (use `--new-only`).
|
|
29
|
+
|
|
30
|
+
## When *not* to run
|
|
31
|
+
|
|
32
|
+
- Mid-iteration, when copy is still changing. You'll re-translate every iteration.
|
|
33
|
+
- On a component without i18n setup. Command will refuse.
|
|
34
|
+
- On a component already fully translated (use `--new-only` instead).
|
|
35
|
+
- On developer-facing components that won't be shipped to users.
|
|
36
|
+
|
|
37
|
+
## Prerequisites
|
|
38
|
+
|
|
39
|
+
- vue-i18n (or equivalent) configured in the app.
|
|
40
|
+
- `src/i18n/{en,fr,ar}.json` (or equivalent) exist.
|
|
41
|
+
- The component imports `useI18n` or has access to `$t`.
|
|
42
|
+
|
|
43
|
+
If any prerequisite is missing, the command refuses with setup steps.
|
|
44
|
+
|
|
45
|
+
## Reading the output
|
|
46
|
+
|
|
47
|
+
- **Extracted strings list** β exactly what will become i18n keys.
|
|
48
|
+
- **Skipped strings list** β what was deliberately not extracted (CSS classes, events, URLs).
|
|
49
|
+
- **Ambiguous strings** β requires your disambiguation before proceeding.
|
|
50
|
+
- **Three JSON additions** β en, fr, ar. Each with cultural awareness.
|
|
51
|
+
- **RTL note** β Arabic-specific layout flags.
|
|
52
|
+
|
|
53
|
+
## The translation review step
|
|
54
|
+
|
|
55
|
+
AI-generated translations are drafts. Review especially:
|
|
56
|
+
|
|
57
|
+
- **Tone**: formal vs. informal "you" (vous/tu, anta/anti).
|
|
58
|
+
- **Brand voice**: action verbs may differ ("Save" β "Enregistrer" vs. "Sauvegarder").
|
|
59
|
+
- **RTL layout**: Arabic strings may overflow; layout may need adjustment.
|
|
60
|
+
- **Date/number formatting**: not handled by `/wbTranslate`; uses i18n built-ins.
|
|
61
|
+
|
|
62
|
+
If you don't speak FR/AR, defer to native speakers before shipping. AI translations of common UI strings are decent; AI translations of nuanced messaging are guesses.
|
|
63
|
+
|
|
64
|
+
## When /wbTranslate is the wrong command
|
|
65
|
+
|
|
66
|
+
- Pluralization rules β vue-i18n's plural syntax; AI can't fully infer.
|
|
67
|
+
- Locale-aware formatting (dates, currency) β use Intl APIs, not strings.
|
|
68
|
+
- Server-rendered text β translate server-side.
|
|
69
|
+
- A11y attributes (`aria-label` etc.) β these *are* user-facing; `/wbTranslate` should handle them. If it skips them, re-prompt.
|
|
70
|
+
|
|
71
|
+
> For deeper reading: [`docs_claude/commands/wbTranslate/wbTranslate_practical_claude.md`](../../docs/docs_claude/commands/wbTranslate/wbTranslate_practical_claude.md) (or the `_eli5_`, `_expert_`, `_examples_` siblings).
|
|
72
|
+
|
|
73
|
+
<!-- FLAGS_TABLE_START -->
|
|
74
|
+
## Flags & shortcuts
|
|
75
|
+
|
|
76
|
+
Both forms are equivalent β pass either:
|
|
77
|
+
|
|
78
|
+
| Long form | Shortcut |
|
|
79
|
+
|---|---|
|
|
80
|
+
| `--new-only` | `-n` |
|
|
81
|
+
|
|
82
|
+
`-h` / `--help` / `--h` (any command) prints this help block instead of executing.
|
|
83
|
+
<!-- FLAGS_TABLE_END -->
|
|
84
|
+
<!-- HELP_GATE_END -->
|
|
85
|
+
|
|
86
|
+
<!-- FLAG_NORMALIZE_START -->
|
|
87
|
+
## Flag normalization (apply BEFORE parsing args)
|
|
88
|
+
|
|
89
|
+
Before processing `$ARGUMENTS`, normalize these short-form flags to their long equivalents:
|
|
90
|
+
|
|
91
|
+
- `-n` β `--new-only`
|
|
92
|
+
|
|
93
|
+
The rest of this template documents only the long forms; the substitution above is the only place short forms are mentioned.
|
|
94
|
+
<!-- FLAG_NORMALIZE_END -->
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
**ROLE:** The Linguist
|
|
99
|
+
**TARGET:** The provided UI component or translation directory.
|
|
100
|
+
|
|
101
|
+
## βββ OBJECTIVE βββ
|
|
102
|
+
Your job is to ensure the monorepo remains fully multilingual (EN, FR, AR). You must extract hardcoded strings and generate localized JSON files.
|
|
103
|
+
|
|
104
|
+
## βββ PHASE 1: EXTRACTION βββ
|
|
105
|
+
1. Scan the target UI component (e.g., `.vue` files).
|
|
106
|
+
2. Identify any hardcoded human-readable strings (e.g., `<button>Submit</button>`).
|
|
107
|
+
3. Replace them with the appropriate i18n translation key (e.g., `<button>{{ $t('buttons.submit') }}</button>`).
|
|
108
|
+
|
|
109
|
+
## βββ PHASE 2: TRANSLATION GENERATION βββ
|
|
110
|
+
1. Take the extracted strings and generate perfect context-aware translations for French (`fr.json`) and Arabic (`ar.json`).
|
|
111
|
+
2. Ensure RTL (Right-to-Left) UI considerations are respected for Arabic.
|
|
112
|
+
|
|
113
|
+
## βββ PHASE 3: REPORTING βββ
|
|
114
|
+
Summarize the translation keys added.
|