@bryanhu/codexly 0.39.1 → 0.41.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 +277 -499
- package/README.en.md +109 -0
- package/README.md +56 -124
- package/README.zh-CN.md +3 -154
- package/dist/{chunk-WJBQS5HE.js → chunk-7G5JKKJQ.js} +1 -1
- package/dist/chunk-C64TCOGX.js +26 -0
- package/dist/chunk-DW7IKH5A.js +934 -0
- package/dist/{chunk-LGFUYNXR.js → chunk-IUMX3J22.js} +10 -9
- package/dist/{chunk-MZC5MJLV.js → chunk-LRH4LRGC.js} +1 -1
- package/dist/{chunk-YLWOAPZD.js → chunk-LZBJFLMK.js} +3 -3
- package/dist/chunk-QE3SPWGR.js +19 -0
- package/dist/chunk-RVNRCEGR.js +37 -0
- package/dist/chunk-W4XMPSQ6.js +3 -0
- package/dist/cli.js +6 -6
- package/dist/client/index.js +2 -2
- package/dist/command-JURPOVRJ.js +88 -0
- package/dist/core/index.js +1 -1
- package/dist/protocol/index.js +1 -1
- package/dist/providers/claude/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 +44 -15
- package/dist/token-usage-response-FRCIPFC4.js +1 -0
- package/dist/web/.vite/manifest.json +658 -493
- package/dist/web/.vite/manifest.json.br +0 -0
- package/dist/web/.vite/manifest.json.gz +0 -0
- package/dist/web/assets/{abnfDiagram-N423BO3Z-CEEQQmQS.js → abnfDiagram-N423BO3Z-DhOWqv-9.js} +1 -1
- package/dist/web/assets/abnfDiagram-N423BO3Z-DhOWqv-9.js.br +0 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-DhOWqv-9.js.gz +0 -0
- package/dist/web/assets/activity-BLmbhAyP.js +1 -0
- package/dist/web/assets/activity-BLmbhAyP.js.br +0 -0
- package/dist/web/assets/activity-BLmbhAyP.js.gz +0 -0
- package/dist/web/assets/agent-settings-panel-BtT_fA4k.js +1 -0
- package/dist/web/assets/agent-settings-panel-BtT_fA4k.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-BtT_fA4k.js.gz +0 -0
- package/dist/web/assets/{api-connection-fields-rwNEEzre.js → api-connection-fields-WueUKMmU.js} +1 -1
- package/dist/web/assets/api-connection-fields-WueUKMmU.js.br +0 -0
- package/dist/web/assets/api-connection-fields-WueUKMmU.js.gz +0 -0
- package/dist/web/assets/app-update-dialog-BVYanXEH.js +1 -0
- package/dist/web/assets/app-update-dialog-BVYanXEH.js.br +0 -0
- package/dist/web/assets/app-update-dialog-BVYanXEH.js.gz +0 -0
- package/dist/web/assets/{architectureDiagram-T3A2C74G-CF2Ovr5z.js → architectureDiagram-T3A2C74G-XaZ7JCUm.js} +1 -1
- package/dist/web/assets/architectureDiagram-T3A2C74G-XaZ7JCUm.js.br +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-XaZ7JCUm.js.gz +0 -0
- package/dist/web/assets/archived-tasks-dialog-DvYO0otZ.js +1 -0
- package/dist/web/assets/archived-tasks-dialog-DvYO0otZ.js.br +0 -0
- package/dist/web/assets/archived-tasks-dialog-DvYO0otZ.js.gz +0 -0
- package/dist/web/assets/arrow-down-DUHHdu_G.js +1 -0
- package/dist/web/assets/arrow-down-DUHHdu_G.js.br +0 -0
- package/dist/web/assets/arrow-down-DUHHdu_G.js.gz +0 -0
- package/dist/web/assets/arrow-up-right-pwN3fEpQ.js +1 -0
- package/dist/web/assets/arrow-up-right-pwN3fEpQ.js.br +0 -0
- package/dist/web/assets/arrow-up-right-pwN3fEpQ.js.gz +0 -0
- package/dist/web/assets/{background-image-picker-Dt25pttj.js → background-image-picker-qLNVDW8q.js} +1 -1
- package/dist/web/assets/background-image-picker-qLNVDW8q.js.br +0 -0
- package/dist/web/assets/background-image-picker-qLNVDW8q.js.gz +0 -0
- package/dist/web/assets/calendar-days-CaEmURf6.js +1 -0
- package/dist/web/assets/calendar-days-CaEmURf6.js.br +0 -0
- package/dist/web/assets/calendar-days-CaEmURf6.js.gz +0 -0
- package/dist/web/assets/chevron-left-Dsg_A5qc.js +1 -0
- package/dist/web/assets/chevron-left-Dsg_A5qc.js.br +0 -0
- package/dist/web/assets/chevron-left-Dsg_A5qc.js.gz +0 -0
- package/dist/web/assets/{chunk-5RXB4S5H-Bu1iYp4t.js → chunk-5RXB4S5H-Bbuu-yH3.js} +1 -1
- package/dist/web/assets/chunk-5RXB4S5H-Bbuu-yH3.js.br +0 -0
- package/dist/web/assets/{chunk-5RXB4S5H-Bu1iYp4t.js.gz → chunk-5RXB4S5H-Bbuu-yH3.js.gz} +0 -0
- package/dist/web/assets/{chunk-6Q2QTUOP-8pETCK89.js → chunk-6Q2QTUOP-BN9DLH6W.js} +1 -1
- package/dist/web/assets/chunk-6Q2QTUOP-BN9DLH6W.js.br +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-BN9DLH6W.js.gz +0 -0
- package/dist/web/assets/{chunk-GF5L2VYU-Clmi3b75.js → chunk-GF5L2VYU-BMWxsfjW.js} +1 -1
- package/dist/web/assets/chunk-GF5L2VYU-BMWxsfjW.js.br +0 -0
- package/dist/web/assets/{chunk-GF5L2VYU-Clmi3b75.js.gz → chunk-GF5L2VYU-BMWxsfjW.js.gz} +0 -0
- package/dist/web/assets/{chunk-JQJVKLGR-TByUBa_A.js → chunk-JQJVKLGR-CEr3AARA.js} +1 -1
- package/dist/web/assets/chunk-JQJVKLGR-CEr3AARA.js.br +0 -0
- package/dist/web/assets/{chunk-JQJVKLGR-TByUBa_A.js.gz → chunk-JQJVKLGR-CEr3AARA.js.gz} +0 -0
- package/dist/web/assets/{classDiagram-JCYQIIEL-CxEYeVQh.js → classDiagram-JCYQIIEL-BrSlNEkX.js} +1 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-BrSlNEkX.js.br +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-BrSlNEkX.js.gz +0 -0
- package/dist/web/assets/{classDiagram-v2-OCEON4UE-CxEYeVQh.js → classDiagram-v2-OCEON4UE-BrSlNEkX.js} +1 -1
- package/dist/web/assets/classDiagram-v2-OCEON4UE-BrSlNEkX.js.br +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-BrSlNEkX.js.gz +0 -0
- package/dist/web/assets/claude-extensions-pane-B5alX6NW.js +1 -0
- package/dist/web/assets/claude-extensions-pane-B5alX6NW.js.br +0 -0
- package/dist/web/assets/claude-extensions-pane-B5alX6NW.js.gz +0 -0
- package/dist/web/assets/{claude-settings-panel-CZTefufO.js → claude-settings-panel-clCfG3vv.js} +1 -1
- package/dist/web/assets/claude-settings-panel-clCfG3vv.js.br +0 -0
- package/dist/web/assets/claude-settings-panel-clCfG3vv.js.gz +0 -0
- package/dist/web/assets/clipboard-rFJYhGgH.js +1 -0
- package/dist/web/assets/clipboard-rFJYhGgH.js.br +0 -0
- package/dist/web/assets/clipboard-rFJYhGgH.js.gz +0 -0
- package/dist/web/assets/code-highlighter-BSgLVO-5.js +3 -0
- package/dist/web/assets/code-highlighter-BSgLVO-5.js.br +0 -0
- package/dist/web/assets/code-highlighter-BSgLVO-5.js.gz +0 -0
- package/dist/web/assets/codex-resources-pane-17q6mdBu.js +1 -0
- package/dist/web/assets/codex-resources-pane-17q6mdBu.js.br +0 -0
- package/dist/web/assets/codex-resources-pane-17q6mdBu.js.gz +0 -0
- package/dist/web/assets/{commit-settings-panel-_6tz55NU.js → commit-settings-panel-BaCNJ-kP.js} +1 -1
- package/dist/web/assets/commit-settings-panel-BaCNJ-kP.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-BaCNJ-kP.js.gz +0 -0
- package/dist/web/assets/composer-git-menu-DpQl41Lv.js +1 -0
- package/dist/web/assets/composer-git-menu-DpQl41Lv.js.br +0 -0
- package/dist/web/assets/composer-git-menu-DpQl41Lv.js.gz +0 -0
- package/dist/web/assets/{cynefinDiagram-MW4NZA55-BgrsE095.js → cynefinDiagram-MW4NZA55-BRur_bqy.js} +1 -1
- package/dist/web/assets/cynefinDiagram-MW4NZA55-BRur_bqy.js.br +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-BRur_bqy.js.gz +0 -0
- package/dist/web/assets/{diagram-7IWD3JNH-d6DRTRQU.js → diagram-7IWD3JNH-Dm9goIk0.js} +1 -1
- package/dist/web/assets/diagram-7IWD3JNH-Dm9goIk0.js.br +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-Dm9goIk0.js.gz +0 -0
- package/dist/web/assets/{diagram-LBJQPF4R-BTsB33l7.js → diagram-LBJQPF4R-D5MqQQlL.js} +1 -1
- package/dist/web/assets/diagram-LBJQPF4R-D5MqQQlL.js.br +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-D5MqQQlL.js.gz +0 -0
- package/dist/web/assets/{diagram-Q27KOJAE-BR31NpE4.js → diagram-Q27KOJAE-CT9-om9c.js} +1 -1
- package/dist/web/assets/diagram-Q27KOJAE-CT9-om9c.js.br +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-CT9-om9c.js.gz +0 -0
- package/dist/web/assets/{diagram-UB23O5K3-Giiek6vS.js → diagram-UB23O5K3-BNxdNO9N.js} +1 -1
- package/dist/web/assets/diagram-UB23O5K3-BNxdNO9N.js.br +0 -0
- package/dist/web/assets/diagram-UB23O5K3-BNxdNO9N.js.gz +0 -0
- package/dist/web/assets/{dist-DKGpvUu3.js → dist-AuPj8SgL.js} +3 -3
- package/dist/web/assets/dist-AuPj8SgL.js.br +0 -0
- package/dist/web/assets/dist-AuPj8SgL.js.gz +0 -0
- package/dist/web/assets/{dist-dQCgoXMl.js → dist-B5sI2dlF.js} +1 -1
- package/dist/web/assets/dist-B5sI2dlF.js.br +0 -0
- package/dist/web/assets/dist-B5sI2dlF.js.gz +0 -0
- package/dist/web/assets/{dist-CYMTYgBk.js → dist-BsL649bQ.js} +1 -1
- package/dist/web/assets/dist-BsL649bQ.js.br +0 -0
- package/dist/web/assets/dist-BsL649bQ.js.gz +0 -0
- package/dist/web/assets/{dist-C9Xo-R3R.js → dist-CAE1iZ8f.js} +1 -1
- package/dist/web/assets/dist-CAE1iZ8f.js.br +0 -0
- package/dist/web/assets/dist-CAE1iZ8f.js.gz +0 -0
- package/dist/web/assets/{dist-DQyQRzkb.js → dist-CXzWYcrE.js} +1 -1
- package/dist/web/assets/dist-CXzWYcrE.js.br +0 -0
- package/dist/web/assets/dist-CXzWYcrE.js.gz +0 -0
- package/dist/web/assets/{dist-Cdr0TsB-.js → dist-Ceirvrnz.js} +1 -1
- package/dist/web/assets/dist-Ceirvrnz.js.br +0 -0
- package/dist/web/assets/dist-Ceirvrnz.js.gz +0 -0
- package/dist/web/assets/{dist-BRQ8hrs7.js → dist-CuEOCH4w.js} +1 -1
- package/dist/web/assets/dist-CuEOCH4w.js.br +0 -0
- package/dist/web/assets/dist-CuEOCH4w.js.gz +0 -0
- package/dist/web/assets/{dist-D5aBWTdK.js → dist-DGIEKeyr.js} +1 -1
- package/dist/web/assets/dist-DGIEKeyr.js.br +0 -0
- package/dist/web/assets/dist-DGIEKeyr.js.gz +0 -0
- package/dist/web/assets/{dist-BS9Es7bq.js → dist-DTkOac6l.js} +1 -1
- package/dist/web/assets/dist-DTkOac6l.js.br +0 -0
- package/dist/web/assets/dist-DTkOac6l.js.gz +0 -0
- package/dist/web/assets/{dist-CZxkC4sf.js → dist-D_Wo-IHz.js} +1 -1
- package/dist/web/assets/dist-D_Wo-IHz.js.br +0 -0
- package/dist/web/assets/dist-D_Wo-IHz.js.gz +0 -0
- package/dist/web/assets/{dist-Dda7I8j1.js → dist-Dj9a4Mmk.js} +1 -1
- package/dist/web/assets/dist-Dj9a4Mmk.js.br +0 -0
- package/dist/web/assets/dist-Dj9a4Mmk.js.gz +0 -0
- package/dist/web/assets/{dist-BsHoamEK.js → dist-sWM-W4IA.js} +1 -1
- package/dist/web/assets/dist-sWM-W4IA.js.br +0 -0
- package/dist/web/assets/dist-sWM-W4IA.js.gz +0 -0
- package/dist/web/assets/{dist-ZywOhMVT.js → dist-taplUnD4.js} +1 -1
- package/dist/web/assets/dist-taplUnD4.js.br +0 -0
- package/dist/web/assets/dist-taplUnD4.js.gz +0 -0
- package/dist/web/assets/document-navigation-Da1q1H1O.js +3 -0
- package/dist/web/assets/document-navigation-Da1q1H1O.js.br +0 -0
- package/dist/web/assets/document-navigation-Da1q1H1O.js.gz +0 -0
- package/dist/web/assets/download-Be9bQeP_.js +1 -0
- package/dist/web/assets/download-Be9bQeP_.js.br +0 -0
- package/dist/web/assets/download-Be9bQeP_.js.gz +0 -0
- package/dist/web/assets/{ebnfDiagram-BXEA7PRR-D1qXqma3.js → ebnfDiagram-BXEA7PRR-dyKzv1-Q.js} +1 -1
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-dyKzv1-Q.js.br +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-dyKzv1-Q.js.gz +0 -0
- package/dist/web/assets/engine-setup-gate-CsMQae5w.js +1 -0
- package/dist/web/assets/engine-setup-gate-CsMQae5w.js.br +0 -0
- package/dist/web/assets/engine-setup-gate-CsMQae5w.js.gz +0 -0
- package/dist/web/assets/{erDiagram-JOGREHBK-C3UtJXJx.js → erDiagram-JOGREHBK-BmTsV3SL.js} +1 -1
- package/dist/web/assets/erDiagram-JOGREHBK-BmTsV3SL.js.br +0 -0
- package/dist/web/assets/erDiagram-JOGREHBK-BmTsV3SL.js.gz +0 -0
- package/dist/web/assets/extension-list-snCKzRql.js +1 -0
- package/dist/web/assets/extension-list-snCKzRql.js.br +0 -0
- package/dist/web/assets/extension-list-snCKzRql.js.gz +0 -0
- package/dist/web/assets/extension-operation-DyO98T-k.js +1 -0
- package/dist/web/assets/extension-operation-DyO98T-k.js.br +0 -0
- package/dist/web/assets/extension-operation-DyO98T-k.js.gz +0 -0
- package/dist/web/assets/external-link-EUD14c1S.js +1 -0
- package/dist/web/assets/external-link-EUD14c1S.js.br +0 -0
- package/dist/web/assets/external-link-EUD14c1S.js.gz +0 -0
- package/dist/web/assets/file-navigation-view-preference-DZIGllo5.js +1 -0
- package/dist/web/assets/file-navigation-view-preference-DZIGllo5.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-DZIGllo5.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-DvvuhUCl.js +2 -0
- package/dist/web/assets/file-review-dialog-DvvuhUCl.js.br +0 -0
- package/dist/web/assets/file-review-dialog-DvvuhUCl.js.gz +0 -0
- package/dist/web/assets/{flowDiagram-UKHOOZJN-CkmFxY4S.js → flowDiagram-UKHOOZJN-BGsVtiSj.js} +1 -1
- package/dist/web/assets/flowDiagram-UKHOOZJN-BGsVtiSj.js.br +2 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-BGsVtiSj.js.gz +0 -0
- package/dist/web/assets/git-commit-review-DrGBeiJa.js +2 -0
- package/dist/web/assets/git-commit-review-DrGBeiJa.js.br +0 -0
- package/dist/web/assets/git-commit-review-DrGBeiJa.js.gz +0 -0
- package/dist/web/assets/git-history-panel-BJ4OnqMO.js +1 -0
- package/dist/web/assets/git-history-panel-BJ4OnqMO.js.br +0 -0
- package/dist/web/assets/git-history-panel-BJ4OnqMO.js.gz +0 -0
- package/dist/web/assets/global-search-dialog-BZOhh2as.js +2 -0
- package/dist/web/assets/global-search-dialog-BZOhh2as.js.br +0 -0
- package/dist/web/assets/global-search-dialog-BZOhh2as.js.gz +0 -0
- package/dist/web/assets/global-settings-about-Cl_afjE6.js +1 -0
- package/dist/web/assets/global-settings-about-Cl_afjE6.js.br +0 -0
- package/dist/web/assets/global-settings-about-Cl_afjE6.js.gz +0 -0
- package/dist/web/assets/global-settings-fields-Cn48Go_s.js +1 -0
- package/dist/web/assets/global-settings-fields-Cn48Go_s.js.br +0 -0
- package/dist/web/assets/global-settings-fields-Cn48Go_s.js.gz +0 -0
- package/dist/web/assets/global-settings-page-YoE4BNgM.js +2 -0
- package/dist/web/assets/global-settings-page-YoE4BNgM.js.br +0 -0
- package/dist/web/assets/global-settings-page-YoE4BNgM.js.gz +0 -0
- package/dist/web/assets/{global-settings-pets-Dgq86Iwj.js → global-settings-pets-b0XLhN7A.js} +1 -1
- package/dist/web/assets/global-settings-pets-b0XLhN7A.js.br +0 -0
- package/dist/web/assets/global-settings-pets-b0XLhN7A.js.gz +0 -0
- package/dist/web/assets/{highlighted-body-OFNGDK62-CCHSSZrU.js → highlighted-body-OFNGDK62-B9dwCqpt.js} +1 -1
- package/dist/web/assets/highlighted-body-OFNGDK62-B9dwCqpt.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-B9dwCqpt.js.gz +0 -0
- package/dist/web/assets/history-task-timeline-PqOQPY_u.js +1 -0
- package/dist/web/assets/history-task-timeline-PqOQPY_u.js.br +0 -0
- package/dist/web/assets/history-task-timeline-PqOQPY_u.js.gz +0 -0
- package/dist/web/assets/{image-preview-twQXvzOe.js → image-preview-D-s7cdTe.js} +2 -2
- package/dist/web/assets/image-preview-D-s7cdTe.js.br +0 -0
- package/dist/web/assets/image-preview-D-s7cdTe.js.gz +0 -0
- package/dist/web/assets/image-preview-content-CdIl5BJh.js +41 -0
- package/dist/web/assets/image-preview-content-CdIl5BJh.js.br +0 -0
- package/dist/web/assets/image-preview-content-CdIl5BJh.js.gz +0 -0
- package/dist/web/assets/index-CE2J7Z4y.js +4 -0
- package/dist/web/assets/index-CE2J7Z4y.js.br +0 -0
- package/dist/web/assets/index-CE2J7Z4y.js.gz +0 -0
- package/dist/web/assets/index-DNMb0zwW.css +2 -0
- package/dist/web/assets/index-DNMb0zwW.css.br +0 -0
- package/dist/web/assets/index-DNMb0zwW.css.gz +0 -0
- package/dist/web/assets/{infoDiagram-6WML65LV-DuWGeyW3.js → infoDiagram-6WML65LV-BAIuLIiE.js} +1 -1
- package/dist/web/assets/infoDiagram-6WML65LV-BAIuLIiE.js.br +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-BAIuLIiE.js.gz +0 -0
- package/dist/web/assets/{initial-deps-DZ-sH4cr.js → initial-deps-DBOKk1z5.js} +1 -1
- package/dist/web/assets/{initial-deps-DZ-sH4cr.js.br → initial-deps-DBOKk1z5.js.br} +0 -0
- package/dist/web/assets/{initial-deps-DZ-sH4cr.js.gz → initial-deps-DBOKk1z5.js.gz} +0 -0
- package/dist/web/assets/initial-deps-DGiIFgQX.js +2 -0
- package/dist/web/assets/initial-deps-DGiIFgQX.js.br +0 -0
- package/dist/web/assets/initial-deps-DGiIFgQX.js.gz +0 -0
- package/dist/web/assets/initial-deps-DgzPJEbl.js +1 -0
- package/dist/web/assets/initial-deps-DgzPJEbl.js.br +0 -0
- package/dist/web/assets/initial-deps-DgzPJEbl.js.gz +0 -0
- package/dist/web/assets/{initial-deps-n_ZBS3cC.js → initial-deps-YY1DxiPl.js} +1 -1
- package/dist/web/assets/initial-deps-YY1DxiPl.js.br +0 -0
- package/dist/web/assets/initial-deps-YY1DxiPl.js.gz +0 -0
- package/dist/web/assets/initial-deps-ZpffyCug.js +41 -0
- package/dist/web/assets/initial-deps-ZpffyCug.js.br +0 -0
- package/dist/web/assets/initial-deps-ZpffyCug.js.gz +0 -0
- package/dist/web/assets/{initial-deps-BeVJyoJH.js → initial-deps-cK7Q2EcP.js} +1 -1
- package/dist/web/assets/initial-deps-cK7Q2EcP.js.br +0 -0
- package/dist/web/assets/initial-deps-cK7Q2EcP.js.gz +0 -0
- package/dist/web/assets/installed-skills-pane-Cyyzl-Bb.js +1 -0
- package/dist/web/assets/installed-skills-pane-Cyyzl-Bb.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-Cyyzl-Bb.js.gz +0 -0
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-CKSQLCKs.js → ishikawaDiagram-WSZJBQD7-BHAsHeut.js} +1 -1
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-BHAsHeut.js.br +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-BHAsHeut.js.gz +0 -0
- package/dist/web/assets/{kanban-definition-27J2QSJJ-Dy_spa9A.js → kanban-definition-27J2QSJJ-DXD7XDKp.js} +1 -1
- package/dist/web/assets/kanban-definition-27J2QSJJ-DXD7XDKp.js.br +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-DXD7XDKp.js.gz +0 -0
- package/dist/web/assets/maximize-2-DsnIK2kb.js +1 -0
- package/dist/web/assets/maximize-2-DsnIK2kb.js.br +0 -0
- package/dist/web/assets/maximize-2-DsnIK2kb.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-C-lhQebl.js +1 -0
- package/dist/web/assets/mcp-management-pane-C-lhQebl.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-C-lhQebl.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BNvY3Im7.js +1 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BNvY3Im7.js.br +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-BNvY3Im7.js.gz +0 -0
- package/dist/web/assets/message-assistant-directive-BGmxIV_g.js +3 -0
- package/dist/web/assets/message-assistant-directive-BGmxIV_g.js.br +0 -0
- package/dist/web/assets/message-assistant-directive-BGmxIV_g.js.gz +0 -0
- package/dist/web/assets/message-response-DHapkIAN.js +151 -0
- package/dist/web/assets/message-response-DHapkIAN.js.br +0 -0
- package/dist/web/assets/message-response-DHapkIAN.js.gz +0 -0
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-BT3bfYzH.js → mindmap-definition-FAOFIHXS-CLTyPTLI.js} +1 -1
- package/dist/web/assets/mindmap-definition-FAOFIHXS-CLTyPTLI.js.br +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-CLTyPTLI.js.gz +0 -0
- package/dist/web/assets/{model-context-window-input-Blo_ohMF.js → model-context-window-input-dM1RHCkE.js} +1 -1
- package/dist/web/assets/model-context-window-input-dM1RHCkE.js.br +0 -0
- package/dist/web/assets/model-context-window-input-dM1RHCkE.js.gz +0 -0
- package/dist/web/assets/official-plugin-sheet-hYSHhxo1.js +1 -0
- package/dist/web/assets/official-plugin-sheet-hYSHhxo1.js.br +0 -0
- package/dist/web/assets/official-plugin-sheet-hYSHhxo1.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-C3iFHqyq.js +2 -0
- package/dist/web/assets/official-plugins-pane-C3iFHqyq.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-C3iFHqyq.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-DcZytL9D.css +1 -0
- package/dist/web/assets/official-plugins-pane-DcZytL9D.css.br +0 -0
- package/dist/web/assets/official-plugins-pane-DcZytL9D.css.gz +0 -0
- package/dist/web/assets/open-project-path-C3E-UncW.js +1 -0
- package/dist/web/assets/open-project-path-C3E-UncW.js.br +0 -0
- package/dist/web/assets/open-project-path-C3E-UncW.js.gz +0 -0
- package/dist/web/assets/{patch-diff-viewer-D4NrazF3.js → patch-diff-viewer-CAlOstmF.js} +24 -24
- package/dist/web/assets/patch-diff-viewer-CAlOstmF.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-CAlOstmF.js.gz +0 -0
- package/dist/web/assets/{pegDiagram-VL7TDLO6-BDpdrr1s.js → pegDiagram-VL7TDLO6-CEMTFena.js} +1 -1
- package/dist/web/assets/pegDiagram-VL7TDLO6-CEMTFena.js.br +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-CEMTFena.js.gz +0 -0
- package/dist/web/assets/personalization-settings-panel-CjR0RSn0.js +1 -0
- package/dist/web/assets/personalization-settings-panel-CjR0RSn0.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-CjR0RSn0.js.gz +0 -0
- package/dist/web/assets/{pieDiagram-7S7Q4E2Y-DCypkhSo.js → pieDiagram-7S7Q4E2Y-CTU8oZML.js} +1 -1
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-CTU8oZML.js.br +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-CTU8oZML.js.gz +0 -0
- package/dist/web/assets/{project-file-popup-page-DZ4w18TV.js → project-file-popup-page-c0wqWaPR.js} +1 -1
- package/dist/web/assets/project-file-popup-page-c0wqWaPR.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-c0wqWaPR.js.gz +0 -0
- package/dist/web/assets/project-sidebar-timeline-B9S9jfdA.js +1 -0
- package/dist/web/assets/project-sidebar-timeline-B9S9jfdA.js.br +0 -0
- package/dist/web/assets/project-sidebar-timeline-B9S9jfdA.js.gz +0 -0
- package/dist/web/assets/project-source-panel-CDbtcBsp.js +2 -0
- package/dist/web/assets/project-source-panel-CDbtcBsp.js.br +0 -0
- package/dist/web/assets/project-source-panel-CDbtcBsp.js.gz +0 -0
- package/dist/web/assets/prompt-input-Qv__0ZYp.js +1 -0
- package/dist/web/assets/prompt-input-Qv__0ZYp.js.br +0 -0
- package/dist/web/assets/prompt-input-Qv__0ZYp.js.gz +0 -0
- package/dist/web/assets/provider-connection-panel-CFOjjrpy.js +1 -0
- package/dist/web/assets/provider-connection-panel-CFOjjrpy.js.br +0 -0
- package/dist/web/assets/provider-connection-panel-CFOjjrpy.js.gz +0 -0
- package/dist/web/assets/{provider-connection-queries-D0AjZJNn.js → provider-connection-queries-DaUJKsqr.js} +1 -1
- package/dist/web/assets/provider-connection-queries-DaUJKsqr.js.br +0 -0
- package/dist/web/assets/provider-connection-queries-DaUJKsqr.js.gz +0 -0
- package/dist/web/assets/{railroadDiagram-AXF67PYL-d16J9qzD.js → railroadDiagram-AXF67PYL-BOpAz8Rl.js} +1 -1
- package/dist/web/assets/railroadDiagram-AXF67PYL-BOpAz8Rl.js.br +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-BOpAz8Rl.js.gz +0 -0
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-C9hUbT7e.js → requirementDiagram-LRYGKXZP-BOIE6jyw.js} +1 -1
- package/dist/web/assets/requirementDiagram-LRYGKXZP-BOIE6jyw.js.br +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-BOIE6jyw.js.gz +0 -0
- package/dist/web/assets/resources-en-CNabznak.js +1 -0
- package/dist/web/assets/resources-en-CNabznak.js.br +0 -0
- package/dist/web/assets/resources-en-CNabznak.js.gz +0 -0
- package/dist/web/assets/saved-prompts-settings-BIWAIIuI.js +1 -0
- package/dist/web/assets/saved-prompts-settings-BIWAIIuI.js.br +0 -0
- package/dist/web/assets/saved-prompts-settings-BIWAIIuI.js.gz +0 -0
- package/dist/web/assets/scan-C6v7t2yH.js +1 -0
- package/dist/web/assets/scan-C6v7t2yH.js.br +1 -0
- package/dist/web/assets/scan-C6v7t2yH.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-fytjNu3G.js +1 -0
- package/dist/web/assets/scheduled-task-date-time-picker-fytjNu3G.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-fytjNu3G.js.gz +0 -0
- package/dist/web/assets/{scheduled-task-floating-ui~scheduled-task-date-time-picker-BxBVgd4h.js → scheduled-task-floating-ui~scheduled-task-date-time-picker-CS9ppkbD.js} +1 -1
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-CS9ppkbD.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-CS9ppkbD.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-CcEgcbyX.js +2 -0
- package/dist/web/assets/scheduled-tasks-container-CcEgcbyX.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-CcEgcbyX.js.gz +0 -0
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-CGA84wrP.js → sequenceDiagram-SI44F4Z6-CK-WlrkA.js} +1 -1
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-CK-WlrkA.js.br +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-CK-WlrkA.js.gz +0 -0
- package/dist/web/assets/server-A3E6rPSE.js +1 -0
- package/dist/web/assets/server-A3E6rPSE.js.br +1 -0
- package/dist/web/assets/server-A3E6rPSE.js.gz +0 -0
- package/dist/web/assets/{settings-mutation-status-BCHdtmzH.js → settings-mutation-status-C_W3Brzy.js} +1 -1
- package/dist/web/assets/settings-mutation-status-C_W3Brzy.js.br +0 -0
- package/dist/web/assets/settings-mutation-status-C_W3Brzy.js.gz +0 -0
- package/dist/web/assets/settings-save-status-LZlDl2hi.js +1 -0
- package/dist/web/assets/settings-save-status-LZlDl2hi.js.br +0 -0
- package/dist/web/assets/settings-save-status-LZlDl2hi.js.gz +0 -0
- package/dist/web/assets/{shiki-bundle-DTJ4LKMP.js → shiki-bundle-BuVlco8m.js} +1 -1
- package/dist/web/assets/shiki-bundle-BuVlco8m.js.br +1 -0
- package/dist/web/assets/shiki-bundle-BuVlco8m.js.gz +0 -0
- package/dist/web/assets/skills-market-container-3F4yAU_u.js +2 -0
- package/dist/web/assets/skills-market-container-3F4yAU_u.js.br +0 -0
- package/dist/web/assets/skills-market-container-3F4yAU_u.js.gz +0 -0
- package/dist/web/assets/skills-market-container-BoEyKoRt.css +1 -0
- package/dist/web/assets/skills-market-container-BoEyKoRt.css.br +0 -0
- package/dist/web/assets/skills-market-container-BoEyKoRt.css.gz +0 -0
- package/dist/web/assets/split-workspace-menu-content-B-194fx-.js +1 -0
- package/dist/web/assets/split-workspace-menu-content-B-194fx-.js.br +2 -0
- package/dist/web/assets/split-workspace-menu-content-B-194fx-.js.gz +0 -0
- package/dist/web/assets/{stateDiagram-OKZ733FA-D0MVn7g1.js → stateDiagram-OKZ733FA-hLYv6w14.js} +1 -1
- package/dist/web/assets/stateDiagram-OKZ733FA-hLYv6w14.js.br +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-hLYv6w14.js.gz +0 -0
- package/dist/web/assets/{stateDiagram-v2-UEYNNEHI-TUsb_3yM.js → stateDiagram-v2-UEYNNEHI-DGFWGBEN.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DGFWGBEN.js.br +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-DGFWGBEN.js.gz +0 -0
- package/dist/web/assets/{swimlanesDiagram-ULZ7WXOC-8Qb6Pp_Z.js → swimlanesDiagram-ULZ7WXOC-BDqOoYXX.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-BDqOoYXX.js.br +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-BDqOoYXX.js.gz +0 -0
- package/dist/web/assets/{task-timeline-process-history-DQh6F650.js → task-timeline-process-history-FA7FqX65.js} +1 -1
- package/dist/web/assets/task-timeline-process-history-FA7FqX65.js.br +0 -0
- package/dist/web/assets/task-timeline-process-history-FA7FqX65.js.gz +0 -0
- package/dist/web/assets/text-file-editor-Dt1ptrwk.js +14 -0
- package/dist/web/assets/text-file-editor-Dt1ptrwk.js.br +0 -0
- package/dist/web/assets/text-file-editor-Dt1ptrwk.js.gz +0 -0
- package/dist/web/assets/{timeline-definition-Z64GVDOM-DRC7HLeH.js → timeline-definition-Z64GVDOM-C0ggW9ke.js} +1 -1
- package/dist/web/assets/timeline-definition-Z64GVDOM-C0ggW9ke.js.br +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-C0ggW9ke.js.gz +0 -0
- package/dist/web/assets/token-usage-response-oKnLCVhj.js +1 -0
- package/dist/web/assets/token-usage-response-oKnLCVhj.js.br +0 -0
- package/dist/web/assets/token-usage-response-oKnLCVhj.js.gz +0 -0
- package/dist/web/assets/upload-Dc5LJ6y_.js +1 -0
- package/dist/web/assets/upload-Dc5LJ6y_.js.br +0 -0
- package/dist/web/assets/upload-Dc5LJ6y_.js.gz +0 -0
- package/dist/web/assets/usage-statistics-C7zED1sM.css +1 -0
- package/dist/web/assets/usage-statistics-C7zED1sM.css.br +0 -0
- package/dist/web/assets/usage-statistics-C7zED1sM.css.gz +0 -0
- package/dist/web/assets/usage-statistics-CkWR_l2r.js +1 -0
- package/dist/web/assets/usage-statistics-CkWR_l2r.js.br +0 -0
- package/dist/web/assets/usage-statistics-CkWR_l2r.js.gz +0 -0
- package/dist/web/assets/useMutationState-DZj3iudU.js +1 -0
- package/dist/web/assets/useMutationState-DZj3iudU.js.br +0 -0
- package/dist/web/assets/useMutationState-DZj3iudU.js.gz +0 -0
- package/dist/web/assets/utils-O47BBoIx.js +1 -0
- package/dist/web/assets/utils-O47BBoIx.js.br +0 -0
- package/dist/web/assets/utils-O47BBoIx.js.gz +0 -0
- package/dist/web/assets/{vennDiagram-T6HMQDX7-B5BRVmyv.js → vennDiagram-T6HMQDX7-SCXL8ux1.js} +1 -1
- package/dist/web/assets/vennDiagram-T6HMQDX7-SCXL8ux1.js.br +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-SCXL8ux1.js.gz +0 -0
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BVuPKOmW.js → wardleyDiagram-T6FBY63Y-Cqe5SiO4.js} +1 -1
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-Cqe5SiO4.js.br +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-Cqe5SiO4.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-ZSA-8aVd.js +1 -0
- package/dist/web/assets/workbench-inspector-changes-ZSA-8aVd.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-ZSA-8aVd.js.gz +0 -0
- package/dist/web/assets/{workbench-pet-canvas-D7FEem4_.js → workbench-pet-canvas-CHABL440.js} +1 -1
- package/dist/web/assets/workbench-pet-canvas-CHABL440.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-CHABL440.js.gz +0 -0
- package/dist/web/assets/workbench-shell-CR4teS_d.js +17 -0
- package/dist/web/assets/workbench-shell-CR4teS_d.js.br +0 -0
- package/dist/web/assets/workbench-shell-CR4teS_d.js.gz +0 -0
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-Cyq1aXDR.js → xychartDiagram-ELKLHX3M-CWXlmFCE.js} +1 -1
- package/dist/web/assets/xychartDiagram-ELKLHX3M-CWXlmFCE.js.br +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-CWXlmFCE.js.gz +0 -0
- package/dist/web/index.html +9 -9
- package/dist/web/index.html.br +0 -0
- package/dist/web/index.html.gz +0 -0
- package/docs/README.md +51 -0
- package/docs/agent-engines.md +20 -2
- package/docs/conversation-performance.md +37 -0
- package/docs/document-workspace.md +49 -0
- package/docs/faq.md +63 -0
- package/docs/getting-started.en.md +54 -0
- package/docs/getting-started.md +54 -0
- package/docs/global-search.md +49 -0
- package/docs/images/codexly-preview.png +0 -0
- package/docs/local-catalog.md +32 -1
- package/docs/model-context-window.md +10 -4
- package/docs/model-discovery.md +19 -5
- package/docs/scheduled-task-idempotency.md +28 -0
- package/docs/text-file-editing.md +97 -0
- package/docs/usage-statistics.md +51 -0
- package/docs/usage.en.md +77 -0
- package/docs/usage.md +79 -0
- package/docs/web-autostart.md +6 -2
- package/docs/web-autostart.zh-CN.md +6 -2
- package/docs/web.en.md +123 -0
- package/docs/web.md +123 -0
- package/package.json +23 -4
- package/dist/chunk-CUMMPRJN.js +0 -1066
- package/dist/chunk-LZ36FOFS.js +0 -37
- package/dist/chunk-USKJGAQY.js +0 -26
- package/dist/chunk-ZYNXEYSW.js +0 -3
- package/dist/command-FXYNYD4O.js +0 -84
- package/dist/web/assets/abnfDiagram-N423BO3Z-CEEQQmQS.js.br +0 -0
- package/dist/web/assets/abnfDiagram-N423BO3Z-CEEQQmQS.js.gz +0 -0
- package/dist/web/assets/agent-settings-panel-GcyPfLfD.js +0 -1
- package/dist/web/assets/agent-settings-panel-GcyPfLfD.js.br +0 -0
- package/dist/web/assets/agent-settings-panel-GcyPfLfD.js.gz +0 -0
- package/dist/web/assets/api-connection-fields-rwNEEzre.js.br +0 -0
- package/dist/web/assets/api-connection-fields-rwNEEzre.js.gz +0 -0
- package/dist/web/assets/app-update-dialog-DdlLCV_z.js +0 -1
- package/dist/web/assets/app-update-dialog-DdlLCV_z.js.br +0 -0
- package/dist/web/assets/app-update-dialog-DdlLCV_z.js.gz +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-CF2Ovr5z.js.br +0 -0
- package/dist/web/assets/architectureDiagram-T3A2C74G-CF2Ovr5z.js.gz +0 -0
- package/dist/web/assets/arrow-down-BiCRjuX3.js +0 -1
- package/dist/web/assets/arrow-down-BiCRjuX3.js.br +0 -0
- package/dist/web/assets/arrow-down-BiCRjuX3.js.gz +0 -0
- package/dist/web/assets/background-image-picker-Dt25pttj.js.br +0 -0
- package/dist/web/assets/background-image-picker-Dt25pttj.js.gz +0 -0
- package/dist/web/assets/chunk-5RXB4S5H-Bu1iYp4t.js.br +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-8pETCK89.js.br +0 -0
- package/dist/web/assets/chunk-6Q2QTUOP-8pETCK89.js.gz +0 -0
- package/dist/web/assets/chunk-GF5L2VYU-Clmi3b75.js.br +0 -0
- package/dist/web/assets/chunk-JQJVKLGR-TByUBa_A.js.br +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-CxEYeVQh.js.br +0 -0
- package/dist/web/assets/classDiagram-JCYQIIEL-CxEYeVQh.js.gz +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-CxEYeVQh.js.br +0 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-CxEYeVQh.js.gz +0 -0
- package/dist/web/assets/claude-settings-panel-CZTefufO.js.br +0 -0
- package/dist/web/assets/claude-settings-panel-CZTefufO.js.gz +0 -0
- package/dist/web/assets/clipboard-C55zlT9y.js +0 -1
- package/dist/web/assets/clipboard-C55zlT9y.js.br +0 -0
- package/dist/web/assets/clipboard-C55zlT9y.js.gz +0 -0
- package/dist/web/assets/code-highlighter-0Z3RdljI.js +0 -3
- package/dist/web/assets/code-highlighter-0Z3RdljI.js.br +0 -0
- package/dist/web/assets/code-highlighter-0Z3RdljI.js.gz +0 -0
- package/dist/web/assets/commit-settings-panel-_6tz55NU.js.br +0 -0
- package/dist/web/assets/commit-settings-panel-_6tz55NU.js.gz +0 -0
- package/dist/web/assets/composer-git-menu-DpKwGaj6.js +0 -1
- package/dist/web/assets/composer-git-menu-DpKwGaj6.js.br +0 -0
- package/dist/web/assets/composer-git-menu-DpKwGaj6.js.gz +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-BgrsE095.js.br +0 -0
- package/dist/web/assets/cynefinDiagram-MW4NZA55-BgrsE095.js.gz +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-d6DRTRQU.js.br +0 -0
- package/dist/web/assets/diagram-7IWD3JNH-d6DRTRQU.js.gz +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-BTsB33l7.js.br +0 -0
- package/dist/web/assets/diagram-LBJQPF4R-BTsB33l7.js.gz +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-BR31NpE4.js.br +0 -0
- package/dist/web/assets/diagram-Q27KOJAE-BR31NpE4.js.gz +0 -0
- package/dist/web/assets/diagram-UB23O5K3-Giiek6vS.js.br +0 -0
- package/dist/web/assets/diagram-UB23O5K3-Giiek6vS.js.gz +0 -0
- package/dist/web/assets/dist-BRQ8hrs7.js.br +0 -0
- package/dist/web/assets/dist-BRQ8hrs7.js.gz +0 -0
- package/dist/web/assets/dist-BS9Es7bq.js.br +0 -0
- package/dist/web/assets/dist-BS9Es7bq.js.gz +0 -0
- package/dist/web/assets/dist-BsHoamEK.js.br +0 -0
- package/dist/web/assets/dist-BsHoamEK.js.gz +0 -0
- package/dist/web/assets/dist-C5hT0FeX.js +0 -1
- package/dist/web/assets/dist-C5hT0FeX.js.br +0 -0
- package/dist/web/assets/dist-C5hT0FeX.js.gz +0 -0
- package/dist/web/assets/dist-C9Xo-R3R.js.br +0 -0
- package/dist/web/assets/dist-C9Xo-R3R.js.gz +0 -0
- package/dist/web/assets/dist-CYMTYgBk.js.br +0 -0
- package/dist/web/assets/dist-CYMTYgBk.js.gz +0 -0
- package/dist/web/assets/dist-CZxkC4sf.js.br +0 -0
- package/dist/web/assets/dist-CZxkC4sf.js.gz +0 -0
- package/dist/web/assets/dist-Cdr0TsB-.js.br +0 -0
- package/dist/web/assets/dist-Cdr0TsB-.js.gz +0 -0
- package/dist/web/assets/dist-D5aBWTdK.js.br +0 -0
- package/dist/web/assets/dist-D5aBWTdK.js.gz +0 -0
- package/dist/web/assets/dist-DKGpvUu3.js.br +0 -0
- package/dist/web/assets/dist-DKGpvUu3.js.gz +0 -0
- package/dist/web/assets/dist-DQyQRzkb.js.br +0 -0
- package/dist/web/assets/dist-DQyQRzkb.js.gz +0 -0
- package/dist/web/assets/dist-Dda7I8j1.js.br +0 -0
- package/dist/web/assets/dist-Dda7I8j1.js.gz +0 -0
- package/dist/web/assets/dist-ZywOhMVT.js.br +0 -0
- package/dist/web/assets/dist-ZywOhMVT.js.gz +0 -0
- package/dist/web/assets/dist-dQCgoXMl.js.br +0 -0
- package/dist/web/assets/dist-dQCgoXMl.js.gz +0 -0
- package/dist/web/assets/download-DSulXOCZ.js +0 -1
- package/dist/web/assets/download-DSulXOCZ.js.br +0 -0
- package/dist/web/assets/download-DSulXOCZ.js.gz +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-D1qXqma3.js.br +0 -0
- package/dist/web/assets/ebnfDiagram-BXEA7PRR-D1qXqma3.js.gz +0 -0
- package/dist/web/assets/engine-setup-gate-CLwMC0cZ.js +0 -1
- package/dist/web/assets/engine-setup-gate-CLwMC0cZ.js.br +0 -0
- package/dist/web/assets/engine-setup-gate-CLwMC0cZ.js.gz +0 -0
- package/dist/web/assets/erDiagram-JOGREHBK-C3UtJXJx.js.br +0 -0
- package/dist/web/assets/erDiagram-JOGREHBK-C3UtJXJx.js.gz +0 -0
- package/dist/web/assets/external-link-DTvUbh5p.js +0 -1
- package/dist/web/assets/external-link-DTvUbh5p.js.br +0 -0
- package/dist/web/assets/external-link-DTvUbh5p.js.gz +0 -0
- package/dist/web/assets/file-navigation-view-preference-D5PlYpLl.js +0 -1
- package/dist/web/assets/file-navigation-view-preference-D5PlYpLl.js.br +0 -0
- package/dist/web/assets/file-navigation-view-preference-D5PlYpLl.js.gz +0 -0
- package/dist/web/assets/file-review-dialog-BXpGVDGs.js +0 -2
- package/dist/web/assets/file-review-dialog-BXpGVDGs.js.br +0 -0
- package/dist/web/assets/file-review-dialog-BXpGVDGs.js.gz +0 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-CkmFxY4S.js.br +0 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-CkmFxY4S.js.gz +0 -0
- package/dist/web/assets/git-commit-review-B9S0XgSb.js +0 -2
- package/dist/web/assets/git-commit-review-B9S0XgSb.js.br +0 -0
- package/dist/web/assets/git-commit-review-B9S0XgSb.js.gz +0 -0
- package/dist/web/assets/git-history-panel-DfcnGX1A.js +0 -1
- package/dist/web/assets/git-history-panel-DfcnGX1A.js.br +0 -0
- package/dist/web/assets/git-history-panel-DfcnGX1A.js.gz +0 -0
- package/dist/web/assets/global-search-dialog-BKoOMCoP.js +0 -2
- package/dist/web/assets/global-search-dialog-BKoOMCoP.js.br +0 -0
- package/dist/web/assets/global-search-dialog-BKoOMCoP.js.gz +0 -0
- package/dist/web/assets/global-settings-about-DKRCMAdV.js +0 -1
- package/dist/web/assets/global-settings-about-DKRCMAdV.js.br +0 -0
- package/dist/web/assets/global-settings-about-DKRCMAdV.js.gz +0 -0
- package/dist/web/assets/global-settings-fields-CZQRvk7T.js +0 -1
- package/dist/web/assets/global-settings-fields-CZQRvk7T.js.br +0 -0
- package/dist/web/assets/global-settings-fields-CZQRvk7T.js.gz +0 -0
- package/dist/web/assets/global-settings-page-CjcdnklO.js +0 -2
- package/dist/web/assets/global-settings-page-CjcdnklO.js.br +0 -0
- package/dist/web/assets/global-settings-page-CjcdnklO.js.gz +0 -0
- package/dist/web/assets/global-settings-pets-Dgq86Iwj.js.br +0 -0
- package/dist/web/assets/global-settings-pets-Dgq86Iwj.js.gz +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-CCHSSZrU.js.br +0 -0
- package/dist/web/assets/highlighted-body-OFNGDK62-CCHSSZrU.js.gz +0 -0
- package/dist/web/assets/history-location-C01Ls1aP.js +0 -1
- package/dist/web/assets/history-location-C01Ls1aP.js.br +0 -0
- package/dist/web/assets/history-location-C01Ls1aP.js.gz +0 -0
- package/dist/web/assets/history-task-timeline-BCyUvqft.js +0 -1
- package/dist/web/assets/history-task-timeline-BCyUvqft.js.br +0 -0
- package/dist/web/assets/history-task-timeline-BCyUvqft.js.gz +0 -0
- package/dist/web/assets/image-preview-content-D0yaZycO.js +0 -41
- package/dist/web/assets/image-preview-content-D0yaZycO.js.br +0 -0
- package/dist/web/assets/image-preview-content-D0yaZycO.js.gz +0 -0
- package/dist/web/assets/image-preview-twQXvzOe.js.br +0 -0
- package/dist/web/assets/image-preview-twQXvzOe.js.gz +0 -0
- package/dist/web/assets/index-BPQs_vk8.css +0 -2
- package/dist/web/assets/index-BPQs_vk8.css.br +0 -0
- package/dist/web/assets/index-BPQs_vk8.css.gz +0 -0
- package/dist/web/assets/index-WWY-Ngf-.js +0 -4
- package/dist/web/assets/index-WWY-Ngf-.js.br +0 -0
- package/dist/web/assets/index-WWY-Ngf-.js.gz +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-DuWGeyW3.js.br +0 -0
- package/dist/web/assets/infoDiagram-6WML65LV-DuWGeyW3.js.gz +0 -0
- package/dist/web/assets/initial-deps-BeVJyoJH.js.br +0 -0
- package/dist/web/assets/initial-deps-BeVJyoJH.js.gz +0 -0
- package/dist/web/assets/initial-deps-CRaxZAOH.js +0 -41
- package/dist/web/assets/initial-deps-CRaxZAOH.js.br +0 -0
- package/dist/web/assets/initial-deps-CRaxZAOH.js.gz +0 -0
- package/dist/web/assets/initial-deps-DG--jjIA.js +0 -2
- package/dist/web/assets/initial-deps-DG--jjIA.js.br +0 -0
- package/dist/web/assets/initial-deps-DG--jjIA.js.gz +0 -0
- package/dist/web/assets/initial-deps-DNAUCF1H.js +0 -1
- package/dist/web/assets/initial-deps-DNAUCF1H.js.br +0 -0
- package/dist/web/assets/initial-deps-DNAUCF1H.js.gz +0 -0
- package/dist/web/assets/initial-deps-n_ZBS3cC.js.br +0 -0
- package/dist/web/assets/initial-deps-n_ZBS3cC.js.gz +0 -0
- package/dist/web/assets/installed-skills-pane-CqWvZCqX.js +0 -1
- package/dist/web/assets/installed-skills-pane-CqWvZCqX.js.br +0 -0
- package/dist/web/assets/installed-skills-pane-CqWvZCqX.js.gz +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-CKSQLCKs.js.br +0 -0
- package/dist/web/assets/ishikawaDiagram-WSZJBQD7-CKSQLCKs.js.gz +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-Dy_spa9A.js.br +0 -0
- package/dist/web/assets/kanban-definition-27J2QSJJ-Dy_spa9A.js.gz +0 -0
- package/dist/web/assets/maximize-2-Fh0PepSo.js +0 -1
- package/dist/web/assets/maximize-2-Fh0PepSo.js.br +0 -0
- package/dist/web/assets/maximize-2-Fh0PepSo.js.gz +0 -0
- package/dist/web/assets/mcp-management-pane-CRnxzNPO.js +0 -1
- package/dist/web/assets/mcp-management-pane-CRnxzNPO.js.br +0 -0
- package/dist/web/assets/mcp-management-pane-CRnxzNPO.js.gz +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CQ6ZLXfO.js +0 -1
- package/dist/web/assets/mermaid-GHXKKRXX-CQ6ZLXfO.js.br +0 -0
- package/dist/web/assets/mermaid-GHXKKRXX-CQ6ZLXfO.js.gz +0 -0
- package/dist/web/assets/message-assistant-directive-TOAo3G6q.js +0 -3
- package/dist/web/assets/message-assistant-directive-TOAo3G6q.js.br +0 -0
- package/dist/web/assets/message-assistant-directive-TOAo3G6q.js.gz +0 -0
- package/dist/web/assets/message-response-C1VxUFiG.js +0 -151
- package/dist/web/assets/message-response-C1VxUFiG.js.br +0 -0
- package/dist/web/assets/message-response-C1VxUFiG.js.gz +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-BT3bfYzH.js.br +0 -0
- package/dist/web/assets/mindmap-definition-FAOFIHXS-BT3bfYzH.js.gz +0 -0
- package/dist/web/assets/model-context-window-input-Blo_ohMF.js.br +0 -0
- package/dist/web/assets/model-context-window-input-Blo_ohMF.js.gz +0 -0
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css +0 -1
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css.br +0 -0
- package/dist/web/assets/official-plugins-pane-BCxHJLaj.css.gz +0 -0
- package/dist/web/assets/official-plugins-pane-CV6nzUMx.js +0 -1
- package/dist/web/assets/official-plugins-pane-CV6nzUMx.js.br +0 -0
- package/dist/web/assets/official-plugins-pane-CV6nzUMx.js.gz +0 -0
- package/dist/web/assets/patch-diff-viewer-D4NrazF3.js.br +0 -0
- package/dist/web/assets/patch-diff-viewer-D4NrazF3.js.gz +0 -0
- package/dist/web/assets/pdf-preview-Cl3Njv1q.js +0 -3
- package/dist/web/assets/pdf-preview-Cl3Njv1q.js.br +0 -0
- package/dist/web/assets/pdf-preview-Cl3Njv1q.js.gz +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-BDpdrr1s.js.br +0 -0
- package/dist/web/assets/pegDiagram-VL7TDLO6-BDpdrr1s.js.gz +0 -0
- package/dist/web/assets/personalization-settings-panel-DjAbwwrQ.js +0 -1
- package/dist/web/assets/personalization-settings-panel-DjAbwwrQ.js.br +0 -0
- package/dist/web/assets/personalization-settings-panel-DjAbwwrQ.js.gz +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-DCypkhSo.js.br +0 -0
- package/dist/web/assets/pieDiagram-7S7Q4E2Y-DCypkhSo.js.gz +0 -0
- package/dist/web/assets/project-file-popup-page-DZ4w18TV.js.br +0 -0
- package/dist/web/assets/project-file-popup-page-DZ4w18TV.js.gz +0 -0
- package/dist/web/assets/project-source-panel-B7XIYPte.js +0 -2
- package/dist/web/assets/project-source-panel-B7XIYPte.js.br +0 -0
- package/dist/web/assets/project-source-panel-B7XIYPte.js.gz +0 -0
- package/dist/web/assets/prompt-input-CJK7fW5b.js +0 -1
- package/dist/web/assets/prompt-input-CJK7fW5b.js.br +0 -0
- package/dist/web/assets/prompt-input-CJK7fW5b.js.gz +0 -0
- package/dist/web/assets/provider-connection-panel-BI_YJrBr.js +0 -1
- package/dist/web/assets/provider-connection-panel-BI_YJrBr.js.br +0 -0
- package/dist/web/assets/provider-connection-panel-BI_YJrBr.js.gz +0 -0
- package/dist/web/assets/provider-connection-queries-D0AjZJNn.js.br +0 -0
- package/dist/web/assets/provider-connection-queries-D0AjZJNn.js.gz +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-d16J9qzD.js.br +0 -0
- package/dist/web/assets/railroadDiagram-AXF67PYL-d16J9qzD.js.gz +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-C9hUbT7e.js.br +0 -0
- package/dist/web/assets/requirementDiagram-LRYGKXZP-C9hUbT7e.js.gz +0 -0
- package/dist/web/assets/resources-en-DinTd3sL.js +0 -1
- package/dist/web/assets/resources-en-DinTd3sL.js.br +0 -0
- package/dist/web/assets/resources-en-DinTd3sL.js.gz +0 -0
- package/dist/web/assets/scan-DYCzmZAH.js +0 -1
- package/dist/web/assets/scan-DYCzmZAH.js.br +0 -2
- package/dist/web/assets/scan-DYCzmZAH.js.gz +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-BFlpWVIu.js +0 -1
- package/dist/web/assets/scheduled-task-date-time-picker-BFlpWVIu.js.br +0 -0
- package/dist/web/assets/scheduled-task-date-time-picker-BFlpWVIu.js.gz +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BxBVgd4h.js.br +0 -0
- package/dist/web/assets/scheduled-task-floating-ui~scheduled-task-date-time-picker-BxBVgd4h.js.gz +0 -0
- package/dist/web/assets/scheduled-tasks-container-B0OwC2BV.js +0 -2
- package/dist/web/assets/scheduled-tasks-container-B0OwC2BV.js.br +0 -0
- package/dist/web/assets/scheduled-tasks-container-B0OwC2BV.js.gz +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-CGA84wrP.js.br +0 -0
- package/dist/web/assets/sequenceDiagram-SI44F4Z6-CGA84wrP.js.gz +0 -0
- package/dist/web/assets/server-DkIJGjQG.js +0 -1
- package/dist/web/assets/server-DkIJGjQG.js.br +0 -2
- package/dist/web/assets/server-DkIJGjQG.js.gz +0 -0
- package/dist/web/assets/settings-mutation-status-BCHdtmzH.js.br +0 -0
- package/dist/web/assets/settings-mutation-status-BCHdtmzH.js.gz +0 -0
- package/dist/web/assets/settings-save-status-DFCaOej1.js +0 -1
- package/dist/web/assets/settings-save-status-DFCaOej1.js.br +0 -0
- package/dist/web/assets/settings-save-status-DFCaOej1.js.gz +0 -0
- package/dist/web/assets/shiki-bundle-DTJ4LKMP.js.br +0 -2
- package/dist/web/assets/shiki-bundle-DTJ4LKMP.js.gz +0 -0
- package/dist/web/assets/skills-market-container-C8okZy75.css +0 -1
- package/dist/web/assets/skills-market-container-C8okZy75.css.br +0 -0
- package/dist/web/assets/skills-market-container-C8okZy75.css.gz +0 -0
- package/dist/web/assets/skills-market-container-CAnQE1ql.js +0 -2
- package/dist/web/assets/skills-market-container-CAnQE1ql.js.br +0 -0
- package/dist/web/assets/skills-market-container-CAnQE1ql.js.gz +0 -0
- package/dist/web/assets/sliders-horizontal-DFgw0FeX.js +0 -1
- package/dist/web/assets/sliders-horizontal-DFgw0FeX.js.br +0 -0
- package/dist/web/assets/sliders-horizontal-DFgw0FeX.js.gz +0 -0
- package/dist/web/assets/split-workspace-menu-content-B0juQhVb.js +0 -1
- package/dist/web/assets/split-workspace-menu-content-B0juQhVb.js.br +0 -2
- package/dist/web/assets/split-workspace-menu-content-B0juQhVb.js.gz +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-D0MVn7g1.js.br +0 -0
- package/dist/web/assets/stateDiagram-OKZ733FA-D0MVn7g1.js.gz +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-TUsb_3yM.js.br +0 -0
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-TUsb_3yM.js.gz +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-8Qb6Pp_Z.js.br +0 -0
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-8Qb6Pp_Z.js.gz +0 -0
- package/dist/web/assets/task-timeline-process-history-DQh6F650.js.br +0 -0
- package/dist/web/assets/task-timeline-process-history-DQh6F650.js.gz +0 -0
- package/dist/web/assets/text-file-editor-CEKsFPli.js +0 -14
- package/dist/web/assets/text-file-editor-CEKsFPli.js.br +0 -0
- package/dist/web/assets/text-file-editor-CEKsFPli.js.gz +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D-0qL80m.js +0 -1
- package/dist/web/assets/third-party-marketplace-pane-D-0qL80m.js.br +0 -0
- package/dist/web/assets/third-party-marketplace-pane-D-0qL80m.js.gz +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-DRC7HLeH.js.br +0 -0
- package/dist/web/assets/timeline-definition-Z64GVDOM-DRC7HLeH.js.gz +0 -0
- package/dist/web/assets/upload-BypRc41z.js +0 -1
- package/dist/web/assets/upload-BypRc41z.js.br +0 -0
- package/dist/web/assets/upload-BypRc41z.js.gz +0 -0
- package/dist/web/assets/utils-BjjzKOgD.js +0 -1
- package/dist/web/assets/utils-BjjzKOgD.js.br +0 -0
- package/dist/web/assets/utils-BjjzKOgD.js.gz +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-B5BRVmyv.js.br +0 -0
- package/dist/web/assets/vennDiagram-T6HMQDX7-B5BRVmyv.js.gz +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-BVuPKOmW.js.br +0 -0
- package/dist/web/assets/wardleyDiagram-T6FBY63Y-BVuPKOmW.js.gz +0 -0
- package/dist/web/assets/workbench-inspector-changes-CjhVNI8E.js +0 -1
- package/dist/web/assets/workbench-inspector-changes-CjhVNI8E.js.br +0 -0
- package/dist/web/assets/workbench-inspector-changes-CjhVNI8E.js.gz +0 -0
- package/dist/web/assets/workbench-pet-canvas-D7FEem4_.js.br +0 -0
- package/dist/web/assets/workbench-pet-canvas-D7FEem4_.js.gz +0 -0
- package/dist/web/assets/workbench-shell--cyl6F5f.js +0 -17
- package/dist/web/assets/workbench-shell--cyl6F5f.js.br +0 -0
- package/dist/web/assets/workbench-shell--cyl6F5f.js.gz +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-Cyq1aXDR.js.br +0 -0
- package/dist/web/assets/xychartDiagram-ELKLHX3M-Cyq1aXDR.js.gz +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~gjk7lcx5-ClgveiMa.js → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~b4s77zfd-ClgveiMa.js} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~gjk7lcx5-ClgveiMa.js.br → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~b4s77zfd-ClgveiMa.js.br} +0 -0
- /package/dist/web/assets/{scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~gjk7lcx5-ClgveiMa.js.gz → scheduled-task-floating-ui~index~workbench-shell~workbench-inspector-changes~project-source~b4s77zfd-ClgveiMa.js.gz} +0 -0
package/README.en.md
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="./apps/web/public/brand/codexly-mark.svg" alt="Codexly" width="88" />
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<h1 align="center">Codexly</h1>
|
|
6
|
+
|
|
7
|
+
<p align="center">A local AI coding workspace for Codex and Claude, on desktop, the Web, and mobile browsers.</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<a href="https://github.com/BryanHoo/Codexly/releases">Download desktop</a> ·
|
|
11
|
+
<a href="#quick-start">Quick start</a> ·
|
|
12
|
+
<a href="./docs/README.md">Documentation</a> ·
|
|
13
|
+
<a href="./README.md">简体中文</a>
|
|
14
|
+
</p>
|
|
15
|
+
|
|
16
|
+
Codexly brings AI conversations, coding tasks, project files, changes, and Git into one workspace. Work on your computer, or follow progress, answer questions, and continue tasks from a phone or tablet on the same trusted network.
|
|
17
|
+
|
|
18
|
+
Projects and agent processes run on the computer hosting Codexly. Your phone needs no coding environment. Model requests and relevant context are still sent to the model service you configure.
|
|
19
|
+
|
|
20
|
+

