opencode-code-archaeology 2.0.2 → 2.2.1

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 (60) hide show
  1. package/AGENTS.md +42 -10
  2. package/CHANGELOG.md +66 -0
  3. package/CONTRIBUTING.md +2 -0
  4. package/INSTALL.md +90 -20
  5. package/README.md +90 -29
  6. package/VERSION +1 -1
  7. package/assets/code-archaeology-banner.svg +173 -44
  8. package/commands/code-archaeology.md +7 -5
  9. package/dist/cli.js +28 -2
  10. package/dist/cli.js.map +1 -1
  11. package/dist/index.d.ts +1 -5
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -17
  14. package/dist/index.js.map +1 -1
  15. package/dist/platform.d.ts +4 -0
  16. package/dist/platform.d.ts.map +1 -0
  17. package/dist/platform.js +11 -0
  18. package/dist/platform.js.map +1 -0
  19. package/dist/plugin.d.ts +2 -2
  20. package/dist/plugin.d.ts.map +1 -1
  21. package/dist/plugin.js +2 -1
  22. package/dist/plugin.js.map +1 -1
  23. package/dist/runtime.d.ts +18 -0
  24. package/dist/runtime.d.ts.map +1 -0
  25. package/dist/runtime.js +49 -0
  26. package/dist/runtime.js.map +1 -0
  27. package/dist/types.d.ts +1 -6
  28. package/dist/types.d.ts.map +1 -1
  29. package/dist/types.js.map +1 -1
  30. package/docs/ARCHITECTURE.md +41 -10
  31. package/docs/INSTALL.md +50 -11
  32. package/docs/README.md +37 -9
  33. package/docs/RELEASE.md +20 -16
  34. package/docs/index.html +740 -0
  35. package/hooks/hermes/runner.ps1 +247 -0
  36. package/hooks/hermes/runner.sh +262 -0
  37. package/hooks/hermes/setup.ps1 +41 -0
  38. package/hooks/hermes/setup.sh +41 -0
  39. package/hooks/opencode/init.ps1 +83 -0
  40. package/hooks/opencode/revert-phase.ps1 +12 -0
  41. package/hooks/opencode/revert-phase.sh +3 -8
  42. package/hooks/opencode/update-expedition.ps1 +51 -0
  43. package/hooks/opencode/verify-package.sh +1 -0
  44. package/hooks/opencode/verify-phase.ps1 +35 -0
  45. package/hooks/opencode/verify-phase.sh +7 -7
  46. package/hooks/shared/command-utils.ps1 +100 -0
  47. package/package.json +16 -3
  48. package/skills/code-archaeology/SKILL.md +2 -2
  49. package/skills/hermes/INTEGRATION.md +120 -0
  50. package/skills/hermes/README.md +167 -0
  51. package/skills/hermes/code-archaeology-prompt.md +203 -0
  52. package/wiki/Expedition-Workflow.md +3 -1
  53. package/wiki/Home.md +2 -2
  54. package/wiki/Installation.md +2 -0
  55. package/wiki/Release-Process.md +6 -6
  56. package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -63
  57. package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -48
  58. package/.github/pull_request_template.md +0 -26
  59. package/.github/workflows/ci.yml +0 -45
  60. package/plugins/code-archaeology.ts +0 -8
@@ -1,66 +1,195 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" width="900" height="300" viewBox="0 0 900 300" role="img" aria-labelledby="title desc">
2
- <title id="title">Code Archaeology OpenCode Plugin</title>
3
- <desc id="desc">Dark archaeology themed banner for the Code Archaeology OpenCode plugin.</desc>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 460" width="1200" height="460" role="img" aria-labelledby="title desc">
2
+ <title id="title">Code Archaeology Multi-runtime Plugin</title>
3
+ <desc id="desc">Dark-themed archaeological excavation banner showing code strata layers, dual runtime badges for OpenCode and Hermes, and a 10-phase expedition indicator.</desc>
4
+
4
5
  <defs>
5
- <linearGradient id="bg" x1="0" y1="0" x2="1" y2="1">
6
- <stop offset="0" stop-color="#071018"/>
7
- <stop offset="0.48" stop-color="#111827"/>
8
- <stop offset="1" stop-color="#2a1809"/>
9
- </linearGradient>
10
- <linearGradient id="sand" x1="0" y1="0" x2="1" y2="0">
11
- <stop offset="0" stop-color="#c0843f"/>
12
- <stop offset="0.5" stop-color="#e0b15b"/>
13
- <stop offset="1" stop-color="#8b5a2b"/>
6
+ <!-- Background gradient -->
7
+ <linearGradient id="bgGrad" x1="0" y1="0" x2="0" y2="1">
8
+ <stop offset="0" stop-color="#0b1020"/>
9
+ <stop offset="1" stop-color="#1e293b"/>
14
10
  </linearGradient>
