@bryanhu/codexly 0.6.0 → 0.7.0

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 (107) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/README.md +3 -3
  3. package/README.zh-CN.md +3 -3
  4. package/dist/{chunk-NUY5U24W.js → chunk-CGZ44LHJ.js} +19 -15
  5. package/dist/{chunk-C3PIS4SQ.js → chunk-NAHIDASP.js} +4 -4
  6. package/dist/cli.js +5 -21
  7. package/dist/providers/codex/index.js +1 -1
  8. package/dist/server/index.js +2 -2
  9. package/dist/web/.vite/manifest.json +41 -41
  10. package/dist/web/.vite/manifest.json.br +0 -0
  11. package/dist/web/.vite/manifest.json.gz +0 -0
  12. package/dist/web/assets/{chunk-BO2N2NFS-BZtBhhTV.js → chunk-BO2N2NFS-bEY6272A.js} +4 -4
  13. package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.br +0 -0
  14. package/dist/web/assets/chunk-BO2N2NFS-bEY6272A.js.gz +0 -0
  15. package/dist/web/assets/{code-highlighter-BG341hSJ.js → code-highlighter-Cm84nMIT.js} +1 -1
  16. package/dist/web/assets/code-highlighter-Cm84nMIT.js.br +0 -0
  17. package/dist/web/assets/code-highlighter-Cm84nMIT.js.gz +0 -0
  18. package/dist/web/assets/{code-languages-DA_FG9-T.js → code-languages-D5Nrl7sO.js} +1 -1
  19. package/dist/web/assets/code-languages-D5Nrl7sO.js.br +0 -0
  20. package/dist/web/assets/code-languages-D5Nrl7sO.js.gz +0 -0
  21. package/dist/web/assets/{file-review-dialog-dlOxwNrj.js → file-review-dialog-DVVtiNEL.js} +2 -2
  22. package/dist/web/assets/file-review-dialog-DVVtiNEL.js.br +0 -0
  23. package/dist/web/assets/file-review-dialog-DVVtiNEL.js.gz +0 -0
  24. package/dist/web/assets/{git-history-panel-DqiTnaf1.js → git-history-panel-4j8odsDb.js} +2 -2
  25. package/dist/web/assets/git-history-panel-4j8odsDb.js.br +0 -0
  26. package/dist/web/assets/git-history-panel-4j8odsDb.js.gz +0 -0
  27. package/dist/web/assets/{global-settings-dialog-DFjxQX_B.js → global-settings-dialog-Dhqfe3qK.js} +1 -1
  28. package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.br +0 -0
  29. package/dist/web/assets/global-settings-dialog-Dhqfe3qK.js.gz +0 -0
  30. package/dist/web/assets/{highlighted-body-OFNGDK62-bj8RQV-D.js → highlighted-body-OFNGDK62-oKnqW5V8.js} +1 -1
  31. package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.br +0 -0
  32. package/dist/web/assets/highlighted-body-OFNGDK62-oKnqW5V8.js.gz +0 -0
  33. package/dist/web/assets/{index-DTJVeg10.js → index-C1A_OTjT.js} +3 -3
  34. package/dist/web/assets/index-C1A_OTjT.js.br +0 -0
  35. package/dist/web/assets/index-C1A_OTjT.js.gz +0 -0
  36. package/dist/web/assets/index-lKikkWES.css +2 -0
  37. package/dist/web/assets/index-lKikkWES.css.br +0 -0
  38. package/dist/web/assets/index-lKikkWES.css.gz +0 -0
  39. package/dist/web/assets/{lazy-message-response-8zk6PTbZ.js → lazy-message-response-DNUwJy0d.js} +2 -2
  40. package/dist/web/assets/lazy-message-response-DNUwJy0d.js.br +0 -0
  41. package/dist/web/assets/lazy-message-response-DNUwJy0d.js.gz +0 -0
  42. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js +1 -0
  43. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.br +0 -0
  44. package/dist/web/assets/mermaid-GHXKKRXX-8A2qFznr.js.gz +0 -0
  45. package/dist/web/assets/{message-response-CKPW6CRi.js → message-response-DVL8_J3z.js} +1 -1
  46. package/dist/web/assets/message-response-DVL8_J3z.js.br +0 -0
  47. package/dist/web/assets/message-response-DVL8_J3z.js.gz +0 -0
  48. package/dist/web/assets/{patch-diff-viewer-CaWTvh9_.js → patch-diff-viewer-BgNx-ffs.js} +2 -2
  49. package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.br +0 -0
  50. package/dist/web/assets/patch-diff-viewer-BgNx-ffs.js.gz +0 -0
  51. package/dist/web/assets/{project-file-popup-page-Cmjoovjs.js → project-file-popup-page-BwPTSc8o.js} +1 -1
  52. package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.br +0 -0
  53. package/dist/web/assets/project-file-popup-page-BwPTSc8o.js.gz +0 -0
  54. package/dist/web/assets/{project-source-panel-0Chmfe7s.js → project-source-panel-DWDcX3T9.js} +3 -3
  55. package/dist/web/assets/project-source-panel-DWDcX3T9.js.br +0 -0
  56. package/dist/web/assets/project-source-panel-DWDcX3T9.js.gz +0 -0
  57. package/dist/web/assets/{shiki-bundle-BEmB8kBs.js → shiki-bundle-Dhkx9AYM.js} +1 -1
  58. package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.br +0 -0
  59. package/dist/web/assets/shiki-bundle-Dhkx9AYM.js.gz +0 -0
  60. package/dist/web/assets/{workbench-inspector-changes-CWeWA-hv.js → workbench-inspector-changes-CWIx9Os6.js} +1 -1
  61. package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.br +0 -0
  62. package/dist/web/assets/workbench-inspector-changes-CWIx9Os6.js.gz +0 -0
  63. package/dist/web/assets/{workbench-shell-BOnddpen.js → workbench-shell-DVC3DE5a.js} +4 -4
  64. package/dist/web/assets/workbench-shell-DVC3DE5a.js.br +0 -0
  65. package/dist/web/assets/workbench-shell-DVC3DE5a.js.gz +0 -0
  66. package/dist/web/index.html +2 -2
  67. package/dist/web/index.html.br +0 -0
  68. package/dist/web/index.html.gz +0 -0
  69. package/package.json +1 -1
  70. package/dist/web/assets/chunk-BO2N2NFS-BZtBhhTV.js.br +0 -0
  71. package/dist/web/assets/chunk-BO2N2NFS-BZtBhhTV.js.gz +0 -0
  72. package/dist/web/assets/code-highlighter-BG341hSJ.js.br +0 -0
  73. package/dist/web/assets/code-highlighter-BG341hSJ.js.gz +0 -0
  74. package/dist/web/assets/code-languages-DA_FG9-T.js.br +0 -0
  75. package/dist/web/assets/code-languages-DA_FG9-T.js.gz +0 -0
  76. package/dist/web/assets/file-review-dialog-dlOxwNrj.js.br +0 -0
  77. package/dist/web/assets/file-review-dialog-dlOxwNrj.js.gz +0 -0
  78. package/dist/web/assets/git-history-panel-DqiTnaf1.js.br +0 -0
  79. package/dist/web/assets/git-history-panel-DqiTnaf1.js.gz +0 -0
  80. package/dist/web/assets/global-settings-dialog-DFjxQX_B.js.br +0 -0
  81. package/dist/web/assets/global-settings-dialog-DFjxQX_B.js.gz +0 -0
  82. package/dist/web/assets/highlighted-body-OFNGDK62-bj8RQV-D.js.br +0 -0
  83. package/dist/web/assets/highlighted-body-OFNGDK62-bj8RQV-D.js.gz +0 -0
  84. package/dist/web/assets/index-BZYdzDQ3.css +0 -2
  85. package/dist/web/assets/index-BZYdzDQ3.css.br +0 -0
  86. package/dist/web/assets/index-BZYdzDQ3.css.gz +0 -0
  87. package/dist/web/assets/index-DTJVeg10.js.br +0 -0
  88. package/dist/web/assets/index-DTJVeg10.js.gz +0 -0
  89. package/dist/web/assets/lazy-message-response-8zk6PTbZ.js.br +0 -0
  90. package/dist/web/assets/lazy-message-response-8zk6PTbZ.js.gz +0 -0
  91. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js +0 -1
  92. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js.br +0 -0
  93. package/dist/web/assets/mermaid-GHXKKRXX-BDoa2Ho_.js.gz +0 -0
  94. package/dist/web/assets/message-response-CKPW6CRi.js.br +0 -0
  95. package/dist/web/assets/message-response-CKPW6CRi.js.gz +0 -0
  96. package/dist/web/assets/patch-diff-viewer-CaWTvh9_.js.br +0 -0
  97. package/dist/web/assets/patch-diff-viewer-CaWTvh9_.js.gz +0 -0
  98. package/dist/web/assets/project-file-popup-page-Cmjoovjs.js.br +0 -0
  99. package/dist/web/assets/project-file-popup-page-Cmjoovjs.js.gz +0 -0
  100. package/dist/web/assets/project-source-panel-0Chmfe7s.js.br +0 -0
  101. package/dist/web/assets/project-source-panel-0Chmfe7s.js.gz +0 -0
  102. package/dist/web/assets/shiki-bundle-BEmB8kBs.js.br +0 -0
  103. package/dist/web/assets/shiki-bundle-BEmB8kBs.js.gz +0 -0
  104. package/dist/web/assets/workbench-inspector-changes-CWeWA-hv.js.br +0 -0
  105. package/dist/web/assets/workbench-inspector-changes-CWeWA-hv.js.gz +0 -0
  106. package/dist/web/assets/workbench-shell-BOnddpen.js.br +0 -0
  107. package/dist/web/assets/workbench-shell-BOnddpen.js.gz +0 -0
