specrails-desktop 2.58.0 → 2.59.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/README.md +2 -5
- package/client/dist/assets/{ActivityFeedPage-BQGppIR0.js → ActivityFeedPage-DBFt8ZHP.js} +1 -1
- package/client/dist/assets/AgentBrowserCapture-DiQx0W67.js +1 -0
- package/client/dist/assets/AgentModeAnalyticsPane-BmDSXp_J.js +2 -0
- package/client/dist/assets/AgentModeCodePane-BLQLPSwr.js +2 -0
- package/client/dist/assets/{AgentModeJobsPane-DR_06oqH.js → AgentModeJobsPane-BbTXdKUa.js} +1 -1
- package/client/dist/assets/{AgentsPage-BKIKjm_1.js → AgentsPage-Dei1jGR8.js} +3 -3
- package/client/dist/assets/{AnalyticsPage-069npRVo.js → AnalyticsPage-BhkeGIGn.js} +1 -1
- package/client/dist/assets/CodePage-B_9yYWUx.js +3 -0
- package/client/dist/assets/{DesktopAnalyticsPage-qtWAPM47.js → DesktopAnalyticsPage-DAcfEJac.js} +1 -1
- package/client/dist/assets/DocsDialog-WCuiYgsc.js +11 -0
- package/client/dist/assets/DocsPage-bGVYTMTU.js +11 -0
- package/client/dist/assets/{ExportDropdown-BcMpvV89.js → ExportDropdown-CsodZ-yb.js} +1 -1
- package/client/dist/assets/InteractiveJobComposer-D5fh_eVL.js +19 -0
- package/client/dist/assets/JobDetailModal-DlpXF61O.js +1 -0
- package/client/dist/assets/JobDetailPage-2yR19_Lb.js +1 -0
- package/client/dist/assets/JobsPage-CS9IR6Dq.js +1 -0
- package/client/dist/assets/LoopBuilderPage-BwiAtmOr.js +1 -0
- package/client/dist/assets/{LoopPreviewModal-je5pSCf-.js → LoopPreviewModal--upwvgTv.js} +1 -1
- package/client/dist/assets/LoopWindowSurface-DRnUixtl.js +1 -0
- package/client/dist/assets/LoopsPage-Xm3nRToQ.js +2 -0
- package/client/dist/assets/MinimizedChatsContext-D_8L4EWZ.js +1 -0
- package/client/dist/assets/PluginsPage-CAFQ1B4Q.js +2 -0
- package/client/dist/assets/ProjectSettingsDialog-DYSO4v90.js +1 -0
- package/client/dist/assets/{RepositoryDeliveries-BiwJuS8r.js → RepositoryDeliveries-CbQmW7Qx.js} +1 -1
- package/client/dist/assets/RepositoryScopeSelector-DKzvIGSZ.js +2 -0
- package/client/dist/assets/ReviewPacketPage-SDBhYdQB.js +4 -0
- package/client/dist/assets/TemplatePreviewModal-DHBUds51.js +1 -0
- package/client/dist/assets/TicketDetailModalContext-UAeNm7BB.js +16 -0
- package/client/dist/assets/{Trans-D3AfDylf.js → Trans-DExd3Z00.js} +1 -1
- package/client/dist/assets/agent-BElLtdKP.js +1 -0
- package/client/dist/assets/agent-C-m9VugX.js +1 -0
- package/client/dist/assets/agent-CGSKxfZk.js +1 -0
- package/client/dist/assets/agent-CW74ODDP.js +1 -0
- package/client/dist/assets/agent-DeCAZDhL.js +1 -0
- package/client/dist/assets/agent-DrM4qned.js +1 -0
- package/client/dist/assets/agent-KdIXq3w5.js +1 -0
- package/client/dist/assets/agent-jK8mCisM.js +1 -0
- package/client/dist/assets/{agentRuntime-DGz_IqKW.js → agentRuntime-15Pkk6we.js} +1 -1
- package/client/dist/assets/agentRuntime-Bpx3yWHK.js +1 -0
- package/client/dist/assets/{agentRuntime-Bg9tbmqm.js → agentRuntime-C78n13To.js} +1 -1
- package/client/dist/assets/{agentRuntime-D-GJVGkj.js → agentRuntime-CCI7XF4c.js} +1 -1
- package/client/dist/assets/{agentRuntime-D2__CVI_.js → agentRuntime-CKDHe2-a.js} +1 -1
- package/client/dist/assets/{agentRuntime-D35dGVOP.js → agentRuntime-Ddqvp2bP.js} +1 -1
- package/client/dist/assets/{agentRuntime-hInH9Fzj.js → agentRuntime-TXPQowKJ.js} +1 -1
- package/client/dist/assets/{agentRuntime-O1liDt6G.js → agentRuntime-hqZRy08E.js} +1 -1
- package/client/dist/assets/{builder-DGETbtZj.js → builder-B9gorTnT.js} +1 -1
- package/client/dist/assets/{builder-DyQperXU.js → builder-Bvw5s3Mi.js} +1 -1
- package/client/dist/assets/{builder-C1neIYGR.js → builder-CL5l4dU3.js} +1 -1
- package/client/dist/assets/{builder-DXEJUlC0.js → builder-CVDTVrQX.js} +1 -1
- package/client/dist/assets/{builder-CzW5ovyI.js → builder-CpS9liE9.js} +1 -1
- package/client/dist/assets/{builder-CvnFm0im.js → builder-DNctIL9Q.js} +1 -1
- package/client/dist/assets/{builder-D06L7iPy.js → builder-De2NxX6o.js} +1 -1
- package/client/dist/assets/{builder-C0FyvM83.js → builder-DeYT7Y-m.js} +1 -1
- package/client/dist/assets/{button-Ccc9Dc-D.js → button-D1xExSTF.js} +1 -1
- package/client/dist/assets/{common-DmsclwjP.js → common-Bdi0qN4S.js} +1 -1
- package/client/dist/assets/{common-C4Yvvhp6.js → common-Bhb9zN1P.js} +1 -1
- package/client/dist/assets/{common-od8WThlf.js → common-BykKlZg1.js} +1 -1
- package/client/dist/assets/{common-C0BOdeNi.js → common-CvnNNSJA.js} +1 -1
- package/client/dist/assets/{common-BCK7c9Pv.js → common-D5zk_mqq.js} +1 -1
- package/client/dist/assets/{common-DpLWwgI1.js → common-DQNO_al5.js} +1 -1
- package/client/dist/assets/{common-OCvl3c8t.js → common-Dax30Vmp.js} +1 -1
- package/client/dist/assets/{common-c0aujEZC.js → common-DkllpVSb.js} +1 -1
- package/client/dist/assets/{dialog-xXB2q5HJ.js → dialog-CMgps2MY.js} +1 -1
- package/client/dist/assets/external-link-D6XxC_Cu.js +1 -0
- package/client/dist/assets/file-text-BcLCfcWZ.js +1 -0
- package/client/dist/assets/{formatDistanceToNow-aBss1Nai.js → formatDistanceToNow-aw7H5ORC.js} +1 -1
- package/client/dist/assets/{getTimezoneOffsetInMilliseconds-DOGj1Mfz.js → getTimezoneOffsetInMilliseconds-NyC7gZJX.js} +1 -1
- package/client/dist/assets/index-CahchzS5.css +2 -0
- package/client/dist/assets/index-JSTZVJfe.js +83 -0
- package/client/dist/assets/integrations-BkpRUbvp.js +1 -0
- package/client/dist/assets/integrations-Bo8qbJf4.js +1 -0
- package/client/dist/assets/integrations-CmSrKzZb.js +1 -0
- package/client/dist/assets/integrations-DGtq26Rr.js +1 -0
- package/client/dist/assets/integrations-De38GFnQ.js +1 -0
- package/client/dist/assets/integrations-Dw6zdtb-.js +1 -0
- package/client/dist/assets/integrations-Dwl9KQp0.js +1 -0
- package/client/dist/assets/integrations-Refg_d2I.js +1 -0
- package/client/dist/assets/jira-api-DlXaRwA3.js +1 -0
- package/client/dist/assets/{jobs-KG4Sn12X.js → jobs-1G3wodhl.js} +1 -1
- package/client/dist/assets/{jobs-6_-r75yC.js → jobs-B4pu8TdF.js} +1 -1
- package/client/dist/assets/{jobs-pPv4KWjb.js → jobs-BD47Ov11.js} +1 -1
- package/client/dist/assets/{jobs-B1yqyId5.js → jobs-BLOoVRRl.js} +1 -1
- package/client/dist/assets/{jobs-BKiK-ZWh.js → jobs-CSrRx5lD.js} +1 -1
- package/client/dist/assets/{jobs-BFuV7ttH.js → jobs-DZAbh1m2.js} +1 -1
- package/client/dist/assets/{jobs-DmKV7b7d.js → jobs-epP7gt8W.js} +1 -1
- package/client/dist/assets/{jobs-BKa8LuwA.js → jobs-tWjcDF_6.js} +1 -1
- package/client/dist/assets/loops--KWr0X-w.js +1 -0
- package/client/dist/assets/{loops-BO3V8244.js → loops-3IutojWt.js} +1 -1
- package/client/dist/assets/{loops-C-hZK8pf.js → loops-BAosWtXE.js} +1 -1
- package/client/dist/assets/{loops-eUnCfLjC.js → loops-BISDssL5.js} +1 -1
- package/client/dist/assets/{loops-Dv849ckF.js → loops-Cm55CXJ4.js} +1 -1
- package/client/dist/assets/{loops-CDOWZ0ci.js → loops-D7tL_Saw.js} +1 -1
- package/client/dist/assets/{loops-BJDY9FTh.js → loops-DHQtnfze.js} +1 -1
- package/client/dist/assets/{loops-Q9LIgGkq.js → loops-kIJJkaxf.js} +1 -1
- package/client/dist/assets/nav--u7iPYlS.js +1 -0
- package/client/dist/assets/nav-C5Jgfaby.js +1 -0
- package/client/dist/assets/nav-CAna_Wpt.js +1 -0
- package/client/dist/assets/nav-CCLqeyHo.js +1 -0
- package/client/dist/assets/nav-Cf3c90Jk.js +1 -0
- package/client/dist/assets/nav-DMYQaQjR.js +1 -0
- package/client/dist/assets/nav-Df_PkZ9F.js +1 -0
- package/client/dist/assets/nav-VyNGBJwj.js +1 -0
- package/client/dist/assets/{project-repositories-CSnfzUpg.js → project-repositories-DXhb9FP4.js} +1 -1
- package/client/dist/assets/provider-capabilities-lePfeT_Y.js +1 -0
- package/client/dist/assets/save-OsUqVn99.js +1 -0
- package/client/dist/assets/settings-B5Hy_Kol.js +1 -0
- package/client/dist/assets/settings-BBj_kZaD.js +1 -0
- package/client/dist/assets/settings-ByVE7jdZ.js +1 -0
- package/client/dist/assets/settings-COlH_P33.js +1 -0
- package/client/dist/assets/settings-D77mC_Lb.js +1 -0
- package/client/dist/assets/settings-DZKy7MqN.js +1 -0
- package/client/dist/assets/settings-Dbyd6gmj.js +1 -0
- package/client/dist/assets/settings-Dn-pXukr.js +1 -0
- package/client/dist/assets/setup-Be485n2u.js +1 -0
- package/client/dist/assets/setup-CKGUxKr-.js +1 -0
- package/client/dist/assets/setup-Ck1Uwd7_.js +1 -0
- package/client/dist/assets/setup-Cm774a6v.js +1 -0
- package/client/dist/assets/setup-DIqMQpxt.js +1 -0
- package/client/dist/assets/setup-DfCsoNFL.js +1 -0
- package/client/dist/assets/setup-DkeE8mP0.js +1 -0
- package/client/dist/assets/setup-xVntVaz1.js +1 -0
- package/client/dist/assets/{spending-HBSk-6jv.js → spending-BdcyVkcd.js} +1 -1
- package/client/dist/assets/subscriptionUsage-Cf87DeS_.js +1 -0
- package/client/dist/assets/subscriptionUsage-D6u7VBdz.js +1 -0
- package/client/dist/assets/subscriptionUsage-DQ02J25O.js +1 -0
- package/client/dist/assets/subscriptionUsage-DWF3zKp4.js +1 -0
- package/client/dist/assets/subscriptionUsage-DkIf6Zuh.js +1 -0
- package/client/dist/assets/subscriptionUsage-DoWQv7l1.js +1 -0
- package/client/dist/assets/subscriptionUsage-N9hB-ARf.js +1 -0
- package/client/dist/assets/subscriptionUsage-zRcRPHkP.js +1 -0
- package/client/dist/assets/tauri-shell-DE6LfGPw.js +2 -0
- package/client/dist/assets/{useDesktop-0unHDBJJ.js → useDesktop-D07TvesS.js} +1 -1
- package/client/dist/assets/{useRuntimeRuns-BN1rhyEm.js → useRuntimeRuns-pGLmtAC6.js} +1 -1
- package/client/dist/assets/useSharedWebSocket-TzKtPRp9.js +2 -0
- package/client/dist/index.html +33 -32
- package/docs/README.md +1 -9
- package/docs/agent-live-steering.md +0 -6
- package/docs/agents/README.md +0 -2
- package/docs/agents/mcp.md +1 -14
- package/docs/cli.md +0 -13
- package/docs/codex.md +2 -75
- package/docs/creating-specs.md +0 -39
- package/docs/customizing.md +1 -15
- package/docs/getting-started.md +0 -23
- package/docs/guide/de/agents/2-profiles-and-the-balanced-default.md +0 -8
- package/docs/guide/de/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/de/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/de/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/de/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/de/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/de/integrations/1-ai-providers.md +2 -50
- package/docs/guide/de/integrations/2-plugins.md +0 -8
- package/docs/guide/de/integrations/5-mcp-server.md +1 -14
- package/docs/guide/de/integrations/6-agent-chat.md +0 -11
- package/docs/guide/de/integrations/7-local-engines.md +0 -4
- package/docs/guide/de/pipeline/1-rails-and-jobs.md +0 -13
- package/docs/guide/de/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/de/pipeline/4-picking-an-engine-per-rail.md +0 -20
- package/docs/guide/de/pipeline/5-the-loop-builder.md +0 -6
- package/docs/guide/de/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/en/agents/2-profiles-and-the-balanced-default.md +0 -10
- package/docs/guide/en/agents/4-custom-agents-catalog.md +0 -25
- package/docs/guide/en/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/en/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/en/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/en/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/en/insights/3-code-explorer.md +0 -5
- package/docs/guide/en/integrations/1-ai-providers.md +10 -99
- package/docs/guide/en/integrations/2-plugins.md +0 -8
- package/docs/guide/en/integrations/5-mcp-server.md +1 -1
- package/docs/guide/en/integrations/6-agent-chat.md +0 -17
- package/docs/guide/en/integrations/7-local-engines.md +0 -4
- package/docs/guide/en/pipeline/1-rails-and-jobs.md +2 -24
- package/docs/guide/en/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/en/pipeline/4-picking-an-engine-per-rail.md +10 -65
- package/docs/guide/en/pipeline/5-the-loop-builder.md +0 -7
- package/docs/guide/en/specs/2-add-spec-quick-mode.md +0 -11
- package/docs/guide/es/agents/2-profiles-and-the-balanced-default.md +0 -8
- package/docs/guide/es/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/es/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/es/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/es/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/es/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/es/integrations/1-ai-providers.md +10 -75
- package/docs/guide/es/integrations/2-plugins.md +0 -8
- package/docs/guide/es/integrations/5-mcp-server.md +1 -1
- package/docs/guide/es/integrations/6-agent-chat.md +0 -11
- package/docs/guide/es/integrations/7-local-engines.md +0 -4
- package/docs/guide/es/pipeline/1-rails-and-jobs.md +3 -13
- package/docs/guide/es/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/es/pipeline/4-picking-an-engine-per-rail.md +10 -53
- package/docs/guide/es/pipeline/5-the-loop-builder.md +1 -6
- package/docs/guide/es/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/fr/agents/2-profiles-and-the-balanced-default.md +0 -8
- package/docs/guide/fr/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/fr/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/fr/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/fr/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/fr/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/fr/integrations/1-ai-providers.md +2 -50
- package/docs/guide/fr/integrations/2-plugins.md +0 -8
- package/docs/guide/fr/integrations/5-mcp-server.md +1 -14
- package/docs/guide/fr/integrations/6-agent-chat.md +0 -11
- package/docs/guide/fr/integrations/7-local-engines.md +0 -4
- package/docs/guide/fr/pipeline/1-rails-and-jobs.md +0 -13
- package/docs/guide/fr/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/fr/pipeline/4-picking-an-engine-per-rail.md +0 -22
- package/docs/guide/fr/pipeline/5-the-loop-builder.md +0 -6
- package/docs/guide/fr/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/it/agents/2-profiles-and-the-balanced-default.md +0 -8
- package/docs/guide/it/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/it/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/it/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/it/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/it/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/it/integrations/1-ai-providers.md +2 -48
- package/docs/guide/it/integrations/2-plugins.md +0 -8
- package/docs/guide/it/integrations/5-mcp-server.md +1 -14
- package/docs/guide/it/integrations/6-agent-chat.md +0 -11
- package/docs/guide/it/integrations/7-local-engines.md +0 -4
- package/docs/guide/it/pipeline/1-rails-and-jobs.md +2 -13
- package/docs/guide/it/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/it/pipeline/4-picking-an-engine-per-rail.md +0 -20
- package/docs/guide/it/pipeline/5-the-loop-builder.md +1 -6
- package/docs/guide/it/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/ja/agents/2-profiles-and-the-balanced-default.md +0 -9
- package/docs/guide/ja/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/ja/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/ja/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/ja/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/ja/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/ja/integrations/1-ai-providers.md +1 -69
- package/docs/guide/ja/integrations/2-plugins.md +0 -8
- package/docs/guide/ja/integrations/5-mcp-server.md +1 -14
- package/docs/guide/ja/integrations/6-agent-chat.md +0 -10
- package/docs/guide/ja/integrations/7-local-engines.md +0 -4
- package/docs/guide/ja/pipeline/1-rails-and-jobs.md +0 -13
- package/docs/guide/ja/pipeline/2-the-job-detail-view.md +0 -3
- package/docs/guide/ja/pipeline/4-picking-an-engine-per-rail.md +0 -21
- package/docs/guide/ja/pipeline/5-the-loop-builder.md +0 -6
- package/docs/guide/ja/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/pt/agents/2-profiles-and-the-balanced-default.md +0 -8
- package/docs/guide/pt/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/pt/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/pt/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/pt/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/pt/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/pt/integrations/1-ai-providers.md +2 -48
- package/docs/guide/pt/integrations/2-plugins.md +0 -8
- package/docs/guide/pt/integrations/5-mcp-server.md +1 -14
- package/docs/guide/pt/integrations/6-agent-chat.md +0 -10
- package/docs/guide/pt/integrations/7-local-engines.md +0 -4
- package/docs/guide/pt/pipeline/1-rails-and-jobs.md +0 -13
- package/docs/guide/pt/pipeline/2-the-job-detail-view.md +0 -2
- package/docs/guide/pt/pipeline/4-picking-an-engine-per-rail.md +0 -21
- package/docs/guide/pt/pipeline/5-the-loop-builder.md +0 -6
- package/docs/guide/pt/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/guide/zh/agents/2-profiles-and-the-balanced-default.md +0 -7
- package/docs/guide/zh/agents/4-custom-agents-catalog.md +0 -15
- package/docs/guide/zh/getting-started/1-what-is-specrails.md +0 -2
- package/docs/guide/zh/getting-started/2-installing-and-first-run.md +0 -2
- package/docs/guide/zh/getting-started/3-adding-your-first-project.md +0 -4
- package/docs/guide/zh/getting-started/4-the-dashboard-tour.md +0 -5
- package/docs/guide/zh/integrations/1-ai-providers.md +1 -67
- package/docs/guide/zh/integrations/2-plugins.md +0 -8
- package/docs/guide/zh/integrations/5-mcp-server.md +1 -14
- package/docs/guide/zh/integrations/6-agent-chat.md +0 -9
- package/docs/guide/zh/integrations/7-local-engines.md +0 -4
- package/docs/guide/zh/pipeline/1-rails-and-jobs.md +0 -13
- package/docs/guide/zh/pipeline/2-the-job-detail-view.md +0 -2
- package/docs/guide/zh/pipeline/4-picking-an-engine-per-rail.md +0 -20
- package/docs/guide/zh/pipeline/5-the-loop-builder.md +0 -6
- package/docs/guide/zh/specs/2-add-spec-quick-mode.md +0 -7
- package/docs/internals/adding-a-provider.md +7 -0
- package/docs/internals/desktop-owned-workflows.md +121 -0
- package/docs/internals/operations-runbook.md +20 -0
- package/docs/internals/programmatic-agent-runtime.md +34 -28
- package/docs/internals/project-builder.md +34 -11
- package/docs/internals/source-map.md +51 -3
- package/docs/internals/spec-addenda.md +11 -5
- package/docs/local-providers.md +8 -13
- package/docs/mcp.md +1 -17
- package/docs/platforms/macos.md +0 -40
- package/docs/platforms/windows-parity.md +1 -1
- package/docs/platforms/windows.md +0 -8
- package/docs/running-pipelines.md +1 -46
- package/docs/subscription-usage.md +19 -0
- package/docs/terminal.md +0 -2
- package/docs/tracking-cost.md +2 -33
- package/package.json +1 -1
- package/server/dist/core-execution.js +24 -15
- package/server/dist/desktop-db.js +23 -10
- package/server/dist/desktop-router.js +8 -4
- package/server/dist/index.js +10 -5
- package/server/dist/mcp/guide.js +1 -0
- package/server/dist/mcp/tools/jobs.js +1 -1
- package/server/dist/mcp/tools/loops.js +2 -0
- package/server/dist/mcp/tools/meta.js +6 -7
- package/server/dist/mcp/tools/projects.js +31 -6
- package/server/dist/mcp/tools/rails.js +6 -3
- package/server/dist/mcp/tools/setup.js +10 -0
- package/server/dist/mcp/tools/specs.js +1 -1
- package/server/dist/modules/accounting/runtime/pricing.js +6 -1
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-bridge.js +55 -12
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-metrics.js +1 -1
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-settings-router.js +1 -1
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-settings.js +42 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-verification-suggestions.js +10 -4
- package/server/dist/modules/builder/runtime/milestone-chain.js +76 -10
- package/server/dist/modules/delivery/runtime/delivery-evidence.js +3 -2
- package/server/dist/modules/delivery/runtime/multi-repo-execution.js +3 -0
- package/server/dist/modules/delivery/runtime/rail-isolated-launch.js +1 -0
- package/server/dist/modules/delivery/runtime/rail-launch-parser.js +8 -0
- package/server/dist/modules/delivery/runtime/rails-router.js +48 -26
- package/server/dist/modules/delivery/runtime/review-packet.js +1 -1
- package/server/dist/modules/loops/runtime/loop-agent-defaults.json +6 -0
- package/server/dist/modules/loops/runtime/loop-agents.js +21 -0
- package/server/dist/modules/loops/runtime/loop-command-catalog.js +1 -1
- package/server/dist/modules/loops/runtime/loop-core-factory.js +19 -3
- package/server/dist/modules/loops/runtime/loop-definition.js +79 -12
- package/server/dist/modules/loops/runtime/loop-effect.js +1 -1
- package/server/dist/modules/loops/runtime/loop-executors.js +24 -9
- package/server/dist/modules/loops/runtime/loop-factory.js +1 -1
- package/server/dist/modules/loops/runtime/loop-graph.js +5 -14
- package/server/dist/modules/loops/runtime/loop-implement-recipe.js +49 -0
- package/server/dist/modules/loops/runtime/loop-run-manager.js +3 -3
- package/server/dist/modules/loops/runtime/loop-templates.js +29 -5
- package/server/dist/modules/loops/runtime/loops-router.js +17 -0
- package/server/dist/modules/missions/runtime/agent-context-resolver.js +1 -1
- package/server/dist/modules/missions/runtime/agent-operator-prompt.js +17 -8
- package/server/dist/modules/specs/runtime/spec-models.js +4 -7
- package/server/dist/modules/subscription-usage/adapters/claude.js +113 -0
- package/server/dist/modules/subscription-usage/adapters/codex.js +164 -0
- package/server/dist/modules/subscription-usage/adapters/errors.js +15 -0
- package/server/dist/modules/subscription-usage/adapters/http.js +20 -0
- package/server/dist/modules/subscription-usage/adapters/local-auth.js +61 -0
- package/server/dist/modules/subscription-usage/application.js +11 -0
- package/server/dist/modules/subscription-usage/domain.js +70 -0
- package/server/dist/modules/subscription-usage/index.js +2 -0
- package/server/dist/modules/subscription-usage/ports.js +2 -0
- package/server/dist/modules/subscription-usage/runtime/composition.js +20 -0
- package/server/dist/modules/subscription-usage/runtime/usage-service.js +111 -0
- package/server/dist/project-registry.js +16 -1
- package/server/dist/project-repositories.js +51 -2
- package/server/dist/project-router-helpers.js +1 -1
- package/server/dist/project-router-loop-runs.js +4 -1
- package/server/dist/providers/claude-adapter.js +6 -4
- package/server/dist/providers/codex-adapter.js +4 -5
- package/server/dist/schemas/workflow-definition.schema.json +2 -0
- package/client/dist/assets/AgentBrowserCapture-PI-cxyxi.js +0 -1
- package/client/dist/assets/AgentModeAnalyticsPane-mQsOqdXx.js +0 -2
- package/client/dist/assets/AgentModeCodePane-BL-vpmlY.js +0 -2
- package/client/dist/assets/CodePage-Alitorrv.js +0 -3
- package/client/dist/assets/DocsDialog-DwL6rgcT.js +0 -11
- package/client/dist/assets/DocsPage-BA1hiJZ-.js +0 -11
- package/client/dist/assets/InteractiveJobComposer-B3H1YHr6.js +0 -19
- package/client/dist/assets/JobDetailModal-XZQ9eAAy.js +0 -1
- package/client/dist/assets/JobDetailPage-B-SIaq_q.js +0 -1
- package/client/dist/assets/JobsPage-iQXAv2mx.js +0 -1
- package/client/dist/assets/LoopBuilderPage-B_gbFAHn.js +0 -1
- package/client/dist/assets/LoopsPage-BZwcY5cu.js +0 -2
- package/client/dist/assets/MinimizedChatsContext-CNx_0bZu.js +0 -1
- package/client/dist/assets/PluginsPage-DFocnoHX.js +0 -2
- package/client/dist/assets/ProjectSettingsDialog-Bh3S6EBB.js +0 -1
- package/client/dist/assets/RepositoryScopeSelector-C2mvWBQ6.js +0 -1
- package/client/dist/assets/ReviewPacketPage-CrAf-WDy.js +0 -4
- package/client/dist/assets/TemplatePreviewModal-C7DordpN.js +0 -1
- package/client/dist/assets/TicketDetailModalContext-B-DySpKL.js +0 -16
- package/client/dist/assets/agent-BaG10AN6.js +0 -1
- package/client/dist/assets/agent-CH4aJ884.js +0 -1
- package/client/dist/assets/agent-CLc9fA7v.js +0 -1
- package/client/dist/assets/agent-DHh9-AdL.js +0 -1
- package/client/dist/assets/agent-DkKnd6Wv.js +0 -1
- package/client/dist/assets/agent-aiVhqFW1.js +0 -1
- package/client/dist/assets/agent-dbznD3eO.js +0 -1
- package/client/dist/assets/agent-sMVFcPwL.js +0 -1
- package/client/dist/assets/agentRuntime-BeUb3g9g.js +0 -1
- package/client/dist/assets/file-text-CFT-xXKN.js +0 -1
- package/client/dist/assets/index-BS7KCWkV.css +0 -2
- package/client/dist/assets/index-C4Mv6tV6.js +0 -80
- package/client/dist/assets/integrations-CH0zy1Mw.js +0 -1
- package/client/dist/assets/integrations-CIAjhd7L.js +0 -1
- package/client/dist/assets/integrations-CZdwOe8A.js +0 -1
- package/client/dist/assets/integrations-Ct7omMld.js +0 -1
- package/client/dist/assets/integrations-D6MSxy3-.js +0 -1
- package/client/dist/assets/integrations-DbZa-Zyc.js +0 -1
- package/client/dist/assets/integrations-b8pH-vfl.js +0 -1
- package/client/dist/assets/integrations-mB-7zoyT.js +0 -1
- package/client/dist/assets/jira-api-BYbEPlkr.js +0 -1
- package/client/dist/assets/layers-eDMjG41I.js +0 -1
- package/client/dist/assets/loops-B4_D-nbg.js +0 -1
- package/client/dist/assets/nav-B-tpjyc2.js +0 -1
- package/client/dist/assets/nav-BJNXGg29.js +0 -1
- package/client/dist/assets/nav-BdhtRLP7.js +0 -1
- package/client/dist/assets/nav-ByYgyN5T.js +0 -1
- package/client/dist/assets/nav-DA0Mva2c.js +0 -1
- package/client/dist/assets/nav-DcJm_Jg_.js +0 -1
- package/client/dist/assets/nav-DhMPtAXc.js +0 -1
- package/client/dist/assets/nav-DhPb-Isc.js +0 -1
- package/client/dist/assets/provider-capabilities-Vi1ZGvAK.js +0 -1
- package/client/dist/assets/save-B6wGWwBR.js +0 -1
- package/client/dist/assets/settings-3o4Ntzi5.js +0 -1
- package/client/dist/assets/settings-B97jlkwD.js +0 -1
- package/client/dist/assets/settings-BTaT_bsS.js +0 -1
- package/client/dist/assets/settings-CT8w7WiC.js +0 -1
- package/client/dist/assets/settings-Cvr8_tvh.js +0 -1
- package/client/dist/assets/settings-Dn1qgAC8.js +0 -1
- package/client/dist/assets/settings-EShDdg4J.js +0 -1
- package/client/dist/assets/settings-tfLhQZRN.js +0 -1
- package/client/dist/assets/setup-CBMu3tqH.js +0 -1
- package/client/dist/assets/setup-CPh-e6J2.js +0 -1
- package/client/dist/assets/setup-CRKLp_ke.js +0 -1
- package/client/dist/assets/setup-Cy302v4J.js +0 -1
- package/client/dist/assets/setup-D681vTPf.js +0 -1
- package/client/dist/assets/setup-DYK0VBkE.js +0 -1
- package/client/dist/assets/setup-KAuiIiVs.js +0 -1
- package/client/dist/assets/setup-OGX-oCfI.js +0 -1
- package/client/dist/assets/useSharedWebSocket-BZMrX4jr.js +0 -2
- package/client/dist/assets/wrench-BfmNO9Vw.js +0 -1
- package/docs/agy-cli-provider-study.md +0 -257
- package/docs/gemini-cli-provider-study.md +0 -301
- package/docs/gemini-core-support-evaluation.md +0 -160
- package/docs/gemini.md +0 -257
- package/docs/kimi.md +0 -291
package/docs/kimi.md
DELETED
|
@@ -1,291 +0,0 @@
|
|
|
1
|
-
# Using Kimi Code with Specrails Desktop
|
|
2
|
-
|
|
3
|
-
Kimi Code is a first-class, independent provider in Specrails Desktop. Desktop
|
|
4
|
-
launches the external `kimi` CLI directly; it does not bundle a Kimi runtime,
|
|
5
|
-
start `kimi server`, invoke `kimi acp`, or install a persistent service.
|
|
6
|
-
|
|
7
|
-
## Requirements
|
|
8
|
-
|
|
9
|
-
- Specrails Desktop with Kimi provider support.
|
|
10
|
-
- `specrails-core` 4.12.0 or newer with the `.kimi-code` framework target.
|
|
11
|
-
- Kimi Code 0.27.0 or newer.
|
|
12
|
-
- A completed Kimi login or a valid user-managed Kimi model configuration.
|
|
13
|
-
|
|
14
|
-
Install Kimi from its official documentation:
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
# macOS / Linux
|
|
18
|
-
curl -fsSL https://code.kimi.com/kimi-code/install.sh | bash
|
|
19
|
-
kimi login
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
```powershell
|
|
23
|
-
# Windows PowerShell
|
|
24
|
-
irm https://code.kimi.com/kimi-code/install.ps1 | iex
|
|
25
|
-
kimi login
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
The official npm package (`@moonshot-ai/kimi-code`) is also supported, but its
|
|
29
|
-
current CLI requires Node.js 22.19 or newer. On Windows, Kimi also requires Git
|
|
30
|
-
for Windows because it uses Git Bash; set `KIMI_SHELL_PATH` when `bash.exe`
|
|
31
|
-
lives outside the standard locations. Specrails never installs any of these
|
|
32
|
-
dependencies for you.
|
|
33
|
-
|
|
34
|
-
Restart Desktop after changing `PATH`. Setup checks `kimi --version` without
|
|
35
|
-
sending a model prompt. Kimi 0.27 does not provide a non-billing command that
|
|
36
|
-
conclusively proves OAuth readiness, so the first real request may still ask
|
|
37
|
-
you to run `kimi login`.
|
|
38
|
-
|
|
39
|
-
### Windows prompt transport
|
|
40
|
-
|
|
41
|
-
Desktop never invokes a Kimi command shim through `cmd.exe`. For the standard
|
|
42
|
-
npm `kimi.cmd`/`kimi.bat`, it launches the package's JavaScript entry with Node
|
|
43
|
-
and carries the complete materialized prompt over `stdin`; multiline text,
|
|
44
|
-
Unicode, and long SpecRails workflows therefore do not consume the Win32
|
|
45
|
-
command-line budget.
|
|
46
|
-
|
|
47
|
-
A native `kimi.exe` is launched directly with no shell and works for prompts
|
|
48
|
-
whose complete command line is at most 30,000 UTF-16 code units. Kimi 0.27 has
|
|
49
|
-
no equivalent stdin or response-file option for that native executable, so
|
|
50
|
-
Desktop rejects a larger native invocation before spawn instead of truncating
|
|
51
|
-
the workflow. Install the official npm package
|
|
52
|
-
(`npm install -g @moonshot-ai/kimi-code`, Node.js 22.19+) when complete long
|
|
53
|
-
workflows are required on Windows. No Kimi server is involved in either path.
|
|
54
|
-
|
|
55
|
-
## Add or build a project
|
|
56
|
-
|
|
57
|
-
Kimi appears in Add Project and Project Builder when the executable is
|
|
58
|
-
available. Selecting it asks Core to materialize:
|
|
59
|
-
|
|
60
|
-
```text
|
|
61
|
-
.kimi-code/
|
|
62
|
-
├── AGENTS.md
|
|
63
|
-
├── mcp.json
|
|
64
|
-
├── rules/
|
|
65
|
-
└── skills/
|
|
66
|
-
├── specrails-*/SKILL.md
|
|
67
|
-
├── openspec-*/SKILL.md
|
|
68
|
-
└── sr-*/SKILL.md
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
Kimi scans directory-form skills as direct children of the skills root.
|
|
72
|
-
SpecRails therefore keeps roles at `skills/sr-*/SKILL.md` rather than in a
|
|
73
|
-
nested catalog that the stable engine would not discover.
|
|
74
|
-
|
|
75
|
-
In a multi-provider project, Kimi is an independent engine choice on
|
|
76
|
-
capability-compatible chat, rail, loop, profile, integration, and terminal
|
|
77
|
-
surfaces. Switching to it does not rewrite a Claude, Codex, or Gemini tree.
|
|
78
|
-
Provider membership is fixed when the project is created; re-register the
|
|
79
|
-
project to choose a different set.
|
|
80
|
-
|
|
81
|
-
## Models and effort
|
|
82
|
-
|
|
83
|
-
Desktop stores Kimi's public model ids:
|
|
84
|
-
|
|
85
|
-
| Model id | UI label |
|
|
86
|
-
|----------|----------|
|
|
87
|
-
| `k3` | Kimi K3 |
|
|
88
|
-
| `kimi-for-coding` | Kimi for Coding |
|
|
89
|
-
| `kimi-for-coding-highspeed` | Kimi for Coding Highspeed |
|
|
90
|
-
|
|
91
|
-
At the CLI boundary only, those three ids map to managed aliases such as
|
|
92
|
-
`kimi-code/k3`. Already-prefixed and custom aliases pass through unchanged.
|
|
93
|
-
|
|
94
|
-
K3 offers `low`, `high`, and `max` reasoning effort. Those controls are shown
|
|
95
|
-
only when the effective model is `k3` or `kimi-code/k3`; the two
|
|
96
|
-
`kimi-for-coding` models and custom aliases do not inherit K3 effort. Desktop
|
|
97
|
-
defaults K3 to its upstream `high` setting and applies a valid selection to one
|
|
98
|
-
child process through
|
|
99
|
-
`KIMI_MODEL_THINKING_EFFORT` and removes inherited effort otherwise,
|
|
100
|
-
preventing cross-provider or cross-model leakage.
|
|
101
|
-
|
|
102
|
-
Every Desktop-managed spawn also removes `KIMI_CODE_EXPERIMENTAL_FLAG` from
|
|
103
|
-
the child environment. The integration is qualified against Kimi Code 0.27's
|
|
104
|
-
stable v1 engine and JSONL contract; a user-level opt-in to the experimental v2
|
|
105
|
-
engine must not silently switch Desktop to a different, unqualified runtime.
|
|
106
|
-
It also forces `KIMI_DISABLE_CRON=1`: prompt mode auto-approves tools, while
|
|
107
|
-
Desktop has no scheduler lifecycle or UI for Kimi's persistent `CronCreate`
|
|
108
|
-
facility, so an owned child must not leave scheduled work behind. Background
|
|
109
|
-
task drain/steer behavior inside the live child is unchanged. Finally,
|
|
110
|
-
`KIMI_CODE_NO_AUTO_UPDATE=1` disables Kimi's startup update preflight so a job
|
|
111
|
-
runs the external version that passed Desktop's compatibility check instead of
|
|
112
|
-
self-updating mid-invocation. All three controls replace inherited keys
|
|
113
|
-
case-insensitively.
|
|
114
|
-
|
|
115
|
-
## Execution and resume
|
|
116
|
-
|
|
117
|
-
A new Kimi turn uses:
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
kimi -m kimi-code/k3 \
|
|
121
|
-
-p "<ordinary prompt or Desktop-materialized Kimi skill prompt>" \
|
|
122
|
-
--output-format stream-json
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
A subtle but load-bearing distinction applies here. Kimi's interactive TUI and
|
|
126
|
-
ACP client intercept `/skill:<name>` and call the skill-activation API, but the
|
|
127
|
-
0.27 print runner sends `-p` text directly to `session.prompt()`. Desktop
|
|
128
|
-
therefore never relies on a literal `/skill:…` surviving into `-p`. It resolves
|
|
129
|
-
the direct-child `SKILL.md`, substitutes Kimi's argument placeholders, adds the
|
|
130
|
-
same `<kimi-skill-loaded>` envelope used by upstream activation, and then
|
|
131
|
-
passes that materialized prompt to the external CLI. Missing or unsafe skill
|
|
132
|
-
paths fail before process creation instead of becoming a zero-work success.
|
|
133
|
-
The prompt seen by the model matches Kimi's activation format; because print
|
|
134
|
-
mode itself still receives an ordinary user prompt, Kimi does not emit its
|
|
135
|
-
internal `skill.activated`/`skill_invoked` telemetry for this host-side
|
|
136
|
-
materialization. Desktop does not depend on those private events.
|
|
137
|
-
|
|
138
|
-
On a resume, `${KIMI_SESSION_ID}` can be expanded from the known session value.
|
|
139
|
-
On a fresh print session Kimi creates the ID internally and reveals it only in
|
|
140
|
-
the terminal resume hint, so Desktop rejects a skill that requires that
|
|
141
|
-
placeholder instead of substituting a false value. SpecRails' generated
|
|
142
|
-
workflow and role skills do not use that placeholder.
|
|
143
|
-
|
|
144
|
-
A known session resumes with the bound `--session=<session-id>` form so even an
|
|
145
|
-
option-shaped value cannot become a new CLI flag. Desktop accepts only Kimi's
|
|
146
|
-
upstream-safe session alphabet (`A-Z`, `a-z`, digits, `.`, `_`, `-`), rejects
|
|
147
|
-
`.`/`..` and ids longer than 128 characters at both JSONL parsing and argv
|
|
148
|
-
construction, and trusts an id only after Kimi emits the terminal
|
|
149
|
-
`session.resume_hint`; it never invents one from process ids or local paths.
|
|
150
|
-
|
|
151
|
-
Kimi can put assistant text and several function calls in one JSONL record.
|
|
152
|
-
Desktop expands that record into every corresponding UI event, so text,
|
|
153
|
-
activity chips, errors, and session state are not dropped. Unknown future
|
|
154
|
-
events remain diagnostic records instead of crashing the stream.
|
|
155
|
-
|
|
156
|
-
Cancel, Stop, app shutdown, and project removal terminate the owned process
|
|
157
|
-
tree. There is no server lifecycle to manage.
|
|
158
|
-
|
|
159
|
-
Kimi Code does ship optional `kimi acp` and `kimi server` entry points. This
|
|
160
|
-
integration deliberately uses the documented `-p` non-interactive contract:
|
|
161
|
-
it already runs tools agentically under Kimi's automatic prompt-mode policy,
|
|
162
|
-
maps cleanly to Desktop's owned-child lifecycle, and avoids installing a
|
|
163
|
-
service, opening a local port, or retaining an extra daemon. “No server
|
|
164
|
-
lifecycle” means Specrails starts and owns no Kimi server; it does not mean the
|
|
165
|
-
upstream CLI lacks that optional subcommand.
|
|
166
|
-
|
|
167
|
-
## Feature coverage
|
|
168
|
-
|
|
169
|
-
The important distinction is not “chat versus command”; it is whether a
|
|
170
|
-
surface deliberately launches an **autonomous agent** or requires a
|
|
171
|
-
**pure-output/read-only transform**. `kimi -p` is agentic and automatically
|
|
172
|
-
approves tool use. Desktop therefore enables Kimi where that posture is part
|
|
173
|
-
of the feature, and fails closed where the feature contract promises no tools
|
|
174
|
-
or read-only behavior.
|
|
175
|
-
|
|
176
|
-
### Available with Kimi
|
|
177
|
-
|
|
178
|
-
| Surface | Kimi behavior |
|
|
179
|
-
|---|---|
|
|
180
|
-
| Project Chat and Agent Chat | Text, tools, errors, cancellation, session resume, attachments, and proposals use a fresh owned `kimi -p` process per turn. |
|
|
181
|
-
| Explore | Conversation and proposal/draft work are available under Kimi's autonomous prompt-mode policy. It is not a filesystem sandbox. |
|
|
182
|
-
| Quick Launcher | Agentic commands such as `/opsx:ff` are available. This is distinct from the pure-output **Quick Spec** form. |
|
|
183
|
-
| Rails | Implement, Freestyle, retry/rerun, worktree isolation, cancellation, and ask-first PR delivery use Core's Kimi skills. |
|
|
184
|
-
| Loops | Built-in and custom loops are available when the graph has no **Loop Decider**. AI and shell steps keep their normal agentic semantics. |
|
|
185
|
-
| Project Builder delivery | Selecting Kimi as a target project provider and launching an already committed milestone through its rails (one spec per rail) are available. Blueprint and milestone generation are not. |
|
|
186
|
-
| Profiles and roles | Provider-scoped profiles, exact Kimi models, per-role routing, and manual `custom-*` role creation/editing/execution are available. |
|
|
187
|
-
| MCP and integrations | Project `.kimi-code/mcp.json`, the Desktop bridge, provider-scoped plugins, and Serena are available through additive merges. |
|
|
188
|
-
| Terminal and attachments | The integrated terminal launches the external CLI. Text and validated image references are available; Kimi reads images with `ReadMediaFile`. |
|
|
189
|
-
| Analytics | Provider, model, duration, outcome, and session metadata are recorded. Unreported tokens and cost remain unavailable. |
|
|
190
|
-
|
|
191
|
-
### Unavailable and rejected before spawn
|
|
192
|
-
|
|
193
|
-
| Surface | Why it fails closed for Kimi |
|
|
194
|
-
|---|---|
|
|
195
|
-
| Quick Spec generation | Its structured output contract assumes a hard no-tools/read-only boundary that `kimi -p` cannot express. Use Explore or an agentic Quick Launcher command. |
|
|
196
|
-
| AI Edit / Continue Editing refine | This pure-output rewrite must not be allowed to mutate the workspace with tools. |
|
|
197
|
-
| Contract Refine | Requires an enforceable no-tools transform. |
|
|
198
|
-
| SMASH and Re-SMASH | Structured decomposition requires a safe tool boundary; Re-SMASH is also destructive, so existing children are never deleted before the capability check. |
|
|
199
|
-
| Project Builder blueprint and milestone generation | Day-0 blueprint snapshots and later detailed milestone batches are pure structured output. Kimi can still be a target provider and run a committed milestone rail. |
|
|
200
|
-
| Loop Decider | The `continue`/`stop` verdict must be a constrained pure-output decision. Kimi loops containing a Decider are rejected. |
|
|
201
|
-
| File summaries and construction-story AI | Code Explorer's generated summaries/story are read-only transforms. Existing deterministic/read-only explorer data remains usable. |
|
|
202
|
-
| AI auto-title | No Kimi process is spawned; Desktop uses its deterministic title fallback. |
|
|
203
|
-
| Agent Studio automation | Agent generation, smoke test, and AI Refine require the same boundary. Manual custom roles remain available. |
|
|
204
|
-
|
|
205
|
-
These are server-side capability gates, not cosmetic UI omissions. A direct
|
|
206
|
-
request that bypasses the hidden/disabled control is rejected before Kimi is
|
|
207
|
-
spawned and, for destructive operations, before any state mutation.
|
|
208
|
-
|
|
209
|
-
### Serena and provider-scoped plugin state
|
|
210
|
-
|
|
211
|
-
In a project with more than one AI provider, Integrations asks which provider
|
|
212
|
-
the Serena install targets. A Kimi install:
|
|
213
|
-
|
|
214
|
-
- merges `mcpServers.serena` into `<project>/.kimi-code/mcp.json`;
|
|
215
|
-
- contributes the managed Serena guidance block to
|
|
216
|
-
`<project>/.kimi-code/AGENTS.md`;
|
|
217
|
-
- records Kimi independently under
|
|
218
|
-
`<project>/.specrails/plugins/state.json`;
|
|
219
|
-
- verifies both `uv` and the Kimi MCP registration before committing; and
|
|
220
|
-
- is included only in Kimi rail snapshots.
|
|
221
|
-
|
|
222
|
-
Claude's `.mcp.json`/`CLAUDE.md`, Codex's isolated MCP registry plus root
|
|
223
|
-
`AGENTS.md`, and Kimi's `.kimi-code/mcp.json` plus
|
|
224
|
-
`.kimi-code/AGENTS.md` remain independent. Removing a provider's Serena
|
|
225
|
-
installation therefore removes only that provider's managed guidance and MCP
|
|
226
|
-
registration.
|
|
227
|
-
|
|
228
|
-
## Native differences from Claude
|
|
229
|
-
|
|
230
|
-
Application feature parity does not make unlike CLI protocols identical:
|
|
231
|
-
|
|
232
|
-
- Kimi has no persistent stdin transport. Interactive conversations resume by
|
|
233
|
-
spawning a new `kimi -p` process with the recorded session id.
|
|
234
|
-
- Kimi stream JSON has no terminal token/cost result. Desktop records model,
|
|
235
|
-
duration, status, and session, and leaves cost/tokens unavailable.
|
|
236
|
-
- Kimi has no dedicated image argv; Desktop validates the managed attachment
|
|
237
|
-
path and includes explicit media-tool guidance in the prompt.
|
|
238
|
-
- Prompt mode runs under Kimi's autonomous permission behavior and cannot be
|
|
239
|
-
combined with `--auto`, `--yolo`, or `--plan`.
|
|
240
|
-
- Kimi has no per-spawn hard `none`/read-only tool flag. Desktop therefore
|
|
241
|
-
disables structured transforms that require a no-tools boundary instead of
|
|
242
|
-
treating prompt wording as a security sandbox.
|
|
243
|
-
- Kimi loads its user-level MCP configuration according to Kimi's own rules.
|
|
244
|
-
Because Desktop cannot isolate that source per spawn, the user-MCP opt-in
|
|
245
|
-
control stays unavailable for Kimi; project `.kimi-code/mcp.json` remains
|
|
246
|
-
supported.
|
|
247
|
-
|
|
248
|
-
## MCP
|
|
249
|
-
|
|
250
|
-
Desktop merges its project bridge and integrations into
|
|
251
|
-
`.kimi-code/mcp.json`. Existing server definitions are preserved. Invalid JSON
|
|
252
|
-
fails safely instead of being replaced, and credentials are never copied into
|
|
253
|
-
the project by the provider adapter.
|
|
254
|
-
|
|
255
|
-
## Troubleshooting
|
|
256
|
-
|
|
257
|
-
### Kimi is missing from the provider picker
|
|
258
|
-
|
|
259
|
-
Run `kimi --version` in a fresh terminal, then restart Desktop. On Windows,
|
|
260
|
-
confirm `where kimi` resolves `kimi.cmd`.
|
|
261
|
-
|
|
262
|
-
### The CLI is too old
|
|
263
|
-
|
|
264
|
-
Upgrade Kimi using its official installer. Desktop requires 0.27.0 or newer
|
|
265
|
-
because its prompt-mode stream and session contract is the tested baseline.
|
|
266
|
-
|
|
267
|
-
### Login or model alias error
|
|
268
|
-
|
|
269
|
-
Run `kimi login`. Managed login creates aliases under `kimi-code/`. If you use
|
|
270
|
-
a custom provider, make sure the exact alias stored in the profile exists in
|
|
271
|
-
your `~/.kimi-code/config.toml`.
|
|
272
|
-
|
|
273
|
-
### A Kimi project is missing skills
|
|
274
|
-
|
|
275
|
-
Update Core/framework from Setup. OpenSpec 1.4.1 writes Kimi skills to a legacy
|
|
276
|
-
`.kimi/skills` path; Core normalizes recognized `openspec-*` directories into
|
|
277
|
-
`.kimi-code/skills` while preserving unknown and user-owned files.
|
|
278
|
-
|
|
279
|
-
### A control is disabled for Kimi
|
|
280
|
-
|
|
281
|
-
Check the [feature coverage matrix](#feature-coverage). Quick Spec, AI Edit,
|
|
282
|
-
structured decomposition/refinement, blueprint/milestone generation, Loop
|
|
283
|
-
Decider, Code Explorer AI transforms, AI auto-title, and Agent Studio
|
|
284
|
-
automation deliberately do not spawn Kimi 0.27. This is a safety boundary, not
|
|
285
|
-
an installation or authentication error.
|
|
286
|
-
|
|
287
|
-
## References
|
|
288
|
-
|
|
289
|
-
- [Kimi Code documentation](https://www.kimi.com/code/docs/en/)
|
|
290
|
-
- [Kimi Code getting started](https://www.kimi.com/code/docs/en/kimi-code-cli/guides/getting-started)
|
|
291
|
-
- [Kimi Code environment variables](https://www.kimi.com/code/docs/en/kimi-code-cli/configuration/env-vars.html)
|