@hdwebsoft/hdcode-ai-darwin-x64 0.0.6 → 0.0.8

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.
Files changed (55) hide show
  1. package/bin/hdcode +0 -0
  2. package/bin/index.js.map +1 -1
  3. package/bin/worker.js.map +1 -1
  4. package/package.json +1 -1
  5. package/resources/agents/finder.md +1 -1
  6. package/resources/agents/mermaid.md +1 -1
  7. package/resources/opencode.json +2 -1
  8. package/resources/skills/hd-code-review/CODING_STANDARDS.md +14 -114
  9. package/resources/skills/hd-code-review/REVIEW_STANDARDS.md +76 -0
  10. package/resources/skills/hd-code-review/SKILL.md +314 -90
  11. package/resources/skills/hd-code-review/reference/review-checklist.md +104 -101
  12. package/resources/skills/hd-code-review/reference/stacks/apex.md +49 -0
  13. package/resources/skills/hd-code-review/reference/stacks/aura.md +39 -0
  14. package/resources/skills/hd-code-review/reference/stacks/cakephp.md +50 -0
  15. package/resources/skills/hd-code-review/reference/stacks/django.md +53 -0
  16. package/resources/skills/hd-code-review/reference/stacks/dotnet.md +52 -0
  17. package/resources/skills/hd-code-review/reference/stacks/expo.md +39 -0
  18. package/resources/skills/hd-code-review/reference/stacks/flutter.md +48 -0
  19. package/resources/skills/hd-code-review/reference/stacks/go.md +51 -0
  20. package/resources/skills/hd-code-review/reference/stacks/laravel.md +56 -0
  21. package/resources/skills/hd-code-review/reference/stacks/lwc.md +49 -0
  22. package/resources/skills/hd-code-review/reference/stacks/nodejs.md +51 -0
  23. package/resources/skills/hd-code-review/reference/stacks/php.md +52 -0
  24. package/resources/skills/hd-code-review/reference/stacks/python.md +50 -0
  25. package/resources/skills/hd-code-review/reference/stacks/react.md +51 -0
  26. package/resources/skills/hd-code-review/reference/stacks/reactnative.md +54 -0
  27. package/resources/skills/hd-code-review/reference/stacks/scala.md +48 -0
  28. package/resources/skills/hd-code-review/reference/stacks/visualforce.md +38 -0
  29. package/resources/skills/hd-code-review/reference/stacks/vuejs.md +52 -0
  30. package/resources/skills/hd-code-review/reference/stacks/wordpress.md +54 -0
  31. package/resources/skills/hd-daily-goals/SKILL.md +41 -9
  32. package/resources/skills/hd-daily-goals/reference/ticket-autofill.md +104 -0
  33. package/resources/skills/hd-daily-goals/reference/validation-rules.md +13 -0
  34. package/resources/skills/hd-daily-report/SKILL.md +70 -14
  35. package/resources/skills/hd-daily-report/reference/sample-report-qc.md +44 -0
  36. package/resources/skills/hd-daily-report/reference/sample-report.md +18 -15
  37. package/resources/skills/hd-daily-report/reference/validation-rules.md +28 -7
  38. package/resources/skills/hd-daily-viewer/SKILL.md +222 -0
  39. package/resources/skills/hd-docs-init/SKILL.md +33 -0
  40. package/resources/skills/hd-docs-parse/SKILL.md +2 -0
  41. package/resources/skills/hd-docs-parse/scripts/parse_document.py +6 -0
  42. package/resources/skills/hd-docs-sync/SKILL.md +65 -3
  43. package/resources/skills/hd-docs-sync/reference/doc-mapping.md +1 -0
  44. package/resources/skills/hd-help/SKILL.md +24 -0
  45. package/resources/skills/hd-help/reference/skill-map.md +122 -7
  46. package/resources/skills/hd-iso/SKILL.md +409 -0
  47. package/resources/skills/hd-iso/reference/iso-27001-requirements.md +166 -0
  48. package/resources/skills/hd-iso/reference/iso-9001-requirements.md +91 -0
  49. package/resources/skills/hd-iso/reference/role-profiles.md +115 -0
  50. package/resources/skills/hd-iso-ready/SKILL.md +146 -0
  51. package/resources/skills/hd-iso-sync/SKILL.md +217 -0
  52. package/resources/skills/hd-iso-sync/reference/frontmatter-schema.md +89 -0
  53. package/resources/skills/hd-iso-verify/SKILL.md +294 -0
  54. package/resources/skills/hd-issue-resolution/SKILL.md +20 -0
  55. package/resources/skills/hd-task/SKILL.md +12 -0