15
- <linearGradient id="tablet" x1="0" y1="0" x2="0" y2="1">
11
+
12
+ <!-- Strata gradients -->
13
+ <linearGradient id="surfaceGrad" x1="0" y1="0" x2="1" y2="0">
16
14
  <stop offset="0" stop-color="#334155"/>
17
- <stop offset="1" stop-color="#111827"/>
15
+ <stop offset="1" stop-color="#475569"/>
16
+ </linearGradient>
17
+ <linearGradient id="legacyGrad" x1="0" y1="0" x2="1" y2="0">
18
+ <stop offset="0" stop-color="#78350f"/>
19
+ <stop offset="1" stop-color="#92400e"/>
20
+ </linearGradient>
21
+ <linearGradient id="bedrockGrad" x1="0" y1="0" x2="1" y2="0">
22
+ <stop offset="0" stop-color="#1e1b4b"/>
23
+ <stop offset="1" stop-color="#312e81"/>
18
24
  </linearGradient>
25
+
26
+ <!-- Glow filter for accents -->
19
27
  <filter id="glow" x="-30%" y="-30%" width="160%" height="160%">
20
- <feGaussianBlur stdDeviation="4" result="blur"/>
28
+ <feGaussianBlur stdDeviation="3" result="blur"/>
21
29
  <feMerge>
22
30
  <feMergeNode in="blur"/>
23
31
  <feMergeNode in="SourceGraphic"/>
24
32
  </feMerge>
25
33
  </filter>
34
+
35
+ <!-- Subtle grid pattern -->
36
+ <pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse">
37
+ <path d="M 40 0 L 0 0 0 40" fill="none" stroke="#1e293b" stroke-width="0.5" opacity="0.3"/>
38
+ </pattern>
26
39
  </defs>
27
40
 
28
- <rect width="900" height="300" fill="url(#bg)"/>
29
- <path d="M0 222 C120 198 214 236 322 213 C452 186 549 216 672 194 C764 178 827 190 900 171 L900 300 L0 300 Z" fill="#20140b" opacity="0.92"/>
30
- <path d="M0 244 C152 214 244 266 386 231 C505 202 626 242 744 210 C806 193 852 201 900 189 L900 300 L0 300 Z" fill="#2f1d0f"/>
31
- <path d="M0 268 C138 246 267 281 405 258 C523 238 650 270 770 244 C827 232 865 232 900 222 L900 300 L0 300 Z" fill="url(#sand)" opacity="0.82"/>
41
+ <!-- Background -->
42
+ <rect width="1200" height="460" fill="url(#bgGrad)"/>
43
+ <rect width="1200" height="460" fill="url(#grid)"/>
44
+
45
+ <!-- Geological strata layers (left side, showing code layers) -->
46
+ <g transform="translate(60, 80)">
47
+ <!-- Surface layer -->
48
+ <path d="M0 0 L280 0 L260 55 L20 55 Z" fill="url(#surfaceGrad)" stroke="#64748b" stroke-width="1.5"/>
49
+ <text x="140" y="35" text-anchor="middle" font-family="SFMono-Regular, Consolas, monospace" font-size="14" fill="#94a3b8">Surface // Active Code</text>
50
+
51
+ <!-- Legacy layer -->
52
+ <path d="M20 55 L260 55 L240 115 L40 115 Z" fill="url(#legacyGrad)" stroke="#f97316" stroke-width="1.5" opacity="0.85"/>
53
+ <text x="140" y="92" text-anchor="middle" font-family="SFMono-Regular, Consolas, monospace" font-size="14" fill="#fdba74">Legacy // Deprecated Shims</text>
32
54
 
