shadow-claw 1.23.3 → 1.23.4

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 (89) hide show
  1. package/bin/assert-version-bump.mjs +60 -38
  2. package/bin/assert-version-bump.test.mjs +74 -11
  3. package/dist/public/agent.worker.js +6 -6
  4. package/dist/public/{app-routes-B0ePT49v.js → app-routes-Bs-riIvr.js} +1 -1
  5. package/dist/public/components/settings/shadow-claw-storage/shadow-claw-storage.html +1 -1
  6. package/dist/public/components/shadow-claw-files/shadow-claw-files.css +1 -1
  7. package/dist/public/components/shadow-claw-files/shadow-claw-files.html +1 -1
  8. package/dist/public/config-BYAuxx3j.js +1 -0
  9. package/dist/public/{configurePeerJs-B7kNU8AQ.js → configurePeerJs-B4Ym9VMj.js} +1 -1
  10. package/dist/public/{connections-xd_66YVU.js → connections-BEn6JYdu.js} +1 -1
  11. package/dist/public/{custom-element-security-CZ92anB8.js → custom-element-security-DdYlUozq.js} +1 -1
  12. package/dist/public/docs/architecture/storage.md +5 -2
  13. package/dist/public/docs/decisions/indexeddb-and-opfs-storage.md +5 -2
  14. package/dist/public/docs/example/article/index.html +2 -2
  15. package/dist/public/docs/publishing/index.html +19 -76
  16. package/dist/public/docs/skill-creator/index.html +2 -2
  17. package/dist/public/{downloadGroupFile-BABv_1mJ.js → downloadGroupFile-Drdvg1Ev.js} +1 -1
  18. package/dist/public/{e2e-bridge-DkS5xFGX.js → e2e-bridge-BQ4KzUt5.js} +1 -1
  19. package/dist/public/{file-viewer-CCSABMsE.js → file-viewer-CcZYw-PS.js} +1 -1
  20. package/dist/public/files/main/~/docs/publishing-to-github-pages.md +17 -82
  21. package/dist/public/{git-BkjrsRXX.js → git-DEUvQTUA.js} +2 -2
  22. package/dist/public/{iframe-sanitizer-L6Jyu__Z.js → iframe-sanitizer-0NS4XLOd.js} +1 -1
  23. package/dist/public/index.html +2 -2
  24. package/dist/public/index.js +1 -1
  25. package/dist/public/{initChatSplitResize-BslPXAXS.js → initChatSplitResize-llGkSJXg.js} +1 -1
  26. package/dist/public/main/index.html +2 -2
  27. package/dist/public/main/memory/index.html +2 -2
  28. package/dist/public/{markdown-6MBrIo-S.js → markdown-CyYR4App.js} +1 -1
  29. package/dist/public/mcp-reconnect-CSx4aMwy.js +1 -0
  30. package/dist/public/{memoryStorage-CjGseKI1.js → memoryStorage-Dwg8NhAZ.js} +1 -1
  31. package/dist/public/{orchestrator-B9KmIj8Q.js → orchestrator-DRfEudXk.js} +18 -18
  32. package/dist/public/orchestrator-o9Fj67BN.js +15 -0
  33. package/dist/public/pages/main/~/docs/publishing-to-github-pages.md +17 -82
  34. package/dist/public/{peerjs-Dv8JNm7v.js → peerjs-CurBuKvk.js} +1 -1
  35. package/dist/public/{push-client-Dqq06wbB.js → push-client-Dii-vPEh.js} +1 -1
  36. package/dist/public/service-worker/fetch-proxy.js +1 -1
  37. package/dist/public/service-worker.js +1 -1
  38. package/dist/public/{shadow-claw-Bd1rfuVC.js → shadow-claw-5IHaDDMJ.js} +2 -2
  39. package/dist/public/{shadow-claw-accounts-DL2l3oM0.js → shadow-claw-accounts-CZvz4iQz.js} +3 -3
  40. package/dist/public/{shadow-claw-channels-BGXDsQ38.js → shadow-claw-channels-BKXFyRS3.js} +1 -1
  41. package/dist/public/{shadow-claw-chat-NXg6zz_l.js → shadow-claw-chat-CCLuhWdI.js} +3 -3
  42. package/dist/public/{shadow-claw-conversations-C8eqGpP9.js → shadow-claw-conversations-DV-87UUh.js} +1 -1
  43. package/dist/public/shadow-claw-file-viewer-Dk2dbAUd.js +577 -0
  44. package/dist/public/shadow-claw-files-BpfpJIuP.js +840 -0
  45. package/dist/public/{shadow-claw-git-C0ntz7aX.js → shadow-claw-git-DRA7_qck.js} +3 -3
  46. package/dist/public/{shadow-claw-integrations-DCXV2r69.js → shadow-claw-integrations-1Xu5snuV.js} +1 -1
  47. package/dist/public/{shadow-claw-llm-CudgFQsS.js → shadow-claw-llm-6Aci1BDP.js} +2 -2
  48. package/dist/public/{shadow-claw-mcp-remote-B8RkpX28.js → shadow-claw-mcp-remote-BUjAeVXC.js} +1 -1
  49. package/dist/public/{shadow-claw-networking-BLiRsrsK.js → shadow-claw-networking-FQe4nCp3.js} +1 -1
  50. package/dist/public/{shadow-claw-notifications-CQhQcjtL.js → shadow-claw-notifications-DV2wibL3.js} +1 -1
  51. package/dist/public/{shadow-claw-page-header-NeRD0tKU.js → shadow-claw-page-header-B63S4HTU.js} +1 -1
  52. package/dist/public/{shadow-claw-pages-DCHnFh6r.js → shadow-claw-pages-DE3jWj5K.js} +3 -3
  53. package/dist/public/{shadow-claw-settings-VAfjKFQg.js → shadow-claw-settings-S6DAKfYx.js} +3 -3
  54. package/dist/public/shadow-claw-storage-DaacA3_K.js +219 -0
  55. package/dist/public/{shadow-claw-task-server-Dk33N_1G.js → shadow-claw-task-server-IjKX042p.js} +1 -1
  56. package/dist/public/{shadow-claw-tasks-xA1VfmWN.js → shadow-claw-tasks-Cy0JYmGU.js} +4 -4
  57. package/dist/public/{shadow-claw-terminal-Du2r0ciq.js → shadow-claw-terminal-znAt7HyP.js} +1 -1
  58. package/dist/public/{shadow-claw-tools-CZj4rq7l.js → shadow-claw-tools-Cutv9Si5.js} +2 -2
  59. package/dist/public/{shadow-claw-webvm-JYUkWICG.js → shadow-claw-webvm-BH8mPDEu.js} +1 -1
  60. package/dist/public/static-main/~/docs/publishing-to-github-pages.md +17 -82
  61. package/dist/public/static-main-manifest.json +1 -1
  62. package/dist/public/{syncWebMcpRegistration-DfpvASnh.js → syncWebMcpRegistration-BqJxaMGR.js} +1 -1
  63. package/package.json +1 -1
  64. package/src/components/settings/shadow-claw-storage/shadow-claw-storage.html +17 -0
  65. package/src/components/settings/shadow-claw-storage/shadow-claw-storage.test.ts +44 -0
  66. package/src/components/settings/shadow-claw-storage/shadow-claw-storage.ts +56 -0
  67. package/src/components/shadow-claw-file-viewer/shadow-claw-file-viewer.test.ts +105 -0
  68. package/src/components/shadow-claw-file-viewer/shadow-claw-file-viewer.ts +11 -9
  69. package/src/components/shadow-claw-files/shadow-claw-files.css +41 -17
  70. package/src/components/shadow-claw-files/shadow-claw-files.html +35 -0
  71. package/src/components/shadow-claw-files/shadow-claw-files.test.ts +219 -0
  72. package/src/components/shadow-claw-files/shadow-claw-files.ts +170 -6
  73. package/src/components/shadow-claw-pages/utils/resolveWorkspaceLinkPath.test.ts +31 -0
  74. package/src/components/shadow-claw-pages/utils/resolveWorkspaceLinkPath.ts +2 -1
  75. package/src/components/shadow-claw-pages/utils/rewriteWorkspacePreviewHtml.test.ts +15 -0
  76. package/src/config/config.test.ts +9 -0
  77. package/src/config/config.ts +5 -0
  78. package/src/core/app-routes.test.ts +56 -0
  79. package/src/core/app-routes.ts +8 -1
  80. package/src/db/openDatabase.test.ts +10 -1
  81. package/src/db/openDatabase.ts +3 -1
  82. package/src/storage/migrateLegacyOpfs.test.ts +327 -0
  83. package/src/storage/migrateLegacyOpfs.ts +117 -0
  84. package/dist/public/config-AL77QAx4.js +0 -1
  85. package/dist/public/mcp-reconnect-DoicazQd.js +0 -1
  86. package/dist/public/orchestrator-4su7iyWj.js +0 -15
  87. package/dist/public/shadow-claw-file-viewer-9Qkwc30T.js +0 -577
  88. package/dist/public/shadow-claw-files-aDyq6Hv7.js +0 -781
  89. package/dist/public/shadow-claw-storage-Cf31np81.js +0 -202