package/CHANGELOG.md CHANGED
@@ -4,6 +4,19 @@
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.7.0] - 2026-08-27
8
+
9
+ ### 新增
10
+
11
+ - 添加临时任务归档入口,支持查看、恢复和永久删除已归档的 standalone Task。
12
+ - 为临时任务添加独立宠物活动气泡,使其与项目任务状态分别展示。
13
+ - 根据壁纸亮度自动切换完整前景色方案,保持文字与控件清晰可读。
14
+
15
+ ### 修复
16
+
17
+ - 修复 standalone Task 错误继承合成工作区上下文的问题,改用 Codex 原生运行时上下文。
18
+ - 固定 Inspector 标签栏,并让文件预览填充剩余高度,避免长内容挤压标签。
19
+
7
20
  ## [0.6.0] - 2026-08-27
8
21
 
9
22
  ### 新增
@@ -124,7 +137,8 @@
124
137
  - 拆分全栈测试套件并限制 Vitest 并发,提升跨平台门禁稳定性;GitHub Release 改为严格提取对应版本的完整更新日志。
125
138
  - 将最低 Node.js 版本调整为 `22.14.0`,同步 CLI、CI、发布环境和使用文档。
126
139
 
127
- [Unreleased]: https://github.com/BryanHoo/Codexly/compare/v0.6.0...HEAD
140
+ [Unreleased]: https://github.com/BryanHoo/Codexly/compare/v0.7.0...HEAD
141
+ [0.7.0]: https://github.com/BryanHoo/Codexly/releases/tag/v0.7.0
128
142
  [0.6.0]: https://github.com/BryanHoo/Codexly/releases/tag/v0.6.0
129
143
  [0.5.0]: https://github.com/BryanHoo/Codexly/releases/tag/v0.5.0
130
144
  [0.4.0]: https://github.com/BryanHoo/Codexly/releases/tag/v0.4.0
package/README.md CHANGED
@@ -40,11 +40,11 @@
40
40
  - Keep follow-up work in a persistent task queue, and edit queued messages and attachments before they run
41
41
  - Attach files and images, reference project files with `@`, and answer input requests from configured MCP servers
42
42
  - Choose the model, reasoning effort, Fast mode, approval behavior, and file access level for each task
43
- - Organize ordered multi-root projects, archive completed tasks, and permanently delete tasks when needed
43
+ - Organize ordered multi-root projects, archive project or temporary tasks, and permanently delete tasks when needed
44
44
  - Inspect, preview, rename, and delete project files; review diffs; manage branches and worktrees; and commit or push changes