33
- <g opacity="0.35" stroke="#e0b15b" stroke-width="1" fill="none">
34
- <path d="M41 96 H312"/>
35
- <path d="M586 66 H852"/>
36
- <path d="M640 103 H828"/>
37
- <path d="M68 128 H242"/>
55
+ <!-- Bedrock layer -->
56
+ <path d="M40 115 L240 115 L220 180 L60 180 Z" fill="url(#bedrockGrad)" stroke="#6366f1" stroke-width="1.5" opacity="0.9"/>
57
+ <text x="140" y="155" text-anchor="middle" font-family="SFMono-Regular, Consolas, monospace" font-size="14" fill="#a5b4fc">Bedrock // Core Types</text>
58
+
59
+ <!-- Stratum divider lines -->
60
+ <line x1="290" y1="27" x2="340" y2="27" stroke="#64748b" stroke-width="1" stroke-dasharray="4 3"/>
61
+ <line x1="270" y1="85" x2="340" y2="85" stroke="#f97316" stroke-width="1" stroke-dasharray="4 3"/>
62
+ <line x1="250" y1="147" x2="340" y2="147" stroke="#6366f1" stroke-width="1" stroke-dasharray="4 3"/>
63
+ </g>
64
+
65
+ <!-- Archaeologist / excavation tools (right side) -->
66
+ <g transform="translate(980, 70)">
67
+ <!-- Brush -->
68
+ <rect x="15" y="0" width="12" height="70" rx="3" fill="#78350f" opacity="0.9"/>
69
+ <rect x="10" y="65" width="22" height="35" rx="4" fill="#d97706" opacity="0.9"/>
70
+ <line x1="21" y1="100" x2="21" y2="130" stroke="#d97706" stroke-width="3" stroke-linecap="round"/>
71
+
72
+ <!-- Trowel -->
73
+ <path d="M60 20 L75 20 L85 80 L50 80 Z" fill="#475569" stroke="#94a3b8" stroke-width="1.5"/>
74
+ <line x1="67" y1="80" x2="67" y2="130" stroke="#64748b" stroke-width="4" stroke-linecap="round"/>
75
+
76
+ <!-- Small artifacts / code fragments -->
77
+ <text x="-30" y="160" font-family="SFMono-Regular, Consolas, monospace" font-size="11" fill="#fbbf24" opacity="0.7">{ }</text>
78
+ <text x="10" y="175" font-family="SFMono-Regular, Consolas, monospace" font-size="10" fill="#f97316" opacity="0.6">// TODO</text>
79
+ <text x="45" y="155" font-family="SFMono-Regular, Consolas, monospace" font-size="9" fill="#a5b4fc" opacity="0.5">fn main()</text>
80
+ </g>
81
+
82
+ <!-- Wordmark -->
83
+ <g transform="translate(420, 105)">
84
+ <text x="0" y="0" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="56" font-weight="900" fill="#f8fafc" letter-spacing="-1">Code Archaeology</text>
85
+ <text x="2" y="42" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="20" font-weight="600" fill="#fbbf24">Excavate technical debt. Restore with confidence.</text>
38
86
  </g>
39
87
 
40
- <g transform="translate(78 58)">
41
- <path d="M74 8 L141 34 L116 146 L22 146 L0 35 Z" fill="url(#tablet)" stroke="#64748b" stroke-width="3"/>
42
- <path d="M28 48 H103 M31 75 H111 M36 102 H91" stroke="#cbd5e1" stroke-width="6" stroke-linecap="round" opacity="0.72"/>
43
- <path d="M95 138 L136 179" stroke="#d6a23f" stroke-width="12" stroke-linecap="round"/>
44
- <path d="M126 169 L169 126" stroke="#d6a23f" stroke-width="12" stroke-linecap="round"/>
45
- <path d="M138 120 C154 103 182 104 198 120 L169 149 Z" fill="#111827" stroke="#f6c453" stroke-width="6"/>
46
- <circle cx="71" cy="31" r="9" fill="#f6c453" filter="url(#glow)"/>
88
+ <!-- Runtime badges -->
89
+ <g transform="translate(420, 185)">
90
+ <!-- OpenCode badge -->
91
+ <rect x="0" y="0" width="130" height="32" rx="8" fill="#0f172a" stroke="#38bdf8" stroke-width="1.5"/>
92
+ <circle cx="20" cy="16" r="5" fill="#38bdf8"/>
93
+ <text x="34" y="21" font-family="SFMono-Regular, Consolas, monospace" font-size="13" fill="#e0f2fe" font-weight="600">OpenCode</text>
94
+
95
+ <!-- Hermes badge -->
96
+ <rect x="150" y="0" width="120" height="32" rx="8" fill="#0f172a" stroke="#a78bfa" stroke-width="1.5"/>
97
+ <circle cx="170" cy="16" r="5" fill="#a78bfa"/>
98
+ <text x="184" y="21" font-family="SFMono-Regular, Consolas, monospace" font-size="13" fill="#ede9fe" font-weight="600">Hermes</text>
99
+
100
+ <!-- Multi-runtime label -->
101
+ <text x="290" y="21" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="14" fill="#94a3b8" font-weight="500">Multi-runtime plugin</text>
47
102
  </g>
48
103
 