|
|
21
|
+
|
|
22
|
+
## Choose how to use it
|
|
23
|
+
|
|
24
|
+
| Client | Best for | Get started |
|
|
25
|
+
| ------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
26
|
+
| Desktop | Daily local development with a project terminal, global shortcuts, a separate task window, and system tray | [Download for macOS, Windows, or Ubuntu](https://github.com/BryanHoo/Codexly/releases) · [Installation](desktop/docs/installation.en.md) |
|
|
27
|
+
| Web | Working in a computer browser or hosting a workspace on your LAN | Install Node.js 24+ and [start the Web server](#web) |
|
|
28
|
+
| Mobile | Following tasks, approving tools, and reviewing files and changes from a phone or tablet browser | Connect to a Web server with LAN access enabled; see [Mobile](#mobile) |
|
|
29
|
+
|
|
30
|
+
Desktop supports Windows 10/11 x64, Ubuntu 24.04+ x64, macOS 14.5+ on Apple Silicon or Intel, and a separate macOS 12.4+ Intel Legacy build. Packages include agent runtimes, with no separate Node.js or Bun installation. Legacy supports Codex only. Mobile uses a touch-friendly Web interface and requires no separate app.
|
|
31
|
+
|
|
32
|
+
## What you can do
|
|
33
|
+
|
|
34
|
+
- **Work with Codex or Claude**: configure either independently, or configure both and choose an engine for each new task. Existing tasks keep their engine.
|
|
35
|
+
- **Follow execution**: see streaming replies, commands, tools, plans, and file changes. Respond to approvals and questions, steer running work, or queue follow-up messages persistently.
|
|
36
|
+
- **Organize projects and tasks**: browse by project or timeline, pin, archive, or restore conversations, and handle unread alerts in the notification center. Open the task board, extensions, and schedules from the sidebar.
|
|
37
|
+
- **Work in parallel**: open up to four task panes in the desktop app or a computer browser, drag to swap their positions, and keep independent drafts and queues. Mobile uses a single-task view.
|
|
38
|
+
- **Read and edit project files**: browse code, Markdown, images, and PDFs, edit supported text files, attach files and images, and reference project files and Skills. LAN devices can download files that cannot be previewed through an explicit prompt.
|
|
39
|
+
- **Reuse instructions and track usage**: save global or project prompts and insert them with `/`. View token statistics for both engines, a yearly heatmap, and daily task details in Settings.
|
|
40
|
+
- **Complete Git work**: review diffs and history, manage branches and worktrees, commit selected files, commit and push, or push existing commits.
|
|
41
|
+
- **Manage agent capabilities**: search, filter, and manage Skills, MCP, and official plugins by engine and global or project scope, with per-item operation status. Configure models, reasoning effort, permissions, and context settings.
|
|
42
|
+
|
|
43
|
+
Each engine retains its own models, permissions, and extension capabilities. Claude supports history recovery, live steering, forks, and compaction. Codex-specific sandbox and Review features do not map to Claude permission modes. Available actions follow the selected engine; see [agent setup](docs/getting-started.en.md).
|
|
44
|
+
|
|
45
|
+
## Quick start
|
|
46
|
+
|
|
47
|
+
### Desktop
|
|
48
|
+
|
|
49
|
+
1. Download the package for your system and architecture from [Releases](https://github.com/BryanHoo/Codexly/releases).
|
|
50
|
+
2. Install and open Codexly. Configure Codex, Claude, or both in Settings; supported existing local configurations can be reused.
|
|
51
|
+
3. Add a project folder, create a task, and send your request.
|
|
52
|
+
|
|
53
|
+
For Windows portable builds, extract the entire ZIP and keep the executable, Claude host, and `runtime` directory together. See [installation, updates, and uninstall](desktop/docs/installation.en.md).
|
|
54
|
+
|
|
55
|
+
### Web
|
|
56
|
+
|
|
57
|
+
On a computer with **Node.js 24+**, run:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
npx --package @bryanhu/codexly@latest codexly start
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The browser opens automatically. Otherwise, use the address printed in the terminal, normally `http://127.0.0.1:3210`. Keep the terminal running; press `Ctrl+C` to stop. Complete agent setup on first use, then add a project.
|
|
64
|
+
|
|
65
|
+
For regular use, install globally:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npm install --global @bryanhu/codexly@latest
|
|
69
|
+
codexly
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
See the [Web guide](docs/web.en.md) for options, background startup, and updates.
|
|
73
|
+
|
|
74
|
+
### Mobile
|
|
75
|
+
|
|
76
|
+
On the computer hosting your projects, run:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npx --package @bryanhu/codexly@latest codexly start --lan
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
Connect your phone or tablet to the same trusted LAN. Open the printed LAN address in its browser and enter the access password. Files, Git credentials, and agent settings belong to the host computer, which must remain awake with the service running.
|
|
83
|
+
|
|
84
|
+
LAN mode uses HTTP: use it only on trusted networks and never expose it directly to the internet. The desktop app does not host mobile connections; start the Web server for mobile access. See [mobile and LAN access](docs/web.en.md#mobile-and-lan-access).
|
|
85
|
+
|
|
86
|
+
## Connect Codex and Claude
|
|
87
|
+
|
|
88
|
+
| Agent | Connection |
|
|
89
|
+
| ------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
90
|
+
| Codex | Sign in with ChatGPT, or configure an OpenAI-compatible service supporting the Responses API and a model list |
|
|
91
|
+
| Claude | Reuse supported local Claude Code credentials, or configure a service supporting the Anthropic Messages API and `/v1/models`; in-app Claude account login is not available |
|
|
92
|
+
|
|
93
|
+
Claude-only setups do not require Codex. Model availability, usage limits, and charges depend on your account or provider; Codexly does not include model credits. Desktop uses local settings; Web and mobile use settings on the Web host.
|
|
94
|
+
|
|
95
|
+
## Documentation and help
|
|
96
|
+
|
|
97
|
+
- [Documentation index](docs/README.md): installation, usage, configuration, and troubleshooting.
|
|
98
|
+
- [First task](docs/getting-started.en.md): connect an agent and start working.
|
|
99
|
+
- [Workspace guide](docs/usage.en.md): conversations, panes, files, Git, extensions, and schedules.
|
|
100
|
+
- [Web guide](docs/web.en.md): startup, mobile connections, and updates.
|
|
101
|
+
- [FAQ (中文)](docs/faq.md): storage, cross-client use, connections, and updates.
|
|
102
|
+
- [Changelog](CHANGELOG.md) · [Issues](https://github.com/BryanHoo/Codexly/issues) · [Security](SECURITY.md)
|
|
103
|
+
- [Contributing](CONTRIBUTING.md): development, verification, and releases.
|
|
104
|
+
|
|
105
|
+
Thanks to the [LinuxDO](https://linux.do/) community for their support.
|
|
106
|
+
|
|
107
|
+
## License
|
|
108
|
+
|
|
109
|
+
[MIT](LICENSE)
|
package/README.md
CHANGED
|
@@ -4,173 +4,105 @@
|
|
|
4
4
|
|
|
5
5
|
<h1 align="center">Codexly</h1>
|
|
6
6
|
|
|
7
|
-
<p align="center">
|
|
8
|
-
A local AI coding workspace for desktop and browser.
|
|
9
|
-
</p>
|
|
10
|
-
|
|
11
|
-
Codexly keeps coding tasks, conversations, project files, and Git work in one place. Choose the desktop app for a self-contained workspace or run the Web edition locally and open it from a browser, including on a mobile device on your trusted network. Your projects and agent runtimes stay on the computer running Codexly.
|
|
7
|
+
<p align="center">支持 Codex 与 Claude 的本地 AI 编程工作台,在桌面、Web 和手机浏览器中处理项目。</p>
|
|
12
8
|
|
|
13
9
|
<p align="center">
|
|
14
|
-
<a href="
|
|
15
|
-
·
|
|
16
|
-
<a href="
|
|
17
|
-
|
|
18
|
-
<a href="./README.zh-CN.md">简体中文</a>
|
|
19
|
-
·
|
|
20
|
-
<a href="./LICENSE">License</a>
|
|
10
|
+
<a href="https://github.com/BryanHoo/Codexly/releases">下载桌面版</a> ·
|
|
11
|
+
<a href="#快速开始">快速开始</a> ·
|
|
12
|
+
<a href="./docs/README.md">使用文档</a> ·
|
|
13
|
+
<a href="./README.en.md">English</a>
|
|
21
14
|
</p>
|
|
22
15
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
## Get Codexly
|
|
16
|
+
Codexly 将 AI 对话、编程任务、项目文件、代码变更与 Git 操作集中在一个工作台。你可以在电脑上持续开发,也可以从同一可信局域网中的手机或平板查看进度、回答问题和继续任务。
|
|
26
17
|
|
|
27
|
-
|
|
28
|
-
| ------- | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
29
|
-
| Desktop | A native workspace with an integrated terminal, task window, system notifications, and tray controls | [Download for Windows, Ubuntu, or macOS](https://github.com/BryanHoo/Codexly/releases) and follow the [desktop installation guide](desktop/docs/installation.en.md) |
|
|
30
|
-
| Web | A local browser workspace accessible from your computer or another device on a trusted LAN | Install Node.js 24+ and [start the Web edition](#start-the-web-edition) |
|
|
18
|
+
项目文件与智能体在运行 Codexly 的电脑上处理;手机无需安装编程环境。使用模型时,相关请求与上下文仍会发送给你配置的模型服务。
|
|
31
19
|
|
|
32
|
-
|
|
20
|
+

|
|
33
21
|
|
|
34
|
-
##
|
|
22
|
+
## 选择你的使用方式
|
|
35
23
|
|
|
36
|
-
|
|
24
|
+
| 使用端 | 适合的场景 | 开始方式 |
|
|
25
|
+
| ------ | ---------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
|
|
26
|
+
| 桌面端 | 在本机长期开发,使用集成终端、全局快捷键、独立任务窗口与系统托盘 | [下载 macOS、Windows 或 Ubuntu 版](https://github.com/BryanHoo/Codexly/releases) · [安装指南](desktop/docs/installation.md) |
|
|
27
|
+
| Web 端 | 在电脑浏览器中使用,或让一台电脑提供局域网工作台 | 安装 Node.js 24+ 后[启动 Web 服务](#web-端) |
|
|
28
|
+
| 移动端 | 在手机、平板浏览器中跟进任务、审批工具操作、查看文件与变更 | 连接已开启局域网访问的 Web 服务,见[移动端连接](#移动端) |
|
|
37
29
|
|
|
38
|
-
|
|
30
|
+
桌面版支持 Windows 10/11 x64、Ubuntu 24.04+ x64、macOS 14.5+(Apple Silicon / Intel),另有 macOS 12.4+ Intel Legacy 版。安装包内置智能体运行时,无需另装 Node.js 或 Bun;Legacy 仅支持 Codex。移动端使用适配小屏和触屏的 Web 界面,无需单独安装 App。
|
|
39
31
|
|
|
40
|
-
|
|
32
|
+
## 你可以用它做什么
|
|
41
33
|
|
|
42
|
-
-
|
|
43
|
-
-
|
|
44
|
-
-
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
49
|
-
-
|
|
50
|
-
- View task-local images embedded in Markdown responses and open them in the image preview.
|
|
51
|
-
- Follow file citations, code review comments, and follow-up suggestions in assistant responses; selecting a suggestion fills the composer for further editing.
|
|
52
|
-
- 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).
|
|
53
|
-
- 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.
|
|
54
|
-
- 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.
|
|
55
|
-
- Identify each task's project through labels in the sidebar; collapsed projects still show unread completions, pending approvals, or running tasks.
|
|
56
|
-
- Manage Skills, plugins, MCP services, projects, archived tasks, notifications, and scheduled work. Refresh official plugins to synchronize their state and report partial failures.
|
|
57
|
-
- 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.
|
|
34
|
+
- **用 Codex 或 Claude 处理项目**:独立配置任一引擎,也可同时配置并在新任务中选择;已有任务保留原引擎。
|
|
35
|
+
- **跟进执行过程**:实时查看回复、命令、工具调用、计划与文件变更,在需要时处理审批和提问;为运行中的任务补充要求,或将后续消息加入持久队列。
|
|
36
|
+
- **组织多项目任务**:按项目或时间线浏览,置顶、归档或恢复对话,通过通知中心处理未读提醒;从侧栏打开任务看板、扩展与定时任务。
|
|
37
|
+
- **并行推进工作**:桌面应用和电脑浏览器支持最多四个任务分屏,可拖动交换位置,各自保留草稿与消息队列;移动端使用单任务视图。
|
|
38
|
+
- **查看与修改项目文件**:浏览文件树、预览代码、Markdown、图片与 PDF,直接编辑支持的文本文件;给对话附加文件或图片,引用项目文件与 Skills;局域网设备可按提示下载无法预览的文件。
|
|
39
|
+
- **复用指令与查看用量**:保存全局或项目常用提示词,用 `/` 插入输入框;在设置中查看双引擎 Token 统计、年度热力图与每日任务明细。
|
|
40
|
+
- **完成 Git 工作流**:审阅差异与提交历史,管理分支和 worktree,选择文件提交、提交并推送,或独立推送已有提交。
|
|
41
|
+
- **管理智能体能力**:在扩展中心按引擎和全局/项目范围管理 Skills、MCP 与官方插件,搜索、筛选并查看操作状态;在设置中调整模型、思考强度、权限及上下文。
|
|
58
42
|
|
|
59
|
-
|
|
43
|
+
两种引擎保留各自的模型、权限和扩展能力,具体可用操作以界面为准。Claude 支持历史恢复、运行中引导、会话分叉与压缩;Codex 的沙盒、Review 等专属能力不等同于 Claude 权限模式。详见[智能体连接与配置](docs/getting-started.md#连接-codex-或-claude)。
|
|
60
44
|
|
|
61
|
-
|
|
45
|
+
## 快速开始
|
|
62
46
|
|
|
63
|
-
|
|
47
|
+
### 桌面端
|
|
64
48
|
|
|
65
|
-
|
|
49
|
+
1. 从 [Releases](https://github.com/BryanHoo/Codexly/releases) 下载对应系统和架构的安装包。
|
|
50
|
+
2. 安装并打开 Codexly,在设置中配置 Codex、Claude 或两者;已有的受支持本机配置可直接复用。
|
|
51
|
+
3. 添加项目文件夹,新建任务并发送需求。
|
|
66
52
|
|
|
67
|
-
|
|
53
|
+
Windows 便携版请完整解压 ZIP,保留程序、Claude 宿主和 `runtime` 目录。各平台安装、更新与卸载步骤见[桌面安装指南](desktop/docs/installation.md)。
|
|
68
54
|
|
|
69
|
-
|
|
55
|
+
### Web 端
|
|
70
56
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
Run the latest version without installing it:
|
|
57
|
+
在安装了 **Node.js 24+** 的电脑上运行:
|
|
74
58
|
|
|
75
59
|
```bash
|
|
76
60
|
npx --package @bryanhu/codexly@latest codexly start
|
|
77
61
|
```
|
|
78
62
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
Run `codexly --version` to check the installed version, or `codexly <command> --help` for command-specific options.
|
|
82
|
-
|
|
83
|
-
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.
|
|
84
|
-
|
|
85
|
-
On first launch, enable Codex, Claude, or both. For Codex, sign in with ChatGPT or configure an OpenAI-compatible service supporting the Responses API and `GET /models`. Claude can reuse existing local credentials or connect to an Anthropic Messages-compatible API using its URL and key; the app does not offer Claude account login. Claude-only setups do not require Codex configuration.
|
|
86
|
-
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).
|
|
63
|
+
浏览器会自动打开。若未打开,请使用终端显示的地址,默认是 `http://127.0.0.1:3210`。保持终端运行,按 `Ctrl+C` 停止服务。首次使用时完成智能体连接,再添加项目。
|
|
87
64
|
|
|
88
|
-
|
|
65
|
+
经常使用时可全局安装:
|
|
89
66
|
|
|
90
67
|
```bash
|
|
91
68
|
npm install --global @bryanhu/codexly@latest
|
|
92
69
|
codexly
|
|
93
70
|
```
|
|
94
71
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
## Web Startup at Login
|
|
98
|
-
|
|
99
|
-
After a global npm installation, configure startup for the current user through the CLI. Supports macOS, Windows, and Ubuntu with a systemd user manager. Both local and LAN startup keep the browser closed.
|
|
100
|
-
|
|
101
|
-
```bash
|
|
102
|
-
codexly autostart enable # Local mode, on the next login
|
|
103
|
-
codexly autostart enable --lan --now # LAN mode, also start now
|
|
104
|
-
codexly autostart status
|
|
105
|
-
codexly autostart credentials
|
|
106
|
-
codexly autostart logs
|
|
107
|
-
codexly autostart restart
|
|
108
|
-
codexly autostart disable
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
Repeating `enable` updates the same entry with the supplied options. Without `--now`, a running instance applies changes on restart or the next login. Use `status` for actual URLs when a port is occupied. LAN startup saves and reuses its password; `credentials` reveals it explicitly. Sessions require authentication again after a restart.
|
|
112
|
-
|
|
113
|
-
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.
|
|
72
|
+
更多启动参数、后台运行和更新方法见 [Web 使用指南](docs/web.md)。
|
|
114
73
|
|
|
115
|
-
|
|
74
|
+
### 移动端
|
|
116
75
|
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
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.
|
|
120
|
-
|
|
121
|
-
Task controls set the model, reasoning, Fast mode, approval, and file access behavior. Notification preferences and the last complete project settings are saved for later tasks. The right inspector provides project files, sources, code changes, Git history, review, and commit actions. Project directories and files always come from the computer running Codexly, including when the UI is opened on another device.
|
|
122
|
-
|
|
123
|
-
Scheduled tasks with an unknown outcome pause further runs. Inspect the linked conversation before deleting and recreating the schedule. Tasks marked as finishing cleanup retry cleanup automatically without another launch.
|
|
124
|
-
|
|
125
|
-
Open a project text file in the source preview to edit it; switch Markdown to source mode first. Changes save when the editor loses focus, you leave the file, or you switch windows; use `⌘/Ctrl+S` to save manually. UTF-8 files up to 2 MiB are editable, with their line endings and BOM preserved. Larger or unsupported files remain read-only. Save errors and conflicts keep your draft in the current window and show recovery actions. Drafts are held in memory and are not guaranteed to survive a refresh, forced exit, or crash.
|
|
126
|
-
|
|
127
|
-
## Web Local Network Access
|
|
128
|
-
|
|
129
|
-
Start trusted LAN access with:
|
|
76
|
+
在提供项目的电脑上启动局域网服务:
|
|
130
77
|
|
|
131
78
|
```bash
|
|
132
|
-
codexly start --lan
|
|
79
|
+
npx --package @bryanhu/codexly@latest codexly start --lan
|
|
133
80
|
```
|
|
134
81
|
|
|
135
|
-
|
|
82
|
+
让手机或平板与电脑连接同一可信局域网,在浏览器中打开终端显示的局域网地址并输入访问密码。项目、Git 身份和智能体配置均来自这台电脑;使用期间电脑须保持开机、唤醒且服务运行。
|
|
136
83
|
|
|
137
|
-
|
|
138
|
-
| --------------------------- | ------------------------------------------------------------------------------------------ |
|
|
139
|
-
| `--port <port>` | Choose the starting port; occupied ports are skipped automatically |
|
|
140
|
-
| `--lan-password <password>` | Set a 16-128 character password containing uppercase, lowercase, and number |
|
|
141
|
-
| `--allowed-host <domain>` | Allow an exact reverse proxy domain; repeat the option for multiple domains |
|
|
142
|
-
| `--session-ttl <duration>` | Set a fixed LAN session lifetime such as `12h`; omitted sessions last until server restart |
|
|
143
|
-
| `--workspace <path>` | Restrict project selection to this absolute root; repeat for multiple roots |
|
|
84
|
+
局域网模式使用 HTTP,仅用于可信网络,不要直接暴露到公网。桌面应用本身不提供手机连接入口;需要移动访问时启动 Web 服务。详见[移动端与局域网访问](docs/web.md#移动端与局域网访问)。
|
|
144
85
|
|
|
145
|
-
|
|
86
|
+
## 连接 Codex 与 Claude
|
|
146
87
|
|
|
147
|
-
|
|
88
|
+
| 智能体 | 连接方式 |
|
|
89
|
+
| ------ | ----------------------------------------------------------------------------------------------------------------------------------- |
|
|
90
|
+
| Codex | 使用 ChatGPT 登录,或配置支持 Responses API 与模型列表的 OpenAI 兼容服务 |
|
|
91
|
+
| Claude | 复用受支持的本机 Claude Code 凭据,或填写支持 Anthropic Messages API 与 `/v1/models` 的服务地址和密钥;应用内不提供 Claude 账号登录 |
|
|
148
92
|
|
|
149
|
-
|
|
93
|
+
只使用 Claude 时无需配置 Codex。模型可用性、额度与费用由所用账号或服务决定,Codexly 不包含模型服务额度。桌面端在本机配置,Web 和移动端在 Web 服务所在电脑配置。
|
|
150
94
|
|
|
151
|
-
|
|
95
|
+
## 文档与帮助
|
|
152
96
|
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
## Help
|
|
160
|
-
|
|
161
|
-
- [Report an issue](https://github.com/BryanHoo/Codexly/issues)
|
|
162
|
-
- [Contributing guide](CONTRIBUTING.md)
|
|
163
|
-
- [Security policy](SECURITY.md)
|
|
164
|
-
- [Changelog](CHANGELOG.md)
|
|
97
|
+
- [文档导航](docs/README.md):按安装、日常使用、配置与排障查找说明。
|
|
98
|
+
- [首次使用](docs/getting-started.md):连接智能体并完成第一个任务。
|
|
99
|
+
- [工作台使用](docs/usage.md):对话、分屏、文件、Git、扩展与定时任务。
|
|
100
|
+
- [常见问题](docs/faq.md):数据保存、跨端使用、连接与更新。
|
|
101
|
+
- [更新日志](CHANGELOG.md) · [问题反馈](https://github.com/BryanHoo/Codexly/issues) · [安全策略](SECURITY.md)
|
|
102
|
+
- [参与贡献](CONTRIBUTING.md):源码开发、验证与发布入口。
|
|
165
103
|
|
|
166
|
-
|
|
104
|
+
感谢 [LinuxDO](https://linux.do/) 社区的支持。
|
|
167
105
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
## License
|
|
106
|
+
## 许可证
|
|
171
107
|
|
|
172
108
|
[MIT](LICENSE)
|
|
173
|
-
|
|
174
|
-
### Claude Agent
|
|
175
|
-
|
|
176
|
-
New conversations can select Codex or Claude Agent (Claude Code). Configure the Claude API, defaults, permissions and tool rules in Settings. Existing conversations keep their engine; Claude account login is not supported. See the [engine guide](docs/agent-engines.md) for architecture, platform requirements and capability boundaries.
|
package/README.zh-CN.md
CHANGED
|
@@ -1,158 +1,7 @@
|
|
|
1
1
|
# Codexly
|
|
2
2
|
|
|
3
|
-
[
|
|
3
|
+
中文说明已设为 GitHub 默认首页,请阅读 [中文 README](README.md)。
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
支持 Codex 与 Claude,在桌面、Web 和移动浏览器中处理本地项目。
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
## 获取 Codexly
|
|
10
|
-
|
|
11
|
-
| 版本 | 适用场景 | 开始使用 |
|
|
12
|
-
| ------ | -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
|
|
13
|
-
| 桌面版 | 原生工作台、集成终端、独立任务窗口、系统通知与托盘 | [下载 Windows、Ubuntu 或 macOS 安装包](https://github.com/BryanHoo/Codexly/releases),按[桌面安装指南](desktop/docs/installation.md)安装 |
|
|
14
|
-
| Web 版 | 本机浏览器工作台,或从可信局域网内的其他设备访问 | 安装 Node.js 24+,按[Web 版启动步骤](#启动-web-版)运行 |
|
|
15
|
-
|
|
16
|
-
桌面安装包支持 Windows 10/11 x64、Ubuntu 24.04+ x64、macOS 14.5+(Apple Silicon / Intel),并提供 macOS 12.4+ Intel 的 Legacy 版本。安装步骤与各平台的系统提示见[安装指南](desktop/docs/installation.md)。桌面安装包已内置目标平台的 Codex 与 Claude 运行时,无需另装 Node、Bun 或首次启动下载;macOS Legacy 仅提供 Codex。
|
|
17
|
-
|
|
18
|
-
## 主要功能
|
|
19
|
-
|
|
20
|
-
- 选择 Codex 或 Claude 处理任务,可单独启用任一引擎;共用聊天、工具审批、附件、任务计划、子代理、消息队列和定时任务。Claude 还支持运行中引导、会话分叉与压缩,详见[智能体引擎与连接](docs/agent-engines.md)。
|
|
21
|
-
|
|
22
|
-
- 实时查看任务回复、命令、审批、推理摘要和文件变更,查看文件编辑耗时与完成汇总,并用持久化队列安排后续消息。
|
|
23
|
-
- 优先加载最近的会话历史,顶部按需读取更早回合,展开过程后独立加载执行条目;长代码预览共用渲染与有界高亮。详见[会话加载与性能](docs/conversation-performance.md)。
|
|
24
|
-
- 在 Web 桌面浏览器与桌面应用中并行打开最多四个任务,各分屏保留独立草稿与消息队列;文件和 Git 面板跟随当前聚焦任务,Web 移动端保持单任务视图。
|
|
25
|
-
- 从任务标题栏的「分屏布局」选择双、三、四分屏的自适应、横排、竖排、主辅或田字布局;保留当前会话,其余分屏打开新建页。仅桌面视图提供此入口。
|
|
26
|
-
- 拖动分割线调整任务分屏尺寸,从任务标题栏新建任务;收起输入框后仍可查看当前模型与思考量。
|
|
27
|
-
- 在桌面或移动端的项目文件源码预览中直接编辑文本,支持撤销重做,并在离开编辑区或切换窗口时自动保存。
|
|
28
|
-
- 阅读流式 Markdown 回复并复制原始文本;缩放、拖动消息图片、项目图片与壁纸,或以原始尺寸查看。
|
|
29
|
-
- 直接预览聊天附件、文件链接与项目文件树中的 PDF。
|
|
30
|
-
- 查看 Markdown 回复中嵌入的任务本地图片,并打开图片预览。
|
|
31
|
-
- 使用助手回复中的文件引用、代码审查评论与后续建议;点击建议后可在输入框继续编辑。
|
|
32
|
-
- 为任务选择模型、思考量、快速模式、审批策略和文件访问范围,并在全局设置中配置[上下文窗口](docs/model-context-window.md)。
|
|
33
|
-
- 新建项目及目录,跨项目搜索任务、历史消息和文件;检查变更、管理分支与 worktree,选择文件后提交或提交并推送,也可独立推送已有提交;详见 [Git 操作指南](docs/git-workflow.md)。Git 操作仅作用于项目根目录对应的仓库,普通子目录不会借用父仓库。 Web(含移动端)与桌面端均可在输入框底部分支菜单创建、选择 worktree;新工作树统一存放在主项目的 `.worktree/` 下。发送消息时再使用输入框中的 Claude / Codex、模型等配置创建任务,任务仍归属原项目。
|
|
34
|
-
- 在侧栏「已固定」与「运行中」快捷区切换任务,未查看的完成任务优先于待审批与运行任务展示,并保留在分组总数中,查看后清除完成提醒;可折叠预览或打开完整列表,项目收起时仍可访问。
|
|
35
|
-
- 通过侧栏任务的项目标签识别任务来源;项目收起时仍显示未读完成、等待审批或运行状态。
|
|
36
|
-
- 管理 Skills、插件、MCP 服务、项目、归档任务、通知与定时工作;刷新官方插件可同步状态,并提示部分失败。
|
|
37
|
-
- 在「设置 → 智能体配置 → 历史文件存储」手动请求后台压缩超过 7 天未写入的历史;Web 作用于服务端,桌面端作用于本机。共用历史目录的其他 Codex 客户端需支持压缩格式。
|
|
38
|
-
|
|
39
|
-
**桌面版**提供原生项目终端、全局快捷键、独立任务窗口、托盘集成和随包内置的智能体运行时。支持 Windows、Ubuntu 和 macOS;在通用设置中可启用登录系统后自动启动。完整功能与更新方式见[桌面版指南](desktop/README.md)。
|
|
40
|
-
|
|
41
|
-
**Web 版**在本机运行服务并由浏览器访问,支持手机等设备从可信局域网接入、任务看板、Mermaid 图表和自定义工作台背景。Web 版通过 `@openai/codex` 自带 Codex CLI `0.163.0`;使用 `--codex-bin <path>` 或 `CODEXLY_CODEX_BIN` 指定外部版本时,版本必须满足 `>=0.163.0,<0.164.0`。
|
|
42
|
-
|
|
43
|
-
连接同一 Web 服务的浏览器与设备会同步项目待办和异步问答变更;断线重连或页面恢复可见时刷新状态。
|
|
44
|
-
|
|
45
|
-
在支持分屏的工作台中,可从侧栏任务菜单打开任务分屏,也可在聊天空白处右键选择向上、向下、向左或向右分屏。快捷键为 macOS `⌘+⌥+方向键`,Windows / Linux `Ctrl+Alt+方向键`;最多四个分屏。
|
|
46
|
-
|
|
47
|
-
拖动分割线可调整相邻分屏尺寸;从通知、搜索或任务看板跳转时保留分屏布局。
|
|
48
|
-
|
|
49
|
-
## 启动 Web 版
|
|
50
|
-
|
|
51
|
-
需要 Node.js >=24.0.0,以及 Chrome/Chromium 116+、Firefox 124+ 或 Safari 17.4+。
|
|
52
|
-
|
|
53
|
-
无需安装,直接运行最新版本:
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
npx --package @bryanhu/codexly@latest codexly start
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Codexly 会自动打开浏览器。若未打开,请访问终端输出的地址;默认地址为 `http://127.0.0.1:3210`。使用期间需保持终端运行,按 `Ctrl+C` 停止。
|
|
60
|
-
|
|
61
|
-
运行 `codexly --version` 查看安装版本,或使用 `codexly <command> --help` 查看命令专属选项。
|
|
62
|
-
|
|
63
|
-
可以在同一启动目录或同一 Codex Home 下同时运行多个 Web 实例;端口占用时自动递增。启动目录不决定应用内部配置或临时任务目录:临时任务默认使用用户主目录,显式指定 `--workspace` 时使用首个工作区。使用不同的 `--codex-home <目录>` 可隔离数据。
|
|
64
|
-
|
|
65
|
-
首次启动时,选择启用 Codex、Claude 或两者。Codex 可使用 ChatGPT 登录,或配置兼容 Responses API 和 `GET /models` 的 OpenAI-compatible 服务;Claude 可复用本机已有认证,或填写兼容 Anthropic Messages API 的地址与密钥,不提供应用内 Claude 账号登录。仅启用 Claude 时无需配置 Codex。
|
|
66
|
-
自定义 Provider 会发现可用模型,保留目录声明的能力与思考档位;未声明推理能力时隐藏思考强度菜单。详见[模型与思考强度](docs/model-discovery.md)。
|
|
67
|
-
|
|
68
|
-
经常使用时可以全局安装:
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
npm install --global @bryanhu/codexly@latest
|
|
72
|
-
codexly
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
安装命令使用 npm 默认源(未自行配置时为官方源),复用 npm 缓存并重新校验过期的包元数据。
|
|
76
|
-
|
|
77
|
-
## Web 登录自启动
|
|
78
|
-
|
|
79
|
-
全局安装后,通过 CLI 配置当前用户登录系统时自动运行。支持 macOS、Windows 和带 systemd 用户服务的 Ubuntu;本机与 LAN 模式均不自动打开浏览器。
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
# 本机模式;下次登录启动
|
|
83
|
-
codexly autostart enable
|
|
84
|
-
|
|
85
|
-
# LAN 模式;同时立即启动
|
|
86
|
-
codexly autostart enable --lan --now
|
|
87
|
-
|
|
88
|
-
codexly autostart status
|
|
89
|
-
codexly autostart credentials
|
|
90
|
-
codexly autostart logs
|
|
91
|
-
codexly autostart restart
|
|
92
|
-
codexly autostart disable
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
`enable` 保存本次提供的启动参数,默认本机模式和端口 3210;重复执行会更新同一个登录项。省略 `--now` 时,当前运行实例在重启或下次登录后应用新配置。端口占用会递增,请以 `status` 输出的实际地址为准。LAN 密码首次生成后保存复用,通过 `credentials` 显式查看;服务重启后需重新认证。
|
|
96
|
-
|
|
97
|
-
需要稳定的全局 npm 安装,不能从 `npx` 临时缓存登记。Node/npm 安装路径变化后运行 `codexly autostart repair --now`;卸载 npm 包前运行 `codexly autostart disable`。普通前台启动可用 `codexly start --no-open` 禁止打开浏览器。
|
|
98
|
-
|
|
99
|
-
配置位置、环境变量、Linux linger 限制和各系统故障排查见 [Web 登录自启动指南](docs/web-autostart.zh-CN.md)。
|
|
100
|
-
|
|
101
|
-
## 使用 Web 版
|
|
102
|
-
|
|
103
|
-
不依赖项目时,直接选择“新建任务”。处理仓库时,先添加一个运行端文件夹作为项目目录,再创建任务,并按需附加文件、图片、项目引用或 Skills 后提交需求。归档的任务可以从项目任务列表中恢复或永久删除。
|
|
104
|
-
|
|
105
|
-
Git 变更面板顶部显示分支、推送目标及待同步数量,提供远端配置、发布分支、获取更新、仅快进拉取与独立推送。底部编辑提交信息,主按钮执行「提交」,「更多 Git 操作」提供「提交并推送」。草稿按项目、worktree 和分支保存在当前设备;AI 生成可撤销,推送失败会保留本地提交并可单独重试。首次推送可通过「发布分支」建立上游,历史中可查看未推送标记。
|
|
106
|
-
|
|
107
|
-
任务控件用于设置模型、思考量、快速模式、审批方式和文件访问范围。通知偏好与项目最近一次完整设置会保存给后续任务。右侧检查器提供项目文件、来源、代码变更、Git 历史、审查和提交操作。即使从其他设备打开界面,项目目录和文件仍来自运行 Codexly 的电脑。
|
|
108
|
-
|
|
109
|
-
定时任务显示“结果未知”时会暂停后续运行,请先查看关联对话;确认后可删除该计划并重新创建。“已启动,正在收尾”会自动重试清理,无需再次运行。
|
|
110
|
-
|
|
111
|
-
打开项目文本文件的源码预览即可编辑,Markdown 需先切换到源码模式。编辑区失焦、离开文件或切换窗口时自动保存,也可按 `⌘/Ctrl+S` 手动保存。支持最大 2 MiB 的 UTF-8 文本,并保留换行与 BOM;更大或不支持的文件保持只读。保存失败或发生外部修改冲突时,当前窗口保留草稿并显示恢复操作。草稿仅保存在内存中,刷新、强制退出或崩溃后不保证恢复。
|
|
112
|
-
|
|
113
|
-
## Web 局域网访问
|
|
114
|
-
|
|
115
|
-
在可信局域网中启动:
|
|
116
|
-
|
|
117
|
-
```bash
|
|
118
|
-
codexly start --lan
|
|
119
|
-
```
|
|
120
|
-
|
|
121
|
-
终端会输出局域网地址和随机访问密码。常用选项如下:
|
|
122
|
-
|
|
123
|
-
| 选项 | 用途 |
|
|
124
|
-
| --------------------------- | ---------------------------------------------------- |
|
|
125
|
-
| `--port <port>` | 指定起始端口;端口被占用时自动尝试后续端口 |
|
|
126
|
-
| `--lan-password <password>` | 设置 16 至 128 位密码,必须包含大小写字母和数字 |
|
|
127
|
-
| `--allowed-host <domain>` | 允许精确的反向代理域名;多个域名可重复传入 |
|
|
128
|
-
| `--session-ttl <duration>` | 设置固定会话期限,如 `12h`;省略时持续到 Server 重启 |
|
|
129
|
-
| `--workspace <path>` | 限制项目选择的绝对根目录;多个根目录可重复传入 |
|
|
130
|
-
|
|
131
|
-
密码含 Shell 特殊字符时请使用引号。局域网模式使用未加密 HTTP,只能用于可信网络,禁止直接暴露到互联网。重启 Codexly 会使随机配对码和全部会话失效;显式设置的固定密码保持有效。
|
|
132
|
-
|
|
133
|
-
## Web 诊断与更新
|
|
134
|
-
|
|
135
|
-
启动、Codex 或本地数据检查失败时运行 `codexly doctor`。使用 `codexly --help` 查看完整命令,`codexly start --help` 或 `codexly doctor --help` 查看对应选项,`codexly --version` 查看版本。
|
|
136
|
-
|
|
137
|
-
交互式启动和“设置 > 关于”会检查新版本。侧栏出现更新提示后,点击版本号即可查看更新日志并安装更新。内置更新会并行探测官方源和镜像源,优先使用最先成功响应的源,失败后切换另一个源;同一次更新的包下载和依赖安装复用选源结果及用户的 npm 缓存。若选中的镜像仍在同步,新版本可能稍晚显示。全局安装也可以通过以下命令更新:
|
|
138
|
-
|
|
139
|
-
```bash
|
|
140
|
-
npm install --global @bryanhu/codexly@latest
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
如果 Linux 上的旧版本通过 `sudo npm install --global` 安装到系统目录,首次升级到支持提权更新的版本时需要手动执行一次上述命令并在前面加上 `sudo`。后续内置更新会在需要时请求 `sudo` 权限。
|
|
144
|
-
|
|
145
|
-
## 获取帮助
|
|
146
|
-
|
|
147
|
-
- [问题反馈](https://github.com/BryanHoo/Codexly/issues)
|
|
148
|
-
- [贡献指南](CONTRIBUTING.md)
|
|
149
|
-
- [安全策略](SECURITY.md)
|
|
150
|
-
- [版本记录](CHANGELOG.md)
|
|
151
|
-
|
|
152
|
-
## 许可证
|
|
153
|
-
|
|
154
|
-
[MIT](LICENSE)
|
|
155
|
-
|
|
156
|
-
### Claude Agent
|
|
157
|
-
|
|
158
|
-
新聊天可选择 Codex 或 Claude Agent(Claude Code)。在设置页配置 Claude API、默认模型、权限和工具规则;历史聊天不能切换引擎,不提供 Claude 官方账号登录。架构、平台要求和能力边界见[双引擎说明](docs/agent-engines.md)。
|
|
7
|
+
[下载桌面版](https://github.com/BryanHoo/Codexly/releases) · [使用文档](docs/README.md) · [English](README.en.md)
|