45
45
  - Fork a task from an AI response and continue it in a new Git worktree
46
- - Add animated workspace pets that reflect active and completed task activity
47
- - Customize the workspace with image or Bing daily backgrounds, overlay opacity, and background blur
46
+ - Add animated workspace pets with separate activity bubbles for project and temporary tasks
47
+ - Customize the workspace with image or Bing daily backgrounds, automatic foreground colors, overlay opacity, and background blur
48
48
  - Access the workspace from another device on a trusted local network
49
49
 
50
50
  ## Requirements
package/README.zh-CN.md CHANGED
@@ -10,11 +10,11 @@ Codexly 是一个在浏览器中使用 Codex 的本地 AI 编程工作台。它
10
10
  - 使用持久化任务队列安排后续工作,并在执行前编辑排队消息和附件
11
11
  - 添加文件与图片、使用 `@` 引用项目文件,并回答已配置 MCP 服务的补充输入请求
12
12
  - 为每个任务选择模型、思考量、快速模式、审批方式和文件访问范围
13
- - 组织有序的多根项目、归档已完成任务,并按需永久删除任务
13
+ - 组织有序的多根项目、归档项目或临时任务,并按需永久删除任务
14
14
  - 查看、预览、重命名和删除项目文件,审查差异,管理分支与 worktree,并提交或推送变更
15
15
  - 从 AI 回复处分叉任务,在新的 Git worktree 中继续工作
16
- - 添加可反映任务执行与完成状态的工作台宠物动画
17
- - 使用图片或 Bing 每日壁纸自定义工作台,并调节浮层遮罩与背景模糊
16
+ - 添加工作台宠物动画,并用独立气泡区分项目与临时任务的活动状态
17
+ - 使用图片或 Bing 每日壁纸自定义工作台,自动适配前景色并调节浮层遮罩与背景模糊
18
18
  - 从可信局域网中的其他设备访问工作台
19
19
 
20
20
  ## 环境要求
@@ -9032,7 +9032,7 @@ async function isSameCanonicalPath(left, right) {
9032
9032
  ]);
9033
9033
  return leftIdentity === rightIdentity;
9034
9034
  }