@@ -0,0 +1,222 @@
1
+ ---
2
+ name: hd-daily-viewer
3
+ description: "View, navigate, and summarize past daily goals and reports saved to ~/.hd/. Supports single-day detail view, time-window summaries with aggregated metrics, and a list mode showing recent file availability. Use when reviewing past work, comparing goals vs results, or getting a weekly/monthly overview."
4
+ license: proprietary
5
+ metadata:
6
+ version: "1.0.0"
7
+ copyright: "© HDWEBSOFT. All rights reserved."
8
+ ---
9
+
10
+ # Daily Viewer Skill
11
+
12
+ > Read-only. Never writes or modifies files. Data sources: `~/.hd/daily-goals/` and `~/.hd/daily-reports/`.
13
+
14
+ ---
15
+
16
+ ## Startup
17
+
18
+ > This skill never writes files. Config is read-only. Source files in `~/.hd/` are never modified.
19
+
20
+ Read `~/.hd/config.yaml` if it exists → load `ticket_patterns` into `$URL_PATTERN[PREFIX]`. If config is absent or empty: proceed normally with no linkification. No history scan. No config write under any circumstances.
21
+
22
+ ---
23
+
24
+ ## Mode Detection
25
+
26
+ Parse invocation args before doing anything else:
27
+
28
+ | Input | Mode |
29
+ |-------|------|
30
+ | No args | **List mode** |
31
+ | `today`, `yesterday`, `last Monday`, `YYYY-MM-DD`, `March 3`, any single date reference | **Single-day mode** |
32
+ | `this week`, `last week`, `last N days`, `last month`, `March`, `YYYY-MM-DD to YYYY-MM-DD`, any multi-day range | **Window mode** |
33
+
34
+ Resolve relative dates using today's date. "Last Monday" = the most recent Monday before today.
35
+
36
+ ---
37
+
38
+ ## Data Sources
39
+
40
+ ```bash
41
+ ls ~/.hd/daily-goals/ # files: YYYY-MM-DD.md
42
+ ls ~/.hd/daily-reports/ # files: YYYY-MM-DD.md
43
+ ```
44
+
45
+ For any given date, either or both files may exist. Always handle missing gracefully:
46
+ - No goals file → show `[no goals recorded]`
47
+ - No report file → show `[no report recorded]`
48
+ - Neither file → show `[no data for this date]`
49
+
50
+ ---
51
+
52
+ ## List Mode (no args)
53
+
54
+ Show the last 7 calendar days (regardless of weekends) with availability indicators.
55
+
56
+ ```
57
+ 📅 Recent daily files:
58
+
59
+ 2026-03-04 ✅ goals ✅ report ← today
60
+ 2026-03-03 ✅ goals ✅ report
61
+ 2026-03-02 ✅ goals ❌ report
62
+ 2026-03-01 ❌ goals ✅ report
63
+ 2026-02-28 ✅ goals ✅ report
64
+ 2026-02-27 ❌ goals ❌ report
65
+ 2026-02-26 ✅ goals ✅ report
66
+
67
+ What would you like to view?
68
+ • A specific day: "yesterday", "March 3", "2026-02-28"
69
+ • A time window: "this week", "last week", "last 7 days", "February"
70
+ ```
71
+
72
+ Wait for user input, then switch to single-day or window mode accordingly.
73
+
74
+ ---
75
+
76
+ ## Single-Day Mode
77
+
78
+ Show full detail — goals and report side by side in clearly separated sections.
79
+
80
+ ```
81
+ 📅 {WEEKDAY}, {MONTH} {DAY}, {YEAR}
82
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
83
+
84
+ 🎯 GOALS
85
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
86
+ {full content of ~/.hd/daily-goals/YYYY-MM-DD.md}
87
+ [no goals recorded] ← if file missing
88
+
89
+ 📋 REPORT
90
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
91
+ {full content of ~/.hd/daily-reports/YYYY-MM-DD.md}
92
+ [no report recorded] ← if file missing
93
+
94
+ 📊 DAY METRICS
95
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
96
+ Goals set: {N} across {P} projects
97
+ Done tasks: {N}
98
+ In-progress: {N}
99
+ Blockers: {N} total → {X} solved ✅ {Y} still open ⚠️
100
+ ```
101
+
102
+ **Linkification pass:** Before rendering any file content, scan each line for bare ticket IDs matching a known prefix in `$URL_PATTERN` (pattern `[A-Z]+-\d+` where prefix is in `$URL_PATTERN` and value ≠ `"no-tracker"`). Replace bare `PREFIX-NNNN` with `[PREFIX-NNNN](expanded_url)` in display output only. IDs already formatted as markdown links are left unchanged. IDs with no known pattern render as-is. Source files are never modified.
103
+
104
+ Parse metrics directly from the file contents. If a file is missing, show `—` for its metrics.
105
+
106
+ After display, ask:
107
+ ```
108
+ View another day or time window? (or press Enter to exit)
109
+ ```
110
+
111
+ ---
112
+
113
+ ## Window Mode
114
+
115
+ ### Step 1 — Resolve window to a date range
116
+
117
+ Compute start and end dates:
118
+ - `this week` → Monday of current week to today
119
+ - `last week` → Monday to Friday of the previous week
120
+ - `last 7 days` → today minus 6 days to today
121
+ - `last 30 days` / `last month` → today minus 29 days to today
122
+ - `March` / `February` → full calendar month (current year assumed)
123
+ - `YYYY-MM-DD to YYYY-MM-DD` → exact range
124
+
125
+ ### Step 2 — Collect data for all dates in range
126
+
127
+ For each date: read `~/.hd/daily-goals/YYYY-MM-DD.md` and `~/.hd/daily-reports/YYYY-MM-DD.md` if they exist.
128
+
129
+ ### Step 3 — Display (detail level scales with window size)
130
+
131
+ | Window size | Detail level |
132
+ |-------------|-------------|
133
+ | 1 day | → use Single-Day Mode instead |
134
+ | 2–3 days | Per-day breakdown with task-level lists |
135
+ | 4–7 days | Per-day summary row + aggregated metrics |
136
+ | > 7 days | High-level aggregates + weekly rows, no per-day task lists |
137
+
138
+ **Regardless of window size: always show at least 7 Outstanding Activities** (see below).
139
+
140
+ ---
141
+
142
+ ### Summary Header (all window sizes)
143
+
144
+ ```
145
+ 📊 Summary: {START_DATE} – {END_DATE} ({N} days, {D} days with data)
146
+
147
+ ✅ Done tasks: {N}
148
+ ⚠️ Blockers: {N} total → {X} solved ✅ {Y} still open ⚠️
149
+ 🎯 Goals set: {N} → {A} achieved, {P} partial, {M} missed
150
+ ⏱️ Time-consuming tasks (top 3 by total hours logged across window):
151
+ - [{TASK-ID}] {Task name} — {Nh} across {D} days
152
+ - [{TASK-ID}] {Task name} — {Nh}
153
+ - [{TASK-ID}] {Task name} — {Nh}
154
+ ```
155
+
156
+ Derive "time-consuming" from TIME ALLOCATION sections in daily reports — tasks or projects that appear across multiple days or with the highest single-day hours.
157
+
158
+ ---
159
+
160
+ ### Per-Day Breakdown (window ≤ 7 days)
161
+
162
+ ```
163
+ Per-day breakdown:
164
+ {WEEKDAY} {DATE} │ Goals: {N} │ Done: {N} │ In-progress: {N} │ Blockers: {summary}
165
+ {WEEKDAY} {DATE} │ Goals: {N} │ Done: {N} │ In-progress: {N} │ No report
166
+ ...
167
+ ```
168
+
169
+ For window ≤ 3 days: also expand each row to show task-level lists under it (same format as single-day report sections, condensed). Apply the same linkification pass (bare ticket IDs → markdown links) to all task text rendered here.
170
+
171
+ ---
172
+
173
+ ### Long Window Aggregates (window > 7 days)
174
+
175
+ ```
176
+ Weekly breakdown:
177
+ Week of {DATE} │ {N} done │ {N} blockers ({X} solved) │ {N} goals set
178
+ Week of {DATE} │ {N} done │ {N} blockers ({X} solved) │ {N} goals set
179
+ ...
180
+
181
+ Top projects by time:
182
+ {Project A}: {N}h │ {Project B}: {N}h │ {Project C}: {N}h
183
+
184
+ Recurring blockers (appeared on 2+ days):
185
+ - "{Blocker description}" — appeared {N} days
186
+ ```
187
+
188
+ ---
189
+
190
+ ### Outstanding Activities (always shown, minimum 7)
191
+
192
+ Picked from: tasks that are IN PROGRESS or have open (unsolved) blockers within the window, sorted by most recent occurrence first.
193
+
194
+ **If the window contains fewer than 7 such items:** expand backward day-by-day beyond the window start until 7 items are found. Note when items come from outside the window:
195
+
196
+ ```
197
+ 🔥 Outstanding Activities ({N} items):
198
+ 1. [{TASK-ID}] {Task name} — {completion%} — due {when} ⚠️ open blocker: "{blocker text}"
199
+ 2. [{TASK-ID}] {Task name} — {completion%} — due {when}
200
+ 3. [{TASK-ID}] {Task name} — blocked: "{blocker text}"
201
+ ...
202
+ 7. [{TASK-ID}] {Task name} — {completion%} ← from {DATE}, outside window
203
+ ```
204
+
205
+ Apply the linkification pass to all task IDs in the Outstanding Activities list.
206
+
207
+ Parse these from:
208
+ - `🔄 IN PROGRESS` sections in daily reports (completion %, when complete)
209
+ - `⚠️ ISSUES & BLOCKERS` sections in daily reports (severity, status, note)
210
+
211
+ Tasks with status `solved` in blockers are NOT outstanding. Only `open` or `in discussion`.
212
+
213
+ ---
214
+
215
+ ## After Display
216
+
217
+ Always end with:
218
+ ```
219
+ View something else? (specific date, "this week", "last month", or press Enter to exit)
220
+ ```
221
+
222
+ Accept any date/range input and switch mode accordingly. Loop until user exits.
@@ -244,6 +244,7 @@ Based on analysis, determine which docs to create using doc-mapping conventions.
244
244
  | Migration | `docs/MIGRATION.md` |