49
- <g transform="translate(300 70)">
50
- <text x="0" y="43" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="46" font-weight="800" fill="#f8fafc" letter-spacing="1">Code Archaeology</text>
51
- <text x="2" y="83" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="20" font-weight="600" fill="#f6c453">OpenCode plugin for systematic codebase excavation</text>
52
- <text x="2" y="122" font-family="SFMono-Regular, Consolas, Liberation Mono, monospace" font-size="15" fill="#cbd5e1">survey - excavate - restore - verify</text>
53
- <g transform="translate(0 145)" font-family="SFMono-Regular, Consolas, Liberation Mono, monospace" font-size="13" fill="#94a3b8">
54
- <rect x="0" y="0" width="455" height="42" rx="10" fill="#020617" opacity="0.72" stroke="#334155"/>
55
- <text x="18" y="26">dead code | legacy | cycles | types | DRY | errors</text>
104
+ <!-- 10-phase indicator -->
105
+ <g transform="translate(420, 255)">
106
+ <text x="0" y="-10" font-family="Inter, Segoe UI, Arial, sans-serif" font-size="12" fill="#64748b" font-weight="600" letter-spacing="2">10-PHASE EXPEDITION</text>
107
+
108
+ <!-- Phase boxes 1-10 -->
109
+ <g font-family="SFMono-Regular, Consolas, monospace" font-size="11" font-weight="700">
110
+ <!-- Phase 1 -->
111
+ <rect x="0" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#38bdf8" stroke-width="1.5"/>
112
+ <text x="18" y="19" text-anchor="middle" fill="#e0f2fe">1</text>
113
+ <!-- Arrow -->
114
+ <text x="42" y="19" fill="#475569">→</text>
115
+
116
+ <!-- Phase 2 -->
117
+ <rect x="56" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#38bdf8" stroke-width="1.5"/>
118
+ <text x="74" y="19" text-anchor="middle" fill="#e0f2fe">2</text>
119
+ <text x="98" y="19" fill="#475569">→</text>
120
+
121
+ <!-- Phase 3 -->
122
+ <rect x="112" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#38bdf8" stroke-width="1.5"/>
123
+ <text x="130" y="19" text-anchor="middle" fill="#e0f2fe">3</text>
124
+ <text x="154" y="19" fill="#475569">→</text>
125
+
126
+ <!-- Phase 4 -->
127
+ <rect x="168" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#38bdf8" stroke-width="1.5"/>
128
+ <text x="186" y="19" text-anchor="middle" fill="#e0f2fe">4</text>
129
+ <text x="210" y="19" fill="#475569">→</text>
130
+
131
+ <!-- Phase 5 -->
132
+ <rect x="224" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#fbbf24" stroke-width="1.5"/>
133
+ <text x="242" y="19" text-anchor="middle" fill="#fef3c7">5</text>
134
+ <text x="266" y="19" fill="#475569">→</text>
135
+
136
+ <!-- Phase 6 -->
137
+ <rect x="280" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#fbbf24" stroke-width="1.5"/>
138
+ <text x="298" y="19" text-anchor="middle" fill="#fef3c7">6</text>
139
+ <text x="322" y="19" fill="#475569">→</text>
140
+
141
+ <!-- Phase 7 -->
142
+ <rect x="336" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#f97316" stroke-width="1.5"/>
143
+ <text x="354" y="19" text-anchor="middle" fill="#ffedd5">7</text>
144
+ <text x="378" y="19" fill="#475569">→</text>
145
+
146
+ <!-- Phase 8 -->
147
+ <rect x="392" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#f97316" stroke-width="1.5"/>
148
+ <text x="410" y="19" text-anchor="middle" fill="#ffedd5">8</text>
149
+ <text x="434" y="19" fill="#475569">→</text>
150
+
151
+ <!-- Phase 9 -->
152
+ <rect x="448" y="0" width="36" height="28" rx="5" fill="#0f172a" stroke="#a78bfa" stroke-width="1.5"/>
153
+ <text x="466" y="19" text-anchor="middle" fill="#ede9fe">9</text>
154
+ <text x="490" y="19" fill="#475569">→</text>
155
+
156
+ <!-- Phase 10 -->
157
+ <rect x="504" y="0" width="42" height="28" rx="5" fill="#0f172a" stroke="#a78bfa" stroke-width="1.5"/>
158
+ <text x="525" y="19" text-anchor="middle" fill="#ede9fe">10</text>
56
159
  </g>
57
160
  </g>
58
161
 
