specrails-desktop 2.8.0 → 2.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. package/README.md +23 -19
  2. package/client/dist/assets/{ActivityFeedPage-LKqd18-G.js → ActivityFeedPage-DpQzYMBz.js} +1 -1
  3. package/client/dist/assets/{AgentsPage-Cb-b-6Ot.js → AgentsPage-29fCY8qV.js} +1 -1
  4. package/client/dist/assets/{AnalyticsPage-HVxQQ1wy.js → AnalyticsPage-BwGtS6Hf.js} +1 -1
  5. package/client/dist/assets/{BarChart-BOyHB0dw.js → BarChart-CTR97DVC.js} +1 -1
  6. package/client/dist/assets/{CodePage-DnOnwKGB.js → CodePage-yAAxKasA.js} +1 -1
  7. package/client/dist/assets/{DesktopAnalyticsPage-D2auU39x.js → DesktopAnalyticsPage-BdK_XpsD.js} +1 -1
  8. package/client/dist/assets/{DocsDialog-CTuDX3GK.js → DocsDialog-BaE0cLlL.js} +2 -2
  9. package/client/dist/assets/{DocsPage-DRyMmu0Z.js → DocsPage-c1FgZX8_.js} +2 -2
  10. package/client/dist/assets/{ExportDropdown-DO-GGiMh.js → ExportDropdown-lPv_yDen.js} +1 -1
  11. package/client/dist/assets/{IntegrationsPage-BhbO4jFT.js → IntegrationsPage-DOpxRe7G.js} +1 -1
  12. package/client/dist/assets/{JobDetailPage-DJooEg1s.js → JobDetailPage-5ExzXY-F.js} +1 -1
  13. package/client/dist/assets/{JobsPage-BbaC-YOg.js → JobsPage-iW7WuPAc.js} +1 -1
  14. package/client/dist/assets/{dist-js-Xc2lRKp2.js → dist-js-A8aSaLng.js} +1 -1
  15. package/client/dist/assets/{dist-js-CiIVMsx3.js → dist-js-CD_m3Xj5.js} +1 -1
  16. package/client/dist/assets/index-D6BaYRRU.css +2 -0
  17. package/client/dist/assets/{index-DK214dak.js → index-DRhFPNAv.js} +44 -44
  18. package/client/dist/assets/{integrations-2C7MkGT0.js → integrations-7YyTBuU9.js} +1 -1
  19. package/client/dist/assets/{integrations-CX4p_bij.js → integrations-B9CEpNF0.js} +1 -1
  20. package/client/dist/assets/{integrations-C2jQtv-s.js → integrations-BlvAdewo.js} +1 -1
  21. package/client/dist/assets/{integrations-eQPHAYsE.js → integrations-Bw8UM9Xd.js} +1 -1
  22. package/client/dist/assets/{integrations-BDC670cg.js → integrations-C5SxNKnG.js} +1 -1
  23. package/client/dist/assets/{integrations-BqUmRUef.js → integrations-CJQKMmdW.js} +1 -1
  24. package/client/dist/assets/{integrations-CB98NeH5.js → integrations-DWz1eU_K.js} +1 -1
  25. package/client/dist/assets/{integrations-_SuVeQIG.js → integrations-DiPR8Fzp.js} +1 -1
  26. package/client/dist/assets/{lib-Bo5s6xpe.js → lib-1vkTuLY7.js} +1 -1
  27. package/client/dist/assets/setup-B6egeeTM.js +1 -0
  28. package/client/dist/assets/setup-BHroXlke.js +1 -0
  29. package/client/dist/assets/setup-BIXsWUp1.js +1 -0
  30. package/client/dist/assets/setup-BJRdg1iE.js +1 -0
  31. package/client/dist/assets/setup-C0rVGnCy.js +1 -0
  32. package/client/dist/assets/setup-Cpu17hJv.js +1 -0
  33. package/client/dist/assets/setup-D-1r0uSx.js +1 -0
  34. package/client/dist/assets/setup-Dn2-veYO.js +1 -0
  35. package/client/dist/assets/{tickets-9kdPXInd.js → tickets-CG_mo-Bg.js} +1 -1
  36. package/client/dist/assets/{tickets-n23kDqJT.js → tickets-CVJQ-vRm.js} +1 -1
  37. package/client/dist/assets/{tickets-tGx5AR5b.js → tickets-D5MSAPe_.js} +1 -1
  38. package/client/dist/assets/{tickets-1UIGf_oA.js → tickets-DBV3wgQZ.js} +1 -1
  39. package/client/dist/assets/{tickets-DNmXcAwu.js → tickets-Q0_pONEh.js} +1 -1
  40. package/client/dist/assets/{tickets-C6pwZwt4.js → tickets-RZ0LyeQe.js} +1 -1
  41. package/client/dist/assets/{tickets-DAjtxAVb.js → tickets-d1A6EOHa.js} +1 -1
  42. package/client/dist/assets/{tickets-0rM0lIXd.js → tickets-r4-oNV0R.js} +1 -1
  43. package/client/dist/assets/{useProjectCache-DVNypkmR.js → useProjectCache-CSi2xHri.js} +1 -1
  44. package/client/dist/index.html +5 -5
  45. package/docs/README.md +5 -2
  46. package/docs/agy-cli-provider-study.md +78 -0
  47. package/docs/cli.md +23 -4
  48. package/docs/codex.md +116 -58
  49. package/docs/creating-specs.md +19 -5
  50. package/docs/customizing.md +27 -6
  51. package/docs/gemini.md +225 -73
  52. package/docs/getting-started.md +18 -9
  53. package/docs/guide/de/agents/1-meet-the-agents.md +38 -0
  54. package/docs/guide/de/agents/2-profiles-and-the-balanced-default.md +45 -0
  55. package/docs/guide/de/agents/3-customizing-models-per-agent.md +60 -0
  56. package/docs/guide/de/agents/4-custom-agents-catalog.md +43 -0
  57. package/docs/guide/de/getting-started/1-what-is-specrails.md +49 -0
  58. package/docs/guide/de/getting-started/2-installing-and-first-run.md +42 -0
  59. package/docs/guide/de/getting-started/3-adding-your-first-project.md +58 -0
  60. package/docs/guide/de/getting-started/4-the-dashboard-tour.md +53 -0
  61. package/docs/guide/de/insights/1-analytics-and-cost-tracking.md +78 -0
  62. package/docs/guide/de/insights/2-the-integrated-terminal.md +46 -0
  63. package/docs/guide/de/insights/3-code-explorer.md +50 -0
  64. package/docs/guide/de/integrations/1-ai-providers.md +64 -0
  65. package/docs/guide/de/integrations/2-plugins.md +44 -0
  66. package/docs/guide/de/integrations/3-jira-integration.md +71 -0
  67. package/docs/guide/de/integrations/4-mobile-companion.md +38 -0
  68. package/docs/guide/de/pipeline/1-rails-and-jobs.md +94 -0
  69. package/docs/guide/de/pipeline/2-the-job-detail-view.md +90 -0
  70. package/docs/guide/de/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  71. package/docs/guide/de/pipeline/4-picking-an-engine-per-rail.md +60 -0
  72. package/docs/guide/de/settings/1-themes.md +37 -0
  73. package/docs/guide/de/settings/2-language.md +39 -0
  74. package/docs/guide/de/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  75. package/docs/guide/de/settings/4-where-your-data-lives.md +48 -0
  76. package/docs/guide/de/specs/1-specs-and-the-backlog.md +52 -0
  77. package/docs/guide/de/specs/2-add-spec-quick-mode.md +45 -0
  78. package/docs/guide/de/specs/3-add-spec-explore-mode.md +68 -0
  79. package/docs/guide/de/specs/4-drafts-and-contract-layer.md +81 -0
  80. package/docs/guide/en/agents/1-meet-the-agents.md +38 -0
  81. package/docs/guide/en/agents/2-profiles-and-the-balanced-default.md +45 -0
  82. package/docs/guide/en/agents/3-customizing-models-per-agent.md +60 -0
  83. package/docs/guide/en/agents/4-custom-agents-catalog.md +43 -0
  84. package/docs/guide/en/getting-started/1-what-is-specrails.md +49 -0
  85. package/docs/guide/en/getting-started/2-installing-and-first-run.md +42 -0
  86. package/docs/guide/en/getting-started/3-adding-your-first-project.md +58 -0
  87. package/docs/guide/en/getting-started/4-the-dashboard-tour.md +53 -0
  88. package/docs/guide/en/insights/1-analytics-and-cost-tracking.md +78 -0
  89. package/docs/guide/en/insights/2-the-integrated-terminal.md +46 -0
  90. package/docs/guide/en/insights/3-code-explorer.md +50 -0
  91. package/docs/guide/en/integrations/1-ai-providers.md +64 -0
  92. package/docs/guide/en/integrations/2-plugins.md +44 -0
  93. package/docs/guide/en/integrations/3-jira-integration.md +71 -0
  94. package/docs/guide/en/integrations/4-mobile-companion.md +38 -0
  95. package/docs/guide/en/pipeline/1-rails-and-jobs.md +94 -0
  96. package/docs/guide/en/pipeline/2-the-job-detail-view.md +90 -0
  97. package/docs/guide/en/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  98. package/docs/guide/en/pipeline/4-picking-an-engine-per-rail.md +60 -0
  99. package/docs/guide/en/settings/1-themes.md +37 -0
  100. package/docs/guide/en/settings/2-language.md +39 -0
  101. package/docs/guide/en/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  102. package/docs/guide/en/settings/4-where-your-data-lives.md +48 -0
  103. package/docs/guide/en/specs/1-specs-and-the-backlog.md +52 -0
  104. package/docs/guide/en/specs/2-add-spec-quick-mode.md +45 -0
  105. package/docs/guide/en/specs/3-add-spec-explore-mode.md +68 -0
  106. package/docs/guide/en/specs/4-drafts-and-contract-layer.md +81 -0
  107. package/docs/guide/es/agents/1-meet-the-agents.md +38 -0
  108. package/docs/guide/es/agents/2-profiles-and-the-balanced-default.md +45 -0
  109. package/docs/guide/es/agents/3-customizing-models-per-agent.md +60 -0
  110. package/docs/guide/es/agents/4-custom-agents-catalog.md +43 -0
  111. package/docs/guide/es/getting-started/1-what-is-specrails.md +49 -0
  112. package/docs/guide/es/getting-started/2-installing-and-first-run.md +42 -0
  113. package/docs/guide/es/getting-started/3-adding-your-first-project.md +58 -0
  114. package/docs/guide/es/getting-started/4-the-dashboard-tour.md +53 -0
  115. package/docs/guide/es/insights/1-analytics-and-cost-tracking.md +78 -0
  116. package/docs/guide/es/insights/2-the-integrated-terminal.md +46 -0
  117. package/docs/guide/es/insights/3-code-explorer.md +50 -0
  118. package/docs/guide/es/integrations/1-ai-providers.md +64 -0
  119. package/docs/guide/es/integrations/2-plugins.md +44 -0
  120. package/docs/guide/es/integrations/3-jira-integration.md +71 -0
  121. package/docs/guide/es/integrations/4-mobile-companion.md +38 -0
  122. package/docs/guide/es/pipeline/1-rails-and-jobs.md +94 -0
  123. package/docs/guide/es/pipeline/2-the-job-detail-view.md +90 -0
  124. package/docs/guide/es/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  125. package/docs/guide/es/pipeline/4-picking-an-engine-per-rail.md +60 -0
  126. package/docs/guide/es/settings/1-themes.md +37 -0
  127. package/docs/guide/es/settings/2-language.md +39 -0
  128. package/docs/guide/es/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  129. package/docs/guide/es/settings/4-where-your-data-lives.md +48 -0
  130. package/docs/guide/es/specs/1-specs-and-the-backlog.md +52 -0
  131. package/docs/guide/es/specs/2-add-spec-quick-mode.md +45 -0
  132. package/docs/guide/es/specs/3-add-spec-explore-mode.md +68 -0
  133. package/docs/guide/es/specs/4-drafts-and-contract-layer.md +81 -0
  134. package/docs/guide/fr/agents/1-meet-the-agents.md +38 -0
  135. package/docs/guide/fr/agents/2-profiles-and-the-balanced-default.md +45 -0
  136. package/docs/guide/fr/agents/3-customizing-models-per-agent.md +60 -0
  137. package/docs/guide/fr/agents/4-custom-agents-catalog.md +43 -0
  138. package/docs/guide/fr/getting-started/1-what-is-specrails.md +49 -0
  139. package/docs/guide/fr/getting-started/2-installing-and-first-run.md +42 -0
  140. package/docs/guide/fr/getting-started/3-adding-your-first-project.md +58 -0
  141. package/docs/guide/fr/getting-started/4-the-dashboard-tour.md +53 -0
  142. package/docs/guide/fr/insights/1-analytics-and-cost-tracking.md +78 -0
  143. package/docs/guide/fr/insights/2-the-integrated-terminal.md +46 -0
  144. package/docs/guide/fr/insights/3-code-explorer.md +50 -0
  145. package/docs/guide/fr/integrations/1-ai-providers.md +64 -0
  146. package/docs/guide/fr/integrations/2-plugins.md +44 -0
  147. package/docs/guide/fr/integrations/3-jira-integration.md +71 -0
  148. package/docs/guide/fr/integrations/4-mobile-companion.md +38 -0
  149. package/docs/guide/fr/pipeline/1-rails-and-jobs.md +94 -0
  150. package/docs/guide/fr/pipeline/2-the-job-detail-view.md +90 -0
  151. package/docs/guide/fr/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  152. package/docs/guide/fr/pipeline/4-picking-an-engine-per-rail.md +60 -0
  153. package/docs/guide/fr/settings/1-themes.md +37 -0
  154. package/docs/guide/fr/settings/2-language.md +39 -0
  155. package/docs/guide/fr/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  156. package/docs/guide/fr/settings/4-where-your-data-lives.md +48 -0
  157. package/docs/guide/fr/specs/1-specs-and-the-backlog.md +52 -0
  158. package/docs/guide/fr/specs/2-add-spec-quick-mode.md +45 -0
  159. package/docs/guide/fr/specs/3-add-spec-explore-mode.md +68 -0
  160. package/docs/guide/fr/specs/4-drafts-and-contract-layer.md +81 -0
  161. package/docs/guide/it/agents/1-meet-the-agents.md +38 -0
  162. package/docs/guide/it/agents/2-profiles-and-the-balanced-default.md +45 -0
  163. package/docs/guide/it/agents/3-customizing-models-per-agent.md +60 -0
  164. package/docs/guide/it/agents/4-custom-agents-catalog.md +43 -0
  165. package/docs/guide/it/getting-started/1-what-is-specrails.md +49 -0
  166. package/docs/guide/it/getting-started/2-installing-and-first-run.md +42 -0
  167. package/docs/guide/it/getting-started/3-adding-your-first-project.md +58 -0
  168. package/docs/guide/it/getting-started/4-the-dashboard-tour.md +53 -0
  169. package/docs/guide/it/insights/1-analytics-and-cost-tracking.md +78 -0
  170. package/docs/guide/it/insights/2-the-integrated-terminal.md +46 -0
  171. package/docs/guide/it/insights/3-code-explorer.md +50 -0
  172. package/docs/guide/it/integrations/1-ai-providers.md +64 -0
  173. package/docs/guide/it/integrations/2-plugins.md +44 -0
  174. package/docs/guide/it/integrations/3-jira-integration.md +71 -0
  175. package/docs/guide/it/integrations/4-mobile-companion.md +38 -0
  176. package/docs/guide/it/pipeline/1-rails-and-jobs.md +94 -0
  177. package/docs/guide/it/pipeline/2-the-job-detail-view.md +90 -0
  178. package/docs/guide/it/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  179. package/docs/guide/it/pipeline/4-picking-an-engine-per-rail.md +60 -0
  180. package/docs/guide/it/settings/1-themes.md +37 -0
  181. package/docs/guide/it/settings/2-language.md +39 -0
  182. package/docs/guide/it/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  183. package/docs/guide/it/settings/4-where-your-data-lives.md +48 -0
  184. package/docs/guide/it/specs/1-specs-and-the-backlog.md +52 -0
  185. package/docs/guide/it/specs/2-add-spec-quick-mode.md +45 -0
  186. package/docs/guide/it/specs/3-add-spec-explore-mode.md +68 -0
  187. package/docs/guide/it/specs/4-drafts-and-contract-layer.md +81 -0
  188. package/docs/guide/ja/agents/1-meet-the-agents.md +38 -0
  189. package/docs/guide/ja/agents/2-profiles-and-the-balanced-default.md +45 -0
  190. package/docs/guide/ja/agents/3-customizing-models-per-agent.md +60 -0
  191. package/docs/guide/ja/agents/4-custom-agents-catalog.md +43 -0
  192. package/docs/guide/ja/getting-started/1-what-is-specrails.md +49 -0
  193. package/docs/guide/ja/getting-started/2-installing-and-first-run.md +42 -0
  194. package/docs/guide/ja/getting-started/3-adding-your-first-project.md +58 -0
  195. package/docs/guide/ja/getting-started/4-the-dashboard-tour.md +53 -0
  196. package/docs/guide/ja/insights/1-analytics-and-cost-tracking.md +78 -0
  197. package/docs/guide/ja/insights/2-the-integrated-terminal.md +46 -0
  198. package/docs/guide/ja/insights/3-code-explorer.md +50 -0
  199. package/docs/guide/ja/integrations/1-ai-providers.md +64 -0
  200. package/docs/guide/ja/integrations/2-plugins.md +44 -0
  201. package/docs/guide/ja/integrations/3-jira-integration.md +71 -0
  202. package/docs/guide/ja/integrations/4-mobile-companion.md +38 -0
  203. package/docs/guide/ja/pipeline/1-rails-and-jobs.md +94 -0
  204. package/docs/guide/ja/pipeline/2-the-job-detail-view.md +90 -0
  205. package/docs/guide/ja/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  206. package/docs/guide/ja/pipeline/4-picking-an-engine-per-rail.md +60 -0
  207. package/docs/guide/ja/settings/1-themes.md +37 -0
  208. package/docs/guide/ja/settings/2-language.md +39 -0
  209. package/docs/guide/ja/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  210. package/docs/guide/ja/settings/4-where-your-data-lives.md +48 -0
  211. package/docs/guide/ja/specs/1-specs-and-the-backlog.md +52 -0
  212. package/docs/guide/ja/specs/2-add-spec-quick-mode.md +45 -0
  213. package/docs/guide/ja/specs/3-add-spec-explore-mode.md +68 -0
  214. package/docs/guide/ja/specs/4-drafts-and-contract-layer.md +81 -0
  215. package/docs/guide/pt/agents/1-meet-the-agents.md +38 -0
  216. package/docs/guide/pt/agents/2-profiles-and-the-balanced-default.md +45 -0
  217. package/docs/guide/pt/agents/3-customizing-models-per-agent.md +60 -0
  218. package/docs/guide/pt/agents/4-custom-agents-catalog.md +43 -0
  219. package/docs/guide/pt/getting-started/1-what-is-specrails.md +49 -0
  220. package/docs/guide/pt/getting-started/2-installing-and-first-run.md +42 -0
  221. package/docs/guide/pt/getting-started/3-adding-your-first-project.md +58 -0
  222. package/docs/guide/pt/getting-started/4-the-dashboard-tour.md +53 -0
  223. package/docs/guide/pt/insights/1-analytics-and-cost-tracking.md +78 -0
  224. package/docs/guide/pt/insights/2-the-integrated-terminal.md +46 -0
  225. package/docs/guide/pt/insights/3-code-explorer.md +50 -0
  226. package/docs/guide/pt/integrations/1-ai-providers.md +64 -0
  227. package/docs/guide/pt/integrations/2-plugins.md +44 -0
  228. package/docs/guide/pt/integrations/3-jira-integration.md +71 -0
  229. package/docs/guide/pt/integrations/4-mobile-companion.md +38 -0
  230. package/docs/guide/pt/pipeline/1-rails-and-jobs.md +94 -0
  231. package/docs/guide/pt/pipeline/2-the-job-detail-view.md +90 -0
  232. package/docs/guide/pt/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  233. package/docs/guide/pt/pipeline/4-picking-an-engine-per-rail.md +60 -0
  234. package/docs/guide/pt/settings/1-themes.md +37 -0
  235. package/docs/guide/pt/settings/2-language.md +39 -0
  236. package/docs/guide/pt/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  237. package/docs/guide/pt/settings/4-where-your-data-lives.md +48 -0
  238. package/docs/guide/pt/specs/1-specs-and-the-backlog.md +52 -0
  239. package/docs/guide/pt/specs/2-add-spec-quick-mode.md +45 -0
  240. package/docs/guide/pt/specs/3-add-spec-explore-mode.md +68 -0
  241. package/docs/guide/pt/specs/4-drafts-and-contract-layer.md +81 -0
  242. package/docs/guide/zh/agents/1-meet-the-agents.md +38 -0
  243. package/docs/guide/zh/agents/2-profiles-and-the-balanced-default.md +45 -0
  244. package/docs/guide/zh/agents/3-customizing-models-per-agent.md +60 -0
  245. package/docs/guide/zh/agents/4-custom-agents-catalog.md +43 -0
  246. package/docs/guide/zh/getting-started/1-what-is-specrails.md +49 -0
  247. package/docs/guide/zh/getting-started/2-installing-and-first-run.md +42 -0
  248. package/docs/guide/zh/getting-started/3-adding-your-first-project.md +58 -0
  249. package/docs/guide/zh/getting-started/4-the-dashboard-tour.md +53 -0
  250. package/docs/guide/zh/insights/1-analytics-and-cost-tracking.md +78 -0
  251. package/docs/guide/zh/insights/2-the-integrated-terminal.md +46 -0
  252. package/docs/guide/zh/insights/3-code-explorer.md +50 -0
  253. package/docs/guide/zh/integrations/1-ai-providers.md +64 -0
  254. package/docs/guide/zh/integrations/2-plugins.md +44 -0
  255. package/docs/guide/zh/integrations/3-jira-integration.md +71 -0
  256. package/docs/guide/zh/integrations/4-mobile-companion.md +38 -0
  257. package/docs/guide/zh/pipeline/1-rails-and-jobs.md +94 -0
  258. package/docs/guide/zh/pipeline/2-the-job-detail-view.md +90 -0
  259. package/docs/guide/zh/pipeline/3-batch-implement-and-multi-feature.md +78 -0
  260. package/docs/guide/zh/pipeline/4-picking-an-engine-per-rail.md +60 -0
  261. package/docs/guide/zh/settings/1-themes.md +37 -0
  262. package/docs/guide/zh/settings/2-language.md +39 -0
  263. package/docs/guide/zh/settings/3-pipeline-telemetry-and-diagnostics.md +46 -0
  264. package/docs/guide/zh/settings/4-where-your-data-lives.md +48 -0
  265. package/docs/guide/zh/specs/1-specs-and-the-backlog.md +52 -0
  266. package/docs/guide/zh/specs/2-add-spec-quick-mode.md +45 -0
  267. package/docs/guide/zh/specs/3-add-spec-explore-mode.md +68 -0
  268. package/docs/guide/zh/specs/4-drafts-and-contract-layer.md +81 -0
  269. package/docs/internals/README.md +1 -1
  270. package/docs/internals/adding-a-provider.md +192 -59
  271. package/docs/internals/api-reference.md +130 -21
  272. package/docs/internals/architecture.md +22 -9
  273. package/docs/internals/bundled-framework-build-plan.md +264 -0
  274. package/docs/internals/configuration.md +33 -8
  275. package/docs/internals/global-artifacts-alignment-contract.md +486 -0
  276. package/docs/internals/global-artifacts-relocation-evaluation.md +294 -0
  277. package/docs/internals/operations-runbook.md +16 -5
  278. package/docs/internals/profiles.md +42 -14
  279. package/docs/platforms/macos.md +27 -8
  280. package/docs/platforms/windows.md +20 -6
  281. package/docs/running-pipelines.md +17 -9
  282. package/docs/terminal.md +9 -3
  283. package/docs/tracking-cost.md +17 -11
  284. package/package.json +1 -1
  285. package/server/dist/agent-refine-manager.js +20 -5
  286. package/server/dist/artifact-registry.js +468 -0
  287. package/server/dist/attachment-manager.js +5 -8
  288. package/server/dist/browser-capture-manager.js +4 -4
  289. package/server/dist/bundled-core.js +72 -0
  290. package/server/dist/bundled-openspec.js +58 -0
  291. package/server/dist/chat-manager.js +42 -5
  292. package/server/dist/code-explorer-router.js +10 -7
  293. package/server/dist/config.js +7 -2
  294. package/server/dist/context-budget.js +17 -6
  295. package/server/dist/context-scope.js +6 -2
  296. package/server/dist/contract-refine-runner.js +31 -9
  297. package/server/dist/desktop-router.js +24 -1
  298. package/server/dist/docs-router.js +210 -132
  299. package/server/dist/file-summary-manager.js +41 -16
  300. package/server/dist/framework-manager.js +248 -0
  301. package/server/dist/framework-migration.js +308 -0
  302. package/server/dist/index.js +30 -0
  303. package/server/dist/install-config-path.js +73 -0
  304. package/server/dist/jira/jira-sync-manager.js +23 -11
  305. package/server/dist/openspec-shim.js +153 -0
  306. package/server/dist/plugins-router.js +19 -8
  307. package/server/dist/profiles-router.js +38 -16
  308. package/server/dist/project-registry.js +101 -3
  309. package/server/dist/project-router-chat.js +1 -1
  310. package/server/dist/project-router-helpers.js +25 -12
  311. package/server/dist/project-router-jobs.js +3 -3
  312. package/server/dist/project-router-settings.js +8 -6
  313. package/server/dist/project-router-setup.js +27 -10
  314. package/server/dist/project-router-spending.js +6 -1
  315. package/server/dist/project-router-tickets.js +30 -10
  316. package/server/dist/project-router.js +16 -1
  317. package/server/dist/queue-manager.js +149 -18
  318. package/server/dist/setup-manager.js +131 -29
  319. package/server/dist/smash-runner.js +21 -6
  320. package/server/dist/ticket-store.js +6 -2
  321. package/server/dist/ticket-watcher.js +5 -1
  322. package/server/dist/vitest-setup.js +25 -0
  323. package/server/dist/workspace-manager.js +199 -0
  324. package/server/dist/workspace-resolution.js +147 -0
  325. package/client/dist/assets/index-DgKfQFcf.css +0 -2
  326. package/client/dist/assets/setup-BIIkb-_K.js +0 -1
  327. package/client/dist/assets/setup-BeQxu9kD.js +0 -1
  328. package/client/dist/assets/setup-CPa6GnlI.js +0 -1
  329. package/client/dist/assets/setup-CZl4OEJx.js +0 -1
  330. package/client/dist/assets/setup-ChpodNfn.js +0 -1
  331. package/client/dist/assets/setup-D_fjJH6u.js +0 -1
  332. package/client/dist/assets/setup-YzD8DX4O.js +0 -1
  333. package/client/dist/assets/setup-fRpDozmq.js +0 -1
  334. package/docs/adding-a-provider.md +0 -107