245
245
  | Security standards | `docs/SECURITY_STANDARDS.md` |
246
246
  | Coding standards | `docs/CODING_STANDARDS.md` |
247
+ | Review standards | `docs/REVIEW_STANDARDS.md` |
247
248
 
248
249
  > **AGENTS.md vs CLAUDE.md**: `AGENTS.md` is the full development guidelines file read by Amp agents. `CLAUDE.md` is a short Claude Code configuration file that points Claude agents to `AGENTS.md`. Always generate both — they serve different agent runtimes but the same guidelines.
249
250
 
@@ -259,6 +260,8 @@ Task() → docs/ARCHITECTURE.md generator
259
260
  Task() → Package-specific AGENTS.md generators
260
261
  Task() → docs/SECURITY_STANDARDS.md generator (if any security signals detected in scan)
261
262
  Task() → docs/CODING_STANDARDS.md generator (always)
263
+ Task() → docs/REVIEW_STANDARDS.md generator (always)
264
+ Task() → docs/KNOWN_ISSUES.md generator (always)
262
265
  ```
263
266
 
264
267
  ### 3.3 Doc Templates
@@ -437,6 +440,32 @@ Always generate `docs/CODING_STANDARDS.md` on every hd-docs-init run (no signal
437
440
 
438
441
  4. Write to `docs/CODING_STANDARDS.md`
439
442
 
443
+ ---
444
+
445
+ ### 3.6 REVIEW_STANDARDS.md Generation
446
+
447
+ Always generate `docs/REVIEW_STANDARDS.md` on every hd-docs-init run (no signal required).
448
+
449
+ 1. Start from the base template at `skills/hd-code-review/REVIEW_STANDARDS.md`
450
+
451
+ 2. Map detected project type to `tech_stack`:
452
+ | Project type (from Phase 1.2) | tech_stack value |
453
+ |-------------------------------|-----------------|
454
+ | Node.js / TypeScript | nodejs |
455
+ | Node.js Monorepo | nodejs |
456
+ | .NET Core / .NET 5+ | dotnet |
457
+ | .NET Framework | dotnet |
458
+ | .NET Solution (multi-project) | dotnet |
459
+ | Mixed (e.g. .NET API + Node frontend) | [dotnet, nodejs] |
460
+ | Other / unknown | ~ (leave blank) |
461
+
462
+ 3. Pre-fill `tech_stack:` with the detected value as a convenience hint. The skill also auto-detects from diff
463
+ extensions at review time, so this field can remain `~` if left unchanged.
464
+ Add comment at top: `# Generated by docs-init — tech_stack is optional (auto-detected from diff); set only to override`
465
+ Add reference: `# Base template: see hd-code-review/REVIEW_STANDARDS.md in your Claude skills directory (~/.claude/skills/hd-code-review/REVIEW_STANDARDS.md)`
466
+
467
+ 4. Write to `docs/REVIEW_STANDARDS.md`
468
+
440
469
  ## Phase 4: Review