59
- <g opacity="0.55" fill="#f6c453">
60
- <circle cx="807" cy="54" r="2"/>
61
- <circle cx="846" cy="93" r="1.8"/>
62
- <circle cx="758" cy="120" r="1.5"/>
63
- <circle cx="63" cy="39" r="1.5"/>
64
- <circle cx="219" cy="48" r="2"/>
162
+ <!-- Bottom info bar -->
163
+ <g transform="translate(420, 340)">
164
+ <rect x="0" y="0" width="560" height="42" rx="10" fill="#020617" opacity="0.72" stroke="#334155" stroke-width="1"/>
165
+ <text x="20" y="26" font-family="SFMono-Regular, Consolas, monospace" font-size="13" fill="#94a3b8">survey · excavate · restore · verify · dead code · legacy · cycles · types · DRY · errors</text>
166
+ </g>
167
+
168
+ <!-- Decorative particles / dust motes -->
169
+ <g opacity="0.4" fill="#fbbf24">
170
+ <circle cx="1100" cy="60" r="2"/>
171
+ <circle cx="1150" cy="120" r="1.5"/>
172
+ <circle cx="1080" cy="200" r="2.5"/>
173
+ <circle cx="1120" cy="280" r="1.8"/>
174
+ <circle cx="1160" cy="350" r="2"/>
175
+ <circle cx="1090" cy="400" r="1.5"/>
176
+ <circle cx="1140" cy="430" r="2"/>
177
+ </g>
178
+
179
+ <!-- Subtle excavation grid markers -->
180
+ <g opacity="0.15" stroke="#fbbf24" stroke-width="1" fill="none">
181
+ <rect x="50" y="70" width="300" height="200" rx="4"/>
182
+ <line x1="50" y1="130" x2="350" y2="130"/>
183
+ <line x1="50" y1="190" x2="350" y2="190"/>
184
+ <line x1="150" y1="70" x2="150" y2="270"/>
185
+ <line x1="250" y1="70" x2="250" y2="270"/>
186
+ </g>
187
+
188
+ <!-- Corner accent lines -->
189
+ <g opacity="0.3" stroke="#f97316" stroke-width="2" fill="none">
190
+ <path d="M0 0 L60 0 L0 60 Z" fill="#f97316" opacity="0.05"/>
191
+ <path d="M1140 0 L1200 0 L1200 60 Z" fill="#f97316" opacity="0.05"/>
192
+ <path d="M0 400 L0 460 L60 460 Z" fill="#f97316" opacity="0.05"/>
193
+ <path d="M1140 460 L1200 460 L1200 400 Z" fill="#f97316" opacity="0.05"/>
65
194
  </g>
66
195
  </svg>
@@ -13,6 +13,8 @@ trigger:
13
13
 
14
14
  Excavate, catalog, and restore a codebase by removing accumulated sediment: dead code, legacy fallbacks, circular dependencies, weak types, and defensive programming slop. Produces human-reviewable site reports before any artifacts are disturbed. Non-destructive by default.
15
15
 
16
+ By default, `/code-archaeology` runs the full 10-phase survey chain without stopping for a prompt between phases. It generates the complete report set in `.archaeology/` and makes zero source-code changes. To apply changes after review, use `/code-archaeology-restore` explicitly.
17
+
16
18
  ## Quick Start
17
19
 
