@bryanhu/codexly 0.37.0 → 0.38.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.
- package/CHANGELOG.md +46 -16
- package/README.md +8 -47
- package/README.zh-CN.md +8 -47
- package/dist/chunk-4RQ7HLCK.js +3 -0
- package/dist/chunk-GMNBWGMQ.js +5 -0
- package/dist/{chunk-PQPYP3AR.js → chunk-LGFUYNXR.js} +1 -1
- package/dist/{chunk-JHBSDMIM.js → chunk-RWMSDM4X.js} +1 -1
- package/dist/{chunk-ZK5H37U3.js → chunk-SNN2J7BU.js} +187 -170
- package/dist/chunk-YCHIPWV2.js +40 -0
- package/dist/cli.js +5 -5
- package/dist/client/index.js +2 -2
- package/dist/{command-RGXPFWPR.js → command-2D66UEBJ.js} +1 -1
- package/dist/core/index.js +1 -1
- package/dist/protocol/index.js +1 -1
- package/dist/providers/codex/index.js +1 -1
- package/dist/server/index.js +1 -1
- package/dist/sqlite-state-worker.js +22 -18
- package/dist/web/.vite/manifest.json +128 -135
- package/dist/web/.vite/manifest.json.br +0 -0
- package/dist/web/.vite/manifest.json.gz +0 -0
- package/dist/web/assets/{agent-settings-panel-K1YqqkJL.js → agent-settings-panel-C9S0LXqi.js} +1 -1
- package/dist/web/assets/agent-settings-panel-C9S0LXqi.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-C9S0LXqi.js.gz +0 -0
- package/dist/web/assets/app-update-dialog-BsIh1VPg.js +1 -0
- package/dist/web/assets/app-update-dialog-BsIh1VPg.js.br +0 -0
- package/dist/web/assets/app-update-dialog-BsIh1VPg.js.gz +0 -0
- package/dist/web/assets/{background-image-picker-BHqZ3SX1.js → background-image-picker-B1xDUft3.js} +1 -1
- package/dist/web/assets/background-image-picker-B1xDUft3.js.br +0 -0
- package/dist/web/assets/background-image-picker-B1xDUft3.js.gz +0 -0
- package/dist/web/assets/{code-highlighter-DIfBIRTg.js → code-highlighter-kiC_chgH.js} +1 -1
- package/dist/web/assets/code-highlighter-kiC_chgH.js.br +0 -0
- package/dist/web/assets/code-highlighter-kiC_chgH.js.gz +0 -0
- package/dist/web/assets/{commit-settings-panel-B0i2Bqmu.js → commit-settings-panel-Cdtyux2J.js} +1 -1
- package/dist/web/assets/commit-settings-panel-Cdtyux2J.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-Cdtyux2J.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-DaGgZASG.js +2 -0
- package/dist/web/assets/file-review-dialog-DaGgZASG.js.br +0 -0
- package/dist/web/assets/file-review-dialog-DaGgZASG.js.gz +0 -0
- package/dist/web/assets/git-commit-review-Bz8YDy59.js +2 -0
- package/dist/web/assets/git-commit-review-Bz8YDy59.js.br +0 -0
- package/dist/web/assets/git-commit-review-Bz8YDy59.js.gz +0 -0
- package/dist/web/assets/{git-history-panel-Bk5XtV-h.js → git-history-panel-QBsXgUT7.js} +1 -1
- package/dist/web/assets/git-history-panel-QBsXgUT7.js.br +0 -0
- package/dist/web/assets/git-history-panel-QBsXgUT7.js.gz +0 -0
- package/dist/web/assets/{global-search-dialog-nP5Zoo16.js → global-search-dialog-DDaHRgce.js} +1 -1
- package/dist/web/assets/global-search-dialog-DDaHRgce.js.br +0 -0
- package/dist/web/assets/global-search-dialog-DDaHRgce.js.gz +0 -0
- package/dist/web/assets/global-settings-about-DpKyx3RM.js +1 -0
- package/dist/web/assets/global-settings-about-DpKyx3RM.js.br +0 -0
- package/dist/web/assets/global-settings-about-DpKyx3RM.js.gz +0 -0
- package/dist/web/assets/{global-settings-page-Bm6WTYej.js → global-settings-page-BEUBn7B5.js} +2 -2
- package/dist/web/assets/global-settings-page-BEUBn7B5.js.br +0 -0
- package/dist/web/assets/global-settings-page-BEUBn7B5.js.gz +0 -0
- package/dist/web/assets/{global-settings-pets-ChV29f_6.js → global-settings-pets-DBYFpNQk.js} +1 -1
- package/dist/web/assets/global-settings-pets-DBYFpNQk.js.br +0 -0
- package/dist/web/assets/global-settings-pets-DBYFpNQk.js.gz +0 -0
- package/dist/web/assets/{highlighted-body-OFNGDK62-D1VJUKau.js → highlighted-body-OFNGDK62-CeVKUhHG.js} +1 -1
- package/dist/web/assets/highlighted-body-OFNGDK62-CeVKUhHG.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-CeVKUhHG.js.gz +0 -0
- package/dist/web/assets/{history-task-timeline-CphChwX0.js → history-task-timeline-Dl6to6Cp.js} +1 -1
- package/dist/web/assets/history-task-timeline-Dl6to6Cp.js.br +0 -0
- package/dist/web/assets/history-task-timeline-Dl6to6Cp.js.gz +0 -0
- package/dist/web/assets/{image-preview-CZiY9KQs.js → image-preview-Bez628xh.js} +2 -2
- package/dist/web/assets/image-preview-Bez628xh.js.br +0 -0
- package/dist/web/assets/image-preview-Bez628xh.js.gz +0 -0
- package/dist/web/assets/{image-preview-content-D54Quns6.js → image-preview-content-TkopF2n1.js} +1 -1
- package/dist/web/assets/image-preview-content-TkopF2n1.js.br +0 -0
- package/dist/web/assets/image-preview-content-TkopF2n1.js.gz +0 -0
- package/dist/web/assets/index-CHJSDTYw.css +2 -0
- package/dist/web/assets/index-CHJSDTYw.css.br +0 -0
- package/dist/web/assets/index-CHJSDTYw.css.gz +0 -0
- package/dist/web/assets/index-DobF11m_.js +4 -0
- package/dist/web/assets/index-DobF11m_.js.br +0 -0
- package/dist/web/assets/index-DobF11m_.js.gz +0 -0
- package/dist/web/assets/initial-deps-C-3sxJvc.js +2 -0
- package/dist/web/assets/initial-deps-C-3sxJvc.js.br +0 -0
- package/dist/web/assets/initial-deps-C-3sxJvc.js.gz +0 -0
- package/dist/web/assets/{installed-skills-pane-DnKCXx4r.js → installed-skills-pane-yCfl2E4Z.js} +1 -1
- package/dist/web/assets/installed-skills-pane-yCfl2E4Z.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-yCfl2E4Z.js.gz +0 -0
- package/dist/web/assets/markdown-DVABVVc2.js +1 -0
- package/dist/web/assets/markdown-DVABVVc2.js.br +0 -0
- package/dist/web/assets/markdown-DVABVVc2.js.gz +0 -0
- package/dist/web/assets/{mcp-management-pane-CAcqH6Ft.js → mcp-management-pane-D4fhknd1.js} +1 -1
- package/dist/web/assets/mcp-management-pane-D4fhknd1.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-D4fhknd1.js.gz +0 -0
- package/dist/web/assets/mdx-BLuqtYwj.js +1 -0
- package/dist/web/assets/mdx-BLuqtYwj.js.br +0 -0
- package/dist/web/assets/mdx-BLuqtYwj.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BL0SiEsb.js +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BL0SiEsb.js.br +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BL0SiEsb.js.gz +0 -0
- package/dist/web/assets/message-assistant-directive-r0UOX93m.js +3 -0
- package/dist/web/assets/message-assistant-directive-r0UOX93m.js.br +0 -0
- package/dist/web/assets/message-assistant-directive-r0UOX93m.js.gz +0 -0
- package/dist/web/assets/message-response-DTlvlBMa.js +151 -0
- package/dist/web/assets/message-response-DTlvlBMa.js.br +0 -0
- package/dist/web/assets/message-response-DTlvlBMa.js.gz +0 -0
- package/dist/web/assets/{official-plugins-pane-CBk4rbLt.js → official-plugins-pane-CRnpq0MJ.js} +1 -1
- package/dist/web/assets/official-plugins-pane-CRnpq0MJ.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-CRnpq0MJ.js.gz +0 -0
- package/dist/web/assets/{patch-diff-viewer-nIzfWkKE.js → patch-diff-viewer-fv2hVYyb.js} +3 -3
- package/dist/web/assets/patch-diff-viewer-fv2hVYyb.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-fv2hVYyb.js.gz +0 -0
- package/dist/web/assets/{pdf-preview-Zrj4u-KR.js → pdf-preview-CEvfJiZa.js} +3 -3
- package/dist/web/assets/pdf-preview-CEvfJiZa.js.br +0 -0
- package/dist/web/assets/pdf-preview-CEvfJiZa.js.gz +0 -0
- package/dist/web/assets/{personalization-settings-panel-D3OqsNUV.js → personalization-settings-panel-CmNqDQg6.js} +1 -1
- package/dist/web/assets/personalization-settings-panel-CmNqDQg6.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-CmNqDQg6.js.gz +0 -0
- package/dist/web/assets/{project-file-popup-page-7yzFqPZq.js → project-file-popup-page-rkdge4He.js} +1 -1
- package/dist/web/assets/project-file-popup-page-rkdge4He.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-rkdge4He.js.gz +0 -0
- package/dist/web/assets/project-source-panel-Dfdd7hXf.js +2 -0
- package/dist/web/assets/project-source-panel-Dfdd7hXf.js.br +0 -0
- package/dist/web/assets/project-source-panel-Dfdd7hXf.js.gz +0 -0
- package/dist/web/assets/{prompt-input--2KQl6SR.js → prompt-input-rTS8jFNM.js} +1 -1
- package/dist/web/assets/prompt-input-rTS8jFNM.js.br +0 -0
- package/dist/web/assets/prompt-input-rTS8jFNM.js.gz +0 -0
- package/dist/web/assets/resources-en-DiMZyInt.js +1 -0
- package/dist/web/assets/resources-en-DiMZyInt.js.br +0 -0
- package/dist/web/assets/resources-en-DiMZyInt.js.gz +0 -0
- package/dist/web/assets/{scheduled-task-date-time-picker-BVYVGT78.js → scheduled-task-date-time-picker-8cWX1p1O.js} +1 -1
- package/dist/web/assets/scheduled-task-date-time-picker-8cWX1p1O.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-8cWX1p1O.js.gz +0 -0
- package/dist/web/assets/{scheduled-tasks-container-CQkfAgKW.js → scheduled-tasks-container-BA7pSsmC.js} +2 -2
- package/dist/web/assets/scheduled-tasks-container-BA7pSsmC.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-BA7pSsmC.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-DrOJ_UbG.css +1 -0
- package/dist/web/assets/scheduled-tasks-container-DrOJ_UbG.css.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-DrOJ_UbG.css.gz +0 -0
- package/dist/web/assets/{shiki-bundle-COC_j-nR.js → shiki-bundle-CHd-S0Yk.js} +1 -1
- package/dist/web/assets/shiki-bundle-CHd-S0Yk.js.br +2 -0
- package/dist/web/assets/shiki-bundle-CHd-S0Yk.js.gz +0 -0
- package/dist/web/assets/{skills-market-container-_ME3wZFP.js → skills-market-container-BdTREXZb.js} +2 -2
- package/dist/web/assets/skills-market-container-BdTREXZb.js.br +0 -0
- package/dist/web/assets/skills-market-container-BdTREXZb.js.gz +0 -0
- package/dist/web/assets/{split-workspace-menu-content-CkpZv1Nz.js → split-workspace-menu-content-DgbECHxu.js} +1 -1
- package/dist/web/assets/split-workspace-menu-content-DgbECHxu.js.br +0 -0
- package/dist/web/assets/split-workspace-menu-content-DgbECHxu.js.gz +0 -0
- package/dist/web/assets/{third-party-marketplace-pane-D3AJNSoF.js → third-party-marketplace-pane-BPN-3gk1.js} +1 -1
- package/dist/web/assets/third-party-marketplace-pane-BPN-3gk1.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-BPN-3gk1.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-D1rDsafv.js +1 -0
- package/dist/web/assets/workbench-inspector-changes-D1rDsafv.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-D1rDsafv.js.gz +0 -0
- package/dist/web/assets/{workbench-pet-canvas-Ct1J6Adp.js → workbench-pet-canvas-B5jypDil.js} +1 -1
- package/dist/web/assets/workbench-pet-canvas-B5jypDil.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-B5jypDil.js.gz +0 -0
- package/dist/web/assets/workbench-shell-B139izuR.js +16 -0
- package/dist/web/assets/workbench-shell-B139izuR.js.br +0 -0
- package/dist/web/assets/workbench-shell-B139izuR.js.gz +0 -0
- package/dist/web/index.html +3 -3
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/docs/local-catalog.md +51 -0
- package/docs/model-discovery.md +26 -0
- package/package.json +5 -4
- package/dist/chunk-3WW7LK46.js +0 -5
- package/dist/chunk-43QCECCY.js +0 -40
- package/dist/chunk-YAHXVRU3.js +0 -3
- package/dist/web/assets/agent-settings-panel-K1YqqkJL.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-K1YqqkJL.js.gz +0 -0
- package/dist/web/assets/background-image-picker-BHqZ3SX1.js.br +0 -0
- package/dist/web/assets/background-image-picker-BHqZ3SX1.js.gz +0 -0
- package/dist/web/assets/code-highlighter-DIfBIRTg.js.br +0 -0
- package/dist/web/assets/code-highlighter-DIfBIRTg.js.gz +0 -0
- package/dist/web/assets/commit-settings-panel-B0i2Bqmu.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-B0i2Bqmu.js.gz +0 -0
- package/dist/web/assets/dockerfile-IyjqRm3v.js +0 -1
- package/dist/web/assets/dockerfile-IyjqRm3v.js.br +0 -0
- package/dist/web/assets/dockerfile-IyjqRm3v.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-B3jUcADI.js +0 -2
- package/dist/web/assets/file-review-dialog-B3jUcADI.js.br +0 -0
- package/dist/web/assets/file-review-dialog-B3jUcADI.js.gz +0 -0
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js +0 -2
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js.br +0 -0
- package/dist/web/assets/git-commit-review-Bz_j3wJo.js.gz +0 -0
- package/dist/web/assets/git-history-panel-Bk5XtV-h.js.br +0 -0
- package/dist/web/assets/git-history-panel-Bk5XtV-h.js.gz +0 -0
- package/dist/web/assets/global-search-dialog-nP5Zoo16.js.br +0 -0
- package/dist/web/assets/global-search-dialog-nP5Zoo16.js.gz +0 -0
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js +0 -1
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js.br +0 -0
- package/dist/web/assets/global-settings-about-Bdzkr5Fi.js.gz +0 -0
- package/dist/web/assets/global-settings-page-Bm6WTYej.js.br +0 -0
- package/dist/web/assets/global-settings-page-Bm6WTYej.js.gz +0 -0
- package/dist/web/assets/global-settings-pets-ChV29f_6.js.br +0 -0
- package/dist/web/assets/global-settings-pets-ChV29f_6.js.gz +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-D1VJUKau.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-D1VJUKau.js.gz +0 -0
- package/dist/web/assets/history-task-timeline-CphChwX0.js.br +0 -0
- package/dist/web/assets/history-task-timeline-CphChwX0.js.gz +0 -0
- package/dist/web/assets/image-preview-CZiY9KQs.js.br +0 -4
- package/dist/web/assets/image-preview-CZiY9KQs.js.gz +0 -0
- package/dist/web/assets/image-preview-content-D54Quns6.js.br +0 -0
- package/dist/web/assets/image-preview-content-D54Quns6.js.gz +0 -0
- package/dist/web/assets/index-BJqxQCE6.css +0 -2
- package/dist/web/assets/index-BJqxQCE6.css.br +0 -0
- package/dist/web/assets/index-BJqxQCE6.css.gz +0 -0
- package/dist/web/assets/index-CV7PO8FJ.js +0 -4
- package/dist/web/assets/index-CV7PO8FJ.js.br +0 -0
- package/dist/web/assets/index-CV7PO8FJ.js.gz +0 -0
- package/dist/web/assets/initial-deps-DElr8S4a.js +0 -2
- package/dist/web/assets/initial-deps-DElr8S4a.js.br +0 -0
- package/dist/web/assets/initial-deps-DElr8S4a.js.gz +0 -0
- package/dist/web/assets/installed-skills-pane-DnKCXx4r.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-DnKCXx4r.js.gz +0 -0
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js +0 -2
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js.br +0 -0
- package/dist/web/assets/lazy-message-response-S2-ZO_oT.js.gz +0 -0
- package/dist/web/assets/markdown-BYOwaDjH.js +0 -1
- package/dist/web/assets/markdown-BYOwaDjH.js.br +0 -0
- package/dist/web/assets/markdown-BYOwaDjH.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-CAcqH6Ft.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-CAcqH6Ft.js.gz +0 -0
- package/dist/web/assets/mdx-DQZ5AkYe.js +0 -1
- package/dist/web/assets/mdx-DQZ5AkYe.js.br +0 -0
- package/dist/web/assets/mdx-DQZ5AkYe.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js.br +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-CRcc_eOq.js.gz +0 -0
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js +0 -3
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js.br +0 -0
- package/dist/web/assets/message-assistant-directive-7AH4Pn2V.js.gz +0 -0
- package/dist/web/assets/message-response-D6AZoXZR.js +0 -151
- package/dist/web/assets/message-response-D6AZoXZR.js.br +0 -0
- package/dist/web/assets/message-response-D6AZoXZR.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-CBk4rbLt.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-CBk4rbLt.js.gz +0 -0
- package/dist/web/assets/patch-diff-viewer-nIzfWkKE.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-nIzfWkKE.js.gz +0 -0
- package/dist/web/assets/pdf-preview-Zrj4u-KR.js.br +0 -0
- package/dist/web/assets/pdf-preview-Zrj4u-KR.js.gz +0 -0
- package/dist/web/assets/personalization-settings-panel-D3OqsNUV.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-D3OqsNUV.js.gz +0 -0
- package/dist/web/assets/project-file-popup-page-7yzFqPZq.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-7yzFqPZq.js.gz +0 -0
- package/dist/web/assets/project-source-panel-C1tTwC1j.js +0 -2
- package/dist/web/assets/project-source-panel-C1tTwC1j.js.br +0 -0
- package/dist/web/assets/project-source-panel-C1tTwC1j.js.gz +0 -0
- package/dist/web/assets/prompt-input--2KQl6SR.js.br +0 -0
- package/dist/web/assets/prompt-input--2KQl6SR.js.gz +0 -0
- package/dist/web/assets/resources-en-CNO1wrxl.js +0 -1
- package/dist/web/assets/resources-en-CNO1wrxl.js.br +0 -0
- package/dist/web/assets/resources-en-CNO1wrxl.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-BVYVGT78.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-BVYVGT78.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-CQkfAgKW.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-CQkfAgKW.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css +0 -1
- package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-CVGTy7-W.css.gz +0 -0
- package/dist/web/assets/shiki-bundle-COC_j-nR.js.br +0 -3
- package/dist/web/assets/shiki-bundle-COC_j-nR.js.gz +0 -0
- package/dist/web/assets/skills-market-container-_ME3wZFP.js.br +0 -0
- package/dist/web/assets/skills-market-container-_ME3wZFP.js.gz +0 -0
- package/dist/web/assets/split-workspace-menu-content-CkpZv1Nz.js.br +0 -0
- package/dist/web/assets/split-workspace-menu-content-CkpZv1Nz.js.gz +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D3AJNSoF.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D3AJNSoF.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js +0 -1
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-DSbBqbXe.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-Ct1J6Adp.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-Ct1J6Adp.js.gz +0 -0
- package/dist/web/assets/workbench-shell-CP0njkD8.js +0 -16
- package/dist/web/assets/workbench-shell-CP0njkD8.js.br +0 -0
- package/dist/web/assets/workbench-shell-CP0njkD8.js.gz +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,45 @@
|
|
|
4
4
|
|
|
5
5
|
## [Unreleased]
|
|
6
6
|
|
|
7
|
+
## [0.38.0] - 2026-10-16
|
|
8
|
+
|
|
9
|
+
### 新增
|
|
10
|
+
|
|
11
|
+
- Web(含移动端)与桌面端由应用本地仓储统一管理目录、任务、名称、置顶与归档状态;每个目录对应一个磁盘文件夹,首次启动自动迁移旧目录和任务,保留原任务链接与偏好。
|
|
12
|
+
- 两端侧栏发现新版本后可直接打开更新日志并安装更新;桌面端展示下载进度,Web 端复用服务端更新流程。
|
|
13
|
+
|
|
14
|
+
### 优化
|
|
15
|
+
|
|
16
|
+
- 两端保留模型目录声明的原生能力、默认值与未知思考档位;未声明推理能力时隐藏思考强度菜单,避免提交虚构档位;自定义目录地址和同端点能力缓存保持有效。
|
|
17
|
+
- 两端统一选择控件与键盘焦点样式;按项目语言裁剪语法高亮,减少不必要的构建内容。
|
|
18
|
+
|
|
19
|
+
### 修复
|
|
20
|
+
|
|
21
|
+
- 修复旧目录路径规范化异常,保留项目身份与设置;单目录选择替换旧选择,兼容历史多目录项目的迁移与任务归属。
|
|
22
|
+
- 修复桌面端本地目录数据库连接未释放的问题,确保正常关闭应用与清理资源。
|
|
23
|
+
|
|
24
|
+
### 工程
|
|
25
|
+
|
|
26
|
+
- 移除容器构建与镜像发布流程,保留 npm 与各平台桌面安装包的联合发布。
|
|
27
|
+
- 本地 Tauri 打包支持清理构建缓存;补充缓存清理、Windows 路径和原生集成测试,调整普通测试及清理超时以适应冷启动。
|
|
28
|
+
- 同步 Web 与桌面端中英文功能说明、本地目录迁移及模型能力文档。
|
|
29
|
+
|
|
30
|
+
## [0.37.1] - 2026-10-15
|
|
31
|
+
|
|
32
|
+
### 修复
|
|
33
|
+
|
|
34
|
+
- 修复 Web(含移动端)与桌面端历史回合和执行过程共用分页造成的加载混乱;顶部仅加载更早回合,展开过程后独立读取过程条目,保留问题与最终答复的顺序,并支持继续加载和失败重试。
|
|
35
|
+
- 修复两端过程区域中长内容撑开布局的问题,保持内容在当前分屏内展示。
|
|
36
|
+
- 修复两端侧栏任务完成后从快捷区消失的问题;未查看的完成任务保留并排在待审批、运行任务之前,计入分组总数,实际运行数量单独统计;查看任务后清除完成提醒。
|
|
37
|
+
- 修复桌面端发送图片时的协议字段不一致与提交失败反馈,恢复图片附件发送。
|
|
38
|
+
- 补齐桌面端 Git 远端操作、项目文件操作、终端与任务窗口等调用所需的 Tauri 权限,避免原生调用被权限检查拦截。
|
|
39
|
+
|
|
40
|
+
### 工程
|
|
41
|
+
|
|
42
|
+
- 为桌面端添加原生调用与权限声明的全量校验,补充会话分页、图片提交和侧栏完成状态的回归覆盖。
|
|
43
|
+
- 修复 Web 浏览器测试中快照请求的拦截范围、桌面侧栏状态测试的路由环境与定位范围,放宽 Windows 测试与 CI 超时,降低环境竞争导致的失败。
|
|
44
|
+
- 同步两端中英文功能说明、会话加载与性能文档。
|
|
45
|
+
|
|
7
46
|
## [0.37.0] - 2026-10-14
|
|
8
47
|
|
|
9
48
|
### 新增
|
|
@@ -26,7 +65,7 @@
|
|
|
26
65
|
|
|
27
66
|
### 工程
|
|
28
67
|
|
|
29
|
-
- 同步两端中英文功能与操作说明、共用 Git
|
|
68
|
+
- 同步两端中英文功能与操作说明、共用 Git 指南;补充 Windows 本机全量验证记录,保留可信终端按键渲染 P95 为 33.7ms、尚未达到 30ms 目标的实测结果。
|
|
30
69
|
- 修复浏览器组件测试的国际化初始化与面板挂载等待、侧栏固定任务的完整列表定位、Windows 原生测试路径及资源采样中的 PID 复用判断,更新 Rust 审计工具与 CI Node.js 配置。
|
|
31
70
|
|
|
32
71
|
## [0.36.0] - 2026-10-13
|
|
@@ -56,7 +95,7 @@
|
|
|
56
95
|
- macOS 正式发布启用 Developer ID 签名、公证、票据装订与产物验证,Modern 和 Legacy 更新清单保持独立。
|
|
57
96
|
- 补充 Git 提交、独立推送、自启动、共享运行时和助手回复解析回归覆盖,记录 Windows 与 Ubuntu 本机全量验证结果。
|
|
58
97
|
- 隔离桌面存储测试的临时目录,避免系统时钟精度不足导致并发用例互相清理文件。
|
|
59
|
-
- 同步两端中英文说明、Git
|
|
98
|
+
- 同步两端中英文说明、Git 操作指南和联合发布步骤。
|
|
60
99
|
|
|
61
100
|
## [0.35.0] - 2026-10-11
|
|
62
101
|
|
|
@@ -83,7 +122,7 @@
|
|
|
83
122
|
### 工程
|
|
84
123
|
|
|
85
124
|
- 补充历史分页、跨设备同步、事件字节预算、附件异步落盘、Markdown 收尾和工作台面板回归覆盖,并同步发布包检查与桌面构建体积预算。
|
|
86
|
-
-
|
|
125
|
+
- 更新两端中英文功能说明、共用长会话与性能文档。
|
|
87
126
|
|
|
88
127
|
## [0.34.1] - 2026-10-10
|
|
89
128
|
|
|
@@ -187,7 +226,6 @@
|
|
|
187
226
|
|
|
188
227
|
- 修复输入框更新后选区被延迟覆盖、空配置章节导致记忆设置默认值错误,以及分页读取多字节 UTF-8 文件时的边界问题。
|
|
189
228
|
- 修复桌面端偏好写入失败后的退出恢复与终端关闭清理。
|
|
190
|
-
- 修复 Docker 依赖层缺少 Workspace 包清单导致镜像构建失败的问题。
|
|
191
229
|
|
|
192
230
|
## [0.29.0] - 2026-09-29
|
|
193
231
|
|
|
@@ -244,7 +282,7 @@
|
|
|
244
282
|
|
|
245
283
|
### 新增
|
|
246
284
|
|
|
247
|
-
- 将 Codexly Web 与 Codexly Desktop 纳入同一仓库,以同一版本标签发布 npm
|
|
285
|
+
- 将 Codexly Web 与 Codexly Desktop 纳入同一仓库,以同一版本标签发布 npm 和桌面安装包;桌面端统一使用 Codexly 产品名称和 `com.codexly.desktop` 应用标识。
|
|
248
286
|
|
|
249
287
|
### 修复
|
|
250
288
|
|
|
@@ -279,7 +317,6 @@
|
|
|
279
317
|
|
|
280
318
|
### 新增
|
|
281
319
|
|
|
282
|
-
- 支持在 Docker 部署中保留宿主工作区绝对路径、挂载全局 Git 配置与 SSH 凭据,便于复用已有项目和访问远程仓库。
|
|
283
320
|
- 持久化 Thread 历史附件元数据与正文,使附件在任务恢复、分叉和服务重启后仍可安全读取。
|
|
284
321
|
|
|
285
322
|
### 优化
|
|
@@ -291,17 +328,8 @@
|
|
|
291
328
|
- 放宽自定义局域网密码对 Shell 特殊字符的限制,并限制局域网客户端调用仅适用于宿主设备的操作。
|
|
292
329
|
- 修复流式 Markdown 强调标记跨片段到达时可能错误渲染的问题。
|
|
293
330
|
|
|
294
|
-
### 工程
|
|
295
|
-
|
|
296
|
-
- 升级 Docker 构建、登录、元数据与多架构模拟相关 GitHub Actions。
|
|
297
|
-
|
|
298
331
|
## [0.23.0] - 2026-09-18
|
|
299
332
|
|
|
300
|
-
### 新增
|
|
301
|
-
|
|
302
|
-
- 添加生产级 Docker 镜像与可独立下载的 Docker Compose 配置,支持自定义工作区、Codex Home、端口、配对密码及会话期限。
|
|
303
|
-
- 扩展发布流程,在 npm 包通过验证后同步发布带 SBOM 和 provenance 的 `linux/amd64`、`linux/arm64` GHCR 镜像。
|
|
304
|
-
|
|
305
333
|
### 修复
|
|
306
334
|
|
|
307
335
|
- 限制项目选择只能落在配置工作区的真实路径内,阻止通过符号链接越过工作区边界。
|
|
@@ -987,7 +1015,9 @@
|
|
|
987
1015
|
|
|
988
1016
|
- 添加最小化 Tauri 权限、依赖供应链审计与 Provider 运行时完整性校验。
|
|
989
1017
|
|
|
990
|
-
[Unreleased]: https://github.com/BryanHoo/Codexly/compare/v0.
|
|
1018
|
+
[Unreleased]: https://github.com/BryanHoo/Codexly/compare/v0.38.0...HEAD
|
|
1019
|
+
[0.38.0]: https://github.com/BryanHoo/Codexly/compare/v0.37.1...v0.38.0
|
|
1020
|
+
[0.37.1]: https://github.com/BryanHoo/Codexly/compare/v0.37.0...v0.37.1
|
|
991
1021
|
[0.37.0]: https://github.com/BryanHoo/Codexly/compare/v0.36.0...v0.37.0
|
|
992
1022
|
[0.36.0]: https://github.com/BryanHoo/Codexly/compare/v0.35.0...v0.36.0
|
|
993
1023
|
[0.35.0]: https://github.com/BryanHoo/Codexly/compare/v0.34.1...v0.35.0
|
package/README.md
CHANGED
|
@@ -20,6 +20,8 @@ Codexly keeps coding tasks, conversations, project files, and Git work in one pl
|
|
|
20
20
|
<a href="./LICENSE">License</a>
|
|
21
21
|
</p>
|
|
22
22
|
|
|
23
|
+
Directories and tasks are managed locally by Codexly, with one disk folder per directory. Existing data is imported on first launch; see [local directories and tasks](docs/local-catalog.md).
|
|
24
|
+
|
|
23
25
|
## Get Codexly
|
|
24
26
|
|
|
25
27
|
| Edition | Best for | Get started |
|
|
@@ -36,7 +38,7 @@ Desktop packages are available for Windows 10/11 x64, Ubuntu 24.04+ x64, macOS 1
|
|
|
36
38
|
## Features
|
|
37
39
|
|
|
38
40
|
- Follow task responses, commands, approvals, reasoning summaries, and file changes as they arrive, with file edit timing and completion summaries; keep follow-up messages in a persistent queue.
|
|
39
|
-
- Load recent conversation history first
|
|
41
|
+
- Load recent conversation history first, fetch older turns from the top, and load execution details independently when expanding a process; long code previews use shared rendering and bounded highlighting. See [conversation loading and performance](docs/conversation-performance.md).
|
|
40
42
|
- Open up to four task panes in desktop browsers and the desktop app, each with its own draft and message queue. File and Git panels follow the focused task; mobile Web keeps a single-task view.
|
|
41
43
|
- Choose two, three, or four panes from **Split layout** in the task title bar, with auto fit, columns, rows, main-pane, or grid presets; keep the current chat and open new-task pages in the other panes. Available in desktop views.
|
|
42
44
|
- Resize task panes by dragging their dividers, create tasks from the title bar, and see the model and reasoning effort while the composer is collapsed.
|
|
@@ -47,14 +49,14 @@ Desktop packages are available for Windows 10/11 x64, Ubuntu 24.04+ x64, macOS 1
|
|
|
47
49
|
- Follow file citations, code review comments, and follow-up suggestions in assistant responses; selecting a suggestion fills the composer for further editing.
|
|
48
50
|
- Choose a model, reasoning effort, Fast mode, approval policy, and file access level for each task, and configure the global [context window](docs/model-context-window.md).
|
|
49
51
|
- Create projects and directories, search tasks, message history, and project files; inspect changes, work with branches and worktrees, commit selected files, commit and push, or push existing commits independently. See the [Git workflow guide](docs/git-workflow.md). Git actions require a repository at the project root; ordinary subdirectories do not use the parent repository.
|
|
50
|
-
- Switch tasks from the sidebar’s **Pinned** and **Running** shortcuts, with pending approvals
|
|
52
|
+
- Switch tasks from the sidebar’s **Pinned** and **Running** shortcuts, with unread completions first, followed by pending approvals and running tasks; unread completions remain in the group count until viewed. Collapse previews or open the full list, even with projects collapsed.
|
|
51
53
|
- Identify each task's project through labels in the sidebar; collapsed projects still show unread completions, pending approvals, or running tasks.
|
|
52
54
|
- Manage Skills, plugins, MCP services, projects, archived tasks, notifications, and scheduled work. Refresh official plugins to synchronize their state and report partial failures.
|
|
53
55
|
- Request background compression of history files untouched for over 7 days under Settings → Agent → History storage. Web compresses server history; desktop compresses local history. Other Codex clients sharing that directory must support compressed history.
|
|
54
56
|
|
|
55
57
|
**Desktop** adds a native project terminal, global shortcuts, a separate task window, tray integration, and an app-private Codex installation. It supports Windows, Ubuntu, and macOS, with an option in general settings to launch at system login. See the [desktop guide](desktop/README.en.md) for its full feature set and update behavior.
|
|
56
58
|
|
|
57
|
-
**Web** runs a local server and opens in your browser. It supports trusted LAN access from phones and other devices,
|
|
59
|
+
**Web** runs a local server and opens in your browser. It supports trusted LAN access from phones and other devices, task boards, Mermaid diagrams, and customizable workspace backgrounds. The Web edition includes Codex CLI `0.162.0` through `@openai/codex`; external binaries supplied through `--codex-bin <path>` or `CODEXLY_CODEX_BIN` must satisfy `>=0.162.0,<0.163.0`.
|
|
58
60
|
|
|
59
61
|
Browsers and devices connected to the same Web server synchronize project todos and asynchronous questions. Reconnecting or returning to a visible page refreshes their state.
|
|
60
62
|
|
|
@@ -79,7 +81,7 @@ Run `codexly --version` to check the installed version, or `codexly <command> --
|
|
|
79
81
|
Multiple Web instances can run from the same launch directory and share the same Codex Home; occupied ports are skipped automatically. The launch directory does not determine internal configuration or the temporary task directory. Temporary tasks use the user's home directory by default, or the first explicit `--workspace` root. Use different `--codex-home <directory>` values to isolate data.
|
|
80
82
|
|
|
81
83
|
On first launch, sign in with ChatGPT or configure an OpenAI-compatible service that supports the Responses API and `GET /models`.
|
|
82
|
-
Custom providers discover available models
|
|
84
|
+
Custom providers discover available models and preserve declared capabilities and reasoning levels. The reasoning menu stays hidden when the catalog declares no reasoning support. See [models and reasoning effort](docs/model-discovery.md).
|
|
83
85
|
|
|
84
86
|
For regular use, install Codexly globally:
|
|
85
87
|
|
|
@@ -108,50 +110,9 @@ Repeating `enable` updates the same entry with the supplied options. Without `--
|
|
|
108
110
|
|
|
109
111
|
Temporary `npx` installations cannot register startup. Run `codexly autostart repair --now` after moving Node/npm, and disable before uninstalling the package. Use `codexly start --no-open` to suppress the browser during a foreground launch. See the [Web startup at login guide](docs/web-autostart.md) for configuration, environment handling, Linux linger restrictions, and troubleshooting.
|
|
110
112
|
|
|
111
|
-
## Docker
|
|
112
|
-
|
|
113
|
-
Download the user-facing Compose file and start the published image:
|
|
114
|
-
|
|
115
|
-
```bash
|
|
116
|
-
mkdir codexly && cd codexly
|
|
117
|
-
curl -fsSLO https://raw.githubusercontent.com/BryanHoo/Codexly/main/compose.yaml
|
|
118
|
-
curl -fsSLo .env.example https://raw.githubusercontent.com/BryanHoo/Codexly/main/.env.example
|
|
119
|
-
cp .env.example .env
|
|
120
|
-
docker compose pull
|
|
121
|
-
docker compose up --detach
|
|
122
|
-
docker compose logs --tail=50 codexly
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
Open `http://127.0.0.1:3210` and use the random pairing code printed in the logs. The default named volume preserves Codex login data and Codexly's SQLite state. On Linux and macOS, the Compose file mounts the host root at `/workspace`, so every mounted disk is available to the project picker. Set `CODEXLY_WORKSPACE` to expose only one directory and preserve its absolute path inside the container:
|
|
126
|
-
|
|
127
|
-
```bash
|
|
128
|
-
CODEXLY_WORKSPACE=/path/to/projects docker compose up --detach
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
When binding the host `CODEXLY_CODEX_HOME`, also set `CODEXLY_WORKSPACE` to a common parent of the existing projects. Their absolute paths then remain identical on the host and in the container.
|
|
132
|
-
|
|
133
|
-
The container does not automatically inherit the host Git identity. Set `CODEXLY_GIT_CONFIG` to a global Git config file visible inside the container. With an identity-mapped Linux or macOS workspace, use the absolute path to the host `~/.gitconfig` directly. For SSH remotes, set `CODEXLY_SSH_HOME` to the absolute path of the host `~/.ssh` directory.
|
|
134
|
-
|
|
135
|
-
Docker can only access host paths shared with the Docker engine. On Windows, set `CODEXLY_WORKSPACE` to a shared drive such as `C:/` and set `CODEXLY_WORKSPACE_TARGET=/workspace`. Windows and Linux container paths use different absolute path formats, so a Codex Home containing host project records cannot be reused directly. Add extra bind mounts and repeat `--workspace` in `command` when multiple drives are required.
|
|
136
|
-
|
|
137
|
-
| Variable | Purpose |
|
|
138
|
-
| -------------------------- | ---------------------------------------------------------------------- |
|
|
139
|
-
| `CODEXLY_VERSION` | Select the GHCR image tag; defaults to `latest` |
|
|
140
|
-
| `CODEXLY_PORT` | Set both the host and container port; defaults to `3210` |
|
|
141
|
-
| `CODEXLY_WORKSPACE` | Restrict the workspace and preserve its absolute path; defaults to `/` |
|
|
142
|
-
| `CODEXLY_WORKSPACE_TARGET` | Override the container path; use `/workspace` on Windows |
|
|
143
|
-
| `CODEXLY_GIT_CONFIG` | Select a container-visible global Git config file |
|
|
144
|
-
| `CODEXLY_SSH_HOME` | Mount host SSH config, keys, and `known_hosts` read-only |
|
|
145
|
-
| `CODEXLY_CODEX_HOME` | Bind a host Codex home instead of the managed `codexly-data` volume |
|
|
146
|
-
| `CODEXLY_LAN_PASSWORD` | Set a strong fixed access password instead of the logged random code |
|
|
147
|
-
| `CODEXLY_ALLOWED_HOSTS` | Allow comma-separated exact reverse proxy domains |
|
|
148
|
-
| `CODEXLY_SESSION_TTL` | Set a fixed session lifetime such as `12h` |
|
|
149
|
-
|
|
150
|
-
The image entrypoint accepts all normal CLI arguments, so orchestration platforms can replace `command` when needed. See the [complete Docker Compose deployment guide](docs/docker-deployment.md) for workspace, multiple-disk, Codex Home, update, backup, and troubleshooting instructions. Run `pnpm docker:build && pnpm docker:test` in a development checkout to build and smoke-test the local image.
|
|
151
|
-
|
|
152
113
|
## Using the Web Edition
|
|
153
114
|
|
|
154
|
-
Select **New task** for work that does not need a project. For repository work, add one
|
|
115
|
+
Select **New task** for work that does not need a project. For repository work, add one host folder as the project directory, create a task, and submit your request with any required files, images, project references, or Skills. Archived tasks can be restored or permanently deleted from the project task list.
|
|
155
116
|
|
|
156
117
|
The Changes toolbar shows the branch, push destination, and incoming/outgoing counts, with remote configuration, branch publishing, fetch, fast-forward pull, and independent push actions. The footer edits the commit message; the main button commits and **More Git actions** offers **Commit and push**. Drafts persist on the current device by project, worktree, and branch; AI generation can be undone. A failed push preserves the local commit for retry. **Publish branch** establishes upstream tracking, and history marks unpushed commits.
|
|
157
118
|
|
|
@@ -185,7 +146,7 @@ Quote passwords containing shell-special characters. LAN mode uses unencrypted H
|
|
|
185
146
|
|
|
186
147
|
Run `codexly doctor` when startup, Codex, or local data checks fail. Use `codexly --help` for all commands, `codexly start --help` or `codexly doctor --help` for command options, and `codexly --version` for the installed version.
|
|
187
148
|
|
|
188
|
-
Interactive startup and **Settings > About** check for new releases. Built-in updates probe the official registry and a mirror in parallel, use the first source that responds successfully, and fall back to the other source on failure. Package downloads and dependency installation reuse the selection for that update and your npm cache. New releases may appear later if the selected mirror is still synchronizing. A global installation can also be updated with:
|
|
149
|
+
Interactive startup and **Settings > About** check for new releases. When the sidebar shows an update, click the version to read its release notes and install it. Built-in updates probe the official registry and a mirror in parallel, use the first source that responds successfully, and fall back to the other source on failure. Package downloads and dependency installation reuse the selection for that update and your npm cache. New releases may appear later if the selected mirror is still synchronizing. A global installation can also be updated with:
|
|
189
150
|
|
|
190
151
|
```bash
|
|
191
152
|
npm install --global @bryanhu/codexly@latest
|
package/README.zh-CN.md
CHANGED
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
|
|
5
5
|
Codexly 是本地 AI 编程工作台,提供桌面应用和 Web 版。它将编程任务、对话、项目文件与 Git 操作集中在一处。桌面版适合在本机持续工作;Web 版在本地运行,可通过浏览器从电脑或可信局域网中的移动设备访问。项目文件和 Codex 运行时始终留在运行 Codexly 的电脑上。
|
|
6
6
|
|
|
7
|
+
目录和任务由 Codexly 自行管理,每个目录对应一个磁盘文件夹;旧数据首次启动时自动导入,详见[本地目录与任务](docs/local-catalog.md)。
|
|
8
|
+
|
|
7
9
|
## 获取 Codexly
|
|
8
10
|
|
|
9
11
|
| 版本 | 适用场景 | 开始使用 |
|
|
@@ -16,7 +18,7 @@ Codexly 是本地 AI 编程工作台,提供桌面应用和 Web 版。它将编
|
|
|
16
18
|
## 主要功能
|
|
17
19
|
|
|
18
20
|
- 实时查看任务回复、命令、审批、推理摘要和文件变更,查看文件编辑耗时与完成汇总,并用持久化队列安排后续消息。
|
|
19
|
-
-
|
|
21
|
+
- 优先加载最近的会话历史,顶部按需读取更早回合,展开过程后独立加载执行条目;长代码预览共用渲染与有界高亮。详见[会话加载与性能](docs/conversation-performance.md)。
|
|
20
22
|
- 在 Web 桌面浏览器与桌面应用中并行打开最多四个任务,各分屏保留独立草稿与消息队列;文件和 Git 面板跟随当前聚焦任务,Web 移动端保持单任务视图。
|
|
21
23
|
- 从任务标题栏的「分屏布局」选择双、三、四分屏的自适应、横排、竖排、主辅或田字布局;保留当前会话,其余分屏打开新建页。仅桌面视图提供此入口。
|
|
22
24
|
- 拖动分割线调整任务分屏尺寸,从任务标题栏新建任务;收起输入框后仍可查看当前模型与思考量。
|
|
@@ -27,14 +29,14 @@ Codexly 是本地 AI 编程工作台,提供桌面应用和 Web 版。它将编
|
|
|
27
29
|
- 使用助手回复中的文件引用、代码审查评论与后续建议;点击建议后可在输入框继续编辑。
|
|
28
30
|
- 为任务选择模型、思考量、快速模式、审批策略和文件访问范围,并在全局设置中配置[上下文窗口](docs/model-context-window.md)。
|
|
29
31
|
- 新建项目及目录,跨项目搜索任务、历史消息和文件;检查变更、管理分支与 worktree,选择文件后提交或提交并推送,也可独立推送已有提交;详见 [Git 操作指南](docs/git-workflow.md)。Git 操作仅作用于项目根目录对应的仓库,普通子目录不会借用父仓库。
|
|
30
|
-
-
|
|
32
|
+
- 在侧栏「已固定」与「运行中」快捷区切换任务,未查看的完成任务优先于待审批与运行任务展示,并保留在分组总数中,查看后清除完成提醒;可折叠预览或打开完整列表,项目收起时仍可访问。
|
|
31
33
|
- 通过侧栏任务的项目标签识别任务来源;项目收起时仍显示未读完成、等待审批或运行状态。
|
|
32
34
|
- 管理 Skills、插件、MCP 服务、项目、归档任务、通知与定时工作;刷新官方插件可同步状态,并提示部分失败。
|
|
33
35
|
- 在「设置 → 智能体配置 → 历史文件存储」手动请求后台压缩超过 7 天未写入的历史;Web 作用于服务端,桌面端作用于本机。共用历史目录的其他 Codex 客户端需支持压缩格式。
|
|
34
36
|
|
|
35
37
|
**桌面版**提供原生项目终端、全局快捷键、独立任务窗口、托盘集成和应用私有 Codex 安装。支持 Windows、Ubuntu 和 macOS;在通用设置中可启用登录系统后自动启动。完整功能与更新方式见[桌面版指南](desktop/README.md)。
|
|
36
38
|
|
|
37
|
-
**Web
|
|
39
|
+
**Web 版**在本机运行服务并由浏览器访问,支持手机等设备从可信局域网接入、任务看板、Mermaid 图表和自定义工作台背景。Web 版通过 `@openai/codex` 自带 Codex CLI `0.162.0`;使用 `--codex-bin <path>` 或 `CODEXLY_CODEX_BIN` 指定外部版本时,版本必须满足 `>=0.162.0,<0.163.0`。
|
|
38
40
|
|
|
39
41
|
连接同一 Web 服务的浏览器与设备会同步项目待办和异步问答变更;断线重连或页面恢复可见时刷新状态。
|
|
40
42
|
|
|
@@ -59,7 +61,7 @@ Codexly 会自动打开浏览器。若未打开,请访问终端输出的地址
|
|
|
59
61
|
可以在同一启动目录或同一 Codex Home 下同时运行多个 Web 实例;端口占用时自动递增。启动目录不决定应用内部配置或临时任务目录:临时任务默认使用用户主目录,显式指定 `--workspace` 时使用首个工作区。使用不同的 `--codex-home <目录>` 可隔离数据。
|
|
60
62
|
|
|
61
63
|
首次启动时,使用 ChatGPT 登录,或配置兼容 Responses API 和 `GET /models` 的 OpenAI-compatible 服务。
|
|
62
|
-
自定义 Provider
|
|
64
|
+
自定义 Provider 会发现可用模型,保留目录声明的能力与思考档位;未声明推理能力时隐藏思考强度菜单。详见[模型与思考强度](docs/model-discovery.md)。
|
|
63
65
|
|
|
64
66
|
经常使用时可以全局安装:
|
|
65
67
|
|
|
@@ -94,50 +96,9 @@ codexly autostart disable
|
|
|
94
96
|
|
|
95
97
|
配置位置、环境变量、Linux linger 限制和各系统故障排查见 [Web 登录自启动指南](docs/web-autostart.zh-CN.md)。
|
|
96
98
|
|
|
97
|
-
## Docker 部署
|
|
98
|
-
|
|
99
|
-
下载用户版 Compose 配置并启动已发布镜像:
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
mkdir codexly && cd codexly
|
|
103
|
-
curl -fsSLO https://raw.githubusercontent.com/BryanHoo/Codexly/main/compose.yaml
|
|
104
|
-
curl -fsSLo .env.example https://raw.githubusercontent.com/BryanHoo/Codexly/main/.env.example
|
|
105
|
-
cp .env.example .env
|
|
106
|
-
docker compose pull
|
|
107
|
-
docker compose up --detach
|
|
108
|
-
docker compose logs --tail=50 codexly
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
打开 `http://127.0.0.1:3210`,使用日志中的随机配对码。默认命名卷会持久化 Codex 登录数据和 Codexly SQLite 状态。在 Linux 和 macOS 上,Compose 默认把宿主根目录挂载到 `/workspace`,项目选择器可读取所有已挂载磁盘。设置 `CODEXLY_WORKSPACE` 后只暴露指定目录,并在容器中保留其绝对路径:
|
|
112
|
-
|
|
113
|
-
```bash
|
|
114
|
-
CODEXLY_WORKSPACE=/path/to/projects docker compose up --detach
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
绑定宿主 `CODEXLY_CODEX_HOME` 时,应同时把 `CODEXLY_WORKSPACE` 设置为已有项目的公共父目录。Codex 保存的项目绝对路径随后可在宿主和容器中保持一致。
|
|
118
|
-
|
|
119
|
-
容器不会自动继承宿主 Git 身份。将 `CODEXLY_GIT_CONFIG` 设置为容器可见的全局 Git 配置文件;在 Linux 和 macOS 的同路径工作区中可直接填写宿主 `~/.gitconfig` 的绝对路径。使用 SSH 远程时,将 `CODEXLY_SSH_HOME` 设置为宿主 `~/.ssh` 的绝对路径。
|
|
120
|
-
|
|
121
|
-
Docker 只能访问 Docker Engine 已共享的宿主路径。Windows 需将 `CODEXLY_WORKSPACE` 设置为已共享盘符(例如 `C:/`),并设置 `CODEXLY_WORKSPACE_TARGET=/workspace`。Windows 与 Linux 容器的绝对路径格式不同,不能直接复用包含宿主项目记录的 Codex Home;需要多个盘符时,在 Compose 中增加 bind mount,并在 `command` 中重复传入 `--workspace`。
|
|
122
|
-
|
|
123
|
-
| 变量 | 用途 |
|
|
124
|
-
| -------------------------- | --------------------------------------------------- |
|
|
125
|
-
| `CODEXLY_VERSION` | 指定 GHCR 镜像标签,默认 `latest` |
|
|
126
|
-
| `CODEXLY_PORT` | 同时设置宿主与容器端口,默认 `3210` |
|
|
127
|
-
| `CODEXLY_WORKSPACE` | 限制工作区并在容器内保留相同绝对路径,默认 `/` |
|
|
128
|
-
| `CODEXLY_WORKSPACE_TARGET` | 覆盖容器工作区路径,Windows 使用 `/workspace` |
|
|
129
|
-
| `CODEXLY_GIT_CONFIG` | 指定容器可见的全局 Git 配置文件 |
|
|
130
|
-
| `CODEXLY_SSH_HOME` | 只读挂载宿主 SSH 配置、私钥和 `known_hosts` |
|
|
131
|
-
| `CODEXLY_CODEX_HOME` | 绑定宿主 Codex Home,替代默认 `codexly-data` 命名卷 |
|
|
132
|
-
| `CODEXLY_LAN_PASSWORD` | 设置固定强密码,替代日志中生成的随机配对码 |
|
|
133
|
-
| `CODEXLY_ALLOWED_HOSTS` | 设置逗号分隔的反向代理精确域名 |
|
|
134
|
-
| `CODEXLY_SESSION_TTL` | 设置固定会话期限,例如 `12h` |
|
|
135
|
-
|
|
136
|
-
镜像入口支持全部 CLI 参数,编排平台可按需覆盖 `command`。工作区、多磁盘、Codex Home、更新、备份和故障排查参见[完整 Docker Compose 部署指南](docs/docker-deployment.md)。开发仓库可运行 `pnpm docker:build && pnpm docker:test` 构建并冒烟测试本地镜像。
|
|
137
|
-
|
|
138
99
|
## 使用 Web 版
|
|
139
100
|
|
|
140
|
-
|
|
101
|
+
不依赖项目时,直接选择“新建任务”。处理仓库时,先添加一个运行端文件夹作为项目目录,再创建任务,并按需附加文件、图片、项目引用或 Skills 后提交需求。归档的任务可以从项目任务列表中恢复或永久删除。
|
|
141
102
|
|
|
142
103
|
Git 变更面板顶部显示分支、推送目标及待同步数量,提供远端配置、发布分支、获取更新、仅快进拉取与独立推送。底部编辑提交信息,主按钮执行「提交」,「更多 Git 操作」提供「提交并推送」。草稿按项目、worktree 和分支保存在当前设备;AI 生成可撤销,推送失败会保留本地提交并可单独重试。首次推送可通过「发布分支」建立上游,历史中可查看未推送标记。
|
|
143
104
|
|
|
@@ -171,7 +132,7 @@ codexly start --lan
|
|
|
171
132
|
|
|
172
133
|
启动、Codex 或本地数据检查失败时运行 `codexly doctor`。使用 `codexly --help` 查看完整命令,`codexly start --help` 或 `codexly doctor --help` 查看对应选项,`codexly --version` 查看版本。
|
|
173
134
|
|
|
174
|
-
交互式启动和“设置 >
|
|
135
|
+
交互式启动和“设置 > 关于”会检查新版本。侧栏出现更新提示后,点击版本号即可查看更新日志并安装更新。内置更新会并行探测官方源和镜像源,优先使用最先成功响应的源,失败后切换另一个源;同一次更新的包下载和依赖安装复用选源结果及用户的 npm 缓存。若选中的镜像仍在同步,新版本可能稍晚显示。全局安装也可以通过以下命令更新:
|
|
175
136
|
|
|
176
137
|
```bash
|
|
177
138
|
npm install --global @bryanhu/codexly@latest
|