441
470
 
442
471
  ### 4.1 Validation via finder (Amp) / Explore Subagent (Claude)
@@ -553,6 +582,8 @@ User: "Initialize docs for this new project"
553
582
  - [ ] AGENTS.md generated (always required)
554
583
  - [ ] CLAUDE.md generated pointing to AGENTS.md (always required)
555
584
  - [ ] docs/CODING_STANDARDS.md generated (always required)
585
+ - [ ] docs/REVIEW_STANDARDS.md generated (always required)
586
+ - [ ] docs/KNOWN_ISSUES.md generated (always required)
556
587
  ```
557
588
 
558
589
  ## Output Summary Notes
@@ -566,6 +597,8 @@ After generation, report the following to the user:
566
597
  | `docs/ARCHITECTURE.md` | created | Verify diagrams match code |
567
598
  | `docs/SECURITY_STANDARDS.md` | created | Set `applicable_compliance` if security signals were detected |
568
599
  | `docs/CODING_STANDARDS.md` | created | Edit `docs/CODING_STANDARDS.md` to enable project policies (feature flags, observability, i18n) as `required: yes` |
600
+ | `docs/REVIEW_STANDARDS.md` | created | Verify `tech_stack` is correct; add `custom_aspects` and `aspect_escalations` as needed |
601
+ | `docs/KNOWN_ISSUES.md` | created | Populate with project-specific known issues and accepted configuration debt |
569
602
 
570
603
  ## Troubleshooting
571
604
 
@@ -51,6 +51,7 @@ Parse the invocation:
51
51
  | `--metadata` | No | off | Include document metadata in output |
52
52
  | `--json` | No | — | Output as JSON (content + metadata) |
53
53
  | `--check` | No | — | Verify installation and dependencies |
54
+ | `--cache` | No | off | Enable result caching (speeds up repeated extractions) |
54
55
 
55
56
  ### Natural Language Resolution
56
57
 
@@ -278,4 +279,5 @@ The script prints clear error messages for common issues:
278
279
  /hd-docs-parse report.pdf --force-ocr — force OCR on text PDF
279
280
  /hd-docs-parse report.pdf --metadata --json — full metadata as JSON
280
281
  /hd-docs-parse --check — verify dependencies
282
+ /hd-docs-parse report.pdf --cache — enable caching for repeated extractions
281
283
  ```
