Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
617254b
feat: 新增 cloud-artifacts 包(Cloudflare Worker HTML artifact 托管)
claude-code-best Jun 20, 2026
1ac7d57
docs: 完善 cloud-artifacts 文档并统一出口域名
claude-code-best Jun 20, 2026
11675f3
docs: 修正 CLAUDE.md cloud-artifacts 引用死链
claude-code-best Jun 20, 2026
0ef3b5a
chore: 同步 cloud-artifacts 测试默认 TOKEN 到新值
claude-code-best Jun 20, 2026
4584a43
docs: add artifacts feature implementation plan
claude-code-best Jun 20, 2026
e2e6f4b
feat(artifact): add cloud-artifacts config with token/URL defaults
claude-code-best Jun 20, 2026
0ef7bae
feat(artifact): add HTTP client with body-error parsing
claude-code-best Jun 20, 2026
901fe03
feat(artifact): add tool name, description, and prompt
claude-code-best Jun 20, 2026
1e1d2c0
feat(artifact): add buildTool definition with file validation
claude-code-best Jun 20, 2026
015b2da
test(artifact): add end-to-end tool tests for upload/error paths
claude-code-best Jun 20, 2026
0e2d8bd
feat(artifact): export ArtifactTool from builtin-tools barrel
claude-code-best Jun 20, 2026
c4d3367
feat(artifact): register ArtifactTool in tools list
claude-code-best Jun 20, 2026
5a715b5
feat(artifact): add /use-artifacts bundled skill
claude-code-best Jun 20, 2026
bdd023d
feat(artifact): add extractArtifacts message scanner
claude-code-best Jun 20, 2026
ac21f40
fix(artifact): scanner type narrowing and url regex
claude-code-best Jun 20, 2026
388840a
feat(artifact): add ArtifactsMenu Ink component
claude-code-best Jun 20, 2026
6e6a741
feat(artifact): add /artifacts slash command entry
claude-code-best Jun 20, 2026
8fc21f9
feat(artifact): register /artifacts command
claude-code-best Jun 20, 2026
1c29b57
fix(artifact): use setClipboard instead of pbcopy for cross-platform …
claude-code-best Jun 20, 2026
6234bad
fix(artifact): drop userFacingName override so display matches /artif…
claude-code-best Jun 20, 2026
cc2fcea
fix(rcs): add resJson helper to resolve strict mode type errors in tests
claude-code-best Jun 20, 2026
2e29e36
fix(cloud-artifacts): add type stubs so tsc passes without worker-con…
claude-code-best Jun 20, 2026
14f43e9
fix(query): shallow-copy messages before stripping toolUseResult
claude-code-best Jun 20, 2026
433f9dd
feat(artifact): show uploaded URL inline below ExecuteExtraTool
claude-code-best Jun 20, 2026
00f019b
fix(cloud-artifacts): make Env stubs actually take effect in CI
claude-code-best Jun 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,7 @@ bun run docs:dev
| `packages/acp-link/` | ACP 代理服务器(WebSocket → ACP agent 桥接) |
| `packages/mcp-client/` | MCP 客户端库 |
| `packages/remote-control-server/` | 自托管 Remote Control Server(Docker 部署,含 Web UI)— Web UI 已重构为 React + Vite + Radix UI,支持 ACP agent 接入 |
| `packages/cloud-artifacts/` | 独立 Cloudflare Worker + R2 服务:POST `/upload` HTML 上传返回 hash URL,GET `/<7d\|30d>/<id>.html` 由 Worker 代理读取;R2 lifecycle rule 自动 7/30 天过期 |
| `packages/audio-capture-napi/` | 原生音频捕获(已恢复) |
| `packages/color-diff-napi/` | 颜色差异计算(完整实现,11 tests) |
| `packages/image-processor-napi/` | 图像处理(已恢复) |
Expand All @@ -188,6 +189,10 @@ bun run docs:dev
- CLI 快速路径: `claude remote-control` / `claude rc` / `claude bridge`。
- 详见 `docs/features/remote-control-self-hosting.md`。

### HTML Artifact Hosting

- **`packages/cloud-artifacts/`** — 独立 Cloudflare Worker + R2 服务,类似 `remote-control-server/` 的"独立部署服务"定位,**不被主 CLI import**。Worker 处理 `POST /upload`(Bearer token 鉴权 + text/html 校验 + 10MB 上限 + ttl∈{7,30})和 `GET /<7d|30d>/<id>.html`(从 R2 读 + Cache-Control: max-age=86400)。R2 用 prefix + lifecycle rule 实现 TTL(`7d/` 删 7 天、`30d/` 删 30 天),Worker 不参与过期处理。ID 默认 `nanoid(21)`(126 bit 熵),可指定 `?hash=` 自定义 ID(覆盖语义:先删 7d/30d prefix 旧 key 再写新 key)。Worker 用 `wrangler types` 生成的全局 `Env` 类型(`worker-configuration.d.ts`,已 gitignore),不依赖 `@cloudflare/workers-types`。部署用 `npm create cloudflare@latest` 初始化 + `bun run setup`(创建 bucket + lifecycle + secret)+ `bun run deploy`。生产出口经 Deno Deploy 边缘代理(`https://cloud-artifacts.claude-code-best.win`),副作用是 HTTP status code 被抹平为 200(body 的 `{error}` 字段仍保留)。详见 `packages/cloud-artifacts/README.md`。

### ACP Protocol (Agent Client Protocol)

- **`src/services/acp/`** — ACP agent 实现,包含 `agent.ts`(AcpAgent 类)、`bridge.ts`(Claude Code ↔ ACP 桥接)、`permissions.ts`(权限处理)、`entry.ts`(入口)。
Expand Down
125 changes: 124 additions & 1 deletion bun.lock

Large diffs are not rendered by default.

Loading
Loading