specrails-desktop 2.32.0 → 2.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (228) hide show
  1. package/client/dist/assets/{ActivityFeedPage-DvnFkjVG.js → ActivityFeedPage-DIDxNsDj.js} +1 -1
  2. package/client/dist/assets/{AgentBrowserCapture-CBjcliD7.js → AgentBrowserCapture-7pJ2G5VY.js} +1 -1
  3. package/client/dist/assets/AgentModeAnalyticsPane-BSSyTnTM.js +2 -0
  4. package/client/dist/assets/{AgentModeCodePane-CokuFVdV.js → AgentModeCodePane-DzW6gvDw.js} +2 -2
  5. package/client/dist/assets/{AgentModeJobsPane-rf_DlWNo.js → AgentModeJobsPane-9wJff15f.js} +1 -1
  6. package/client/dist/assets/AgentsPage-CIA67psb.js +87 -0
  7. package/client/dist/assets/AnalyticsPage-C0LwYELz.js +1 -0
  8. package/client/dist/assets/CodePage-RtKvHmAO.js +2 -0
  9. package/client/dist/assets/{DesktopAnalyticsPage-gBRVqiw6.js → DesktopAnalyticsPage-BU8Y_Ts1.js} +1 -1
  10. package/client/dist/assets/{DocsDialog-BzO5dg2B.js → DocsDialog-DIpoaGlQ.js} +1 -1
  11. package/client/dist/assets/{DocsPage-Db_uxr1j.js → DocsPage-ME47KZpK.js} +1 -1
  12. package/client/dist/assets/InteractiveJobComposer-BGjIe9R6.js +19 -0
  13. package/client/dist/assets/{JobDetailModal-DPHh2WOS.js → JobDetailModal-1UZkqH4I.js} +1 -1
  14. package/client/dist/assets/JobDetailPage-CN65sAf1.js +1 -0
  15. package/client/dist/assets/JobsPage-f-4dqys7.js +1 -0
  16. package/client/dist/assets/LoopBuilderPage-WeiofeL6.js +7 -0
  17. package/client/dist/assets/LoopPreviewModal-DDTnTyH0.js +1 -0
  18. package/client/dist/assets/LoopsPage-BVNchIex.js +1 -0
  19. package/client/dist/assets/MinimizedChatsContext-CHsu3NCX.js +1 -0
  20. package/client/dist/assets/PluginsPage-CdFzGEfQ.js +2 -0
  21. package/client/dist/assets/ProjectSettingsDialog-BkCXBQWk.js +1 -0
  22. package/client/dist/assets/TemplatePreviewModal-RDi0khFG.js +1 -0
  23. package/client/dist/assets/TicketDetailModal-MhJzrqbi.js +14 -0
  24. package/client/dist/assets/{Trans-B2i5HVcM.js → Trans-CTqw6rr9.js} +1 -1
  25. package/client/dist/assets/{addspec-DhmnXER8.js → addspec-A1lDQa4M.js} +1 -1
  26. package/client/dist/assets/{addspec-BRlk8jON.js → addspec-BHZd0N5F.js} +1 -1
  27. package/client/dist/assets/{addspec-CHW9xf_X.js → addspec-BPpZ_olp.js} +1 -1
  28. package/client/dist/assets/{addspec-Di41DpYV.js → addspec-B_TPJt-R.js} +1 -1
  29. package/client/dist/assets/{addspec-4WmLJmBG.js → addspec-CLYLvaVP.js} +1 -1
  30. package/client/dist/assets/{addspec-C7XRejU4.js → addspec-CQBjzt24.js} +1 -1
  31. package/client/dist/assets/{addspec-x3mizDxc.js → addspec-D2YIQ0GU.js} +1 -1
  32. package/client/dist/assets/{addspec-DTmRrWrF.js → addspec-iFdQ6D99.js} +1 -1
  33. package/client/dist/assets/agent-Bd-q3Wqp.js +1 -0
  34. package/client/dist/assets/agent-BlvdW4Hv.js +1 -0
  35. package/client/dist/assets/agent-C-KQhxeM.js +1 -0
  36. package/client/dist/assets/agent-Ca15w5eu.js +1 -0
  37. package/client/dist/assets/agent-D6fKaoMd.js +1 -0
  38. package/client/dist/assets/agent-HFMYMTbB.js +1 -0
  39. package/client/dist/assets/agent-QIEbkBjg.js +1 -0
  40. package/client/dist/assets/agent-mTCsAbCl.js +1 -0
  41. package/client/dist/assets/agentstudio-BNUth0uj.js +1 -0
  42. package/client/dist/assets/agentstudio-BNdB5hkr.js +1 -0
  43. package/client/dist/assets/agentstudio-C7-bt8FO.js +1 -0
  44. package/client/dist/assets/agentstudio-C8uNchpV.js +1 -0
  45. package/client/dist/assets/agentstudio-CKabyMlg.js +1 -0
  46. package/client/dist/assets/agentstudio-CN2pokQu.js +1 -0
  47. package/client/dist/assets/agentstudio-DR7doNBV.js +1 -0
  48. package/client/dist/assets/agentstudio-y2dVDXeM.js +1 -0
  49. package/client/dist/assets/{analytics-C9RaQcE3.js → analytics-47pYygtV.js} +1 -1
  50. package/client/dist/assets/{analytics-B8Qtptbl.js → analytics-B0vt1g5U.js} +1 -1
  51. package/client/dist/assets/analytics-BMzCvrCU.js +1 -0
  52. package/client/dist/assets/{analytics-BPptRY4f.js → analytics-BlFN3Zwx.js} +1 -1
  53. package/client/dist/assets/{analytics-BxDGOIwf.js → analytics-CZYzL-nR.js} +1 -1
  54. package/client/dist/assets/{analytics-D_OZdQ9O.js → analytics-DAsb9MJ8.js} +1 -1
  55. package/client/dist/assets/{analytics-CJIwqrEl.js → analytics-FXQlQ2Yt.js} +1 -1
  56. package/client/dist/assets/{analytics-We6lUMI8.js → analytics-RnFCNkah.js} +1 -1
  57. package/client/dist/assets/{builder-CWYPw7Cw.js → builder-0IWtosUm.js} +1 -1
  58. package/client/dist/assets/{builder-CX1437hF.js → builder-Bf2N6XWn.js} +1 -1
  59. package/client/dist/assets/{builder-BiUG9Z5K.js → builder-BnqaaBkT.js} +1 -1
  60. package/client/dist/assets/{builder-CGRz_-zP.js → builder-BxxfGgAO.js} +1 -1
  61. package/client/dist/assets/{builder-DwDexYRE.js → builder-C5IIgWsq.js} +1 -1
  62. package/client/dist/assets/builder-CHuahItu.js +1 -0
  63. package/client/dist/assets/{builder-Cowk9jtL.js → builder-CjWosXL_.js} +1 -1
  64. package/client/dist/assets/{builder-3bygQtZi.js → builder-CpCIOoKj.js} +1 -1
  65. package/client/dist/assets/dashboard-BHRqsGCV.js +1 -0
  66. package/client/dist/assets/dashboard-Bfr90vOl.js +1 -0
  67. package/client/dist/assets/dashboard-CTsM8x3m.js +1 -0
  68. package/client/dist/assets/dashboard-CqC6wX0h.js +1 -0
  69. package/client/dist/assets/dashboard-CuZtAszc.js +1 -0
  70. package/client/dist/assets/dashboard-DAcqIc-n.js +1 -0
  71. package/client/dist/assets/dashboard-DekiV-86.js +1 -0
  72. package/client/dist/assets/dashboard-DoDczc5S.js +1 -0
  73. package/client/dist/assets/{dist-js-CkTZKBF9.js → dist-js-BmsFWRly.js} +1 -1
  74. package/client/dist/assets/{dist-js-ClShHcGa.js → dist-js-J5W_N5ng.js} +1 -1
  75. package/client/dist/assets/{formatDistanceToNow-BjGwPf6I.js → formatDistanceToNow-BOuXgebD.js} +1 -1
  76. package/client/dist/assets/{getTimezoneOffsetInMilliseconds-CSCbUI4W.js → getTimezoneOffsetInMilliseconds-EjGOpn4b.js} +1 -1
  77. package/client/dist/assets/{i18n-Ch-Db_x2.js → i18n-nJQvD5zJ.js} +2 -2
  78. package/client/dist/assets/index-C_sdsSZt.js +63 -0
  79. package/client/dist/assets/index-DCN5QbDm.css +2 -0
  80. package/client/dist/assets/{jira-BySfUuQZ.js → jira-BNZu8f9O.js} +1 -1
  81. package/client/dist/assets/{jira-gAvOyije.js → jira-BOoaUXbb.js} +1 -1
  82. package/client/dist/assets/{jira-pRaL7JQo.js → jira-BYVN4L2u.js} +1 -1
  83. package/client/dist/assets/jira-CKJg3HZd.js +1 -0
  84. package/client/dist/assets/{jira-Byw2C0F8.js → jira-DDDsZ4ub.js} +1 -1
  85. package/client/dist/assets/{jira-D38Gj7AT.js → jira-DXwYjVE4.js} +1 -1
  86. package/client/dist/assets/{jira-D11gPhxz.js → jira-Dn6U2nRW.js} +1 -1
  87. package/client/dist/assets/{jira-api-BgFIr8eD.js → jira-api-Bhixwn-d.js} +1 -1
  88. package/client/dist/assets/{jira-CNeYi06w.js → jira-j7hVolR5.js} +1 -1
  89. package/client/dist/assets/nav-ApJVg3xu.js +1 -0
  90. package/client/dist/assets/nav-BKNky1Bg.js +1 -0
  91. package/client/dist/assets/nav-C6vWWKYx.js +1 -0
  92. package/client/dist/assets/nav-CXJ6Aw89.js +1 -0
  93. package/client/dist/assets/nav-CsmFBIDf.js +1 -0
  94. package/client/dist/assets/nav-DjkmQJjd.js +1 -0
  95. package/client/dist/assets/nav-iwjCg5FR.js +1 -0
  96. package/client/dist/assets/nav-pYuXq7sf.js +1 -0
  97. package/client/dist/assets/{provider-capabilities-BvoExILy.js → provider-capabilities-Doej9lfa.js} +1 -1
  98. package/client/dist/assets/setup-3jWaoVUO.js +1 -0
  99. package/client/dist/assets/setup-BjgRneb2.js +1 -0
  100. package/client/dist/assets/setup-BzFIjv-f.js +1 -0
  101. package/client/dist/assets/setup-C4VfQsxE.js +1 -0
  102. package/client/dist/assets/setup-DfUkpDbN.js +1 -0
  103. package/client/dist/assets/setup-ECe90Pmu.js +1 -0
  104. package/client/dist/assets/setup-dlqC4Jmm.js +1 -0
  105. package/client/dist/assets/setup-jwfLMiM2.js +1 -0
  106. package/client/dist/assets/{spending-Dq43JYmD.js → spending-BpYPsevQ.js} +1 -1
  107. package/client/dist/assets/tickets-B4rjuSYi.js +1 -0
  108. package/client/dist/assets/tickets-Bc71ce1C.js +1 -0
  109. package/client/dist/assets/tickets-CLg7VTJ8.js +1 -0
  110. package/client/dist/assets/tickets-CP9U1GJt.js +1 -0
  111. package/client/dist/assets/tickets-CZNBiHbq.js +1 -0
  112. package/client/dist/assets/tickets-DlX2mEkD.js +1 -0
  113. package/client/dist/assets/tickets-W6pBmbrX.js +1 -0
  114. package/client/dist/assets/tickets-_yKvCt4Y.js +1 -0
  115. package/client/dist/assets/{useBrowserCaptureSession-TTO8vHtd.js → useBrowserCaptureSession-BBXBN0Na.js} +1 -1
  116. package/client/dist/assets/useDesktop-B6Du2N83.js +1 -0
  117. package/client/dist/assets/{useSharedWebSocket-DaPh7QBL.js → useSharedWebSocket-DK96ctb7.js} +1 -1
  118. package/client/dist/index.html +24 -24
  119. package/docs/guide/de/getting-started/3-adding-your-first-project.md +13 -32
  120. package/docs/guide/de/integrations/1-ai-providers.md +27 -16
  121. package/docs/guide/en/getting-started/3-adding-your-first-project.md +8 -27
  122. package/docs/guide/en/integrations/1-ai-providers.md +21 -18
  123. package/docs/guide/es/getting-started/3-adding-your-first-project.md +12 -31
  124. package/docs/guide/es/integrations/1-ai-providers.md +24 -16
  125. package/docs/guide/fr/getting-started/3-adding-your-first-project.md +15 -34
  126. package/docs/guide/fr/integrations/1-ai-providers.md +25 -16
  127. package/docs/guide/it/getting-started/3-adding-your-first-project.md +16 -35
  128. package/docs/guide/it/integrations/1-ai-providers.md +25 -16
  129. package/docs/guide/ja/getting-started/3-adding-your-first-project.md +16 -35
  130. package/docs/guide/ja/integrations/1-ai-providers.md +7 -12
  131. package/docs/guide/pt/getting-started/3-adding-your-first-project.md +15 -34
  132. package/docs/guide/pt/integrations/1-ai-providers.md +24 -16
  133. package/docs/guide/zh/getting-started/3-adding-your-first-project.md +18 -37
  134. package/docs/guide/zh/integrations/1-ai-providers.md +7 -12
  135. package/docs/internals/project-builder.md +11 -6
  136. package/package.json +1 -1
  137. package/server/dist/ai-invocations.js +35 -0
  138. package/server/dist/blueprint-commit.js +1 -1
  139. package/server/dist/desktop-db.js +22 -1
  140. package/server/dist/desktop-router.js +132 -43
  141. package/server/dist/framework-reseed.js +144 -0
  142. package/server/dist/index.js +41 -2
  143. package/server/dist/jira/jira-sync-manager.js +49 -2
  144. package/server/dist/jira-router.js +21 -0
  145. package/server/dist/job-phase-breakdown.js +132 -0
  146. package/server/dist/legacy-migration.js +395 -0
  147. package/server/dist/loop-executors.js +5 -1
  148. package/server/dist/offline-assemble.js +32 -4
  149. package/server/dist/pr-body.js +13 -0
  150. package/server/dist/project-router-jobs.js +16 -0
  151. package/server/dist/project-router-spending.js +11 -1
  152. package/server/dist/provider-detection.js +222 -0
  153. package/server/dist/provider-selection.js +71 -19
  154. package/server/dist/queue-manager.js +4 -0
  155. package/server/dist/rail-pr-decision.js +10 -0
  156. package/server/dist/rails-router.js +11 -0
  157. package/server/dist/rails-store.js +5 -1
  158. package/server/dist/repo-map.js +293 -0
  159. package/server/dist/setup-manager.js +57 -0
  160. package/server/dist/spending.js +45 -0
  161. package/client/dist/assets/AgentsPage-B648IzGI.js +0 -87
  162. package/client/dist/assets/AnalyticsPage-0rBoULPX.js +0 -1
  163. package/client/dist/assets/CodePage-ju302Vl7.js +0 -2
  164. package/client/dist/assets/InteractiveJobComposer-_jmsE_Az.js +0 -19
  165. package/client/dist/assets/JobDetailPage-7nwHyHGV.js +0 -1
  166. package/client/dist/assets/JobsPage-C_6YrcmE.js +0 -1
  167. package/client/dist/assets/LoopBuilderPage-DJ1UPDwL.js +0 -7
  168. package/client/dist/assets/LoopPreviewModal-12cUnljK.js +0 -1
  169. package/client/dist/assets/LoopsPage-CHYK0Xjr.js +0 -1
  170. package/client/dist/assets/MinimizedChatsContext-Gt6KQySM.js +0 -1
  171. package/client/dist/assets/PluginsPage-E59oQmwc.js +0 -2
  172. package/client/dist/assets/ProjectSettingsDialog-DQTLQ7ie.js +0 -1
  173. package/client/dist/assets/TemplatePreviewModal-nXUcDgfk.js +0 -1
  174. package/client/dist/assets/TicketDetailModal-C-tHW-2s.js +0 -14
  175. package/client/dist/assets/agent-BKsuIgIT.js +0 -1
  176. package/client/dist/assets/agent-Bs9NilfI.js +0 -1
  177. package/client/dist/assets/agent-C23h684q.js +0 -1
  178. package/client/dist/assets/agent-CqEjy3Z2.js +0 -1
  179. package/client/dist/assets/agent-D5DZTks1.js +0 -1
  180. package/client/dist/assets/agent-DE8hUYPl.js +0 -1
  181. package/client/dist/assets/agent-DsTuJGSc.js +0 -1
  182. package/client/dist/assets/agent-DwZM05-x.js +0 -1
  183. package/client/dist/assets/agentstudio-8TQqBenW.js +0 -1
  184. package/client/dist/assets/agentstudio-B8Z_mmEX.js +0 -1
  185. package/client/dist/assets/agentstudio-BZR9YmLs.js +0 -1
  186. package/client/dist/assets/agentstudio-Bge9pAWb.js +0 -1
  187. package/client/dist/assets/agentstudio-Bz169Vzt.js +0 -1
  188. package/client/dist/assets/agentstudio-D6L2jpNi.js +0 -1
  189. package/client/dist/assets/agentstudio-K2-Z7CL0.js +0 -1
  190. package/client/dist/assets/agentstudio-Zmgzthv8.js +0 -1
  191. package/client/dist/assets/analytics-BHqUazhP.js +0 -1
  192. package/client/dist/assets/builder-skfnZ1uC.js +0 -1
  193. package/client/dist/assets/dashboard-BVq6kRJe.js +0 -1
  194. package/client/dist/assets/dashboard-BaKPPmLH.js +0 -1
  195. package/client/dist/assets/dashboard-Bm8e4zYG.js +0 -1
  196. package/client/dist/assets/dashboard-Bt6IesnM.js +0 -1
  197. package/client/dist/assets/dashboard-C_NQZle_.js +0 -1
  198. package/client/dist/assets/dashboard-CyZKoGoI.js +0 -1
  199. package/client/dist/assets/dashboard-HIUdUBQ0.js +0 -1
  200. package/client/dist/assets/dashboard-pm4Mr229.js +0 -1
  201. package/client/dist/assets/index-Bz0TeGRs.css +0 -2
  202. package/client/dist/assets/index-kCUcnT8G.js +0 -77
  203. package/client/dist/assets/jira-CmKWERE0.js +0 -1
  204. package/client/dist/assets/nav-BHDiSIVu.js +0 -1
  205. package/client/dist/assets/nav-CMiYAq4i.js +0 -1
  206. package/client/dist/assets/nav-CqS7NrDW.js +0 -1
  207. package/client/dist/assets/nav-D-0M7xfv.js +0 -1
  208. package/client/dist/assets/nav-D65O6u9I.js +0 -1
  209. package/client/dist/assets/nav-D_LKYvBr.js +0 -1
  210. package/client/dist/assets/nav-FDTJmU79.js +0 -1
  211. package/client/dist/assets/nav-VaB-C4k5.js +0 -1
  212. package/client/dist/assets/setup-BBiHEO7h.js +0 -1
  213. package/client/dist/assets/setup-BlTWhNIQ.js +0 -1
  214. package/client/dist/assets/setup-Bp2L_oiP.js +0 -1
  215. package/client/dist/assets/setup-CInYXp1-.js +0 -1
  216. package/client/dist/assets/setup-CYH3bP6K.js +0 -1
  217. package/client/dist/assets/setup-DwcQ921P.js +0 -1
  218. package/client/dist/assets/setup-PBLjuDSs.js +0 -1
  219. package/client/dist/assets/setup-bx6FtoBp.js +0 -1
  220. package/client/dist/assets/tickets-BL9r1G0e.js +0 -1
  221. package/client/dist/assets/tickets-B_NyHJ8f.js +0 -1
  222. package/client/dist/assets/tickets-BarF1wuG.js +0 -1
  223. package/client/dist/assets/tickets-CclVhpQA.js +0 -1
  224. package/client/dist/assets/tickets-CqqOHbli.js +0 -1
  225. package/client/dist/assets/tickets-DCkFSiqt.js +0 -1
  226. package/client/dist/assets/tickets-Djn3ccfT.js +0 -1
  227. package/client/dist/assets/tickets-MiHBPsy_.js +0 -1
  228. package/client/dist/assets/useDesktop-DUvS4fuP.js +0 -1
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`エージェントを読み込み中…`,modeCreate:`新規カスタムエージェント`,modeEdit:`カスタムエージェントを編集`,create:`作成`,unsaved:`● 未保存`,resumeAiEdit:`AI編集を再開`,resumeAiEditTitle:`このドラフトをAI編集オーバーレイに戻す`,loadingAiDraft:`AIドラフトを読み込み中…`,testButton:`テスト`,testButtonTitle:`サンプルタスクでこのエージェントをテスト`,historyButton:`履歴`,historyButtonTitle:`バージョン履歴`,deleteConfirm:{title:`エージェント「{{agentId}}」を削除しますか?`,description:`ディスクから .md を削除します。バージョン履歴は DB に残ります — 後で本文を復元したい場合は新しいカスタムエージェントを作成してください。`},errors:{loadDraftFailed:`ドラフトの読み込みに失敗しました: {{status}}`,loadFailed:`読み込みに失敗しました: {{status}}`,saveFailed:`保存に失敗しました: {{status}}`,deleteFailed:`削除に失敗しました: {{status}}`,testFailed:`テストに失敗しました: {{status}}`},toasts:{agentCreated:`エージェントを作成しました`,agentSaved:`エージェントを保存しました`,agentDeleted:`エージェントを削除しました`,createFailed:`エージェントの作成に失敗しました`,saveFailed:`エージェントの保存に失敗しました`,deleteFailed:`エージェントの削除に失敗しました`},validation:{namePattern:`名前は <code>custom-</code> で始まり、小文字・数字・ハイフンのみ使用できます。`,missingFrontmatter:`YAML フロントマターがありません(1行目に <code>---</code> が必要です)。`},sampleTasks:{pick:`— サンプルタスクを選択 —`,terraform:`Terraform: 公開 S3 バケット`,sqlInjection:`コードレビュー: SQL インジェクション`,accessibility:`フロントエンド: アクセシビリティ`,schemaChange:`データ: スキーマ変更`,slowQuery:`パフォーマンス: 遅いクエリ`},testPane:{header:`エージェントをテスト`,sampleTaskLabel:`サンプルタスク`,placeholder:`エージェントに実行させたい内容を記述するか、上のサンプルを選択してください。`,run:`実行`,running:`実行中…`,sandboxNote:`サンドボックス実行。ファイルへの書き込みはありません。`,tokens_one:`<mono>{{count}}</mono> トークン`,tokens_other:`<mono>{{count}}</mono> トークン`,tokensUnavailable:`トークン使用量は利用できません`,emptyHint:`現在のドラフトに対してサンプルタスクを実行します。出力はここに表示されます。`},versions:{header:`バージョン履歴`,empty:`このエージェントの過去のバージョンはありません。`,restoreHint:`バージョンをクリックすると本文がエディタに復元されます(保存は別途必要です)。`}},t={eyebrow:`AI編集`,headline:`エージェントを改良`,streamingHeadline:`エージェントを改良中…`,placeholderInitial:`このエージェントをどう改良するか記述してください…`,placeholderFollowUp:`追加の改良指示を送信…`,viewCurrentBody:`現在のエージェント本文を表示`,appliedAsVersion:`バージョン {{version}} として適用しました。`,openInStudio:`Studio でドラフトを開いて手動編集`,chips:{tightenTools:`ツールリストを絞り込む`,stricterPersonality:`パーソナリティをより厳格に`,workflowSection:`ワークフロープロトコルのセクションを追加`,sharpenDescription:`説明を短く鋭く`,matchDeveloperStyle:`sr-developer のスタイルに合わせる`}},n={validation:{missingBaseline:`必須のベースラインエージェントがありません: {{agent}}`,multipleDefaultRules:`ルーティングのデフォルトルールは1つまでです({{found}} 件見つかりました)`,defaultRuleNotLast:`デフォルトのルーティングルールは最後に配置する必要があります`,unknownRoutingAgent:`ルーティングがチェーンにないエージェントを参照しています: {{agent}}`,invalidTags:`ルーティングルール {{agent}} に不正なタグがあります: {{tags}}(小文字のケバブケースを使用してください)`},validationSummary_one:`{{count}} 件の検証の問題`,validationSummary_other:`{{count}} 件の検証の問題`,nameLabel:`名前`,descriptionLabel:`説明`,descriptionPlaceholder:`このプロファイルの用途は?`,orchestrator:{heading:`オーケストレーター`,description:`両コマンドの最上位モデルです。batch-implement はフィーチャーごとに implement に委譲するため、起動されるすべてのレールがこのプロファイルのエージェントチェーンを継承します。`},agentChain:{heading:`エージェントチェーン({{n}})`,addTitle:`カタログからエージェントを追加`,addDisabledTitle:`カタログの全エージェントが既にチェーンに含まれています`,pickFromCatalog:`カタログから選択({{n}} 件利用可能)`,emptyCatalog:`カタログに追加できるエージェントがありません。エージェントカタログタブからカスタムエージェントを追加してください。`,kind:{upstream:`アップストリーム`,custom:`カスタム`}},routing:{heading:`ルーティング({{n}})`,addDefault:`デフォルトを追加`,addRule:`ルールを追加`,needAgentsTitle:`ルーティングルールを作成する前にエージェントを1つ以上追加してください`,explainer:`最初に一致したルールが適用されます。ルールは編集・削除でき、デフォルトのキャッチオールは存在する場合は常に最後に配置されます。ルーティングが空の場合、パイプラインはチェーン内の最初の developer 系エージェントにフォールバックします。`,untargetedTitle:`チェーン内の未割り当てエージェント`,untargetedDetail:`どのルーティングルールも <mono>{{agents}}</mono> を指していません。実行させたい場合はタグルールを追加するか、デフォルトルールのターゲットを変更してください。`},agentRow:{dragTitle:`ドラッグして並べ替え`,dragHandleAria:`ドラッグハンドル`,pinnedFirst:`先頭`,pinnedFirstTitle:`先頭に固定 — パイプラインは常に sr-architect から開始します`,pinnedLast:`末尾`,pinnedLastTitle:`末尾に固定 — マージフェーズは常に最後に実行されます`,required:`必須`,requiredRemoveTitle:`必須のベースラインエージェント — パイプラインはこの行に依存しています`},routingRow:{everythingElse:`その他すべて`,defaultTargetAria:`デフォルトのルーティングターゲット(コア、読み取り専用)`,defaultTargetTitle:`コアのフォールバック — 編集不可`,targetAria:`ルール {{ordinal}} のルーティングターゲット`,editTitle:`ルールを編集`,editAria:`ルール {{ordinal}} を編集`,moveDown:`下へ移動`,moveUp:`上へ移動`,coreDefaultBadge:`コア · デフォルト`,coreDefaultTitle:`コアのフォールバック — パイプラインの最終手段のルールで、sr-developer に固定されています`}},r={coreBadge:`コア`,agents:{"sr-architect":{name:`アーキテクト`,description:`アーキテクチャ設計、変更スペック、実装計画`},"sr-developer":{name:`デベロッパー`,description:`全レイヤーにわたるフルスタック実装`},"sr-reviewer":{name:`レビュアー`,description:`一般的なコードレビュー — 最終品質ゲート`}},coreTeamTitle:`エージェントチーム`,coreTeamNote:`この3つのコアエージェントは常にインストールされます — 選択は不要です。後からプロファイルと custom-* エージェントで専門エージェントを追加できます。`},i={"security-reviewer":{label:`セキュリティレビュアー`,blurb:`リリース前の diff から認証、インジェクション、データ漏洩のバグを発見します。`},"performance-profiler":{label:`パフォーマンスプロファイラー`,blurb:`ホットパス、N+1 クエリ、上限のないループ、バンドル肥大化を発見します。`},"data-engineer":{label:`データエンジニア`,blurb:`スキーママイグレーション、ETL パイプライン、データ変換。`},"ui-ux-polisher":{label:`UI / UX ポリッシャー`,blurb:`アクセシビリティ、スペーシング、空状態、エラーハンドリング。`},"api-designer":{label:`API デザイナー`,blurb:`バージョニング、ページネーション、エラー形式、後方互換性。`},"database-architect":{label:`データベースアーキテクト`,blurb:`インデックス、正規化 vs 非正規化、クエリ形状。`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD、可観測性、インシデント対応準備、ランブック。`},"mobile-engineer":{label:`モバイルエンジニア`,blurb:`iOS + Android のパターン、オフラインファースト、バッテリー配慮。`},"ml-engineer":{label:`ML エンジニア`,blurb:`パイプライン、評価、再現性、ドリフト監視。`},"accessibility-auditor":{label:`アクセシビリティ監査者`,blurb:`WCAG 2.2 レビュー: コントラスト、フォーカス、ARIA、キーボード。`},"qa-test-strategist":{label:`QA テストストラテジスト`,blurb:`テスト計画: ユニット / 統合 / E2E の配分、カバレッジの欠落。`},"load-tester":{label:`負荷 / ストレステスター`,blurb:`キャパシティプランニング、k6 / Locust シナリオ、ボトルネック探索。`},"integration-tester":{label:`統合テスター`,blurb:`サービス間コントラクト、フィクスチャ、フレーキーテストの削減。`},"regression-hunter":{label:`リグレッションハンター`,blurb:`バイセクトと再現を行い、まず失敗するテストを書きます。`},"data-analyst":{label:`データアナリスト`,blurb:`曖昧な質問をクエリと読みやすい知見に変換します。`},"etl-reviewer":{label:`ETL パイプラインレビュアー`,blurb:`冪等性、バックフィル、遅延到着データ。`},"dashboard-designer":{label:`ダッシュボードデザイナー`,blurb:`一目で分かるダッシュボード、正直な軸、チャートごとのアクション。`},"iac-reviewer":{label:`IaC / クラウドレビュアー`,blurb:`Terraform / CloudFormation: IAM、公開露出、コスト。`},"compliance-reviewer":{label:`コンプライアンスレビュアー`,blurb:`データフローに対する GDPR / SOC2 / HIPAA 関連のチェック。`},"threat-modeler":{label:`脅威モデラー`,blurb:`アーキテクチャ図に対する STRIDE / LINDDUN。`},"product-manager":{label:`プロダクトマネージャー`,blurb:`課題設定、PRD、優先順位付け。`},"ux-researcher":{label:`UX リサーチャー`,blurb:`インタビュースクリプト、ユーザビリティテスト計画、結果の統合。`},"technical-writer":{label:`テクニカルライター`,blurb:`実際に読まれるドキュメント — チュートリアル、リファレンス、変更履歴。`},"design-reviewer":{label:`デザインシステムレビュアー`,blurb:`トークンのドリフト、コンポーネントの誤用、フロー間の一貫性。`},"financial-analyst":{label:`ファイナンシャルアナリスト`,blurb:`ユニットエコノミクス、コホートモデル、シナリオ分析。`},"pricing-strategist":{label:`プライシングストラテジスト`,blurb:`ティアリング、パッケージング、支払い意欲調査。`},"market-researcher":{label:`マーケットリサーチャー`,blurb:`TAM/SAM/SOM、競合マップ、顧客セグメント。`},"ops-optimizer":{label:`オペレーション最適化担当`,blurb:`サイクルタイム、ボトルネック発見、自動化候補。`},"seo-auditor":{label:`SEO 監査者`,blurb:`テクニカル + コンテンツ SEO: インデックス可能性、情報設計、検索意図の一致。`},"growth-hacker":{label:`グロース実験担当`,blurb:`ファネル診断、リフト実験、アクティベーションループ。`},"social-strategist":{label:`ソーシャルメディアストラテジスト`,blurb:`チャネルに合ったコンテンツ、編集カレンダー、ボイスの一貫性。`},"literature-reviewer":{label:`文献レビュアー`,blurb:`システマティックレビューの要約、引用グラフ、相反の検出。`},"experiment-designer":{label:`実験デザイナー`,blurb:`仮説、対照群、サンプルサイズ、事前登録。`},"statistical-analyst":{label:`統計アナリスト`,blurb:`適切な検定を選び、p 値だけでなく効果量を報告します。`},"scientific-writer":{label:`サイエンティフィックライター`,blurb:`IMRaD 構成、誠実な限界の記述、読みやすい要旨。`},"curriculum-designer":{label:`カリキュラムデザイナー`,blurb:`学習成果 → アクティビティ → 評価。`},"assessment-author":{label:`評価項目作成者`,blurb:`暗記ではなく理解を測る設問。`},"tutor-explainer":{label:`チューター / 解説者`,blurb:`ファインマン流のシンプルな説明と例題。`},"clinical-guideline-reviewer":{label:`臨床ガイドラインレビュアー`,blurb:`最新のエビデンスに基づくガイドラインと診療を照合します。`},"medical-summarizer":{label:`医学文献要約者`,blurb:`臨床医向けの要約: 何が変わったか、エビデンスの質。`},"protocol-designer":{label:`プロトコルデザイナー`,blurb:`臨床プロトコル: エンドポイント、選択基準、安全性。`},"contract-reviewer":{label:`契約レビュアー`,blurb:`リスクの高い条項にフラグを立て、実際の意味を説明します。`},"privacy-counsel":{label:`プライバシーカウンセル`,blurb:`具体的なフローに適用する GDPR / CCPA / LGPD。`},"copy-editor":{label:`コピーエディター`,blurb:`行単位の編集: ボイス、リズム、意味を保ったまま 30% 削減。`},"brand-voice-guardian":{label:`ブランドボイスガーディアン`,blurb:`ボイスルールを徹底し、ブランドから外れた表現を検出します。`},"creative-brainstormer":{label:`クリエイティブブレインストーマー`,blurb:`発散してから収束。聖域も丁寧に切り捨てます。`},"hiring-interviewer":{label:`採用面接官`,blurb:`構造化面接、シグナル重視、バイアスに配慮。`},"strategic-planner":{label:`戦略プランナー`,blurb:`目標 → 賭け → 指標。お気に入りプロジェクトを剪定します。`},"coach-1on1":{label:`1:1 コーチ`,blurb:`フィードバック、キャリア成長、難しい対話の組み立てを支援します。`},"meeting-facilitator":{label:`ミーティングファシリテーター`,blurb:`報告ではなく意思決定を生むアジェンダ。`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`Chargement de l'agent…`,modeCreate:`Nouvel agent personnalisé`,modeEdit:`Modifier l'agent personnalisé`,create:`Créer`,unsaved:`● non enregistré`,resumeAiEdit:`Reprendre l'Édition IA`,resumeAiEditTitle:`Renvoyer ce brouillon vers l'overlay Édition IA`,loadingAiDraft:`chargement du brouillon IA…`,testButton:`Tester`,testButtonTitle:`Tester cet agent sur une tâche d'exemple`,historyButton:`Historique`,historyButtonTitle:`Historique des versions`,deleteConfirm:{title:`Supprimer l'agent « {{agentId}} » ?`,description:`Supprime le fichier .md du disque. L'historique des versions reste en base — créez un nouvel agent personnalisé si vous voulez récupérer le corps plus tard.`},errors:{loadDraftFailed:`Échec du chargement du brouillon : {{status}}`,loadFailed:`Échec du chargement : {{status}}`,saveFailed:`Échec de l'enregistrement : {{status}}`,deleteFailed:`Échec de la suppression : {{status}}`,testFailed:`Échec du test : {{status}}`},toasts:{agentCreated:`Agent créé`,agentSaved:`Agent enregistré`,agentDeleted:`Agent supprimé`,createFailed:`Échec de la création de l'agent`,saveFailed:`Échec de l'enregistrement de l'agent`,deleteFailed:`Échec de la suppression de l'agent`},validation:{namePattern:`Le nom doit commencer par <code>custom-</code> et ne contenir que des lettres minuscules, des chiffres et des tirets.`,missingFrontmatter:`Frontmatter YAML manquant (il faut un <code>---</code> d'ouverture sur la première ligne).`},sampleTasks:{pick:`— choisir une tâche d'exemple —`,terraform:`Terraform : bucket S3 public`,sqlInjection:`Revue de code : injection SQL`,accessibility:`Frontend : accessibilité`,schemaChange:`Données : changement de schéma`,slowQuery:`Performance : requête lente`},testPane:{header:`Tester l'agent`,sampleTaskLabel:`Tâche d'exemple`,placeholder:`Décrivez ce que l'agent doit faire, ou choisissez un exemple ci-dessus.`,run:`Exécuter`,running:`Exécution…`,sandboxNote:`Exécution en sandbox ; aucun fichier écrit.`,tokens_one:`<mono>{{count}}</mono> token`,tokens_other:`<mono>{{count}}</mono> tokens`,tokensUnavailable:`Utilisation des tokens indisponible`,emptyHint:`Exécutez une tâche d'exemple sur le brouillon actuel. La sortie s'affiche ici.`},versions:{header:`Historique des versions`,empty:`Aucune version antérieure enregistrée pour cet agent.`,restoreHint:`Cliquez sur une version pour restaurer son corps dans l'éditeur (il faudra ensuite Enregistrer).`}},t={eyebrow:`Édition IA`,headline:`Affinez votre agent`,streamingHeadline:`Affinage de votre agent…`,placeholderInitial:`Décrivez comment affiner cet agent…`,placeholderFollowUp:`Envoyez un affinage complémentaire…`,viewCurrentBody:`Voir le corps actuel de l'agent`,appliedAsVersion:`Appliqué comme version {{version}}.`,openInStudio:`Ouvrir le brouillon dans le Studio pour l'éditer manuellement`,chips:{tightenTools:`Resserrer la liste d'outils`,stricterPersonality:`Rendre la personnalité plus stricte`,workflowSection:`Ajouter une section de protocole Workflow`,sharpenDescription:`Raccourcir et affûter la description`,matchDeveloperStyle:`S'aligner sur le style de sr-developer`}},n={validation:{missingBaseline:`Agent de base requis manquant : {{agent}}`,multipleDefaultRules:`Le routage admet au plus une règle par défaut ({{found}} trouvées)`,defaultRuleNotLast:`La règle de routage par défaut doit être la dernière entrée`,unknownRoutingAgent:`Le routage référence un agent absent de la chaîne : {{agent}}`,invalidTags:`La règle de routage {{agent}} a des tags invalides : {{tags}} (utilisez du kebab-case en minuscules)`},validationSummary_one:`{{count}} problème de validation`,validationSummary_other:`{{count}} problèmes de validation`,nameLabel:`Nom`,descriptionLabel:`Description`,descriptionPlaceholder:`À quoi sert ce profil ?`,orchestrator:{heading:`Orchestrateur`,description:`Modèle de premier niveau pour les deux commandes. batch-implement délègue à implement pour chaque fonctionnalité, donc chaque rail qu'il lance hérite de la chaîne d'agents de ce profil.`},agentChain:{heading:`Chaîne d'agents ({{n}})`,addTitle:`Ajouter un agent depuis le catalogue`,addDisabledTitle:`Tous les agents du catalogue sont déjà dans la chaîne`,pickFromCatalog:`Choisir dans le catalogue ({{n}} disponibles)`,emptyCatalog:`Plus aucun agent dans le catalogue. Ajoutez des agents personnalisés depuis l'onglet Catalogue d'agents.`,kind:{upstream:`upstream`,custom:`personnalisé`}},routing:{heading:`Routage ({{n}})`,addDefault:`Ajouter la règle par défaut`,addRule:`Ajouter une règle`,needAgentsTitle:`Ajoutez au moins un agent avant de créer des règles de routage`,explainer:`La première règle correspondante l'emporte. Les règles sont modifiables et supprimables, et la règle fourre-tout par défaut reste en dernier quand elle existe. Si le routage est vide, le pipeline se rabat sur le premier agent de type développeur de la chaîne.`,untargetedTitle:`Agents non ciblés dans la chaîne`,untargetedDetail:`Aucune règle de routage ne pointe vers : <mono>{{agents}}</mono>. Ajoutez une règle de tag ou reciblez la règle par défaut si vous voulez qu'ils s'exécutent.`},agentRow:{dragTitle:`Glisser pour réordonner`,dragHandleAria:`Poignée de glissement`,pinnedFirst:`premier`,pinnedFirstTitle:`Épinglé en première position — le pipeline commence toujours par sr-architect`,pinnedLast:`dernier`,pinnedLastTitle:`Épinglé en dernière position — la phase de merge s'exécute toujours en dernier`,required:`requis`,requiredRemoveTitle:`Agent de base requis — le pipeline dépend de cette ligne`},routingRow:{everythingElse:`tout le reste`,defaultTargetAria:`Cible de routage par défaut (core, lecture seule)`,defaultTargetTitle:`Repli core — non modifiable`,targetAria:`Cible de routage pour la règle {{ordinal}}`,editTitle:`Modifier la règle`,editAria:`Modifier la règle {{ordinal}}`,moveDown:`Descendre`,moveUp:`Monter`,coreDefaultBadge:`core · défaut`,coreDefaultTitle:`Repli core — la règle de dernier recours du pipeline, épinglée sur sr-developer`}},r={coreBadge:`core`,agents:{"sr-architect":{name:`Architecte`,description:`Conception d'architecture, specs de changement, planification d'implémentation`},"sr-developer":{name:`Développeur`,description:`Implémentation full-stack sur toutes les couches`},"sr-reviewer":{name:`Relecteur`,description:`Revue de code générale — l'ultime contrôle qualité`}},coreTeamTitle:`Votre équipe d'agents`,coreTeamNote:`Ces trois agents de base sont toujours installés — rien à choisir. Ajoutez des spécialistes plus tard via des profils et des agents custom-*.`},i={"security-reviewer":{label:`Relecteur Sécurité`,blurb:`Détecte les bugs d'authentification, d'injection et d'exposition de données dans un diff avant livraison.`},"performance-profiler":{label:`Profileur de performance`,blurb:`Repère les hot paths, les requêtes N+1, les boucles non bornées, le gonflement du bundle.`},"data-engineer":{label:`Data Engineer`,blurb:`Migrations de schéma, pipelines ETL, transformations de données.`},"ui-ux-polisher":{label:`Polisseur UI / UX`,blurb:`Accessibilité, espacement, états vides, gestion des erreurs.`},"api-designer":{label:`Concepteur d'API`,blurb:`Versionnage, pagination, formats d'erreur, rétrocompatibilité.`},"database-architect":{label:`Architecte base de données`,blurb:`Index, normalisation vs dénormalisation, formes de requêtes.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, observabilité, préparation aux incidents, runbooks.`},"mobile-engineer":{label:`Ingénieur Mobile`,blurb:`Patterns iOS + Android, offline-first, sobriété batterie.`},"ml-engineer":{label:`Ingénieur ML`,blurb:`Pipelines, éval, reproductibilité, surveillance du drift.`},"accessibility-auditor":{label:`Auditeur Accessibilité`,blurb:`Revue WCAG 2.2 : contraste, focus, ARIA, clavier.`},"qa-test-strategist":{label:`Stratège de tests QA`,blurb:`Plans de test : répartition unitaires / intégration / E2E, lacunes de couverture.`},"load-tester":{label:`Testeur de charge / stress`,blurb:`Planification de capacité, scénarios k6 / Locust, chasse aux goulots d'étranglement.`},"integration-tester":{label:`Testeur d'intégration`,blurb:`Contrats inter-services, fixtures, réduction des tests flaky.`},"regression-hunter":{label:`Chasseur de régressions`,blurb:`Bisecte, reproduit, écrit d'abord le test qui échoue.`},"data-analyst":{label:`Data Analyst`,blurb:`Transforme des questions vagues en requêtes + conclusions lisibles.`},"etl-reviewer":{label:`Relecteur de pipeline ETL`,blurb:`Idempotence, backfills, données tardives.`},"dashboard-designer":{label:`Concepteur de dashboards`,blurb:`Dashboards lisibles d'un coup d'œil, axes honnêtes, une action par graphique.`},"iac-reviewer":{label:`Relecteur IaC / Cloud`,blurb:`Terraform / CloudFormation : IAM, exposition publique, coûts.`},"compliance-reviewer":{label:`Relecteur Conformité`,blurb:`Contrôles type RGPD / SOC2 / HIPAA sur les flux de données.`},"threat-modeler":{label:`Modélisateur de menaces`,blurb:`STRIDE / LINDDUN sur les diagrammes d'architecture.`},"product-manager":{label:`Product Manager`,blurb:`Cadrage du problème, PRD, priorisation.`},"ux-researcher":{label:`Chercheur UX`,blurb:`Scripts d'entretien, plans de tests d'utilisabilité, synthèse.`},"technical-writer":{label:`Rédacteur technique`,blurb:`Des docs qu'on lit vraiment — tutoriels, références, changelogs.`},"design-reviewer":{label:`Relecteur Design System`,blurb:`Dérive des tokens, mauvais usage des composants, cohérence entre les flux.`},"financial-analyst":{label:`Analyste financier`,blurb:`Unit economics, modèles de cohortes, analyse de scénarios.`},"pricing-strategist":{label:`Stratège Pricing`,blurb:`Paliers, packaging, études de disposition à payer.`},"market-researcher":{label:`Chargé d'études de marché`,blurb:`TAM/SAM/SOM, cartographies concurrentielles, segments clients.`},"ops-optimizer":{label:`Optimiseur des opérations`,blurb:`Temps de cycle, détection des goulots, candidats à l'automatisation.`},"seo-auditor":{label:`Auditeur SEO`,blurb:`SEO technique + contenu : indexabilité, architecture de l'information, adéquation à l'intention.`},"growth-hacker":{label:`Expérimentateur Growth`,blurb:`Diagnostic de funnel, expériences d'uplift, boucles d'activation.`},"social-strategist":{label:`Stratège réseaux sociaux`,blurb:`Contenu adapté au canal, calendrier éditorial, cohérence de la voix.`},"literature-reviewer":{label:`Relecteur de littérature`,blurb:`Synthèses de revues systématiques, graphes de citations, conflits.`},"experiment-designer":{label:`Concepteur d'expériences`,blurb:`Hypothèses, contrôles, taille d'échantillon, préenregistrement.`},"statistical-analyst":{label:`Analyste statistique`,blurb:`Choisit le bon test, rapporte les tailles d'effet, pas seulement les p-values.`},"scientific-writer":{label:`Rédacteur scientifique`,blurb:`Structure IMRaD, limites honnêtes, abstracts lisibles.`},"curriculum-designer":{label:`Concepteur de cursus`,blurb:`Objectifs d'apprentissage → activités → évaluation.`},"assessment-author":{label:`Auteur d'évaluations`,blurb:`Des questions qui mesurent la compréhension, pas la mémorisation.`},"tutor-explainer":{label:`Tuteur / Vulgarisateur`,blurb:`Explications simples façon Feynman, avec exemples corrigés.`},"clinical-guideline-reviewer":{label:`Relecteur de recommandations cliniques`,blurb:`Confronte la pratique aux dernières recommandations fondées sur les preuves.`},"medical-summarizer":{label:`Synthétiseur de littérature médicale`,blurb:`Des abstracts pour les cliniciens : ce qui change, qualité des preuves.`},"protocol-designer":{label:`Concepteur de protocoles`,blurb:`Protocoles cliniques : critères de jugement, critères d'inclusion, sécurité.`},"contract-reviewer":{label:`Relecteur de contrats`,blurb:`Signale les clauses à risque ; explique ce qu'elles veulent vraiment dire.`},"privacy-counsel":{label:`Conseil en confidentialité`,blurb:`RGPD / CCPA / LGPD appliqués à des flux concrets.`},"copy-editor":{label:`Réviseur éditorial`,blurb:`Corrections fines : voix, rythme, couper 30 % sans perdre le sens.`},"brand-voice-guardian":{label:`Gardien de la voix de marque`,blurb:`Fait respecter les règles de ton ; repère les formulations hors marque.`},"creative-brainstormer":{label:`Brainstormer créatif`,blurb:`Divergent puis convergent ; tue les vaches sacrées avec tact.`},"hiring-interviewer":{label:`Intervieweur de recrutement`,blurb:`Entretiens structurés, axés sur le signal, attentifs aux biais.`},"strategic-planner":{label:`Planificateur stratégique`,blurb:`Objectifs → paris → métriques ; élague les projets fétiches.`},"coach-1on1":{label:`Coach 1:1`,blurb:`Aide à cadrer le feedback, l'évolution de carrière, les conversations difficiles.`},"meeting-facilitator":{label:`Facilitateur de réunions`,blurb:`Des ordres du jour qui produisent des décisions, pas des points d'étape.`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`Agent wird geladen…`,modeCreate:`Neuer Custom-Agent`,modeEdit:`Custom-Agent bearbeiten`,create:`Erstellen`,unsaved:`● ungespeichert`,resumeAiEdit:`AI Edit fortsetzen`,resumeAiEditTitle:`Diesen Entwurf zurück an das AI-Edit-Overlay übergeben`,loadingAiDraft:`KI-Entwurf wird geladen…`,testButton:`Testen`,testButtonTitle:`Diesen Agent mit einer Beispielaufgabe testen`,historyButton:`Verlauf`,historyButtonTitle:`Versionsverlauf`,deleteConfirm:{title:`Agent „{{agentId}}“ löschen?`,description:`Entfernt die .md-Datei von der Festplatte. Der Versionsverlauf bleibt in der DB erhalten – verwenden Sie einen neuen Custom-Agent, um den Inhalt später wiederherzustellen.`},errors:{loadDraftFailed:`Entwurf konnte nicht geladen werden: {{status}}`,loadFailed:`Laden fehlgeschlagen: {{status}}`,saveFailed:`Speichern fehlgeschlagen: {{status}}`,deleteFailed:`Löschen fehlgeschlagen: {{status}}`,testFailed:`Test fehlgeschlagen: {{status}}`},toasts:{agentCreated:`Agent erstellt`,agentSaved:`Agent gespeichert`,agentDeleted:`Agent gelöscht`,createFailed:`Agent konnte nicht erstellt werden`,saveFailed:`Agent konnte nicht gespeichert werden`,deleteFailed:`Agent konnte nicht gelöscht werden`},validation:{namePattern:`Der Name muss mit <code>custom-</code> beginnen und darf nur Kleinbuchstaben, Ziffern und Bindestriche enthalten.`,missingFrontmatter:`YAML-Frontmatter fehlt (benötigt öffnendes <code>---</code> in der ersten Zeile).`},sampleTasks:{pick:`– Beispielaufgabe wählen –`,terraform:`Terraform: öffentlicher S3-Bucket`,sqlInjection:`Code-Review: SQL-Injection`,accessibility:`Frontend: Barrierefreiheit`,schemaChange:`Daten: Schemaänderung`,slowQuery:`Performance: langsame Query`},testPane:{header:`Agent testen`,sampleTaskLabel:`Beispielaufgabe`,placeholder:`Beschreiben Sie, was der Agent tun soll, oder wählen Sie oben ein Beispiel.`,run:`Ausführen`,running:`Läuft…`,sandboxNote:`Sandbox-Modus; es werden keine Dateien geschrieben.`,tokens_one:`<mono>{{count}}</mono> Token`,tokens_other:`<mono>{{count}}</mono> Tokens`,tokensUnavailable:`Token-Nutzung nicht verfügbar`,emptyHint:`Führen Sie eine Beispielaufgabe gegen den aktuellen Entwurf aus. Die Ausgabe erscheint hier.`},versions:{header:`Versionsverlauf`,empty:`Keine früheren Versionen für diesen Agent vorhanden.`,restoreHint:`Klicken Sie auf eine Version, um ihren Inhalt in den Editor zu übernehmen (Speichern ist weiterhin nötig).`}},t={eyebrow:`AI Edit`,headline:`Agent verfeinern`,streamingHeadline:`Agent wird verfeinert…`,placeholderInitial:`Beschreiben Sie, wie dieser Agent verfeinert werden soll…`,placeholderFollowUp:`Weitere Verfeinerung senden…`,viewCurrentBody:`Aktuellen Agent-Inhalt anzeigen`,appliedAsVersion:`Als Version {{version}} übernommen.`,openInStudio:`Entwurf im Studio zur manuellen Bearbeitung öffnen`,chips:{tightenTools:`Tool-Liste straffen`,stricterPersonality:`Persönlichkeit strenger machen`,workflowSection:`Abschnitt mit Workflow-Protokoll hinzufügen`,sharpenDescription:`Beschreibung kürzen und schärfen`,matchDeveloperStyle:`An den sr-developer-Stil angleichen`}},n={validation:{missingBaseline:`Erforderlicher Baseline-Agent fehlt: {{agent}}`,multipleDefaultRules:`Routing darf höchstens eine Standardregel haben ({{found}} gefunden)`,defaultRuleNotLast:`Die Standard-Routing-Regel muss der letzte Eintrag sein`,unknownRoutingAgent:`Routing verweist auf einen Agent, der nicht in der Kette ist: {{agent}}`,invalidTags:`Routing-Regel {{agent}} hat ungültige Tags: {{tags}} (Kleinbuchstaben in kebab-case verwenden)`},validationSummary_one:`{{count}} Validierungsproblem`,validationSummary_other:`{{count}} Validierungsprobleme`,nameLabel:`Name`,descriptionLabel:`Beschreibung`,descriptionPlaceholder:`Wofür ist dieses Profil?`,orchestrator:{heading:`Orchestrator`,description:`Top-Level-Modell für beide Befehle. batch-implement delegiert pro Feature an implement, daher erbt jede gestartete Rail die Agenten-Kette dieses Profils.`},agentChain:{heading:`Agenten-Kette ({{n}})`,addTitle:`Agent aus dem Katalog hinzufügen`,addDisabledTitle:`Alle Katalog-Agenten sind bereits in der Kette`,pickFromCatalog:`Aus Katalog wählen ({{n}} verfügbar)`,emptyCatalog:`Keine weiteren Agenten im Katalog. Fügen Sie Custom-Agenten über den Tab „Agenten-Katalog“ hinzu.`,kind:{upstream:`upstream`,custom:`custom`}},routing:{heading:`Routing ({{n}})`,addDefault:`Standard hinzufügen`,addRule:`Regel hinzufügen`,needAgentsTitle:`Fügen Sie mindestens einen Agent hinzu, bevor Sie Routing-Regeln erstellen`,explainer:`Die erste passende Regel gewinnt. Regeln sind bearbeitbar und entfernbar; die Standard-Catch-all-Regel bleibt am Ende, sofern vorhanden. Bleibt das Routing leer, fällt die Pipeline auf den ersten Developer-artigen Agent in der Kette zurück.`,untargetedTitle:`Nicht angesteuerte Agenten in der Kette`,untargetedDetail:`Keine Routing-Regel zeigt auf: <mono>{{agents}}</mono>. Fügen Sie eine Tag-Regel hinzu oder ändern Sie das Ziel der Standardregel, damit sie ausgeführt werden.`},agentRow:{dragTitle:`Zum Umsortieren ziehen`,dragHandleAria:`Ziehgriff`,pinnedFirst:`Anfang`,pinnedFirstTitle:`An erster Position fixiert – die Pipeline beginnt immer mit sr-architect`,pinnedLast:`Ende`,pinnedLastTitle:`An letzter Position fixiert – die Merge-Phase läuft immer zuletzt`,required:`erforderlich`,requiredRemoveTitle:`Erforderlicher Baseline-Agent – die Pipeline hängt von dieser Zeile ab`},routingRow:{everythingElse:`alles andere`,defaultTargetAria:`Standard-Routing-Ziel (Core, schreibgeschützt)`,defaultTargetTitle:`Core-Fallback – nicht bearbeitbar`,targetAria:`Routing-Ziel für Regel {{ordinal}}`,editTitle:`Regel bearbeiten`,editAria:`Regel {{ordinal}} bearbeiten`,moveDown:`Nach unten`,moveUp:`Nach oben`,coreDefaultBadge:`Core · Standard`,coreDefaultTitle:`Core-Fallback – die letzte Auffangregel der Pipeline, fest auf sr-developer`}},r={coreBadge:`core`,agents:{"sr-architect":{name:`Architekt`,description:`Architekturdesign, Change-Specs, Implementierungsplanung`},"sr-developer":{name:`Entwickler`,description:`Full-Stack-Implementierung über alle Schichten`},"sr-reviewer":{name:`Reviewer`,description:`Allgemeines Code-Review – das letzte Quality-Gate`}},coreTeamTitle:`Dein Agenten-Team`,coreTeamNote:`Diese drei Kern-Agenten werden immer installiert — nichts auszuwählen. Füge Spezialisten später über Profile und custom-*-Agenten hinzu.`},i={"security-reviewer":{label:`Security-Reviewer`,blurb:`Findet Auth-, Injection- und Datenleck-Bugs in einem Diff, bevor er ausgeliefert wird.`},"performance-profiler":{label:`Performance-Profiler`,blurb:`Findet Hot Paths, N+1-Queries, unbegrenzte Schleifen, Bundle-Bloat.`},"data-engineer":{label:`Data Engineer`,blurb:`Schema-Migrationen, ETL-Pipelines, Datentransformationen.`},"ui-ux-polisher":{label:`UI-/UX-Polisher`,blurb:`Barrierefreiheit, Abstände, Leerzustände, Fehlerbehandlung.`},"api-designer":{label:`API-Designer`,blurb:`Versionierung, Pagination, Fehlerformate, Abwärtskompatibilität.`},"database-architect":{label:`Datenbank-Architekt`,blurb:`Indizes, Normalisierung vs. Denormalisierung, Query-Formen.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, Observability, Incident-Bereitschaft, Runbooks.`},"mobile-engineer":{label:`Mobile Engineer`,blurb:`iOS- und Android-Patterns, Offline-first, akkuschonend.`},"ml-engineer":{label:`ML Engineer`,blurb:`Pipelines, Evaluation, Reproduzierbarkeit, Drift-Monitoring.`},"accessibility-auditor":{label:`Accessibility-Auditor`,blurb:`WCAG-2.2-Review: Kontrast, Fokus, ARIA, Tastatur.`},"qa-test-strategist":{label:`QA-Test-Stratege`,blurb:`Testpläne: Aufteilung Unit / Integration / E2E, Coverage-Lücken.`},"load-tester":{label:`Last-/Stresstester`,blurb:`Kapazitätsplanung, k6-/Locust-Szenarien, Engpasssuche.`},"integration-tester":{label:`Integrationstester`,blurb:`Service-übergreifende Contracts, Fixtures, weniger Flaky-Tests.`},"regression-hunter":{label:`Regressionsjäger`,blurb:`Bisektiert, reproduziert, schreibt zuerst den fehlschlagenden Test.`},"data-analyst":{label:`Data Analyst`,blurb:`Macht aus vagen Fragen Queries und lesbare Erkenntnisse.`},"etl-reviewer":{label:`ETL-Pipeline-Reviewer`,blurb:`Idempotenz, Backfills, verspätet eintreffende Daten.`},"dashboard-designer":{label:`Dashboard-Designer`,blurb:`Dashboards auf einen Blick, ehrliche Achsen, eine Aktion pro Chart.`},"iac-reviewer":{label:`IaC-/Cloud-Reviewer`,blurb:`Terraform / CloudFormation: IAM, öffentliche Exposition, Kosten.`},"compliance-reviewer":{label:`Compliance-Reviewer`,blurb:`DSGVO- / SOC2- / HIPAA-nahe Prüfungen von Datenflüssen.`},"threat-modeler":{label:`Threat Modeler`,blurb:`STRIDE / LINDDUN über Architekturdiagramme.`},"product-manager":{label:`Product Manager`,blurb:`Problem-Framing, PRDs, Priorisierung.`},"ux-researcher":{label:`UX-Researcher`,blurb:`Interviewleitfäden, Usability-Testpläne, Synthese.`},"technical-writer":{label:`Technical Writer`,blurb:`Doku, die wirklich gelesen wird – Tutorials, Referenzen, Changelogs.`},"design-reviewer":{label:`Designsystem-Reviewer`,blurb:`Token-Drift, Komponenten-Fehlgebrauch, Konsistenz über Flows hinweg.`},"financial-analyst":{label:`Finanzanalyst`,blurb:`Unit Economics, Kohortenmodelle, Szenarioanalysen.`},"pricing-strategist":{label:`Pricing-Stratege`,blurb:`Tiering, Packaging, Zahlungsbereitschaftsstudien.`},"market-researcher":{label:`Marktforscher`,blurb:`TAM/SAM/SOM, Wettbewerbskarten, Kundensegmente.`},"ops-optimizer":{label:`Operations-Optimierer`,blurb:`Durchlaufzeiten, Engpasssuche, Automatisierungskandidaten.`},"seo-auditor":{label:`SEO-Auditor`,blurb:`Technisches und Content-SEO: Indexierbarkeit, IA, Suchintention.`},"growth-hacker":{label:`Growth-Experimentierer`,blurb:`Funnel-Diagnose, Lift-Experimente, Aktivierungsschleifen.`},"social-strategist":{label:`Social-Media-Stratege`,blurb:`Kanalgerechter Content, Redaktionskalender, konsistente Stimme.`},"literature-reviewer":{label:`Literatur-Reviewer`,blurb:`Zusammenfassungen systematischer Reviews, Zitationsgraphen, Konflikte.`},"experiment-designer":{label:`Experiment-Designer`,blurb:`Hypothesen, Kontrollgruppen, Stichprobengröße, Präregistrierung.`},"statistical-analyst":{label:`Statistik-Analyst`,blurb:`Wählt den richtigen Test, berichtet Effektstärken statt nur p-Werte.`},"scientific-writer":{label:`Wissenschaftsautor`,blurb:`IMRaD-Struktur, ehrliche Limitationen, lesbare Abstracts.`},"curriculum-designer":{label:`Curriculum-Designer`,blurb:`Lernziele → Aktivitäten → Bewertung.`},"assessment-author":{label:`Prüfungsautor`,blurb:`Aufgaben, die Verständnis messen, nicht Auswendiglernen.`},"tutor-explainer":{label:`Tutor / Erklärer`,blurb:`Einfache Erklärungen im Feynman-Stil mit durchgerechneten Beispielen.`},"clinical-guideline-reviewer":{label:`Reviewer klinischer Leitlinien`,blurb:`Gleicht die Praxis mit den neuesten evidenzbasierten Leitlinien ab.`},"medical-summarizer":{label:`Zusammenfasser medizinischer Literatur`,blurb:`Abstracts für Klinikpersonal: was sich geändert hat, Evidenzqualität.`},"protocol-designer":{label:`Protokoll-Designer`,blurb:`Klinische Protokolle: Endpunkte, Einschlusskriterien, Sicherheit.`},"contract-reviewer":{label:`Vertragsprüfer`,blurb:`Markiert riskante Klauseln und erklärt, was sie wirklich bedeuten.`},"privacy-counsel":{label:`Datenschutzberater`,blurb:`DSGVO / CCPA / LGPD angewendet auf konkrete Datenflüsse.`},"copy-editor":{label:`Lektor`,blurb:`Zeilenlektorat: Stimme, Rhythmus, 30 % kürzen ohne Bedeutungsverlust.`},"brand-voice-guardian":{label:`Markenstimme-Wächter`,blurb:`Setzt Voice-Regeln durch; erkennt markenfremde Formulierungen.`},"creative-brainstormer":{label:`Kreativ-Brainstormer`,blurb:`Erst divergent, dann konvergent; schlachtet heilige Kühe höflich.`},"hiring-interviewer":{label:`Hiring-Interviewer`,blurb:`Strukturierte Interviews, signalfokussiert, bias-bewusst.`},"strategic-planner":{label:`Strategieplaner`,blurb:`Ziele → Wetten → Metriken; streicht Lieblingsprojekte.`},"coach-1on1":{label:`1:1-Coach`,blurb:`Hilft bei Feedback, Karriereentwicklung und schwierigen Gesprächen.`},"meeting-facilitator":{label:`Meeting-Moderator`,blurb:`Agenden, die Entscheidungen liefern statt Status-Updates.`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`正在加载 Agent…`,modeCreate:`新建自定义 Agent`,modeEdit:`编辑自定义 Agent`,create:`创建`,unsaved:`● 未保存`,resumeAiEdit:`继续 AI 编辑`,resumeAiEditTitle:`将此草稿交还给 AI 编辑浮层`,loadingAiDraft:`正在加载 AI 草稿…`,testButton:`测试`,testButtonTitle:`用示例任务测试此 Agent`,historyButton:`历史`,historyButtonTitle:`版本历史`,deleteConfirm:{title:`删除 Agent“{{agentId}}”?`,description:`这会从磁盘上删除该 .md 文件。版本历史仍保留在数据库中——若日后需要恢复内容,可新建一个自定义 Agent。`},errors:{loadDraftFailed:`加载草稿失败:{{status}}`,loadFailed:`加载失败:{{status}}`,saveFailed:`保存失败:{{status}}`,deleteFailed:`删除失败:{{status}}`,testFailed:`测试失败:{{status}}`},toasts:{agentCreated:`Agent 已创建`,agentSaved:`Agent 已保存`,agentDeleted:`Agent 已删除`,createFailed:`创建 Agent 失败`,saveFailed:`保存 Agent 失败`,deleteFailed:`删除 Agent 失败`},validation:{namePattern:`名称必须以 <code>custom-</code> 开头,且只能包含小写字母、数字和连字符。`,missingFrontmatter:`缺少 YAML frontmatter(第一行需要起始的 <code>---</code>)。`},sampleTasks:{pick:`—— 选择一个示例任务 ——`,terraform:`Terraform:公开的 S3 存储桶`,sqlInjection:`代码评审:SQL 注入`,accessibility:`前端:无障碍`,schemaChange:`数据:schema 变更`,slowQuery:`性能:慢查询`},testPane:{header:`测试 Agent`,sampleTaskLabel:`示例任务`,placeholder:`描述该 Agent 应该做什么,或在上方选择一个示例。`,run:`运行`,running:`运行中…`,sandboxNote:`沙箱运行;不写入任何文件。`,tokens_one:`<mono>{{count}}</mono> 个 token`,tokens_other:`<mono>{{count}}</mono> 个 token`,tokensUnavailable:`Token 用量不可用`,emptyHint:`针对当前草稿运行一个示例任务,输出会显示在这里。`},versions:{header:`版本历史`,empty:`此 Agent 暂无历史版本记录。`,restoreHint:`点击某个版本可将其内容恢复到编辑器中(仍需手动保存)。`}},t={eyebrow:`AI 编辑`,headline:`优化你的 Agent`,streamingHeadline:`正在优化你的 Agent…`,placeholderInitial:`描述如何优化此 Agent…`,placeholderFollowUp:`发送后续优化指令…`,viewCurrentBody:`查看当前 Agent 正文`,appliedAsVersion:`已应用为版本 {{version}}。`,openInStudio:`在 Studio 中打开草稿进行手动编辑`,chips:{tightenTools:`收紧工具列表`,stricterPersonality:`让人格设定更严格`,workflowSection:`添加 Workflow 协议章节`,sharpenDescription:`精简并锐化描述`,matchDeveloperStyle:`对齐 sr-developer 的风格`}},n={validation:{missingBaseline:`缺少必需的基线 Agent:{{agent}}`,multipleDefaultRules:`路由最多只能有一条默认规则(发现 {{found}} 条)`,defaultRuleNotLast:`默认路由规则必须是最后一条`,unknownRoutingAgent:`路由引用了不在链中的 Agent:{{agent}}`,invalidTags:`路由规则 {{agent}} 包含无效标签:{{tags}}(请使用小写 kebab-case)`},validationSummary_one:`{{count}} 个校验问题`,validationSummary_other:`{{count}} 个校验问题`,nameLabel:`名称`,descriptionLabel:`描述`,descriptionPlaceholder:`这个 Profile 用来做什么?`,orchestrator:{heading:`编排器`,description:`两个命令共用的顶层模型。batch-implement 会按 feature 委派给 implement,因此它启动的每条 rail 都会继承此 Profile 的 Agent 链。`},agentChain:{heading:`Agent 链({{n}})`,addTitle:`从目录中添加 Agent`,addDisabledTitle:`目录中的所有 Agent 都已在链中`,pickFromCatalog:`从目录选择({{n}} 个可用)`,emptyCatalog:`目录中没有更多 Agent。请在 Agent 目录标签页中添加自定义 Agent。`,kind:{upstream:`上游`,custom:`自定义`}},routing:{heading:`路由({{n}})`,addDefault:`添加默认规则`,addRule:`添加规则`,needAgentsTitle:`请先添加至少一个 Agent,再创建路由规则`,explainer:`首条匹配的规则生效。规则可编辑、可删除;存在默认兜底规则时它始终位于最后。如果路由留空,流水线会回退到链中第一个开发者类型的 Agent。`,untargetedTitle:`链中存在未被路由指向的 Agent`,untargetedDetail:`没有路由规则指向:<mono>{{agents}}</mono>。如需让它们运行,请添加标签规则或调整默认规则的目标。`},agentRow:{dragTitle:`拖动以重新排序`,dragHandleAria:`拖动手柄`,pinnedFirst:`首位`,pinnedFirstTitle:`固定在首位——流水线始终从 sr-architect 开始`,pinnedLast:`末位`,pinnedLastTitle:`固定在末位——合并阶段始终最后运行`,required:`必需`,requiredRemoveTitle:`必需的基线 Agent——流水线依赖此行`},routingRow:{everythingElse:`其余所有`,defaultTargetAria:`默认路由目标(核心,只读)`,defaultTargetTitle:`核心兜底——不可编辑`,targetAria:`规则 {{ordinal}} 的路由目标`,editTitle:`编辑规则`,editAria:`编辑规则 {{ordinal}}`,moveDown:`下移`,moveUp:`上移`,coreDefaultBadge:`核心 · 默认`,coreDefaultTitle:`核心兜底——流水线的最终兜底规则,固定指向 sr-developer`}},r={coreBadge:`核心`,agents:{"sr-architect":{name:`架构师`,description:`架构设计、变更 spec、实现规划`},"sr-developer":{name:`开发者`,description:`覆盖所有层的全栈实现`},"sr-reviewer":{name:`评审员`,description:`通用代码评审——最终质量门禁`}},coreTeamTitle:`你的智能体团队`,coreTeamNote:`这三个核心智能体始终会被安装——无需选择。之后可通过配置档案和 custom-* 智能体添加专家。`},i={"security-reviewer":{label:`安全评审员`,blurb:`在 diff 交付前发现认证、注入与数据泄露问题。`},"performance-profiler":{label:`性能剖析师`,blurb:`发现热点路径、N+1 查询、无界循环、bundle 膨胀。`},"data-engineer":{label:`数据工程师`,blurb:`Schema 迁移、ETL 流水线、数据转换。`},"ui-ux-polisher":{label:`UI / UX 打磨师`,blurb:`无障碍、间距、空状态、错误处理。`},"api-designer":{label:`API 设计师`,blurb:`版本管理、分页、错误结构、向后兼容。`},"database-architect":{label:`数据库架构师`,blurb:`索引、规范化与反规范化、查询模式。`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD、可观测性、事故响应准备、运维手册。`},"mobile-engineer":{label:`移动端工程师`,blurb:`iOS + Android 模式、离线优先、电量友好。`},"ml-engineer":{label:`机器学习工程师`,blurb:`流水线、评估、可复现性、漂移监控。`},"accessibility-auditor":{label:`无障碍审计员`,blurb:`WCAG 2.2 评审:对比度、焦点、ARIA、键盘。`},"qa-test-strategist":{label:`QA 测试策略师`,blurb:`测试计划:单元 / 集成 / E2E 划分、覆盖率缺口。`},"load-tester":{label:`负载 / 压力测试员`,blurb:`容量规划、k6 / Locust 场景、瓶颈排查。`},"integration-tester":{label:`集成测试员`,blurb:`跨服务契约、测试夹具、减少偶发失败。`},"regression-hunter":{label:`回归猎手`,blurb:`二分定位、复现问题、先写出会失败的测试。`},"data-analyst":{label:`数据分析师`,blurb:`把模糊的问题变成查询和可读的结论。`},"etl-reviewer":{label:`ETL 流水线评审`,blurb:`幂等性、数据回填、迟到数据。`},"dashboard-designer":{label:`仪表盘设计师`,blurb:`一眼看懂的仪表盘、诚实的坐标轴、每张图对应一个行动。`},"iac-reviewer":{label:`IaC / 云评审`,blurb:`Terraform / CloudFormation:IAM、公网暴露、成本。`},"compliance-reviewer":{label:`合规评审`,blurb:`针对数据流的 GDPR / SOC2 / HIPAA 相关检查。`},"threat-modeler":{label:`威胁建模师`,blurb:`对架构图进行 STRIDE / LINDDUN 分析。`},"product-manager":{label:`产品经理`,blurb:`问题界定、PRD、优先级排序。`},"ux-researcher":{label:`UX 研究员`,blurb:`访谈脚本、可用性测试计划、结果综合。`},"technical-writer":{label:`技术写作者`,blurb:`真正有人读的文档——教程、参考、更新日志。`},"design-reviewer":{label:`设计系统评审`,blurb:`Token 漂移、组件误用、跨流程一致性。`},"financial-analyst":{label:`财务分析师`,blurb:`单位经济模型、同期群模型、情景分析。`},"pricing-strategist":{label:`定价策略师`,blurb:`分层、打包、支付意愿研究。`},"market-researcher":{label:`市场研究员`,blurb:`TAM/SAM/SOM、竞争格局图、客户细分。`},"ops-optimizer":{label:`运营优化师`,blurb:`周期时间、瓶颈定位、自动化候选项。`},"seo-auditor":{label:`SEO 审计员`,blurb:`技术 + 内容 SEO:可索引性、信息架构、意图匹配。`},"growth-hacker":{label:`增长实验师`,blurb:`漏斗诊断、提升实验、激活闭环。`},"social-strategist":{label:`社交媒体策略师`,blurb:`适配渠道的内容、编辑日历、语调一致性。`},"literature-reviewer":{label:`文献综述员`,blurb:`系统性综述摘要、引用图谱、矛盾发现。`},"experiment-designer":{label:`实验设计师`,blurb:`假设、对照、样本量、预注册。`},"statistical-analyst":{label:`统计分析师`,blurb:`选对检验方法,报告效应量而不只是 p 值。`},"scientific-writer":{label:`科学写作者`,blurb:`IMRaD 结构、坦诚的局限性、可读的摘要。`},"curriculum-designer":{label:`课程设计师`,blurb:`学习目标 → 教学活动 → 评估。`},"assessment-author":{label:`测评编写者`,blurb:`衡量理解而非记忆的题目。`},"tutor-explainer":{label:`导师 / 讲解者`,blurb:`费曼式的简明讲解,配有完整例题。`},"clinical-guideline-reviewer":{label:`临床指南评审`,blurb:`将临床实践与最新循证指南对照。`},"medical-summarizer":{label:`医学文献摘要员`,blurb:`面向临床医生的摘要:变化点与证据质量。`},"protocol-designer":{label:`方案设计师`,blurb:`临床方案:终点指标、入组标准、安全性。`},"contract-reviewer":{label:`合同评审`,blurb:`标记高风险条款,并解释其实际含义。`},"privacy-counsel":{label:`隐私顾问`,blurb:`将 GDPR / CCPA / LGPD 应用到具体流程。`},"copy-editor":{label:`文字编辑`,blurb:`逐行润色:语气、节奏,删减 30% 而不失原意。`},"brand-voice-guardian":{label:`品牌语调守护者`,blurb:`执行语调规则,捕捉偏离品牌的措辞。`},"creative-brainstormer":{label:`创意头脑风暴师`,blurb:`先发散后收敛,礼貌地挑战固有观念。`},"hiring-interviewer":{label:`招聘面试官`,blurb:`结构化面试,聚焦信号,规避偏见。`},"strategic-planner":{label:`战略规划师`,blurb:`目标 → 押注 → 指标;剔除个人偏好项目。`},"coach-1on1":{label:`1:1 教练`,blurb:`帮助组织反馈、规划职业成长、应对艰难对话。`},"meeting-facilitator":{label:`会议主持人`,blurb:`产出决策而非汇报的会议议程。`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`Cargando agente…`,modeCreate:`Nuevo agente personalizado`,modeEdit:`Editar agente personalizado`,create:`Crear`,unsaved:`● sin guardar`,resumeAiEdit:`Reanudar AI Edit`,resumeAiEditTitle:`Devolver este borrador al panel de AI Edit`,loadingAiDraft:`cargando borrador de IA…`,testButton:`Probar`,testButtonTitle:`Probar este agente con una tarea de ejemplo`,historyButton:`Historial`,historyButtonTitle:`Historial de versiones`,deleteConfirm:{title:`¿Eliminar el agente "{{agentId}}"?`,description:`Esto elimina el .md del disco. El historial de versiones se conserva en la BD — usa un nuevo agente personalizado si quieres recuperar el cuerpo más adelante.`},errors:{loadDraftFailed:`Error al cargar el borrador: {{status}}`,loadFailed:`Error al cargar: {{status}}`,saveFailed:`Error al guardar: {{status}}`,deleteFailed:`Error al eliminar: {{status}}`,testFailed:`Error en la prueba: {{status}}`},toasts:{agentCreated:`Agente creado`,agentSaved:`Agente guardado`,agentDeleted:`Agente eliminado`,createFailed:`No se pudo crear el agente`,saveFailed:`No se pudo guardar el agente`,deleteFailed:`No se pudo eliminar el agente`},validation:{namePattern:`El nombre debe empezar por <code>custom-</code> y contener solo minúsculas, dígitos y guiones.`,missingFrontmatter:`Falta el frontmatter YAML (necesita un <code>---</code> de apertura en la primera línea).`},sampleTasks:{pick:`— elige una tarea de ejemplo —`,terraform:`Terraform: bucket S3 público`,sqlInjection:`Revisión de código: inyección SQL`,accessibility:`Frontend: accesibilidad`,schemaChange:`Datos: cambio de esquema`,slowQuery:`Rendimiento: consulta lenta`},testPane:{header:`Probar agente`,sampleTaskLabel:`Tarea de ejemplo`,placeholder:`Describe qué debe hacer el agente o elige un ejemplo arriba.`,run:`Ejecutar`,running:`Ejecutando…`,sandboxNote:`En sandbox; no se escriben archivos.`,tokens_one:`<mono>{{count}}</mono> token`,tokens_other:`<mono>{{count}}</mono> tokens`,tokensUnavailable:`Uso de tokens no disponible`,emptyHint:`Ejecuta una tarea de ejemplo contra el borrador actual. El resultado aparece aquí.`},versions:{header:`Historial de versiones`,empty:`No hay versiones anteriores registradas para este agente.`,restoreHint:`Haz clic en una versión para restaurar su cuerpo en el editor (aún tendrás que guardar).`}},t={eyebrow:`AI Edit`,headline:`Refina tu agente`,streamingHeadline:`Refinando tu agente…`,placeholderInitial:`Describe cómo refinar este agente…`,placeholderFollowUp:`Envía un refinamiento adicional…`,viewCurrentBody:`Ver el cuerpo actual del agente`,appliedAsVersion:`Aplicado como versión {{version}}.`,openInStudio:`Abrir el borrador en Studio para editarlo manualmente`,chips:{tightenTools:`Acota la lista de herramientas`,stricterPersonality:`Haz la personalidad más estricta`,workflowSection:`Añade una sección de protocolo de workflow`,sharpenDescription:`Acorta y afina la descripción`,matchDeveloperStyle:`Imita el estilo de sr-developer`}},n={validation:{missingBaseline:`Falta el agente base obligatorio: {{agent}}`,multipleDefaultRules:`El enrutado solo puede tener una regla por defecto (se encontraron {{found}})`,defaultRuleNotLast:`La regla de enrutado por defecto debe ser la última entrada`,unknownRoutingAgent:`El enrutado referencia un agente que no está en la cadena: {{agent}}`,invalidTags:`La regla de enrutado {{agent}} tiene tags no válidos: {{tags}} (usa kebab-case en minúsculas)`},validationSummary_one:`{{count}} problema de validación`,validationSummary_other:`{{count}} problemas de validación`,nameLabel:`Nombre`,descriptionLabel:`Descripción`,descriptionPlaceholder:`¿Para qué sirve este perfil?`,orchestrator:{heading:`Orquestador`,description:`Modelo de nivel superior para ambos comandos. batch-implement delega en implement por cada feature, así que cada rail que lanza hereda la cadena de agentes de este perfil.`},agentChain:{heading:`Cadena de agentes ({{n}})`,addTitle:`Añadir un agente del catálogo`,addDisabledTitle:`Todos los agentes del catálogo ya están en la cadena`,pickFromCatalog:`Elegir del catálogo ({{n}} disponibles)`,emptyCatalog:`No quedan agentes en el catálogo. Añade agentes personalizados desde la pestaña Catálogo de agentes.`,kind:{upstream:`upstream`,custom:`personalizado`}},routing:{heading:`Enrutado ({{n}})`,addDefault:`Añadir por defecto`,addRule:`Añadir regla`,needAgentsTitle:`Añade al menos un agente antes de crear reglas de enrutado`,explainer:`Gana la primera regla que coincida. Las reglas se pueden editar y eliminar, y la regla por defecto se mantiene en último lugar cuando existe. Si dejas el enrutado vacío, el pipeline recurre al primer agente de tipo developer de la cadena.`,untargetedTitle:`Agentes de la cadena sin regla`,untargetedDetail:`Ninguna regla de enrutado apunta a: <mono>{{agents}}</mono>. Añade una regla de tags o redirige la regla por defecto si quieres que se ejecuten.`},agentRow:{dragTitle:`Arrastra para reordenar`,dragHandleAria:`Asa de arrastre`,pinnedFirst:`primero`,pinnedFirstTitle:`Fijado en primera posición — el pipeline siempre empieza con sr-architect`,pinnedLast:`último`,pinnedLastTitle:`Fijado en última posición — la fase de merge siempre se ejecuta al final`,required:`obligatorio`,requiredRemoveTitle:`Agente base obligatorio — el pipeline depende de esta fila`},routingRow:{everythingElse:`todo lo demás`,defaultTargetAria:`Destino de enrutado por defecto (core, solo lectura)`,defaultTargetTitle:`Fallback del core — no editable`,targetAria:`Destino de enrutado para la regla {{ordinal}}`,editTitle:`Editar regla`,editAria:`Editar regla {{ordinal}}`,moveDown:`Bajar`,moveUp:`Subir`,coreDefaultBadge:`core · por defecto`,coreDefaultTitle:`Fallback del core — la regla de último recurso del pipeline, fijada a sr-developer`}},r={coreBadge:`core`,agents:{"sr-architect":{name:`Arquitecto`,description:`Diseño de arquitectura, specs de cambios, planificación de la implementación`},"sr-developer":{name:`Desarrollador`,description:`Implementación full-stack en todas las capas`},"sr-reviewer":{name:`Revisor`,description:`Revisión general de código — el último control de calidad`}},coreTeamTitle:`Tu equipo de agentes`,coreTeamNote:`Estos tres agentes core se instalan siempre — no hay nada que elegir. Añade especialistas más tarde con perfiles y agentes custom-*.`},i={"security-reviewer":{label:`Revisor de seguridad`,blurb:`Encuentra bugs de autenticación, inyección y exposición de datos en un diff antes de publicarlo.`},"performance-profiler":{label:`Perfilador de rendimiento`,blurb:`Encuentra hot paths, consultas N+1, bucles sin límite y bundles hinchados.`},"data-engineer":{label:`Ingeniero de datos`,blurb:`Migraciones de esquema, pipelines ETL, transformaciones de datos.`},"ui-ux-polisher":{label:`Pulidor de UI / UX`,blurb:`Accesibilidad, espaciado, estados vacíos, gestión de errores.`},"api-designer":{label:`Diseñador de APIs`,blurb:`Versionado, paginación, formatos de error, retrocompatibilidad.`},"database-architect":{label:`Arquitecto de bases de datos`,blurb:`Índices, normalización frente a desnormalización, patrones de consulta.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, observabilidad, preparación ante incidentes, runbooks.`},"mobile-engineer":{label:`Ingeniero móvil`,blurb:`Patrones de iOS y Android, offline-first, cuidado con la batería.`},"ml-engineer":{label:`Ingeniero de ML`,blurb:`Pipelines, evaluación, reproducibilidad, monitorización de drift.`},"accessibility-auditor":{label:`Auditor de accesibilidad`,blurb:`Revisión WCAG 2.2: contraste, foco, ARIA, teclado.`},"qa-test-strategist":{label:`Estratega de tests QA`,blurb:`Planes de test: reparto unitarios / integración / E2E, huecos de cobertura.`},"load-tester":{label:`Tester de carga / estrés`,blurb:`Planificación de capacidad, escenarios k6 / Locust, caza de cuellos de botella.`},"integration-tester":{label:`Tester de integración`,blurb:`Contratos entre servicios, fixtures, reducción de tests flaky.`},"regression-hunter":{label:`Cazador de regresiones`,blurb:`Biseca, reproduce y escribe primero el test que falla.`},"data-analyst":{label:`Analista de datos`,blurb:`Convierte preguntas vagas en consultas + conclusiones legibles.`},"etl-reviewer":{label:`Revisor de pipelines ETL`,blurb:`Idempotencia, backfills, datos que llegan tarde.`},"dashboard-designer":{label:`Diseñador de dashboards`,blurb:`Dashboards de un vistazo, ejes honestos, una acción por gráfico.`},"iac-reviewer":{label:`Revisor de IaC / cloud`,blurb:`Terraform / CloudFormation: IAM, exposición pública, costes.`},"compliance-reviewer":{label:`Revisor de cumplimiento`,blurb:`Comprobaciones cercanas a RGPD / SOC2 / HIPAA sobre flujos de datos.`},"threat-modeler":{label:`Modelador de amenazas`,blurb:`STRIDE / LINDDUN sobre diagramas de arquitectura.`},"product-manager":{label:`Product Manager`,blurb:`Encuadre de problemas, PRDs, priorización.`},"ux-researcher":{label:`Investigador UX`,blurb:`Guiones de entrevista, planes de test de usabilidad, síntesis.`},"technical-writer":{label:`Redactor técnico`,blurb:`Docs que de verdad se leen — tutoriales, referencias, changelogs.`},"design-reviewer":{label:`Revisor de design system`,blurb:`Deriva de tokens, mal uso de componentes, consistencia entre flujos.`},"financial-analyst":{label:`Analista financiero`,blurb:`Unit economics, modelos de cohortes, análisis de escenarios.`},"pricing-strategist":{label:`Estratega de precios`,blurb:`Niveles, empaquetado, estudios de disposición a pagar.`},"market-researcher":{label:`Investigador de mercado`,blurb:`TAM/SAM/SOM, mapas competitivos, segmentos de clientes.`},"ops-optimizer":{label:`Optimizador de operaciones`,blurb:`Tiempos de ciclo, detección de cuellos de botella, candidatos a automatización.`},"seo-auditor":{label:`Auditor SEO`,blurb:`SEO técnico y de contenido: indexabilidad, arquitectura de la información, ajuste a la intención.`},"growth-hacker":{label:`Experimentador de growth`,blurb:`Diagnóstico de funnels, experimentos de mejora, bucles de activación.`},"social-strategist":{label:`Estratega de redes sociales`,blurb:`Contenido adaptado al canal, calendario editorial, consistencia de voz.`},"literature-reviewer":{label:`Revisor de literatura`,blurb:`Resúmenes de revisión sistemática, grafos de citas, conflictos.`},"experiment-designer":{label:`Diseñador de experimentos`,blurb:`Hipótesis, controles, tamaño muestral, prerregistro.`},"statistical-analyst":{label:`Analista estadístico`,blurb:`Elige el test correcto e informa tamaños de efecto, no solo p-valores.`},"scientific-writer":{label:`Redactor científico`,blurb:`Estructura IMRaD, límites honestos, abstracts legibles.`},"curriculum-designer":{label:`Diseñador curricular`,blurb:`Resultados de aprendizaje → actividades → evaluación.`},"assessment-author":{label:`Autor de evaluaciones`,blurb:`Ítems que miden comprensión, no memorización.`},"tutor-explainer":{label:`Tutor / explicador`,blurb:`Explicaciones sencillas al estilo Feynman con ejemplos resueltos.`},"clinical-guideline-reviewer":{label:`Revisor de guías clínicas`,blurb:`Contrasta la práctica con las últimas guías basadas en la evidencia.`},"medical-summarizer":{label:`Resumidor de literatura médica`,blurb:`Abstracts para clínicos: qué ha cambiado, calidad de la evidencia.`},"protocol-designer":{label:`Diseñador de protocolos`,blurb:`Protocolos clínicos: endpoints, criterios de inclusión, seguridad.`},"contract-reviewer":{label:`Revisor de contratos`,blurb:`Señala cláusulas de riesgo y explica qué significan en realidad.`},"privacy-counsel":{label:`Asesor de privacidad`,blurb:`RGPD / CCPA / LGPD aplicados a flujos concretos.`},"copy-editor":{label:`Editor de estilo`,blurb:`Ediciones línea a línea: voz, cadencia, recortar un 30 % sin perder significado.`},"brand-voice-guardian":{label:`Guardián de la voz de marca`,blurb:`Aplica las reglas de voz; caza frases fuera de marca.`},"creative-brainstormer":{label:`Brainstormer creativo`,blurb:`Diverge y luego converge; mata vacas sagradas con educación.`},"hiring-interviewer":{label:`Entrevistador de contratación`,blurb:`Entrevistas estructuradas, centradas en la señal, conscientes del sesgo.`},"strategic-planner":{label:`Planificador estratégico`,blurb:`Objetivos → apuestas → métricas; poda los proyectos capricho.`},"coach-1on1":{label:`Coach de 1:1`,blurb:`Ayuda a enmarcar el feedback, el crecimiento profesional y las conversaciones difíciles.`},"meeting-facilitator":{label:`Facilitador de reuniones`,blurb:`Agendas que producen decisiones, no actualizaciones.`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({agentSelector:()=>a,default:()=>s,profileEditor:()=>i,refine:()=>r,studio:()=>n,templates:()=>o}),n={loadingAgent:`Loading agent…`,modeCreate:`New custom agent`,modeEdit:`Edit custom agent`,create:`Create`,unsaved:`● unsaved`,resumeAiEdit:`Resume AI Edit`,resumeAiEditTitle:`Hand this draft back to the AI Edit overlay`,loadingAiDraft:`loading AI draft…`,testButton:`Test`,testButtonTitle:`Test this agent against a sample task`,historyButton:`History`,historyButtonTitle:`Version history`,deleteConfirm:{title:`Delete agent "{{agentId}}"?`,description:`This removes the .md from disk. Version history stays in the DB — use a fresh custom agent if you want to recover the body later.`},errors:{loadDraftFailed:`Load draft failed: {{status}}`,loadFailed:`Load failed: {{status}}`,saveFailed:`Save failed: {{status}}`,deleteFailed:`Delete failed: {{status}}`,testFailed:`Test failed: {{status}}`},toasts:{agentCreated:`Agent created`,agentSaved:`Agent saved`,agentDeleted:`Agent deleted`,createFailed:`Failed to create agent`,saveFailed:`Failed to save agent`,deleteFailed:`Failed to delete agent`},validation:{namePattern:`Name must start with <code>custom-</code> and contain only lowercase letters, digits, and hyphens.`,missingFrontmatter:`Missing YAML frontmatter (needs opening <code>---</code> on the first line).`},sampleTasks:{pick:`— pick a sample task —`,terraform:`Terraform: public S3 bucket`,sqlInjection:`Code review: SQL injection`,accessibility:`Frontend: accessibility`,schemaChange:`Data: schema change`,slowQuery:`Performance: slow query`},testPane:{header:`Test agent`,sampleTaskLabel:`Sample task`,placeholder:`Describe what the agent should do, or pick a sample above.`,run:`Run`,running:`Running…`,sandboxNote:`Sandboxed; no files written.`,tokens_one:`<mono>{{count}}</mono> token`,tokens_other:`<mono>{{count}}</mono> tokens`,tokensUnavailable:`Token usage unavailable`,emptyHint:`Run a sample task against the current draft. Output appears here.`},versions:{header:`Version history`,empty:`No prior versions recorded for this agent.`,restoreHint:`Click a version to restore its body into the editor (you still need to Save).`}},r={eyebrow:`AI Edit`,headline:`Refine your agent`,streamingHeadline:`Refining your agent…`,placeholderInitial:`Describe how to refine this agent…`,placeholderFollowUp:`Send a follow-up refinement…`,viewCurrentBody:`View current agent body`,appliedAsVersion:`Applied as version {{version}}.`,openInStudio:`Open draft in Studio for manual editing`,chips:{tightenTools:`Tighten the tool list`,stricterPersonality:`Make the personality stricter`,workflowSection:`Add a Workflow protocol section`,sharpenDescription:`Shorten and sharpen the description`,matchDeveloperStyle:`Match the sr-developer style`}},i={validation:{missingBaseline:`Missing required baseline agent: {{agent}}`,multipleDefaultRules:`Routing may have at most one default rule (found {{found}})`,defaultRuleNotLast:`The default routing rule must be the last entry`,unknownRoutingAgent:`Routing references agent not in the chain: {{agent}}`,invalidTags:`Routing rule {{agent}} has invalid tags: {{tags}} (use lowercase kebab-case)`},validationSummary_one:`{{count}} validation issue`,validationSummary_other:`{{count}} validation issues`,nameLabel:`Name`,descriptionLabel:`Description`,descriptionPlaceholder:`What is this profile for?`,orchestrator:{heading:`Orchestrator`,description:`Top-level model for both commands. batch-implement delegates to implement per feature, so every rail it spawns inherits this profile's agent chain.`},agentChain:{heading:`Agent chain ({{n}})`,addTitle:`Add an agent from the catalog`,addDisabledTitle:`All catalog agents are already in the chain`,pickFromCatalog:`Pick from catalog ({{n}} available)`,emptyCatalog:`No more agents in the catalog. Add custom agents from the Agents Catalog tab.`,kind:{upstream:`upstream`,custom:`custom`}},routing:{heading:`Routing ({{n}})`,addDefault:`Add default`,addRule:`Add rule`,needAgentsTitle:`Add at least one agent before creating routing rules`,explainer:`First matching rule wins. Rules are editable and removable, and the default catch-all stays last when present. If you leave routing empty, the pipeline falls back to the first developer-shaped agent in the chain.`,untargetedTitle:`Untargeted agents in the chain`,untargetedDetail:`No routing rule points to: <mono>{{agents}}</mono>. Add a tag rule or retarget the default rule if you want them to run.`},agentRow:{dragTitle:`Drag to reorder`,dragHandleAria:`Drag handle`,pinnedFirst:`first`,pinnedFirstTitle:`Pinned to first position — pipeline always starts with sr-architect`,pinnedLast:`last`,pinnedLastTitle:`Pinned to last position — merge phase always runs last`,required:`required`,requiredRemoveTitle:`Required baseline agent — the pipeline depends on this row`},routingRow:{everythingElse:`everything else`,defaultTargetAria:`Default routing target (core, read-only)`,defaultTargetTitle:`Core fallback — not editable`,targetAria:`Routing target for rule {{ordinal}}`,editTitle:`Edit rule`,editAria:`Edit rule {{ordinal}}`,moveDown:`Move down`,moveUp:`Move up`,coreDefaultBadge:`core · default`,coreDefaultTitle:`Core fallback — the pipeline's last-resort rule, pinned to sr-developer`}},a={coreBadge:`core`,agents:{"sr-architect":{name:`Architect`,description:`Architecture design, change specs, implementation planning`},"sr-developer":{name:`Developer`,description:`Full-stack implementation across all layers`},"sr-reviewer":{name:`Reviewer`,description:`General code review — the final quality gate`}},coreTeamTitle:`Your agent team`,coreTeamNote:`These three core agents are always installed — nothing to choose. Add specialists later with profiles and custom-* agents.`},o={"security-reviewer":{label:`Security Reviewer`,blurb:`Finds auth, injection, and data-exposure bugs in a diff before it ships.`},"performance-profiler":{label:`Performance Profiler`,blurb:`Finds hot paths, N+1 queries, unbounded loops, bundle bloat.`},"data-engineer":{label:`Data Engineer`,blurb:`Schema migrations, ETL pipelines, data transformations.`},"ui-ux-polisher":{label:`UI / UX Polisher`,blurb:`Accessibility, spacing, empty states, error handling.`},"api-designer":{label:`API Designer`,blurb:`Versioning, pagination, error shapes, backward compatibility.`},"database-architect":{label:`Database Architect`,blurb:`Indexes, normalization vs denormalization, query shapes.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, observability, incident-readiness, runbooks.`},"mobile-engineer":{label:`Mobile Engineer`,blurb:`iOS + Android patterns, offline-first, battery-aware.`},"ml-engineer":{label:`ML Engineer`,blurb:`Pipelines, eval, reproducibility, drift monitoring.`},"accessibility-auditor":{label:`Accessibility Auditor`,blurb:`WCAG 2.2 review: contrast, focus, ARIA, keyboard.`},"qa-test-strategist":{label:`QA Test Strategist`,blurb:`Test plans: unit / integration / E2E split, coverage gaps.`},"load-tester":{label:`Load / Stress Tester`,blurb:`Capacity planning, k6 / Locust scenarios, bottleneck hunting.`},"integration-tester":{label:`Integration Tester`,blurb:`Cross-service contracts, fixtures, flake reduction.`},"regression-hunter":{label:`Regression Hunter`,blurb:`Bisects, repros, writes the failing test first.`},"data-analyst":{label:`Data Analyst`,blurb:`Turns vague questions into queries + readable findings.`},"etl-reviewer":{label:`ETL Pipeline Reviewer`,blurb:`Idempotency, backfills, late-arriving data.`},"dashboard-designer":{label:`Dashboard Designer`,blurb:`One-glance dashboards, honest axes, action-per-chart.`},"iac-reviewer":{label:`IaC / Cloud Reviewer`,blurb:`Terraform / CloudFormation: IAM, public exposure, costs.`},"compliance-reviewer":{label:`Compliance Reviewer`,blurb:`GDPR / SOC2 / HIPAA-adjacent checks on data flows.`},"threat-modeler":{label:`Threat Modeler`,blurb:`STRIDE / LINDDUN over architecture diagrams.`},"product-manager":{label:`Product Manager`,blurb:`Problem framing, PRDs, prioritization.`},"ux-researcher":{label:`UX Researcher`,blurb:`Interview scripts, usability test plans, synthesis.`},"technical-writer":{label:`Technical Writer`,blurb:`Docs that are actually read — tutorials, references, changelogs.`},"design-reviewer":{label:`Design System Reviewer`,blurb:`Token drift, component misuse, consistency across flows.`},"financial-analyst":{label:`Financial Analyst`,blurb:`Unit economics, cohort models, scenario analysis.`},"pricing-strategist":{label:`Pricing Strategist`,blurb:`Tiering, packaging, willingness-to-pay studies.`},"market-researcher":{label:`Market Researcher`,blurb:`TAM/SAM/SOM, competitive maps, customer segments.`},"ops-optimizer":{label:`Operations Optimizer`,blurb:`Cycle-time, bottleneck-finding, automation candidates.`},"seo-auditor":{label:`SEO Auditor`,blurb:`Technical + content SEO: indexability, IA, intent match.`},"growth-hacker":{label:`Growth Experimenter`,blurb:`Funnel diagnosis, lift experiments, activation loops.`},"social-strategist":{label:`Social Media Strategist`,blurb:`Channel-fit content, editorial calendar, voice consistency.`},"literature-reviewer":{label:`Literature Reviewer`,blurb:`Systematic review summaries, citation graphs, conflicts.`},"experiment-designer":{label:`Experiment Designer`,blurb:`Hypotheses, controls, sample size, pre-registration.`},"statistical-analyst":{label:`Statistical Analyst`,blurb:`Chooses the right test, reports effect sizes, not just p-values.`},"scientific-writer":{label:`Scientific Writer`,blurb:`IMRaD structure, honest limits, readable abstracts.`},"curriculum-designer":{label:`Curriculum Designer`,blurb:`Learning outcomes → activities → assessment.`},"assessment-author":{label:`Assessment Author`,blurb:`Items that measure understanding, not recall.`},"tutor-explainer":{label:`Tutor / Explainer`,blurb:`Feynman-style simple explanations with worked examples.`},"clinical-guideline-reviewer":{label:`Clinical Guideline Reviewer`,blurb:`Map practice against latest evidence-based guidelines.`},"medical-summarizer":{label:`Medical Literature Summarizer`,blurb:`Abstracts to clinicians: what changed, evidence quality.`},"protocol-designer":{label:`Protocol Designer`,blurb:`Clinical protocols: endpoints, inclusion criteria, safety.`},"contract-reviewer":{label:`Contract Reviewer`,blurb:`Flags risky clauses; explains what they actually mean.`},"privacy-counsel":{label:`Privacy Counsel`,blurb:`GDPR / CCPA / LGPD applied to concrete flows.`},"copy-editor":{label:`Copy Editor`,blurb:`Line edits: voice, cadence, cut 30% without losing meaning.`},"brand-voice-guardian":{label:`Brand Voice Guardian`,blurb:`Enforces voice rules; catches off-brand phrasing.`},"creative-brainstormer":{label:`Creative Brainstormer`,blurb:`Divergent then convergent; kills sacred cows politely.`},"hiring-interviewer":{label:`Hiring Interviewer`,blurb:`Structured interviews, signal-focused, bias-aware.`},"strategic-planner":{label:`Strategic Planner`,blurb:`Goals → bets → metrics; prunes pet projects.`},"coach-1on1":{label:`1:1 Coach`,blurb:`Helps frame feedback, career growth, difficult conversations.`},"meeting-facilitator":{label:`Meeting Facilitator`,blurb:`Agendas that produce decisions, not updates.`}},s={studio:n,refine:r,profileEditor:i,agentSelector:a,templates:o};export{t};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`Caricamento agente…`,modeCreate:`Nuovo agente personalizzato`,modeEdit:`Modifica agente personalizzato`,create:`Crea`,unsaved:`● non salvato`,resumeAiEdit:`Riprendi AI Edit`,resumeAiEditTitle:`Riconsegna questa bozza all'overlay AI Edit`,loadingAiDraft:`caricamento bozza AI…`,testButton:`Test`,testButtonTitle:`Testa questo agente su un task di esempio`,historyButton:`Cronologia`,historyButtonTitle:`Cronologia versioni`,deleteConfirm:{title:`Eliminare l'agente "{{agentId}}"?`,description:`Rimuove il file .md dal disco. La cronologia versioni resta nel DB — usa un nuovo agente personalizzato se in seguito vuoi recuperare il corpo.`},errors:{loadDraftFailed:`Caricamento bozza non riuscito: {{status}}`,loadFailed:`Caricamento non riuscito: {{status}}`,saveFailed:`Salvataggio non riuscito: {{status}}`,deleteFailed:`Eliminazione non riuscita: {{status}}`,testFailed:`Test non riuscito: {{status}}`},toasts:{agentCreated:`Agente creato`,agentSaved:`Agente salvato`,agentDeleted:`Agente eliminato`,createFailed:`Creazione dell'agente non riuscita`,saveFailed:`Salvataggio dell'agente non riuscito`,deleteFailed:`Eliminazione dell'agente non riuscita`},validation:{namePattern:`Il nome deve iniziare con <code>custom-</code> e contenere solo lettere minuscole, cifre e trattini.`,missingFrontmatter:`Frontmatter YAML mancante (serve <code>---</code> di apertura sulla prima riga).`},sampleTasks:{pick:`— scegli un task di esempio —`,terraform:`Terraform: bucket S3 pubblico`,sqlInjection:`Code review: SQL injection`,accessibility:`Frontend: accessibilità`,schemaChange:`Dati: modifica dello schema`,slowQuery:`Performance: query lenta`},testPane:{header:`Testa l'agente`,sampleTaskLabel:`Task di esempio`,placeholder:`Descrivi cosa deve fare l'agente, oppure scegli un esempio qui sopra.`,run:`Esegui`,running:`In esecuzione…`,sandboxNote:`In sandbox; nessun file scritto.`,tokens_one:`<mono>{{count}}</mono> token`,tokens_other:`<mono>{{count}}</mono> token`,tokensUnavailable:`Utilizzo dei token non disponibile`,emptyHint:`Esegui un task di esempio sulla bozza corrente. L'output appare qui.`},versions:{header:`Cronologia versioni`,empty:`Nessuna versione precedente registrata per questo agente.`,restoreHint:`Clicca una versione per ripristinarne il corpo nell'editor (devi comunque salvare).`}},t={eyebrow:`AI Edit`,headline:`Rifinisci il tuo agente`,streamingHeadline:`Rifinitura dell'agente in corso…`,placeholderInitial:`Descrivi come rifinire questo agente…`,placeholderFollowUp:`Invia un'ulteriore rifinitura…`,viewCurrentBody:`Vedi il corpo attuale dell'agente`,appliedAsVersion:`Applicato come versione {{version}}.`,openInStudio:`Apri la bozza nello Studio per la modifica manuale`,chips:{tightenTools:`Restringi l'elenco dei tool`,stricterPersonality:`Rendi la personalità più rigorosa`,workflowSection:`Aggiungi una sezione di protocollo Workflow`,sharpenDescription:`Accorcia e affina la descrizione`,matchDeveloperStyle:`Allinea allo stile di sr-developer`}},n={validation:{missingBaseline:`Agente baseline obbligatorio mancante: {{agent}}`,multipleDefaultRules:`Il routing può avere al massimo una regola di default (trovate {{found}})`,defaultRuleNotLast:`La regola di routing di default deve essere l'ultima voce`,unknownRoutingAgent:`Il routing fa riferimento a un agente non presente nella catena: {{agent}}`,invalidTags:`La regola di routing {{agent}} ha tag non validi: {{tags}} (usa kebab-case minuscolo)`},validationSummary_one:`{{count}} problema di validazione`,validationSummary_other:`{{count}} problemi di validazione`,nameLabel:`Nome`,descriptionLabel:`Descrizione`,descriptionPlaceholder:`A cosa serve questo profilo?`,orchestrator:{heading:`Orchestratore`,description:`Modello di primo livello per entrambi i comandi. batch-implement delega a implement per ogni feature, quindi ogni rail che genera eredita la catena di agenti di questo profilo.`},agentChain:{heading:`Catena di agenti ({{n}})`,addTitle:`Aggiungi un agente dal catalogo`,addDisabledTitle:`Tutti gli agenti del catalogo sono già nella catena`,pickFromCatalog:`Scegli dal catalogo ({{n}} disponibili)`,emptyCatalog:`Nessun altro agente nel catalogo. Aggiungi agenti personalizzati dalla scheda Catalogo agenti.`,kind:{upstream:`upstream`,custom:`personalizzato`}},routing:{heading:`Routing ({{n}})`,addDefault:`Aggiungi default`,addRule:`Aggiungi regola`,needAgentsTitle:`Aggiungi almeno un agente prima di creare regole di routing`,explainer:`Vince la prima regola corrispondente. Le regole sono modificabili e rimovibili, e il catch-all di default resta ultimo quando presente. Se lasci il routing vuoto, la pipeline ricade sul primo agente di tipo developer nella catena.`,untargetedTitle:`Agenti senza target nella catena`,untargetedDetail:`Nessuna regola di routing punta a: <mono>{{agents}}</mono>. Aggiungi una regola con tag o cambia il target della regola di default se vuoi che vengano eseguiti.`},agentRow:{dragTitle:`Trascina per riordinare`,dragHandleAria:`Maniglia di trascinamento`,pinnedFirst:`primo`,pinnedFirstTitle:`Bloccato in prima posizione — la pipeline inizia sempre con sr-architect`,pinnedLast:`ultimo`,pinnedLastTitle:`Bloccato in ultima posizione — la fase di merge viene sempre eseguita per ultima`,required:`obbligatorio`,requiredRemoveTitle:`Agente baseline obbligatorio — la pipeline dipende da questa riga`},routingRow:{everythingElse:`tutto il resto`,defaultTargetAria:`Target di routing di default (core, sola lettura)`,defaultTargetTitle:`Fallback core — non modificabile`,targetAria:`Target di routing per la regola {{ordinal}}`,editTitle:`Modifica regola`,editAria:`Modifica regola {{ordinal}}`,moveDown:`Sposta giù`,moveUp:`Sposta su`,coreDefaultBadge:`core · default`,coreDefaultTitle:`Fallback core — la regola di ultima istanza della pipeline, fissata su sr-developer`}},r={coreBadge:`core`,agents:{"sr-architect":{name:`Architetto`,description:`Progettazione dell'architettura, spec di modifica, pianificazione dell'implementazione`},"sr-developer":{name:`Developer`,description:`Implementazione full-stack su tutti i layer`},"sr-reviewer":{name:`Reviewer`,description:`Code review generale — l'ultimo quality gate`}},coreTeamTitle:`Il tuo team di agenti`,coreTeamNote:`Questi tre agenti core vengono sempre installati — niente da scegliere. Aggiungi specialisti in seguito con profili e agenti custom-*.`},i={"security-reviewer":{label:`Security Reviewer`,blurb:`Trova bug di auth, injection ed esposizione di dati in un diff prima della release.`},"performance-profiler":{label:`Performance Profiler`,blurb:`Trova hot path, query N+1, loop senza limiti, bundle gonfiati.`},"data-engineer":{label:`Data Engineer`,blurb:`Migrazioni di schema, pipeline ETL, trasformazioni di dati.`},"ui-ux-polisher":{label:`Rifinitore UI / UX`,blurb:`Accessibilità, spaziature, stati vuoti, gestione degli errori.`},"api-designer":{label:`API Designer`,blurb:`Versioning, paginazione, formati di errore, retrocompatibilità.`},"database-architect":{label:`Architetto Database`,blurb:`Indici, normalizzazione vs denormalizzazione, forma delle query.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, observability, preparazione agli incident, runbook.`},"mobile-engineer":{label:`Mobile Engineer`,blurb:`Pattern iOS + Android, offline-first, attenzione alla batteria.`},"ml-engineer":{label:`ML Engineer`,blurb:`Pipeline, eval, riproducibilità, monitoraggio del drift.`},"accessibility-auditor":{label:`Auditor Accessibilità`,blurb:`Review WCAG 2.2: contrasto, focus, ARIA, tastiera.`},"qa-test-strategist":{label:`Stratega Test QA`,blurb:`Piani di test: suddivisione unit / integration / E2E, lacune di copertura.`},"load-tester":{label:`Load / Stress Tester`,blurb:`Capacity planning, scenari k6 / Locust, caccia ai colli di bottiglia.`},"integration-tester":{label:`Tester di Integrazione`,blurb:`Contratti tra servizi, fixture, riduzione dei test flaky.`},"regression-hunter":{label:`Cacciatore di Regressioni`,blurb:`Biseca, riproduce, scrive prima il test che fallisce.`},"data-analyst":{label:`Data Analyst`,blurb:`Trasforma domande vaghe in query + risultati leggibili.`},"etl-reviewer":{label:`Reviewer Pipeline ETL`,blurb:`Idempotenza, backfill, dati che arrivano in ritardo.`},"dashboard-designer":{label:`Dashboard Designer`,blurb:`Dashboard a colpo d'occhio, assi onesti, un'azione per grafico.`},"iac-reviewer":{label:`Reviewer IaC / Cloud`,blurb:`Terraform / CloudFormation: IAM, esposizione pubblica, costi.`},"compliance-reviewer":{label:`Compliance Reviewer`,blurb:`Controlli in ambito GDPR / SOC2 / HIPAA sui flussi di dati.`},"threat-modeler":{label:`Threat Modeler`,blurb:`STRIDE / LINDDUN sui diagrammi di architettura.`},"product-manager":{label:`Product Manager`,blurb:`Inquadramento del problema, PRD, prioritizzazione.`},"ux-researcher":{label:`UX Researcher`,blurb:`Script per interviste, piani di test di usabilità, sintesi.`},"technical-writer":{label:`Technical Writer`,blurb:`Doc che vengono letti davvero — tutorial, riferimenti, changelog.`},"design-reviewer":{label:`Reviewer Design System`,blurb:`Drift dei token, uso improprio dei componenti, coerenza tra i flussi.`},"financial-analyst":{label:`Analista Finanziario`,blurb:`Unit economics, modelli di coorte, analisi di scenario.`},"pricing-strategist":{label:`Stratega di Pricing`,blurb:`Tier, packaging, studi sulla disponibilità a pagare.`},"market-researcher":{label:`Ricercatore di Mercato`,blurb:`TAM/SAM/SOM, mappe competitive, segmenti di clientela.`},"ops-optimizer":{label:`Ottimizzatore di Operations`,blurb:`Tempi di ciclo, individuazione dei colli di bottiglia, candidati all'automazione.`},"seo-auditor":{label:`SEO Auditor`,blurb:`SEO tecnica + di contenuto: indicizzabilità, IA, match con l'intento.`},"growth-hacker":{label:`Sperimentatore di Growth`,blurb:`Diagnosi del funnel, esperimenti di lift, loop di attivazione.`},"social-strategist":{label:`Stratega Social Media`,blurb:`Contenuti adatti al canale, calendario editoriale, coerenza di voce.`},"literature-reviewer":{label:`Revisore di Letteratura`,blurb:`Sintesi di revisioni sistematiche, grafi di citazioni, conflitti.`},"experiment-designer":{label:`Progettista di Esperimenti`,blurb:`Ipotesi, controlli, dimensione del campione, pre-registrazione.`},"statistical-analyst":{label:`Analista Statistico`,blurb:`Sceglie il test giusto, riporta gli effect size, non solo i p-value.`},"scientific-writer":{label:`Redattore Scientifico`,blurb:`Struttura IMRaD, limiti onesti, abstract leggibili.`},"curriculum-designer":{label:`Progettista di Curriculum`,blurb:`Obiettivi di apprendimento → attività → valutazione.`},"assessment-author":{label:`Autore di Valutazioni`,blurb:`Item che misurano la comprensione, non la memoria.`},"tutor-explainer":{label:`Tutor / Divulgatore`,blurb:`Spiegazioni semplici in stile Feynman con esempi svolti.`},"clinical-guideline-reviewer":{label:`Revisore di Linee Guida Cliniche`,blurb:`Confronta la pratica con le ultime linee guida evidence-based.`},"medical-summarizer":{label:`Sintetizzatore di Letteratura Medica`,blurb:`Abstract per i clinici: cosa è cambiato, qualità dell'evidenza.`},"protocol-designer":{label:`Progettista di Protocolli`,blurb:`Protocolli clinici: endpoint, criteri di inclusione, sicurezza.`},"contract-reviewer":{label:`Revisore di Contratti`,blurb:`Segnala le clausole rischiose; spiega cosa significano davvero.`},"privacy-counsel":{label:`Consulente Privacy`,blurb:`GDPR / CCPA / LGPD applicati a flussi concreti.`},"copy-editor":{label:`Copy Editor`,blurb:`Editing riga per riga: voce, ritmo, taglia il 30% senza perdere significato.`},"brand-voice-guardian":{label:`Guardiano della Brand Voice`,blurb:`Fa rispettare le regole di voce; intercetta le frasi off-brand.`},"creative-brainstormer":{label:`Brainstormer Creativo`,blurb:`Prima divergente, poi convergente; abbatte i tabù con garbo.`},"hiring-interviewer":{label:`Intervistatore di Selezione`,blurb:`Colloqui strutturati, focalizzati sul segnale, attenti ai bias.`},"strategic-planner":{label:`Pianificatore Strategico`,blurb:`Obiettivi → scommesse → metriche; sfoltisce i pet project.`},"coach-1on1":{label:`Coach 1:1`,blurb:`Aiuta a impostare feedback, crescita professionale, conversazioni difficili.`},"meeting-facilitator":{label:`Facilitatore di Riunioni`,blurb:`Agende che producono decisioni, non aggiornamenti.`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -0,0 +1 @@
1
+ var e={loadingAgent:`A carregar agente…`,modeCreate:`Novo agente personalizado`,modeEdit:`Editar agente personalizado`,create:`Criar`,unsaved:`● não guardado`,resumeAiEdit:`Retomar AI Edit`,resumeAiEditTitle:`Devolver este rascunho ao overlay de AI Edit`,loadingAiDraft:`a carregar rascunho de IA…`,testButton:`Testar`,testButtonTitle:`Testar este agente com uma tarefa de exemplo`,historyButton:`Histórico`,historyButtonTitle:`Histórico de versões`,deleteConfirm:{title:`Eliminar o agente "{{agentId}}"?`,description:`Isto remove o .md do disco. O histórico de versões mantém-se na BD — use um novo agente personalizado se quiser recuperar o corpo mais tarde.`},errors:{loadDraftFailed:`Falha ao carregar o rascunho: {{status}}`,loadFailed:`Falha ao carregar: {{status}}`,saveFailed:`Falha ao guardar: {{status}}`,deleteFailed:`Falha ao eliminar: {{status}}`,testFailed:`Falha no teste: {{status}}`},toasts:{agentCreated:`Agente criado`,agentSaved:`Agente guardado`,agentDeleted:`Agente eliminado`,createFailed:`Falha ao criar o agente`,saveFailed:`Falha ao guardar o agente`,deleteFailed:`Falha ao eliminar o agente`},validation:{namePattern:`O nome deve começar por <code>custom-</code> e conter apenas letras minúsculas, dígitos e hífenes.`,missingFrontmatter:`Falta o frontmatter YAML (requer <code>---</code> de abertura na primeira linha).`},sampleTasks:{pick:`— escolha uma tarefa de exemplo —`,terraform:`Terraform: bucket S3 público`,sqlInjection:`Revisão de código: injeção de SQL`,accessibility:`Frontend: acessibilidade`,schemaChange:`Dados: alteração de schema`,slowQuery:`Desempenho: query lenta`},testPane:{header:`Testar agente`,sampleTaskLabel:`Tarefa de exemplo`,placeholder:`Descreva o que o agente deve fazer, ou escolha um exemplo acima.`,run:`Executar`,running:`A executar…`,sandboxNote:`Em sandbox; nenhum ficheiro é escrito.`,tokens_one:`<mono>{{count}}</mono> token`,tokens_other:`<mono>{{count}}</mono> tokens`,tokensUnavailable:`Utilização de tokens indisponível`,emptyHint:`Execute uma tarefa de exemplo contra o rascunho atual. O resultado aparece aqui.`},versions:{header:`Histórico de versões`,empty:`Não há versões anteriores registadas para este agente.`,restoreHint:`Clique numa versão para restaurar o respetivo corpo no editor (ainda é preciso Guardar).`}},t={eyebrow:`AI Edit`,headline:`Refine o seu agente`,streamingHeadline:`A refinar o seu agente…`,placeholderInitial:`Descreva como refinar este agente…`,placeholderFollowUp:`Envie um refinamento de seguimento…`,viewCurrentBody:`Ver o corpo atual do agente`,appliedAsVersion:`Aplicado como versão {{version}}.`,openInStudio:`Abrir rascunho no Studio para edição manual`,chips:{tightenTools:`Restringir a lista de ferramentas`,stricterPersonality:`Tornar a personalidade mais rigorosa`,workflowSection:`Adicionar uma secção de protocolo de Workflow`,sharpenDescription:`Encurtar e afinar a descrição`,matchDeveloperStyle:`Alinhar com o estilo do sr-developer`}},n={validation:{missingBaseline:`Falta o agente base obrigatório: {{agent}}`,multipleDefaultRules:`O routing pode ter no máximo uma regra default (encontradas {{found}})`,defaultRuleNotLast:`A regra de routing default tem de ser a última entrada`,unknownRoutingAgent:`O routing referencia um agente que não está na cadeia: {{agent}}`,invalidTags:`A regra de routing {{agent}} tem tags inválidas: {{tags}} (use kebab-case em minúsculas)`},validationSummary_one:`{{count}} problema de validação`,validationSummary_other:`{{count}} problemas de validação`,nameLabel:`Nome`,descriptionLabel:`Descrição`,descriptionPlaceholder:`Para que serve este perfil?`,orchestrator:{heading:`Orquestrador`,description:`Modelo de topo para ambos os comandos. O batch-implement delega no implement por feature, pelo que cada rail que lança herda a cadeia de agentes deste perfil.`},agentChain:{heading:`Cadeia de agentes ({{n}})`,addTitle:`Adicionar um agente do catálogo`,addDisabledTitle:`Todos os agentes do catálogo já estão na cadeia`,pickFromCatalog:`Escolher do catálogo ({{n}} disponíveis)`,emptyCatalog:`Não há mais agentes no catálogo. Adicione agentes personalizados no separador Catálogo de Agentes.`,kind:{upstream:`upstream`,custom:`personalizado`}},routing:{heading:`Routing ({{n}})`,addDefault:`Adicionar default`,addRule:`Adicionar regra`,needAgentsTitle:`Adicione pelo menos um agente antes de criar regras de routing`,explainer:`Vence a primeira regra correspondente. As regras são editáveis e removíveis, e o catch-all default fica em último quando presente. Se deixar o routing vazio, o pipeline recorre ao primeiro agente de tipo developer na cadeia.`,untargetedTitle:`Agentes sem destino na cadeia`,untargetedDetail:`Nenhuma regra de routing aponta para: <mono>{{agents}}</mono>. Adicione uma regra de tag ou redirecione a regra default se quiser que sejam executados.`},agentRow:{dragTitle:`Arraste para reordenar`,dragHandleAria:`Pega de arrasto`,pinnedFirst:`primeiro`,pinnedFirstTitle:`Fixado na primeira posição — o pipeline começa sempre com o sr-architect`,pinnedLast:`último`,pinnedLastTitle:`Fixado na última posição — a fase de merge é sempre a última a executar`,required:`obrigatório`,requiredRemoveTitle:`Agente base obrigatório — o pipeline depende desta linha`},routingRow:{everythingElse:`tudo o resto`,defaultTargetAria:`Destino de routing default (core, só de leitura)`,defaultTargetTitle:`Fallback core — não editável`,targetAria:`Destino de routing da regra {{ordinal}}`,editTitle:`Editar regra`,editAria:`Editar regra {{ordinal}}`,moveDown:`Mover para baixo`,moveUp:`Mover para cima`,coreDefaultBadge:`core · default`,coreDefaultTitle:`Fallback core — a regra de último recurso do pipeline, fixada no sr-developer`}},r={coreBadge:`core`,agents:{"sr-architect":{name:`Arquiteto`,description:`Design de arquitetura, specs de alterações, planeamento da implementação`},"sr-developer":{name:`Developer`,description:`Implementação full-stack em todas as camadas`},"sr-reviewer":{name:`Revisor`,description:`Revisão de código geral — o gate de qualidade final`}},coreTeamTitle:`Sua equipe de agentes`,coreTeamNote:`Esses três agentes principais são sempre instalados — nada a escolher. Adicione especialistas depois com perfis e agentes custom-*.`},i={"security-reviewer":{label:`Revisor de Segurança`,blurb:`Encontra bugs de autenticação, injeção e exposição de dados num diff antes do envio.`},"performance-profiler":{label:`Profiler de Desempenho`,blurb:`Encontra hot paths, queries N+1, loops sem limite, bundles inchados.`},"data-engineer":{label:`Engenheiro de Dados`,blurb:`Migrações de schema, pipelines ETL, transformações de dados.`},"ui-ux-polisher":{label:`Polidor de UI / UX`,blurb:`Acessibilidade, espaçamento, estados vazios, tratamento de erros.`},"api-designer":{label:`Designer de API`,blurb:`Versionamento, paginação, formatos de erro, retrocompatibilidade.`},"database-architect":{label:`Arquiteto de Base de Dados`,blurb:`Índices, normalização vs desnormalização, formatos de queries.`},"devops-sre":{label:`DevOps / SRE`,blurb:`CI/CD, observabilidade, preparação para incidentes, runbooks.`},"mobile-engineer":{label:`Engenheiro Mobile`,blurb:`Padrões iOS + Android, offline-first, atenção à bateria.`},"ml-engineer":{label:`Engenheiro de ML`,blurb:`Pipelines, avaliação, reprodutibilidade, monitorização de drift.`},"accessibility-auditor":{label:`Auditor de Acessibilidade`,blurb:`Revisão WCAG 2.2: contraste, foco, ARIA, teclado.`},"qa-test-strategist":{label:`Estratega de Testes QA`,blurb:`Planos de teste: divisão unitários / integração / E2E, lacunas de cobertura.`},"load-tester":{label:`Tester de Carga / Stress`,blurb:`Planeamento de capacidade, cenários k6 / Locust, caça aos gargalos.`},"integration-tester":{label:`Tester de Integração`,blurb:`Contratos entre serviços, fixtures, redução de testes instáveis.`},"regression-hunter":{label:`Caçador de Regressões`,blurb:`Faz bisect, reproduz e escreve primeiro o teste que falha.`},"data-analyst":{label:`Analista de Dados`,blurb:`Transforma perguntas vagas em queries + conclusões legíveis.`},"etl-reviewer":{label:`Revisor de Pipelines ETL`,blurb:`Idempotência, backfills, dados que chegam tarde.`},"dashboard-designer":{label:`Designer de Dashboards`,blurb:`Dashboards de leitura imediata, eixos honestos, uma ação por gráfico.`},"iac-reviewer":{label:`Revisor de IaC / Cloud`,blurb:`Terraform / CloudFormation: IAM, exposição pública, custos.`},"compliance-reviewer":{label:`Revisor de Conformidade`,blurb:`Verificações no âmbito do RGPD / SOC2 / HIPAA sobre fluxos de dados.`},"threat-modeler":{label:`Modelador de Ameaças`,blurb:`STRIDE / LINDDUN sobre diagramas de arquitetura.`},"product-manager":{label:`Product Manager`,blurb:`Enquadramento do problema, PRDs, priorização.`},"ux-researcher":{label:`Investigador de UX`,blurb:`Guiões de entrevista, planos de testes de usabilidade, síntese.`},"technical-writer":{label:`Redator Técnico`,blurb:`Documentação que realmente se lê — tutoriais, referências, changelogs.`},"design-reviewer":{label:`Revisor de Design System`,blurb:`Desvio de tokens, mau uso de componentes, consistência entre fluxos.`},"financial-analyst":{label:`Analista Financeiro`,blurb:`Unit economics, modelos de coortes, análise de cenários.`},"pricing-strategist":{label:`Estratega de Preços`,blurb:`Níveis, empacotamento, estudos de disposição a pagar.`},"market-researcher":{label:`Investigador de Mercado`,blurb:`TAM/SAM/SOM, mapas competitivos, segmentos de clientes.`},"ops-optimizer":{label:`Otimizador de Operações`,blurb:`Tempo de ciclo, deteção de gargalos, candidatos a automação.`},"seo-auditor":{label:`Auditor de SEO`,blurb:`SEO técnico + de conteúdo: indexabilidade, IA, correspondência de intenção.`},"growth-hacker":{label:`Experimentador de Growth`,blurb:`Diagnóstico de funil, experiências de lift, loops de ativação.`},"social-strategist":{label:`Estratega de Redes Sociais`,blurb:`Conteúdo adequado ao canal, calendário editorial, consistência de voz.`},"literature-reviewer":{label:`Revisor de Literatura`,blurb:`Resumos de revisões sistemáticas, grafos de citações, conflitos.`},"experiment-designer":{label:`Designer de Experiências`,blurb:`Hipóteses, controlos, tamanho da amostra, pré-registo.`},"statistical-analyst":{label:`Analista Estatístico`,blurb:`Escolhe o teste certo, reporta tamanhos de efeito, não apenas p-values.`},"scientific-writer":{label:`Redator Científico`,blurb:`Estrutura IMRaD, limites honestos, abstracts legíveis.`},"curriculum-designer":{label:`Designer de Currículos`,blurb:`Objetivos de aprendizagem → atividades → avaliação.`},"assessment-author":{label:`Autor de Avaliações`,blurb:`Itens que medem compreensão, não memorização.`},"tutor-explainer":{label:`Tutor / Explicador`,blurb:`Explicações simples à Feynman com exemplos resolvidos.`},"clinical-guideline-reviewer":{label:`Revisor de Diretrizes Clínicas`,blurb:`Compara a prática com as mais recentes diretrizes baseadas na evidência.`},"medical-summarizer":{label:`Sintetizador de Literatura Médica`,blurb:`Abstracts para clínicos: o que mudou, qualidade da evidência.`},"protocol-designer":{label:`Designer de Protocolos`,blurb:`Protocolos clínicos: endpoints, critérios de inclusão, segurança.`},"contract-reviewer":{label:`Revisor de Contratos`,blurb:`Sinaliza cláusulas de risco; explica o que realmente significam.`},"privacy-counsel":{label:`Consultor de Privacidade`,blurb:`RGPD / CCPA / LGPD aplicados a fluxos concretos.`},"copy-editor":{label:`Editor de Texto`,blurb:`Edições linha a linha: voz, cadência, cortar 30% sem perder o sentido.`},"brand-voice-guardian":{label:`Guardião da Voz da Marca`,blurb:`Aplica as regras de voz; deteta formulações fora da marca.`},"creative-brainstormer":{label:`Brainstormer Criativo`,blurb:`Divergente e depois convergente; mata vacas sagradas com delicadeza.`},"hiring-interviewer":{label:`Entrevistador de Recrutamento`,blurb:`Entrevistas estruturadas, focadas no sinal, conscientes de vieses.`},"strategic-planner":{label:`Planeador Estratégico`,blurb:`Objetivos → apostas → métricas; poda projetos de estimação.`},"coach-1on1":{label:`Coach de 1:1`,blurb:`Ajuda a enquadrar feedback, progressão de carreira, conversas difíceis.`},"meeting-facilitator":{label:`Facilitador de Reuniões`,blurb:`Agendas que produzem decisões, não atualizações.`}},a={studio:e,refine:t,profileEditor:n,agentSelector:r,templates:i};export{r as agentSelector,a as default,n as profileEditor,t as refine,e as studio,i as templates};
@@ -1 +1 @@
1
- var e={job:`Job`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Raffinamento`,smash:`SMASH`,fileSummary:`Riepiloghi file`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Avvio spec`,proposal:`Proposta`,agentStudio:`Agent Studio`,setup:`Configurazione`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Tutto`,custom:`Personalizzato`,startDate:`Data di inizio`,endDate:`Data di fine`,to:`a`},n=`{{count}} esecuzione`,r=`{{count}} esecuzioni`,i={title:`Analytics`,all:`Tutti`,engine:`Engine`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Caricamento non riuscito: {{error}}`,modelChip:`Modello: {{model}}`,clearModelFilter:`Rimuovi filtro modello`},a={spending:`Spesa`,vsPrev:`{{pct}}% vs prec.`,invocations_one:`{{count}} invocazione`,invocations_other:`{{count}} invocazioni`,tokens:`· {{tokens}} token`,tokensTooltip:`Token totali = input nuovo + output + lettura cache + creazione cache su tutte le invocazioni in questa finestra.`,usageUnavailable:`· utilizzo dei token non disponibile`,usageUnavailableTooltip:`Il provider ha completato queste invocazioni senza esporre la telemetria dei token.`,usagePartiallyUnavailable:`· {{tokens}} token noti; senza dati: {{count}}`,usagePartiallyUnavailableTooltip:`Solo subtotale noto; alcune invocazioni non espongono la telemetria dei token.`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Il provider ha completato queste invocazioni senza esporre telemetria sufficiente per determinarne il costo.`,costPartiallyUnavailable:`· subtotale noto; senza costo: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune invocazioni non espongono telemetria sufficiente per determinarne il costo.`,includesEstimated:`· include ~{{amount}} stimati`,includesEstimatedTooltip:`Include {{amount}} di costo stimato da provider senza un campo di costo nativo (es. codex tramite la tabella prezzi locale).`,trackingStarted:`Tracciamento iniziato il {{date}}`,trackingStartedFallback:`Il tracciamento inizia alla prima invocazione`,emptyState:`Ancora nessuna invocazione per questa finestra di filtri.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Per provider`,description:`Come si ripartisce il costo tra le CLI AI di questo progetto. Il prefisso <tilde>~</tilde> indica le righe in cui il costo è stimato dalla tabella prezzi locale (il provider non lo riporta nativamente).`,noCost:`Ancora nessun costo registrato in questa finestra.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Questo provider è stato eseguito ma il suo modello non è nella tabella prezzi, quindi non è stato possibile calcolare alcun costo.`,costPartiallyUnavailable:`· non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; il costo di alcune esecuzioni non è disponibile.`},s={title:`Timeline giornaliera`,subtitle:`impilata per origine`,empty:`Nessuna spesa in questo periodo.`,costUnavailable:`Sono state registrate invocazioni, ma la telemetria dei costi non è disponibile.`,costPartiallyUnavailable:`costi noti · non disponibili: {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Prova Explore per spec più ricche`,runsSoFar_one:`{{count}} esecuzione finora`,runsSoFar_other:`{{count}} esecuzioni finora`,perSpec:`per spec`,createdRuns:`<strong>{{created}}</strong> create · {{runs}} esecuzioni`,avgDuration:`{{duration}} in media`,ratio:`{{ratio}}× in più per spec`,estimatedTooltip:`Costo stimato (stima da tabella prezzi per codex/gemini, non fatturato dal provider)`,estimatedFootnote:`~ Include costi stimati (codex/gemini)`,costUnavailable:`costo per spec non disponibile`,costUnavailableTooltip:`Non è possibile calcolare la media per spec perché una o più esecuzioni non espongono il costo.`},l={title:`Modelli`,empty:`Nessun modello registrato.`,estimatedTooltip:`Stimato dalla tabella prezzi locale — questo provider non riporta il costo in modo nativo.`,others:`Altri`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`La telemetria dei costi non è disponibile per tutte le esecuzioni di questo modello.`,costPartiallyUnavailable:`· non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune esecuzioni di questo modello non hanno telemetria dei costi.`},u={title:`Costo vs Turni`,empty:`Nessuna invocazione da rappresentare.`,turnsLabel:`turni`,costLabel:`costo`,truncated:`Visualizzati {{shown}} di {{total}} — il punto più costoso viene mantenuto, ma i punti precedenti sono nascosti`,costUnavailable:`Sono state registrate invocazioni, ma non sono disponibili dati di costo da rappresentare.`,costPartiallyUnavailable:`Il grafico include solo le esecuzioni con costo; costo non disponibile: {{count}}.`},d={title:`Top ticket`,empty:`Nessuna attività sui ticket in questo periodo.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Non attribuito`,deletedTicket:`ticket eliminato #{{id}}`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Nessuna esecuzione di questo ticket ha esposto telemetria dei costi.`,costPartiallyUnavailable:`non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune esecuzioni di questo ticket non hanno un costo disponibile.`},f={title:`Tutte le invocazioni`,statusFilterAria:`Filtro stato`,minCostFilterAria:`Filtro costo minimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Tutti gli stati`,success:`Riuscita`,failed:`Fallita`,aborted:`Interrotta`,empty:`Nessuna invocazione corrisponde ai filtri attuali.`,colSurface:`Origine`,colTicket:`Ticket`,colCost:`Costo`,colTurns:`Turni`,colTokens:`Token`,colModel:`Modello`,colStatus:`Stato`,colStarted:`Avvio`,contractLayer:`Contract Layer`,contractLayerRefinement:`Raffinamento Contract Layer`,deleted:`(eliminato)`,provisionalTitleTooltip:`Titolo Explore provvisorio — non ancora confermato`,estimatedCostTooltip:`Stimato dalla tabella prezzi locale — questo provider non riporta il costo nativamente.`,inferred:`dedotto`,statusValue:{success:`riuscita`,failed:`fallita`,aborted:`interrotta`},truncated:`Mostrate le prime {{shown}} di {{total}} righe corrispondenti.`,colProvider:`Provider`,sortLabel:`Ordina`,sortRecency:`Recenti`,sortCost:`Costo`},p={title:`Analytics di Desktop`,refreshAria:`Aggiorna le analytics`,failedToLoad:`Impossibile caricare le analytics: {{error}}`,totalCost:`Costo totale`,costToday:`{{value}} oggi`,costTodayUnavailable:`costo non disponibile oggi`,totalJobs:`Job totali`,jobsToday:`{{n}} oggi`,successRate:`Tasso di successo`,acrossAllProjects:`su tutti i progetti`,avgCostPerJob:`Costo medio / job`,periodAverage:`media del periodo`,averageUnavailable:`media non disponibile con telemetria dei costi incompleta`,costOverTime:`Costo nel tempo tra i progetti`,noCostData:`Nessun dato di costo per questo periodo`,projectComparison:`Confronto progetti`,noProjects:`Nessun progetto registrato.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} job`,successPct:`{{pct}}% di successo`,costByProject:`Costo per progetto`,includesEstimated:`~{{amount}} stimato`,includesEstimatedTooltip:`Include {{amount}} di costo stimato da tabella prezzi (codex/gemini), non fatturato dal provider.`,includesEstimatedShort:`incl. stimato`,timelineEstimatedTooltip:`Alcuni giorni includono un costo stimato da tabella prezzi (codex/gemini) contrassegnato con ~.`,estimatedBadge:`stim.`,projectEstimatedTooltip:`{{amount}} del costo di questo progetto è una stima da tabella prezzi (codex/gemini), non fatturato dal provider.`,statusBarEstimatedTooltip:`Include un costo stimato da tabella prezzi (codex/gemini), non fatturato dal provider.`,costUnavailable:`Sono state registrate invocazioni, ma la telemetria dei costi non è disponibile.`,costUnavailableShort:`non disponibile`,costPartiallyUnavailable:`Subtotale dei costi noti; invocazioni senza costo: {{count}}.`},m={"7d":`Ultimi 7 giorni`,"30d":`Ultimi 30 giorni`,"90d":`Ultimi 90 giorni`,all:`Sempre`,custom:`Intervallo personalizzato`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV riepilogo`,rawCsv:`CSV raw`,summaryJson:`JSON riepilogo`,rawJson:`JSON raw`,downloading:`Download in corso…`,noData:`Nessun dato per i filtri attuali`,failed:`Esportazione non riuscita`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`Job`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Raffinamento`,smash:`SMASH`,fileSummary:`Riepiloghi file`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Avvio spec`,proposal:`Proposta`,agentStudio:`Agent Studio`,setup:`Configurazione`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Tutto`,custom:`Personalizzato`,startDate:`Data di inizio`,endDate:`Data di fine`,to:`a`},n=`{{count}} esecuzione`,r=`{{count}} esecuzioni`,i={title:`Analytics`,all:`Tutti`,engine:`Engine`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Caricamento non riuscito: {{error}}`,modelChip:`Modello: {{model}}`,clearModelFilter:`Rimuovi filtro modello`},a={spending:`Spesa`,vsPrev:`{{pct}}% vs prec.`,invocations_one:`{{count}} invocazione`,invocations_other:`{{count}} invocazioni`,tokens:`· {{tokens}} token`,tokensTooltip:`Token totali = input nuovo + output + lettura cache + creazione cache su tutte le invocazioni in questa finestra.`,usageUnavailable:`· utilizzo dei token non disponibile`,usageUnavailableTooltip:`Il provider ha completato queste invocazioni senza esporre la telemetria dei token.`,usagePartiallyUnavailable:`· {{tokens}} token noti; senza dati: {{count}}`,usagePartiallyUnavailableTooltip:`Solo subtotale noto; alcune invocazioni non espongono la telemetria dei token.`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Il provider ha completato queste invocazioni senza esporre telemetria sufficiente per determinarne il costo.`,costPartiallyUnavailable:`· subtotale noto; senza costo: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune invocazioni non espongono telemetria sufficiente per determinarne il costo.`,includesEstimated:`· include ~{{amount}} stimati`,includesEstimatedTooltip:`Include {{amount}} di costo stimato da provider senza un campo di costo nativo (es. codex tramite la tabella prezzi locale).`,trackingStarted:`Tracciamento iniziato il {{date}}`,trackingStartedFallback:`Il tracciamento inizia alla prima invocazione`,emptyState:`Ancora nessuna invocazione per questa finestra di filtri.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Per provider`,description:`Come si ripartisce il costo tra le CLI AI di questo progetto. Il prefisso <tilde>~</tilde> indica le righe in cui il costo è stimato dalla tabella prezzi locale (il provider non lo riporta nativamente).`,noCost:`Ancora nessun costo registrato in questa finestra.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Questo provider è stato eseguito ma il suo modello non è nella tabella prezzi, quindi non è stato possibile calcolare alcun costo.`,costPartiallyUnavailable:`· non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; il costo di alcune esecuzioni non è disponibile.`},s={title:`Timeline giornaliera`,subtitle:`impilata per origine`,empty:`Nessuna spesa in questo periodo.`,costUnavailable:`Sono state registrate invocazioni, ma la telemetria dei costi non è disponibile.`,costPartiallyUnavailable:`costi noti · non disponibili: {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Prova Explore per spec più ricche`,runsSoFar_one:`{{count}} esecuzione finora`,runsSoFar_other:`{{count}} esecuzioni finora`,perSpec:`per spec`,createdRuns:`<strong>{{created}}</strong> create · {{runs}} esecuzioni`,avgDuration:`{{duration}} in media`,ratio:`{{ratio}}× in più per spec`,estimatedTooltip:`Costo stimato (stima da tabella prezzi per codex/gemini, non fatturato dal provider)`,estimatedFootnote:`~ Include costi stimati (codex/gemini)`,costUnavailable:`costo per spec non disponibile`,costUnavailableTooltip:`Non è possibile calcolare la media per spec perché una o più esecuzioni non espongono il costo.`},l={title:`Modelli`,empty:`Nessun modello registrato.`,estimatedTooltip:`Stimato dalla tabella prezzi locale — questo provider non riporta il costo in modo nativo.`,others:`Altri`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`La telemetria dei costi non è disponibile per tutte le esecuzioni di questo modello.`,costPartiallyUnavailable:`· non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune esecuzioni di questo modello non hanno telemetria dei costi.`},u={title:`Costo vs Turni`,empty:`Nessuna invocazione da rappresentare.`,turnsLabel:`turni`,costLabel:`costo`,truncated:`Visualizzati {{shown}} di {{total}} — il punto più costoso viene mantenuto, ma i punti precedenti sono nascosti`,costUnavailable:`Sono state registrate invocazioni, ma non sono disponibili dati di costo da rappresentare.`,costPartiallyUnavailable:`Il grafico include solo le esecuzioni con costo; costo non disponibile: {{count}}.`},d={title:`Top ticket`,empty:`Nessuna attività sui ticket in questo periodo.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Non attribuito`,deletedTicket:`ticket eliminato #{{id}}`,costUnavailable:`costo non disponibile`,costUnavailableTooltip:`Nessuna esecuzione di questo ticket ha esposto telemetria dei costi.`,costPartiallyUnavailable:`non disponibili: {{count}}`,costPartiallyUnavailableTooltip:`Solo subtotale noto; alcune esecuzioni di questo ticket non hanno un costo disponibile.`},f={title:`Tutte le invocazioni`,statusFilterAria:`Filtro stato`,minCostFilterAria:`Filtro costo minimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Tutti gli stati`,success:`Riuscita`,failed:`Fallita`,aborted:`Interrotta`,empty:`Nessuna invocazione corrisponde ai filtri attuali.`,colSurface:`Origine`,colTicket:`Ticket`,colCost:`Costo`,colTurns:`Turni`,colTokens:`Token`,colModel:`Modello`,colStatus:`Stato`,colStarted:`Avvio`,contractLayer:`Contract Layer`,contractLayerRefinement:`Raffinamento Contract Layer`,deleted:`(eliminato)`,provisionalTitleTooltip:`Titolo Explore provvisorio — non ancora confermato`,estimatedCostTooltip:`Stimato dalla tabella prezzi locale — questo provider non riporta il costo nativamente.`,inferred:`dedotto`,statusValue:{success:`riuscita`,failed:`fallita`,aborted:`interrotta`},truncated:`Mostrate le prime {{shown}} di {{total}} righe corrispondenti.`,colProvider:`Provider`,sortLabel:`Ordina`,sortRecency:`Recenti`,sortCost:`Costo`},p={title:`Analytics di Desktop`,refreshAria:`Aggiorna le analytics`,failedToLoad:`Impossibile caricare le analytics: {{error}}`,totalCost:`Costo totale`,costToday:`{{value}} oggi`,costTodayUnavailable:`costo non disponibile oggi`,totalJobs:`Job totali`,jobsToday:`{{n}} oggi`,successRate:`Tasso di successo`,acrossAllProjects:`su tutti i progetti`,avgCostPerJob:`Costo medio / job`,periodAverage:`media del periodo`,averageUnavailable:`media non disponibile con telemetria dei costi incompleta`,costOverTime:`Costo nel tempo tra i progetti`,noCostData:`Nessun dato di costo per questo periodo`,projectComparison:`Confronto progetti`,noProjects:`Nessun progetto registrato.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} job`,successPct:`{{pct}}% di successo`,costByProject:`Costo per progetto`,includesEstimated:`~{{amount}} stimato`,includesEstimatedTooltip:`Include {{amount}} di costo stimato da tabella prezzi (codex/gemini), non fatturato dal provider.`,includesEstimatedShort:`incl. stimato`,timelineEstimatedTooltip:`Alcuni giorni includono un costo stimato da tabella prezzi (codex/gemini) contrassegnato con ~.`,estimatedBadge:`stim.`,projectEstimatedTooltip:`{{amount}} del costo di questo progetto è una stima da tabella prezzi (codex/gemini), non fatturato dal provider.`,statusBarEstimatedTooltip:`Include un costo stimato da tabella prezzi (codex/gemini), non fatturato dal provider.`,costUnavailable:`Sono state registrate invocazioni, ma la telemetria dei costi non è disponibile.`,costUnavailableShort:`non disponibile`,costPartiallyUnavailable:`Subtotale dei costi noti; invocazioni senza costo: {{count}}.`},m={"7d":`Ultimi 7 giorni`,"30d":`Ultimi 30 giorni`,"90d":`Ultimi 90 giorni`,all:`Sempre`,custom:`Intervallo personalizzato`},h={title:`Missioni dell’agente`,subtitle:`Turni di Agent Chat fissati a questo progetto`,vsPrev:`vs periodo precedente`,turnsAndTokens:`{{turns}} turni · {{tokens}} token`,untitled:`Missione senza titolo`,estimatedNote:`Include costi stimati`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV riepilogo`,rawCsv:`CSV raw`,summaryJson:`JSON riepilogo`,rawJson:`JSON raw`,downloading:`Download in corso…`,noData:`Nessun dato per i filtri attuali`,failed:`Esportazione non riuscita`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
@@ -1 +1 @@
1
- var e={job:`任务`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`AI 编辑`,smash:`SMASH`,fileSummary:`文件摘要`,loop:`Loops`,chatSidebar:`对话`,specLauncher:`规格启动器`,proposal:`提案`,agentStudio:`Agent Studio`,setup:`设置`},t={d7:`7天`,d30:`30天`,d90:`90天`,all:`全部`,custom:`自定义`,startDate:`开始日期`,endDate:`结束日期`,to:`至`},n=`{{count}} 次运行`,r=`{{count}} 次运行`,i={title:`分析`,all:`全部`,engine:`引擎`,ticketChip:`工单 #{{id}} · ✕`,failedToLoad:`加载失败:{{error}}`,modelChip:`模型:{{model}}`,clearModelFilter:`清除模型筛选`},a={spending:`支出`,vsPrev:`较上期 {{pct}}%`,invocations_one:`{{count}} 次调用`,invocations_other:`{{count}} 次调用`,tokens:`· {{tokens}} token`,tokensTooltip:`总 token 数 = 此时间窗口内所有调用的新输入 + 输出 + 缓存读取 + 缓存创建之和。`,usageUnavailable:`· token 使用量不可用`,usageUnavailableTooltip:`提供方已完成这些调用,但未提供 token 遥测数据。`,usagePartiallyUnavailable:`· 已知 {{tokens}} 个 token;{{count}} 次调用无数据`,usagePartiallyUnavailableTooltip:`仅显示已知 token 小计;部分调用未提供 token 遥测数据。`,costUnavailable:`成本不可用`,costUnavailableTooltip:`提供方已完成这些调用,但未提供足以确定成本的遥测数据。`,costPartiallyUnavailable:`· 已知小计;{{count}} 次调用无成本数据`,costPartiallyUnavailableTooltip:`仅显示已知成本小计;部分调用未提供足以确定成本的遥测数据。`,includesEstimated:`· 含约 {{amount}} 估算值`,includesEstimatedTooltip:`包含 {{amount}} 的估算成本,来自不原生上报成本的提供方(例如 codex,按本地价格表估算)。`,trackingStarted:`追踪始于 {{date}}`,trackingStartedFallback:`首次调用后开始追踪`,emptyState:`当前筛选窗口内暂无调用。`,segmentTitle:`{{label}}:{{value}}`},o={title:`按提供方`,description:`此项目中各 AI CLI 的成本分布。<tilde>~</tilde> 前缀表示该行成本由本地价格表估算(提供方不原生上报)。`,noCost:`此时间窗口内暂无成本记录。`,segmentTitle:`{{label}}:{{value}}({{count}})`,costUnavailable:`成本不可用`,costUnavailableTooltip:`此提供方已运行,但未提供足以确定成本的遥测数据。`,costPartiallyUnavailable:`· {{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;部分运行的成本不可用。`},s={title:`每日时间线`,subtitle:`按来源堆叠`,empty:`此期间没有支出。`,costUnavailable:`已记录调用,但成本遥测数据不可用。`,costPartiallyUnavailable:`已知成本 · {{count}} 次不可用`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`试试 Explore,获得更丰富的 spec`,runsSoFar_one:`目前 {{count}} 次运行`,runsSoFar_other:`目前 {{count}} 次运行`,perSpec:`每个 spec`,createdRuns:`已创建 <strong>{{created}}</strong> · {{runs}} 次运行`,avgDuration:`平均 {{duration}}`,ratio:`每个 spec 多 {{ratio}}×`,estimatedTooltip:`估算成本(codex/gemini 价格表回退,非提供商计费)`,estimatedFootnote:`~ 包含估算成本(codex/gemini)`,costUnavailable:`每个 spec 的成本不可用`,costUnavailableTooltip:`由于一次或多次运行未提供成本遥测数据,无法计算每个 spec 的平均成本。`},l={title:`模型`,empty:`暂无模型记录。`,estimatedTooltip:`根据本地价格表估算 — 此提供商不原生报告成本。`,others:`其他`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`此模型的所有运行均无成本遥测数据。`,costPartiallyUnavailable:`· {{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;此模型的部分运行无成本遥测数据。`},u={title:`成本 vs 轮次`,empty:`暂无可绘制的调用。`,turnsLabel:`轮次`,costLabel:`成本`,truncated:`显示 {{total}} 中的 {{shown}} 个 — 保留成本最高的点,但隐藏较早的点`,costUnavailable:`已记录调用,但没有可供绘图的成本遥测数据。`,costPartiallyUnavailable:`图表仅包含有成本数据的运行;{{count}} 次运行的成本不可用。`},d={title:`热门工单`,empty:`此期间没有工单活动。`,breakdownItem:`{{n}} {{label}}`,unattributed:`未归属`,deletedTicket:`已删除工单 #{{id}}`,costUnavailable:`成本不可用`,costUnavailableTooltip:`此工单的所有运行均未提供成本遥测数据。`,costPartiallyUnavailable:`{{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;此工单的部分运行成本不可用。`},f={title:`全部调用`,statusFilterAria:`状态筛选`,minCostFilterAria:`最低成本筛选`,minCostPlaceholder:`≥ $0.00`,allStatus:`全部状态`,success:`成功`,failed:`失败`,aborted:`已中止`,empty:`没有符合当前筛选条件的调用。`,colSurface:`来源`,colTicket:`工单`,colCost:`成本`,colTurns:`轮次`,colTokens:`Token`,colModel:`模型`,colStatus:`状态`,colStarted:`开始时间`,contractLayer:`Contract Layer`,contractLayerRefinement:`Contract Layer 增强`,deleted:`(已删除)`,provisionalTitleTooltip:`Explore 临时标题——尚未提交`,estimatedCostTooltip:`按本地价格表估算——此提供方不原生上报成本。`,inferred:`推断`,statusValue:{success:`成功`,failed:`失败`,aborted:`已中止`},truncated:`显示前 {{shown}} 条,共 {{total}} 条匹配记录。`,colProvider:`提供商`,sortLabel:`排序`,sortRecency:`最近`,sortCost:`成本`},p={title:`Desktop 分析`,refreshAria:`刷新分析数据`,failedToLoad:`加载分析数据失败:{{error}}`,totalCost:`总成本`,costToday:`今日 {{value}}`,costTodayUnavailable:`今日成本不可用`,totalJobs:`任务总数`,jobsToday:`今日 {{n}} 个`,successRate:`成功率`,acrossAllProjects:`所有项目汇总`,avgCostPerJob:`平均成本 / 任务`,periodAverage:`期间平均`,averageUnavailable:`成本遥测数据不完整,平均值不可用`,costOverTime:`跨项目成本走势`,noCostData:`此期间无成本数据`,projectComparison:`项目对比`,noProjects:`尚未注册任何项目。`,jobsCount_one:`{{count}} 个任务`,jobsCount_other:`{{count}} 个任务`,successPct:`成功率 {{pct}}%`,costByProject:`按项目统计成本`,includesEstimated:`~{{amount}} 估算`,includesEstimatedTooltip:`包含 {{amount}} 的价格表估算成本(codex/gemini),非提供商计费。`,includesEstimatedShort:`含估算`,timelineEstimatedTooltip:`某些天包含以 ~ 标记的价格表估算成本(codex/gemini)。`,estimatedBadge:`估算`,projectEstimatedTooltip:`此项目成本中的 {{amount}} 为价格表估算(codex/gemini),非提供商计费。`,statusBarEstimatedTooltip:`包含价格表估算成本(codex/gemini),非提供商计费。`,costUnavailable:`已记录调用,但成本遥测数据不可用。`,costUnavailableShort:`不可用`,costPartiallyUnavailable:`已知成本小计;{{count}} 次调用不可用。`},m={"7d":`最近 7 天`,"30d":`最近 30 天`,"90d":`最近 90 天`,all:`全部时间`,custom:`自定义范围`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`摘要 CSV`,rawCsv:`原始 CSV`,summaryJson:`摘要 JSON`,rawJson:`原始 JSON`,downloading:`正在下载…`,noData:`当前筛选条件下无数据`,failed:`导出失败`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`任务`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`AI 编辑`,smash:`SMASH`,fileSummary:`文件摘要`,loop:`Loops`,chatSidebar:`对话`,specLauncher:`规格启动器`,proposal:`提案`,agentStudio:`Agent Studio`,setup:`设置`},t={d7:`7天`,d30:`30天`,d90:`90天`,all:`全部`,custom:`自定义`,startDate:`开始日期`,endDate:`结束日期`,to:`至`},n=`{{count}} 次运行`,r=`{{count}} 次运行`,i={title:`分析`,all:`全部`,engine:`引擎`,ticketChip:`工单 #{{id}} · ✕`,failedToLoad:`加载失败:{{error}}`,modelChip:`模型:{{model}}`,clearModelFilter:`清除模型筛选`},a={spending:`支出`,vsPrev:`较上期 {{pct}}%`,invocations_one:`{{count}} 次调用`,invocations_other:`{{count}} 次调用`,tokens:`· {{tokens}} token`,tokensTooltip:`总 token 数 = 此时间窗口内所有调用的新输入 + 输出 + 缓存读取 + 缓存创建之和。`,usageUnavailable:`· token 使用量不可用`,usageUnavailableTooltip:`提供方已完成这些调用,但未提供 token 遥测数据。`,usagePartiallyUnavailable:`· 已知 {{tokens}} 个 token;{{count}} 次调用无数据`,usagePartiallyUnavailableTooltip:`仅显示已知 token 小计;部分调用未提供 token 遥测数据。`,costUnavailable:`成本不可用`,costUnavailableTooltip:`提供方已完成这些调用,但未提供足以确定成本的遥测数据。`,costPartiallyUnavailable:`· 已知小计;{{count}} 次调用无成本数据`,costPartiallyUnavailableTooltip:`仅显示已知成本小计;部分调用未提供足以确定成本的遥测数据。`,includesEstimated:`· 含约 {{amount}} 估算值`,includesEstimatedTooltip:`包含 {{amount}} 的估算成本,来自不原生上报成本的提供方(例如 codex,按本地价格表估算)。`,trackingStarted:`追踪始于 {{date}}`,trackingStartedFallback:`首次调用后开始追踪`,emptyState:`当前筛选窗口内暂无调用。`,segmentTitle:`{{label}}:{{value}}`},o={title:`按提供方`,description:`此项目中各 AI CLI 的成本分布。<tilde>~</tilde> 前缀表示该行成本由本地价格表估算(提供方不原生上报)。`,noCost:`此时间窗口内暂无成本记录。`,segmentTitle:`{{label}}:{{value}}({{count}})`,costUnavailable:`成本不可用`,costUnavailableTooltip:`此提供方已运行,但未提供足以确定成本的遥测数据。`,costPartiallyUnavailable:`· {{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;部分运行的成本不可用。`},s={title:`每日时间线`,subtitle:`按来源堆叠`,empty:`此期间没有支出。`,costUnavailable:`已记录调用,但成本遥测数据不可用。`,costPartiallyUnavailable:`已知成本 · {{count}} 次不可用`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`试试 Explore,获得更丰富的 spec`,runsSoFar_one:`目前 {{count}} 次运行`,runsSoFar_other:`目前 {{count}} 次运行`,perSpec:`每个 spec`,createdRuns:`已创建 <strong>{{created}}</strong> · {{runs}} 次运行`,avgDuration:`平均 {{duration}}`,ratio:`每个 spec 多 {{ratio}}×`,estimatedTooltip:`估算成本(codex/gemini 价格表回退,非提供商计费)`,estimatedFootnote:`~ 包含估算成本(codex/gemini)`,costUnavailable:`每个 spec 的成本不可用`,costUnavailableTooltip:`由于一次或多次运行未提供成本遥测数据,无法计算每个 spec 的平均成本。`},l={title:`模型`,empty:`暂无模型记录。`,estimatedTooltip:`根据本地价格表估算 — 此提供商不原生报告成本。`,others:`其他`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`此模型的所有运行均无成本遥测数据。`,costPartiallyUnavailable:`· {{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;此模型的部分运行无成本遥测数据。`},u={title:`成本 vs 轮次`,empty:`暂无可绘制的调用。`,turnsLabel:`轮次`,costLabel:`成本`,truncated:`显示 {{total}} 中的 {{shown}} 个 — 保留成本最高的点,但隐藏较早的点`,costUnavailable:`已记录调用,但没有可供绘图的成本遥测数据。`,costPartiallyUnavailable:`图表仅包含有成本数据的运行;{{count}} 次运行的成本不可用。`},d={title:`热门工单`,empty:`此期间没有工单活动。`,breakdownItem:`{{n}} {{label}}`,unattributed:`未归属`,deletedTicket:`已删除工单 #{{id}}`,costUnavailable:`成本不可用`,costUnavailableTooltip:`此工单的所有运行均未提供成本遥测数据。`,costPartiallyUnavailable:`{{count}} 次不可用`,costPartiallyUnavailableTooltip:`仅显示已知小计;此工单的部分运行成本不可用。`},f={title:`全部调用`,statusFilterAria:`状态筛选`,minCostFilterAria:`最低成本筛选`,minCostPlaceholder:`≥ $0.00`,allStatus:`全部状态`,success:`成功`,failed:`失败`,aborted:`已中止`,empty:`没有符合当前筛选条件的调用。`,colSurface:`来源`,colTicket:`工单`,colCost:`成本`,colTurns:`轮次`,colTokens:`Token`,colModel:`模型`,colStatus:`状态`,colStarted:`开始时间`,contractLayer:`Contract Layer`,contractLayerRefinement:`Contract Layer 增强`,deleted:`(已删除)`,provisionalTitleTooltip:`Explore 临时标题——尚未提交`,estimatedCostTooltip:`按本地价格表估算——此提供方不原生上报成本。`,inferred:`推断`,statusValue:{success:`成功`,failed:`失败`,aborted:`已中止`},truncated:`显示前 {{shown}} 条,共 {{total}} 条匹配记录。`,colProvider:`提供商`,sortLabel:`排序`,sortRecency:`最近`,sortCost:`成本`},p={title:`Desktop 分析`,refreshAria:`刷新分析数据`,failedToLoad:`加载分析数据失败:{{error}}`,totalCost:`总成本`,costToday:`今日 {{value}}`,costTodayUnavailable:`今日成本不可用`,totalJobs:`任务总数`,jobsToday:`今日 {{n}} 个`,successRate:`成功率`,acrossAllProjects:`所有项目汇总`,avgCostPerJob:`平均成本 / 任务`,periodAverage:`期间平均`,averageUnavailable:`成本遥测数据不完整,平均值不可用`,costOverTime:`跨项目成本走势`,noCostData:`此期间无成本数据`,projectComparison:`项目对比`,noProjects:`尚未注册任何项目。`,jobsCount_one:`{{count}} 个任务`,jobsCount_other:`{{count}} 个任务`,successPct:`成功率 {{pct}}%`,costByProject:`按项目统计成本`,includesEstimated:`~{{amount}} 估算`,includesEstimatedTooltip:`包含 {{amount}} 的价格表估算成本(codex/gemini),非提供商计费。`,includesEstimatedShort:`含估算`,timelineEstimatedTooltip:`某些天包含以 ~ 标记的价格表估算成本(codex/gemini)。`,estimatedBadge:`估算`,projectEstimatedTooltip:`此项目成本中的 {{amount}} 为价格表估算(codex/gemini),非提供商计费。`,statusBarEstimatedTooltip:`包含价格表估算成本(codex/gemini),非提供商计费。`,costUnavailable:`已记录调用,但成本遥测数据不可用。`,costUnavailableShort:`不可用`,costPartiallyUnavailable:`已知成本小计;{{count}} 次调用不可用。`},m={"7d":`最近 7 天`,"30d":`最近 30 天`,"90d":`最近 90 天`,all:`全部时间`,custom:`自定义范围`},h={title:`代理任务`,subtitle:`固定到此项目的 Agent Chat 轮次`,vsPrev:`对比上一周期`,turnsAndTokens:`{{turns}} 轮 · {{tokens}} tokens`,untitled:`未命名任务`,estimatedNote:`包含估算成本`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`摘要 CSV`,rawCsv:`原始 CSV`,summaryJson:`摘要 JSON`,rawJson:`原始 JSON`,downloading:`正在下载…`,noData:`当前筛选条件下无数据`,failed:`导出失败`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
@@ -0,0 +1 @@
1
+ import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({agentMissions:()=>_,default:()=>v,desktop:()=>h,hero:()=>s,models:()=>d,page:()=>o,periods:()=>r,providerCard:()=>c,quickVsExplore:()=>u,runs_one:()=>i,runs_other:()=>a,scatter:()=>f,surfaces:()=>n,table:()=>m,timeline:()=>l,topTickets:()=>p,windowLabels:()=>g}),n={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Refine`,smash:`SMASH`,fileSummary:`File summaries`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Spec launcher`,proposal:`Proposal`,agentStudio:`Agent Studio`,setup:`Setup`},r={d7:`7d`,d30:`30d`,d90:`90d`,all:`All`,custom:`Custom`,startDate:`Start date`,endDate:`End date`,to:`to`},i=`{{count}} run`,a=`{{count}} runs`,o={title:`Analytics`,all:`All`,engine:`Engine`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Failed to load: {{error}}`,modelChip:`Model: {{model}}`,clearModelFilter:`Clear model filter`},s={spending:`Spending`,vsPrev:`{{pct}}% vs prev`,invocations_one:`{{count}} invocation`,invocations_other:`{{count}} invocations`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Total tokens = fresh input + output + cache-read + cache-create across all invocations in this window.`,usageUnavailable:`· token usage unavailable`,usageUnavailableTooltip:`The provider completed these invocations but did not expose token telemetry.`,usagePartiallyUnavailable:`· {{tokens}} known tokens; {{count}} run(s) unavailable`,usagePartiallyUnavailableTooltip:`Known token subtotal only; some invocations did not expose token telemetry.`,costUnavailable:`cost unavailable`,costUnavailableTooltip:`The provider completed these invocations but did not expose enough telemetry to determine their cost.`,costPartiallyUnavailable:`· known subtotal; {{count}} run(s) without cost`,costPartiallyUnavailableTooltip:`Known cost subtotal only; some invocations did not expose enough telemetry to determine cost.`,includesEstimated:`· includes ~{{amount}} estimated`,includesEstimatedTooltip:`Includes {{amount}} of estimated cost from providers without a native cost field (e.g. codex via the local pricing table).`,trackingStarted:`Tracking started {{date}}`,trackingStartedFallback:`Tracking started on first invocation`,emptyState:`No invocations yet for this filter window.`,segmentTitle:`{{label}}: {{value}}`},c={title:`By provider`,description:`How cost splits across the AI CLIs in this project. The <tilde>~</tilde> prefix marks rows where cost is estimated from the local pricing table (the provider does not report it natively).`,noCost:`No cost recorded yet in this window.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`cost unavailable`,costUnavailableTooltip:`This provider ran but did not expose enough telemetry to determine cost.`,costPartiallyUnavailable:`· {{count}} unavailable`,costPartiallyUnavailableTooltip:`Known subtotal only; cost is unavailable for some runs.`},l={title:`Daily timeline`,subtitle:`stacked by surface`,empty:`No spend in this period.`,costUnavailable:`Invocations were recorded, but cost telemetry is unavailable.`,costPartiallyUnavailable:`known costs · {{count}} unavailable`},u={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Try Explore for richer specs`,runsSoFar_one:`{{count}} run so far`,runsSoFar_other:`{{count}} runs so far`,perSpec:`per spec`,createdRuns:`<strong>{{created}}</strong> created · {{runs}} runs`,avgDuration:`{{duration}} avg`,ratio:`{{ratio}}× more per spec`,estimatedTooltip:`Estimated cost (codex/gemini pricing-table fallback, not provider-billed)`,estimatedFootnote:`~ Includes estimated costs (codex/gemini)`,costUnavailable:`cost unavailable per spec`,costUnavailableTooltip:`A per-spec average cannot be computed because one or more runs did not expose cost telemetry.`},d={title:`Models`,empty:`No models recorded.`,estimatedTooltip:`Estimated from the local pricing table — this provider does not report cost natively.`,others:`Others`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`Cost telemetry is unavailable for every run of this model.`,costPartiallyUnavailable:`· {{count}} unavailable`,costPartiallyUnavailableTooltip:`Known subtotal only; some runs of this model have no cost telemetry.`},f={title:`Cost vs Turns`,empty:`No invocations to plot.`,turnsLabel:`turns`,costLabel:`cost`,truncated:`Showing {{shown}} of {{total}} — the costliest point is kept, but earlier points are hidden`,costUnavailable:`Invocations were recorded, but no cost telemetry is available to plot.`,costPartiallyUnavailable:`Plot includes priced runs only; {{count}} run(s) have unavailable cost.`},p={title:`Top tickets`,empty:`No ticket activity in this period.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Unattributed`,deletedTicket:`deleted ticket #{{id}}`,costUnavailable:`cost unavailable`,costUnavailableTooltip:`None of this ticket's runs exposed cost telemetry.`,costPartiallyUnavailable:`{{count}} unavailable`,costPartiallyUnavailableTooltip:`Known subtotal only; some runs for this ticket have unavailable cost.`},m={title:`All invocations`,statusFilterAria:`Status filter`,minCostFilterAria:`Minimum cost filter`,minCostPlaceholder:`≥ $0.00`,allStatus:`All status`,success:`Success`,failed:`Failed`,aborted:`Aborted`,empty:`No invocations match the current filters.`,colSurface:`Surface`,colTicket:`Ticket`,colCost:`Cost`,colTurns:`Turns`,colTokens:`Tokens`,colModel:`Model`,colStatus:`Status`,colStarted:`Started`,contractLayer:`Contract Layer`,contractLayerRefinement:`Contract Layer refinement`,deleted:`(deleted)`,provisionalTitleTooltip:`Provisional Explore title — not yet committed`,estimatedCostTooltip:`Estimated from local pricing table — this provider does not report cost natively.`,inferred:`inferred`,statusValue:{success:`success`,failed:`failed`,aborted:`aborted`},truncated:`Showing first {{shown}} of {{total}} matching rows.`,colProvider:`Provider`,sortLabel:`Sort`,sortRecency:`Recent`,sortCost:`Cost`},h={title:`Desktop Analytics`,refreshAria:`Refresh analytics`,failedToLoad:`Failed to load analytics: {{error}}`,totalCost:`Total Cost`,costToday:`{{value}} today`,costTodayUnavailable:`cost unavailable today`,totalJobs:`Total Jobs`,jobsToday:`{{n}} today`,successRate:`Success Rate`,acrossAllProjects:`across all projects`,avgCostPerJob:`Avg Cost / Job`,periodAverage:`period average`,averageUnavailable:`average unavailable with incomplete cost telemetry`,costOverTime:`Cross-Project Cost Over Time`,noCostData:`No cost data for this period`,projectComparison:`Project Comparison`,noProjects:`No projects registered.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}}% success`,costByProject:`Cost by Project`,includesEstimated:`~{{amount}} estimated`,includesEstimatedTooltip:`Includes {{amount}} of rate-card estimated cost (codex/gemini), not provider-billed.`,includesEstimatedShort:`incl. estimated`,timelineEstimatedTooltip:`Some days include rate-card estimated cost (codex/gemini) marked with ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} of this project's cost is a rate-card estimate (codex/gemini), not provider-billed.`,statusBarEstimatedTooltip:`Includes rate-card estimated cost (codex/gemini), not provider-billed.`,costUnavailable:`Invocations were recorded, but cost telemetry is unavailable.`,costUnavailableShort:`unavailable`,costPartiallyUnavailable:`Known cost subtotal; {{count}} invocation(s) unavailable.`},g={"7d":`Last 7 days`,"30d":`Last 30 days`,"90d":`Last 90 days`,all:`All time`,custom:`Custom range`},_={title:`Agent missions`,subtitle:`Agent Chat turns pinned to this project`,vsPrev:`vs previous period`,turnsAndTokens:`{{turns}} turns · {{tokens}} tokens`,untitled:`Untitled mission`,estimatedNote:`Includes estimated costs`},v={surfaces:n,periods:r,runs_one:i,runs_other:a,page:o,hero:s,providerCard:c,timeline:l,quickVsExplore:u,models:d,scatter:f,topTickets:p,table:m,export:{summaryCsv:`Summary CSV`,rawCsv:`Raw CSV`,summaryJson:`Summary JSON`,rawJson:`Raw JSON`,downloading:`Downloading…`,noData:`No data for current filters`,failed:`Export failed`},desktop:h,windowLabels:g,agentMissions:_};export{t};
@@ -1 +1 @@
1
- var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Affinage`,smash:`SMASH`,fileSummary:`Résumés de fichiers`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lanceur de spec`,proposal:`Proposition`,agentStudio:`Agent Studio`,setup:`Configuration`},t={d7:`7j`,d30:`30j`,d90:`90j`,all:`Tout`,custom:`Personnalisé`,startDate:`Date de début`,endDate:`Date de fin`,to:`au`},n=`{{count}} exécution`,r=`{{count}} exécutions`,i={title:`Analytics`,all:`Tout`,engine:`Moteur`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Échec du chargement : {{error}}`,modelChip:`Modèle : {{model}}`,clearModelFilter:`Effacer le filtre de modèle`},a={spending:`Dépenses`,vsPrev:`{{pct}} % vs préc.`,invocations_one:`{{count}} invocation`,invocations_other:`{{count}} invocations`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Total des tokens = entrée fraîche + sortie + lecture cache + création cache, sur toutes les invocations de cette période.`,usageUnavailable:`· utilisation des tokens indisponible`,usageUnavailableTooltip:`Le fournisseur a terminé ces invocations sans exposer de télémétrie des tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens connus ; sans données : {{count}}`,usagePartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines invocations n'exposent pas de télémétrie des tokens.`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Le fournisseur a terminé ces invocations sans exposer assez de télémétrie pour déterminer leur coût.`,costPartiallyUnavailable:`· sous-total connu ; sans coût : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines invocations n'exposent pas assez de télémétrie pour déterminer leur coût.`,includesEstimated:`· inclut ~{{amount}} estimés`,includesEstimatedTooltip:`Inclut {{amount}} de coût estimé pour les fournisseurs sans champ de coût natif (ex. codex via la table de tarifs locale).`,trackingStarted:`Suivi démarré le {{date}}`,trackingStartedFallback:`Le suivi démarre à la première invocation`,emptyState:`Aucune invocation pour cette période de filtrage.`,segmentTitle:`{{label}} : {{value}}`},o={title:`Par fournisseur`,description:`Répartition du coût entre les CLI IA de ce projet. Le préfixe <tilde>~</tilde> marque les lignes dont le coût est estimé à partir de la table de tarifs locale (le fournisseur ne le rapporte pas nativement).`,noCost:`Aucun coût enregistré sur cette période.`,segmentTitle:`{{label}} : {{value}} ({{count}})`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Ce fournisseur s'est exécuté mais son modèle n'est pas dans la table de tarifs, donc aucun coût n'a pu être calculé.`,costPartiallyUnavailable:`· indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; le coût de certaines exécutions est indisponible.`},s={title:`Chronologie quotidienne`,subtitle:`empilée par surface`,empty:`Aucune dépense sur cette période.`,costUnavailable:`Des invocations ont été enregistrées, mais la télémétrie de coût est indisponible.`,costPartiallyUnavailable:`coûts connus · indisponibles : {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Essayez Explore pour des specs plus riches`,runsSoFar_one:`{{count}} exécution pour l'instant`,runsSoFar_other:`{{count}} exécutions pour l'instant`,perSpec:`par spec`,createdRuns:`<strong>{{created}}</strong> créées · {{runs}} exécutions`,avgDuration:`{{duration}} en moyenne`,ratio:`{{ratio}}× de plus par spec`,estimatedTooltip:`Coût estimé (repli sur la table de tarifs codex/gemini, non facturé par le fournisseur)`,estimatedFootnote:`~ Inclut des coûts estimés (codex/gemini)`,costUnavailable:`coût par spec indisponible`,costUnavailableTooltip:`La moyenne par spec ne peut pas être calculée car une ou plusieurs exécutions n'exposent pas leur coût.`},l={title:`Modèles`,empty:`Aucun modèle enregistré.`,estimatedTooltip:`Estimé à partir de la table de tarifs locale — ce fournisseur ne signale pas le coût de manière native.`,others:`Autres`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`La télémétrie de coût est indisponible pour toutes les exécutions de ce modèle.`,costPartiallyUnavailable:`· indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines exécutions de ce modèle n'ont pas de télémétrie de coût.`},u={title:`Coût vs tours`,empty:`Aucune invocation à tracer.`,turnsLabel:`tours`,costLabel:`coût`,truncated:`Affichage de {{shown}} sur {{total}} — le point le plus coûteux est conservé, mais les points précédents sont masqués`,costUnavailable:`Des invocations ont été enregistrées, mais aucune télémétrie de coût n'est disponible pour le graphique.`,costPartiallyUnavailable:`Le graphique ne contient que les exécutions tarifées ; coûts indisponibles : {{count}}.`},d={title:`Top tickets`,empty:`Aucune activité de ticket sur cette période.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Non attribué`,deletedTicket:`ticket supprimé #{{id}}`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Aucune exécution de ce ticket n'a exposé de télémétrie de coût.`,costPartiallyUnavailable:`indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines exécutions de ce ticket ont un coût indisponible.`},f={title:`Toutes les invocations`,statusFilterAria:`Filtre de statut`,minCostFilterAria:`Filtre de coût minimum`,minCostPlaceholder:`≥ $0.00`,allStatus:`Tous les statuts`,success:`Succès`,failed:`Échec`,aborted:`Interrompu`,empty:`Aucune invocation ne correspond aux filtres actuels.`,colSurface:`Surface`,colTicket:`Ticket`,colCost:`Coût`,colTurns:`Tours`,colTokens:`Tokens`,colModel:`Modèle`,colStatus:`Statut`,colStarted:`Démarré`,contractLayer:`Contract Layer`,contractLayerRefinement:`Affinage Contract Layer`,deleted:`(supprimé)`,provisionalTitleTooltip:`Titre Explore provisoire — pas encore validé`,estimatedCostTooltip:`Estimé à partir de la table de tarifs locale — ce fournisseur ne rapporte pas le coût nativement.`,inferred:`inféré`,statusValue:{success:`succès`,failed:`échec`,aborted:`interrompu`},truncated:`Affichage des {{shown}} premières lignes sur {{total}} correspondantes.`,colProvider:`Fournisseur`,sortLabel:`Trier`,sortRecency:`Récent`,sortCost:`Coût`},p={title:`Analytics de Desktop`,refreshAria:`Actualiser les analytics`,failedToLoad:`Échec du chargement des analytics : {{error}}`,totalCost:`Coût total`,costToday:`{{value}} aujourd'hui`,costTodayUnavailable:`coût indisponible aujourd'hui`,totalJobs:`Total des jobs`,jobsToday:`{{n}} aujourd'hui`,successRate:`Taux de réussite`,acrossAllProjects:`sur tous les projets`,avgCostPerJob:`Coût moyen / job`,periodAverage:`moyenne de la période`,averageUnavailable:`moyenne indisponible avec une télémétrie de coût incomplète`,costOverTime:`Coût inter-projets dans le temps`,noCostData:`Aucune donnée de coût pour cette période`,projectComparison:`Comparaison des projets`,noProjects:`Aucun projet enregistré.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}} % de réussite`,costByProject:`Coût par projet`,includesEstimated:`~{{amount}} estimé`,includesEstimatedTooltip:`Inclut {{amount}} de coût estimé par la table de tarifs (codex/gemini), non facturé par le fournisseur.`,includesEstimatedShort:`incl. estimé`,timelineEstimatedTooltip:`Certains jours incluent un coût estimé par la table de tarifs (codex/gemini) marqué d'un ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} du coût de ce projet est une estimation par table de tarifs (codex/gemini), non facturé par le fournisseur.`,statusBarEstimatedTooltip:`Inclut un coût estimé par la table de tarifs (codex/gemini), non facturé par le fournisseur.`,costUnavailable:`Des invocations ont été enregistrées, mais la télémétrie de coût est indisponible.`,costUnavailableShort:`indisponible`,costPartiallyUnavailable:`Sous-total des coûts connus ; invocations sans coût : {{count}}.`},m={"7d":`7 derniers jours`,"30d":`30 derniers jours`,"90d":`90 derniers jours`,all:`Tout l'historique`,custom:`Plage personnalisée`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV résumé`,rawCsv:`CSV brut`,summaryJson:`JSON résumé`,rawJson:`JSON brut`,downloading:`Téléchargement…`,noData:`Aucune donnée pour les filtres actuels`,failed:`Échec de l'export`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Affinage`,smash:`SMASH`,fileSummary:`Résumés de fichiers`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lanceur de spec`,proposal:`Proposition`,agentStudio:`Agent Studio`,setup:`Configuration`},t={d7:`7j`,d30:`30j`,d90:`90j`,all:`Tout`,custom:`Personnalisé`,startDate:`Date de début`,endDate:`Date de fin`,to:`au`},n=`{{count}} exécution`,r=`{{count}} exécutions`,i={title:`Analytics`,all:`Tout`,engine:`Moteur`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Échec du chargement : {{error}}`,modelChip:`Modèle : {{model}}`,clearModelFilter:`Effacer le filtre de modèle`},a={spending:`Dépenses`,vsPrev:`{{pct}} % vs préc.`,invocations_one:`{{count}} invocation`,invocations_other:`{{count}} invocations`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Total des tokens = entrée fraîche + sortie + lecture cache + création cache, sur toutes les invocations de cette période.`,usageUnavailable:`· utilisation des tokens indisponible`,usageUnavailableTooltip:`Le fournisseur a terminé ces invocations sans exposer de télémétrie des tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens connus ; sans données : {{count}}`,usagePartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines invocations n'exposent pas de télémétrie des tokens.`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Le fournisseur a terminé ces invocations sans exposer assez de télémétrie pour déterminer leur coût.`,costPartiallyUnavailable:`· sous-total connu ; sans coût : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines invocations n'exposent pas assez de télémétrie pour déterminer leur coût.`,includesEstimated:`· inclut ~{{amount}} estimés`,includesEstimatedTooltip:`Inclut {{amount}} de coût estimé pour les fournisseurs sans champ de coût natif (ex. codex via la table de tarifs locale).`,trackingStarted:`Suivi démarré le {{date}}`,trackingStartedFallback:`Le suivi démarre à la première invocation`,emptyState:`Aucune invocation pour cette période de filtrage.`,segmentTitle:`{{label}} : {{value}}`},o={title:`Par fournisseur`,description:`Répartition du coût entre les CLI IA de ce projet. Le préfixe <tilde>~</tilde> marque les lignes dont le coût est estimé à partir de la table de tarifs locale (le fournisseur ne le rapporte pas nativement).`,noCost:`Aucun coût enregistré sur cette période.`,segmentTitle:`{{label}} : {{value}} ({{count}})`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Ce fournisseur s'est exécuté mais son modèle n'est pas dans la table de tarifs, donc aucun coût n'a pu être calculé.`,costPartiallyUnavailable:`· indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; le coût de certaines exécutions est indisponible.`},s={title:`Chronologie quotidienne`,subtitle:`empilée par surface`,empty:`Aucune dépense sur cette période.`,costUnavailable:`Des invocations ont été enregistrées, mais la télémétrie de coût est indisponible.`,costPartiallyUnavailable:`coûts connus · indisponibles : {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Essayez Explore pour des specs plus riches`,runsSoFar_one:`{{count}} exécution pour l'instant`,runsSoFar_other:`{{count}} exécutions pour l'instant`,perSpec:`par spec`,createdRuns:`<strong>{{created}}</strong> créées · {{runs}} exécutions`,avgDuration:`{{duration}} en moyenne`,ratio:`{{ratio}}× de plus par spec`,estimatedTooltip:`Coût estimé (repli sur la table de tarifs codex/gemini, non facturé par le fournisseur)`,estimatedFootnote:`~ Inclut des coûts estimés (codex/gemini)`,costUnavailable:`coût par spec indisponible`,costUnavailableTooltip:`La moyenne par spec ne peut pas être calculée car une ou plusieurs exécutions n'exposent pas leur coût.`},l={title:`Modèles`,empty:`Aucun modèle enregistré.`,estimatedTooltip:`Estimé à partir de la table de tarifs locale — ce fournisseur ne signale pas le coût de manière native.`,others:`Autres`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`La télémétrie de coût est indisponible pour toutes les exécutions de ce modèle.`,costPartiallyUnavailable:`· indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines exécutions de ce modèle n'ont pas de télémétrie de coût.`},u={title:`Coût vs tours`,empty:`Aucune invocation à tracer.`,turnsLabel:`tours`,costLabel:`coût`,truncated:`Affichage de {{shown}} sur {{total}} — le point le plus coûteux est conservé, mais les points précédents sont masqués`,costUnavailable:`Des invocations ont été enregistrées, mais aucune télémétrie de coût n'est disponible pour le graphique.`,costPartiallyUnavailable:`Le graphique ne contient que les exécutions tarifées ; coûts indisponibles : {{count}}.`},d={title:`Top tickets`,empty:`Aucune activité de ticket sur cette période.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Non attribué`,deletedTicket:`ticket supprimé #{{id}}`,costUnavailable:`coût indisponible`,costUnavailableTooltip:`Aucune exécution de ce ticket n'a exposé de télémétrie de coût.`,costPartiallyUnavailable:`indisponibles : {{count}}`,costPartiallyUnavailableTooltip:`Sous-total connu uniquement ; certaines exécutions de ce ticket ont un coût indisponible.`},f={title:`Toutes les invocations`,statusFilterAria:`Filtre de statut`,minCostFilterAria:`Filtre de coût minimum`,minCostPlaceholder:`≥ $0.00`,allStatus:`Tous les statuts`,success:`Succès`,failed:`Échec`,aborted:`Interrompu`,empty:`Aucune invocation ne correspond aux filtres actuels.`,colSurface:`Surface`,colTicket:`Ticket`,colCost:`Coût`,colTurns:`Tours`,colTokens:`Tokens`,colModel:`Modèle`,colStatus:`Statut`,colStarted:`Démarré`,contractLayer:`Contract Layer`,contractLayerRefinement:`Affinage Contract Layer`,deleted:`(supprimé)`,provisionalTitleTooltip:`Titre Explore provisoire — pas encore validé`,estimatedCostTooltip:`Estimé à partir de la table de tarifs locale — ce fournisseur ne rapporte pas le coût nativement.`,inferred:`inféré`,statusValue:{success:`succès`,failed:`échec`,aborted:`interrompu`},truncated:`Affichage des {{shown}} premières lignes sur {{total}} correspondantes.`,colProvider:`Fournisseur`,sortLabel:`Trier`,sortRecency:`Récent`,sortCost:`Coût`},p={title:`Analytics de Desktop`,refreshAria:`Actualiser les analytics`,failedToLoad:`Échec du chargement des analytics : {{error}}`,totalCost:`Coût total`,costToday:`{{value}} aujourd'hui`,costTodayUnavailable:`coût indisponible aujourd'hui`,totalJobs:`Total des jobs`,jobsToday:`{{n}} aujourd'hui`,successRate:`Taux de réussite`,acrossAllProjects:`sur tous les projets`,avgCostPerJob:`Coût moyen / job`,periodAverage:`moyenne de la période`,averageUnavailable:`moyenne indisponible avec une télémétrie de coût incomplète`,costOverTime:`Coût inter-projets dans le temps`,noCostData:`Aucune donnée de coût pour cette période`,projectComparison:`Comparaison des projets`,noProjects:`Aucun projet enregistré.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}} % de réussite`,costByProject:`Coût par projet`,includesEstimated:`~{{amount}} estimé`,includesEstimatedTooltip:`Inclut {{amount}} de coût estimé par la table de tarifs (codex/gemini), non facturé par le fournisseur.`,includesEstimatedShort:`incl. estimé`,timelineEstimatedTooltip:`Certains jours incluent un coût estimé par la table de tarifs (codex/gemini) marqué d'un ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} du coût de ce projet est une estimation par table de tarifs (codex/gemini), non facturé par le fournisseur.`,statusBarEstimatedTooltip:`Inclut un coût estimé par la table de tarifs (codex/gemini), non facturé par le fournisseur.`,costUnavailable:`Des invocations ont été enregistrées, mais la télémétrie de coût est indisponible.`,costUnavailableShort:`indisponible`,costPartiallyUnavailable:`Sous-total des coûts connus ; invocations sans coût : {{count}}.`},m={"7d":`7 derniers jours`,"30d":`30 derniers jours`,"90d":`90 derniers jours`,all:`Tout l'historique`,custom:`Plage personnalisée`},h={title:`Missions de l’agent`,subtitle:`Tours d’Agent Chat épinglés à ce projet`,vsPrev:`vs période précédente`,turnsAndTokens:`{{turns}} tours · {{tokens}} tokens`,untitled:`Mission sans titre`,estimatedNote:`Inclut des coûts estimés`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV résumé`,rawCsv:`CSV brut`,summaryJson:`JSON résumé`,rawJson:`JSON brut`,downloading:`Téléchargement…`,noData:`Aucune donnée pour les filtres actuels`,failed:`Échec de l'export`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
@@ -1 +1 @@
1
- var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Refinado`,smash:`SMASH`,fileSummary:`Resúmenes de archivo`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lanzador de specs`,proposal:`Propuesta`,agentStudio:`Agent Studio`,setup:`Configuración`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Todo`,custom:`Personalizado`,startDate:`Fecha de inicio`,endDate:`Fecha de fin`,to:`a`},n=`{{count}} ejecución`,r=`{{count}} ejecuciones`,i={title:`Analíticas`,all:`Todo`,engine:`Motor`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Error al cargar: {{error}}`,modelChip:`Modelo: {{model}}`,clearModelFilter:`Quitar filtro de modelo`},a={spending:`Gasto`,vsPrev:`{{pct}}% vs anterior`,invocations_one:`{{count}} invocación`,invocations_other:`{{count}} invocaciones`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Tokens totales = entrada nueva + salida + lectura de caché + creación de caché en todas las invocaciones de esta ventana.`,usageUnavailable:`· uso de tokens no disponible`,usageUnavailableTooltip:`El proveedor completó estas invocaciones pero no expuso telemetría de tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens conocidos; {{count}} ejecución(es) sin datos`,usagePartiallyUnavailableTooltip:`Solo subtotal de tokens conocido; algunas invocaciones no expusieron telemetría.`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`El proveedor completó estas invocaciones pero no expuso telemetría suficiente para determinar su coste.`,costPartiallyUnavailable:`· subtotal conocido; {{count}} ejecución(es) sin coste`,costPartiallyUnavailableTooltip:`Solo subtotal de coste conocido; algunas invocaciones no expusieron telemetría suficiente.`,includesEstimated:`· incluye ~{{amount}} estimado`,includesEstimatedTooltip:`Incluye {{amount}} de coste estimado de proveedores sin campo de coste nativo (p. ej. codex mediante la tabla de precios local).`,trackingStarted:`Seguimiento iniciado el {{date}}`,trackingStartedFallback:`El seguimiento empieza con la primera invocación`,emptyState:`Aún no hay invocaciones para esta ventana de filtros.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Por proveedor`,description:`Cómo se reparte el coste entre las CLI de IA de este proyecto. El prefijo <tilde>~</tilde> marca las filas cuyo coste se estima con la tabla de precios local (el proveedor no lo informa de forma nativa).`,noCost:`Aún no hay coste registrado en esta ventana.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`Este proveedor se ejecutó pero no expuso telemetría suficiente para determinar el coste.`,costPartiallyUnavailable:`· {{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones no tienen coste disponible.`},s={title:`Cronología diaria`,subtitle:`apilada por superficie`,empty:`Sin gasto en este periodo.`,costUnavailable:`Hay invocaciones registradas, pero la telemetría de coste no está disponible.`,costPartiallyUnavailable:`costes conocidos · {{count}} no disponible(s)`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Prueba Explore para conseguir specs más completas`,runsSoFar_one:`{{count}} ejecución hasta ahora`,runsSoFar_other:`{{count}} ejecuciones hasta ahora`,perSpec:`por spec`,createdRuns:`<strong>{{created}}</strong> creadas · {{runs}} ejecuciones`,avgDuration:`{{duration}} de media`,ratio:`{{ratio}}× más por spec`,estimatedTooltip:`Coste estimado (estimación con tabla de precios para codex/gemini, no facturado por el proveedor)`,estimatedFootnote:`~ Incluye costes estimados (codex/gemini)`,costUnavailable:`coste por spec no disponible`,costUnavailableTooltip:`No se puede calcular la media por spec porque una o más ejecuciones no expusieron telemetría de coste.`},l={title:`Modelos`,empty:`No hay modelos registrados.`,estimatedTooltip:`Estimado a partir de la tabla de precios local — este proveedor no informa el coste de forma nativa.`,others:`Otros`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`El coste no está disponible para ninguna ejecución de este modelo.`,costPartiallyUnavailable:`· {{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones de este modelo no tienen telemetría de coste.`},u={title:`Coste vs turnos`,empty:`No hay invocaciones que representar.`,turnsLabel:`turnos`,costLabel:`coste`,truncated:`Mostrando {{shown}} de {{total}} — se conserva el punto más costoso, pero se ocultan los anteriores`,costUnavailable:`Hay invocaciones registradas, pero no existe telemetría de coste para representarlas.`,costPartiallyUnavailable:`La gráfica solo incluye ejecuciones con precio; {{count}} no tienen coste disponible.`},d={title:`Tickets principales`,empty:`Sin actividad de tickets en este periodo.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Sin atribuir`,deletedTicket:`ticket eliminado #{{id}}`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`Ninguna ejecución de este ticket expuso telemetría de coste.`,costPartiallyUnavailable:`{{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones de este ticket no tienen coste disponible.`},f={title:`Todas las invocaciones`,statusFilterAria:`Filtro de estado`,minCostFilterAria:`Filtro de coste mínimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Todos los estados`,success:`Éxito`,failed:`Fallido`,aborted:`Abortado`,empty:`Ninguna invocación coincide con los filtros actuales.`,colSurface:`Superficie`,colTicket:`Ticket`,colCost:`Coste`,colTurns:`Turnos`,colTokens:`Tokens`,colModel:`Modelo`,colStatus:`Estado`,colStarted:`Inicio`,contractLayer:`Contract Layer`,contractLayerRefinement:`Refinamiento de Contract Layer`,deleted:`(eliminado)`,provisionalTitleTooltip:`Título provisional de Explore — aún sin confirmar`,estimatedCostTooltip:`Estimado con la tabla de precios local — este proveedor no informa el coste de forma nativa.`,inferred:`inferido`,statusValue:{success:`éxito`,failed:`fallido`,aborted:`abortado`},truncated:`Mostrando las primeras {{shown}} de {{total}} filas coincidentes.`,colProvider:`Proveedor`,sortLabel:`Ordenar`,sortRecency:`Reciente`,sortCost:`Coste`},p={title:`Analíticas de Desktop`,refreshAria:`Actualizar analíticas`,failedToLoad:`No se pudieron cargar las analíticas: {{error}}`,totalCost:`Coste total`,costToday:`{{value}} hoy`,costTodayUnavailable:`coste no disponible hoy`,totalJobs:`Jobs totales`,jobsToday:`{{n}} hoy`,successRate:`Tasa de éxito`,acrossAllProjects:`en todos los proyectos`,avgCostPerJob:`Coste medio / job`,periodAverage:`media del periodo`,averageUnavailable:`media no disponible con telemetría de coste incompleta`,costOverTime:`Coste entre proyectos a lo largo del tiempo`,noCostData:`Sin datos de coste para este periodo`,projectComparison:`Comparación de proyectos`,noProjects:`No hay proyectos registrados.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}}% de éxito`,costByProject:`Coste por proyecto`,includesEstimated:`~{{amount}} estimado`,includesEstimatedTooltip:`Incluye {{amount}} de coste estimado por tabla de precios (codex/gemini), no facturado por el proveedor.`,includesEstimatedShort:`incl. estimado`,timelineEstimatedTooltip:`Algunos días incluyen coste estimado por tabla de precios (codex/gemini) marcado con ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} del coste de este proyecto es una estimación por tabla de precios (codex/gemini), no facturado por el proveedor.`,statusBarEstimatedTooltip:`Incluye coste estimado por tabla de precios (codex/gemini), no facturado por el proveedor.`,costUnavailable:`Hay invocaciones registradas, pero la telemetría de coste no está disponible.`,costUnavailableShort:`no disponible`,costPartiallyUnavailable:`Subtotal de coste conocido; {{count}} invocación(es) sin datos.`},m={"7d":`Últimos 7 días`,"30d":`Últimos 30 días`,"90d":`Últimos 90 días`,all:`Todo el tiempo`,custom:`Rango personalizado`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV resumen`,rawCsv:`CSV en bruto`,summaryJson:`JSON resumen`,rawJson:`JSON en bruto`,downloading:`Descargando…`,noData:`Sin datos para los filtros actuales`,failed:`Error al exportar`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Refinado`,smash:`SMASH`,fileSummary:`Resúmenes de archivo`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lanzador de specs`,proposal:`Propuesta`,agentStudio:`Agent Studio`,setup:`Configuración`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Todo`,custom:`Personalizado`,startDate:`Fecha de inicio`,endDate:`Fecha de fin`,to:`a`},n=`{{count}} ejecución`,r=`{{count}} ejecuciones`,i={title:`Analíticas`,all:`Todo`,engine:`Motor`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Error al cargar: {{error}}`,modelChip:`Modelo: {{model}}`,clearModelFilter:`Quitar filtro de modelo`},a={spending:`Gasto`,vsPrev:`{{pct}}% vs anterior`,invocations_one:`{{count}} invocación`,invocations_other:`{{count}} invocaciones`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Tokens totales = entrada nueva + salida + lectura de caché + creación de caché en todas las invocaciones de esta ventana.`,usageUnavailable:`· uso de tokens no disponible`,usageUnavailableTooltip:`El proveedor completó estas invocaciones pero no expuso telemetría de tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens conocidos; {{count}} ejecución(es) sin datos`,usagePartiallyUnavailableTooltip:`Solo subtotal de tokens conocido; algunas invocaciones no expusieron telemetría.`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`El proveedor completó estas invocaciones pero no expuso telemetría suficiente para determinar su coste.`,costPartiallyUnavailable:`· subtotal conocido; {{count}} ejecución(es) sin coste`,costPartiallyUnavailableTooltip:`Solo subtotal de coste conocido; algunas invocaciones no expusieron telemetría suficiente.`,includesEstimated:`· incluye ~{{amount}} estimado`,includesEstimatedTooltip:`Incluye {{amount}} de coste estimado de proveedores sin campo de coste nativo (p. ej. codex mediante la tabla de precios local).`,trackingStarted:`Seguimiento iniciado el {{date}}`,trackingStartedFallback:`El seguimiento empieza con la primera invocación`,emptyState:`Aún no hay invocaciones para esta ventana de filtros.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Por proveedor`,description:`Cómo se reparte el coste entre las CLI de IA de este proyecto. El prefijo <tilde>~</tilde> marca las filas cuyo coste se estima con la tabla de precios local (el proveedor no lo informa de forma nativa).`,noCost:`Aún no hay coste registrado en esta ventana.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`Este proveedor se ejecutó pero no expuso telemetría suficiente para determinar el coste.`,costPartiallyUnavailable:`· {{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones no tienen coste disponible.`},s={title:`Cronología diaria`,subtitle:`apilada por superficie`,empty:`Sin gasto en este periodo.`,costUnavailable:`Hay invocaciones registradas, pero la telemetría de coste no está disponible.`,costPartiallyUnavailable:`costes conocidos · {{count}} no disponible(s)`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Prueba Explore para conseguir specs más completas`,runsSoFar_one:`{{count}} ejecución hasta ahora`,runsSoFar_other:`{{count}} ejecuciones hasta ahora`,perSpec:`por spec`,createdRuns:`<strong>{{created}}</strong> creadas · {{runs}} ejecuciones`,avgDuration:`{{duration}} de media`,ratio:`{{ratio}}× más por spec`,estimatedTooltip:`Coste estimado (estimación con tabla de precios para codex/gemini, no facturado por el proveedor)`,estimatedFootnote:`~ Incluye costes estimados (codex/gemini)`,costUnavailable:`coste por spec no disponible`,costUnavailableTooltip:`No se puede calcular la media por spec porque una o más ejecuciones no expusieron telemetría de coste.`},l={title:`Modelos`,empty:`No hay modelos registrados.`,estimatedTooltip:`Estimado a partir de la tabla de precios local — este proveedor no informa el coste de forma nativa.`,others:`Otros`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`El coste no está disponible para ninguna ejecución de este modelo.`,costPartiallyUnavailable:`· {{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones de este modelo no tienen telemetría de coste.`},u={title:`Coste vs turnos`,empty:`No hay invocaciones que representar.`,turnsLabel:`turnos`,costLabel:`coste`,truncated:`Mostrando {{shown}} de {{total}} — se conserva el punto más costoso, pero se ocultan los anteriores`,costUnavailable:`Hay invocaciones registradas, pero no existe telemetría de coste para representarlas.`,costPartiallyUnavailable:`La gráfica solo incluye ejecuciones con precio; {{count}} no tienen coste disponible.`},d={title:`Tickets principales`,empty:`Sin actividad de tickets en este periodo.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Sin atribuir`,deletedTicket:`ticket eliminado #{{id}}`,costUnavailable:`coste no disponible`,costUnavailableTooltip:`Ninguna ejecución de este ticket expuso telemetría de coste.`,costPartiallyUnavailable:`{{count}} no disponible(s)`,costPartiallyUnavailableTooltip:`Solo subtotal conocido; algunas ejecuciones de este ticket no tienen coste disponible.`},f={title:`Todas las invocaciones`,statusFilterAria:`Filtro de estado`,minCostFilterAria:`Filtro de coste mínimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Todos los estados`,success:`Éxito`,failed:`Fallido`,aborted:`Abortado`,empty:`Ninguna invocación coincide con los filtros actuales.`,colSurface:`Superficie`,colTicket:`Ticket`,colCost:`Coste`,colTurns:`Turnos`,colTokens:`Tokens`,colModel:`Modelo`,colStatus:`Estado`,colStarted:`Inicio`,contractLayer:`Contract Layer`,contractLayerRefinement:`Refinamiento de Contract Layer`,deleted:`(eliminado)`,provisionalTitleTooltip:`Título provisional de Explore — aún sin confirmar`,estimatedCostTooltip:`Estimado con la tabla de precios local — este proveedor no informa el coste de forma nativa.`,inferred:`inferido`,statusValue:{success:`éxito`,failed:`fallido`,aborted:`abortado`},truncated:`Mostrando las primeras {{shown}} de {{total}} filas coincidentes.`,colProvider:`Proveedor`,sortLabel:`Ordenar`,sortRecency:`Reciente`,sortCost:`Coste`},p={title:`Analíticas de Desktop`,refreshAria:`Actualizar analíticas`,failedToLoad:`No se pudieron cargar las analíticas: {{error}}`,totalCost:`Coste total`,costToday:`{{value}} hoy`,costTodayUnavailable:`coste no disponible hoy`,totalJobs:`Jobs totales`,jobsToday:`{{n}} hoy`,successRate:`Tasa de éxito`,acrossAllProjects:`en todos los proyectos`,avgCostPerJob:`Coste medio / job`,periodAverage:`media del periodo`,averageUnavailable:`media no disponible con telemetría de coste incompleta`,costOverTime:`Coste entre proyectos a lo largo del tiempo`,noCostData:`Sin datos de coste para este periodo`,projectComparison:`Comparación de proyectos`,noProjects:`No hay proyectos registrados.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}}% de éxito`,costByProject:`Coste por proyecto`,includesEstimated:`~{{amount}} estimado`,includesEstimatedTooltip:`Incluye {{amount}} de coste estimado por tabla de precios (codex/gemini), no facturado por el proveedor.`,includesEstimatedShort:`incl. estimado`,timelineEstimatedTooltip:`Algunos días incluyen coste estimado por tabla de precios (codex/gemini) marcado con ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} del coste de este proyecto es una estimación por tabla de precios (codex/gemini), no facturado por el proveedor.`,statusBarEstimatedTooltip:`Incluye coste estimado por tabla de precios (codex/gemini), no facturado por el proveedor.`,costUnavailable:`Hay invocaciones registradas, pero la telemetría de coste no está disponible.`,costUnavailableShort:`no disponible`,costPartiallyUnavailable:`Subtotal de coste conocido; {{count}} invocación(es) sin datos.`},m={"7d":`Últimos 7 días`,"30d":`Últimos 30 días`,"90d":`Últimos 90 días`,all:`Todo el tiempo`,custom:`Rango personalizado`},h={title:`Misiones del agente`,subtitle:`Turnos de Agent Chat anclados a este proyecto`,vsPrev:`vs periodo anterior`,turnsAndTokens:`{{turns}} turnos · {{tokens}} tokens`,untitled:`Misión sin título`,estimatedNote:`Incluye costes estimados`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV resumen`,rawCsv:`CSV en bruto`,summaryJson:`JSON resumen`,rawJson:`JSON en bruto`,downloading:`Descargando…`,noData:`Sin datos para los filtros actuales`,failed:`Error al exportar`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
@@ -1 +1 @@
1
- var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Verfeinern`,smash:`SMASH`,fileSummary:`Dateizusammenfassungen`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Spec-Starter`,proposal:`Vorschlag`,agentStudio:`Agent Studio`,setup:`Einrichtung`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Alle`,custom:`Benutzerdefiniert`,startDate:`Startdatum`,endDate:`Enddatum`,to:`bis`},n=`{{count}} Lauf`,r=`{{count}} Läufe`,i={title:`Analytics`,all:`Alle`,engine:`Engine`,ticketChip:`Ticket #{{id}} · ✕`,failedToLoad:`Laden fehlgeschlagen: {{error}}`,modelChip:`Modell: {{model}}`,clearModelFilter:`Modellfilter zurücksetzen`},a={spending:`Ausgaben`,vsPrev:`{{pct}} % ggü. Vorperiode`,invocations_one:`{{count}} Aufruf`,invocations_other:`{{count}} Aufrufe`,tokens:`· {{tokens}} Tokens`,tokensTooltip:`Tokens gesamt = neue Eingabe + Ausgabe + Cache-Read + Cache-Create über alle Aufrufe in diesem Zeitraum.`,usageUnavailable:`· Token-Nutzung nicht verfügbar`,usageUnavailableTooltip:`Der Anbieter hat diese Aufrufe abgeschlossen, aber keine Token-Telemetrie bereitgestellt.`,usagePartiallyUnavailable:`· {{tokens}} bekannte Tokens; ohne Daten: {{count}}`,usagePartiallyUnavailableTooltip:`Nur bekannte Token-Zwischensumme; einige Aufrufe haben keine Token-Telemetrie bereitgestellt.`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Der Anbieter hat diese Aufrufe abgeschlossen, aber nicht genügend Telemetrie zur Kostenermittlung bereitgestellt.`,costPartiallyUnavailable:`· bekannte Zwischensumme; ohne Kosten: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Kosten-Zwischensumme; einige Aufrufe haben nicht genügend Telemetrie zur Kostenermittlung bereitgestellt.`,includesEstimated:`· enthält ~{{amount}} geschätzt`,includesEstimatedTooltip:`Enthält {{amount}} geschätzte Kosten von Providern ohne natives Kostenfeld (z. B. codex über die lokale Preistabelle).`,trackingStarted:`Tracking gestartet am {{date}}`,trackingStartedFallback:`Tracking beginnt mit dem ersten Aufruf`,emptyState:`Noch keine Aufrufe für diesen Filterzeitraum.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Nach Provider`,description:`So verteilen sich die Kosten auf die KI-CLIs in diesem Projekt. Das Präfix <tilde>~</tilde> markiert Zeilen, deren Kosten über die lokale Preistabelle geschätzt sind (der Provider meldet sie nicht nativ).`,noCost:`Noch keine Kosten in diesem Zeitraum erfasst.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Dieser Anbieter lief, aber sein Modell ist nicht in der Preistabelle, daher konnten keine Kosten berechnet werden.`,costPartiallyUnavailable:`· nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe sind keine Kosten verfügbar.`},s={title:`Täglicher Verlauf`,subtitle:`gestapelt nach Surface`,empty:`Keine Ausgaben in diesem Zeitraum.`,costUnavailable:`Aufrufe wurden erfasst, aber die Kostentelemetrie ist nicht verfügbar.`,costPartiallyUnavailable:`bekannte Kosten · nicht verfügbar: {{count}}`},c={title:`Quick vs. Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Probiere Explore für reichhaltigere Specs`,runsSoFar_one:`bisher {{count}} Lauf`,runsSoFar_other:`bisher {{count}} Läufe`,perSpec:`pro Spec`,createdRuns:`<strong>{{created}}</strong> erstellt · {{runs}} Läufe`,avgDuration:`Ø {{duration}}`,ratio:`{{ratio}}× mehr pro Spec`,estimatedTooltip:`Geschätzte Kosten (Rückgriff auf Preistabelle für codex/gemini, nicht vom Anbieter abgerechnet)`,estimatedFootnote:`~ Enthält geschätzte Kosten (codex/gemini)`,costUnavailable:`Kosten pro Spec nicht verfügbar`,costUnavailableTooltip:`Ein Durchschnitt pro Spec kann nicht berechnet werden, da für mindestens einen Aufruf die Kostentelemetrie fehlt.`},l={title:`Modelle`,empty:`Keine Modelle erfasst.`,estimatedTooltip:`Geschätzt aus der lokalen Preistabelle — dieser Anbieter meldet die Kosten nicht nativ.`,others:`Andere`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`Für alle Aufrufe dieses Modells fehlt die Kostentelemetrie.`,costPartiallyUnavailable:`· nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe dieses Modells fehlen Kostendaten.`},u={title:`Kosten vs. Turns`,empty:`Keine Aufrufe zum Darstellen.`,turnsLabel:`Turns`,costLabel:`Kosten`,truncated:`Zeige {{shown}} von {{total}} — der teuerste Punkt bleibt erhalten, frühere Punkte werden ausgeblendet`,costUnavailable:`Aufrufe wurden erfasst, aber es sind keine Kostendaten zum Darstellen verfügbar.`,costPartiallyUnavailable:`Das Diagramm enthält nur Aufrufe mit Kosten; Kosten nicht verfügbar: {{count}}.`},d={title:`Top-Tickets`,empty:`Keine Ticket-Aktivität in diesem Zeitraum.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Nicht zugeordnet`,deletedTicket:`gelöschtes Ticket #{{id}}`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Keiner der Aufrufe dieses Tickets hat Kostentelemetrie bereitgestellt.`,costPartiallyUnavailable:`nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe dieses Tickets sind keine Kosten verfügbar.`},f={title:`Alle Aufrufe`,statusFilterAria:`Statusfilter`,minCostFilterAria:`Mindestkosten-Filter`,minCostPlaceholder:`≥ $0.00`,allStatus:`Alle Status`,success:`Erfolgreich`,failed:`Fehlgeschlagen`,aborted:`Abgebrochen`,empty:`Keine Aufrufe entsprechen den aktuellen Filtern.`,colSurface:`Surface`,colTicket:`Ticket`,colCost:`Kosten`,colTurns:`Turns`,colTokens:`Tokens`,colModel:`Modell`,colStatus:`Status`,colStarted:`Gestartet`,contractLayer:`Contract Layer`,contractLayerRefinement:`Contract-Layer-Verfeinerung`,deleted:`(gelöscht)`,provisionalTitleTooltip:`Vorläufiger Explore-Titel – noch nicht committet`,estimatedCostTooltip:`Geschätzt anhand der lokalen Preistabelle – dieser Provider meldet Kosten nicht nativ.`,inferred:`abgeleitet`,statusValue:{success:`erfolgreich`,failed:`fehlgeschlagen`,aborted:`abgebrochen`},truncated:`Zeige die ersten {{shown}} von {{total}} passenden Zeilen.`,colProvider:`Anbieter`,sortLabel:`Sortieren`,sortRecency:`Neueste`,sortCost:`Kosten`},p={title:`Desktop-Analytics`,refreshAria:`Analytics aktualisieren`,failedToLoad:`Analytics konnten nicht geladen werden: {{error}}`,totalCost:`Gesamtkosten`,costToday:`{{value}} heute`,costTodayUnavailable:`Kosten heute nicht verfügbar`,totalJobs:`Jobs gesamt`,jobsToday:`{{n}} heute`,successRate:`Erfolgsquote`,acrossAllProjects:`über alle Projekte`,avgCostPerJob:`Ø Kosten / Job`,periodAverage:`Durchschnitt im Zeitraum`,averageUnavailable:`Durchschnitt bei unvollständiger Kostentelemetrie nicht verfügbar`,costOverTime:`Projektübergreifende Kosten im Zeitverlauf`,noCostData:`Keine Kostendaten für diesen Zeitraum`,projectComparison:`Projektvergleich`,noProjects:`Keine Projekte registriert.`,jobsCount_one:`{{count}} Job`,jobsCount_other:`{{count}} Jobs`,successPct:`{{pct}} % Erfolg`,costByProject:`Kosten nach Projekt`,includesEstimated:`~{{amount}} geschätzt`,includesEstimatedTooltip:`Enthält {{amount}} geschätzte Kosten aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,includesEstimatedShort:`inkl. geschätzt`,timelineEstimatedTooltip:`Einige Tage enthalten geschätzte Kosten aus der Preistabelle (codex/gemini), markiert mit ~.`,estimatedBadge:`gesch.`,projectEstimatedTooltip:`{{amount}} der Kosten dieses Projekts sind eine Schätzung aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,statusBarEstimatedTooltip:`Enthält geschätzte Kosten aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,costUnavailable:`Aufrufe wurden erfasst, aber die Kostentelemetrie ist nicht verfügbar.`,costUnavailableShort:`nicht verfügbar`,costPartiallyUnavailable:`Bekannte Kosten-Zwischensumme; Aufrufe ohne Kosten: {{count}}.`},m={"7d":`Letzte 7 Tage`,"30d":`Letzte 30 Tage`,"90d":`Letzte 90 Tage`,all:`Gesamter Zeitraum`,custom:`Benutzerdefiniert`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`Zusammenfassung (CSV)`,rawCsv:`Rohdaten (CSV)`,summaryJson:`Zusammenfassung (JSON)`,rawJson:`Rohdaten (JSON)`,downloading:`Wird heruntergeladen…`,noData:`Keine Daten für aktuelle Filter`,failed:`Export fehlgeschlagen`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Verfeinern`,smash:`SMASH`,fileSummary:`Dateizusammenfassungen`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Spec-Starter`,proposal:`Vorschlag`,agentStudio:`Agent Studio`,setup:`Einrichtung`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Alle`,custom:`Benutzerdefiniert`,startDate:`Startdatum`,endDate:`Enddatum`,to:`bis`},n=`{{count}} Lauf`,r=`{{count}} Läufe`,i={title:`Analytics`,all:`Alle`,engine:`Engine`,ticketChip:`Ticket #{{id}} · ✕`,failedToLoad:`Laden fehlgeschlagen: {{error}}`,modelChip:`Modell: {{model}}`,clearModelFilter:`Modellfilter zurücksetzen`},a={spending:`Ausgaben`,vsPrev:`{{pct}} % ggü. Vorperiode`,invocations_one:`{{count}} Aufruf`,invocations_other:`{{count}} Aufrufe`,tokens:`· {{tokens}} Tokens`,tokensTooltip:`Tokens gesamt = neue Eingabe + Ausgabe + Cache-Read + Cache-Create über alle Aufrufe in diesem Zeitraum.`,usageUnavailable:`· Token-Nutzung nicht verfügbar`,usageUnavailableTooltip:`Der Anbieter hat diese Aufrufe abgeschlossen, aber keine Token-Telemetrie bereitgestellt.`,usagePartiallyUnavailable:`· {{tokens}} bekannte Tokens; ohne Daten: {{count}}`,usagePartiallyUnavailableTooltip:`Nur bekannte Token-Zwischensumme; einige Aufrufe haben keine Token-Telemetrie bereitgestellt.`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Der Anbieter hat diese Aufrufe abgeschlossen, aber nicht genügend Telemetrie zur Kostenermittlung bereitgestellt.`,costPartiallyUnavailable:`· bekannte Zwischensumme; ohne Kosten: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Kosten-Zwischensumme; einige Aufrufe haben nicht genügend Telemetrie zur Kostenermittlung bereitgestellt.`,includesEstimated:`· enthält ~{{amount}} geschätzt`,includesEstimatedTooltip:`Enthält {{amount}} geschätzte Kosten von Providern ohne natives Kostenfeld (z. B. codex über die lokale Preistabelle).`,trackingStarted:`Tracking gestartet am {{date}}`,trackingStartedFallback:`Tracking beginnt mit dem ersten Aufruf`,emptyState:`Noch keine Aufrufe für diesen Filterzeitraum.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Nach Provider`,description:`So verteilen sich die Kosten auf die KI-CLIs in diesem Projekt. Das Präfix <tilde>~</tilde> markiert Zeilen, deren Kosten über die lokale Preistabelle geschätzt sind (der Provider meldet sie nicht nativ).`,noCost:`Noch keine Kosten in diesem Zeitraum erfasst.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Dieser Anbieter lief, aber sein Modell ist nicht in der Preistabelle, daher konnten keine Kosten berechnet werden.`,costPartiallyUnavailable:`· nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe sind keine Kosten verfügbar.`},s={title:`Täglicher Verlauf`,subtitle:`gestapelt nach Surface`,empty:`Keine Ausgaben in diesem Zeitraum.`,costUnavailable:`Aufrufe wurden erfasst, aber die Kostentelemetrie ist nicht verfügbar.`,costPartiallyUnavailable:`bekannte Kosten · nicht verfügbar: {{count}}`},c={title:`Quick vs. Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Probiere Explore für reichhaltigere Specs`,runsSoFar_one:`bisher {{count}} Lauf`,runsSoFar_other:`bisher {{count}} Läufe`,perSpec:`pro Spec`,createdRuns:`<strong>{{created}}</strong> erstellt · {{runs}} Läufe`,avgDuration:`Ø {{duration}}`,ratio:`{{ratio}}× mehr pro Spec`,estimatedTooltip:`Geschätzte Kosten (Rückgriff auf Preistabelle für codex/gemini, nicht vom Anbieter abgerechnet)`,estimatedFootnote:`~ Enthält geschätzte Kosten (codex/gemini)`,costUnavailable:`Kosten pro Spec nicht verfügbar`,costUnavailableTooltip:`Ein Durchschnitt pro Spec kann nicht berechnet werden, da für mindestens einen Aufruf die Kostentelemetrie fehlt.`},l={title:`Modelle`,empty:`Keine Modelle erfasst.`,estimatedTooltip:`Geschätzt aus der lokalen Preistabelle — dieser Anbieter meldet die Kosten nicht nativ.`,others:`Andere`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`Für alle Aufrufe dieses Modells fehlt die Kostentelemetrie.`,costPartiallyUnavailable:`· nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe dieses Modells fehlen Kostendaten.`},u={title:`Kosten vs. Turns`,empty:`Keine Aufrufe zum Darstellen.`,turnsLabel:`Turns`,costLabel:`Kosten`,truncated:`Zeige {{shown}} von {{total}} — der teuerste Punkt bleibt erhalten, frühere Punkte werden ausgeblendet`,costUnavailable:`Aufrufe wurden erfasst, aber es sind keine Kostendaten zum Darstellen verfügbar.`,costPartiallyUnavailable:`Das Diagramm enthält nur Aufrufe mit Kosten; Kosten nicht verfügbar: {{count}}.`},d={title:`Top-Tickets`,empty:`Keine Ticket-Aktivität in diesem Zeitraum.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Nicht zugeordnet`,deletedTicket:`gelöschtes Ticket #{{id}}`,costUnavailable:`Kosten nicht verfügbar`,costUnavailableTooltip:`Keiner der Aufrufe dieses Tickets hat Kostentelemetrie bereitgestellt.`,costPartiallyUnavailable:`nicht verfügbar: {{count}}`,costPartiallyUnavailableTooltip:`Nur bekannte Zwischensumme; für einige Aufrufe dieses Tickets sind keine Kosten verfügbar.`},f={title:`Alle Aufrufe`,statusFilterAria:`Statusfilter`,minCostFilterAria:`Mindestkosten-Filter`,minCostPlaceholder:`≥ $0.00`,allStatus:`Alle Status`,success:`Erfolgreich`,failed:`Fehlgeschlagen`,aborted:`Abgebrochen`,empty:`Keine Aufrufe entsprechen den aktuellen Filtern.`,colSurface:`Surface`,colTicket:`Ticket`,colCost:`Kosten`,colTurns:`Turns`,colTokens:`Tokens`,colModel:`Modell`,colStatus:`Status`,colStarted:`Gestartet`,contractLayer:`Contract Layer`,contractLayerRefinement:`Contract-Layer-Verfeinerung`,deleted:`(gelöscht)`,provisionalTitleTooltip:`Vorläufiger Explore-Titel – noch nicht committet`,estimatedCostTooltip:`Geschätzt anhand der lokalen Preistabelle – dieser Provider meldet Kosten nicht nativ.`,inferred:`abgeleitet`,statusValue:{success:`erfolgreich`,failed:`fehlgeschlagen`,aborted:`abgebrochen`},truncated:`Zeige die ersten {{shown}} von {{total}} passenden Zeilen.`,colProvider:`Anbieter`,sortLabel:`Sortieren`,sortRecency:`Neueste`,sortCost:`Kosten`},p={title:`Desktop-Analytics`,refreshAria:`Analytics aktualisieren`,failedToLoad:`Analytics konnten nicht geladen werden: {{error}}`,totalCost:`Gesamtkosten`,costToday:`{{value}} heute`,costTodayUnavailable:`Kosten heute nicht verfügbar`,totalJobs:`Jobs gesamt`,jobsToday:`{{n}} heute`,successRate:`Erfolgsquote`,acrossAllProjects:`über alle Projekte`,avgCostPerJob:`Ø Kosten / Job`,periodAverage:`Durchschnitt im Zeitraum`,averageUnavailable:`Durchschnitt bei unvollständiger Kostentelemetrie nicht verfügbar`,costOverTime:`Projektübergreifende Kosten im Zeitverlauf`,noCostData:`Keine Kostendaten für diesen Zeitraum`,projectComparison:`Projektvergleich`,noProjects:`Keine Projekte registriert.`,jobsCount_one:`{{count}} Job`,jobsCount_other:`{{count}} Jobs`,successPct:`{{pct}} % Erfolg`,costByProject:`Kosten nach Projekt`,includesEstimated:`~{{amount}} geschätzt`,includesEstimatedTooltip:`Enthält {{amount}} geschätzte Kosten aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,includesEstimatedShort:`inkl. geschätzt`,timelineEstimatedTooltip:`Einige Tage enthalten geschätzte Kosten aus der Preistabelle (codex/gemini), markiert mit ~.`,estimatedBadge:`gesch.`,projectEstimatedTooltip:`{{amount}} der Kosten dieses Projekts sind eine Schätzung aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,statusBarEstimatedTooltip:`Enthält geschätzte Kosten aus der Preistabelle (codex/gemini), nicht vom Anbieter abgerechnet.`,costUnavailable:`Aufrufe wurden erfasst, aber die Kostentelemetrie ist nicht verfügbar.`,costUnavailableShort:`nicht verfügbar`,costPartiallyUnavailable:`Bekannte Kosten-Zwischensumme; Aufrufe ohne Kosten: {{count}}.`},m={"7d":`Letzte 7 Tage`,"30d":`Letzte 30 Tage`,"90d":`Letzte 90 Tage`,all:`Gesamter Zeitraum`,custom:`Benutzerdefiniert`},h={title:`Agent-Missionen`,subtitle:`An dieses Projekt angeheftete Agent-Chat-Züge`,vsPrev:`ggü. Vorperiode`,turnsAndTokens:`{{turns}} Züge · {{tokens}} Tokens`,untitled:`Unbenannte Mission`,estimatedNote:`Enthält geschätzte Kosten`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`Zusammenfassung (CSV)`,rawCsv:`Rohdaten (CSV)`,summaryJson:`Zusammenfassung (JSON)`,rawJson:`Rohdaten (JSON)`,downloading:`Wird heruntergeladen…`,noData:`Keine Daten für aktuelle Filter`,failed:`Export fehlgeschlagen`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
@@ -1 +1 @@
1
- var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Refinamento`,smash:`SMASH`,fileSummary:`Resumos de ficheiros`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lançador de specs`,proposal:`Proposta`,agentStudio:`Agent Studio`,setup:`Configuração`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Tudo`,custom:`Personalizado`,startDate:`Data de início`,endDate:`Data de fim`,to:`até`},n=`{{count}} execução`,r=`{{count}} execuções`,i={title:`Analytics`,all:`Tudo`,engine:`Motor`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Falha ao carregar: {{error}}`,modelChip:`Modelo: {{model}}`,clearModelFilter:`Limpar filtro de modelo`},a={spending:`Gastos`,vsPrev:`{{pct}}% vs anterior`,invocations_one:`{{count}} invocação`,invocations_other:`{{count}} invocações`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Total de tokens = input novo + output + leitura de cache + criação de cache em todas as invocações desta janela.`,usageUnavailable:`· utilização de tokens indisponível`,usageUnavailableTooltip:`O fornecedor concluiu estas invocações, mas não forneceu telemetria de tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens conhecidos; sem dados: {{count}}`,usagePartiallyUnavailableTooltip:`Apenas o subtotal conhecido de tokens; algumas invocações não forneceram telemetria de tokens.`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`O fornecedor concluiu estas invocações, mas não forneceu telemetria suficiente para determinar o custo.`,costPartiallyUnavailable:`· subtotal conhecido; sem custo: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido de custo; algumas invocações não forneceram telemetria suficiente para determinar o custo.`,includesEstimated:`· inclui ~{{amount}} estimado`,includesEstimatedTooltip:`Inclui {{amount}} de custo estimado de fornecedores sem campo de custo nativo (p. ex. codex através da tabela de preços local).`,trackingStarted:`Registo iniciado em {{date}}`,trackingStartedFallback:`O registo começa na primeira invocação`,emptyState:`Ainda não há invocações para esta janela de filtros.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Por fornecedor`,description:`Como o custo se divide entre as CLIs de IA deste projeto. O prefixo <tilde>~</tilde> assinala as linhas em que o custo é estimado a partir da tabela de preços local (o fornecedor não o reporta nativamente).`,noCost:`Ainda não há custo registado nesta janela.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`Este fornecedor foi executado, mas não forneceu telemetria suficiente para determinar o custo.`,costPartiallyUnavailable:`· indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; o custo de algumas execuções está indisponível.`},s={title:`Cronologia diária`,subtitle:`empilhada por superfície`,empty:`Sem gastos neste período.`,costUnavailable:`Foram registadas invocações, mas a telemetria de custo está indisponível.`,costPartiallyUnavailable:`custos conhecidos · indisponíveis: {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Experimente o Explore para specs mais ricas`,runsSoFar_one:`{{count}} execução até agora`,runsSoFar_other:`{{count}} execuções até agora`,perSpec:`por spec`,createdRuns:`<strong>{{created}}</strong> criadas · {{runs}} execuções`,avgDuration:`{{duration}} em média`,ratio:`{{ratio}}× mais por spec`,estimatedTooltip:`Custo estimado (estimativa pela tabela de preços para codex/gemini, não faturado pelo provedor)`,estimatedFootnote:`~ Inclui custos estimados (codex/gemini)`,costUnavailable:`custo por spec indisponível`,costUnavailableTooltip:`Não é possível calcular a média por spec porque uma ou mais execuções não forneceram telemetria de custo.`},l={title:`Modelos`,empty:`Nenhum modelo registado.`,estimatedTooltip:`Estimado a partir da tabela de preços local — este provedor não informa o custo nativamente.`,others:`Outros`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`A telemetria de custo está indisponível para todas as execuções deste modelo.`,costPartiallyUnavailable:`· indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; algumas execuções deste modelo não têm telemetria de custo.`},u={title:`Custo vs Turnos`,empty:`Sem invocações para representar.`,turnsLabel:`turnos`,costLabel:`custo`,truncated:`Mostrando {{shown}} de {{total}} — o ponto mais caro é mantido, mas os pontos anteriores ficam ocultos`,costUnavailable:`Foram registadas invocações, mas não existe telemetria de custo disponível para representar.`,costPartiallyUnavailable:`O gráfico inclui apenas execuções com custo; custo indisponível: {{count}}.`},d={title:`Top tickets`,empty:`Sem atividade de tickets neste período.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Sem atribuição`,deletedTicket:`ticket eliminado #{{id}}`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`Nenhuma execução deste ticket forneceu telemetria de custo.`,costPartiallyUnavailable:`indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; algumas execuções deste ticket têm custo indisponível.`},f={title:`Todas as invocações`,statusFilterAria:`Filtro de estado`,minCostFilterAria:`Filtro de custo mínimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Todos os estados`,success:`Sucesso`,failed:`Falhadas`,aborted:`Abortadas`,empty:`Nenhuma invocação corresponde aos filtros atuais.`,colSurface:`Superfície`,colTicket:`Ticket`,colCost:`Custo`,colTurns:`Turnos`,colTokens:`Tokens`,colModel:`Modelo`,colStatus:`Estado`,colStarted:`Início`,contractLayer:`Contract Layer`,contractLayerRefinement:`Refinamento do Contract Layer`,deleted:`(eliminado)`,provisionalTitleTooltip:`Título provisório do Explore — ainda não confirmado`,estimatedCostTooltip:`Estimado a partir da tabela de preços local — este fornecedor não reporta o custo nativamente.`,inferred:`inferido`,statusValue:{success:`sucesso`,failed:`falhada`,aborted:`abortada`},truncated:`A mostrar as primeiras {{shown}} de {{total}} linhas correspondentes.`,colProvider:`Provedor`,sortLabel:`Ordenar`,sortRecency:`Recente`,sortCost:`Custo`},p={title:`Analytics do Desktop`,refreshAria:`Atualizar analytics`,failedToLoad:`Falha ao carregar as analytics: {{error}}`,totalCost:`Custo total`,costToday:`{{value}} hoje`,costTodayUnavailable:`custo indisponível hoje`,totalJobs:`Total de jobs`,jobsToday:`{{n}} hoje`,successRate:`Taxa de sucesso`,acrossAllProjects:`em todos os projetos`,avgCostPerJob:`Custo médio / job`,periodAverage:`média do período`,averageUnavailable:`média indisponível com telemetria de custo incompleta`,costOverTime:`Custo entre projetos ao longo do tempo`,noCostData:`Sem dados de custo para este período`,projectComparison:`Comparação de projetos`,noProjects:`Nenhum projeto registado.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}}% de sucesso`,costByProject:`Custo por projeto`,includesEstimated:`~{{amount}} estimado`,includesEstimatedTooltip:`Inclui {{amount}} de custo estimado pela tabela de preços (codex/gemini), não faturado pelo provedor.`,includesEstimatedShort:`incl. estimado`,timelineEstimatedTooltip:`Alguns dias incluem custo estimado pela tabela de preços (codex/gemini) marcado com ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} do custo deste projeto é uma estimativa pela tabela de preços (codex/gemini), não faturado pelo provedor.`,statusBarEstimatedTooltip:`Inclui custo estimado pela tabela de preços (codex/gemini), não faturado pelo provedor.`,costUnavailable:`Foram registadas invocações, mas a telemetria de custo está indisponível.`,costUnavailableShort:`indisponível`,costPartiallyUnavailable:`Subtotal de custo conhecido; invocações sem custo: {{count}}.`},m={"7d":`Últimos 7 dias`,"30d":`Últimos 30 dias`,"90d":`Últimos 90 dias`,all:`Todo o período`,custom:`Intervalo personalizado`},h={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV de resumo`,rawCsv:`CSV em bruto`,summaryJson:`JSON de resumo`,rawJson:`JSON em bruto`,downloading:`A transferir…`,noData:`Sem dados para os filtros atuais`,failed:`Falha na exportação`},desktop:p,windowLabels:m};export{h as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};
1
+ var e={job:`Jobs`,quickSpec:`Quick`,exploreSpec:`Explore`,aiEdit:`Refinamento`,smash:`SMASH`,fileSummary:`Resumos de ficheiros`,loop:`Loops`,chatSidebar:`Chat`,specLauncher:`Lançador de specs`,proposal:`Proposta`,agentStudio:`Agent Studio`,setup:`Configuração`},t={d7:`7d`,d30:`30d`,d90:`90d`,all:`Tudo`,custom:`Personalizado`,startDate:`Data de início`,endDate:`Data de fim`,to:`até`},n=`{{count}} execução`,r=`{{count}} execuções`,i={title:`Analytics`,all:`Tudo`,engine:`Motor`,ticketChip:`ticket #{{id}} · ✕`,failedToLoad:`Falha ao carregar: {{error}}`,modelChip:`Modelo: {{model}}`,clearModelFilter:`Limpar filtro de modelo`},a={spending:`Gastos`,vsPrev:`{{pct}}% vs anterior`,invocations_one:`{{count}} invocação`,invocations_other:`{{count}} invocações`,tokens:`· {{tokens}} tokens`,tokensTooltip:`Total de tokens = input novo + output + leitura de cache + criação de cache em todas as invocações desta janela.`,usageUnavailable:`· utilização de tokens indisponível`,usageUnavailableTooltip:`O fornecedor concluiu estas invocações, mas não forneceu telemetria de tokens.`,usagePartiallyUnavailable:`· {{tokens}} tokens conhecidos; sem dados: {{count}}`,usagePartiallyUnavailableTooltip:`Apenas o subtotal conhecido de tokens; algumas invocações não forneceram telemetria de tokens.`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`O fornecedor concluiu estas invocações, mas não forneceu telemetria suficiente para determinar o custo.`,costPartiallyUnavailable:`· subtotal conhecido; sem custo: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido de custo; algumas invocações não forneceram telemetria suficiente para determinar o custo.`,includesEstimated:`· inclui ~{{amount}} estimado`,includesEstimatedTooltip:`Inclui {{amount}} de custo estimado de fornecedores sem campo de custo nativo (p. ex. codex através da tabela de preços local).`,trackingStarted:`Registo iniciado em {{date}}`,trackingStartedFallback:`O registo começa na primeira invocação`,emptyState:`Ainda não há invocações para esta janela de filtros.`,segmentTitle:`{{label}}: {{value}}`},o={title:`Por fornecedor`,description:`Como o custo se divide entre as CLIs de IA deste projeto. O prefixo <tilde>~</tilde> assinala as linhas em que o custo é estimado a partir da tabela de preços local (o fornecedor não o reporta nativamente).`,noCost:`Ainda não há custo registado nesta janela.`,segmentTitle:`{{label}}: {{value}} ({{count}})`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`Este fornecedor foi executado, mas não forneceu telemetria suficiente para determinar o custo.`,costPartiallyUnavailable:`· indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; o custo de algumas execuções está indisponível.`},s={title:`Cronologia diária`,subtitle:`empilhada por superfície`,empty:`Sem gastos neste período.`,costUnavailable:`Foram registadas invocações, mas a telemetria de custo está indisponível.`,costPartiallyUnavailable:`custos conhecidos · indisponíveis: {{count}}`},c={title:`Quick vs Explore`,quick:`Quick`,explore:`Explore`,sparseCta:`Experimente o Explore para specs mais ricas`,runsSoFar_one:`{{count}} execução até agora`,runsSoFar_other:`{{count}} execuções até agora`,perSpec:`por spec`,createdRuns:`<strong>{{created}}</strong> criadas · {{runs}} execuções`,avgDuration:`{{duration}} em média`,ratio:`{{ratio}}× mais por spec`,estimatedTooltip:`Custo estimado (estimativa pela tabela de preços para codex/gemini, não faturado pelo provedor)`,estimatedFootnote:`~ Inclui custos estimados (codex/gemini)`,costUnavailable:`custo por spec indisponível`,costUnavailableTooltip:`Não é possível calcular a média por spec porque uma ou mais execuções não forneceram telemetria de custo.`},l={title:`Modelos`,empty:`Nenhum modelo registado.`,estimatedTooltip:`Estimado a partir da tabela de preços local — este provedor não informa o custo nativamente.`,others:`Outros`,costUnavailableWithRuns:`— · {{count}}`,costUnavailableTooltip:`A telemetria de custo está indisponível para todas as execuções deste modelo.`,costPartiallyUnavailable:`· indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; algumas execuções deste modelo não têm telemetria de custo.`},u={title:`Custo vs Turnos`,empty:`Sem invocações para representar.`,turnsLabel:`turnos`,costLabel:`custo`,truncated:`Mostrando {{shown}} de {{total}} — o ponto mais caro é mantido, mas os pontos anteriores ficam ocultos`,costUnavailable:`Foram registadas invocações, mas não existe telemetria de custo disponível para representar.`,costPartiallyUnavailable:`O gráfico inclui apenas execuções com custo; custo indisponível: {{count}}.`},d={title:`Top tickets`,empty:`Sem atividade de tickets neste período.`,breakdownItem:`{{n}} {{label}}`,unattributed:`Sem atribuição`,deletedTicket:`ticket eliminado #{{id}}`,costUnavailable:`custo indisponível`,costUnavailableTooltip:`Nenhuma execução deste ticket forneceu telemetria de custo.`,costPartiallyUnavailable:`indisponíveis: {{count}}`,costPartiallyUnavailableTooltip:`Apenas o subtotal conhecido; algumas execuções deste ticket têm custo indisponível.`},f={title:`Todas as invocações`,statusFilterAria:`Filtro de estado`,minCostFilterAria:`Filtro de custo mínimo`,minCostPlaceholder:`≥ $0.00`,allStatus:`Todos os estados`,success:`Sucesso`,failed:`Falhadas`,aborted:`Abortadas`,empty:`Nenhuma invocação corresponde aos filtros atuais.`,colSurface:`Superfície`,colTicket:`Ticket`,colCost:`Custo`,colTurns:`Turnos`,colTokens:`Tokens`,colModel:`Modelo`,colStatus:`Estado`,colStarted:`Início`,contractLayer:`Contract Layer`,contractLayerRefinement:`Refinamento do Contract Layer`,deleted:`(eliminado)`,provisionalTitleTooltip:`Título provisório do Explore — ainda não confirmado`,estimatedCostTooltip:`Estimado a partir da tabela de preços local — este fornecedor não reporta o custo nativamente.`,inferred:`inferido`,statusValue:{success:`sucesso`,failed:`falhada`,aborted:`abortada`},truncated:`A mostrar as primeiras {{shown}} de {{total}} linhas correspondentes.`,colProvider:`Provedor`,sortLabel:`Ordenar`,sortRecency:`Recente`,sortCost:`Custo`},p={title:`Analytics do Desktop`,refreshAria:`Atualizar analytics`,failedToLoad:`Falha ao carregar as analytics: {{error}}`,totalCost:`Custo total`,costToday:`{{value}} hoje`,costTodayUnavailable:`custo indisponível hoje`,totalJobs:`Total de jobs`,jobsToday:`{{n}} hoje`,successRate:`Taxa de sucesso`,acrossAllProjects:`em todos os projetos`,avgCostPerJob:`Custo médio / job`,periodAverage:`média do período`,averageUnavailable:`média indisponível com telemetria de custo incompleta`,costOverTime:`Custo entre projetos ao longo do tempo`,noCostData:`Sem dados de custo para este período`,projectComparison:`Comparação de projetos`,noProjects:`Nenhum projeto registado.`,jobsCount_one:`{{count}} job`,jobsCount_other:`{{count}} jobs`,successPct:`{{pct}}% de sucesso`,costByProject:`Custo por projeto`,includesEstimated:`~{{amount}} estimado`,includesEstimatedTooltip:`Inclui {{amount}} de custo estimado pela tabela de preços (codex/gemini), não faturado pelo provedor.`,includesEstimatedShort:`incl. estimado`,timelineEstimatedTooltip:`Alguns dias incluem custo estimado pela tabela de preços (codex/gemini) marcado com ~.`,estimatedBadge:`est.`,projectEstimatedTooltip:`{{amount}} do custo deste projeto é uma estimativa pela tabela de preços (codex/gemini), não faturado pelo provedor.`,statusBarEstimatedTooltip:`Inclui custo estimado pela tabela de preços (codex/gemini), não faturado pelo provedor.`,costUnavailable:`Foram registadas invocações, mas a telemetria de custo está indisponível.`,costUnavailableShort:`indisponível`,costPartiallyUnavailable:`Subtotal de custo conhecido; invocações sem custo: {{count}}.`},m={"7d":`Últimos 7 dias`,"30d":`Últimos 30 dias`,"90d":`Últimos 90 dias`,all:`Todo o período`,custom:`Intervalo personalizado`},h={title:`Missões do agente`,subtitle:`Turnos do Agent Chat afixados a este projeto`,vsPrev:`vs período anterior`,turnsAndTokens:`{{turns}} turnos · {{tokens}} tokens`,untitled:`Missão sem título`,estimatedNote:`Inclui custos estimados`},g={surfaces:e,periods:t,runs_one:n,runs_other:r,page:i,hero:a,providerCard:o,timeline:s,quickVsExplore:c,models:l,scatter:u,topTickets:d,table:f,export:{summaryCsv:`CSV de resumo`,rawCsv:`CSV em bruto`,summaryJson:`JSON de resumo`,rawJson:`JSON em bruto`,downloading:`A transferir…`,noData:`Sem dados para os filtros atuais`,failed:`Falha na exportação`},desktop:p,windowLabels:m,agentMissions:h};export{h as agentMissions,g as default,p as desktop,a as hero,l as models,i as page,t as periods,o as providerCard,c as quickVsExplore,n as runs_one,r as runs_other,u as scatter,e as surfaces,f as table,s as timeline,d as topTickets,m as windowLabels};