@@ -78,6 +78,11 @@ def build_config(args):
78
78
 
79
79
  kwargs = {}
80
80
 
81
+ # Caching off by default; use --cache to enable (pins dir so hits work cross-session)
82
+ kwargs["use_cache"] = getattr(args, "cache", False)
83
+ if kwargs["use_cache"]:
84
+ kwargs["cache_dir"] = str(Path.home() / ".cache" / "kreuzberg")
85
+
81
86
  # OCR
82
87
  if args.ocr or args.force_ocr:
83
88
  kwargs["ocr_backend"] = "tesseract"
@@ -194,6 +199,7 @@ def main():
194
199
  parser.add_argument("--lang", default="eng", help="OCR language codes (default: eng)")
195
200
  parser.add_argument("--metadata", action="store_true", help="Include document metadata")
196
201
  parser.add_argument("--json", action="store_true", dest="as_json", help="Output as JSON")
202
+ parser.add_argument("--cache", action="store_true", help="Enable result caching to speed up repeated extractions")
197
203
  parser.add_argument("--check", action="store_true", help="Check installation and dependencies")
198
204
 
199
205
  args = parser.parse_args()
@@ -19,7 +19,7 @@ REQUEST → ASK → COLLECT → VERIFY → MAP → RECONCILE → APPLY → STAND
19
19
  | Phase | Action | Tools (Amp / Claude) |
20
20
  | ------------------ | --------------------------------------- | ------------------------------------------------------------- |
21
21
  | 1. Ask | Scope + start date from user | (interactive) |
22
- | 2. Collect | git log + history/ + plans/ (parallel) | `Bash`, `Glob`, `Read`, `oracle` (Amp) / `Plan` subagent (Claude) |
22
+ | 2. Collect | git log + history/ + plans/ + related repos (parallel) | `Bash`, `Glob`, `Read`, `oracle` (Amp) / `Plan` subagent (Claude) |
23
23
  | 3. Verify | Ground topics in code | `finder` (Amp) / `Explore` subagent (Claude) |