18
20
  ```
@@ -36,7 +38,7 @@ Run: /code-archaeology
36
38
 
37
39
  | Command | Description |
38
40
  |---------|-------------|
39
- | `/code-archaeology` | Start full expedition (default: survey mode) |
41
+ | `/code-archaeology` | Run the full 10-phase survey chain without per-phase prompts |
40
42
  | `/code-archaeology-survey` | Site survey only — zero file changes |
41
43
  | `/code-archaeology-excavate` | Generate reports + mock patches for review |
42
44
  | `/code-archaeology-restore` | Execute approved changes after review |
@@ -49,8 +51,8 @@ Run: /code-archaeology
49
51
  | `language` | `typescript` | Primary language |
50
52
  | `mode` | `survey` | `survey`, `excavate`, or `restore` |
51
53
  | `strict_mode` | `false` | Auto-restore medium-confidence findings |
52
- | `test_command` | `npm test` | Test runner command |
53
- | `typecheck_command` | `npx tsc --noEmit` | Type check command |
54
+ | `test_command` | `npm test` | Recorded session default only; verification uses `CODE_ARCHAEOLOGY_TEST_COMMAND` for operator-approved overrides |
55
+ | `typecheck_command` | `npx tsc --noEmit` | Recorded session default only; verification uses `CODE_ARCHAEOLOGY_TYPECHECK_COMMAND` for operator-approved overrides |
54
56
  | `branch_name` | `refactor/archaeology` | Git branch to create |
55
57
 
56
58
  ## Requirements
@@ -62,9 +64,9 @@ Run: /code-archaeology
62
64
 
63
65
  ## Safety
64
66
 
65
- - **Survey mode (default)**: Zero file changes. Only reports generated.
67
+ - **Survey mode (default)**: Zero file changes. Runs every phase and generates the full report set.
66
68
  - **Excavate mode**: Mock patches for human review. No actual modifications.
67
- - **Restore mode**: Applies approved changes. Always runs tests between phases.
69
+ - **Restore mode**: Applies approved changes only when explicitly requested with `/code-archaeology-restore`. Always runs tests between phases.
68
70
  - **Branch isolation**: All work happens on `refactor/archaeology` (configurable).
69
71
  - **Test gating**: Any phase that breaks tests is automatically reverted.
70
72
 
package/dist/cli.js CHANGED
@@ -4,18 +4,35 @@ import { existsSync } from "node:fs";
4
4
  import { dirname, join } from "node:path";
5
5
  import { fileURLToPath } from "node:url";
6
6
  import process from "node:process";
7
+ import { isWindows } from "./platform.js";
7
8
  const PLUGIN = "opencode-code-archaeology@git+https://github.com/Maleick/Code-Archaeology.git";
8
9
  const REQUIRED_FILES = [
9
10
  "commands/code-archaeology.md",
10
11
  "skills/code-archaeology/SKILL.md",
11
12
  "hooks/opencode/init.sh",
12
13
  "hooks/opencode/verify-phase.sh",
14
+ "hooks/hermes/setup.sh",
15
+ "hooks/hermes/runner.sh",
16
+ "skills/hermes/INTEGRATION.md",
17
+ "AGENTS.md",
18
+ "README.md",
19
+ "INSTALL.md",
20
+ ];
21
+ const REQUIRED_FILES_PS1 = [
22
+ "commands/code-archaeology.md",
23
+ "skills/code-archaeology/SKILL.md",
24
+ "hooks/opencode/init.ps1",
25
+ "hooks/opencode/verify-phase.ps1",
26
+ "hooks/hermes/setup.ps1",
27
+ "hooks/hermes/runner.ps1",
28
+ "skills/hermes/INTEGRATION.md",
13
29
  "AGENTS.md",
14
30
  "README.md",
15
31
  "INSTALL.md",
16
32
  ];
17
33
  const cliFile = fileURLToPath(import.meta.url);
18
34
  const root = dirname(dirname(cliFile));
35
+ const skillsPath = join(root, "skills");
19
36
  function configPath() {
20
37
  const configDir = process.env.OPENCODE_CONFIG_DIR || join(process.env.HOME || ".", ".config", "opencode");
21
38
  return join(configDir, "opencode.json");
@@ -59,6 +76,13 @@ async function install() {
59
76
  if (!plugins.includes(PLUGIN)) {
60
77
  config.plugin = [...plugins, PLUGIN];
61
78
  }
79
+ const skills = typeof config.skills === "object" && config.skills !== null ? config.skills : {};
80
+ const paths = Array.isArray(skills.paths)
81
+ ? skills.paths
82
+ : [];
83
+ if (!paths.includes(skillsPath)) {
84
+ config.skills = { ...skills, paths: [...paths, skillsPath] };
85
+ }
62
86
  await mkdir(dirname(target), { recursive: true });
63
87
  let backup;
64
88
  if (exists) {
@@ -73,9 +97,11 @@ async function install() {
73
97
  console.log("Next steps:");
74
98
  console.log("1. Restart OpenCode.");
75
99
  console.log("2. Run /code-archaeology-survey in your target repository.");
100
+ console.log("Cross-platform: uses .ps1 hooks on Windows, .sh hooks on Unix.");
76
101
  }
77
102
  function doctor() {
78
- const missing = REQUIRED_FILES.filter((file) => !existsSync(join(root, file)));
103
+ const files = isWindows() ? REQUIRED_FILES_PS1 : REQUIRED_FILES;
104
+ const missing = files.filter((file) => !existsSync(join(root, file)));
79
105
  if (missing.length > 0) {
80
106
  console.error("Missing Code Archaeology package files:");
81
107
  for (const file of missing) {
@@ -85,7 +111,7 @@ function doctor() {
85
111
  return;
86
112
  }
87
113
  console.log("Code Archaeology package files present:");
88
- for (const file of REQUIRED_FILES) {
114
+ for (const file of files) {
89
115
  console.log(`- ${file}`);
90
116
  }
91
117
  }
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,3 @@
1
- import type { PluginServer } from "./types.js";
2
- export declare const id = "code-archaeology";
3
- export declare const repoRoot: string;
4
- export declare const version: string;
5
- export declare function server(): Promise<PluginServer>;
1
+ export { codeArchaeologyPlugin as default } from "./runtime.js";
6
2
  export * from "./types.js";
7
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAO/C,eAAO,MAAM,EAAE,qBAAqB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAc,CAAC;AAGpC,eAAO,MAAM,OAAO,QAA2C,CAAC;AAEhE,wBAAsB,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,CAMpD;AAED,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAChE,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,19 +1,3 @@
1
- import { fileURLToPath } from "node:url";
2
- import { dirname, resolve } from "node:path";
3
- import { readFileSync } from "node:fs";
4
- const __filename = fileURLToPath(import.meta.url);
5
- const __dirname = dirname(__filename);
6
- const packageRoot = resolve(__dirname, "..");
7
- export const id = "code-archaeology";
8
- export const repoRoot = packageRoot;
9
- const versionPath = resolve(packageRoot, "VERSION");
10
- export const version = readFileSync(versionPath, "utf8").trim();
11
- export async function server() {
12
- return {
13
- event() {
14
- return undefined;
15
- },
16
- };
17
- }
1
+ export { codeArchaeologyPlugin as default } from "./runtime.js";
18
2
  export * from "./types.js";
19
3
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAGvC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AAE7C,MAAM,CAAC,MAAM,EAAE,GAAG,kBAAkB,CAAC;AACrC,MAAM,CAAC,MAAM,QAAQ,GAAG,WAAW,CAAC;AAEpC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AAEhE,MAAM,CAAC,KAAK,UAAU,MAAM;IAC1B,OAAO;QACL,KAAK;YACH,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC;AAED,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAChE,cAAc,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function isWindows(): boolean;
2
+ export declare function getHookExtension(): string;
3
+ export declare function getShellCommand(): string;
4
+ //# sourceMappingURL=platform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,IAAI,OAAO,CAEnC;AAED,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC"}
@@ -0,0 +1,11 @@
1
+ import process from "node:process";
2
+ export function isWindows() {
3
+ return process.platform === "win32";
4
+ }
5
+ export function getHookExtension() {
6
+ return isWindows() ? ".ps1" : ".sh";
7
+ }
8
+ export function getShellCommand() {
9
+ return isWindows() ? "powershell.exe" : "bash";
10
+ }
11
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../src/platform.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC;AACjD,CAAC"}
package/dist/plugin.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { id, repoRoot, version, server, } from "./index.js";
2
- export type * from "./types.js";
1
+ export { codeArchaeologyPlugin as default } from "./runtime.js";
2
+ export * from "./types.js";
3
3
  //# sourceMappingURL=plugin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,MAAM,GACP,MAAM,YAAY,CAAC;AAEpB,mBAAmB,YAAY,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAChE,cAAc,YAAY,CAAC"}
package/dist/plugin.js CHANGED
@@ -1,2 +1,3 @@
1
- export { id, repoRoot, version, server, } from "./index.js";
1
+ export { codeArchaeologyPlugin as default } from "./runtime.js";
2
+ export * from "./types.js";
2
3
  //# sourceMappingURL=plugin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,EAAE,EACF,QAAQ,EACR,OAAO,EACP,MAAM,GACP,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,IAAI,OAAO,EAAE,MAAM,cAAc,CAAC;AAChE,cAAc,YAAY,CAAC"}
@@ -0,0 +1,18 @@
1
+ export declare const packageRoot: string;
2
+ export declare const id = "code-archaeology";
3
+ export declare const repoRoot: string;
4
+ export declare const version: string;
5
+ type OpenCodeConfig = {
6
+ command?: Record<string, {
7
+ template: string;
8
+ description?: string;
9
+ }>;
10
+ skills?: {
11
+ paths?: string[];
12
+ };
13
+ };
14
+ export declare function codeArchaeologyPlugin(): Promise<{
15
+ config(config: OpenCodeConfig): void;
16
+ }>;
17
+ export {};
18
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,WAAW,QAA2B,CAAC;AACpD,eAAO,MAAM,EAAE,qBAAqB,CAAC;AACrC,eAAO,MAAM,QAAQ,QAAc,CAAC;AAGpC,eAAO,MAAM,OAAO,QAA2C,CAAC;AAEhE,KAAK,cAAc,GAAG;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;CACH,CAAC;AA6BF,wBAAsB,qBAAqB;mBAIxB,cAAc;GAYhC"}
@@ -0,0 +1,49 @@
1
+ import { readFileSync } from "node:fs";
2
+ import { dirname, resolve } from "node:path";
3
+ import { fileURLToPath } from "node:url";
4
+ const __filename = fileURLToPath(import.meta.url);
5
+ const __dirname = dirname(__filename);
6
+ export const packageRoot = resolve(__dirname, "..");
7
+ export const id = "code-archaeology";
8
+ export const repoRoot = packageRoot;
9
+ const versionPath = resolve(packageRoot, "VERSION");
10
+ export const version = readFileSync(versionPath, "utf8").trim();
11
+ const commandFiles = [
12
+ "code-archaeology",
13
+ "code-archaeology-survey",
14
+ "code-archaeology-excavate",
15
+ "code-archaeology-restore",
16
+ ];
17
+ function parseCommand(name) {
18
+ const template = readFileSync(resolve(packageRoot, "commands", `${name}.md`), "utf8");
19
+ const match = template.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
20
+ if (!match) {
21
+ return { template };
22
+ }
23
+ const description = match[1]
24
+ .split("\n")
25
+ .find((line) => line.startsWith("description:"))
26
+ ?.slice("description:".length)
27
+ .trim();
28
+ return { template: match[2].trimStart(), description };
29
+ }
30
+ function loadCommands() {
31
+ return Object.fromEntries(commandFiles.map((name) => [name, parseCommand(name)]));
32
+ }
33
+ export async function codeArchaeologyPlugin() {
34
+ const skillsPath = resolve(packageRoot, "skills");
35
+ return {
36
+ config(config) {
37
+ config.command = {
38
+ ...(config.command ?? {}),
39
+ ...loadCommands(),
40
+ };
41
+ config.skills = config.skills ?? {};
42
+ config.skills.paths = config.skills.paths ?? [];
43
+ if (!config.skills.paths.includes(skillsPath)) {
44
+ config.skills.paths.push(skillsPath);
45
+ }
46
+ },
47
+ };
48
+ }
49
+ //# sourceMappingURL=runtime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAGzC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,EAAE,GAAG,kBAAkB,CAAC;AACrC,MAAM,CAAC,MAAM,QAAQ,GAAG,WAAW,CAAC;AAEpC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AACpD,MAAM,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AAShE,MAAM,YAAY,GAAG;IACnB,kBAAkB;IAClB,yBAAyB;IACzB,2BAA2B;IAC3B,0BAA0B;CAClB,CAAC;AAEX,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACtF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAClE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,QAAQ,EAAE,CAAC;IACtB,CAAC;IAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC;SACzB,KAAK,CAAC,IAAI,CAAC;SACX,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAChD,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC;SAC7B,IAAI,EAAE,CAAC;IAEV,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC;AACzD,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB;IACzC,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAElD,OAAO;QACL,MAAM,CAAC,MAAsB;YAC3B,MAAM,CAAC,OAAO,GAAG;gBACf,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC;gBACzB,GAAG,YAAY,EAAE;aAClB,CAAC;YACF,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC"}
package/dist/types.d.ts CHANGED
@@ -15,7 +15,7 @@ export type ConfidenceLevel = "HIGH" | "MEDIUM" | "LOW";
15
15
  /** Status values for expedition progress. */
16
16
  export type ExpeditionStatus = "pending" | "running" | "complete" | "failed" | "skipped";
17
17
  /** Tool types used for analysis. */
18
- export type AnalysisTool = "knip" | "vulture" | "madge" | "pydeps" | "jscpd" | "tsc" | "mypy" | "ast_grep" | "manual";
18
+ export type AnalysisTool = "knip" | "unimported" | "depcheck" | "vulture" | "deadcode" | "staticcheck" | "cargo-udeps" | "rustc" | "madge" | "pydeps" | "godepgraph" | "cargo-deps" | "jscpd" | "tsc" | "mypy" | "go vet" | "pylint" | "golangci-lint" | "clippy" | "ast_grep" | "manual";
19
19
  /** Event types emitted by the plugin. */
20
20
  export type EventType = "phase_complete" | "phase_failed" | "finding_detected" | "report_generated";
21
21
  /** Runtime parameters for an archaeology session. */
@@ -231,11 +231,6 @@ export interface FinalCatalog {
231
231
  /** Recommendations for future maintenance. */
232
232
  recommendations: string[];
233
233
  }
234
- /** Minimal OpenCode plugin server shape. */
235
- export interface PluginServer {
236
- /** Event handler (currently a no-op stub). */
237
- event(): undefined;
238
- }
239
234
  /** CLI argument shape for `opencode-code-archaeology`. */
240
235
  export interface CliArgs {
241
236
  /** Target repository path. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoEH,oCAAoC;AACpC,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,UAAU;IACxB,iBAAiB,EAAE,kBAAkB;IACrC,WAAW,EAAE,sBAAsB;CACpC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgFH,oCAAoC;AACpC,MAAM,CAAC,MAAM,cAAc,GAAsB;IAC/C,SAAS,EAAE,GAAG;IACd,QAAQ,EAAE,YAAY;IACtB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,KAAK;IAClB,YAAY,EAAE,UAAU;IACxB,iBAAiB,EAAE,kBAAkB;IACrC,WAAW,EAAE,sBAAsB;CACpC,CAAC"}