@@ -51,10 +51,10 @@ on:
51
51
  branches: [main]
52
52
  workflow_dispatch:
53
53
  inputs:
54
- shadowclaw_ref:
55
- description: "ShadowClaw version tag (e.g. v1.20.0), commit SHA, or branch"
54
+ shadowclaw_version:
55
+ description: "ShadowClaw npm version (e.g. latest, 1.23.3)"
56
56
  required: false
57
- default: ""
57
+ default: "latest"
58
58
 
59
59
  permissions:
60
60
  contents: read
@@ -66,87 +66,33 @@ concurrency:
66
66
  cancel-in-progress: true
67
67
 
68
68
  jobs:
69
- build:
69
+ build-and-deploy:
70
+ environment:
71
+ name: github-pages
72
+ url: ${{ steps.deployment.outputs.page_url }}
70
73
  runs-on: ubuntu-latest
71
74
  steps:
72
- - name: Checkout content repo
73
- uses: actions/checkout@v4
74
- with:
75
- path: content
75
+ - name: Checkout repository
76
+ uses: actions/checkout@v6
76
77
 
77
- - name: Resolve ShadowClaw version / ref
78
- id: resolve-ref
79
- shell: bash
80
- run: |
81
- REF="${{ github.event.inputs.shadowclaw_ref }}"
82
- if [ -z "$REF" ]; then
83
- REF=$(node -e '
84
- try {
85
- const fs = require("fs");
86
- const configPath = "content/site-config.json";
87
- if (fs.existsSync(configPath)) {
88
- const cfg = JSON.parse(fs.readFileSync(configPath, "utf8"));
89
- const v = cfg.shadowClawVersion || cfg.shadowClawRef || cfg.shadowclawVersion || cfg.shadowclawRef || "";
90
- if (v) process.stdout.write(String(v).trim());
91
- }
92
- } catch (e) {
93
- process.stdout.write("");
94
- }
95
- ')
96
- fi
97
- if [ -z "$REF" ] && [ -f "content/.shadowclaw-version" ]; then
98
- REF=$(tr -d ' \n\r\t' < content/.shadowclaw-version)
99
- fi
100
- if [ -z "$REF" ]; then
101
- REF="${SHADOWCLAW_REF:-main}"
102
- fi
103
- echo "Resolved ShadowClaw ref: $REF"
104
- echo "ref=$REF" >> "$GITHUB_OUTPUT"
105
-
106
- - name: Checkout ShadowClaw core (build toolchain)
107
- uses: actions/checkout@v4
108
- with:
109
- repository: xt-ml/shadow-claw
110
- path: shadow-claw
111
- ref: ${{ steps.resolve-ref.outputs.ref }}
112
-
113
- - uses: actions/setup-node@v4
78
+ - name: Setup Node.js
79
+ uses: actions/setup-node@v6
114
80
  with:
115
81
  node-version: "24"
116
- cache: npm
117
- cache-dependency-path: shadow-claw/package-lock.json
118
-
119
- - name: Install ShadowClaw build dependencies
120
- run: npm ci
121
- working-directory: shadow-claw
122
82
 
123
- - name: Inject content into ShadowClaw build root
124
- run: |
125
- rm -rf shadow-claw/pages
126
- if [ -d "content/pages" ]; then cp -r content/pages shadow-claw/; fi
127
- if [ -f "content/site-config.json" ]; then cp content/site-config.json shadow-claw/; fi
128
- mkdir -p shadow-claw/pages
129
-
130
- - name: Build production bundle
131
- working-directory: shadow-claw
83
+ - name: Build static site via ShadowClaw CLI
132
84
  env:
133
- NODE_ENV: production
134
85
  PAGES_ORIGIN: "https://${{ github.repository_owner }}.github.io/${{ github.event.repository.name }}/"
135
86
  PAGES_BASE_PATH: "/${{ github.event.repository.name }}/"
136
- run: npm run build:prod
87
+ run: |
88
+ VERSION="${{ github.event.inputs.shadowclaw_version || 'latest' }}"
89
+ npx --yes "shadow-claw@$VERSION" build --prod
137
90
 
138
91
  - name: Upload Pages artifact
139
92
  uses: actions/upload-pages-artifact@v3
140
93
  with:
141
- path: shadow-claw/dist/public
94
+ path: dist/public
142
95
 
143
- deploy:
144
- needs: build
145
- runs-on: ubuntu-latest
146
- environment:
147
- name: github-pages
148
- url: ${{ steps.deployment.outputs.page_url }}
149
- steps:
150
96
  - name: Deploy to GitHub Pages
151
97
  id: deployment
152
98
  uses: actions/deploy-pages@v4
@@ -154,18 +100,7 @@ jobs:
154
100
 
155
101
  ### Version Pinning
156
102
 
157
- You can pin your template site to a specific ShadowClaw release tag (e.g. `v1.20.0`) or git commit SHA (e.g. `62253c53`) to ensure reproducible builds:
158
-
159
- - **In `site-config.json` at the repository root**:
160
-
161
- ```json
162
- {
163
- "shadowClawVersion": "v1.20.0"
164
- }
165
- ```
166
-
167
- - **In `.shadowclaw-version`**: Create a file named `.shadowclaw-version` in the root of your content repository containing the version tag or commit SHA.
168
- - **Workflow Dispatch**: Run the workflow manually from GitHub Actions UI and supply any tag, SHA, or branch in the `shadowclaw_ref` input.
103
+ ShadowClaw builds via `npx --yes shadow-claw@latest build --prod`. To pin to a specific npm release (e.g. `1.23.3`), specify the version in `.github/workflows/deploy-pages.yml` or supply `shadowclaw_version` when triggering the GitHub Actions workflow manually.
169
104
 
170
105
  For a **custom apex domain** (e.g. `example.com`), override:
171
106