24
24
  | 4. Map | Auto-detect target docs | `finder` (Amp) / `Explore` subagent (Claude) |
25
25
  | 5. Reconcile | Topics vs code vs docs | `oracle` (Amp) / `Plan` subagent (Claude) |
@@ -77,9 +77,58 @@ Extract from output:
77
77
  2. Filter by date prefix >= start date
78
78
  3. `Read` any `.md` files found
79
79
 
80
+ ### Stream D — Related Repos Git History (conditional)
81
+
82
+ **Check conditions first:**
83
+
84
+ Read `additionalDirectories` from both `.claude/settings.json` and `.claude/settings.local.json`
85
+ and merge into one flat list of paths.
86
+
87
+ | AGENTS.md `## Related Projects` | `additionalDirectories` (merged) | Action |
88
+ |----------------------------------|----------------------------------|--------|
89
+ | ✅ present | ✅ has matching paths | Run git log for each matched path |
90
+ | ✅ present | ❌ no matches found | **Warn user** (see below), skip Stream D |
91
+ | ❌ missing | — | Silent skip |
92
+
93
+ **Alias matching**: for each alias in `## Related Projects`, check if any path in
94
+ `additionalDirectories` contains the alias as a directory name component
95
+ (e.g., alias `project-b-api` matches `/some/path/project-b-api`).
96
+
97
+ **Warning when Related Projects declared but no matching paths found:**
98
+
99
+ ```
100
+ ⚠️ Related Projects found in AGENTS.md but no matching paths in additionalDirectories.
101
+ Aliases declared: project-b-api, project-b-story-android
102
+ Stream D skipped — related repos git history will NOT be checked.
103
+
104
+ To fix: add to .claude/settings.json (committed, shared paths):
105
+ { "additionalDirectories": ["/path/to/project-b-api"] }
106
+
107
+ Or add to .claude/settings.local.json (gitignored, local paths):
108
+ { "additionalDirectories": ["/my/local/path/to/project-b-api"] }
109
+
110
+ See: /hd-help → Project Configuration Conventions → Multi-Repo Projects
111
+ ```
112
+
113
+ Display this warning once, then continue with Streams A/B/C only.
114
+
115
+ **When matches are found**, for each matched path:
116
+
117
+ ```bash
118
+ git -C <resolved-path> log --since="<date>" --oneline --no-merges
119
+ ```
120
+
121
+ Extract commit topics from the related repo. Label each with `[related: <alias>]`
122
+ so downstream phases know the origin.
123
+
124
+ **Why**: API changes in a related repo (e.g., renamed endpoint, changed request shape)
125
+ can make the current repo's docs stale even when the current repo had no commits.
126
+
80
127
  ### Synthesis
81
128
 
82
- `oracle` (Amp) / `Plan` subagent (Claude) clusters all three streams into a unified topic list.
129
+ `oracle` (Amp) / `Plan` subagent (Claude) clusters all four streams into a unified topic list.
130
+ Stream D topics carry `[related: <alias>]` labels. Reconcile phase should note when
131
+ a topic originates from a related repo rather than the current repo.
83
132
  See `reference/collection-prompts.md` → **Stream Synthesis Prompt**.
84
133
 
85
134
  ## Phase 3: Verify Against Code
@@ -125,6 +174,7 @@ Use file-change signals from Stream A to auto-target:
125
174
  | Troubleshooting insight | `docs/TROUBLESHOOTING.md` | — |
126
175
  | Auth / PII / payment / compliance changes | `SECURITY_STANDARDS.md` (suggest review only) | — |
127
176
  | Code style / patterns / convention changes | `docs/CODING_STANDARDS.md` — suggest review only | — |
177
+ | Stack change (new language/framework added) | `docs/REVIEW_STANDARDS.md` — suggest updating `tech_stack` | — |
128
178
 
129
179
  > **CLAUDE.md**: This file is a short pointer to `AGENTS.md` and rarely needs updating. Only touch it if the project structure changes significantly (e.g., AGENTS.md is moved or renamed).
130
180
  >
@@ -175,7 +225,7 @@ For multiple unrelated files: spawn parallel `Task` per file.
175
225
  ## Phase 7: Standards Delta Check
176
226
 
177
227
  Runs at end of every `hd-docs-sync` execution — after Phase 6, independent of topic detection.