9035
- async function isProjectThread(thread, project) {
9035
+ function isProjectThread(thread, project) {
9036
9036
  const nativeProjectId = thread["projectId"];
9037
9037
  if (nativeProjectId !== null && typeof nativeProjectId !== "string") {
9038
9038
  throw new CodexProtocolMappingError("Codex thread projectId must be a string or null");
@@ -9043,13 +9043,15 @@ async function isProjectThread(thread, project) {
9043
9043
  if (nativeProjectId !== null) {
9044
9044
  return false;
9045
9045
  }
9046
- const cwd = expectString(thread["cwd"], "Codex thread cwd");
9047
- return isSameCanonicalPath(cwd, project.rootPath);
9046
+ return true;
9048
9047
  }
9049
- async function assertProjectThread(thread, project) {
9050
- if (!await isProjectThread(thread, project)) {
9051
- throw new CodexProtocolMappingError("Codex thread does not belong to the active project");
9048
+ function assertProjectThread(thread, project) {
9049
+ if (!isProjectThread(thread, project)) {
9050
+ return Promise.reject(
9051
+ new CodexProtocolMappingError("Codex thread does not belong to the active project")
9052
+ );
9052
9053
  }
9054
+ return Promise.resolve();
9053
9055
  }
9054
9056
  function isThreadNotLoadedError(error) {
9055
9057
  return error instanceof RpcResponseError && error.code === -32600 && error.message.startsWith("thread not loaded:");
@@ -9214,7 +9216,7 @@ var CodexAgentProviderBase = class {
9214
9216
  await this.client.request("thread/fork", {
9215
9217
  ...lastTurnId === void 0 ? {} : { lastTurnId },
9216
9218
  // Fork 必须使用当前 Project 的完整运行时根,不能继承旧 Thread 的单根配置。
9217
- runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots],
9219
+ ...this.project.kind === "project" ? { runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots] } : {},
9218
9220
  threadId: taskId
9219
9221
  }),
9220
9222
  "thread/fork response"
@@ -9577,11 +9579,13 @@ var CodexAgentProviderTurns = class extends CodexAgentProviderQueue {
9577
9579
  async startTask(options = {}) {
9578
9580
  const response = expectRecord(
9579
9581
  await this.client.request("thread/start", {
9580
- cwd: this.project.rootPath,
9581
9582
  historyMode: "paginated",
9582
- ...this.project.kind === "temporary" ? {} : { projectId: this.project.id },
9583
- // Project 身份与运行时文件系统授权彼此独立,必须显式传递完整根列表。
9584
- runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots],
9583
+ ...this.project.kind === "temporary" ? {} : {
9584
+ cwd: this.project.rootPath,
9585
+ projectId: this.project.id,
9586
+ // Project 身份与运行时文件系统授权彼此独立,必须显式传递完整根列表。
9587
+ runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots]
9588
+ },
9585
9589
  ...options.ephemeral === true ? { ephemeral: true } : {}
9586
9590
  }),
9587
9591
  "thread/start response"
@@ -9838,7 +9842,7 @@ var CodexAgentProviderTurns = class extends CodexAgentProviderQueue {
9838
9842
  await this.client.request("thread/list", {
9839
9843
  ...input.archived === true ? { archived: true } : {},
9840
9844
  ...input.cursor === void 0 ? {} : { cursor: input.cursor },
9841
- ...this.project.kind === "temporary" ? { cwd: this.project.rootPath, projectId: null } : { projectId: this.project.id },
9845
+ ...this.project.kind === "temporary" ? { projectId: null } : { projectId: this.project.id },
9842
9846
  ...input.limit === void 0 ? {} : { limit: input.limit },
9843
9847
  // 锁定版本用稳定 Pinned Section 过滤,保证固定任务先过滤再分页。
9844
9848
  ...input.pinnedOnly === true ? { sectionId: CODEX_PINNED_THREAD_SECTION_ID } : {},
@@ -10058,7 +10062,7 @@ var CodexAgentProviderTasks = class extends CodexAgentProviderTurns {
10058
10062
  }
10059
10063
  const response = expectRecord(nativeResponse, "thread/read response");
10060
10064
  const thread = expectRecord(response["thread"], "thread/read thread");
10061
- if (!await isProjectThread(thread, this.project)) {
10065
+ if (!isProjectThread(thread, this.project)) {
10062
10066
  const unmaterializedTask = this.runtime.unmaterializedTasks.get(taskId);
10063
10067
  if (unmaterializedTask !== void 0 && thread["id"] === unmaterializedTask.id && thread["projectId"] === null) {
10064
10068
  projectOwnershipVerified = true;
@@ -10596,8 +10600,8 @@ var CodexAgentProviderEvents = class extends CodexAgentProviderTasks {
10596
10600
  const resumePromise = (async () => {
10597
10601
  const response = expectRecord(
10598
10602
  await this.client.request("thread/resume", {
10599
- // 恢复持久 Task 时覆盖旧运行时配置,使 Project 的全部根立即生效。
10600
- runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots],
10603
+ // 恢复 Project Task 时覆盖旧运行时配置,使全部根立即生效。
10604
+ ...this.project.kind === "project" ? { runtimeWorkspaceRoots: [...this.project.runtimeWorkspaceRoots] } : {},
10601
10605
  threadId: taskId
10602
10606
  }),
10603
10607
  "thread/resume response"
@@ -1,6 +1,6 @@
1
1
  import { createRequire } from 'node:module';
2
2
  import { value_exports } from './chunk-DEKHLAWT.js';
3
- import { require_pino, require_safe_stable_stringify, CodexProtocolMappingError, CodexProviderConnectionError, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError } from './chunk-NUY5U24W.js';
3
+ import { require_pino, require_safe_stable_stringify, CodexProtocolMappingError, CodexProviderConnectionError, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError } from './chunk-CGZ44LHJ.js';
4
4
  import { WorkbenchPetProviderError, PendingRequestResolutionError } from './chunk-RNTA4MFS.js';
5
5
  import { AGENT_FILE_EXTENSIONS, AGENT_FILE_MEDIA_TYPES, DEFAULT_COMMIT_MESSAGE_MODEL, TEMPORARY_TASK_API_PATH, TEMPORARY_TASK_SCOPE_ID, MAX_AGENT_FILE_BYTES, AccessStatusResponseSchema, PairAccessRequestSchema, HealthResponseSchema, AppInfoResponseSchema, AgentMutationErrorSchema, InstallAppUpdateResponseSchema, InstallAppUpdateRequestSchema, EventStreamMetricsResponseSchema, AgentCapabilitiesSchema, AgentModelPageSchema, AgentGlobalSettingsResponseSchema, AgentGlobalSettingsSchema, MAX_AGENT_IMAGE_BYTES, MAX_AGENT_TEXT_BYTES, AgentProviderConnectionStatusSchema, StartOfficialProviderLoginResponseSchema, StartOfficialProviderLoginRequestSchema, AgentProviderConnectionMutationResponseSchema, CancelProviderLoginRequestSchema, ConfigureCustomProviderResponseSchema, ConfigureCustomProviderRequestSchema, WorkbenchPetCatalogResponseSchema, WorkbenchPetDownloadResponseSchema, WorkbenchPetDownloadRequestSchema, ProjectPageSchema, HostFileListingSchema, HostFileQuerySchema, ProjectDirectoryListingSchema, ProjectDirectoryQuerySchema, ProjectOpenCapabilitiesResponseSchema, OpenProjectResponseSchema, ProjectRootQuerySchema, OpenProjectRequestSchema, ReorderProjectsResponseSchema, ReorderProjectsRequestSchema, AgentSkillPageSchema, AgentProjectDefaultsResponseSchema, AgentProjectDefaultsSchema, AddProjectResponseSchema, AddProjectRequestSchema, RenameProjectResponseSchema, RenameProjectRequestSchema, RemoveProjectResponseSchema, RemoveProjectRequestSchema, AgentTaskPageSchema, UnsubscribeAgentTaskResponseSchema, AgentTaskSnapshotResponseSchema, AgentMcpServerPageSchema, AgentBackgroundTerminalPageSchema, TerminateAgentBackgroundTerminalResponseSchema, PinAgentTaskResponseSchema, PinAgentTaskRequestSchema, RenameAgentTaskResponseSchema, RenameAgentTaskRequestSchema, ArchiveAgentTaskResponseSchema, ArchiveAgentTaskRequestSchema, UnarchiveAgentTaskResponseSchema, UnarchiveAgentTaskRequestSchema, DeleteAgentTaskResponseSchema, DeleteAgentTaskRequestSchema, StartAgentTaskResponseSchema, StartAgentTaskRequestSchema, StartAgentTurnResponseSchema, StartAgentTurnRequestSchema, SteerAgentTurnResponseSchema, SteerAgentTurnRequestSchema, InterruptAgentTurnResponseSchema, InterruptAgentTurnRequestSchema, ResolvePendingRequestResponseSchema, ResolvePendingRequestRequestSchema, AgentQueuedSubmissionPageSchema, AddAgentQueuedSubmissionResponseSchema, AddAgentQueuedSubmissionRequestSchema, UpdateAgentQueuedSubmissionResponseSchema, UpdateAgentQueuedSubmissionRequestSchema, DeleteAgentQueuedSubmissionResponseSchema, ReorderAgentQueuedSubmissionsResponseSchema, ReorderAgentQueuedSubmissionsRequestSchema, StartAgentQueuedSubmissionResponseSchema, StartAgentQueuedSubmissionRequestSchema, AgentPromptInputSchema, AgentProviderConnectionRecordSchema, MAX_AGENT_IMAGES, MAX_AGENT_IMAGE_TOTAL_BYTES, MAX_AGENT_FILE_TOTAL_BYTES, ProjectGitStatusSchema, ProjectGitStatusQuerySchema, ProjectGitHistoryPageSchema, ProjectGitHistoryQuerySchema, ProjectGitCommitFilesPageSchema, ProjectGitCommitFilesQuerySchema, ProjectGitCommitFileDiffSchema, ProjectGitCommitFileDiffQuerySchema, SwitchProjectBranchRequestSchema, CreateProjectBranchRequestSchema, GenerateCommitMessageResponseSchema, GenerateCommitMessageRequestSchema, CommitProjectChangesResponseSchema, CommitProjectChangesRequestSchema, ProjectFileTreeSchema, ProjectFileTreeQuerySchema, ProjectFileSearchPageSchema, ProjectFileSearchQuerySchema, StopProjectFileSearchResponseSchema, StopProjectFileSearchRequestSchema, ProjectSourceFileQuerySchema, ProjectSourceFileSchema, AgentAttachmentUploadResponseSchema, HostFileKindSchema, ImportHostAttachmentRequestSchema, AgentAttachmentKindSchema, AgentTaskSettingsResponseSchema, AgentTaskSettingsSchema, ReloadAgentMcpServersResponseSchema, ReloadAgentMcpServersRequestSchema, ReviewAgentTaskResponseSchema, ReviewAgentTaskRequestSchema, CompactAgentTaskResponseSchema, CompactAgentTaskRequestSchema, ForkAgentTaskResponseSchema, ForkAgentTaskRequestSchema, UploadAgentFeedbackResponseSchema, UploadAgentFeedbackRequestSchema, OpenAgentTaskAttachmentResponseSchema, OpenAgentTaskAttachmentRequestSchema, UpdateAgentGoalResponseSchema, UpdateAgentGoalRequestSchema, ClearAgentGoalResponseSchema, ProjectGitWorktreePageSchema, ProjectWorktreeMutationResponseSchema, CreateProjectWorktreeRequestSchema, SwitchProjectWorktreeRequestSchema, RenameProjectFileResponseSchema, RenameProjectFileRequestSchema, DeleteProjectFileResponseSchema, DeleteProjectFileRequestSchema, MAX_EVENT_BATCH_SIZE } from './chunk-TEWPWZPG.js';
6
6
  import { __commonJS, __require, __toESM } from './chunk-K6J42667.js';
@@ -60917,12 +60917,12 @@ async function runSingleFlight(inFlight, key, operation) {
60917
60917
  async function resolveTaskScope(projectId, options) {
60918
60918
  if (projectId === TEMPORARY_TASK_SCOPE_ID) {
60919
60919
  return {
60920
- provider: options.provider.forTemporary(options.temporaryWorkspace),
60920
+ provider: options.provider.forTemporary(options.standaloneCwd),
60921
60921
  scope: {
60922
60922
  id: TEMPORARY_TASK_SCOPE_ID,
60923
60923
  kind: "temporary",
60924
- rootPath: options.temporaryWorkspace,
60925
- runtimeWorkspaceRoots: [options.temporaryWorkspace]
60924
+ rootPath: options.standaloneCwd,
60925
+ runtimeWorkspaceRoots: [options.standaloneCwd]
60926
60926
  }
60927
60927
  };
60928
60928
  }
package/dist/cli.js CHANGED
@@ -1,12 +1,11 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire } from 'node:module';
3
- import { createCodexlyServer, SqliteStateRepository, normalizeAllowedHost } from './chunk-C3PIS4SQ.js';
3
+ import { createCodexlyServer, SqliteStateRepository, normalizeAllowedHost } from './chunk-NAHIDASP.js';
4
4
  import './chunk-DEKHLAWT.js';
5
- import { startCodexAppServer, locateCodexBinary, createCodexRuntimeProvider, createCodexWorkbenchPetProvider, CodexProjectRepository, checkCodexVersion } from './chunk-NUY5U24W.js';
5
+ import { startCodexAppServer, locateCodexBinary, createCodexRuntimeProvider, createCodexWorkbenchPetProvider, CodexProjectRepository, checkCodexVersion } from './chunk-CGZ44LHJ.js';
6
6
  import './chunk-RNTA4MFS.js';
7
7
  import './chunk-TEWPWZPG.js';
8
8
  import './chunk-K6J42667.js';
9
- import { mkdir, lstat, chmod, realpath } from 'fs/promises';
10
9
  import { networkInterfaces, homedir } from 'os';
11
10
  import { join, win32 } from 'path';
12
11
  import { fileURLToPath } from 'url';
@@ -19,7 +18,7 @@ createRequire(import.meta.url);
19
18
 
20
19
  // package.json
21
20
  var package_default = {
22
- version: "0.6.0"};
21
+ version: "0.7.0"};
23
22
  var PACKAGE_NAME = "@bryanhu/codexly";
24
23
  var INITIAL_APP_VERSION = "0.1.0";
25
24
  var CHANGELOG_URL_PREFIX = "https://raw.githubusercontent.com/BryanHoo/Codexly/v";
@@ -579,7 +578,6 @@ var defaultDependencies = {
579
578
  listen: (options) => server.listen(options)
580
579
  };
581
580
  },
582
- ensureTemporaryWorkspace,
583
581
  generateLanPairingCode,
584
582
  listLanAccessUrls,
585
583
  locateCodexBinary,
@@ -590,18 +588,6 @@ var defaultDependencies = {
590
588
  startCodexAppServer,
591
589
  webRoot: fileURLToPath(new URL("../dist/web", import.meta.url))
592
590
  };
593
- async function ensureTemporaryWorkspace(path) {
594
- await mkdir(path, { mode: 448, recursive: true });
595
- const metadata = await lstat(path);
596
- if (metadata.isSymbolicLink()) {
597
- throw new Error("Temporary workspace must not be a symbolic link");
598
- }
599
- if (!metadata.isDirectory()) {
600
- throw new Error("Temporary workspace path must be a directory");
601
- }
602
- await chmod(path, 448);
603
- return realpath(path);
604
- }
605
591
  function assertSupportedNodeVersion(version) {
606
592
  const [major = Number.NaN, minor = Number.NaN] = version.split(".").map(Number);
607
593
  if (!(major > 22 || major === 22 && minor >= 14)) {
@@ -749,9 +735,6 @@ async function runStart(args, dependencies, signal, output) {
749
735
  stateRepository = await dependencies.createStateRepository(
750
736
  join(codexHome, "codexly", "state.sqlite3")
751
737
  );
752
- const temporaryWorkspace = await dependencies.ensureTemporaryWorkspace(
753
- join(codexHome, "codexly", "temporary-workspace")
754
- );
755
738
  runtime = await dependencies.startCodexAppServer({
756
739
  appVersion: dependencies.appVersion,
757
740
  env,
@@ -791,7 +774,8 @@ async function runStart(args, dependencies, signal, output) {
791
774
  queueRepository: stateRepository,
792
775
  settingsRepository: stateRepository,
793
776
  staticRoot: dependencies.webRoot,
794
- temporaryWorkspace
777
+ // Standalone Thread 继承 app-server 的 cwd,不再创建伪项目目录。
778
+ standaloneCwd: process.cwd()
795
779
  });
796
780
  const host = options.lan === true ? "0.0.0.0" : "127.0.0.1";
797
781
  const activePort = await listenOnAvailablePort(server, host, port);
@@ -1,5 +1,5 @@
1
1
  import { createRequire } from 'node:module';
2
- export { CodexAppServerExitedError, CodexAppServerProcess, CodexAppServerShutdownError, CodexAppServerSpawnError, CodexProjectRepository, CodexProtocolMappingError, CodexProviderConnectionError, CodexProviderConnectionService, CodexRuntimeProvider, CodexWorkbenchPetProvider, JsonlRpcClient, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError, SUPPORTED_CODEX_VERSION, checkCodexVersion, createCodexRuntimeProvider, createCodexWorkbenchPetProvider, locateCodexBinary, startCodexAppServer } from '../../chunk-NUY5U24W.js';
2
+ export { CodexAppServerExitedError, CodexAppServerProcess, CodexAppServerShutdownError, CodexAppServerSpawnError, CodexProjectRepository, CodexProtocolMappingError, CodexProviderConnectionError, CodexProviderConnectionService, CodexRuntimeProvider, CodexWorkbenchPetProvider, JsonlRpcClient, RpcConnectionClosedError, RpcProtocolError, RpcResponseError, RpcTimeoutError, SUPPORTED_CODEX_VERSION, checkCodexVersion, createCodexRuntimeProvider, createCodexWorkbenchPetProvider, locateCodexBinary, startCodexAppServer } from '../../chunk-CGZ44LHJ.js';
3
3
  import '../../chunk-RNTA4MFS.js';
4
4
  import '../../chunk-TEWPWZPG.js';
5
5
  import '../../chunk-K6J42667.js';
@@ -1,7 +1,7 @@
1
1
  import { createRequire } from 'node:module';
2
- export { AccessSessionService, AgentEventStream, GitCommitError, GitCommitReviewError, SqliteStateRepository, commitSelectedProjectChanges, createCodexlyServer, normalizeAllowedHost, readProjectGitCommitFileDiff, readProjectGitCommitFiles } from '../chunk-C3PIS4SQ.js';
2
+ export { AccessSessionService, AgentEventStream, GitCommitError, GitCommitReviewError, SqliteStateRepository, commitSelectedProjectChanges, createCodexlyServer, normalizeAllowedHost, readProjectGitCommitFileDiff, readProjectGitCommitFiles } from '../chunk-NAHIDASP.js';
3
3
  import '../chunk-DEKHLAWT.js';
4
- import '../chunk-NUY5U24W.js';
4
+ import '../chunk-CGZ44LHJ.js';
5
5
  import '../chunk-RNTA4MFS.js';
6
6
  import '../chunk-TEWPWZPG.js';
7
7
  import '../chunk-K6J42667.js';
@@ -340,23 +340,23 @@
340
340
  "isDynamicEntry": true
341
341
  },
342
342
  "../../node_modules/.pnpm/streamdown@2.5.0_react-dom@19.2.8_react@19.2.8__react@19.2.8_supports-color@7.2.0/node_modules/streamdown/dist/highlighted-body-OFNGDK62.js": {
343
- "file": "assets/highlighted-body-OFNGDK62-bj8RQV-D.js",
343
+ "file": "assets/highlighted-body-OFNGDK62-oKnqW5V8.js",
344
344
  "name": "highlighted-body-OFNGDK62",
345
345
  "src": "../../node_modules/.pnpm/streamdown@2.5.0_react-dom@19.2.8_react@19.2.8__react@19.2.8_supports-color@7.2.0/node_modules/streamdown/dist/highlighted-body-OFNGDK62.js",
346
346
  "isDynamicEntry": true,
347
347
  "imports": [
348
348
  "_rolldown-runtime-QTnfLwEv.js",
349
349
  "_react-runtime-CVaUQXZF.js",
350
- "_chunk-BO2N2NFS-BZtBhhTV.js"
350
+ "_chunk-BO2N2NFS-bEY6272A.js"
351
351
  ]
352
352
  },
353
353
  "../../node_modules/.pnpm/streamdown@2.5.0_react-dom@19.2.8_react@19.2.8__react@19.2.8_supports-color@7.2.0/node_modules/streamdown/dist/mermaid-GHXKKRXX.js": {
354
- "file": "assets/mermaid-GHXKKRXX-BDoa2Ho_.js",
354
+ "file": "assets/mermaid-GHXKKRXX-8A2qFznr.js",
355
355
  "name": "mermaid-GHXKKRXX",
356
356
  "src": "../../node_modules/.pnpm/streamdown@2.5.0_react-dom@19.2.8_react@19.2.8__react@19.2.8_supports-color@7.2.0/node_modules/streamdown/dist/mermaid-GHXKKRXX.js",
357
357
  "isDynamicEntry": true,
358
358
  "imports": [
359
- "_chunk-BO2N2NFS-BZtBhhTV.js"
359
+ "_chunk-BO2N2NFS-bEY6272A.js"
360
360
  ]
361
361
  },
362
362
  "_bundle-mjs-rHxsej31.js": {
@@ -393,8 +393,8 @@
393
393
  "_check-DExH7zwT.js"
394
394
  ]
395
395
  },
396
- "_chunk-BO2N2NFS-BZtBhhTV.js": {
397
- "file": "assets/chunk-BO2N2NFS-BZtBhhTV.js",
396
+ "_chunk-BO2N2NFS-bEY6272A.js": {
397
+ "file": "assets/chunk-BO2N2NFS-bEY6272A.js",
398
398
  "name": "chunk-BO2N2NFS",
399
399
  "imports": [
400
400
  "_rolldown-runtime-QTnfLwEv.js",
@@ -408,8 +408,8 @@
408
408
  "../../node_modules/.pnpm/streamdown@2.5.0_react-dom@19.2.8_react@19.2.8__react@19.2.8_supports-color@7.2.0/node_modules/streamdown/dist/mermaid-GHXKKRXX.js"
409
409
  ]
410
410
  },
411
- "_code-languages-DA_FG9-T.js": {
412
- "file": "assets/code-languages-DA_FG9-T.js",
411
+ "_code-languages-D5Nrl7sO.js": {
412
+ "file": "assets/code-languages-D5Nrl7sO.js",
413
413
  "name": "code-languages",
414
414
  "imports": [
415
415
  "index.html"
@@ -532,8 +532,8 @@
532
532
  "_dist-hozmU7_C.js"
533
533
  ]
534
534
  },
535
- "_file-review-dialog-dlOxwNrj.js": {
536
- "file": "assets/file-review-dialog-dlOxwNrj.js",
535
+ "_file-review-dialog-DVVtiNEL.js": {
536
+ "file": "assets/file-review-dialog-DVVtiNEL.js",
537
537
  "name": "file-review-dialog",
538
538
  "imports": [
539
539
  "_rolldown-runtime-QTnfLwEv.js",
@@ -609,8 +609,8 @@
609
609
  "file": "assets/jsx-D3KKoC5L.js",
610
610
  "name": "jsx"
611
611
  },
612
- "_lazy-message-response-8zk6PTbZ.js": {
613
- "file": "assets/lazy-message-response-8zk6PTbZ.js",
612
+ "_lazy-message-response-DNUwJy0d.js": {
613
+ "file": "assets/lazy-message-response-DNUwJy0d.js",
614
614
  "name": "lazy-message-response",
615
615
  "imports": [
616
616
  "_rolldown-runtime-QTnfLwEv.js",
@@ -644,8 +644,8 @@
644
644
  "_c-SSSlmE39.js"
645
645
  ]
646
646
  },
647
- "_project-source-panel-0Chmfe7s.js": {
648
- "file": "assets/project-source-panel-0Chmfe7s.js",
647
+ "_project-source-panel-DWDcX3T9.js": {
648
+ "file": "assets/project-source-panel-DWDcX3T9.js",
649
649
  "name": "project-source-panel",
650
650
  "imports": [
651
651
  "_rolldown-runtime-QTnfLwEv.js",
@@ -655,9 +655,9 @@
655
655
  "_useInfiniteQuery-Bj31MvqL.js",
656
656
  "_check-DExH7zwT.js",
657
657
  "_file-code-corner-D1h7_C7f.js",
658
- "_lazy-message-response-8zk6PTbZ.js",
658
+ "_lazy-message-response-DNUwJy0d.js",
659
659
  "index.html",
660
- "_code-languages-DA_FG9-T.js"
660
+ "_code-languages-D5Nrl7sO.js"
661
661
  ],
662
662
  "dynamicImports": [
663
663
  "src/shared/components/agent/code-highlighter.ts"
@@ -705,13 +705,13 @@
705
705
  "file": "assets/shellscript-CqHdAlCp.js",
706
706
  "name": "shellscript"
707
707
  },
708
- "_shiki-bundle-BEmB8kBs.js": {
709
- "file": "assets/shiki-bundle-BEmB8kBs.js",
708
+ "_shiki-bundle-Dhkx9AYM.js": {
709
+ "file": "assets/shiki-bundle-Dhkx9AYM.js",
710
710
  "name": "shiki-bundle",
711
711
  "imports": [
712
712
  "_rolldown-runtime-QTnfLwEv.js",
713
713
  "_engine-compile-Bqjaa_8Z.js",
714
- "_code-languages-DA_FG9-T.js"
714
+ "_code-languages-D5Nrl7sO.js"
715
715
  ]
716
716
  },
717
717
  "_sql-CP0rg-5b.js": {
@@ -772,7 +772,7 @@
772
772
  "name": "yaml"
773
773
  },
774
774
  "index.html": {
775
- "file": "assets/index-DTJVeg10.js",
775
+ "file": "assets/index-C1A_OTjT.js",
776
776
  "name": "index",
777
777
  "src": "index.html",
778
778
  "isEntry": true,
@@ -796,11 +796,11 @@
796
796
  "src/features/workbench/components/project-file-popup-page.tsx"
797
797
  ],
798
798
  "css": [
799
- "assets/index-BZYdzDQ3.css"
799
+ "assets/index-lKikkWES.css"
800
800
  ]
801
801
  },
802
802
  "src/features/diff/patch-diff-viewer.tsx": {
803
- "file": "assets/patch-diff-viewer-CaWTvh9_.js",
803
+ "file": "assets/patch-diff-viewer-BgNx-ffs.js",
804
804
  "name": "patch-diff-viewer",
805
805
  "src": "src/features/diff/patch-diff-viewer.tsx",
806
806
  "isDynamicEntry": true,
@@ -809,18 +809,18 @@
809
809
  "_react-runtime-CVaUQXZF.js",
810
810
  "index.html",
811
811
  "_engine-compile-Bqjaa_8Z.js",
812
- "_code-languages-DA_FG9-T.js",
813
- "_shiki-bundle-BEmB8kBs.js",
812
+ "_code-languages-D5Nrl7sO.js",
813
+ "_shiki-bundle-Dhkx9AYM.js",
814
814
  "_file-change-D7aZLgtG.js"
815
815
  ],
816
816
  "dynamicImports": [
817
817
  "../../node_modules/.pnpm/shiki@4.4.3/node_modules/shiki/dist/themes/github-light.mjs",
818
818
  "../../node_modules/.pnpm/shiki@4.4.3/node_modules/shiki/dist/themes/github-dark.mjs",
819
- "_shiki-bundle-BEmB8kBs.js"
819
+ "_shiki-bundle-Dhkx9AYM.js"
820
820
  ]
821
821
  },
822
822
  "src/features/settings/components/global-settings-dialog.tsx": {
823
- "file": "assets/global-settings-dialog-DFjxQX_B.js",
823
+ "file": "assets/global-settings-dialog-Dhqfe3qK.js",
824
824
  "name": "global-settings-dialog",
825
825
  "src": "src/features/settings/components/global-settings-dialog.tsx",
826
826
  "isDynamicEntry": true,
@@ -835,13 +835,13 @@
835
835
  "_provider-connection-queries-CLpiOnBN.js",
836
836
  "_prompt-input-controls-CT6f-1tO.js",
837
837
  "_git-commit-horizontal-BJGxHnV4.js",
838
- "_lazy-message-response-8zk6PTbZ.js",
838
+ "_lazy-message-response-DNUwJy0d.js",
839
839
  "_upload-BDX8w8rQ.js",
840
840
  "index.html"
841
841
  ]
842
842
  },
843
843
  "src/features/workbench/components/git-history-panel.tsx": {
844
- "file": "assets/git-history-panel-DqiTnaf1.js",
844
+ "file": "assets/git-history-panel-4j8odsDb.js",
845
845
  "name": "git-history-panel",
846
846
  "src": "src/features/workbench/components/git-history-panel.tsx",
847
847
  "isDynamicEntry": true,
@@ -853,7 +853,7 @@
853
853
  "_useInfiniteQuery-Bj31MvqL.js",
854
854
  "_loader-circle-CYc50iXi.js",
855
855
  "_file-code-corner-D1h7_C7f.js",
856
- "_file-review-dialog-dlOxwNrj.js",
856
+ "_file-review-dialog-DVVtiNEL.js",
857
857
  "_git-commit-horizontal-BJGxHnV4.js",
858
858
  "_context-menu-CZuXyHCN.js",
859
859
  "index.html"
@@ -863,19 +863,19 @@
863
863
  ]
864
864
  },
865
865
  "src/features/workbench/components/project-file-popup-page.tsx": {
866
- "file": "assets/project-file-popup-page-Cmjoovjs.js",
866
+ "file": "assets/project-file-popup-page-BwPTSc8o.js",
867
867
  "name": "project-file-popup-page",
868
868
  "src": "src/features/workbench/components/project-file-popup-page.tsx",
869
869
  "isDynamicEntry": true,
870
870
  "imports": [
871
871
  "_rolldown-runtime-QTnfLwEv.js",
872
872
  "_react-runtime-CVaUQXZF.js",
873
- "_project-source-panel-0Chmfe7s.js",
873
+ "_project-source-panel-DWDcX3T9.js",
874
874
  "index.html"
875
875
  ]
876
876
  },
877
877
  "src/features/workbench/components/workbench-inspector-changes.tsx": {
878
- "file": "assets/workbench-inspector-changes-CWeWA-hv.js",
878
+ "file": "assets/workbench-inspector-changes-CWIx9Os6.js",
879
879
  "name": "workbench-inspector-changes",
880
880
  "src": "src/features/workbench/components/workbench-inspector-changes.tsx",
881
881
  "isDynamicEntry": true,
@@ -896,7 +896,7 @@
896
896
  ]
897
897
  },
898
898
  "src/features/workbench/components/workbench-shell.tsx": {
899
- "file": "assets/workbench-shell-BOnddpen.js",
899
+ "file": "assets/workbench-shell-DVC3DE5a.js",
900
900
  "name": "workbench-shell",
901
901
  "src": "src/features/workbench/components/workbench-shell.tsx",
902
902
  "isDynamicEntry": true,
@@ -912,17 +912,17 @@
912
912
  "_dist-ByRtqJXv.js",
913
913
  "_file-tree-CbuG5nkz.js",
914
914
  "_provider-connection-queries-CLpiOnBN.js",
915
- "_project-source-panel-0Chmfe7s.js",
915
+ "_project-source-panel-DWDcX3T9.js",
916
916
  "_file-code-corner-D1h7_C7f.js",
917
917
  "_prompt-reference-token-CTm_xv2R.js",
918
918
  "_button-group-b2-xCzBP.js",
919
919
  "_prompt-input-controls-CT6f-1tO.js",
920
- "_file-review-dialog-dlOxwNrj.js",
920
+ "_file-review-dialog-DVVtiNEL.js",
921
921
  "_git-commit-horizontal-BJGxHnV4.js",
922
- "_lazy-message-response-8zk6PTbZ.js",
922
+ "_lazy-message-response-DNUwJy0d.js",
923
923
  "_context-menu-CZuXyHCN.js",
924
924
  "index.html",
925
- "_code-languages-DA_FG9-T.js",
925
+ "_code-languages-D5Nrl7sO.js",
926
926
  "_file-change-D7aZLgtG.js"
927
927
  ],
928
928
  "dynamicImports": [
@@ -932,19 +932,19 @@
932
932
  ]
933
933
  },
934
934
  "src/shared/components/agent/code-highlighter.ts": {
935
- "file": "assets/code-highlighter-BG341hSJ.js",
935
+ "file": "assets/code-highlighter-Cm84nMIT.js",
936
936
  "name": "code-highlighter",
937
937
  "src": "src/shared/components/agent/code-highlighter.ts",
938
938
  "isDynamicEntry": true,
939
939
  "imports": [
940
940
  "_engine-compile-Bqjaa_8Z.js",
941
- "_code-languages-DA_FG9-T.js",
941
+ "_code-languages-D5Nrl7sO.js",
942
942
  "../../node_modules/.pnpm/shiki@4.4.3/node_modules/shiki/dist/themes/github-dark.mjs",
943
943
  "../../node_modules/.pnpm/shiki@4.4.3/node_modules/shiki/dist/themes/github-light.mjs"
944
944
  ]
945
945
  },
946
946
  "src/shared/components/agent/message-response.tsx": {
947
- "file": "assets/message-response-CKPW6CRi.js",
947
+ "file": "assets/message-response-DVL8_J3z.js",
948
948
  "name": "message-response",
949
949
  "src": "src/shared/components/agent/message-response.tsx",
950
950
  "isDynamicEntry": true,
@@ -956,7 +956,7 @@
956
956
  "_prompt-reference-token-CTm_xv2R.js",
957
957
  "_context-menu-CZuXyHCN.js",
958
958
  "index.html",
959
- "_chunk-BO2N2NFS-BZtBhhTV.js"
959
+ "_chunk-BO2N2NFS-bEY6272A.js"
960
960
  ]
961
961
  }
962
962
  }
Binary file
Binary file