@@ -0,0 +1,49 @@
1
+ # Was ist specrails
2
+
3
+ Willkommen bei **specrails** – einer Desktop-App, die einen KI-Programmierassistenten in ein echtes Software-Team verwandelt, das an *deinen* Projekten arbeitet, auf *deinem* Rechner.
4
+
5
+ Statt Prompts hin und her zu kopieren, beschreibst du als **Spec**, was du haben möchtest, und specrails schickt sie durch eine komplette Entwicklungs-Pipeline – Entwerfen, Bauen, Prüfen und Ausliefern der Änderung – und du schaust live dabei zu.
6
+
7
+ ## Spec-getriebene KI-Entwicklung
8
+
9
+ Das Herzstück von specrails ist eine einfache Idee: **Der beste Weg zu gutem Code aus einer KI führt über eine klare Spec.**
10
+
11
+ Eine *Spec* ist eine kurze, strukturierte Beschreibung einer einzelnen Aufgabe – ein Feature, ein Fix, ein Refactoring. Du schreibst sie in Sekunden oder formst sie in einem geführten Chat, der die richtigen Fragen stellt und sie für dich entwirft. Jede Spec wird zu einem **Ticket** auf deinem Projektboard, genau wie eine Aufgabe in jedem Issue-Tracker.
12
+
13
+ Von dort aus übergibst du die Spec an die Pipeline und überlässt der KI die Schwerarbeit.
14
+
15
+ ## Die Pipeline: Architect → Developer → Reviewer → Ship
16
+
17
+ Wenn du eine Spec startest, läuft sie bei specrails durch vier Phasen, jede gespielt von einem spezialisierten KI-Agenten:
18
+
19
+ 1. **Architect** – liest deine Spec und den umgebenden Code und plant dann die Änderung: welche Dateien anzufassen sind und wie die Lösung aussehen soll.
20
+ 2. **Developer** – schreibt den eigentlichen Code, gemäß dem Plan.
21
+ 3. **Reviewer** – prüft die Arbeit auf Korrektheit und Qualität und fängt Probleme ab, bevor du sie bemerkst.
22
+ 4. **Ship** – finalisiert die Änderung, sodass sie bereit zum Commit ist.
23
+
24
+ Du siehst jede Phase, während sie läuft, mit Live-Logs direkt von der KI. Nichts bleibt verborgen – wenn etwas schiefläuft, siehst du genau, wo.
25
+
26
+ ## Projekte
27
+
28
+ In specrails dreht sich alles um **Projekte**. Ein Projekt ist einfach ein Ordner auf deinem Computer, der eine Codebasis enthält. Du kannst beliebig viele Projekte hinzufügen und blitzschnell zwischen ihnen wechseln – jedes behält seine eigenen Specs, seine Job-Historie, seine Analytics und seine Einstellungen.
29
+
30
+ specrails fasst niemals Code an, um den du nicht gebeten hast. Es arbeitet in deinem bestehenden Repository, und du behältst die Kontrolle darüber, was committet wird.
31
+
32
+ ## Wähle deinen KI-Provider
33
+
34
+ specrails arbeitet mit den großen KI-Programmier-CLIs zusammen:
35
+
36
+ - **Claude** (Claude Code)
37
+ - **Codex** (Codex CLI)
38
+ - **Gemini** (Gemini CLI)
39
+
40
+ Nimm einfach den, den du ohnehin schon nutzt – oder installiere mehrere und wähle pro Aufgabe. Ein Projekt kann mit einem einzelnen Provider oder mit mehreren gleichzeitig laufen, sodass du dich nie festlegen musst.
41
+
42
+ ## Warum es dir gefallen wird
43
+
44
+ - **Tempo ohne Chaos** – Specs halten die KI fokussiert, sodass du brauchbare Änderungen bekommst statt ausufernder Rätselraterei.
45
+ - **Volle Transparenz** – Live-Logs, eine übersichtliche Pipeline-Ansicht und Analytics pro Projekt zeigen dir genau, was passiert ist und was es gekostet hat.
46
+ - **Dein Rechner, dein Code** – alles läuft lokal gegen dein echtes Repository.
47
+ - **Alles an einem Ort** – Specs, Jobs, Chat, ein integriertes Terminal und Kostenverfolgung, alles in einem einzigen Fenster.
48
+
49
+ Bereit loszulegen? Als Nächstes: [Installation & erster Start](installing-and-first-run).
@@ -0,0 +1,42 @@
1
+ # Installation & erster Start
2
+
3
+ specrails auf deinen Rechner zu bekommen, dauert nur ein paar Minuten. Hier ist der gesamte Ablauf.
4
+
5
+ ## 1. Herunterladen und installieren
6
+
7
+ Schnapp dir den Installer für deine Plattform:
8
+
9
+ - **macOS (Apple Silicon)** – eine `.dmg`-Datei. Öffne sie und zieh **specrails** in deinen Programme-Ordner.
10
+ - **Windows** – ein `.exe`-Setup-Installer. Führe ihn aus und folge den Anweisungen.
11
+
12
+ > **Hinweis zu Sicherheitsmeldungen unter macOS und Windows**
13
+ >
14
+ > - Unter **Windows** ist der Installer noch nicht code-signiert, deshalb zeigt SmartScreen möglicherweise eine Warnung. Klicke auf **Weitere Informationen → Trotzdem ausführen**, um fortzufahren.
15
+ > - Unter **macOS** ist die App signiert und notarisiert, sie sollte sich also problemlos öffnen.
16
+
17
+ ## 2. Was du brauchst (Voraussetzungen)
18
+
19
+ specrails führt KI-Entwicklungs-Pipelines aus, indem es echte Kommandozeilen-Tools ansteuert – ein paar Dinge müssen also verfügbar sein. Die gute Nachricht: Die Desktop-App **bringt die meisten davon schon für dich mit** (Node.js, npm und Git stecken in der App), sodass auf einem frischen Rechner meist nichts zu installieren ist.
20
+
21
+ Das Einzige, was specrails nicht mitbringen kann, ist die **KI-Provider-CLI** selbst. Du brauchst mindestens eine davon:
22
+
23
+ - **Claude Code**
24
+ - **Codex CLI**
25
+ - **Gemini CLI**
26
+
27
+ Installiere die, die du nutzen möchtest, melde dich einmal über dein Terminal an – fertig. specrails erkennt automatisch, welche Provider vorhanden sind.
28
+
29
+ > Falls einmal ein Tool als fehlend markiert wird, zeigt die App einen **Weitere Informationen**-Link mit Installationsbefehlen zum Kopieren, passend zu deinem Betriebssystem (Homebrew unter macOS, winget unter Windows, apt/dnf unter Linux). Du kannst jederzeit erneut prüfen, ohne neu zu starten.
30
+
31
+ ## 3. Erster Start – der Willkommensbildschirm
32
+
33
+ Wenn du specrails zum ersten Mal öffnest, landest du auf einem aufgeräumten **Willkommensbildschirm**. Es gibt noch keine Projekte, deshalb lädt dich die App ein, dein erstes hinzuzufügen.
34
+
35
+ Du siehst:
36
+
37
+ - Eine kurze Beschreibung dessen, was specrails leistet.
38
+ - Eine einzelne Schaltfläche **Dein erstes Projekt hinzufügen**.
39
+
40
+ Das ist das gesamte Onboarding – kein Konto anzulegen, keine Registrierung. specrails läuft komplett auf deinem Rechner.
41
+
42
+ Klicke auf **Dein erstes Projekt hinzufügen** und weiter geht's mit [Dein erstes Projekt hinzufügen](adding-your-first-project).
@@ -0,0 +1,58 @@
1
+ # Dein erstes Projekt hinzufügen
2
+
3
+ Ein Projekt ist einfach ein Ordner auf deinem Computer, der eine Codebasis enthält. Verbinden wir eins.
4
+
5
+ ## Den Dialog „Projekt hinzufügen“ öffnen
6
+
7
+ Klicke auf dem Willkommensbildschirm auf **Dein erstes Projekt hinzufügen** (oder später auf die Schaltfläche **Projekt hinzufügen** in der linken Seitenleiste). Ein kleiner Dialog erscheint.
8
+
9
+ ## Die Details ausfüllen
10
+
11
+ **Projektordner** *(erforderlich)*
12
+
13
+ Zeige specrails den Ordner, der deinen Code enthält. In der Desktop-App kannst du auf das Ordnersymbol klicken, um ihn visuell auszuwählen, oder den vollständigen Pfad einfügen. Das sollte das Wurzelverzeichnis deines Repositorys sein – der Ordner, der deinen Code und (üblicherweise) ein `.git`-Verzeichnis enthält.
14
+
15
+ **Projektname** *(optional)*
16
+
17
+ Ein freundliches Label, das in der Seitenleiste angezeigt wird. Lässt du es leer, verwendet specrails den Ordnernamen.
18
+
19
+ **Provider**
20
+
21
+ Wähle, welche KI-Provider dieses Projekt nutzen soll. specrails zeigt dir die, die es auf deinem Rechner gefunden hat:
22
+
23
+ - 🤖 **Claude**
24
+ - ⚡ **Codex**
25
+ - ✨ **Gemini**
26
+
27
+ Nicht gefundene Provider sind ausgegraut und als *nicht gefunden* markiert – installiere einen, melde dich an und öffne den Dialog dann erneut. Standardmäßig ist jeder verfügbare Provider vorausgewählt, du kannst die Auswahl aber auf genau den reduzieren, den du möchtest. Wählst du mehr als einen, wird der **erste** zum Standard des Projekts; pro Aufgabe kannst du später trotzdem wählen.
28
+
29
+ > Im Hintergrund läuft eine schnelle Prüfung, um sicherzustellen, dass die benötigten Tools vorhanden sind. Fehlt etwas Wesentliches, bleibt die **Hinzufügen**-Schaltfläche deaktiviert, und ein **Weitere Informationen**-Link liefert dir die genauen Installationsbefehle.
30
+
31
+ Klicke auf **Hinzufügen**, um fortzufahren.
32
+
33
+ ## Setup, das in Sekunden läuft
34
+
35
+ Ist der Ordner bereits für specrails konfiguriert, bist du fertig – das Projekt erscheint sofort in deiner Seitenleiste.
36
+
37
+ Handelt es sich um ein frisches Projekt, läuft ein kurzer **Einrichtungsassistent**. Er hat drei Schritte:
38
+
39
+ 1. **Konfigurieren** – bestätige die Grundlagen für jeden Provider, den du ausgewählt hast.
40
+ 2. **Installieren** – specrails richtet das Projekt automatisch ein. Das ist die *schnelle* Installation: einsatzbereite Vorlagen-Agenten, die in Sekunden bereitstehen. Du siehst dabei ein Live-Log.
41
+ 3. **Fertig** – eine Zusammenfassung, die bestätigt, dass alles bereit ist.
42
+
43
+ Bei einem Projekt mit mehreren Providern läuft die Installation einmal pro Provider, nacheinander, und der Schritt „Fertig“ zeigt für jeden eine eigene Karte.
44
+
45
+ ## Was installiert wird
46
+
47
+ Das Setup ist bewusst schlank und **nicht-invasiv**. specrails fügt deinem Projekt eine kleine Menge Konfiguration hinzu, damit die Pipeline weiß, wie sie laufen soll:
48
+
49
+ - Einen `.specrails/`-Ordner, der die Agent-Profile und lokalen Einstellungen deines Projekts enthält.
50
+ - Agent-Definitionen unter `.claude/agents/`, die die Pipeline Architect → Developer → Reviewer → Ship antreiben.
51
+
52
+ Mehr nicht – specrails schreibt deinen Quellcode beim Setup nicht um, und diese Dateien lassen sich problemlos committen, wenn du die Konfiguration mit deinem Team teilen möchtest.
53
+
54
+ > **Lieber das tiefgehende Setup?** Die App liefert bewusst die schnelle Vorlagen-Installation. Wenn du den KI-angereicherten Ablauf bevorzugst (Codebasis-Analyse und individuelle Agent-Personas), kannst du `npx specrails-core@latest init` aus deinem Projektordner in einem Terminal ausführen.
55
+
56
+ ## Du bist drin
57
+
58
+ Sobald das Setup abgeschlossen ist, setzt specrails dich direkt ins Dashboard deines Projekts. Zeit für die Tour – siehe [Die Dashboard-Tour](the-dashboard-tour).
@@ -0,0 +1,53 @@
1
+ # Die Dashboard-Tour
2
+
3
+ Mit einem hinzugefügten Projekt blickst du nun auf dein **Projekt-Dashboard** – deine Basis, um Specs in ausgelieferten Code zu verwandeln. So findest du dich zurecht.
4
+
5
+ ## Das große Ganze
6
+
7
+ Das Fenster hat drei Bereiche:
8
+
9
+ - **Linke Seitenleiste** – deine Projektliste. Klicke auf ein beliebiges Projekt, um sofort dorthin zu wechseln; alles andere im Fenster passt sich an. Auch die Schaltfläche **Projekt hinzufügen** ist hier zu Hause.
10
+ - **Hauptbereich** – das Dashboard des aktiven Projekts: deine Specs und die Pipeline, die sie ausführt.
11
+ - **Rechte Seitenleiste** – Navigation zwischen den Abschnitten des aktuellen Projekts.
12
+
13
+ ## Das Haupt-Dashboard
14
+
15
+ Hier passiert die Arbeit. Das Dashboard zeigt:
16
+
17
+ - **Deine Specs** – die Tickets, die du erstellt hast, nach Status sortiert (Backlog/To-do bis Fertig). Du kannst sie als Liste, als Raster oder als Haftnotiz-Karten anzeigen, ganz wie du magst.
18
+ - **Eine Möglichkeit, eine Spec hinzuzufügen** – starte eine neue Aufgabe. Du kannst direkt eine schnelle Spec schreiben oder einen geführten **Explore**-Chat öffnen, der dir hilft, sie im Gespräch zu formen und das Ticket für dich zu entwerfen.
19
+ - **Rails** – das sind die Spuren, auf denen Specs gebaut werden. Lege eine Spec auf ein Rail und starte sie, um sie durch die Pipeline Architect → Developer → Reviewer → Ship zu schicken. Mehrere Rails können gleichzeitig laufen, sodass du an mehreren Dingen parallel arbeiten kannst.
20
+
21
+ Während eine Spec läuft, siehst du ihren Pipeline-Fortschritt und Live-Logs – die Echtzeit-Ausgabe der KI, während sie deine Änderung entwirft, programmiert und prüft.
22
+
23
+ ## Die rechte Seitenleiste: Projektabschnitte
24
+
25
+ Die rechte Seitenleiste ist deine Schaltzentrale für das aktuelle Projekt. Fahre mit der Maus darüber, um sie auszuklappen, oder pinne sie offen an. Diese Abschnitte findest du:
26
+
27
+ - **Dashboard** – das Specs-Board und die Rails (wo du gerade warst).
28
+ - **Jobs** – jeder Pipeline-Lauf dieses Projekts, vergangen und aktuell, mit Status, Dauer und der Möglichkeit, in die Details und Logs jedes Laufs einzutauchen.
29
+ - **Analytics** – was deine KI-Nutzung kostet. Ausgaben aufgeschlüsselt nach Tag, nach Aktivität, nach Modell und nach Ticket – damit es keine Überraschungen gibt.
30
+ - **Agenten** – die Agent-Profile deines Projekts: welche Agenten in der Pipeline laufen und welche KI-Modelle sie nutzen. *(Nur bei Claude-betriebenen Projekten.)*
31
+ - **Code** – ein schreibgeschützter Datei-Browser mit KI-Zusammenfassungen in einfacher Sprache und Chips, die zeigen, welche Dateien die KI angefasst hat. Ideal für Nicht-Entwickler, die mitverfolgen möchten.
32
+ - **Integrationen** – optionale Erweiterungen, etwa das Verbinden deiner Specs mit einem **Jira**-Board oder das Aktivieren zusätzlicher Werkzeuge für die KI.
33
+ - **Einstellungen** – projektspezifische Optionen (Telemetrie, Budgets, Provider-Konfiguration und mehr).
34
+
35
+ > Manche Abschnitte erscheinen nur, wenn sie für die gewählten Provider sinnvoll sind – zum Beispiel ist **Agenten** spezifisch für Claude. Siehst du einen Abschnitt nicht, gilt er für das Setup dieses Projekts schlicht nicht.
36
+
37
+ ## Die Statusleiste
38
+
39
+ Ein schmaler Streifen verläuft ganz unten am Fenster. Klein, aber praktisch:
40
+
41
+ - **Verbindungsanzeige** (links) – ein farbiger Punkt mit Beschriftung, der zeigt, dass die App aktiv ist: Grün für *verbunden*, Bernstein während des *Neuverbindens*, Blau während des *Synchronisierens* direkt nach einer erneuten Verbindung. Du wirst sie selten brauchen, aber wenn doch, beruhigt sie.
42
+ - **Gesamtausgaben** (rechts) – eine laufende Summe dessen, was du ausgegeben hast, sodass die Kosten immer nur einen Blick entfernt sind.
43
+ - **Terminal-Umschalter** (ganz rechts) – öffnet das integrierte Terminal-Panel. Drücke **Cmd+J** (macOS) oder **Ctrl+J** (Windows/Linux), um es jederzeit ein- oder auszublenden. Es ist eine vollwertige Shell, direkt in deinem Projektordner geöffnet.
44
+
45
+ ## Ein paar praktische Tastenkürzel
46
+
47
+ - **Cmd/Ctrl+B** – Seitenleisten anpinnen oder einklappen.
48
+ - **Cmd/Ctrl+J** – Terminal-Panel ein-/ausblenden.
49
+ - **Cmd/Ctrl+K** – Suche öffnen.
50
+
51
+ ## Wie es weitergeht
52
+
53
+ Das war die grobe Übersicht. Von hier aus ist der natürliche erste Schritt, eine **Spec hinzuzufügen** und sie auf einem Rail zu starten – schau der Pipeline von Anfang bis Ende zu und prüfe dann unter **Analytics**, was sie gekostet hat. Willkommen an Bord.
@@ -0,0 +1,78 @@
1
+ # Analytics & Kostenverfolgung
2
+
3
+ Jedes Mal, wenn Specrails in deinem Auftrag eine KI-CLI ausführt – einen Pipeline-Job, eine Quick-Spec, eine Explore-Sitzung, eine KI-Bearbeitung, eine Dateizusammenfassung – wird festgehalten, was passiert ist: welches Modell gelaufen ist, wie viele Tokens hinein- und hinausgingen, wie lange es gedauert hat und was es gekostet hat. Der Bereich **Analytics** verwandelt all das in ein einziges Dashboard, damit du immer weißt, wohin deine KI-Ausgaben fließen.
4
+
5
+ Du öffnest ihn über die rechte Seitenleiste (Beschriftung **Analytics**). Alles, was du siehst, bezieht sich auf das Projekt, in dem du dich gerade befindest – wechselst du das Projekt, ziehen die Zahlen mit.
6
+
7
+ ## Was als Ausgabe zählt
8
+
9
+ Specrails verfolgt fünf Arten von KI-Aktivität, sogenannte *Surfaces*. Jede ist in allen Diagrammen einheitlich farblich gekennzeichnet, damit du sie auf einen Blick erkennst:
10
+
11
+ - **Job** – ein Pipeline-Rail, das Architect → Developer → Reviewer → Ship durchläuft.
12
+ - **Quick-Spec** – eine Spec, die über den schnellen „Spec hinzufügen“-Weg erstellt wurde.
13
+ - **Explore-Spec** – eine Explore-Unterhaltung, in der du eine Spec im Gespräch ausarbeitest.
14
+ - **KI-Bearbeitung** – eine KI-gestützte Verfeinerung an einem Agenten oder einer Datei.
15
+ - **Dateizusammenfassung** – die verständlichen Zusammenfassungen, die den Code-Explorer speisen.
16
+
17
+ Ein paar Dinge werden bewusst *nicht* verfolgt: Sowohl die Chat-Seitenleiste als auch der Einrichtungsassistent starten KI-CLIs, tauchen aber nie in deinen Ausgaben auf. So spiegelt das Dashboard echte, wiederholbare Arbeit wider statt beiläufigem Geplauder.
18
+
19
+ ## Das Dashboard lesen
20
+
21
+ Die Seite besteht aus einer Handvoll Blöcke, von oben nach unten:
22
+
23
+ ### Der Burn-Meter (Hero)
24
+
25
+ Die große Zahl ganz oben sind deine Gesamtausgaben für den gewählten Zeitraum, mit einem **ggü. Vorperiode**-Delta, an dem du auf einen Blick ablesen kannst, ob du im Vergleich zum vorherigen Fenster nach oben oder unten tendierst. Wenn du ein Projekt gerade erst nutzt, verrät dir der Leerzustand, wann das Tracking begonnen hat („Tracking gestartet am JJJJ-MM-TT“) – es gibt keine rückwirkende Erfassung, der Meter kennt also nur Läufe, die während dieser Version stattgefunden haben.
26
+
27
+ ### Täglicher Verlauf
28
+
29
+ Ein gestapeltes Balkendiagramm der Ausgaben pro Tag, aufgeschlüsselt nach Surface. Tage ohne Aktivität werden als Null angezeigt und nicht übersprungen, damit das Bild deiner Woche ehrlich bleibt. Das ist der schnellste Weg, um zu sehen, *wann* ein teurer Durchlauf stattgefunden hat.
30
+
31
+ ### Quick vs. Explore
32
+
33
+ Eine Vergleichskarte, die deine beiden Stile der Spec-Erstellung nebeneinanderstellt. Wenn du weniger als fünf Explore-Sitzungen durchgeführt hast, zeigt sie statt irreführender Durchschnittswerte einen sanften Handlungshinweis – kleine Stichproben taugen nicht für verlässliche Vergleiche.
34
+
35
+ ### Nach Modell
36
+
37
+ Deine teuersten Modelle nach Ausgaben (bis zu zehn). Klicke auf ein beliebiges Modell, um das gesamte Dashboard auf genau dieses Modell zu filtern – praktisch, wenn du wissen willst, was ein bestimmtes High-End-Modell wirklich kostet.
38
+
39
+ ### Streudiagramm Kosten vs. Runden
40
+
41
+ Jeder Punkt steht für einen Aufruf und trägt die Kosten gegen die Anzahl der Runden auf. Ausreißer – die teuren Läufe mit vielen Runden – springen sofort ins Auge. (Das Streudiagramm zeigt deine 500 jüngsten Punkte, damit es reaktionsschnell bleibt.)
42
+
43
+ ### Top-Tickets
44
+
45
+ Deine zehn teuersten Tickets über *alle* Surfaces hinweg zusammengefasst, sodass ein Ticket, das in Explore wenig und in einem Job viel gekostet hat, seine wahre Gesamtsumme zeigt. Gelöschte Tickets und nicht zugeordnete Läufe bekommen eigene Sammelposten, damit nichts stillschweigend aus den Summen verschwindet.
46
+
47
+ ### Tabelle der Rohaufrufe
48
+
49
+ Die nackte Wahrheit: eine Zeile pro Aufruf. Dieser Block hat eigene Sekundärfilter, die nur die Tabelle betreffen, sodass du ins Detail gehen kannst, ohne die Diagramme darüber zu stören.
50
+
51
+ ## Filtern
52
+
53
+ Die fixierte Kopfzeile ganz oben trägt die beiden Hauptfilter – **Zeitraum** und **Surface** – und beide werden in der Seiten-URL gespeichert. Das heißt, du kannst eine gefilterte Ansicht („letzte 30 Tage, nur Jobs“) als Lesezeichen speichern oder teilen, und sie öffnet sich wieder genau so, wie du sie verlassen hast. Die Filter der Rohtabelle sind davon getrennt und bleiben lokal in diesem Block.
54
+
55
+ Eine Anmerkung zur Genauigkeit: Fehlgeschlagene und abgebrochene Läufe bleiben aus den *Kostendurchschnitten* heraus (sie würden die Werte pro Lauf verzerren), zählen aber weiterhin in deine Gesamtzahl der Läufe und deine Fehlerquote ein. So bleiben die Durchschnitte sauber, während das Bild der Zuverlässigkeit vollständig bleibt.
56
+
57
+ ## Kosten pro Ticket
58
+
59
+ Du musst nicht zur Analytics-Seite kommen, um zu sehen, was eine Spec gekostet hat. Öffne ein beliebiges Ticket, und wenn ihm Ausgaben zugeordnet sind, siehst du direkt unter dem Titel eine einzeilige Zusammenfassung:
60
+
61
+ > $0.42 · 6 Runden · 1m 12s aktiv · Aufschlüsselung
62
+
63
+ Klicke darauf und du landest auf der Analytics-Seite, bereits auf dieses Ticket gefiltert. Das ist der schnellste Weg von „Was hat mich dieses Feature gekostet?“ zur vollständigen Aufschlüsselung.
64
+
65
+ ## Daten exportieren
66
+
67
+ Wenn du die Zahlen außerhalb der App brauchst – eine Tabelle, einen Finanzbericht, deine eigene Auswertung – nutze das Dropdown **Export**. Es bietet vier Formate:
68
+
69
+ - **Zusammenfassung CSV** – eine Datei aus mehreren Abschnitten mit Summen, dem täglichen Verlauf, nach Surface, nach Modell und Top-Tickets.
70
+ - **Zusammenfassung JSON** – dieselbe Zusammenfassung, strukturiert.
71
+ - **Rohdaten CSV** – jede Aufrufzeile (bis zu 10.000; es wird vermerkt, falls gekürzt werden musste).
72
+ - **Rohdaten JSON** – dieselben Rohzeilen, strukturiert.
73
+
74
+ Exporte berücksichtigen die aktuell angewendeten Zeitraum- und Surface-Filter, und die Dateien sind so benannt, dass sie sich sinnvoll sortieren lassen: `<project>-analytics-<period>-<date>.csv`. Die Schaltfläche ist deaktiviert, wenn es nichts zu exportieren gibt, und du erhältst eine klare Fehlermeldung als Toast, falls ein Download fehlschlägt.
75
+
76
+ ## Immer live
77
+
78
+ Du musst nicht neu laden. Sobald irgendwo im Projekt ein neuer Aufruf erfasst wird, lädt sich das geöffnete Dashboard kurz darauf still neu, sodass der Burn-Meter mit der Arbeit Schritt hält, während sie fertig wird.
@@ -0,0 +1,46 @@
1
+ # Das integrierte Terminal
2
+
3
+ Specrails hat ein echtes Terminal direkt eingebaut – das Panel, das vom unteren Rand des Fensters nach oben fährt, genau wie in VS Code oder Cursor. Es führt deine tatsächliche Shell in deinem tatsächlichen Projektverzeichnis aus, sodass du `git`, `npm`, Tests oder alles andere ausführen kannst, ohne die App zu verlassen.
4
+
5
+ ## Öffnen und schließen
6
+
7
+ Am schnellsten geht es über die Tastatur: **Cmd+J** (macOS) bzw. **Ctrl+J** (Windows/Linux) öffnet und schließt das Panel und fokussiert das Terminal in dem Moment, in dem es erscheint, sodass du sofort lostippen kannst. Du kannst auch das Chevron in der Statusleiste verwenden.
8
+
9
+ Das Panel hat drei Zustände:
10
+
11
+ - **Ausgeblendet** – weggeräumt.
12
+ - **Wiederhergestellt** – das normale Panel in geteilter Höhe.
13
+ - **Maximiert** – übernimmt den Arbeitsbereich, wenn du Platz brauchst, um Ausgaben zu lesen.
14
+
15
+ Das Minimieren des Panels (über das Chevron) beendet **nichts** – deine Shells laufen im Hintergrund weiter. Das Einzige, was eine Sitzung wirklich beendet, ist das Schließen (das Papierkorb-Symbol oder das ✕ pro Tab).
16
+
17
+ ## Mehrere Sitzungen
18
+
19
+ Du kannst im selben Projekt mehrere Terminals gleichzeitig laufen lassen – bis zu zehn. Jedes bekommt seinen eigenen Tab; du kannst sie umbenennen, damit „Dev-Server“ und „Tests“ nicht durcheinandergeraten. Sie starten alle in deinem Projektordner und laden dein Shell-Profil (`.zshrc`, `.bashrc` und so weiter), sodass deine Aliase und dein PATH genau das sind, was du erwartest.
20
+
21
+ Und jetzt der wichtige Teil: Deine Terminals **überstehen den Wechsel von Projekten und Tabs**. Specrails hält jede Sitzung im Hintergrund am Leben und intakt – Scrollback, laufende Prozesse, einfach alles –, sodass ein Abstecher zu Analytics und zurück deine Shell nicht zurücksetzt oder einen lang laufenden Befehl unterbricht. Sitzungen enden nur, wenn du sie ausdrücklich schließt (oder wenn du das gesamte Projekt entfernst).
22
+
23
+ ## Pro Projekt, gemerkt
24
+
25
+ Ob das Panel geöffnet ist, wie hoch du es gezogen hast, welche Tabs existieren – all das wird **pro Projekt** gemerkt. Kehrst du zu einem Projekt zurück, ist es so eingerichtet, wie du es verlassen hast.
26
+
27
+ ## Die Premium-Funktionen
28
+
29
+ Das ist keine Konsole von der Stange. Das Terminal bringt die Annehmlichkeiten mit, die du von einem erstklassigen Terminal erwartest:
30
+
31
+ - **Schnelles, gestochen scharfes Rendering** dank WebGL (mit automatischem Fallback, damit es nie kaputtgeht), vollständiger Unicode-Breitenbehandlung und Schrift-Ligaturen.
32
+ - **Durchsuche deinen Scrollback** mit **Cmd+F** – ideal, um den Fehler zu finden, der 500 Zeilen weiter oben vergraben liegt.
33
+ - **Schrift-Zoom** mit **Cmd+=**, **Cmd+-** und **Cmd+0** zum Zurücksetzen.
34
+ - **Zwischenablage-Kürzel** – Cmd+C / Cmd+V zum Kopieren und Einfügen, Cmd+K zum Leeren – plus ein Kontextmenü per Rechtsklick.
35
+ - **Dateipfade per Drag-and-drop** (in der Desktop-App): Ziehe eine Datei auf das Terminal, und ihr Pfad wird eingefügt – korrekt für deine Shell maskiert.
36
+ - **Sanftes Anpassen der Größe** – das Ziehen der Panel-Höhe oder das Einklappen der Seitenleiste lässt die Ausgabe nicht ruckeln.
37
+ - **Inline-Bilder** – Terminals, die Bilder im Sixel- oder iTerm2-Stil ausgeben, stellen sie direkt an Ort und Stelle dar.
38
+ - **Shell-Integration** – Specrails weiß, wo jeder Befehl beginnt und endet, kann also deinen Befehlsverlauf nachverfolgen und dich benachrichtigen, wenn ein lang laufender Befehl fertig ist (eine Desktop-Benachrichtigung, mit Browser-Fallback). Falls deine Shell aus irgendeinem Grund nicht instrumentiert werden kann, läuft alles leise weiter und du wirst einmal darauf hingewiesen.
39
+
40
+ ## Einstellungen
41
+
42
+ Terminal-Einstellungen liegen auf zwei Ebenen: einer app-weiten Voreinstellung und einer optionalen projektspezifischen Überschreibung. Die projektspezifische Einstellung gewinnt, wenn sie vorhanden ist, sodass du ein globales Erscheinungsbild beibehalten und gleichzeitig ein einzelnes Projekt anpassen kannst, das etwas anderes braucht.
43
+
44
+ ## Ausschalten
45
+
46
+ Das Terminal ist standardmäßig aktiviert. Wenn du es lieber nicht haben möchtest, kannst du es über die Flags `VITE_FEATURE_TERMINAL_PANEL` (Client) oder `SPECRAILS_TERMINAL_PANEL` (Server) deaktivieren – setze eines der beiden auf `false`. Die meisten lassen es einfach an.
@@ -0,0 +1,50 @@
1
+ # Code-Explorer
2
+
3
+ Der Bereich **Code** bietet dir ein freundliches, schreibgeschütztes Fenster in dein Repository – besonders gedacht für alle, die verstehen möchten, was die KI gebaut hat, ohne ständig in einem Editor zu leben. Links siehst du einen Dateibaum, rechts einen Code-Viewer und über dem Code eine verständliche Zusammenfassung dessen, was jede Datei tatsächlich tut.
4
+
5
+ In dieser Version ist alles strikt schreibgeschützt: Nichts, was du hier tust, verändert deine Dateien. Stell dir das eher als Lesesaal vor, nicht als Werkstatt.
6
+
7
+ Du öffnest ihn über die rechte Seitenleiste (**Code**), und wie alles andere bezieht er sich auf dein aktuelles Projekt.
8
+
9
+ ## Der Dateibaum
10
+
11
+ Der linke Bereich ist ein virtualisierter Baum der Dateien deines Projekts – schnell selbst bei großen Repos. Er respektiert deine `.gitignore` sowie eine eingebaute Sperrliste, sodass du die Dateien siehst, die zählen, und nicht ein Meer aus Build-Artefakten und `node_modules`.
12
+
13
+ Neben Dateien fallen dir **Herkunfts-Chips** auf – kleine Markierungen, die dir sagen, dass eine Datei *von der KI bearbeitet* wurde. Das ist das Herzstück des Code-Explorers: Specrails hält fest, welche Dateien jeder Pipeline-Job erstellt oder verändert hat, und verknüpft sie mit dem Ticket, das die Arbeit ausgelöst hat. So kannst du auf einen Blick die Frage beantworten: „Hat die KI das geschrieben oder ich?“
14
+
15
+ Oben im Baum gibt es einen Filter:
16
+
17
+ - **Tocado por IA / Von KI bearbeitet** (die Voreinstellung) – nur Dateien, die die KI verändert hat.
18
+ - **Alle Dateien** – der vollständige Baum.
19
+
20
+ Deine Auswahl wird pro Projekt gemerkt, sodass du, wenn dir vor allem KI-erstellte Änderungen wichtig sind, sie jedes Mal zuerst zu sehen bekommst.
21
+
22
+ ## Der Code-Viewer
23
+
24
+ Klicke auf eine Datei und sie öffnet sich in einem voll ausgestatteten Viewer (angetrieben von Monaco, derselben Engine wie VS Code) mit ordentlichem Syntax-Highlighting, das zu deinem gewählten App-Theme passt. Ein paar sinnvolle Grenzen halten alles flüssig: Binärdateien werden höflich abgelehnt, und sehr große Dateien (über 2 MB) werden nicht geladen.
25
+
26
+ Deine aktuelle Datei wird in der Seiten-URL gespeichert, sodass du einen Link direkt zu einer bestimmten Datei als Lesezeichen speichern oder teilen kannst.
27
+
28
+ Da das Bearbeiten in dieser Version nicht vorgesehen ist, bietet der Viewer eine Schaltfläche **In externem Editor öffnen**, die den absoluten Pfad der Datei kopiert – füge ihn in deinen bevorzugten Editor ein und mach dort weiter.
29
+
30
+ ## KI-Zusammenfassungen
31
+
32
+ Über dem Code siehst du eine **verständliche Zusammenfassung** der Datei – wofür sie da ist, was sie tut – so geschrieben, dass auch Nicht-Entwickler folgen können. Diese werden für dich generiert und zwischengespeichert, sodass das Öffnen einer Datei, die du schon einmal angesehen hast, sofort geht.
33
+
34
+ Die Zusammenfassungen sind klug, was die Aktualität angeht: Sie sind an den Inhalt der Datei gebunden, sodass eine Zusammenfassung neu generiert wird, wenn sich eine Datei wirklich ändert, unveränderte Dateien aber nicht unnötig erneut zusammengefasst werden. Wenn du eine Datei selbst bearbeitest, wird ihre Zusammenfassung als veraltet markiert statt stillschweigend neu generiert – du behältst die Kontrolle darüber, wann sie aktualisiert wird. Es gibt eine Aktion **Neu generieren**, wenn du bei Bedarf eine frische Einschätzung möchtest.
35
+
36
+ Ein paar Leitplanken halten die Kosten im Rahmen: Die Generierung von Zusammenfassungen läuft innerhalb eines **monatlichen Budgets** (standardmäßig ein paar Dollar, in den Einstellungen konfigurierbar), und es gibt Obergrenzen dafür, wie viele Zusammenfassungen ein einzelner Job anstoßen darf. Wird eine Zusammenfassung übersprungen, sagt dir die App, warum – Budget erreicht, eine Obergrenze pro Job oder die Datei wurde schlicht nicht gefunden.
37
+
38
+ Du kannst außerdem die **Sprache der Zusammenfassungen** (Englisch oder Spanisch) in den globalen Einstellungen im Bereich *Code* wählen.
39
+
40
+ ## Code zurück mit Specs verbinden
41
+
42
+ Die Herkunftsverknüpfung funktioniert in beide Richtungen. Innerhalb des Code-Explorers öffnet ein Klick auf den Ticket-Chip einer Datei die Detailansicht dieses Tickets. Und aus der anderen Richtung hat die **Ticket-Detailansicht** einen Abschnitt *Von diesem Ticket bearbeitete Dateien* – klicke dort auf eine Datei und du springst direkt in den Code-Explorer, mit der Datei geöffnet. Das schließt den Kreis zwischen „hier ist die Spec, die wir geschrieben haben“ und „hier ist der Code, der dabei herausgekommen ist“.
43
+
44
+ ## Was er (noch) nicht kann
45
+
46
+ Um die Erwartungen klar zu setzen: Diese erste Version lässt absichtlich ein paar Dinge weg: das Bearbeiten in der App, Zusammenfassungen pro Symbol oder pro Verzeichnis, eine erzählende Diff-Ansicht und das dialogorientierte „Frag die KI zu dieser Datei“. Die Herkunft ordnet eine Datei nur ihrem primären Ticket zu. Das sind die Art von Dingen, die mit der Zeit wachsen könnten.
47
+
48
+ ## Ausschalten
49
+
50
+ Der Code-Explorer ist standardmäßig aktiviert. Er lässt sich über die Flags `VITE_FEATURE_CODE_EXPLORER` (Client) oder `SPECRAILS_CODE_EXPLORER` (Server) deaktivieren – setze eines der beiden auf `false`. Beim Ausschalten bleiben alle erfassten Daten und Zusammenfassungen sicher und unangetastet auf der Festplatte, falls du ihn wieder einschaltest.
@@ -0,0 +1,64 @@
1
+ # KI-Anbieter (Claude, Codex, Gemini)
2
+
3
+ Specrails ist nicht an eine einzige KI gebunden. Jeder Teil der App, der mit einer KI spricht — Explore Spec, Quick-Spec, Rails, Chat, AI Edit, der „Open AI CLI“-Button im Terminal — kann über einen von drei vollwertigen Anbietern laufen. Du legst fest, welche ein Projekt verwendet, und kannst sogar pro Aufgabe umschalten.
4
+
5
+ ## Die drei Anbieter
6
+
7
+ | Anbieter | CLI | Hersteller | Hinweise |
8
+ |---|---|---|---|
9
+ | **Claude** | `claude` | Anthropic | Der mit Abstand umfangreichste. Der einzige Anbieter für Agents (Profile), Ultracode-Rails und Contract Refine. |
10
+ | **Codex** | `codex` | OpenAI | Benötigt codex `0.128.0+`. Liest seine MCP-Server aus deiner globalen `~/.codex/config.toml`. |
11
+ | **Gemini** | `gemini` | Google | Benötigt gemini `0.11.0+`. Nutzt native Telemetrie und eine `GEMINI.md`-Instruktionsdatei. |
12
+
13
+ Alle drei sind **standardmäßig aktiviert**. Ein Anbieter taucht in **Projekt hinzufügen** auf, sobald seine CLI installiert ist und in deinem `PATH` liegt. Der erste Schritt ist also immer derselbe: Installiere die gewünschte CLI und melde dich damit an — genau so, wie es in der jeweiligen Dokumentation des Tools beschrieben ist. Sobald `claude --version` (oder `codex` bzw. `gemini`) in deinem Terminal funktioniert, kann Specrails es nutzen.
14
+
15
+ ## Einen Anbieter für ein Projekt installieren
16
+
17
+ Wenn du ein Projekt hinzufügst, fragt dich der Einrichtungsassistent, welche(n) Anbieter du installieren möchtest. Wähle einen aus, klicke dich durch den Installationsschritt — fertig. Ab da *hat* das Projekt diesen Anbieter einfach, und du musst nie wieder darüber nachdenken. Specs, Rails, Chat und Analytics funktionieren gleich, egal für welchen du dich entschieden hast.
18
+
19
+ Falls eine gewünschte CLI in „Projekt hinzufügen“ nicht angeboten wird, liegt das fast immer daran, dass die CLI nicht installiert ist oder nicht in deinem `PATH` liegt. Installiere sie und öffne „Projekt hinzufügen“ erneut.
20
+
21
+ ## Mehrere Anbieter für ein Projekt installieren
22
+
23
+ Du kannst **mehr als einen** Anbieter in dasselbe Projekt installieren — zum Beispiel Claude *und* Gemini. In **Projekt hinzufügen** wird die Anbieterliste zu einer Reihe von Checkboxen; hake alles an, was du möchtest. Der erste, den du auswählst, wird zum **primären** (Standard-)Anbieter des Projekts; die übrigen stehen als Alternativen bereit.
24
+
25
+ Ein paar Dinge, die du über Multi-Anbieter-Projekte wissen solltest:
26
+
27
+ - **Ein einzelner Anbieter verhält sich genau wie zuvor.** Hat ein Projekt nur einen einzigen Anbieter, siehst du nirgendwo eine Anbieterauswahl — die App bleibt schlank und einfach.
28
+ - **Die rechte Seitenleiste zeigt nur Bereiche, die jeder installierte Anbieter unterstützt.** Da Agents (Profile) ein reines Claude-Konzept ist, verschwindet der Bereich **Agents** in dem Moment, in dem ein Projekt einen Nicht-Claude-Anbieter enthält. Alles andere (Specs, Code, Analytics, Integrationen, Terminal, Chat) bleibt erhalten.
29
+ - **Die Anbieterwahl ist nach dem Anlegen festgelegt.** In dieser Version wählst du deine Anbieter beim Hinzufügen des Projekts, und sie lassen sich später nicht mehr über die Einstellungen ändern. Brauchst du eine andere Kombination, ist das ein neues Projekt.
30
+
31
+ ## Pro Aufruf einen Anbieter wählen
32
+
33
+ Der eigentliche Gewinn eines Multi-Anbieter-Projekts liegt darin, für jede Aufgabe die richtige KI zu wählen — ohne irgendeine globale Einstellung zu ändern. Überall dort, wo eine KI läuft, erscheint eine kleine Anbieterauswahl (nur, wenn das Projekt mehr als einen Anbieter hat):
34
+
35
+ - **Spec hinzufügen** — über die Engine-Auswahl kannst du eine Spec mit dem Anbieter deiner Wahl per Explore oder Quick erzeugen.
36
+ - **Rail-Kopf** — wähle die Engine für genau diese Rail, bevor du sie startest.
37
+ - **Terminal** — der „Open AI CLI“-Button (Sparkles) öffnet ein Anbietermenü, über das du in jede installierte CLI im Verzeichnis dieses Projekts springen kannst.
38
+
39
+ Deine Wahl wird pro Projekt gemerkt und fällt standardmäßig auf den primären Anbieter zurück — du musst also nicht jedes Mal neu wählen.
40
+
41
+ ## Was nur Claude kann
42
+
43
+ Eine Handvoll Funktionen sind ihrer Natur nach Claude-spezifisch und werden daher ausgeblendet oder übersprungen, wenn ein anderer Anbieter im Spiel ist:
44
+
45
+ - **Agents (Profile)** — der projektbezogene Agenten-Katalog und das Modell-Routing. Auf jedem Projekt ausgeblendet, das einen Nicht-Claude-Anbieter enthält.
46
+ - **Ultracode-Rails** — laufen immer auf Claude.
47
+ - **Contract Refine** — der zusätzliche „Contract Layer“-Durchlauf auf einer committeten Spec läuft nur, wenn der Anbieter der Konversation Claude ist.
48
+ - **Erweiterte Modi bei „Spec hinzufügen“** (SMASH / Contract Layer) — bei Nicht-Claude-Engines ausgeblendet.
49
+
50
+ Alles andere — Explore, Quick-Spec, die vollständige Rails-Pipeline, AI Edit, Chat, Kosten-Analytics — funktioniert über alle drei hinweg.
51
+
52
+ ## Kostenverfolgung über alle Anbieter hinweg
53
+
54
+ Die **Analytics**-Seite erfasst jeden abrechenbaren Aufruf unabhängig vom Anbieter. Auf Multi-Anbieter-Projekten ergänzt sie Engine-Filter-Chips, mit denen du die Ausgaben pro Anbieter vergleichen kannst. Claude meldet seine eigenen exakten Kosten; für Codex und Gemini schätzt Specrails die Kosten anhand einer eingebauten Preistabelle — die Zahlen sind also gute Näherungswerte, keine tatsächlich abgerechneten Beträge.
55
+
56
+ ## Fehlerbehebung
57
+
58
+ - **Ein installierter Anbieter wird nicht angeboten.** Stelle sicher, dass die CLI in deinem `PATH` liegt (probiere `claude --version` / `codex --version` / `gemini --version` in einem frischen Terminal). Die App prüft Anbieter-CLIs über deinen System-`PATH`.
59
+ - **Codex-MCP-Server werden im Chat nicht geladen.** Codex liest MCP-Server aus deiner globalen `~/.codex/config.toml` — registriere sie dort mit `codex mcp add`.
60
+ - **Notabschaltung.** Ein Anbieter lässt sich app-weit über eine Umgebungsvariable abschalten (`SPECRAILS_CODEX_BETA=0` oder `SPECRAILS_GEMINI_BETA=0`). Das blendet den Anbieter nur aus der *Auswahl* aus; es wird selten gebraucht.
61
+
62
+ ## Siehe auch
63
+
64
+ Die dedizierten Anbieter-Guides gehen tiefer auf jede CLI ein: Der Codex-Guide und der Gemini-Guide behandeln jeweils Einrichtung, Funktionsumfang und anbieterspezifische Besonderheiten.
@@ -0,0 +1,44 @@
1
+ # Plugins (Integrationen)
2
+
3
+ Der Bereich **Integrationen** ist ein projektbezogener Marktplatz für optionale Erweiterungen, die den Funktionsumfang der KI ausbauen. Jedes Projekt entscheidet eigenständig, welche Plugins es haben möchte — ein Plugin in einem Projekt zu installieren, berührt nie ein anderes.
4
+
5
+ Plugins funktionieren, indem sie unauffällig einen **MCP-Server** (Model Context Protocol) in deinem Projekt registrieren und der KI so neue Tools an die Hand geben, die sie während Rails und Chat aufrufen kann. Du musst MCP nicht verstehen, um sie zu nutzen — installieren, und beim nächsten Rail-Lauf stehen sie bereit.
6
+
7
+ ## Was heute verfügbar ist
8
+
9
+ Diese Version wird **ausschließlich gebündelt** ausgeliefert: Die installierbaren Plugins sind die, die in die App eingebaut sind. Es gibt keine Remote-Registry, keine von Nutzern hochgeladenen Plugins und kein Laden von Drittanbieter-Code — alles im Katalog ist also geprüft und wird mit Specrails ausgeliefert.
10
+
11
+ Das Vorzeige-Plugin ist:
12
+
13
+ - **Serena** — semantische Code-Navigation. Es gibt der KI ein vom Language-Server gestütztes Verständnis deiner Codebasis (Gehe-zu-Definition, Referenzen finden, symbolbewusste Suche) statt schlichtem Textabgleich. Ideal für größere oder unbekannte Repos, in denen der Agent über echte Symbole schlussfolgern soll.
14
+
15
+ Serena benötigt das Tool `uv` in deinem `PATH` (es läuft über `uvx`). Die App erkennt automatisch, ob `uv` vorhanden ist, und weist dich darauf hin, falls es fehlt.
16
+
17
+ ## Ein Plugin installieren
18
+
19
+ 1. Öffne **Integrationen** über die rechte Seitenleiste.
20
+ 2. Finde das Plugin im Katalog. Jede Karte zeigt einen Status: **Nicht installiert**, **Installiert**, **Beeinträchtigt** oder **Verwaist**.
21
+ 3. Klicke in das Plugin hinein, um die **Installation vorab anzusehen** — das zeigt dir genau, welche Dateien sich ändern werden, bevor irgendetwas passiert.
22
+ 4. Klicke auf **Installieren**. Du siehst den Fortschritt live, während es eingerichtet wird.
23
+
24
+ Im Hintergrund läuft die Installation *chirurgisch und additiv* ab: Sie fügt der `.mcp.json` deines Projekts nur ihre eigenen Einträge hinzu (und bei manchen Plugins eine Fragment-Datei im geschützten `.claude/agents/`-Namensraum). Sie schreibt deine Konfiguration nie komplett neu, und ein zweites Plugin kann das erste niemals stören. Kann sich eine Installation nicht als fehlerfrei verifizieren, wird sie sauber zurückgerollt.
25
+
26
+ ## Installierte Plugins verwalten
27
+
28
+ - **Gesundheit.** Jedes Plugin hat eine Gesundheitsprüfung auf Abruf. Ein Plugin, das sich zwar installieren lässt, später aber nicht starten kann, wird als **Beeinträchtigt** markiert — es blockiert deine Rails nicht, du siehst nur das Badge und einen Grund.
29
+ - **Deinstallieren.** Beim Entfernen eines Plugins werden chirurgisch nur die Einträge gelöscht, die ihm gehören; der Rest deiner Konfiguration bleibt unangetastet.
30
+ - **Verwaiste Einträge.** Bleiben die Dateien eines Plugins ohne sauberen Zustand zurück (etwa nach einer abgebrochenen Änderung), erscheint es als **Verwaist** und du kannst es mit einem Klick aufräumen.
31
+
32
+ ## Wie Plugins in deiner Arbeit auftauchen
33
+
34
+ - **Rails.** Bevor eine Rail läuft, prüft Specrails, welche Plugins installiert und fehlerfrei sind, und stellt deren Tools dem Agent für diesen Job bereit. Ein beeinträchtigtes Plugin wird für diesen Lauf einfach übersprungen — die Rail startet trotzdem normal. Jeder Job speichert einen Schnappschuss davon, welche Plugins aktiv waren; den siehst du im diagnostischen Export des Jobs.
35
+ - **Chat.** Der Chat übernimmt automatisch die MCP-Konfiguration deines Projekts, sodass installierte Plugins auch dort verfügbar sind.
36
+ - **Einrichtung.** Während ein Projekt noch eingerichtet wird, werden Plugins ignoriert — sie kommen ins Spiel, sobald das Projekt bereit ist.
37
+
38
+ ## Anbieterhinweise
39
+
40
+ Plugins sind anbieterbewusst. Serena und ähnliche MCP-Plugins greifen bei Anbietern, die MCP über die `.mcp.json` des Projekts registrieren (Claude und Gemini). Bei Codex-Projekten werden MCP-Server stattdessen über Codex' eigene globale Konfiguration verwaltet, sodass Plugin-Einträge in **Integrationen** entsprechend gefiltert werden. Die Jira-Karte in den Integrationen ist anbieterunabhängig und erscheint für alle — siehe den Jira-Guide.
41
+
42
+ ## Reservierte Dateien
43
+
44
+ Plugins verwalten eine kleine, klar abgegrenzte Menge an Dateien in deinem Projekt: deine `.mcp.json` (chirurgisch zusammengeführt), etwas Zustand unter `.specrails/plugins/` sowie pro Plugin Agenten-Fragmente unter `.claude/agents/custom-<plugin>.md`. Das sind committbare Team-Assets, falls du eine Integration mit deinen Teamkolleg:innen teilen möchtest — die App überschreibt sie nie blind.
@@ -0,0 +1,71 @@
1
+ # Jira-Integration
2
+
3
+ Du möchtest, dass deine Specs auf einem echten **Jira-Board** leben statt in Specrails? Die Jira-Integration hinterlegt die Specs eines Projekts mit Jira-Vorgängen, hält die Status synchron, während Rails laufen, und hält sich die übrige Zeit zurück. Jedes Projekt synchronisiert sich mit **seinem eigenen** Jira-Board.
4
+
5
+ ## So funktioniert es (die Kurzfassung)
6
+
7
+ Specrails agiert als **Sync-Schicht** zwischen Jira und deinem Projekt. Die Grundidee: Dein lokaler Spec-Speicher bleibt das Maßgebliche, das die Pipeline liest, und Specrails ist dafür verantwortlich, ihn und Jira in Übereinstimmung zu halten.
8
+
9
+ - Wenn du eine Rail startest, verschiebt Specrails den verknüpften Jira-Vorgang nach **In Arbeit**.
10
+ - Wenn ein Job abschließt, überführt Specrails den Vorgang (nach **Fertig** oder zurück nach **To Do**, falls er fehlgeschlagen ist) und postet einen Abschlusskommentar mit Job-ID, Kosten und Dauer.
11
+ - In regelmäßigen Abständen **pollt** Specrails Jira nach Änderungen, die jemand auf dem Board vorgenommen hat, und spiegelt sie zurück in deine Specs.
12
+
13
+ Alle Rückschreibungen laufen über eine dauerhafte, absturzsichere Outbox, sodass ein kurzzeitiger Jira-Aussetzer niemals einen Job kaputtmacht — das Update wird einfach erneut versucht.
14
+
15
+ ## Ein Board verbinden
16
+
17
+ Du verbindest dich über die **Einstellungen**-Seite eines Projekts (am Ende des „Projekt hinzufügen“-Assistenten gibt es zusätzlich einen optionalen Schritt „Jira konfigurieren“). Der Verbindungsassistent führt dich durch:
18
+
19
+ 1. **Testen** — gib deine Jira-URL und deine Zugangsdaten ein, und Specrails überprüft die Verbindung.
20
+ 2. **Projekt wählen** — wähle aus, mit welchem Jira-Projekt synchronisiert werden soll.
21
+ 3. **Statuszuordnung (optional)** — ordne deine Jira-Workflow-Status den Zuständen von Specrails zu, falls die automatische Erkennung etwas Hilfe braucht (mehr dazu unten).
22
+ 4. **Verbinden** — fertig. Deine Specs spiegeln nun dieses Board.
23
+
24
+ ### Authentifizierung
25
+
26
+ Diese Version nutzt **Token-Einfügen** zur Authentifizierung — schnell, lokal auf dem Gerät und ganz ohne Backend:
27
+
28
+ - **Jira Cloud:** deine Konto-E-Mail plus ein API-Token.
29
+ - **Jira Data Center / Server:** ein Personal Access Token (PAT).
30
+
31
+ Dein Token wird **verschlüsselt auf deinem eigenen Rechner** gespeichert und verlässt ihn nie. Die App zeigt nur an, ob ein Token vorhanden ist, niemals das Token selbst.
32
+
33
+ ## Statuszuordnung
34
+
35
+ Der kniffligste Teil jeder Jira-Synchronisierung ist es, *deinen* Workflow auf die einfachen Zustände von Specrails abzubilden (To Do / In Arbeit / Fertig, plus Abbruch-/Ship-Varianten). Specrails löst das in zwei Stufen:
36
+
37
+ 1. **Deine explizite Statuszuordnung**, falls du im Assistenten eine festgelegt hast — sie gewinnt immer.
38
+ 2. **Automatische Erkennung** anhand der Kategorie jedes Status (new / in-progress / done) plus intelligentem Abgleich für Abbruch- und Ship-artige Status.
39
+
40
+ Muss ein Vorgang über einen Workflow mit gesteuerten Übergängen bewegt werden, findet Specrails Schritt für Schritt einen gültigen Pfad und füllt unterwegs alle erforderlichen Felder aus (etwa eine Resolution). Lässt sich ein Status wirklich nicht erreichen, wird die Operation als Dead-Letter geparkt und dir angezeigt, statt still fehlzuschlagen — du siehst dann einen **Beeinträchtigt**-Hinweis und kannst es erneut versuchen.
41
+
42
+ ## Hot-Swap: sicher ein- und ausschalten
43
+
44
+ Die Jira-Verknüpfung ist **pro Spec**, festgehalten in dem Moment, in dem du eine Rail startest — kein globaler Alles-oder-nichts-Schalter für das Board. Das macht das Umschalten sicher:
45
+
46
+ - **Aktivieren oder Deaktivieren** der Integration ordnet deine bestehenden Specs nie neu zu.
47
+ - **Trennen** versetzt dein Projekt zurück in das normale Verhalten mit lokalen Specs.
48
+ - Specs, die bereits eine Jira-Verknüpfung haben, behalten ihre Rückschreibung; Specs ohne werden in Ruhe gelassen.
49
+
50
+ So kannst du frei experimentieren — anschalten, ein paar Rails laufen lassen, ausschalten — ohne dein Board oder deine lokalen Specs durcheinanderzubringen.
51
+
52
+ ## Im Alltag
53
+
54
+ Nach dem Verbinden zeigt die Einstellungen-Seite des Projekts eine **Verbunden-Karte**, auf der du:
55
+
56
+ - **Jetzt synchronisieren** — ein sofortiges Pollen erzwingen, statt auf den Timer zu warten.
57
+ - **Dead-Letter erneut versuchen** — alle hängengebliebenen Rückschreibungen erneut ausführen.
58
+ - **Hot-Swap-Schalter** — die Integration vorübergehend pausieren/fortsetzen.
59
+ - **Trennen** — das Board sauber lösen.
60
+
61
+ Specs, die mit Jira hinterlegt sind, zeigen ein **Jira-Schlüssel-Badge** (etwa `PROJ-123`) auf ihrer Karte, und ein Klick darauf führt zurück zum Vorgang. Außerdem bekommst du kleine Benachrichtigungen, wenn eine Synchronisierung abschließt, wenn ein Auth-Token abläuft (damit du es erneuern kannst) oder wenn die Integration in einen beeinträchtigten Zustand gerät.
62
+
63
+ ## Was du im Hinterkopf behalten solltest
64
+
65
+ - **Polling statt Webhooks.** Da Specrails lokal läuft, pollt es Jira nach eingehenden Änderungen, statt Push-Benachrichtigungen zu empfangen. Änderungen erscheinen innerhalb des Poll-Intervalls, nicht sofort.
66
+ - **Ein Board pro Projekt.** Verschiedene Projekte können sich mit verschiedenen Boards synchronisieren; ein einzelnes Projekt synchronisiert sich mit genau einem.
67
+ - **Last-Write-Wins bei Konflikten** für den seltenen Fall, dass zwei Tabs denselben Entwurf gleichzeitig bearbeiten.
68
+
69
+ ## Ausschalten
70
+
71
+ Wenn du jemals vollständig aussteigen möchtest, **trenne** einfach in den Einstellungen. Deine Specs kehren zum reinen Lokal-Verhalten zurück, und die Jira-Metadaten liegen einfach ungenutzt herum — es wird nichts zerstört.
@@ -0,0 +1,38 @@
1
+ # Der mobile Companion
2
+
3
+ Specrails hat eine Companion-App fürs Smartphone, mit der du deine Rails im Blick behältst, während du nicht am Schreibtisch sitzt — Jobs laufen sehen, ihren Abschluss verfolgen und auf dem Laufenden bleiben, ohne vor dem Dashboard zu sitzen.
4
+
5
+ ## Wofür sie da ist
6
+
7
+ Der Companion ist eine **Monitoring**-Oberfläche. Er verbindet sich über dein lokales Netzwerk mit deiner laufenden Specrails-Desktop-App und spiegelt die Live-Aktivität von Projekten und Jobs auf dein Smartphone. Stell ihn dir als ein Fenster auf einen Blick zu denselben Rails vor, die du sonst auf dem Dashboard beobachten würdest.
8
+
9
+ ## Dein Smartphone koppeln
10
+
11
+ Das Koppeln baut auf einem **QR-Code** auf, damit du nichts Umständliches eintippen musst:
12
+
13
+ 1. Stelle sicher, dass deine Specrails-Desktop-App läuft und dein Smartphone im **selben lokalen Netzwerk** ist (gleiches WLAN).
14
+ 2. Öffne in der Desktop-App den Kopplungsbildschirm, um einen QR-Code anzuzeigen.
15
+ 3. Scanne diesen Code in der Companion-App auf deinem Smartphone.
16
+ 4. Das Smartphone entdeckt die Desktop-App im Netzwerk und verbindet sich.
17
+
18
+ Von da an hält der Companion eine Live-Verbindung und streamt Projektlisten und Job-Updates, sobald sie passieren.
19
+
20
+ ## Wie die Verbindung funktioniert
21
+
22
+ Die Desktop-App macht sich in deinem lokalen Netzwerk bekannt, damit das Smartphone sie finden kann, und der QR-Code trägt die Details, die das Smartphone für eine sichere Verbindung braucht. Alles bleibt in deinem lokalen Netzwerk — der Companion spricht direkt mit deinem Rechner, nicht über irgendeinen Cloud-Dienst.
23
+
24
+ Weil es auf dem lokalen Netzwerk basiert, müssen beide Geräte füreinander erreichbar sein. Falls das Koppeln nicht klappt:
25
+
26
+ - Stelle sicher, dass beide Geräte im **selben WLAN** sind (und dass das Netzwerk Clients nicht voneinander isoliert).
27
+ - Achte darauf, dass die Desktop-App beim Scannen **läuft**.
28
+ - Öffne den Kopplungsbildschirm erneut, um den QR-Code aufzufrischen, und versuche erneut zu scannen.
29
+
30
+ ## Was du sehen wirst
31
+
32
+ Sobald gekoppelt, zeigt der Companion deine Projekte und ihre Live-Job-Aktivität — du bekommst also dieselben Echtzeit-Rail-Updates, die ins Desktop-Dashboard fließen, direkt auf dein Smartphone gespielt, sobald sie eintreten. Es ist der einfachste Weg, den Moment mitzubekommen, in dem eine lang laufende Rail fertig wird.
33
+
34
+ ## Gut zu wissen
35
+
36
+ - **Monitoring zuerst.** Der Companion ist dafür gedacht, Rails im Auge zu behalten, nicht dazu, den vollständigen Desktop-Workflow vom Smartphone aus zu steuern.
37
+ - **Nur lokal.** Kein Konto, kein Cloud-Relay — nur dein Rechner und dein Smartphone, in deinem Netzwerk.
38
+ - **Halte den Desktop wach.** Der Companion spiegelt eine laufende Desktop-App; geht dein Rechner in den Ruhezustand oder schließt die App, pausieren die Live-Updates, bis sie zurück ist.