178
- Checks both standards pairs. If no delta on either: silent.
228
+ Checks all three standards pairs. If no delta on any: silent.
179
229
 
180
230
  ### Standards pairs
181
231
 
@@ -183,6 +233,8 @@ Checks both standards pairs. If no delta on either: silent.
183
233
  | ---------------- | -------------- |
184
234
  | `skills/hd-security-review/SECURITY_STANDARDS.md` | `docs/SECURITY_STANDARDS.md` |
185
235
  | `skills/hd-code-review/CODING_STANDARDS.md` | `docs/CODING_STANDARDS.md` |
236
+ | `skills/hd-code-review/REVIEW_STANDARDS.md` | `docs/REVIEW_STANDARDS.md` |
237
+ | `docs/KNOWN_ISSUES.md` (format template from `hd-docs-init`) | `docs/KNOWN_ISSUES.md` |
186
238
 
187
239
  For each pair, run Sub-flow A or B:
188
240
 
@@ -200,6 +252,8 @@ On **yes**: `Read` base file → extract the project override scaffold (schema s
200
252
 
201
253
  On **no**: skip silently.
202
254
 
255
+ For `docs/KNOWN_ISSUES.md` specifically: scaffold the file with the KI entry format template + an empty KI entries section (no example entries).
256
+
203
257
  ### Sub-flow B: Project file exists → semantic diff + suggest
204
258
 
205
259
  1. `Read` base file → extract semantic units (section rule titles + first sentence)
@@ -220,12 +274,19 @@ On approval: `Read` project file → `Edit` to append confirmed points under a
220
274
 
221
275
  Manual edit always allowed — developer may prefer to copy-paste directly.
222
276
 
277
+ For `docs/KNOWN_ISSUES.md` specifically (Sub-flow B):
278
+ - Parse all `## KI-NNN` headings and extract their `Target fix` dates.
279
+ - Flag entries where `Target fix` date has passed → suggest resolving or updating the date.
280
+ - Flag entries that still contain example placeholder text (e.g., "Example —") → remind dev to replace with real issues.
281
+
223
282
  ### Semantic parse rules
224
283
 
225
284
  | Standards file | Parse units as |
226
285
  | -------------- | -------------- |
227
286
  | `SECURITY_STANDARDS.md` | Section 3.x rule headings + Section 4 CRITICAL gate table rows |
228
287
  | `CODING_STANDARDS.md` | Section 2.x bullet-point groups (2.2, 2.3) + Section 3.x policy names |
288
+ | `REVIEW_STANDARDS.md` | `tech_stack:` field + `reference/stacks/` preset names (Sub-flow A: offer create with auto-detected `tech_stack` pre-filled) |
289
+ | `KNOWN_ISSUES.md` | `## KI-NNN` headings + `Target fix` date field per entry |
229
290
 
230
291
  Match criterion: project file contains the **section heading** (e.g. `3.9` or `Logging`) →
231
292
  consider that rule "present". No deep content comparison needed.
@@ -301,6 +362,7 @@ User: "Sync docs for the estimation enhancements from last 2 weeks"
301
362
  - [ ] Terminology matches existing docs
302
363
  - [ ] Code-is-truth rule applied (planned ≠ implemented)
303
364
  - [ ] Standards delta check completed (create or diff+suggest for both pairs)
365
+ - [ ] Related repos git history checked (Stream D — if Related Projects + additionalDirectories configured)
304
366
  ```
305
367
 
306
368
  ## Troubleshooting
@@ -15,6 +15,7 @@
15
15
  | Migration | `docs/MIGRATION.md` |
16
16
  | Skills/workflow | Relevant `claude/skills/*/SKILL.md` |
17
17
  | Release notes | `CHANGELOG.md` |
18
+ | Review standards | `docs/REVIEW_STANDARDS.md` |
18
19
 
19
20
  ## By Change Type
20
21
 
@@ -58,7 +58,9 @@ Classify the user's description into one of these categories:
58
58
  | **QA** | test cases, QA, QC, tester, test suite, generate test cases, revise test cases, danger zones, verify test coverage, cross-reference tests, test case template |
59
59
  | **DailyGoals** | daily goals, morning goals, write today's goals, goals report, morning report before work |
60
60
  | **DailyReport** | daily report, daily standup, what I worked on, end of day report, done today, working on, blockers |
61
+ | **DailyViewer** | view daily report, show past goals, yesterday's report, this week summary, daily history, review last week, what did I do, summary of the week |
61
62
  | **DocParse** | extract text, parse document, convert PDF to text, OCR document, read DOCX, parse spreadsheet, extract from PDF, convert to markdown, batch extract, kreuzberg |
63
+ | **ISO** | ISO 9001, ISO 27001, compliance gap, iso lookup, iso onboard, iso change, sync iso docs, import google docs, iso policy, iso clause, hd-iso, iso verify, is this document ISO compliant, verify process against ISO, ncr, nonconformity, corrective action, mandatory records, certification readiness, are we ISO ready, audit readiness |
62
64
 
63
65
  ### Step 2: Route to Skill
64
66
 
@@ -98,6 +100,14 @@ Writing the morning goals report (what you plan to do today)?
98
100
  Writing the daily status report (what you did / are doing / blocked on)?
99
101
  YES → hd-daily-report
100
102
 
103
+ Want to VIEW or SUMMARIZE past daily goals or reports?
104
+ YES → hd-daily-viewer
105
+ /hd-daily-viewer — list last 7 days with availability indicators
106
+ /hd-daily-viewer yesterday — single day: goals + report + metrics
107
+ /hd-daily-viewer this week — weekly summary with per-day breakdown
108
+ /hd-daily-viewer last 30 days — monthly aggregates + outstanding activities
109
+ /hd-daily-viewer 2026-03-01 — specific date
110
+
101
111
  Something is broken, wrong, or failing?
102
112
  YES → hd-issue-resolution
103
113
 
@@ -149,6 +159,17 @@ Documentation goal:
149
159
  AGENTS.md exists but stale? → hd-docs-sync
150
160
  Completed beads to log? → hd-changelog
151
161
 
162
+ ISO 9001 / 27001 compliance goal?
163
+ Sync Google Docs → Markdown? → hd-iso-sync <folder-url>
164
+ Search ISO docs? → hd-iso lookup <query>
165
+ Check compliance gaps? → hd-iso gap --standard 27001
166
+ Planning a doc change? → hd-iso change <description>
167
+ Onboard a new employee? → hd-iso onboard --role <role>
168
+ Verify doc content quality? → hd-iso-verify <path|--clause|--standard|NL>
169
+ Log / track a nonconformity? → hd-iso ncr (log | list | close | show)
170
+ Check mandatory ISO records exist? → hd-iso records --standard 27001
171
+ Pre-audit readiness check? → hd-iso-ready --standard 27001
172
+
152
173
  General problem exploration, unclear intent, or "I don't know what I need"?
153
174
  → hd-brainstorming (good starting point for any ambiguous situation)
154
175
  ```
@@ -184,6 +205,7 @@ Use this table to populate the `**Requires:**` line above. Omit the line for ski
184
205
  | `hd-asana` | Python + `ASANA_API_KEY` env var |
185
206
  | `hd-look-at`, `hd-painter` | Python + `GEMINI_API_KEY` env var |
186
207
  | `hd-task`, `hd-tasks` | Linear / Jira / ClickUp / Asana MCP configured |
208
+ | `hd-iso-sync` | Google Docs MCP (`a-bonus/google-docs-mcp`) + Google OAuth credentials |
187
209
 
188
210
  When requirements apply, append to the output:
189
211
  > **Requires:** `<from table above>` — see `docs/INSTALL.md` for setup
@@ -212,6 +234,8 @@ Use these rules when the routing step above has ambiguity:
212
234
  | `hd-look-at` vs `hd-painter` | Analyzing existing media (image/audio/video/screenshot)? → hd-look-at. Creating new images or videos from a text prompt? → hd-painter. |
213
235
  | `hd-docs-parse` vs `hd-look-at` | Extracting text content from a document (PDF, DOCX, XLSX, images via OCR)? → hd-docs-parse. Analyzing/describing visual or audio content (what's in this image, transcribe audio)? → hd-look-at. |
214
236
  | `hd-daily-goals` vs `hd-daily-report` | Morning, planning what to DO? → hd-daily-goals. During/end of day, reporting what was DONE? → hd-daily-report. |
237
+ | `hd-daily-report` vs `hd-daily-viewer` | Writing today's report? → hd-daily-report. Viewing/reviewing a past report? → hd-daily-viewer. |
238
+ | `hd-daily-goals` vs `hd-daily-viewer` | Writing today's goals? → hd-daily-goals. Reviewing past goals or summaries? → hd-daily-viewer. |
215
239
 
216
240
  ---
217
241