specrails-desktop 2.57.0 → 2.58.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/cli/dist/args.js +10 -4
- package/cli/dist/help.js +1 -1
- package/client/dist/assets/{ActivityFeedPage-DdMNmVBk.js → ActivityFeedPage-BQGppIR0.js} +1 -1
- package/client/dist/assets/{AgentBrowserCapture-CeerUf--.js → AgentBrowserCapture-PI-cxyxi.js} +1 -1
- package/client/dist/assets/{AgentModeAnalyticsPane-BjGb-8rh.js → AgentModeAnalyticsPane-mQsOqdXx.js} +2 -2
- package/client/dist/assets/{AgentModeCodePane-8XRkQEo_.js → AgentModeCodePane-BL-vpmlY.js} +2 -2
- package/client/dist/assets/{AgentModeJobsPane-BN3dgJOA.js → AgentModeJobsPane-DR_06oqH.js} +1 -1
- package/client/dist/assets/AgentsPage-BKIKjm_1.js +118 -0
- package/client/dist/assets/{AnalyticsPage-CyfhYiBn.js → AnalyticsPage-069npRVo.js} +1 -1
- package/client/dist/assets/{CodePage-C2Nf-Q5W.js → CodePage-Alitorrv.js} +2 -2
- package/client/dist/assets/DesktopAnalyticsPage-qtWAPM47.js +1 -0
- package/client/dist/assets/{DocsDialog-Br3bczCp.js → DocsDialog-DwL6rgcT.js} +1 -1
- package/client/dist/assets/{DocsPage-BcDr2cBm.js → DocsPage-BA1hiJZ-.js} +1 -1
- package/client/dist/assets/{ExportDropdown-BVGKEgkd.js → ExportDropdown-BcMpvV89.js} +1 -1
- package/client/dist/assets/InteractiveJobComposer-B3H1YHr6.js +19 -0
- package/client/dist/assets/JobDetailModal-XZQ9eAAy.js +1 -0
- package/client/dist/assets/{JobDetailPage-vBbNeRuz.js → JobDetailPage-B-SIaq_q.js} +1 -1
- package/client/dist/assets/{JobsPage-CJCtPhIz.js → JobsPage-iQXAv2mx.js} +1 -1
- package/client/dist/assets/LoopBuilderPage-B_gbFAHn.js +1 -0
- package/client/dist/assets/LoopPreviewModal-je5pSCf-.js +1 -0
- package/client/dist/assets/LoopsPage-BZwcY5cu.js +2 -0
- package/client/dist/assets/{MinimizedChatsContext-D3QzgV0B.js → MinimizedChatsContext-CNx_0bZu.js} +1 -1
- package/client/dist/assets/{PluginsPage-DOpTV75p.js → PluginsPage-DFocnoHX.js} +2 -2
- package/client/dist/assets/{ProjectSettingsDialog-Dkwrn0z1.js → ProjectSettingsDialog-Bh3S6EBB.js} +1 -1
- package/client/dist/assets/{RepositoryDeliveries-Du2UCf1a.js → RepositoryDeliveries-BiwJuS8r.js} +1 -1
- package/client/dist/assets/{RepositoryScopeSelector-hPGZNRBm.js → RepositoryScopeSelector-C2mvWBQ6.js} +1 -1
- package/client/dist/assets/{ReviewPacketPage-DcOq-UTA.js → ReviewPacketPage-CrAf-WDy.js} +2 -2
- package/client/dist/assets/TemplatePreviewModal-C7DordpN.js +1 -0
- package/client/dist/assets/{TicketDetailModalContext-DAK-NoK6.js → TicketDetailModalContext-B-DySpKL.js} +1 -1
- package/client/dist/assets/{Trans-DEbgkuAY.js → Trans-D3AfDylf.js} +1 -1
- package/client/dist/assets/agentRuntime-BeUb3g9g.js +1 -0
- package/client/dist/assets/agentRuntime-Bg9tbmqm.js +1 -0
- package/client/dist/assets/agentRuntime-D-GJVGkj.js +1 -0
- package/client/dist/assets/agentRuntime-D2__CVI_.js +1 -0
- package/client/dist/assets/agentRuntime-D35dGVOP.js +1 -0
- package/client/dist/assets/agentRuntime-DGz_IqKW.js +1 -0
- package/client/dist/assets/agentRuntime-O1liDt6G.js +1 -0
- package/client/dist/assets/agentRuntime-hInH9Fzj.js +1 -0
- package/client/dist/assets/agentstudio-B2CTtQgZ.js +1 -0
- package/client/dist/assets/agentstudio-BWAKeGgB.js +1 -0
- package/client/dist/assets/{agentstudio-DR7doNBV.js → agentstudio-Cja8Sjcp.js} +1 -1
- package/client/dist/assets/agentstudio-DtfPcr99.js +1 -0
- package/client/dist/assets/agentstudio-QdAJIDef.js +1 -0
- package/client/dist/assets/agentstudio-X70BKf6u.js +1 -0
- package/client/dist/assets/agentstudio-fLXpRGIi.js +1 -0
- package/client/dist/assets/agentstudio-qXKqVnWS.js +1 -0
- package/client/dist/assets/{analytics-jzCkOec3.js → analytics-B1DIQd4m.js} +1 -1
- package/client/dist/assets/{analytics-CoEzWPx4.js → analytics-BAIZ9vE_.js} +1 -1
- package/client/dist/assets/{analytics-DjLlE7jS.js → analytics-BTqgmgBd.js} +1 -1
- package/client/dist/assets/analytics-BWynXPEm.js +1 -0
- package/client/dist/assets/{analytics-nZIjjtCc.js → analytics-DGcUsQ44.js} +1 -1
- package/client/dist/assets/{analytics-BNgZ1Nj7.js → analytics-GnSnpJ4W.js} +1 -1
- package/client/dist/assets/{analytics-DFh5lSOl.js → analytics-TWgYaoO0.js} +1 -1
- package/client/dist/assets/{analytics-DZp-DS2U.js → analytics-kJy6Tuko.js} +1 -1
- package/client/dist/assets/builder-C0FyvM83.js +1 -0
- package/client/dist/assets/builder-C1neIYGR.js +1 -0
- package/client/dist/assets/builder-CvnFm0im.js +1 -0
- package/client/dist/assets/builder-CzW5ovyI.js +1 -0
- package/client/dist/assets/builder-D06L7iPy.js +1 -0
- package/client/dist/assets/builder-DGETbtZj.js +1 -0
- package/client/dist/assets/builder-DXEJUlC0.js +1 -0
- package/client/dist/assets/builder-DyQperXU.js +1 -0
- package/client/dist/assets/common-BCK7c9Pv.js +1 -0
- package/client/dist/assets/common-C0BOdeNi.js +1 -0
- package/client/dist/assets/common-C4Yvvhp6.js +1 -0
- package/client/dist/assets/{common-BrlwEnL7.js → common-DmsclwjP.js} +1 -1
- package/client/dist/assets/common-DpLWwgI1.js +1 -0
- package/client/dist/assets/common-OCvl3c8t.js +1 -0
- package/client/dist/assets/common-c0aujEZC.js +1 -0
- package/client/dist/assets/common-od8WThlf.js +1 -0
- package/client/dist/assets/dashboard-B1ndRHuC.js +1 -0
- package/client/dist/assets/dashboard-BX7KXiqA.js +1 -0
- package/client/dist/assets/dashboard-B_BSNxcN.js +1 -0
- package/client/dist/assets/dashboard-CCeFN7-V.js +1 -0
- package/client/dist/assets/dashboard-CRl0WtFJ.js +1 -0
- package/client/dist/assets/dashboard-XGdQ5mjw.js +1 -0
- package/client/dist/assets/dashboard-_oltA6Jd.js +1 -0
- package/client/dist/assets/dashboard-bAuf5KVk.js +1 -0
- package/client/dist/assets/{formatDistanceToNow-Cc2u5FwQ.js → formatDistanceToNow-aBss1Nai.js} +1 -1
- package/client/dist/assets/{getTimezoneOffsetInMilliseconds-BHm2U-w1.js → getTimezoneOffsetInMilliseconds-DOGj1Mfz.js} +1 -1
- package/client/dist/assets/index-BS7KCWkV.css +2 -0
- package/client/dist/assets/{index-Cxb288Rj.js → index-C4Mv6tV6.js} +32 -32
- package/client/dist/assets/{jira-api-DrGxiD9p.js → jira-api-BYbEPlkr.js} +1 -1
- package/client/dist/assets/{jobs-DSp9DoD_.js → jobs-6_-r75yC.js} +1 -1
- package/client/dist/assets/{jobs-C6qmvUAi.js → jobs-B1yqyId5.js} +1 -1
- package/client/dist/assets/{jobs-DoFaEl9g.js → jobs-BFuV7ttH.js} +1 -1
- package/client/dist/assets/{jobs-DTQO08nJ.js → jobs-BKa8LuwA.js} +1 -1
- package/client/dist/assets/{jobs-DrF8Do8s.js → jobs-BKiK-ZWh.js} +1 -1
- package/client/dist/assets/{jobs-DLHdDkHc.js → jobs-DmKV7b7d.js} +1 -1
- package/client/dist/assets/{jobs-C9j2PuwW.js → jobs-KG4Sn12X.js} +1 -1
- package/client/dist/assets/{jobs-Dpw6AEOP.js → jobs-pPv4KWjb.js} +1 -1
- package/client/dist/assets/loop-layout-BF8xMiNv.js +7 -0
- package/client/dist/assets/loops-B4_D-nbg.js +1 -0
- package/client/dist/assets/loops-BJDY9FTh.js +1 -0
- package/client/dist/assets/loops-BO3V8244.js +1 -0
- package/client/dist/assets/loops-C-hZK8pf.js +1 -0
- package/client/dist/assets/loops-CDOWZ0ci.js +1 -0
- package/client/dist/assets/loops-Dv849ckF.js +1 -0
- package/client/dist/assets/loops-Q9LIgGkq.js +1 -0
- package/client/dist/assets/loops-eUnCfLjC.js +1 -0
- package/client/dist/assets/{project-repositories-9Wzs0coQ.js → project-repositories-CSnfzUpg.js} +1 -1
- package/client/dist/assets/settings-3o4Ntzi5.js +1 -0
- package/client/dist/assets/settings-B97jlkwD.js +1 -0
- package/client/dist/assets/settings-BTaT_bsS.js +1 -0
- package/client/dist/assets/settings-CT8w7WiC.js +1 -0
- package/client/dist/assets/settings-Cvr8_tvh.js +1 -0
- package/client/dist/assets/settings-Dn1qgAC8.js +1 -0
- package/client/dist/assets/settings-EShDdg4J.js +1 -0
- package/client/dist/assets/settings-tfLhQZRN.js +1 -0
- package/client/dist/assets/{setup-Dwzt5nO1.js → setup-CBMu3tqH.js} +1 -1
- package/client/dist/assets/{setup-B5FHuxvB.js → setup-CPh-e6J2.js} +1 -1
- package/client/dist/assets/{setup-DpqzaEEA.js → setup-CRKLp_ke.js} +1 -1
- package/client/dist/assets/{setup-CROyqD5N.js → setup-Cy302v4J.js} +1 -1
- package/client/dist/assets/{setup-C9Fy9PKQ.js → setup-D681vTPf.js} +1 -1
- package/client/dist/assets/{setup-BihzXadx.js → setup-DYK0VBkE.js} +1 -1
- package/client/dist/assets/{setup-BtC6Hg4K.js → setup-KAuiIiVs.js} +1 -1
- package/client/dist/assets/{setup-zLEDnG7N.js → setup-OGX-oCfI.js} +1 -1
- package/client/dist/assets/{spending-T5GM7wpn.js → spending-HBSk-6jv.js} +1 -1
- package/client/dist/assets/{useDesktop-QogiN0zR.js → useDesktop-0unHDBJJ.js} +1 -1
- package/client/dist/assets/useRuntimeRuns-BN1rhyEm.js +1 -0
- package/client/dist/assets/{useSharedWebSocket-Dz-HI6De.js → useSharedWebSocket-BZMrX4jr.js} +2 -2
- package/client/dist/index.html +25 -25
- package/docs/agent-live-steering.md +16 -0
- package/docs/cli.md +7 -7
- package/docs/codex.md +2 -2
- package/docs/customizing.md +1 -1
- package/docs/gemini.md +1 -1
- package/docs/getting-started.md +1 -1
- package/docs/guide/de/integrations/7-local-engines.md +1 -1
- package/docs/guide/de/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/de/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/de/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/de/pipeline/5-the-loop-builder.md +24 -5
- package/docs/guide/en/integrations/7-local-engines.md +1 -1
- package/docs/guide/en/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/en/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/en/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/en/pipeline/5-the-loop-builder.md +34 -5
- package/docs/guide/en/settings/3-pipeline-telemetry-and-diagnostics.md +1 -1
- package/docs/guide/es/integrations/7-local-engines.md +1 -1
- package/docs/guide/es/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/es/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/es/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/es/pipeline/5-the-loop-builder.md +30 -5
- package/docs/guide/es/settings/3-pipeline-telemetry-and-diagnostics.md +1 -2
- package/docs/guide/fr/integrations/7-local-engines.md +1 -1
- package/docs/guide/fr/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/fr/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/fr/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/fr/pipeline/5-the-loop-builder.md +24 -5
- package/docs/guide/it/integrations/7-local-engines.md +1 -1
- package/docs/guide/it/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/it/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/it/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/it/pipeline/5-the-loop-builder.md +24 -5
- package/docs/guide/ja/integrations/7-local-engines.md +1 -1
- package/docs/guide/ja/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/ja/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/ja/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/ja/pipeline/5-the-loop-builder.md +24 -5
- package/docs/guide/pt/integrations/7-local-engines.md +1 -1
- package/docs/guide/pt/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/pt/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/pt/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/pt/pipeline/5-the-loop-builder.md +24 -5
- package/docs/guide/zh/integrations/7-local-engines.md +1 -1
- package/docs/guide/zh/pipeline/1-rails-and-jobs.md +8 -6
- package/docs/guide/zh/pipeline/2-the-job-detail-view.md +11 -2
- package/docs/guide/zh/pipeline/4-picking-an-engine-per-rail.md +2 -2
- package/docs/guide/zh/pipeline/5-the-loop-builder.md +24 -5
- package/docs/internals/api-reference.md +2 -2
- package/docs/internals/ci-performance.md +71 -0
- package/docs/internals/companion-rails-as-loops-contract.md +4 -3
- package/docs/internals/configuration.md +3 -3
- package/docs/internals/core-runtime-updates.md +3 -2
- package/docs/internals/interactive-jobs.md +2 -2
- package/docs/internals/loop-step-log-explorer.md +42 -0
- package/docs/internals/mission-rail-cards.md +1 -1
- package/docs/internals/operations-runbook.md +22 -0
- package/docs/internals/programmatic-agent-runtime.md +130 -7
- package/docs/internals/project-builder.md +35 -16
- package/docs/internals/source-map.md +48 -2
- package/docs/kimi.md +2 -2
- package/docs/local-providers.md +1 -1
- package/docs/running-pipelines.md +26 -18
- package/docs/tracking-cost.md +10 -1
- package/package.json +2 -1
- package/server/dist/core-compat.js +8 -3
- package/server/dist/core-execution.js +49 -3
- package/server/dist/db/migrations.js +101 -0
- package/server/dist/desktop-db.js +28 -0
- package/server/dist/desktop-router.js +2 -0
- package/server/dist/mcp/guide.js +6 -3
- package/server/dist/mcp/tools/jobs.js +14 -1
- package/server/dist/mcp/tools/loops.js +17 -8
- package/server/dist/mcp/tools/rails.js +3 -3
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-bridge.js +313 -9
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-controls-router.js +34 -1
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-controls.js +203 -21
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-effective-config.js +46 -1
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-engines.js +10 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-loader.js +68 -3
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-metrics.js +16 -8
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-package-gc.js +81 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-package-lock.js +37 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-package.js +30 -24
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-retention-host.js +87 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-retention-quarantine.js +231 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-retention-records.js +32 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-retention.js +102 -0
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-settings-router.js +12 -7
- package/server/dist/modules/agent-runtime/runtime/agent-runtime-settings.js +57 -13
- package/server/dist/modules/agents/runtime/agent-catalog.js +32 -0
- package/server/dist/modules/agents/runtime/agent-refine-manager.js +12 -0
- package/server/dist/modules/agents/runtime/agent-role-descriptor.js +64 -0
- package/server/dist/modules/agents/runtime/profiles-router.js +26 -34
- package/server/dist/modules/builder/runtime/milestone-chain.js +121 -73
- package/server/dist/modules/delivery/runtime/definition-fork.js +158 -0
- package/server/dist/modules/delivery/runtime/delivery-evidence.js +56 -10
- package/server/dist/modules/delivery/runtime/isolated-settlement-reconstruction.js +99 -0
- package/server/dist/modules/delivery/runtime/isolated-settlement-store.js +53 -0
- package/server/dist/modules/delivery/runtime/multi-repo-execution-store.js +3 -1
- package/server/dist/modules/delivery/runtime/rail-isolated-launch.js +388 -203
- package/server/dist/modules/delivery/runtime/rail-launch-parser.js +3 -2
- package/server/dist/modules/delivery/runtime/rail-pr-store.js +6 -1
- package/server/dist/modules/delivery/runtime/rails-router.js +66 -10
- package/server/dist/modules/execution/runtime/queue-manager.js +11 -2
- package/server/dist/modules/loops/runtime/builtin-loops.js +70 -0
- package/server/dist/modules/loops/runtime/definition-cancellation.js +31 -0
- package/server/dist/modules/loops/runtime/legacy-launch-telemetry.js +78 -0
- package/server/dist/modules/loops/runtime/loop-command-catalog.js +13 -12
- package/server/dist/modules/loops/runtime/loop-compat.js +219 -0
- package/server/dist/modules/loops/runtime/loop-core-factory.js +42 -0
- package/server/dist/modules/loops/runtime/loop-definition-controls.js +48 -0
- package/server/dist/modules/loops/runtime/loop-definition-events.js +145 -0
- package/server/dist/modules/loops/runtime/loop-definition-recovery.js +106 -0
- package/server/dist/modules/loops/runtime/loop-definition-run.js +36 -0
- package/server/dist/modules/loops/runtime/loop-definition.js +246 -0
- package/server/dist/modules/loops/runtime/loop-effect.js +10 -1
- package/server/dist/modules/loops/runtime/loop-executors.js +63 -3
- package/server/dist/modules/loops/runtime/loop-factory.js +35 -15
- package/server/dist/modules/loops/runtime/loop-graph.js +84 -8
- package/server/dist/modules/loops/runtime/loop-migration.js +36 -0
- package/server/dist/modules/loops/runtime/loop-preview.js +10 -0
- package/server/dist/modules/loops/runtime/loop-run-manager.js +206 -13
- package/server/dist/modules/loops/runtime/loop-runs-store.js +271 -7
- package/server/dist/modules/loops/runtime/loop-templates.js +205 -45
- package/server/dist/modules/loops/runtime/loops-router.js +246 -29
- package/server/dist/modules/loops/runtime/loops-store.js +140 -20
- package/server/dist/modules/missions/runtime/agent-operator-prompt.js +14 -11
- package/server/dist/modules/specs/runtime/spec-addenda.js +28 -0
- package/server/dist/project-registry.js +87 -51
- package/server/dist/project-router-jobs.js +17 -6
- package/server/dist/project-router-loop-runs.js +200 -0
- package/server/dist/project-router-spending.js +17 -0
- package/server/dist/project-router.js +8 -6
- package/server/dist/schemas/agent-runtime.schema.json +93 -1
- package/server/dist/schemas/workflow-definition.schema.json +312 -0
- package/server/dist/vitest-setup.js +22 -0
- package/server/dist/worktree-overlay.js +1 -1
- package/client/dist/assets/AgentsPage-DfHWgP_x.js +0 -87
- package/client/dist/assets/DesktopAnalyticsPage-tc0p4jJW.js +0 -1
- package/client/dist/assets/InteractiveJobComposer-DFPpdg2D.js +0 -19
- package/client/dist/assets/JobDetailModal-BdOv-l-M.js +0 -1
- package/client/dist/assets/LoopBuilderPage-BemvUOxy.js +0 -7
- package/client/dist/assets/LoopPreviewModal-C6hNAeYN.js +0 -1
- package/client/dist/assets/LoopsPage-BZr0quvh.js +0 -1
- package/client/dist/assets/TemplatePreviewModal-Cejcquah.js +0 -1
- package/client/dist/assets/agentRuntime-BUimiX__.js +0 -1
- package/client/dist/assets/agentRuntime-BcN97sAB.js +0 -1
- package/client/dist/assets/agentRuntime-Ckyg-ahT.js +0 -1
- package/client/dist/assets/agentRuntime-DJCwyX4t.js +0 -1
- package/client/dist/assets/agentRuntime-DVzPJOl0.js +0 -1
- package/client/dist/assets/agentRuntime-V9AZTG3c.js +0 -1
- package/client/dist/assets/agentRuntime-bAAjw1vw.js +0 -1
- package/client/dist/assets/agentRuntime-v4qKAYH-.js +0 -1
- package/client/dist/assets/agentstudio-BNUth0uj.js +0 -1
- package/client/dist/assets/agentstudio-BNdB5hkr.js +0 -1
- package/client/dist/assets/agentstudio-C7-bt8FO.js +0 -1
- package/client/dist/assets/agentstudio-C8uNchpV.js +0 -1
- package/client/dist/assets/agentstudio-CKabyMlg.js +0 -1
- package/client/dist/assets/agentstudio-CN2pokQu.js +0 -1
- package/client/dist/assets/agentstudio-y2dVDXeM.js +0 -1
- package/client/dist/assets/analytics-BlypLLR6.js +0 -1
- package/client/dist/assets/builder-765NeYTp.js +0 -1
- package/client/dist/assets/builder-8MG3V6ea.js +0 -1
- package/client/dist/assets/builder-B-1UBs5K.js +0 -1
- package/client/dist/assets/builder-BTiGnPT0.js +0 -1
- package/client/dist/assets/builder-Cx9Rz-7u.js +0 -1
- package/client/dist/assets/builder-DKFMELBl.js +0 -1
- package/client/dist/assets/builder-OcmKrC0h.js +0 -1
- package/client/dist/assets/builder-P9qVBXFZ.js +0 -1
- package/client/dist/assets/common-B5AZNYMH.js +0 -1
- package/client/dist/assets/common-BFZ0c_vN.js +0 -1
- package/client/dist/assets/common-BttQx3z4.js +0 -1
- package/client/dist/assets/common-CM65k_-e.js +0 -1
- package/client/dist/assets/common-D4mvFFlu.js +0 -1
- package/client/dist/assets/common-TZ9Ny96S.js +0 -1
- package/client/dist/assets/common-nFpSF4GC.js +0 -1
- package/client/dist/assets/dashboard-B9uWNGO2.js +0 -1
- package/client/dist/assets/dashboard-BIwmO9wc.js +0 -1
- package/client/dist/assets/dashboard-BV4vOZkR.js +0 -1
- package/client/dist/assets/dashboard-Bf6MPVsM.js +0 -1
- package/client/dist/assets/dashboard-C8klWVvZ.js +0 -1
- package/client/dist/assets/dashboard-D1ORhPF0.js +0 -1
- package/client/dist/assets/dashboard-DSubvs9x.js +0 -1
- package/client/dist/assets/dashboard-px_vlRx_.js +0 -1
- package/client/dist/assets/index-C51x61Bz.css +0 -2
- package/client/dist/assets/loops-B7YpGizO.js +0 -1
- package/client/dist/assets/loops-BomD2J-h.js +0 -1
- package/client/dist/assets/loops-BrQHSQw3.js +0 -1
- package/client/dist/assets/loops-BvBwvTPA.js +0 -1
- package/client/dist/assets/loops-CODk6Slz.js +0 -1
- package/client/dist/assets/loops-DC6k-Ym-.js +0 -1
- package/client/dist/assets/loops-DSEg8-uY.js +0 -1
- package/client/dist/assets/loops-DhCoXD_v.js +0 -1
- package/client/dist/assets/settings-BsehKpty.js +0 -1
- package/client/dist/assets/settings-CQWob3SB.js +0 -1
- package/client/dist/assets/settings-CgCl0hzy.js +0 -1
- package/client/dist/assets/settings-DLRLd22L.js +0 -1
- package/client/dist/assets/settings-Dn5prAFl.js +0 -1
- package/client/dist/assets/settings-HZSu-K4l.js +0 -1
- package/client/dist/assets/settings-p4OVIyRh.js +0 -1
- package/client/dist/assets/settings-rddaldUp.js +0 -1
- package/client/dist/assets/useRuntimeRuns-Dqmz9fS9.js +0 -1
- package/docs/guide/de/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/docs/guide/en/pipeline/3-batch-implement-and-multi-feature.md +0 -126
- package/docs/guide/es/pipeline/3-batch-implement-and-multi-feature.md +0 -114
- package/docs/guide/fr/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/docs/guide/it/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/docs/guide/ja/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/docs/guide/pt/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/docs/guide/zh/pipeline/3-batch-implement-and-multi-feature.md +0 -84
- package/server/dist/modules/loops/runtime/loop-templates-ported.js +0 -675
- /package/client/dist/assets/{LoopBuilderPage-DtxX27Jz.css → loop-layout-DtxX27Jz.css} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({addProject:()=>n,default:()=>s,instructions:()=>i,onboarding:()=>o,prerequisites:()=>r,welcome:()=>a}),n={title:`Add Project`,description:`Register a project directory to manage it from Specrails.`,noProviderDetected:`No AI CLI detected. Install Claude Code, Codex CLI, Gemini CLI or Kimi Code first.`,pathLabel:`Project path`,pathPlaceholder:`/Users/me/my-project`,pathHint:`Absolute path to the project root`,browseForFolder:`Browse for folder`,selectProjectFolder:`Select project folder`,nameLabel:`Display name`,optional:`(optional)`,namePlaceholder:`My Project`,nameHint:`Defaults to the directory name`,adding:`Adding...`,submit:`Add Project`,toolsRequired_one:`{{tools}} is required to add a project`,toolsRequired_other:`{{tools}} are required to add a project`,errors:{pathRequired:`Project path is required`,addFailed:`Failed to add project`},toasts:{registered:`Project "{{name}}" registered`},chooser:{description:`Bring an existing repository, or build a brand-new project from an idea.`,existingTitle:`Existing project`,existingDescription:`Register a repository that already exists on disk.`,newTitle:`New project`,newDescription:`Describe an idea and get a bootstrapped repo with a Milestone-1 backlog.`}},r={corruptedBundle:`bundle corrupted — reinstall app`,notInstalled:`not installed`,failedToExecute:`found but failed to execute`,failedToExecuteAt:`found at {{path}} but failed to execute`,failedToExecuteWithError:`found but failed to execute ({{error}})`,failedToExecuteAtWithError:`found at {{path}} but failed to execute ({{error}})`,needsMinimum:`{{version}} found — needs {{minVersion}}+`,unknownVersion:`unknown`,installedLabel:`installed`,verifyError:`Could not verify developer tools locally — install will validate.`,allDetected:`All required tools detected`,bundleCorruptedTitle:`App bundle corrupted`,toolsRequired_one:`{{count}} developer tool required`,toolsRequired_other:`{{count}} developer tools required`,reinstallHint:`Reinstall the Specrails app to restore bundled tools.`,installMissingHint:`Install the missing tools to continue.`,moreInfo:`More info`,bundledBadge:`bundled`,optional:`optional`,ghNoAuth:"Not signed in — run `gh auth login`"},i={title:`Install developer tools`,description:`SpecRails needs Node.js, npm, npx, and Git on PATH. Pick the snippet for your OS, run it, then click "I installed it, recheck".`,darwin:{intro:`Homebrew gets you both tools in one line. If you do not have brew, use the official downloads.`,installNodeGit:`Install Node.js and Git via Homebrew`},win32:{intro:`Winget ships with Windows 11 and recent Windows 10. Open PowerShell or Terminal and run:`,installNode:`Install Node.js LTS`,installGit:`Install Git`,note:`After install, restart Specrails so Windows refreshes PATH.`},linux:{intro:`Use your distro package manager:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (official)`,gitOfficial:`Git (official)`,gitWindows:`Git for Windows (official)`},showOtherPlatforms:`Show other platforms`,hideOtherPlatforms:`Hide other platforms`,recheck:`I installed it, recheck`,diagnostics:{copy:`Copy diagnostics`,copied:`Diagnostics copied`,failed:`Copy failed`},corrupted:{title:`App bundle corrupted`,description:`One or more bundled tools (Node.js, Git) could not be verified.`,body:`This tool is bundled with the Specrails app and cannot be installed separately. If you see this message, the app bundle may be corrupted. Please reinstall Specrails.`}},a={title:`Welcome to <spec>spec</spec><rails>rails</rails>`,description:`Specrails manages multiple projects from a single interface. Add your first project to get started.`,addFirstProject:`Add your first project`,jiraHint:`Connect each project to its own Jira board — specs stay in sync, both ways.`,mcpHint:`Connect external AI tools to Specrails over a secure local MCP server — on by default, manage it in Settings → MCP.`,agentChatHint:`Operate Specrails by chatting — a built-in agent drives specs, rails and analytics for you through the local MCP. Open it from the bubble or ⌘⇧A.`,localEnginesHint:`Only a local model? Add an OpenAI-compatible endpoint in Settings → Specrails Agents and every surface — rails, chat, missions — runs on it by default.`},o=JSON.parse(`{"productTour":"Product tour","stepCount":"Step {{current}} of {{total}}","goToStep":"Go to step {{step}}: {{label}}","stepLabel":"Step {{step}}","dontShowAgain":"Don't show this again","skipTour":"Skip tour","getStarted":"Get Started","flow":{"architect":"Architect","developer":"Developer","reviewer":"Reviewer","describe":"Describe","specs":"Specs","rails":"Rails","review":"Review & merge","yourReview":"Your review","blueprint":"Blueprint","approve":"Approve","m1Specs":"Milestone-1 specs","milestones":"Milestones"},"language":{"nav":"Language","title":"Choose your language","subtitle":"Specrails speaks your language","intro":"Pick the language you want the interface in. It applies instantly — this tour included.","note":"You can change it any time in Settings → Language."},"theme":{"nav":"Theme","title":"Pick your look","subtitle":"Built-in themes, applied instantly","intro":"Choose how Specrails should look — the theme applies the moment you click.","note":"You can change it any time in Settings → Appearance."},"welcome":{"nav":"Welcome","title":"Welcome to Specrails","subtitle":"Your local cockpit for shipping software with AI agents","intro":"Specrails turns an idea into shipped code — and lets you <b>see, steer and trust</b> every step. Describe what you want, get precise specs, run them on rails with Claude Code, Codex, Gemini or Kimi, and decide what to merge. Nothing merges without you.","coreLoopLabel":"The core loop","flowCaption":"<b>Describe → Specs → Rails → Review & merge</b>. Every step streams live, and every result waits for your decision.","missionLabel":"Mission mode — the default","missionBody":"One conversation drives the whole app: the agent authors specs, launches rails, checks spend and hands you decision cards. <b>You talk, it operates.</b>","boardLabel":"Board mode — one switch away","boardBody":"The classic dashboard: specs board, rails, jobs, analytics. Flip between the two from the switch in the left sidebar — <b>same projects, same data</b>.","localNote":"<b>100% local · single user · no accounts.</b> Everything runs on your machine. Your code never leaves the laptop unless <i>you</i> spawn an agent against it.","tourNote":"This quick tour walks through everything the app can do — about two minutes."},"mission":{"nav":"Mission mode","title":"Talk — the agent operates","subtitle":"Mission mode is the default surface","intro":"In <b>Mission mode</b> the whole window is one conversation with an agent that drives Specrails through its own <b>MCP tools</b>: “launch the three highest-priority specs”, “how much did I spend this week?”, “write me a spec for dark mode”. Everything it does is live — rails, specs and cards update as it works.","missionsLabel":"Missions & projects","missionsBody":"Each conversation is a mission pinned to a project (or Home for everything). Switch missions from the header, send follow-ups mid-turn — they queue and run in order.","levelsLabel":"You hold the leash","levelsBody":"A live level — <b>Observe → Edit → Operate → Autonomous</b>, cycled with <shift>Shift</shift> <tab>Tab</tab> — caps how far it can go. It never acts above the level you set.","cardsLabel":"Decision cards","cardsBody":"Launches surface as live cards pinned above the composer: rail progress, then Create PR / Integrate locally / Discard, with a plain-language Review. Spec numbers, jobs and loops in replies are clickable.","workspaceLabel":"A workspace at your side","workspaceBody":"The right sidebar opens Blueprint, Jobs, Analytics, an embedded browser, the terminal and the code explorer next to the conversation — no context switch.","mcpLabel":"Runs on the local MCP","mcpBody":"The agent works through the embedded Specrails MCP server — <b>on by default</b>, loopback only. The same server lets your own tools (Claude Desktop, Cursor…) drive Specrails; manage it in Settings → MCP."},"builder":{"nav":"New project","title":"Start a project from an idea","subtitle":"The Builder: blueprint, specs and milestones before a line of code exists","intro":"Add Project → <b>New</b> turns the agent into the <b>Project Builder</b>. Describe the idea; it interviews you briefly (or decides everything with one click), proposes product, core flow, platform, stack and milestones, and you approve or tweak.","flowLabel":"From idea to backlog","flowCaption":"The commit creates the repository, the workspace and the Milestone-1 backlog — optionally a private GitHub repo too.","cardsLabel":"One-click decisions","cardsBody":"“Surprise me” and “Approve & generate specs” appear as cards in the thread; each decision you take stays pinned there as a record.","specsLabel":"Premium specs, honestly audited","specsBody":"Milestone-1 specs are written in full two at a time, then the whole batch is audited — problem, solution, scope, technical considerations, six-plus acceptance criteria — and a deterministic gate blocks anything thin.","milestonesLabel":"Milestones on rails","milestonesBody":"Launch Milestone 1 and it runs as rails of up to three specs, each stacked on the previous one's branch. <b>Wave checkpoints</b> ask before each next rail — or flip auto-continue.","progressLabel":"Live progress","progressBody":"The Blueprint panel shows real counts — delivered, in review, done — never “complete” while anything is unmerged. Later milestones are generated against the real repository."},"authorSpecs":{"nav":"Author specs","title":"Turn ideas into specs","subtitle":"Six ways to capture exactly what you want built","intro":"A <b>spec</b> is a description of work you want done. Author one however suits the moment — from a one-liner to the agent doing the research for you.","agentLabel":"Ask the agent","agentBody":"In Mission mode, just describe the change. The agent reads the real codebase first, drafts a super spec as a live card and commits it when you say so.","exploreLabel":"Explore — converse","exploreBody":"Describe what you want in a chat; a live draft rebuilds itself every turn. A preset slider tunes how much project context the AI sees — from your message only, up to the full codebase plus your MCP servers.","quickLabel":"Quick — one shot","quickBody":"Already know what you want? Generate a complete spec in a single turn. Optionally enrich it with a Contract Layer: exact names, data shapes, invariants and a file-touch list so the agents don't reinvent anything.","websiteLabel":"From a website","websiteBody":"Opens an embedded browser. Hover-select an element or drag a rectangle, and the screenshot, DOM and applied CSS become attachments.","smashLabel":"SMASH a big epic","smashBody":"Explode a large spec into a family of smaller sub-specs in one click — each child carries a short summary on its card.","draftsLabel":"Drafts & Continue Editing","draftsBody":"Park an in-progress exploration as a draft ticket and resume it later; reopen any spec back in Explore to keep refining it."},"rails":{"nav":"Rails & review","title":"Run the pipeline on rails","subtitle":"Isolated lanes, then a review you can actually read","intro":"<b>Rails</b> are execution lanes — up to twelve, created on demand. Drop specs on a rail and press <play>▶ Play</play>, or <b>Launch all</b> idle rails in parallel. Each run works in its own git worktree, never in your checkout.","jobLabel":"What each run does","flowCaption":"Every phase streams live. At the end the work stays on its branch and the app asks you what to do — Specrails produces PRs, it never merges on its own.","reviewLabel":"Ask-first PR review","reviewBody":"Finished specs park <b>On review</b>. You choose: create a draft PR, integrate locally (no remote needed), or discard. Merge flips them to Done.","packetLabel":"Review packet","packetBody":"A plain-language page per delivery: what was asked, what changed, what the AI reports versus what the app verified, the cost — with Accept / Request changes / Discard.","steerLabel":"Steer mid-run","steerBody":"Claude runs are interactive: ask questions or redirect while they work, and follow a narrated progress view instead of raw logs.","loopsLabel":"Build your own loops","loopsBody":"<b>Loops</b> is a visual builder: chain AI steps, shell commands and a <b>Loop Decider</b> that repeats until a goal is met. Built-in Implement, Batch and Freestyle ship ready to use.","profilesLabel":"Agent profiles & defaults","profilesBody":"Decide which agents run and which model each uses — per project profile, per rail, or once for the whole machine in Settings → AI providers.","isolationLabel":"Many projects, isolated","isolationBody":"Each project has its own database and queue; your repository stays pristine because Specrails keeps its own files under your home folder."},"providers":{"nav":"Your agent","title":"Bring your own agent","subtitle":"Claude Code, Codex, Gemini and Kimi as first-class engines","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> and <b>Kimi Code</b> are interchangeable engines behind one contract. Whatever is installed and signed in on this machine is detected automatically and offered everywhere — nothing to configure per project.","calloutLabel":"When several are installed","calloutBody":"Pick the engine <b>per spec, per rail, per mission or per terminal launch</b>; the app remembers your last choice per project. Estimated costs are marked with <mono>~</mono>; Kimi does not report token or cost data.","table":{"capability":"Capability","streamingResume":"Streaming & session resume","native":"Native","costReporting":"Cost reporting","providerBilled":"Provider-billed","estimated":"Estimated (~)","unavailable":"Unavailable","telemetry":"Telemetry (OTEL)","synthesized":"Synthesized","agentProfiles":"Agent profiles"}},"cost":{"nav":"Track cost","title":"Track every cent","subtitle":"Every billable invocation, recorded and visualized","intro":"Every AI invocation — across rails, Quick, Explore, AI edits, SMASH and file summaries — records its lifecycle and provider. Usage and cost fields remain unavailable when a provider, such as Kimi, does not report them.","analyticsLabel":"Analytics page","analyticsBody":"A burn-rate hero, daily timeline, top tickets, model breakdown and a cost-vs-turns scatter. Filter by period (7d / 30d / 90d / All) and by surface.","perTicketLabel":"Per-ticket spending","perTicketBody":"Each spec's detail shows what it cost and how many turns it took, deep-linking into Analytics filtered to that ticket.","honestLabel":"Honest numbers","honestBody":"Claude cost is provider-billed; Codex and Gemini may be estimated and marked with <mono>~</mono>. Kimi reports neither tokens nor native USD cost, so those fields show as unavailable rather than zero.","budgetsLabel":"Budgets & alerts","budgetsBody":"Set a daily budget and a per-job cost alert; the app auto-pauses the queue when you cross the line. Export anything to CSV or JSON."},"workspace":{"nav":"Workspace","title":"Make it your workspace","subtitle":"Everything you need without leaving the window","terminalLabel":"Terminal panel","terminalBody":"A real VS-Code-style terminal at the bottom (<mod>{{mod}}</mod> <j>J</j>) — WebGL rendering, search, inline images, drag-drop paths and shell integration. Up to 10 sessions per project.","codeLabel":"Code explorer","codeBody":"A read-only file tree and Monaco viewer with plain-language AI summaries and a construction story per file: which spec touched it, when, and why.","browserLabel":"Embedded browser","browserBody":"Open links, PRs and your dev server inside the app — a native browser pane in the desktop build, with popups that keep OAuth logins working.","integrationsLabel":"Integrations & MCP","integrationsBody":"A per-project marketplace of MCP integrations (Serena semantic navigation is bundled), plus the Specrails MCP server that exposes the app to your own AI tools.","themesLabel":"Themes & effects","themesBody":"Six built-in themes — specrails, dracula, aurora-light, obsidian-dark, code-rain and galaxy — applied before the UI paints. Settings → Effects switches visual flourishes like the agent's thinking halo.","chatsLabel":"Minimizable chats","chatsBody":"Park an Explore or AI-Edit session into a dock chip and pick it back up later — never lost across refreshes or project switches.","compareLabel":"Compare side by side","compareBody":"Drag a spec to the screen edge and a picker of your other specs slides in — review two of them together, tablet-style.","desktopLabel":"Desktop or browser","desktopBody":"Run Specrails in your browser, or grab the signed desktop app (macOS & Windows) that bundles its own server, Node, git and GitHub CLI."},"companion":{"nav":"Mobile companion","title":"Take Specrails with you","subtitle":"Specrails Companion — your pipelines, on your phone","intro":"<b>Specrails Companion</b> is a web app at specrails.dev/companion-app — open it on your phone (or add it to your Home Screen) to browse the specs board, launch and stop rails, follow live job logs and glance at analytics. No install, no app store.","localLabel":"100% local, like everything else","localBody":"Your phone connects straight to this computer — peer-to-peer and encrypted (WebRTC). No cloud relay, no account, and your code never leaves your devices.","downloadLabel":"Open it on your phone","downloadHint":"Scan the code with your phone's camera, or open specrails.dev/companion-app in its browser.","open":"Open Specrails Companion","pairLabel":"Pairing takes ten seconds","pairBody":"On your phone open specrails.dev/companion-app, then here go to Settings → Mobile companion → Pair web companion and follow the on-screen steps."},"moveFast":{"nav":"Move fast","title":"Move at the speed of thought","subtitle":"Keyboard-first, everywhere","paletteLabel":"Command palette","paletteShortcut":"<f>Press</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>anywhere</m>","paletteBody":"Switch projects, run spec commands, jump to any page and find recent jobs — all with fuzzy search.","agentLabel":"Agent","agentBody":"Toggle the agent with <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; cycle its level with <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Terminal panel","terminalBody":"Toggle with <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"All shortcuts","shortcutsBody":"Press <q>?</q> to see the full cheat-sheet.","chatLabel":"Right sidebar","chatBody":"Toggle the right sidebar with <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Projects sidebar","projectsBody":"Toggle the left Arc sidebar with <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Pages & projects by number","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> jumps to a page; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> switches project.","outro":"<b>That's the tour.</b> Type what you want to build into the mission composer, or add a project from the left sidebar. You can reopen this walkthrough anytime from Settings."},"jira":{"label":"Jira integration","body":"Back any project with a <b>Jira board</b> — each spec becomes a Jira issue, kept in sync both ways: status follows the rail, and a comment is posted when a job finishes. Configure it per project when you add it, or anytime in Settings."}}`),s={addProject:n,prerequisites:r,instructions:i,welcome:a,onboarding:o};export{t};
|
|
1
|
+
import{r as e}from"./rolldown-runtime-CNC7AqOf.js";var t=e({addProject:()=>n,default:()=>s,instructions:()=>i,onboarding:()=>o,prerequisites:()=>r,welcome:()=>a}),n={title:`Add Project`,description:`Register a project directory to manage it from Specrails.`,noProviderDetected:`No AI CLI detected. Install Claude Code, Codex CLI, Gemini CLI or Kimi Code first.`,pathLabel:`Project path`,pathPlaceholder:`/Users/me/my-project`,pathHint:`Absolute path to the project root`,browseForFolder:`Browse for folder`,selectProjectFolder:`Select project folder`,nameLabel:`Display name`,optional:`(optional)`,namePlaceholder:`My Project`,nameHint:`Defaults to the directory name`,adding:`Adding...`,submit:`Add Project`,toolsRequired_one:`{{tools}} is required to add a project`,toolsRequired_other:`{{tools}} are required to add a project`,errors:{pathRequired:`Project path is required`,addFailed:`Failed to add project`},toasts:{registered:`Project "{{name}}" registered`},chooser:{description:`Bring an existing repository, or build a brand-new project from an idea.`,existingTitle:`Existing project`,existingDescription:`Register a repository that already exists on disk.`,newTitle:`New project`,newDescription:`Describe an idea and get a bootstrapped repo with a Milestone-1 backlog.`}},r={corruptedBundle:`bundle corrupted — reinstall app`,notInstalled:`not installed`,failedToExecute:`found but failed to execute`,failedToExecuteAt:`found at {{path}} but failed to execute`,failedToExecuteWithError:`found but failed to execute ({{error}})`,failedToExecuteAtWithError:`found at {{path}} but failed to execute ({{error}})`,needsMinimum:`{{version}} found — needs {{minVersion}}+`,unknownVersion:`unknown`,installedLabel:`installed`,verifyError:`Could not verify developer tools locally — install will validate.`,allDetected:`All required tools detected`,bundleCorruptedTitle:`App bundle corrupted`,toolsRequired_one:`{{count}} developer tool required`,toolsRequired_other:`{{count}} developer tools required`,reinstallHint:`Reinstall the Specrails app to restore bundled tools.`,installMissingHint:`Install the missing tools to continue.`,moreInfo:`More info`,bundledBadge:`bundled`,optional:`optional`,ghNoAuth:"Not signed in — run `gh auth login`"},i={title:`Install developer tools`,description:`SpecRails needs Node.js, npm, npx, and Git on PATH. Pick the snippet for your OS, run it, then click "I installed it, recheck".`,darwin:{intro:`Homebrew gets you both tools in one line. If you do not have brew, use the official downloads.`,installNodeGit:`Install Node.js and Git via Homebrew`},win32:{intro:`Winget ships with Windows 11 and recent Windows 10. Open PowerShell or Terminal and run:`,installNode:`Install Node.js LTS`,installGit:`Install Git`,note:`After install, restart Specrails so Windows refreshes PATH.`},linux:{intro:`Use your distro package manager:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (official)`,gitOfficial:`Git (official)`,gitWindows:`Git for Windows (official)`},showOtherPlatforms:`Show other platforms`,hideOtherPlatforms:`Hide other platforms`,recheck:`I installed it, recheck`,diagnostics:{copy:`Copy diagnostics`,copied:`Diagnostics copied`,failed:`Copy failed`},corrupted:{title:`App bundle corrupted`,description:`One or more bundled tools (Node.js, Git) could not be verified.`,body:`This tool is bundled with the Specrails app and cannot be installed separately. If you see this message, the app bundle may be corrupted. Please reinstall Specrails.`}},a={title:`Welcome to <spec>spec</spec><rails>rails</rails>`,description:`Specrails manages multiple projects from a single interface. Add your first project to get started.`,addFirstProject:`Add your first project`,jiraHint:`Connect each project to its own Jira board — specs stay in sync, both ways.`,mcpHint:`Connect external AI tools to Specrails over a secure local MCP server — on by default, manage it in Settings → MCP.`,agentChatHint:`Operate Specrails by chatting — a built-in agent drives specs, rails and analytics for you through the local MCP. Open it from the bubble or ⌘⇧A.`,localEnginesHint:`Only a local model? Add an OpenAI-compatible endpoint in Settings → Specrails Agents and every surface — rails, chat, missions — runs on it by default.`},o=JSON.parse(`{"productTour":"Product tour","stepCount":"Step {{current}} of {{total}}","goToStep":"Go to step {{step}}: {{label}}","stepLabel":"Step {{step}}","dontShowAgain":"Don't show this again","skipTour":"Skip tour","getStarted":"Get Started","flow":{"architect":"Architect","developer":"Developer","reviewer":"Reviewer","describe":"Describe","specs":"Specs","rails":"Rails","review":"Review & merge","yourReview":"Your review","blueprint":"Blueprint","approve":"Approve","m1Specs":"Milestone-1 specs","milestones":"Milestones"},"language":{"nav":"Language","title":"Choose your language","subtitle":"Specrails speaks your language","intro":"Pick the language you want the interface in. It applies instantly — this tour included.","note":"You can change it any time in Settings → Language."},"theme":{"nav":"Theme","title":"Pick your look","subtitle":"Built-in themes, applied instantly","intro":"Choose how Specrails should look — the theme applies the moment you click.","note":"You can change it any time in Settings → Appearance."},"welcome":{"nav":"Welcome","title":"Welcome to Specrails","subtitle":"Your local cockpit for shipping software with AI agents","intro":"Specrails turns an idea into shipped code — and lets you <b>see, steer and trust</b> every step. Describe what you want, get precise specs, run them on rails with Claude Code, Codex, Gemini or Kimi, and decide what to merge. Nothing merges without you.","coreLoopLabel":"The core loop","flowCaption":"<b>Describe → Specs → Rails → Review & merge</b>. Every step streams live, and every result waits for your decision.","missionLabel":"Mission mode — the default","missionBody":"One conversation drives the whole app: the agent authors specs, launches rails, checks spend and hands you decision cards. <b>You talk, it operates.</b>","boardLabel":"Board mode — one switch away","boardBody":"The classic dashboard: specs board, rails, jobs, analytics. Flip between the two from the switch in the left sidebar — <b>same projects, same data</b>.","localNote":"<b>100% local · single user · no accounts.</b> Everything runs on your machine. Your code never leaves the laptop unless <i>you</i> spawn an agent against it.","tourNote":"This quick tour walks through everything the app can do — about two minutes."},"mission":{"nav":"Mission mode","title":"Talk — the agent operates","subtitle":"Mission mode is the default surface","intro":"In <b>Mission mode</b> the whole window is one conversation with an agent that drives Specrails through its own <b>MCP tools</b>: “launch the three highest-priority specs”, “how much did I spend this week?”, “write me a spec for dark mode”. Everything it does is live — rails, specs and cards update as it works.","missionsLabel":"Missions & projects","missionsBody":"Each conversation is a mission pinned to a project (or Home for everything). Switch missions from the header, send follow-ups mid-turn — they queue and run in order.","levelsLabel":"You hold the leash","levelsBody":"A live level — <b>Observe → Edit → Operate → Autonomous</b>, cycled with <shift>Shift</shift> <tab>Tab</tab> — caps how far it can go. It never acts above the level you set.","cardsLabel":"Decision cards","cardsBody":"Launches surface as live cards pinned above the composer: rail progress, then Create PR / Integrate locally / Discard, with a plain-language Review. Spec numbers, jobs and loops in replies are clickable.","workspaceLabel":"A workspace at your side","workspaceBody":"The right sidebar opens Blueprint, Jobs, Analytics, an embedded browser, the terminal and the code explorer next to the conversation — no context switch.","mcpLabel":"Runs on the local MCP","mcpBody":"The agent works through the embedded Specrails MCP server — <b>on by default</b>, loopback only. The same server lets your own tools (Claude Desktop, Cursor…) drive Specrails; manage it in Settings → MCP."},"builder":{"nav":"New project","title":"Start a project from an idea","subtitle":"The Builder: blueprint, specs and milestones before a line of code exists","intro":"Add Project → <b>New</b> turns the agent into the <b>Project Builder</b>. Describe the idea; it interviews you briefly (or decides everything with one click), proposes product, core flow, platform, stack and milestones, and you approve or tweak.","flowLabel":"From idea to backlog","flowCaption":"The commit creates the repository, the workspace and the Milestone-1 backlog — optionally a private GitHub repo too.","cardsLabel":"One-click decisions","cardsBody":"“Surprise me” and “Approve & generate specs” appear as cards in the thread; each decision you take stays pinned there as a record.","specsLabel":"Premium specs, honestly audited","specsBody":"Milestone-1 specs are written in full two at a time, then the whole batch is audited — problem, solution, scope, technical considerations, six-plus acceptance criteria — and a deterministic gate blocks anything thin.","milestonesLabel":"Milestones on rails","milestonesBody":"Launch Milestone 1 and it runs as rails of up to three specs, each stacked on the previous one's branch. <b>Wave checkpoints</b> ask before each next rail — or flip auto-continue.","progressLabel":"Live progress","progressBody":"The Blueprint panel shows real counts — delivered, in review, done — never “complete” while anything is unmerged. Later milestones are generated against the real repository."},"authorSpecs":{"nav":"Author specs","title":"Turn ideas into specs","subtitle":"Six ways to capture exactly what you want built","intro":"A <b>spec</b> is a description of work you want done. Author one however suits the moment — from a one-liner to the agent doing the research for you.","agentLabel":"Ask the agent","agentBody":"In Mission mode, just describe the change. The agent reads the real codebase first, drafts a super spec as a live card and commits it when you say so.","exploreLabel":"Explore — converse","exploreBody":"Describe what you want in a chat; a live draft rebuilds itself every turn. A preset slider tunes how much project context the AI sees — from your message only, up to the full codebase plus your MCP servers.","quickLabel":"Quick — one shot","quickBody":"Already know what you want? Generate a complete spec in a single turn. Optionally enrich it with a Contract Layer: exact names, data shapes, invariants and a file-touch list so the agents don't reinvent anything.","websiteLabel":"From a website","websiteBody":"Opens an embedded browser. Hover-select an element or drag a rectangle, and the screenshot, DOM and applied CSS become attachments.","smashLabel":"SMASH a big epic","smashBody":"Explode a large spec into a family of smaller sub-specs in one click — each child carries a short summary on its card.","draftsLabel":"Drafts & Continue Editing","draftsBody":"Park an in-progress exploration as a draft ticket and resume it later; reopen any spec back in Explore to keep refining it."},"rails":{"nav":"Rails & review","title":"Run the pipeline on rails","subtitle":"Isolated lanes, then a review you can actually read","intro":"<b>Rails</b> are execution lanes — up to twelve, created on demand. Drop specs on a rail and press <play>▶ Play</play>, or <b>Launch all</b> idle rails in parallel. Each run works in its own git worktree, never in your checkout.","jobLabel":"What each run does","flowCaption":"Every phase streams live. At the end the work stays on its branch and the app asks you what to do — Specrails produces PRs, it never merges on its own.","reviewLabel":"Ask-first PR review","reviewBody":"Finished specs park <b>On review</b>. You choose: create a draft PR, integrate locally (no remote needed), or discard. Merge flips them to Done.","packetLabel":"Review packet","packetBody":"A plain-language page per delivery: what was asked, what changed, what the AI reports versus what the app verified, the cost — with Accept / Request changes / Discard.","steerLabel":"Steer mid-run","steerBody":"Claude runs are interactive: ask questions or redirect while they work, and follow a narrated progress view instead of raw logs.","loopsLabel":"Build your own loops","loopsBody":"<b>Loops</b> is a visual builder: chain AI steps, shell commands and a <b>Loop Decider</b> that repeats until a goal is met. Built-in Implement and Freestyle ship ready to use.","profilesLabel":"Agent profiles & defaults","profilesBody":"Decide which agents run and which model each uses — per project profile, per rail, or once for the whole machine in Settings → AI providers.","isolationLabel":"Many projects, isolated","isolationBody":"Each project has its own database and queue; your repository stays pristine because Specrails keeps its own files under your home folder."},"providers":{"nav":"Your agent","title":"Bring your own agent","subtitle":"Claude Code, Codex, Gemini and Kimi as first-class engines","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> and <b>Kimi Code</b> are interchangeable engines behind one contract. Whatever is installed and signed in on this machine is detected automatically and offered everywhere — nothing to configure per project.","calloutLabel":"When several are installed","calloutBody":"Pick the engine <b>per spec, per rail, per mission or per terminal launch</b>; the app remembers your last choice per project. Estimated costs are marked with <mono>~</mono>; Kimi does not report token or cost data.","table":{"capability":"Capability","streamingResume":"Streaming & session resume","native":"Native","costReporting":"Cost reporting","providerBilled":"Provider-billed","estimated":"Estimated (~)","unavailable":"Unavailable","telemetry":"Telemetry (OTEL)","synthesized":"Synthesized","agentProfiles":"Agent profiles"}},"cost":{"nav":"Track cost","title":"Track every cent","subtitle":"Every billable invocation, recorded and visualized","intro":"Every AI invocation — across rails, Quick, Explore, AI edits, SMASH and file summaries — records its lifecycle and provider. Usage and cost fields remain unavailable when a provider, such as Kimi, does not report them.","analyticsLabel":"Analytics page","analyticsBody":"A burn-rate hero, daily timeline, top tickets, model breakdown and a cost-vs-turns scatter. Filter by period (7d / 30d / 90d / All) and by surface.","perTicketLabel":"Per-ticket spending","perTicketBody":"Each spec's detail shows what it cost and how many turns it took, deep-linking into Analytics filtered to that ticket.","honestLabel":"Honest numbers","honestBody":"Claude cost is provider-billed; Codex and Gemini may be estimated and marked with <mono>~</mono>. Kimi reports neither tokens nor native USD cost, so those fields show as unavailable rather than zero.","budgetsLabel":"Budgets & alerts","budgetsBody":"Set a daily budget and a per-job cost alert; the app auto-pauses the queue when you cross the line. Export anything to CSV or JSON."},"workspace":{"nav":"Workspace","title":"Make it your workspace","subtitle":"Everything you need without leaving the window","terminalLabel":"Terminal panel","terminalBody":"A real VS-Code-style terminal at the bottom (<mod>{{mod}}</mod> <j>J</j>) — WebGL rendering, search, inline images, drag-drop paths and shell integration. Up to 10 sessions per project.","codeLabel":"Code explorer","codeBody":"A read-only file tree and Monaco viewer with plain-language AI summaries and a construction story per file: which spec touched it, when, and why.","browserLabel":"Embedded browser","browserBody":"Open links, PRs and your dev server inside the app — a native browser pane in the desktop build, with popups that keep OAuth logins working.","integrationsLabel":"Integrations & MCP","integrationsBody":"A per-project marketplace of MCP integrations (Serena semantic navigation is bundled), plus the Specrails MCP server that exposes the app to your own AI tools.","themesLabel":"Themes & effects","themesBody":"Six built-in themes — specrails, dracula, aurora-light, obsidian-dark, code-rain and galaxy — applied before the UI paints. Settings → Effects switches visual flourishes like the agent's thinking halo.","chatsLabel":"Minimizable chats","chatsBody":"Park an Explore or AI-Edit session into a dock chip and pick it back up later — never lost across refreshes or project switches.","compareLabel":"Compare side by side","compareBody":"Drag a spec to the screen edge and a picker of your other specs slides in — review two of them together, tablet-style.","desktopLabel":"Desktop or browser","desktopBody":"Run Specrails in your browser, or grab the signed desktop app (macOS & Windows) that bundles its own server, Node, git and GitHub CLI."},"companion":{"nav":"Mobile companion","title":"Take Specrails with you","subtitle":"Specrails Companion — your pipelines, on your phone","intro":"<b>Specrails Companion</b> is a web app at specrails.dev/companion-app — open it on your phone (or add it to your Home Screen) to browse the specs board, launch and stop rails, follow live job logs and glance at analytics. No install, no app store.","localLabel":"100% local, like everything else","localBody":"Your phone connects straight to this computer — peer-to-peer and encrypted (WebRTC). No cloud relay, no account, and your code never leaves your devices.","downloadLabel":"Open it on your phone","downloadHint":"Scan the code with your phone's camera, or open specrails.dev/companion-app in its browser.","open":"Open Specrails Companion","pairLabel":"Pairing takes ten seconds","pairBody":"On your phone open specrails.dev/companion-app, then here go to Settings → Mobile companion → Pair web companion and follow the on-screen steps."},"moveFast":{"nav":"Move fast","title":"Move at the speed of thought","subtitle":"Keyboard-first, everywhere","paletteLabel":"Command palette","paletteShortcut":"<f>Press</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>anywhere</m>","paletteBody":"Switch projects, run spec commands, jump to any page and find recent jobs — all with fuzzy search.","agentLabel":"Agent","agentBody":"Toggle the agent with <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; cycle its level with <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Terminal panel","terminalBody":"Toggle with <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"All shortcuts","shortcutsBody":"Press <q>?</q> to see the full cheat-sheet.","chatLabel":"Right sidebar","chatBody":"Toggle the right sidebar with <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Projects sidebar","projectsBody":"Toggle the left Arc sidebar with <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Pages & projects by number","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> jumps to a page; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> switches project.","outro":"<b>That's the tour.</b> Type what you want to build into the mission composer, or add a project from the left sidebar. You can reopen this walkthrough anytime from Settings."},"jira":{"label":"Jira integration","body":"Back any project with a <b>Jira board</b> — each spec becomes a Jira issue, kept in sync both ways: status follows the rail, and a comment is posted when a job finishes. Configure it per project when you add it, or anytime in Settings."}}`),s={addProject:n,prerequisites:r,instructions:i,welcome:a,onboarding:o};export{t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={title:`Adicionar projeto`,description:`Registe um diretório de projeto para o gerir a partir do Specrails.`,noProviderDetected:`Nenhuma CLI de IA detetada. Instale primeiro Claude Code, Codex CLI, Gemini CLI ou Kimi Code.`,pathLabel:`Caminho do projeto`,pathPlaceholder:`/Users/eu/o-meu-projeto`,pathHint:`Caminho absoluto para a raiz do projeto`,browseForFolder:`Procurar pasta`,selectProjectFolder:`Selecionar a pasta do projeto`,nameLabel:`Nome a apresentar`,optional:`(opcional)`,namePlaceholder:`O Meu Projeto`,nameHint:`Por omissão, o nome do diretório`,adding:`A adicionar...`,submit:`Adicionar projeto`,toolsRequired_one:`{{tools}} é necessário para adicionar um projeto`,toolsRequired_other:`{{tools}} são necessários para adicionar um projeto`,errors:{pathRequired:`O caminho do projeto é obrigatório`,addFailed:`Falha ao adicionar o projeto`},toasts:{registered:`Projeto "{{name}}" registado`},chooser:{description:`Traga um repositório existente ou construa um projeto novinho a partir de uma ideia.`,existingTitle:`Projeto existente`,existingDescription:`Registre um repositório que já existe no disco.`,newTitle:`Projeto novo`,newDescription:`Descreva uma ideia e receba um repo inicializado com um backlog do Marco 1.`}},t={corruptedBundle:`bundle corrompido — reinstale a app`,notInstalled:`não instalado`,failedToExecute:`encontrado mas falhou ao executar`,failedToExecuteAt:`encontrado em {{path}} mas falhou ao executar`,failedToExecuteWithError:`encontrado mas falhou ao executar ({{error}})`,failedToExecuteAtWithError:`encontrado em {{path}} mas falhou ao executar ({{error}})`,needsMinimum:`{{version}} encontrado — requer {{minVersion}}+`,unknownVersion:`desconhecida`,installedLabel:`instalado`,verifyError:`Não foi possível verificar as ferramentas de desenvolvimento localmente — a instalação validará.`,allDetected:`Todas as ferramentas necessárias detetadas`,bundleCorruptedTitle:`Bundle da app corrompido`,toolsRequired_one:`{{count}} ferramenta de desenvolvimento necessária`,toolsRequired_other:`{{count}} ferramentas de desenvolvimento necessárias`,reinstallHint:`Reinstale a app Specrails para restaurar as ferramentas incluídas.`,installMissingHint:`Instale as ferramentas em falta para continuar.`,moreInfo:`Mais informações`,bundledBadge:`incluído`,optional:`opcional`,ghNoAuth:"Sem sessão — execute `gh auth login`"},n={title:`Instalar ferramentas de desenvolvimento`,description:`O SpecRails precisa de Node.js, npm, npx e Git no PATH. Escolha o snippet para o seu SO, execute-o e clique em "Já instalei, verificar novamente".`,darwin:{intro:`O Homebrew instala ambas as ferramentas numa só linha. Se não tiver o brew, use os downloads oficiais.`,installNodeGit:`Instalar Node.js e Git via Homebrew`},win32:{intro:`O winget vem incluído no Windows 11 e nas versões recentes do Windows 10. Abra o PowerShell ou o Terminal e execute:`,installNode:`Instalar Node.js LTS`,installGit:`Instalar Git`,note:`Após a instalação, reinicie o Specrails para que o Windows atualize o PATH.`},linux:{intro:`Use o gestor de pacotes da sua distribuição:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (oficial)`,gitOfficial:`Git (oficial)`,gitWindows:`Git para Windows (oficial)`},showOtherPlatforms:`Mostrar outras plataformas`,hideOtherPlatforms:`Ocultar outras plataformas`,recheck:`Já instalei, verificar novamente`,diagnostics:{copy:`Copiar diagnóstico`,copied:`Diagnóstico copiado`,failed:`Falha ao copiar`},corrupted:{title:`Bundle da app corrompido`,description:`Não foi possível verificar uma ou mais ferramentas incluídas (Node.js, Git).`,body:`Esta ferramenta é distribuída com a app Specrails e não pode ser instalada separadamente. Se vir esta mensagem, o bundle da app pode estar corrompido. Reinstale o Specrails.`}},r={title:`Bem-vindo ao <spec>spec</spec><rails>rails</rails>`,description:`O Specrails gere vários projetos a partir de uma única interface. Adicione o seu primeiro projeto para começar.`,addFirstProject:`Adicione o seu primeiro projeto`,jiraHint:`Ligue cada projeto ao seu próprio quadro Jira — as specs ficam sincronizadas nos dois sentidos.`,mcpHint:`Liga ferramentas de IA externas ao Specrails através de um servidor MCP local seguro: ligado por defeito, gere-o em Definições → MCP.`,agentChatHint:`Opere o Specrails conversando — um agente integrado gere specs, rails e análises por si através do MCP local. Abra-o pela bolha ou com ⌘⇧A.`,localEnginesHint:`Só um modelo local? Adicione um endpoint compatível com OpenAI em Configurações → Specrails Agents e todas as superfícies — rails, chat, missões — passam a usá-lo por padrão.`},i=JSON.parse(`{"productTour":"Tour do produto","stepCount":"Passo {{current}} de {{total}}","goToStep":"Ir para o passo {{step}}: {{label}}","stepLabel":"Passo {{step}}","dontShowAgain":"Não mostrar novamente","skipTour":"Saltar tour","getStarted":"Começar","flow":{"architect":"Arquiteto","developer":"Desenvolvedor","reviewer":"Revisor","describe":"Descrever","specs":"Specs","rails":"Rails","review":"Rever e integrar","yourReview":"A tua revisão","blueprint":"Blueprint","approve":"Aprovar","m1Specs":"Specs do Marco 1","milestones":"Marcos"},"language":{"nav":"Idioma","title":"Escolha o seu idioma","subtitle":"O Specrails fala a sua língua","intro":"Escolha o idioma em que quer a interface. Aplica-se de imediato — incluindo este tour.","note":"Pode mudá-lo a qualquer momento em Definições → Idioma."},"theme":{"nav":"Tema","title":"Escolha o seu visual","subtitle":"Temas incorporados, aplicados de imediato","intro":"Escolha o aspeto do Specrails — o tema aplica-se assim que clica.","note":"Pode mudá-lo a qualquer momento em Definições → Aspeto."},"welcome":{"nav":"Boas-vindas","title":"Bem-vindo ao Specrails","subtitle":"O teu cockpit local para entregar software com agentes de IA","intro":"O Specrails transforma uma ideia em código entregue, e deixa-te <b>ver, dirigir e confiar</b> em cada passo. Descreve o que queres, obtém specs precisas, executa-as em rails com Claude Code, Codex, Gemini ou Kimi e decide o que integrar. Nada é integrado sem ti.","coreLoopLabel":"O ciclo central","flowCaption":"<b>Descrever → Specs → Rails → Rever e integrar</b>. Cada passo é transmitido ao vivo e cada resultado espera pela tua decisão.","missionLabel":"Modo Missão: o predefinido","missionBody":"Uma conversa comanda toda a app: o agente redige specs, lança rails, consulta gastos e entrega-te cartões de decisão. <b>Tu falas, ele opera.</b>","boardLabel":"Modo Quadro: a um toque","boardBody":"O painel clássico: quadro de specs, rails, jobs, analítica. Alterna entre os dois com o interruptor da barra lateral esquerda: <b>mesmos projetos, mesmos dados</b>.","localNote":"<b>100 % local · um utilizador · sem contas.</b> Tudo corre na tua máquina. O teu código nunca sai do portátil a menos que <i>tu</i> lances um agente sobre ele.","tourNote":"Esta visita rápida percorre tudo o que a app faz: cerca de dois minutos."},"mission":{"nav":"Modo Missão","title":"Fala; o agente opera","subtitle":"O modo Missão é a superfície predefinida","intro":"No <b>modo Missão</b> toda a janela é uma conversa com um agente que comanda o Specrails através das suas próprias <b>ferramentas MCP</b>: «lança as três specs de maior prioridade», «quanto gastei esta semana?», «escreve-me uma spec para o modo escuro». Tudo é ao vivo: rails, specs e cartões atualizam-se enquanto trabalha.","missionsLabel":"Missões e projetos","missionsBody":"Cada conversa é uma missão fixada a um projeto (ou a Início para tudo). Muda de missão no cabeçalho e envia mensagens a meio do turno: entram na fila e correm por ordem.","levelsLabel":"A trela é tua","levelsBody":"Um nível ao vivo, <b>Observar → Editar → Operar → Autónomo</b>, percorrido com <shift>Shift</shift> <tab>Tab</tab>, limita até onde pode ir. Nunca age acima do nível que defines.","cardsLabel":"Cartões de decisão","cardsBody":"Os lançamentos surgem como cartões ao vivo fixados sobre o compositor: progresso do rail e depois Criar PR / Integrar localmente / Descartar, com uma Revisão em linguagem clara. Números de spec, jobs e loops nas respostas são clicáveis.","workspaceLabel":"Um espaço de trabalho ao lado","workspaceBody":"A barra lateral direita abre Blueprint, Jobs, Analítica, um navegador integrado, o terminal e o explorador de código ao lado da conversa, sem mudar de contexto.","mcpLabel":"Corre sobre o MCP local","mcpBody":"O agente trabalha através do servidor MCP embutido do Specrails, <b>ligado por defeito</b>, só em loopback. O mesmo servidor permite que as tuas ferramentas (Claude Desktop, Cursor…) comandem o Specrails; gere-o em Definições → MCP."},"builder":{"nav":"Projeto novo","title":"Começa um projeto a partir de uma ideia","subtitle":"O Construtor: blueprint, specs e marcos antes de existir uma linha de código","intro":"Adicionar projeto → <b>Novo</b> transforma o agente no <b>Construtor de projetos</b>. Descreve a ideia; ele entrevista-te brevemente (ou decide tudo com um clique), propõe produto, fluxo principal, plataforma, stack e marcos, e tu aprovas ou afinas.","flowLabel":"Da ideia ao backlog","flowCaption":"O commit cria o repositório, o espaço de trabalho e o backlog do Marco 1; opcionalmente também um repo privado no GitHub.","cardsLabel":"Decisões de um clique","cardsBody":"«Surpreende-me» e «Aprovar e gerar specs» aparecem como cartões no fio; cada decisão que tomas fica lá fixada como registo.","specsLabel":"Specs premium, auditadas com honestidade","specsBody":"As specs do Marco 1 são escritas por completo duas de cada vez e depois todo o lote é auditado (problema, solução, âmbito, considerações técnicas, seis ou mais critérios de aceitação) e uma barreira determinística bloqueia qualquer spec pobre.","milestonesLabel":"Marcos sobre rails","milestonesBody":"Lança o Marco 1 e ele corre como rails de até três specs, cada um empilhado no ramo do anterior. Os <b>pontos de controlo por vaga</b> perguntam antes de cada rail seguinte, ou ativa continuar automaticamente.","progressLabel":"Progresso ao vivo","progressBody":"O painel Blueprint mostra contagens reais (entregues, em revisão, feitas), nunca «completo» enquanto algo estiver por integrar. Os marcos seguintes são gerados contra o repositório real."},"authorSpecs":{"nav":"Redigir specs","title":"Transforma ideias em specs","subtitle":"Seis formas de capturar exatamente o que queres construir","intro":"Uma <b>spec</b> descreve trabalho que queres feito. Redige-a como convier ao momento: de uma linha até o agente pesquisar por ti.","agentLabel":"Pede ao agente","agentBody":"No modo Missão, descreve a alteração. O agente lê primeiro o código real, redige uma super spec como cartão ao vivo e guarda-a quando disseres.","exploreLabel":"Explorar: conversa","exploreBody":"Descreve o que queres num chat; um rascunho ao vivo reconstrói-se a cada turno. Um seletor de presets ajusta quanto contexto do projeto a IA vê: só a tua mensagem até todo o código mais os teus servidores MCP.","quickLabel":"Rápida: de uma vez","quickBody":"Já sabes o que queres? Gera uma spec completa num só turno. Opcionalmente enriquece-a com uma Camada de Contrato: nomes exatos, formas de dados, invariantes e lista de ficheiros para os agentes não reinventarem nada.","websiteLabel":"A partir de um site","websiteBody":"Abre um navegador integrado. Seleciona um elemento ou desenha um retângulo, e a captura, o DOM e o CSS aplicado tornam-se anexos.","smashLabel":"SMASH a um épico","smashBody":"Explode uma spec grande numa família de sub-specs menores com um clique; cada filha leva um resumo curto no seu cartão.","draftsLabel":"Rascunhos e continuar a editar","draftsBody":"Estaciona uma exploração em curso como ticket rascunho e retoma-a depois; reabre qualquer spec em Explorar para continuar a afiná-la."},"rails":{"nav":"Rails e revisão","title":"Executa o pipeline sobre rails","subtitle":"Pistas isoladas e uma revisão que se consegue mesmo ler","intro":"Os <b>rails</b> são pistas de execução: até doze, criadas a pedido. Larga specs num rail e carrega em <play>▶ Play</play>, ou <b>Lançar tudo</b> os rails livres em paralelo. Cada execução trabalha no seu próprio worktree git, nunca no teu checkout.","jobLabel":"O que faz cada execução","flowCaption":"Cada fase é transmitida ao vivo. No fim, o trabalho fica no seu ramo e a app pergunta-te o que fazer: o Specrails produz PRs, nunca integra sozinho.","reviewLabel":"Revisão de PR que pergunta primeiro","reviewBody":"As specs terminadas ficam <b>Em revisão</b>. Tu escolhes: criar um PR rascunho, integrar localmente (sem remoto) ou descartar. Integrar passa-as a Feito.","packetLabel":"Pacote de revisão","packetBody":"Uma página em linguagem clara por entrega: o que foi pedido, o que mudou, o que a IA reporta face ao que a app verificou, o custo, com Aceitar / Pedir alterações / Descartar.","steerLabel":"Dirige a meio da execução","steerBody":"As execuções Claude são interativas: pergunta ou redireciona enquanto trabalham, e acompanha um progresso narrado em vez de logs em bruto.","loopsLabel":"Constrói os teus loops","loopsBody":"<b>Loops</b> é um construtor visual: encadeia passos de IA, comandos de shell e um <b>Loop Decider</b> que repete até cumprir o objetivo. Implement, Batch e Freestyle vêm prontos a usar.","profilesLabel":"Perfis de agente e predefinições","profilesBody":"Decide que agentes correm e que modelo cada um usa: por perfil de projeto, por rail, ou uma vez para toda a máquina em Definições → Agentes Specrails.","isolationLabel":"Muitos projetos, isolados","isolationBody":"Cada projeto tem a sua base de dados e fila; o teu repositório fica intacto porque o Specrails guarda os seus ficheiros na tua pasta pessoal."},"providers":{"nav":"O teu agente","title":"Traz o teu próprio agente","subtitle":"Claude Code, Codex, Gemini e Kimi como motores de primeira classe","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> e <b>Kimi Code</b> são motores intercambiáveis sob um mesmo contrato. O que estiver instalado e com sessão nesta máquina é detetado automaticamente e oferecido em todo o lado; nada a configurar por projeto.","calloutLabel":"Quando há vários instalados","calloutBody":"Escolhe o motor <b>por spec, por rail, por missão ou por lançamento de terminal</b>; a app lembra a tua última escolha por projeto. Custos estimados marcam-se com <mono>~</mono>; o Kimi não reporta tokens nem custo.","table":{"capability":"Capacidade","streamingResume":"Streaming e retoma de sessão","native":"Nativo","costReporting":"Reporte de custos","providerBilled":"Faturado pelo fornecedor","estimated":"Estimado (~)","unavailable":"Indisponível","telemetry":"Telemetria (OTEL)","synthesized":"Sintetizada","agentProfiles":"Perfis de agentes"}},"cost":{"nav":"Acompanhar custos","title":"Acompanhe cada cêntimo","subtitle":"Cada invocação faturável, registada e visualizada","intro":"Cada invocação de IA regista o ciclo de vida e o fornecedor. Uso e custo ficam indisponíveis quando um fornecedor, como o Kimi, não os informa.","analyticsLabel":"Página de Analytics","analyticsBody":"Um hero de burn-rate, cronologia diária, top tickets, divisão por modelo e um scatter de custo vs. turnos. Filtre por período (7d / 30d / 90d / Tudo) e por superfície.","perTicketLabel":"Gastos por ticket","perTicketBody":"O detalhe de cada spec mostra quanto custou e quantos turnos demorou, com deep link para Analytics filtrado para esse ticket.","honestLabel":"Números honestos","honestBody":"O custo do Claude é informado pelo fornecedor; Codex e Gemini podem ser estimados e marcados com <mono>~</mono>. No Kimi, tokens e custo USD ficam indisponíveis, não a zero.","budgetsLabel":"Orçamentos e alertas","budgetsBody":"Defina um orçamento diário e um alerta de custo por job; a aplicação pausa automaticamente a fila quando freestylepassa o limite. Exporte tudo para CSV ou JSON."},"workspace":{"nav":"Espaço de trabalho","title":"Faz dele o teu espaço de trabalho","subtitle":"Tudo o que precisas sem sair da janela","terminalLabel":"Painel de terminal","terminalBody":"Um terminal real ao estilo VS Code em baixo (<mod>{{mod}}</mod> <j>J</j>): renderização WebGL, pesquisa, imagens inline, caminhos por arrastar e integração com a shell. Até 10 sessões por projeto.","codeLabel":"Explorador de código","codeBody":"Árvore de ficheiros só de leitura e visualizador Monaco com resumos de IA em linguagem clara e uma história de construção por ficheiro: que spec lhe tocou, quando e porquê.","browserLabel":"Navegador integrado","browserBody":"Abre ligações, PRs e o teu servidor de dev dentro da app: um painel de navegador nativo na versão desktop, com popups que mantêm os logins OAuth.","integrationsLabel":"Integrações e MCP","integrationsBody":"Um marketplace por projeto de integrações MCP (a navegação semântica Serena vem incluída), mais o servidor MCP do Specrails que expõe a app às tuas ferramentas de IA.","themesLabel":"Temas e efeitos","themesBody":"Seis temas integrados (specrails, dracula, aurora-light, obsidian-dark, code-rain e galaxy) aplicados antes de a interface pintar. Definições → Efeitos liga detalhes visuais como o halo de raciocínio do agente.","chatsLabel":"Chats minimizáveis","chatsBody":"Estaciona uma sessão de Explorar ou de Edição com IA num chip do dock e retoma-a depois; nunca se perde entre recargas ou trocas de projeto.","compareLabel":"Comparar lado a lado","compareBody":"Arrasta uma spec para a borda do ecrã e surge um seletor com as tuas outras specs: revê duas em conjunto, ao estilo tablet.","desktopLabel":"Desktop ou navegador","desktopBody":"Usa o Specrails no navegador ou instala a app desktop assinada (macOS e Windows), que inclui servidor, Node, git e a CLI do GitHub."},"companion":{"nav":"Companion móvel","title":"Leve o Specrails consigo","subtitle":"Specrails Companion — os seus pipelines, no seu telemóvel","intro":"O <b>Specrails Companion</b> é uma app web em specrails.dev/companion-app — abra-a no seu telemóvel (ou adicione-a ao ecrã principal) para navegar pelo quadro de specs, lançar e parar rails, acompanhar os logs dos jobs em direto e espreitar as analytics. Sem instalação, sem loja de apps.","localLabel":"100% local, como tudo o resto","localBody":"O seu telemóvel liga-se diretamente a este computador — ponto a ponto e cifrado (WebRTC). Sem relay na cloud, sem conta, e o seu código nunca sai dos seus dispositivos.","downloadLabel":"Abra-a no seu telemóvel","downloadHint":"Leia o código com a câmara do seu telemóvel ou abra specrails.dev/companion-app no respetivo navegador.","open":"Abrir o Specrails Companion","pairLabel":"Emparelhar demora dez segundos","pairBody":"No seu telemóvel, abra specrails.dev/companion-app e, aqui, vá a Definições → Companion móvel → Emparelhar companion web e siga os passos no ecrã."},"moveFast":{"nav":"Vai depressa","title":"Move-te à velocidade do pensamento","subtitle":"Teclado primeiro, em todo o lado","paletteLabel":"Paleta de comandos","paletteShortcut":"<f>Carrega</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>em qualquer lado</m>","paletteBody":"Muda de projeto, executa comandos de spec, salta para qualquer página e encontra jobs recentes, tudo com pesquisa difusa.","agentLabel":"Agente","agentBody":"Mostra ou esconde o agente com <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; percorre o nível com <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Painel de terminal","terminalBody":"Alterna com <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Todos os atalhos","shortcutsBody":"Carrega em <q>?</q> para ver a cábula completa.","chatLabel":"Barra lateral direita","chatBody":"Alterna a barra lateral direita com <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Barra de projetos","projectsBody":"Alterna a barra Arc esquerda com <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Páginas e projetos por número","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> salta para uma página; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> muda de projeto.","outro":"<b>Fim da visita.</b> Escreve o que queres construir no compositor da missão ou adiciona um projeto na barra esquerda. Podes reabrir esta visita a qualquer momento nas Definições."},"jira":{"label":"Integração com o Jira","body":"Apoie qualquer projeto num <b>quadro Jira</b> — cada spec torna-se um ticket Jira, sincronizado nos dois sentidos: o estado segue o rail e é publicado um comentário quando um job termina. Configure por projeto ao adicioná-lo, ou a qualquer momento nas Definições."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|
|
1
|
+
var e={title:`Adicionar projeto`,description:`Registe um diretório de projeto para o gerir a partir do Specrails.`,noProviderDetected:`Nenhuma CLI de IA detetada. Instale primeiro Claude Code, Codex CLI, Gemini CLI ou Kimi Code.`,pathLabel:`Caminho do projeto`,pathPlaceholder:`/Users/eu/o-meu-projeto`,pathHint:`Caminho absoluto para a raiz do projeto`,browseForFolder:`Procurar pasta`,selectProjectFolder:`Selecionar a pasta do projeto`,nameLabel:`Nome a apresentar`,optional:`(opcional)`,namePlaceholder:`O Meu Projeto`,nameHint:`Por omissão, o nome do diretório`,adding:`A adicionar...`,submit:`Adicionar projeto`,toolsRequired_one:`{{tools}} é necessário para adicionar um projeto`,toolsRequired_other:`{{tools}} são necessários para adicionar um projeto`,errors:{pathRequired:`O caminho do projeto é obrigatório`,addFailed:`Falha ao adicionar o projeto`},toasts:{registered:`Projeto "{{name}}" registado`},chooser:{description:`Traga um repositório existente ou construa um projeto novinho a partir de uma ideia.`,existingTitle:`Projeto existente`,existingDescription:`Registre um repositório que já existe no disco.`,newTitle:`Projeto novo`,newDescription:`Descreva uma ideia e receba um repo inicializado com um backlog do Marco 1.`}},t={corruptedBundle:`bundle corrompido — reinstale a app`,notInstalled:`não instalado`,failedToExecute:`encontrado mas falhou ao executar`,failedToExecuteAt:`encontrado em {{path}} mas falhou ao executar`,failedToExecuteWithError:`encontrado mas falhou ao executar ({{error}})`,failedToExecuteAtWithError:`encontrado em {{path}} mas falhou ao executar ({{error}})`,needsMinimum:`{{version}} encontrado — requer {{minVersion}}+`,unknownVersion:`desconhecida`,installedLabel:`instalado`,verifyError:`Não foi possível verificar as ferramentas de desenvolvimento localmente — a instalação validará.`,allDetected:`Todas as ferramentas necessárias detetadas`,bundleCorruptedTitle:`Bundle da app corrompido`,toolsRequired_one:`{{count}} ferramenta de desenvolvimento necessária`,toolsRequired_other:`{{count}} ferramentas de desenvolvimento necessárias`,reinstallHint:`Reinstale a app Specrails para restaurar as ferramentas incluídas.`,installMissingHint:`Instale as ferramentas em falta para continuar.`,moreInfo:`Mais informações`,bundledBadge:`incluído`,optional:`opcional`,ghNoAuth:"Sem sessão — execute `gh auth login`"},n={title:`Instalar ferramentas de desenvolvimento`,description:`O SpecRails precisa de Node.js, npm, npx e Git no PATH. Escolha o snippet para o seu SO, execute-o e clique em "Já instalei, verificar novamente".`,darwin:{intro:`O Homebrew instala ambas as ferramentas numa só linha. Se não tiver o brew, use os downloads oficiais.`,installNodeGit:`Instalar Node.js e Git via Homebrew`},win32:{intro:`O winget vem incluído no Windows 11 e nas versões recentes do Windows 10. Abra o PowerShell ou o Terminal e execute:`,installNode:`Instalar Node.js LTS`,installGit:`Instalar Git`,note:`Após a instalação, reinicie o Specrails para que o Windows atualize o PATH.`},linux:{intro:`Use o gestor de pacotes da sua distribuição:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (oficial)`,gitOfficial:`Git (oficial)`,gitWindows:`Git para Windows (oficial)`},showOtherPlatforms:`Mostrar outras plataformas`,hideOtherPlatforms:`Ocultar outras plataformas`,recheck:`Já instalei, verificar novamente`,diagnostics:{copy:`Copiar diagnóstico`,copied:`Diagnóstico copiado`,failed:`Falha ao copiar`},corrupted:{title:`Bundle da app corrompido`,description:`Não foi possível verificar uma ou mais ferramentas incluídas (Node.js, Git).`,body:`Esta ferramenta é distribuída com a app Specrails e não pode ser instalada separadamente. Se vir esta mensagem, o bundle da app pode estar corrompido. Reinstale o Specrails.`}},r={title:`Bem-vindo ao <spec>spec</spec><rails>rails</rails>`,description:`O Specrails gere vários projetos a partir de uma única interface. Adicione o seu primeiro projeto para começar.`,addFirstProject:`Adicione o seu primeiro projeto`,jiraHint:`Ligue cada projeto ao seu próprio quadro Jira — as specs ficam sincronizadas nos dois sentidos.`,mcpHint:`Liga ferramentas de IA externas ao Specrails através de um servidor MCP local seguro: ligado por defeito, gere-o em Definições → MCP.`,agentChatHint:`Opere o Specrails conversando — um agente integrado gere specs, rails e análises por si através do MCP local. Abra-o pela bolha ou com ⌘⇧A.`,localEnginesHint:`Só um modelo local? Adicione um endpoint compatível com OpenAI em Configurações → Specrails Agents e todas as superfícies — rails, chat, missões — passam a usá-lo por padrão.`},i=JSON.parse(`{"productTour":"Tour do produto","stepCount":"Passo {{current}} de {{total}}","goToStep":"Ir para o passo {{step}}: {{label}}","stepLabel":"Passo {{step}}","dontShowAgain":"Não mostrar novamente","skipTour":"Saltar tour","getStarted":"Começar","flow":{"architect":"Arquiteto","developer":"Desenvolvedor","reviewer":"Revisor","describe":"Descrever","specs":"Specs","rails":"Rails","review":"Rever e integrar","yourReview":"A tua revisão","blueprint":"Blueprint","approve":"Aprovar","m1Specs":"Specs do Marco 1","milestones":"Marcos"},"language":{"nav":"Idioma","title":"Escolha o seu idioma","subtitle":"O Specrails fala a sua língua","intro":"Escolha o idioma em que quer a interface. Aplica-se de imediato — incluindo este tour.","note":"Pode mudá-lo a qualquer momento em Definições → Idioma."},"theme":{"nav":"Tema","title":"Escolha o seu visual","subtitle":"Temas incorporados, aplicados de imediato","intro":"Escolha o aspeto do Specrails — o tema aplica-se assim que clica.","note":"Pode mudá-lo a qualquer momento em Definições → Aspeto."},"welcome":{"nav":"Boas-vindas","title":"Bem-vindo ao Specrails","subtitle":"O teu cockpit local para entregar software com agentes de IA","intro":"O Specrails transforma uma ideia em código entregue, e deixa-te <b>ver, dirigir e confiar</b> em cada passo. Descreve o que queres, obtém specs precisas, executa-as em rails com Claude Code, Codex, Gemini ou Kimi e decide o que integrar. Nada é integrado sem ti.","coreLoopLabel":"O ciclo central","flowCaption":"<b>Descrever → Specs → Rails → Rever e integrar</b>. Cada passo é transmitido ao vivo e cada resultado espera pela tua decisão.","missionLabel":"Modo Missão: o predefinido","missionBody":"Uma conversa comanda toda a app: o agente redige specs, lança rails, consulta gastos e entrega-te cartões de decisão. <b>Tu falas, ele opera.</b>","boardLabel":"Modo Quadro: a um toque","boardBody":"O painel clássico: quadro de specs, rails, jobs, analítica. Alterna entre os dois com o interruptor da barra lateral esquerda: <b>mesmos projetos, mesmos dados</b>.","localNote":"<b>100 % local · um utilizador · sem contas.</b> Tudo corre na tua máquina. O teu código nunca sai do portátil a menos que <i>tu</i> lances um agente sobre ele.","tourNote":"Esta visita rápida percorre tudo o que a app faz: cerca de dois minutos."},"mission":{"nav":"Modo Missão","title":"Fala; o agente opera","subtitle":"O modo Missão é a superfície predefinida","intro":"No <b>modo Missão</b> toda a janela é uma conversa com um agente que comanda o Specrails através das suas próprias <b>ferramentas MCP</b>: «lança as três specs de maior prioridade», «quanto gastei esta semana?», «escreve-me uma spec para o modo escuro». Tudo é ao vivo: rails, specs e cartões atualizam-se enquanto trabalha.","missionsLabel":"Missões e projetos","missionsBody":"Cada conversa é uma missão fixada a um projeto (ou a Início para tudo). Muda de missão no cabeçalho e envia mensagens a meio do turno: entram na fila e correm por ordem.","levelsLabel":"A trela é tua","levelsBody":"Um nível ao vivo, <b>Observar → Editar → Operar → Autónomo</b>, percorrido com <shift>Shift</shift> <tab>Tab</tab>, limita até onde pode ir. Nunca age acima do nível que defines.","cardsLabel":"Cartões de decisão","cardsBody":"Os lançamentos surgem como cartões ao vivo fixados sobre o compositor: progresso do rail e depois Criar PR / Integrar localmente / Descartar, com uma Revisão em linguagem clara. Números de spec, jobs e loops nas respostas são clicáveis.","workspaceLabel":"Um espaço de trabalho ao lado","workspaceBody":"A barra lateral direita abre Blueprint, Jobs, Analítica, um navegador integrado, o terminal e o explorador de código ao lado da conversa, sem mudar de contexto.","mcpLabel":"Corre sobre o MCP local","mcpBody":"O agente trabalha através do servidor MCP embutido do Specrails, <b>ligado por defeito</b>, só em loopback. O mesmo servidor permite que as tuas ferramentas (Claude Desktop, Cursor…) comandem o Specrails; gere-o em Definições → MCP."},"builder":{"nav":"Projeto novo","title":"Começa um projeto a partir de uma ideia","subtitle":"O Construtor: blueprint, specs e marcos antes de existir uma linha de código","intro":"Adicionar projeto → <b>Novo</b> transforma o agente no <b>Construtor de projetos</b>. Descreve a ideia; ele entrevista-te brevemente (ou decide tudo com um clique), propõe produto, fluxo principal, plataforma, stack e marcos, e tu aprovas ou afinas.","flowLabel":"Da ideia ao backlog","flowCaption":"O commit cria o repositório, o espaço de trabalho e o backlog do Marco 1; opcionalmente também um repo privado no GitHub.","cardsLabel":"Decisões de um clique","cardsBody":"«Surpreende-me» e «Aprovar e gerar specs» aparecem como cartões no fio; cada decisão que tomas fica lá fixada como registo.","specsLabel":"Specs premium, auditadas com honestidade","specsBody":"As specs do Marco 1 são escritas por completo duas de cada vez e depois todo o lote é auditado (problema, solução, âmbito, considerações técnicas, seis ou mais critérios de aceitação) e uma barreira determinística bloqueia qualquer spec pobre.","milestonesLabel":"Marcos sobre rails","milestonesBody":"Lança o Marco 1 e ele corre como rails de até três specs, cada um empilhado no ramo do anterior. Os <b>pontos de controlo por vaga</b> perguntam antes de cada rail seguinte, ou ativa continuar automaticamente.","progressLabel":"Progresso ao vivo","progressBody":"O painel Blueprint mostra contagens reais (entregues, em revisão, feitas), nunca «completo» enquanto algo estiver por integrar. Os marcos seguintes são gerados contra o repositório real."},"authorSpecs":{"nav":"Redigir specs","title":"Transforma ideias em specs","subtitle":"Seis formas de capturar exatamente o que queres construir","intro":"Uma <b>spec</b> descreve trabalho que queres feito. Redige-a como convier ao momento: de uma linha até o agente pesquisar por ti.","agentLabel":"Pede ao agente","agentBody":"No modo Missão, descreve a alteração. O agente lê primeiro o código real, redige uma super spec como cartão ao vivo e guarda-a quando disseres.","exploreLabel":"Explorar: conversa","exploreBody":"Descreve o que queres num chat; um rascunho ao vivo reconstrói-se a cada turno. Um seletor de presets ajusta quanto contexto do projeto a IA vê: só a tua mensagem até todo o código mais os teus servidores MCP.","quickLabel":"Rápida: de uma vez","quickBody":"Já sabes o que queres? Gera uma spec completa num só turno. Opcionalmente enriquece-a com uma Camada de Contrato: nomes exatos, formas de dados, invariantes e lista de ficheiros para os agentes não reinventarem nada.","websiteLabel":"A partir de um site","websiteBody":"Abre um navegador integrado. Seleciona um elemento ou desenha um retângulo, e a captura, o DOM e o CSS aplicado tornam-se anexos.","smashLabel":"SMASH a um épico","smashBody":"Explode uma spec grande numa família de sub-specs menores com um clique; cada filha leva um resumo curto no seu cartão.","draftsLabel":"Rascunhos e continuar a editar","draftsBody":"Estaciona uma exploração em curso como ticket rascunho e retoma-a depois; reabre qualquer spec em Explorar para continuar a afiná-la."},"rails":{"nav":"Rails e revisão","title":"Executa o pipeline sobre rails","subtitle":"Pistas isoladas e uma revisão que se consegue mesmo ler","intro":"Os <b>rails</b> são pistas de execução: até doze, criadas a pedido. Larga specs num rail e carrega em <play>▶ Play</play>, ou <b>Lançar tudo</b> os rails livres em paralelo. Cada execução trabalha no seu próprio worktree git, nunca no teu checkout.","jobLabel":"O que faz cada execução","flowCaption":"Cada fase é transmitida ao vivo. No fim, o trabalho fica no seu ramo e a app pergunta-te o que fazer: o Specrails produz PRs, nunca integra sozinho.","reviewLabel":"Revisão de PR que pergunta primeiro","reviewBody":"As specs terminadas ficam <b>Em revisão</b>. Tu escolhes: criar um PR rascunho, integrar localmente (sem remoto) ou descartar. Integrar passa-as a Feito.","packetLabel":"Pacote de revisão","packetBody":"Uma página em linguagem clara por entrega: o que foi pedido, o que mudou, o que a IA reporta face ao que a app verificou, o custo, com Aceitar / Pedir alterações / Descartar.","steerLabel":"Dirige a meio da execução","steerBody":"As execuções Claude são interativas: pergunta ou redireciona enquanto trabalham, e acompanha um progresso narrado em vez de logs em bruto.","loopsLabel":"Constrói os teus loops","loopsBody":"<b>Loops</b> é um construtor visual: encadeia passos de IA, comandos de shell e um <b>Loop Decider</b> que repete até cumprir o objetivo. Implement e Freestyle vêm prontos a usar.","profilesLabel":"Perfis de agente e predefinições","profilesBody":"Decide que agentes correm e que modelo cada um usa: por perfil de projeto, por rail, ou uma vez para toda a máquina em Definições → Agentes Specrails.","isolationLabel":"Muitos projetos, isolados","isolationBody":"Cada projeto tem a sua base de dados e fila; o teu repositório fica intacto porque o Specrails guarda os seus ficheiros na tua pasta pessoal."},"providers":{"nav":"O teu agente","title":"Traz o teu próprio agente","subtitle":"Claude Code, Codex, Gemini e Kimi como motores de primeira classe","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> e <b>Kimi Code</b> são motores intercambiáveis sob um mesmo contrato. O que estiver instalado e com sessão nesta máquina é detetado automaticamente e oferecido em todo o lado; nada a configurar por projeto.","calloutLabel":"Quando há vários instalados","calloutBody":"Escolhe o motor <b>por spec, por rail, por missão ou por lançamento de terminal</b>; a app lembra a tua última escolha por projeto. Custos estimados marcam-se com <mono>~</mono>; o Kimi não reporta tokens nem custo.","table":{"capability":"Capacidade","streamingResume":"Streaming e retoma de sessão","native":"Nativo","costReporting":"Reporte de custos","providerBilled":"Faturado pelo fornecedor","estimated":"Estimado (~)","unavailable":"Indisponível","telemetry":"Telemetria (OTEL)","synthesized":"Sintetizada","agentProfiles":"Perfis de agentes"}},"cost":{"nav":"Acompanhar custos","title":"Acompanhe cada cêntimo","subtitle":"Cada invocação faturável, registada e visualizada","intro":"Cada invocação de IA regista o ciclo de vida e o fornecedor. Uso e custo ficam indisponíveis quando um fornecedor, como o Kimi, não os informa.","analyticsLabel":"Página de Analytics","analyticsBody":"Um hero de burn-rate, cronologia diária, top tickets, divisão por modelo e um scatter de custo vs. turnos. Filtre por período (7d / 30d / 90d / Tudo) e por superfície.","perTicketLabel":"Gastos por ticket","perTicketBody":"O detalhe de cada spec mostra quanto custou e quantos turnos demorou, com deep link para Analytics filtrado para esse ticket.","honestLabel":"Números honestos","honestBody":"O custo do Claude é informado pelo fornecedor; Codex e Gemini podem ser estimados e marcados com <mono>~</mono>. No Kimi, tokens e custo USD ficam indisponíveis, não a zero.","budgetsLabel":"Orçamentos e alertas","budgetsBody":"Defina um orçamento diário e um alerta de custo por job; a aplicação pausa automaticamente a fila quando freestylepassa o limite. Exporte tudo para CSV ou JSON."},"workspace":{"nav":"Espaço de trabalho","title":"Faz dele o teu espaço de trabalho","subtitle":"Tudo o que precisas sem sair da janela","terminalLabel":"Painel de terminal","terminalBody":"Um terminal real ao estilo VS Code em baixo (<mod>{{mod}}</mod> <j>J</j>): renderização WebGL, pesquisa, imagens inline, caminhos por arrastar e integração com a shell. Até 10 sessões por projeto.","codeLabel":"Explorador de código","codeBody":"Árvore de ficheiros só de leitura e visualizador Monaco com resumos de IA em linguagem clara e uma história de construção por ficheiro: que spec lhe tocou, quando e porquê.","browserLabel":"Navegador integrado","browserBody":"Abre ligações, PRs e o teu servidor de dev dentro da app: um painel de navegador nativo na versão desktop, com popups que mantêm os logins OAuth.","integrationsLabel":"Integrações e MCP","integrationsBody":"Um marketplace por projeto de integrações MCP (a navegação semântica Serena vem incluída), mais o servidor MCP do Specrails que expõe a app às tuas ferramentas de IA.","themesLabel":"Temas e efeitos","themesBody":"Seis temas integrados (specrails, dracula, aurora-light, obsidian-dark, code-rain e galaxy) aplicados antes de a interface pintar. Definições → Efeitos liga detalhes visuais como o halo de raciocínio do agente.","chatsLabel":"Chats minimizáveis","chatsBody":"Estaciona uma sessão de Explorar ou de Edição com IA num chip do dock e retoma-a depois; nunca se perde entre recargas ou trocas de projeto.","compareLabel":"Comparar lado a lado","compareBody":"Arrasta uma spec para a borda do ecrã e surge um seletor com as tuas outras specs: revê duas em conjunto, ao estilo tablet.","desktopLabel":"Desktop ou navegador","desktopBody":"Usa o Specrails no navegador ou instala a app desktop assinada (macOS e Windows), que inclui servidor, Node, git e a CLI do GitHub."},"companion":{"nav":"Companion móvel","title":"Leve o Specrails consigo","subtitle":"Specrails Companion — os seus pipelines, no seu telemóvel","intro":"O <b>Specrails Companion</b> é uma app web em specrails.dev/companion-app — abra-a no seu telemóvel (ou adicione-a ao ecrã principal) para navegar pelo quadro de specs, lançar e parar rails, acompanhar os logs dos jobs em direto e espreitar as analytics. Sem instalação, sem loja de apps.","localLabel":"100% local, como tudo o resto","localBody":"O seu telemóvel liga-se diretamente a este computador — ponto a ponto e cifrado (WebRTC). Sem relay na cloud, sem conta, e o seu código nunca sai dos seus dispositivos.","downloadLabel":"Abra-a no seu telemóvel","downloadHint":"Leia o código com a câmara do seu telemóvel ou abra specrails.dev/companion-app no respetivo navegador.","open":"Abrir o Specrails Companion","pairLabel":"Emparelhar demora dez segundos","pairBody":"No seu telemóvel, abra specrails.dev/companion-app e, aqui, vá a Definições → Companion móvel → Emparelhar companion web e siga os passos no ecrã."},"moveFast":{"nav":"Vai depressa","title":"Move-te à velocidade do pensamento","subtitle":"Teclado primeiro, em todo o lado","paletteLabel":"Paleta de comandos","paletteShortcut":"<f>Carrega</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>em qualquer lado</m>","paletteBody":"Muda de projeto, executa comandos de spec, salta para qualquer página e encontra jobs recentes, tudo com pesquisa difusa.","agentLabel":"Agente","agentBody":"Mostra ou esconde o agente com <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; percorre o nível com <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Painel de terminal","terminalBody":"Alterna com <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Todos os atalhos","shortcutsBody":"Carrega em <q>?</q> para ver a cábula completa.","chatLabel":"Barra lateral direita","chatBody":"Alterna a barra lateral direita com <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Barra de projetos","projectsBody":"Alterna a barra Arc esquerda com <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Páginas e projetos por número","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> salta para uma página; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> muda de projeto.","outro":"<b>Fim da visita.</b> Escreve o que queres construir no compositor da missão ou adiciona um projeto na barra esquerda. Podes reabrir esta visita a qualquer momento nas Definições."},"jira":{"label":"Integração com o Jira","body":"Apoie qualquer projeto num <b>quadro Jira</b> — cada spec torna-se um ticket Jira, sincronizado nos dois sentidos: o estado segue o rail e é publicado um comentário quando um job termina. Configure por projeto ao adicioná-lo, ou a qualquer momento nas Definições."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={title:`Ajouter un projet`,description:`Enregistrez un répertoire de projet pour le gérer depuis Specrails.`,noProviderDetected:`Aucune CLI d'IA détectée. Installez d'abord Claude Code, Codex CLI, Gemini CLI ou Kimi Code.`,pathLabel:`Chemin du projet`,pathPlaceholder:`/Users/moi/mon-projet`,pathHint:`Chemin absolu vers la racine du projet`,browseForFolder:`Parcourir les dossiers`,selectProjectFolder:`Sélectionner le dossier du projet`,nameLabel:`Nom d'affichage`,optional:`(facultatif)`,namePlaceholder:`Mon projet`,nameHint:`Par défaut, le nom du répertoire`,adding:`Ajout...`,submit:`Ajouter le projet`,toolsRequired_one:`{{tools}} est requis pour ajouter un projet`,toolsRequired_other:`{{tools}} sont requis pour ajouter un projet`,errors:{pathRequired:`Le chemin du projet est requis`,addFailed:`Échec de l'ajout du projet`},toasts:{registered:`Projet « {{name}} » enregistré`},chooser:{description:`Apportez un dépôt existant, ou construisez un tout nouveau projet à partir d'une idée.`,existingTitle:`Projet existant`,existingDescription:`Enregistrez un dépôt qui existe déjà sur le disque.`,newTitle:`Nouveau projet`,newDescription:`Décrivez une idée et obtenez un dépôt initialisé avec un backlog du Jalon 1.`}},t={corruptedBundle:`bundle corrompu — réinstallez l'application`,notInstalled:`non installé`,failedToExecute:`trouvé mais impossible à exécuter`,failedToExecuteAt:`trouvé à {{path}} mais impossible à exécuter`,failedToExecuteWithError:`trouvé mais impossible à exécuter ({{error}})`,failedToExecuteAtWithError:`trouvé à {{path}} mais impossible à exécuter ({{error}})`,needsMinimum:`{{version}} trouvé — nécessite {{minVersion}}+`,unknownVersion:`inconnue`,installedLabel:`installé`,verifyError:`Impossible de vérifier les outils de développement en local — l'installation s'en chargera.`,allDetected:`Tous les outils requis sont détectés`,bundleCorruptedTitle:`Bundle de l'application corrompu`,toolsRequired_one:`{{count}} outil de développement requis`,toolsRequired_other:`{{count}} outils de développement requis`,reinstallHint:`Réinstallez l'application Specrails pour restaurer les outils embarqués.`,installMissingHint:`Installez les outils manquants pour continuer.`,moreInfo:`Plus d'infos`,bundledBadge:`embarqué`,optional:`optionnel`,ghNoAuth:"Non connecté — exécutez `gh auth login`"},n={title:`Installer les outils de développement`,description:`SpecRails a besoin de Node.js, npm, npx et Git sur le PATH. Choisissez le snippet pour votre OS, exécutez-le, puis cliquez sur « Je l'ai installé, revérifier ».`,darwin:{intro:`Homebrew installe les deux outils en une seule ligne. Si vous n'avez pas brew, utilisez les téléchargements officiels.`,installNodeGit:`Installer Node.js et Git via Homebrew`},win32:{intro:`Winget est fourni avec Windows 11 et les versions récentes de Windows 10. Ouvrez PowerShell ou le Terminal et exécutez :`,installNode:`Installer Node.js LTS`,installGit:`Installer Git`,note:`Après l'installation, redémarrez Specrails pour que Windows actualise le PATH.`},linux:{intro:`Utilisez le gestionnaire de paquets de votre distribution :`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (officiel)`,gitOfficial:`Git (officiel)`,gitWindows:`Git pour Windows (officiel)`},showOtherPlatforms:`Afficher les autres plateformes`,hideOtherPlatforms:`Masquer les autres plateformes`,recheck:`Je l'ai installé, revérifier`,diagnostics:{copy:`Copier les diagnostics`,copied:`Diagnostics copiés`,failed:`Échec de la copie`},corrupted:{title:`Bundle de l'application corrompu`,description:`Un ou plusieurs outils embarqués (Node.js, Git) n'ont pas pu être vérifiés.`,body:`Cet outil est embarqué avec l'application Specrails et ne peut pas être installé séparément. Si vous voyez ce message, le bundle de l'application est peut-être corrompu. Veuillez réinstaller Specrails.`}},r={title:`Bienvenue dans <spec>spec</spec><rails>rails</rails>`,description:`Specrails gère plusieurs projets depuis une seule interface. Ajoutez votre premier projet pour commencer.`,addFirstProject:`Ajouter votre premier projet`,jiraHint:`Connectez chaque projet à son propre tableau Jira — les specs restent synchronisées dans les deux sens.`,mcpHint:`Connectez des outils IA externes à Specrails via un serveur MCP local sécurisé : activé par défaut, gérez-le dans Réglages → MCP.`,agentChatHint:`Pilotez Specrails en discutant — un agent intégré gère les specs, les rails et les analyses pour vous via le MCP local. Ouvrez-le depuis la bulle ou avec ⌘⇧A.`,localEnginesHint:`Seulement un modèle local ? Ajoutez un endpoint compatible OpenAI dans Réglages → Specrails Agents et toutes les surfaces — rails, chat, missions — l'utiliseront par défaut.`},i=JSON.parse(`{"productTour":"Visite guidée","stepCount":"Étape {{current}} sur {{total}}","goToStep":"Aller à l'étape {{step}} : {{label}}","stepLabel":"Étape {{step}}","dontShowAgain":"Ne plus afficher","skipTour":"Passer la visite","getStarted":"Commencer","flow":{"architect":"Architecte","developer":"Développeur","reviewer":"Relecteur","describe":"Décrire","specs":"Specs","rails":"Rails","review":"Revue et fusion","yourReview":"Votre revue","blueprint":"Blueprint","approve":"Approuver","m1Specs":"Specs du Jalon 1","milestones":"Jalons"},"language":{"nav":"Langue","title":"Choisissez votre langue","subtitle":"Specrails parle votre langue","intro":"Choisissez la langue de l'interface. Elle s'applique instantanément — cette visite comprise.","note":"Vous pouvez en changer à tout moment dans Paramètres → Langue."},"theme":{"nav":"Thème","title":"Trouvez votre style","subtitle":"Des thèmes intégrés, appliqués instantanément","intro":"Choisissez l'apparence de Specrails — le thème s'applique dès que vous cliquez.","note":"Vous pouvez en changer à tout moment dans Paramètres → Apparence."},"welcome":{"nav":"Bienvenue","title":"Bienvenue dans Specrails","subtitle":"Votre cockpit local pour livrer du logiciel avec des agents IA","intro":"Specrails transforme une idée en code livré, et vous laisse <b>voir, piloter et vérifier</b> chaque étape. Décrivez ce que vous voulez, obtenez des specs précises, exécutez-les sur des rails avec Claude Code, Codex, Gemini ou Kimi, et décidez quoi fusionner. Rien ne fusionne sans vous.","coreLoopLabel":"La boucle centrale","flowCaption":"<b>Décrire → Specs → Rails → Revue et fusion</b>. Chaque étape est diffusée en direct et chaque résultat attend votre décision.","missionLabel":"Mode Mission : par défaut","missionBody":"Une conversation pilote toute l'app : l'agent rédige des specs, lance des rails, consulte les dépenses et vous tend des cartes de décision. <b>Vous parlez, il opère.</b>","boardLabel":"Mode Tableau : à un clic","boardBody":"Le tableau de bord classique : specs, rails, jobs, analytique. Basculez entre les deux depuis l'interrupteur de la barre latérale gauche : <b>mêmes projets, mêmes données</b>.","localNote":"<b>100 % local · mono-utilisateur · sans compte.</b> Tout tourne sur votre machine. Votre code ne quitte jamais l'ordinateur sauf si <i>vous</i> lancez un agent dessus.","tourNote":"Cette visite rapide passe en revue tout ce que l'app sait faire : environ deux minutes."},"mission":{"nav":"Mode Mission","title":"Parlez, l'agent opère","subtitle":"Le mode Mission est la surface par défaut","intro":"En <b>mode Mission</b>, toute la fenêtre est une conversation avec un agent qui pilote Specrails via ses propres <b>outils MCP</b> : « lance les trois specs prioritaires », « combien ai-je dépensé cette semaine ? », « écris-moi une spec pour le mode sombre ». Tout est en direct : rails, specs et cartes se mettent à jour pendant qu'il travaille.","missionsLabel":"Missions et projets","missionsBody":"Chaque conversation est une mission épinglée à un projet (ou à Accueil pour tout). Changez de mission depuis l'en-tête, envoyez des suites en cours de tour : elles sont mises en file et exécutées dans l'ordre.","levelsLabel":"Vous tenez la laisse","levelsBody":"Un niveau en direct, <b>Observer → Éditer → Opérer → Autonome</b>, parcouru avec <shift>Shift</shift> <tab>Tab</tab>, borne ce qu'il peut faire. Il n'agit jamais au-dessus du niveau fixé.","cardsLabel":"Cartes de décision","cardsBody":"Les lancements apparaissent comme des cartes en direct épinglées au-dessus du composeur : progression du rail, puis Créer la PR / Intégrer en local / Abandonner, avec une Revue en langage clair. Numéros de spec, jobs et loops dans les réponses sont cliquables.","workspaceLabel":"Un espace de travail à côté","workspaceBody":"La barre latérale droite ouvre Blueprint, Jobs, Analytique, un navigateur intégré, le terminal et l'explorateur de code à côté de la conversation, sans changer de contexte.","mcpLabel":"Tourne sur le MCP local","mcpBody":"L'agent travaille via le serveur MCP embarqué de Specrails, <b>activé par défaut</b>, en loopback uniquement. Ce même serveur permet à vos propres outils (Claude Desktop, Cursor…) de piloter Specrails ; gérez-le dans Réglages → MCP."},"builder":{"nav":"Nouveau projet","title":"Démarrer un projet à partir d'une idée","subtitle":"Le Constructeur : blueprint, specs et jalons avant la première ligne de code","intro":"Ajouter un projet → <b>Nouveau</b> transforme l'agent en <b>Constructeur de projet</b>. Décrivez l'idée ; il vous interroge brièvement (ou décide tout en un clic), propose produit, flux principal, plateforme, stack et jalons, et vous approuvez ou ajustez.","flowLabel":"De l'idée au backlog","flowCaption":"Le commit crée le dépôt, l'espace de travail et le backlog du Jalon 1 ; en option un dépôt GitHub privé aussi.","cardsLabel":"Décisions en un clic","cardsBody":"« Surprenez-moi » et « Approuver et générer les specs » apparaissent comme des cartes dans le fil ; chaque décision prise y reste épinglée comme trace.","specsLabel":"Specs premium, auditées honnêtement","specsBody":"Les specs du Jalon 1 sont rédigées en entier deux par deux, puis tout le lot est audité (problème, solution, périmètre, considérations techniques, six critères d'acceptation ou plus) et une barrière déterministe bloque tout ce qui est trop mince.","milestonesLabel":"Des jalons sur rails","milestonesBody":"Lancez le Jalon 1 et il s'exécute en rails de trois specs au plus, chacun empilé sur la branche du précédent. Les <b>points de contrôle par vague</b> demandent avant chaque rail suivant, ou activez la continuation automatique.","progressLabel":"Progression en direct","progressBody":"Le panneau Blueprint affiche des décomptes réels (livrées, en revue, terminées), jamais « terminé » tant que quelque chose n'est pas fusionné. Les jalons suivants sont générés contre le vrai dépôt."},"authorSpecs":{"nav":"Rédiger des specs","title":"Transformez les idées en specs","subtitle":"Six façons de capturer exactement ce que vous voulez construire","intro":"Une <b>spec</b> décrit un travail que vous voulez voir fait. Rédigez-la comme le moment l'exige : d'une ligne jusqu'à l'agent qui fait la recherche pour vous.","agentLabel":"Demandez à l'agent","agentBody":"En mode Mission, décrivez simplement le changement. L'agent lit d'abord le vrai code, rédige une super spec sous forme de carte en direct et l'enregistre quand vous le dites.","exploreLabel":"Explorer : converser","exploreBody":"Décrivez ce que vous voulez dans un chat ; un brouillon en direct se reconstruit à chaque tour. Un curseur de presets règle la quantité de contexte projet vue par l'IA : de votre seul message jusqu'au code complet plus vos serveurs MCP.","quickLabel":"Rapide : en un coup","quickBody":"Vous savez déjà ce que vous voulez ? Générez une spec complète en un seul tour. En option, enrichissez-la d'une Couche de contrat : noms exacts, formes de données, invariants et liste de fichiers pour que les agents ne réinventent rien.","websiteLabel":"Depuis un site web","websiteBody":"Ouvre un navigateur intégré. Sélectionnez un élément ou tracez un rectangle : la capture, le DOM et le CSS appliqué deviennent des pièces jointes.","smashLabel":"SMASH une grosse épopée","smashBody":"Éclatez une grande spec en une famille de sous-specs plus petites en un clic ; chaque enfant porte un court résumé sur sa carte.","draftsLabel":"Brouillons et reprise","draftsBody":"Garez une exploration en cours comme ticket brouillon et reprenez-la plus tard ; rouvrez n'importe quelle spec dans Explorer pour continuer à l'affiner."},"rails":{"nav":"Rails et revue","title":"Exécutez le pipeline sur des rails","subtitle":"Des voies isolées, puis une revue vraiment lisible","intro":"Les <b>rails</b> sont des voies d'exécution : jusqu'à douze, créées à la demande. Déposez des specs sur un rail et appuyez sur <play>▶ Play</play>, ou <b>Tout lancer</b> les rails libres en parallèle. Chaque exécution travaille dans son propre worktree git, jamais dans votre checkout.","jobLabel":"Ce que fait chaque exécution","flowCaption":"Chaque phase est diffusée en direct. À la fin, le travail reste sur sa branche et l'app vous demande quoi faire : Specrails produit des PR, il ne fusionne jamais seul.","reviewLabel":"Revue de PR qui demande d'abord","reviewBody":"Les specs terminées passent <b>En revue</b>. Vous choisissez : créer une PR brouillon, intégrer en local (sans distant), ou abandonner. La fusion les passe en Terminé.","packetLabel":"Dossier de revue","packetBody":"Une page en langage clair par livraison : ce qui a été demandé, ce qui a changé, ce que l'IA rapporte face à ce que l'app a vérifié, le coût, avec Accepter / Demander des changements / Abandonner.","steerLabel":"Pilotez en cours d'exécution","steerBody":"Les exécutions Claude sont interactives : posez des questions ou réorientez pendant le travail, et suivez une progression narrée plutôt que des logs bruts.","loopsLabel":"Construisez vos propres loops","loopsBody":"<b>Loops</b> est un constructeur visuel : enchaînez étapes IA, commandes shell et un <b>Loop Decider</b> qui répète jusqu'à atteindre l'objectif. Implement, Batch et Freestyle sont fournis prêts à l'emploi.","profilesLabel":"Profils d'agents et valeurs par défaut","profilesBody":"Décidez quels agents tournent et quel modèle chacun utilise : par profil de projet, par rail, ou une fois pour toute la machine dans Réglages → Agents Specrails.","isolationLabel":"Plusieurs projets, isolés","isolationBody":"Chaque projet a sa base de données et sa file ; votre dépôt reste intact car Specrails garde ses fichiers sous votre dossier personnel."},"providers":{"nav":"Votre agent","title":"Apportez votre propre agent","subtitle":"Claude Code, Codex, Gemini et Kimi comme moteurs de premier rang","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> et <b>Kimi Code</b> sont des moteurs interchangeables derrière un même contrat. Tout ce qui est installé et connecté sur cette machine est détecté automatiquement et proposé partout ; rien à configurer par projet.","calloutLabel":"Quand plusieurs sont installés","calloutBody":"Choisissez le moteur <b>par spec, par rail, par mission ou par lancement de terminal</b> ; l'app mémorise votre dernier choix par projet. Les coûts estimés sont marqués <mono>~</mono> ; Kimi ne rapporte ni tokens ni coût.","table":{"capability":"Capacité","streamingResume":"Streaming & reprise de session","native":"Natif","costReporting":"Suivi des coûts","providerBilled":"Facturé par le fournisseur","estimated":"Estimé (~)","unavailable":"Indisponible","telemetry":"Télémétrie (OTEL)","synthesized":"Synthétisée","agentProfiles":"Profils d'agents"}},"cost":{"nav":"Suivre les coûts","title":"Suivez chaque centime","subtitle":"Chaque invocation facturable, enregistrée et visualisée","intro":"Chaque invocation d'IA enregistre son cycle de vie et son fournisseur. L'usage et le coût restent indisponibles lorsqu'un fournisseur, tel que Kimi, ne les fournit pas.","analyticsLabel":"Page Analytics","analyticsBody":"Un hero de burn-rate, une timeline quotidienne, le top des tickets, la répartition par modèle et un nuage coût vs tours. Filtrez par période (7 j / 30 j / 90 j / Tout) et par surface.","perTicketLabel":"Dépenses par ticket","perTicketBody":"Le détail de chaque spec montre ce qu'elle a coûté et combien de tours il a fallu, avec un lien direct vers Analytics filtré sur ce ticket.","honestLabel":"Des chiffres honnêtes","honestBody":"Le coût Claude est fourni par le fournisseur ; Codex et Gemini peuvent être estimés et marqués d'un <mono>~</mono>. Pour Kimi, les tokens et le coût USD sont indisponibles, pas nuls.","budgetsLabel":"Budgets & alertes","budgetsBody":"Définissez un budget quotidien et une alerte de coût par job ; l'application met automatiquement la file en pause quand vous franchissez la limite. Exportez tout en CSV ou JSON."},"workspace":{"nav":"Espace de travail","title":"Faites-en votre espace de travail","subtitle":"Tout ce qu'il vous faut sans quitter la fenêtre","terminalLabel":"Panneau terminal","terminalBody":"Un vrai terminal façon VS Code en bas (<mod>{{mod}}</mod> <j>J</j>) : rendu WebGL, recherche, images en ligne, chemins par glisser-déposer et intégration shell. Jusqu'à 10 sessions par projet.","codeLabel":"Explorateur de code","codeBody":"Arborescence en lecture seule et visionneuse Monaco avec des résumés IA en langage clair et une histoire de construction par fichier : quelle spec l'a touché, quand et pourquoi.","browserLabel":"Navigateur intégré","browserBody":"Ouvrez liens, PR et votre serveur de dev dans l'app : un volet de navigateur natif dans la version bureau, avec des popups qui préservent les connexions OAuth.","integrationsLabel":"Intégrations et MCP","integrationsBody":"Une place de marché d'intégrations MCP par projet (la navigation sémantique Serena est fournie), plus le serveur MCP de Specrails qui expose l'app à vos propres outils IA.","themesLabel":"Thèmes et effets","themesBody":"Six thèmes intégrés (specrails, dracula, aurora-light, obsidian-dark, code-rain et galaxy) appliqués avant le rendu de l'interface. Réglages → Effets active des touches visuelles comme le halo de réflexion de l'agent.","chatsLabel":"Chats réductibles","chatsBody":"Garez une session Explorer ou Édition IA dans une puce du dock et reprenez-la plus tard ; jamais perdue entre rechargements ou changements de projet.","compareLabel":"Comparer côte à côte","compareBody":"Glissez une spec vers le bord de l'écran et un sélecteur de vos autres specs apparaît : relisez-en deux ensemble, façon tablette.","desktopLabel":"Bureau ou navigateur","desktopBody":"Utilisez Specrails dans votre navigateur, ou prenez l'app de bureau signée (macOS et Windows) qui embarque son serveur, Node, git et la CLI GitHub."},"companion":{"nav":"Compagnon mobile","title":"Emportez Specrails avec vous","subtitle":"Specrails Companion — vos pipelines, dans votre poche","intro":"<b>Specrails Companion</b> est une application web disponible sur specrails.dev/companion-app — ouvrez-la sur votre téléphone (ou ajoutez-la à votre écran d'accueil) pour parcourir le tableau des specs, lancer et arrêter des rails, suivre les logs des jobs en direct et jeter un œil aux analytics. Aucune installation, aucun app store.","localLabel":"100 % local, comme tout le reste","localBody":"Votre téléphone se connecte directement à cet ordinateur — en pair-à-pair et chiffré (WebRTC). Pas de relais cloud, pas de compte, et votre code ne quitte jamais vos appareils.","downloadLabel":"Ouvrez-la sur votre téléphone","downloadHint":"Scannez le code avec l'appareil photo de votre téléphone, ou ouvrez specrails.dev/companion-app dans son navigateur.","open":"Ouvrir Specrails Companion","pairLabel":"L'appairage prend dix secondes","pairBody":"Sur votre téléphone, ouvrez specrails.dev/companion-app, puis ici allez dans Paramètres → Compagnon mobile → Appairer le compagnon web et suivez les étapes à l'écran."},"moveFast":{"nav":"Aller vite","title":"Avancez à la vitesse de la pensée","subtitle":"Le clavier d'abord, partout","paletteLabel":"Palette de commandes","paletteShortcut":"<f>Appuyez sur</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>n'importe où</m>","paletteBody":"Changez de projet, lancez des commandes de spec, allez à n'importe quelle page et retrouvez les jobs récents, tout en recherche floue.","agentLabel":"Agent","agentBody":"Affichez ou masquez l'agent avec <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a> ; parcourez son niveau avec <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Panneau terminal","terminalBody":"Basculez avec <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Tous les raccourcis","shortcutsBody":"Appuyez sur <q>?</q> pour voir l'aide-mémoire complet.","chatLabel":"Barre latérale droite","chatBody":"Basculez la barre latérale droite avec <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Barre des projets","projectsBody":"Basculez la barre Arc gauche avec <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Pages et projets par numéro","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> ouvre une page ; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> change de projet.","outro":"<b>La visite est terminée.</b> Tapez ce que vous voulez construire dans le composeur de mission, ou ajoutez un projet depuis la barre de gauche. Vous pouvez rouvrir cette visite à tout moment depuis les Réglages."},"jira":{"label":"Intégration Jira","body":"Adossez n'importe quel projet à un <b>tableau Jira</b> — chaque spec devient un ticket Jira, synchronisé dans les deux sens : le statut suit le rail et un commentaire est publié à la fin d'un job. Configurez-le par projet lors de l'ajout, ou à tout moment dans les Paramètres."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|
|
1
|
+
var e={title:`Ajouter un projet`,description:`Enregistrez un répertoire de projet pour le gérer depuis Specrails.`,noProviderDetected:`Aucune CLI d'IA détectée. Installez d'abord Claude Code, Codex CLI, Gemini CLI ou Kimi Code.`,pathLabel:`Chemin du projet`,pathPlaceholder:`/Users/moi/mon-projet`,pathHint:`Chemin absolu vers la racine du projet`,browseForFolder:`Parcourir les dossiers`,selectProjectFolder:`Sélectionner le dossier du projet`,nameLabel:`Nom d'affichage`,optional:`(facultatif)`,namePlaceholder:`Mon projet`,nameHint:`Par défaut, le nom du répertoire`,adding:`Ajout...`,submit:`Ajouter le projet`,toolsRequired_one:`{{tools}} est requis pour ajouter un projet`,toolsRequired_other:`{{tools}} sont requis pour ajouter un projet`,errors:{pathRequired:`Le chemin du projet est requis`,addFailed:`Échec de l'ajout du projet`},toasts:{registered:`Projet « {{name}} » enregistré`},chooser:{description:`Apportez un dépôt existant, ou construisez un tout nouveau projet à partir d'une idée.`,existingTitle:`Projet existant`,existingDescription:`Enregistrez un dépôt qui existe déjà sur le disque.`,newTitle:`Nouveau projet`,newDescription:`Décrivez une idée et obtenez un dépôt initialisé avec un backlog du Jalon 1.`}},t={corruptedBundle:`bundle corrompu — réinstallez l'application`,notInstalled:`non installé`,failedToExecute:`trouvé mais impossible à exécuter`,failedToExecuteAt:`trouvé à {{path}} mais impossible à exécuter`,failedToExecuteWithError:`trouvé mais impossible à exécuter ({{error}})`,failedToExecuteAtWithError:`trouvé à {{path}} mais impossible à exécuter ({{error}})`,needsMinimum:`{{version}} trouvé — nécessite {{minVersion}}+`,unknownVersion:`inconnue`,installedLabel:`installé`,verifyError:`Impossible de vérifier les outils de développement en local — l'installation s'en chargera.`,allDetected:`Tous les outils requis sont détectés`,bundleCorruptedTitle:`Bundle de l'application corrompu`,toolsRequired_one:`{{count}} outil de développement requis`,toolsRequired_other:`{{count}} outils de développement requis`,reinstallHint:`Réinstallez l'application Specrails pour restaurer les outils embarqués.`,installMissingHint:`Installez les outils manquants pour continuer.`,moreInfo:`Plus d'infos`,bundledBadge:`embarqué`,optional:`optionnel`,ghNoAuth:"Non connecté — exécutez `gh auth login`"},n={title:`Installer les outils de développement`,description:`SpecRails a besoin de Node.js, npm, npx et Git sur le PATH. Choisissez le snippet pour votre OS, exécutez-le, puis cliquez sur « Je l'ai installé, revérifier ».`,darwin:{intro:`Homebrew installe les deux outils en une seule ligne. Si vous n'avez pas brew, utilisez les téléchargements officiels.`,installNodeGit:`Installer Node.js et Git via Homebrew`},win32:{intro:`Winget est fourni avec Windows 11 et les versions récentes de Windows 10. Ouvrez PowerShell ou le Terminal et exécutez :`,installNode:`Installer Node.js LTS`,installGit:`Installer Git`,note:`Après l'installation, redémarrez Specrails pour que Windows actualise le PATH.`},linux:{intro:`Utilisez le gestionnaire de paquets de votre distribution :`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (officiel)`,gitOfficial:`Git (officiel)`,gitWindows:`Git pour Windows (officiel)`},showOtherPlatforms:`Afficher les autres plateformes`,hideOtherPlatforms:`Masquer les autres plateformes`,recheck:`Je l'ai installé, revérifier`,diagnostics:{copy:`Copier les diagnostics`,copied:`Diagnostics copiés`,failed:`Échec de la copie`},corrupted:{title:`Bundle de l'application corrompu`,description:`Un ou plusieurs outils embarqués (Node.js, Git) n'ont pas pu être vérifiés.`,body:`Cet outil est embarqué avec l'application Specrails et ne peut pas être installé séparément. Si vous voyez ce message, le bundle de l'application est peut-être corrompu. Veuillez réinstaller Specrails.`}},r={title:`Bienvenue dans <spec>spec</spec><rails>rails</rails>`,description:`Specrails gère plusieurs projets depuis une seule interface. Ajoutez votre premier projet pour commencer.`,addFirstProject:`Ajouter votre premier projet`,jiraHint:`Connectez chaque projet à son propre tableau Jira — les specs restent synchronisées dans les deux sens.`,mcpHint:`Connectez des outils IA externes à Specrails via un serveur MCP local sécurisé : activé par défaut, gérez-le dans Réglages → MCP.`,agentChatHint:`Pilotez Specrails en discutant — un agent intégré gère les specs, les rails et les analyses pour vous via le MCP local. Ouvrez-le depuis la bulle ou avec ⌘⇧A.`,localEnginesHint:`Seulement un modèle local ? Ajoutez un endpoint compatible OpenAI dans Réglages → Specrails Agents et toutes les surfaces — rails, chat, missions — l'utiliseront par défaut.`},i=JSON.parse(`{"productTour":"Visite guidée","stepCount":"Étape {{current}} sur {{total}}","goToStep":"Aller à l'étape {{step}} : {{label}}","stepLabel":"Étape {{step}}","dontShowAgain":"Ne plus afficher","skipTour":"Passer la visite","getStarted":"Commencer","flow":{"architect":"Architecte","developer":"Développeur","reviewer":"Relecteur","describe":"Décrire","specs":"Specs","rails":"Rails","review":"Revue et fusion","yourReview":"Votre revue","blueprint":"Blueprint","approve":"Approuver","m1Specs":"Specs du Jalon 1","milestones":"Jalons"},"language":{"nav":"Langue","title":"Choisissez votre langue","subtitle":"Specrails parle votre langue","intro":"Choisissez la langue de l'interface. Elle s'applique instantanément — cette visite comprise.","note":"Vous pouvez en changer à tout moment dans Paramètres → Langue."},"theme":{"nav":"Thème","title":"Trouvez votre style","subtitle":"Des thèmes intégrés, appliqués instantanément","intro":"Choisissez l'apparence de Specrails — le thème s'applique dès que vous cliquez.","note":"Vous pouvez en changer à tout moment dans Paramètres → Apparence."},"welcome":{"nav":"Bienvenue","title":"Bienvenue dans Specrails","subtitle":"Votre cockpit local pour livrer du logiciel avec des agents IA","intro":"Specrails transforme une idée en code livré, et vous laisse <b>voir, piloter et vérifier</b> chaque étape. Décrivez ce que vous voulez, obtenez des specs précises, exécutez-les sur des rails avec Claude Code, Codex, Gemini ou Kimi, et décidez quoi fusionner. Rien ne fusionne sans vous.","coreLoopLabel":"La boucle centrale","flowCaption":"<b>Décrire → Specs → Rails → Revue et fusion</b>. Chaque étape est diffusée en direct et chaque résultat attend votre décision.","missionLabel":"Mode Mission : par défaut","missionBody":"Une conversation pilote toute l'app : l'agent rédige des specs, lance des rails, consulte les dépenses et vous tend des cartes de décision. <b>Vous parlez, il opère.</b>","boardLabel":"Mode Tableau : à un clic","boardBody":"Le tableau de bord classique : specs, rails, jobs, analytique. Basculez entre les deux depuis l'interrupteur de la barre latérale gauche : <b>mêmes projets, mêmes données</b>.","localNote":"<b>100 % local · mono-utilisateur · sans compte.</b> Tout tourne sur votre machine. Votre code ne quitte jamais l'ordinateur sauf si <i>vous</i> lancez un agent dessus.","tourNote":"Cette visite rapide passe en revue tout ce que l'app sait faire : environ deux minutes."},"mission":{"nav":"Mode Mission","title":"Parlez, l'agent opère","subtitle":"Le mode Mission est la surface par défaut","intro":"En <b>mode Mission</b>, toute la fenêtre est une conversation avec un agent qui pilote Specrails via ses propres <b>outils MCP</b> : « lance les trois specs prioritaires », « combien ai-je dépensé cette semaine ? », « écris-moi une spec pour le mode sombre ». Tout est en direct : rails, specs et cartes se mettent à jour pendant qu'il travaille.","missionsLabel":"Missions et projets","missionsBody":"Chaque conversation est une mission épinglée à un projet (ou à Accueil pour tout). Changez de mission depuis l'en-tête, envoyez des suites en cours de tour : elles sont mises en file et exécutées dans l'ordre.","levelsLabel":"Vous tenez la laisse","levelsBody":"Un niveau en direct, <b>Observer → Éditer → Opérer → Autonome</b>, parcouru avec <shift>Shift</shift> <tab>Tab</tab>, borne ce qu'il peut faire. Il n'agit jamais au-dessus du niveau fixé.","cardsLabel":"Cartes de décision","cardsBody":"Les lancements apparaissent comme des cartes en direct épinglées au-dessus du composeur : progression du rail, puis Créer la PR / Intégrer en local / Abandonner, avec une Revue en langage clair. Numéros de spec, jobs et loops dans les réponses sont cliquables.","workspaceLabel":"Un espace de travail à côté","workspaceBody":"La barre latérale droite ouvre Blueprint, Jobs, Analytique, un navigateur intégré, le terminal et l'explorateur de code à côté de la conversation, sans changer de contexte.","mcpLabel":"Tourne sur le MCP local","mcpBody":"L'agent travaille via le serveur MCP embarqué de Specrails, <b>activé par défaut</b>, en loopback uniquement. Ce même serveur permet à vos propres outils (Claude Desktop, Cursor…) de piloter Specrails ; gérez-le dans Réglages → MCP."},"builder":{"nav":"Nouveau projet","title":"Démarrer un projet à partir d'une idée","subtitle":"Le Constructeur : blueprint, specs et jalons avant la première ligne de code","intro":"Ajouter un projet → <b>Nouveau</b> transforme l'agent en <b>Constructeur de projet</b>. Décrivez l'idée ; il vous interroge brièvement (ou décide tout en un clic), propose produit, flux principal, plateforme, stack et jalons, et vous approuvez ou ajustez.","flowLabel":"De l'idée au backlog","flowCaption":"Le commit crée le dépôt, l'espace de travail et le backlog du Jalon 1 ; en option un dépôt GitHub privé aussi.","cardsLabel":"Décisions en un clic","cardsBody":"« Surprenez-moi » et « Approuver et générer les specs » apparaissent comme des cartes dans le fil ; chaque décision prise y reste épinglée comme trace.","specsLabel":"Specs premium, auditées honnêtement","specsBody":"Les specs du Jalon 1 sont rédigées en entier deux par deux, puis tout le lot est audité (problème, solution, périmètre, considérations techniques, six critères d'acceptation ou plus) et une barrière déterministe bloque tout ce qui est trop mince.","milestonesLabel":"Des jalons sur rails","milestonesBody":"Lancez le Jalon 1 et il s'exécute en rails de trois specs au plus, chacun empilé sur la branche du précédent. Les <b>points de contrôle par vague</b> demandent avant chaque rail suivant, ou activez la continuation automatique.","progressLabel":"Progression en direct","progressBody":"Le panneau Blueprint affiche des décomptes réels (livrées, en revue, terminées), jamais « terminé » tant que quelque chose n'est pas fusionné. Les jalons suivants sont générés contre le vrai dépôt."},"authorSpecs":{"nav":"Rédiger des specs","title":"Transformez les idées en specs","subtitle":"Six façons de capturer exactement ce que vous voulez construire","intro":"Une <b>spec</b> décrit un travail que vous voulez voir fait. Rédigez-la comme le moment l'exige : d'une ligne jusqu'à l'agent qui fait la recherche pour vous.","agentLabel":"Demandez à l'agent","agentBody":"En mode Mission, décrivez simplement le changement. L'agent lit d'abord le vrai code, rédige une super spec sous forme de carte en direct et l'enregistre quand vous le dites.","exploreLabel":"Explorer : converser","exploreBody":"Décrivez ce que vous voulez dans un chat ; un brouillon en direct se reconstruit à chaque tour. Un curseur de presets règle la quantité de contexte projet vue par l'IA : de votre seul message jusqu'au code complet plus vos serveurs MCP.","quickLabel":"Rapide : en un coup","quickBody":"Vous savez déjà ce que vous voulez ? Générez une spec complète en un seul tour. En option, enrichissez-la d'une Couche de contrat : noms exacts, formes de données, invariants et liste de fichiers pour que les agents ne réinventent rien.","websiteLabel":"Depuis un site web","websiteBody":"Ouvre un navigateur intégré. Sélectionnez un élément ou tracez un rectangle : la capture, le DOM et le CSS appliqué deviennent des pièces jointes.","smashLabel":"SMASH une grosse épopée","smashBody":"Éclatez une grande spec en une famille de sous-specs plus petites en un clic ; chaque enfant porte un court résumé sur sa carte.","draftsLabel":"Brouillons et reprise","draftsBody":"Garez une exploration en cours comme ticket brouillon et reprenez-la plus tard ; rouvrez n'importe quelle spec dans Explorer pour continuer à l'affiner."},"rails":{"nav":"Rails et revue","title":"Exécutez le pipeline sur des rails","subtitle":"Des voies isolées, puis une revue vraiment lisible","intro":"Les <b>rails</b> sont des voies d'exécution : jusqu'à douze, créées à la demande. Déposez des specs sur un rail et appuyez sur <play>▶ Play</play>, ou <b>Tout lancer</b> les rails libres en parallèle. Chaque exécution travaille dans son propre worktree git, jamais dans votre checkout.","jobLabel":"Ce que fait chaque exécution","flowCaption":"Chaque phase est diffusée en direct. À la fin, le travail reste sur sa branche et l'app vous demande quoi faire : Specrails produit des PR, il ne fusionne jamais seul.","reviewLabel":"Revue de PR qui demande d'abord","reviewBody":"Les specs terminées passent <b>En revue</b>. Vous choisissez : créer une PR brouillon, intégrer en local (sans distant), ou abandonner. La fusion les passe en Terminé.","packetLabel":"Dossier de revue","packetBody":"Une page en langage clair par livraison : ce qui a été demandé, ce qui a changé, ce que l'IA rapporte face à ce que l'app a vérifié, le coût, avec Accepter / Demander des changements / Abandonner.","steerLabel":"Pilotez en cours d'exécution","steerBody":"Les exécutions Claude sont interactives : posez des questions ou réorientez pendant le travail, et suivez une progression narrée plutôt que des logs bruts.","loopsLabel":"Construisez vos propres loops","loopsBody":"<b>Loops</b> est un constructeur visuel : enchaînez étapes IA, commandes shell et un <b>Loop Decider</b> qui répète jusqu'à atteindre l'objectif. Implement et Freestyle sont fournis prêts à l'emploi.","profilesLabel":"Profils d'agents et valeurs par défaut","profilesBody":"Décidez quels agents tournent et quel modèle chacun utilise : par profil de projet, par rail, ou une fois pour toute la machine dans Réglages → Agents Specrails.","isolationLabel":"Plusieurs projets, isolés","isolationBody":"Chaque projet a sa base de données et sa file ; votre dépôt reste intact car Specrails garde ses fichiers sous votre dossier personnel."},"providers":{"nav":"Votre agent","title":"Apportez votre propre agent","subtitle":"Claude Code, Codex, Gemini et Kimi comme moteurs de premier rang","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> et <b>Kimi Code</b> sont des moteurs interchangeables derrière un même contrat. Tout ce qui est installé et connecté sur cette machine est détecté automatiquement et proposé partout ; rien à configurer par projet.","calloutLabel":"Quand plusieurs sont installés","calloutBody":"Choisissez le moteur <b>par spec, par rail, par mission ou par lancement de terminal</b> ; l'app mémorise votre dernier choix par projet. Les coûts estimés sont marqués <mono>~</mono> ; Kimi ne rapporte ni tokens ni coût.","table":{"capability":"Capacité","streamingResume":"Streaming & reprise de session","native":"Natif","costReporting":"Suivi des coûts","providerBilled":"Facturé par le fournisseur","estimated":"Estimé (~)","unavailable":"Indisponible","telemetry":"Télémétrie (OTEL)","synthesized":"Synthétisée","agentProfiles":"Profils d'agents"}},"cost":{"nav":"Suivre les coûts","title":"Suivez chaque centime","subtitle":"Chaque invocation facturable, enregistrée et visualisée","intro":"Chaque invocation d'IA enregistre son cycle de vie et son fournisseur. L'usage et le coût restent indisponibles lorsqu'un fournisseur, tel que Kimi, ne les fournit pas.","analyticsLabel":"Page Analytics","analyticsBody":"Un hero de burn-rate, une timeline quotidienne, le top des tickets, la répartition par modèle et un nuage coût vs tours. Filtrez par période (7 j / 30 j / 90 j / Tout) et par surface.","perTicketLabel":"Dépenses par ticket","perTicketBody":"Le détail de chaque spec montre ce qu'elle a coûté et combien de tours il a fallu, avec un lien direct vers Analytics filtré sur ce ticket.","honestLabel":"Des chiffres honnêtes","honestBody":"Le coût Claude est fourni par le fournisseur ; Codex et Gemini peuvent être estimés et marqués d'un <mono>~</mono>. Pour Kimi, les tokens et le coût USD sont indisponibles, pas nuls.","budgetsLabel":"Budgets & alertes","budgetsBody":"Définissez un budget quotidien et une alerte de coût par job ; l'application met automatiquement la file en pause quand vous franchissez la limite. Exportez tout en CSV ou JSON."},"workspace":{"nav":"Espace de travail","title":"Faites-en votre espace de travail","subtitle":"Tout ce qu'il vous faut sans quitter la fenêtre","terminalLabel":"Panneau terminal","terminalBody":"Un vrai terminal façon VS Code en bas (<mod>{{mod}}</mod> <j>J</j>) : rendu WebGL, recherche, images en ligne, chemins par glisser-déposer et intégration shell. Jusqu'à 10 sessions par projet.","codeLabel":"Explorateur de code","codeBody":"Arborescence en lecture seule et visionneuse Monaco avec des résumés IA en langage clair et une histoire de construction par fichier : quelle spec l'a touché, quand et pourquoi.","browserLabel":"Navigateur intégré","browserBody":"Ouvrez liens, PR et votre serveur de dev dans l'app : un volet de navigateur natif dans la version bureau, avec des popups qui préservent les connexions OAuth.","integrationsLabel":"Intégrations et MCP","integrationsBody":"Une place de marché d'intégrations MCP par projet (la navigation sémantique Serena est fournie), plus le serveur MCP de Specrails qui expose l'app à vos propres outils IA.","themesLabel":"Thèmes et effets","themesBody":"Six thèmes intégrés (specrails, dracula, aurora-light, obsidian-dark, code-rain et galaxy) appliqués avant le rendu de l'interface. Réglages → Effets active des touches visuelles comme le halo de réflexion de l'agent.","chatsLabel":"Chats réductibles","chatsBody":"Garez une session Explorer ou Édition IA dans une puce du dock et reprenez-la plus tard ; jamais perdue entre rechargements ou changements de projet.","compareLabel":"Comparer côte à côte","compareBody":"Glissez une spec vers le bord de l'écran et un sélecteur de vos autres specs apparaît : relisez-en deux ensemble, façon tablette.","desktopLabel":"Bureau ou navigateur","desktopBody":"Utilisez Specrails dans votre navigateur, ou prenez l'app de bureau signée (macOS et Windows) qui embarque son serveur, Node, git et la CLI GitHub."},"companion":{"nav":"Compagnon mobile","title":"Emportez Specrails avec vous","subtitle":"Specrails Companion — vos pipelines, dans votre poche","intro":"<b>Specrails Companion</b> est une application web disponible sur specrails.dev/companion-app — ouvrez-la sur votre téléphone (ou ajoutez-la à votre écran d'accueil) pour parcourir le tableau des specs, lancer et arrêter des rails, suivre les logs des jobs en direct et jeter un œil aux analytics. Aucune installation, aucun app store.","localLabel":"100 % local, comme tout le reste","localBody":"Votre téléphone se connecte directement à cet ordinateur — en pair-à-pair et chiffré (WebRTC). Pas de relais cloud, pas de compte, et votre code ne quitte jamais vos appareils.","downloadLabel":"Ouvrez-la sur votre téléphone","downloadHint":"Scannez le code avec l'appareil photo de votre téléphone, ou ouvrez specrails.dev/companion-app dans son navigateur.","open":"Ouvrir Specrails Companion","pairLabel":"L'appairage prend dix secondes","pairBody":"Sur votre téléphone, ouvrez specrails.dev/companion-app, puis ici allez dans Paramètres → Compagnon mobile → Appairer le compagnon web et suivez les étapes à l'écran."},"moveFast":{"nav":"Aller vite","title":"Avancez à la vitesse de la pensée","subtitle":"Le clavier d'abord, partout","paletteLabel":"Palette de commandes","paletteShortcut":"<f>Appuyez sur</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>n'importe où</m>","paletteBody":"Changez de projet, lancez des commandes de spec, allez à n'importe quelle page et retrouvez les jobs récents, tout en recherche floue.","agentLabel":"Agent","agentBody":"Affichez ou masquez l'agent avec <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a> ; parcourez son niveau avec <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Panneau terminal","terminalBody":"Basculez avec <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Tous les raccourcis","shortcutsBody":"Appuyez sur <q>?</q> pour voir l'aide-mémoire complet.","chatLabel":"Barre latérale droite","chatBody":"Basculez la barre latérale droite avec <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Barre des projets","projectsBody":"Basculez la barre Arc gauche avec <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Pages et projets par numéro","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> ouvre une page ; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> change de projet.","outro":"<b>La visite est terminée.</b> Tapez ce que vous voulez construire dans le composeur de mission, ou ajoutez un projet depuis la barre de gauche. Vous pouvez rouvrir cette visite à tout moment depuis les Réglages."},"jira":{"label":"Intégration Jira","body":"Adossez n'importe quel projet à un <b>tableau Jira</b> — chaque spec devient un ticket Jira, synchronisé dans les deux sens : le statut suit le rail et un commentaire est publié à la fin d'un job. Configurez-le par projet lors de l'ajout, ou à tout moment dans les Paramètres."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={title:`Projekt hinzufügen`,description:`Registrieren Sie ein Projektverzeichnis, um es über Specrails zu verwalten.`,noProviderDetected:`Keine KI-CLI gefunden. Installieren Sie zuerst Claude Code, Codex CLI, Gemini CLI oder Kimi Code.`,pathLabel:`Projektpfad`,pathPlaceholder:`/Users/ich/mein-projekt`,pathHint:`Absoluter Pfad zum Projekt-Root`,browseForFolder:`Ordner auswählen`,selectProjectFolder:`Projektordner auswählen`,nameLabel:`Anzeigename`,optional:`(optional)`,namePlaceholder:`Mein Projekt`,nameHint:`Standard ist der Verzeichnisname`,adding:`Wird hinzugefügt…`,submit:`Projekt hinzufügen`,toolsRequired_one:`{{tools}} wird benötigt, um ein Projekt hinzuzufügen`,toolsRequired_other:`{{tools}} werden benötigt, um ein Projekt hinzuzufügen`,errors:{pathRequired:`Projektpfad ist erforderlich`,addFailed:`Projekt konnte nicht hinzugefügt werden`},toasts:{registered:`Projekt „{{name}}“ registriert`},chooser:{description:`Bring ein bestehendes Repository mit oder baue ein ganz neues Projekt aus einer Idee.`,existingTitle:`Bestehendes Projekt`,existingDescription:`Registriere ein Repository, das bereits auf der Festplatte existiert.`,newTitle:`Neues Projekt`,newDescription:`Beschreibe eine Idee und erhalte ein aufgesetztes Repo mit einem Meilenstein-1-Backlog.`}},t={corruptedBundle:`Bundle beschädigt – App neu installieren`,notInstalled:`nicht installiert`,failedToExecute:`gefunden, aber Ausführung fehlgeschlagen`,failedToExecuteAt:`unter {{path}} gefunden, aber Ausführung fehlgeschlagen`,failedToExecuteWithError:`gefunden, aber Ausführung fehlgeschlagen ({{error}})`,failedToExecuteAtWithError:`unter {{path}} gefunden, aber Ausführung fehlgeschlagen ({{error}})`,needsMinimum:`{{version}} gefunden – benötigt {{minVersion}}+`,unknownVersion:`unbekannt`,installedLabel:`installiert`,verifyError:`Entwickler-Tools konnten lokal nicht überprüft werden – die Installation validiert sie.`,allDetected:`Alle erforderlichen Tools erkannt`,bundleCorruptedTitle:`App-Bundle beschädigt`,toolsRequired_one:`{{count}} Entwickler-Tool erforderlich`,toolsRequired_other:`{{count}} Entwickler-Tools erforderlich`,reinstallHint:`Installieren Sie die Specrails-App neu, um die mitgelieferten Tools wiederherzustellen.`,installMissingHint:`Installieren Sie die fehlenden Tools, um fortzufahren.`,moreInfo:`Mehr Infos`,bundledBadge:`mitgeliefert`,optional:`optional`,ghNoAuth:"Nicht angemeldet — führe `gh auth login` aus"},n={title:`Entwickler-Tools installieren`,description:`SpecRails benötigt Node.js, npm, npx und Git im PATH. Wählen Sie das Snippet für Ihr Betriebssystem, führen Sie es aus und klicken Sie dann auf „Installiert, erneut prüfen“.`,darwin:{intro:`Mit Homebrew bekommen Sie beide Tools in einer Zeile. Ohne brew nutzen Sie die offiziellen Downloads.`,installNodeGit:`Node.js und Git über Homebrew installieren`},win32:{intro:`Winget ist in Windows 11 und aktuellen Windows-10-Versionen enthalten. Öffnen Sie PowerShell oder Terminal und führen Sie aus:`,installNode:`Node.js LTS installieren`,installGit:`Git installieren`,note:`Starten Sie Specrails nach der Installation neu, damit Windows den PATH aktualisiert.`},linux:{intro:`Verwenden Sie den Paketmanager Ihrer Distribution:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (offiziell)`,gitOfficial:`Git (offiziell)`,gitWindows:`Git für Windows (offiziell)`},showOtherPlatforms:`Andere Plattformen anzeigen`,hideOtherPlatforms:`Andere Plattformen ausblenden`,recheck:`Installiert, erneut prüfen`,diagnostics:{copy:`Diagnose kopieren`,copied:`Diagnose kopiert`,failed:`Kopieren fehlgeschlagen`},corrupted:{title:`App-Bundle beschädigt`,description:`Mindestens ein mitgeliefertes Tool (Node.js, Git) konnte nicht verifiziert werden.`,body:`Dieses Tool ist in der Specrails-App enthalten und kann nicht separat installiert werden. Wenn Sie diese Meldung sehen, ist das App-Bundle möglicherweise beschädigt. Bitte installieren Sie Specrails neu.`}},r={title:`Willkommen bei <spec>spec</spec><rails>rails</rails>`,description:`Specrails verwaltet mehrere Projekte über eine einzige Oberfläche. Fügen Sie Ihr erstes Projekt hinzu, um loszulegen.`,addFirstProject:`Erstes Projekt hinzufügen`,jiraHint:`Verbinde jedes Projekt mit seinem eigenen Jira-Board — Specs bleiben in beide Richtungen synchron.`,mcpHint:`Verbinde externe KI-Tools über einen sicheren lokalen MCP-Server mit Specrails: standardmäßig an, verwalte ihn unter Einstellungen → MCP.`,agentChatHint:`Steuere Specrails per Chat — ein integrierter Agent verwaltet Specs, Rails und Analysen für dich über den lokalen MCP. Öffne ihn über die Blase oder mit ⌘⇧A.`,localEnginesHint:`Nur ein lokales Modell? Füge unter Einstellungen → Specrails Agents einen OpenAI-kompatiblen Endpoint hinzu — Rails, Chat und Missionen laufen dann standardmäßig darauf.`},i=JSON.parse(`{"productTour":"Produkttour","stepCount":"Schritt {{current}} von {{total}}","goToStep":"Zu Schritt {{step}}: {{label}}","stepLabel":"Schritt {{step}}","dontShowAgain":"Nicht mehr anzeigen","skipTour":"Tour überspringen","getStarted":"Loslegen","flow":{"architect":"Architekt","developer":"Entwickler","reviewer":"Reviewer","describe":"Beschreiben","specs":"Specs","rails":"Rails","review":"Prüfen & mergen","yourReview":"Dein Review","blueprint":"Blueprint","approve":"Freigeben","m1Specs":"Specs für Meilenstein 1","milestones":"Meilensteine"},"language":{"nav":"Sprache","title":"Wählen Sie Ihre Sprache","subtitle":"Specrails spricht Ihre Sprache","intro":"Wählen Sie die Sprache für die Oberfläche. Sie gilt sofort – diese Tour eingeschlossen.","note":"Sie können sie jederzeit unter Einstellungen → Sprache ändern."},"theme":{"nav":"Theme","title":"Wählen Sie Ihren Look","subtitle":"Integrierte Themes, sofort angewendet","intro":"Wählen Sie, wie Specrails aussehen soll — das Theme wird sofort beim Klick angewendet.","note":"Sie können es jederzeit unter Einstellungen → Erscheinungsbild ändern."},"welcome":{"nav":"Willkommen","title":"Willkommen bei Specrails","subtitle":"Dein lokales Cockpit, um Software mit KI-Agenten auszuliefern","intro":"Specrails macht aus einer Idee ausgelieferten Code, und du kannst jeden Schritt <b>sehen, steuern und prüfen</b>. Beschreibe, was du willst, erhalte präzise Specs, führe sie auf Rails mit Claude Code, Codex, Gemini oder Kimi aus und entscheide, was gemergt wird. Nichts wird ohne dich gemergt.","coreLoopLabel":"Der Kernzyklus","flowCaption":"<b>Beschreiben → Specs → Rails → Prüfen & mergen</b>. Jeder Schritt streamt live, jedes Ergebnis wartet auf deine Entscheidung.","missionLabel":"Missionsmodus: der Standard","missionBody":"Eine Unterhaltung steuert die ganze App: der Agent schreibt Specs, startet Rails, prüft Ausgaben und reicht dir Entscheidungskarten. <b>Du sprichst, er handelt.</b>","boardLabel":"Board-Modus: einen Schalter entfernt","boardBody":"Das klassische Dashboard: Spec-Board, Rails, Jobs, Analytik. Wechsle mit dem Schalter in der linken Seitenleiste: <b>gleiche Projekte, gleiche Daten</b>.","localNote":"<b>100 % lokal · ein Nutzer · keine Konten.</b> Alles läuft auf deinem Rechner. Dein Code verlässt den Laptop nur, wenn <i>du</i> einen Agenten darauf startest.","tourNote":"Diese kurze Tour zeigt alles, was die App kann: etwa zwei Minuten."},"mission":{"nav":"Missionsmodus","title":"Sprich, der Agent handelt","subtitle":"Der Missionsmodus ist die Standardoberfläche","intro":"Im <b>Missionsmodus</b> ist das ganze Fenster eine Unterhaltung mit einem Agenten, der Specrails über seine eigenen <b>MCP-Tools</b> steuert: „starte die drei wichtigsten Specs“, „wie viel habe ich diese Woche ausgegeben?“, „schreib mir eine Spec für den Dark Mode“. Alles passiert live: Rails, Specs und Karten aktualisieren sich, während er arbeitet.","missionsLabel":"Missionen & Projekte","missionsBody":"Jede Unterhaltung ist eine Mission, an ein Projekt geheftet (oder an Home für alles). Wechsle Missionen im Kopfbereich, schick Nachrichten mitten im Zug: sie reihen sich ein und laufen der Reihe nach.","levelsLabel":"Du hältst die Leine","levelsBody":"Eine Live-Stufe, <b>Beobachten → Bearbeiten → Bedienen → Autonom</b>, mit <shift>Shift</shift> <tab>Tab</tab> durchgeschaltet, begrenzt, wie weit er gehen darf. Er handelt nie über der gesetzten Stufe.","cardsLabel":"Entscheidungskarten","cardsBody":"Starts erscheinen als Live-Karten über dem Composer: Rail-Fortschritt, dann PR erstellen / Lokal integrieren / Verwerfen, mit einem Review in Klartext. Spec-Nummern, Jobs und Loops in Antworten sind anklickbar.","workspaceLabel":"Ein Arbeitsbereich nebenan","workspaceBody":"Die rechte Seitenleiste öffnet Blueprint, Jobs, Analytik, einen eingebetteten Browser, das Terminal und den Code-Explorer neben der Unterhaltung, ohne Kontextwechsel.","mcpLabel":"Läuft über das lokale MCP","mcpBody":"Der Agent arbeitet über den eingebetteten Specrails-MCP-Server: <b>standardmäßig an</b>, nur Loopback. Derselbe Server lässt deine eigenen Tools (Claude Desktop, Cursor …) Specrails steuern; verwalte ihn unter Einstellungen → MCP."},"builder":{"nav":"Neues Projekt","title":"Ein Projekt aus einer Idee starten","subtitle":"Der Builder: Blueprint, Specs und Meilensteine, bevor eine Zeile Code existiert","intro":"Projekt hinzufügen → <b>Neu</b> macht den Agenten zum <b>Projekt-Builder</b>. Beschreibe die Idee; er fragt kurz nach (oder entscheidet alles mit einem Klick), schlägt Produkt, Kernablauf, Plattform, Stack und Meilensteine vor, und du gibst frei oder passt an.","flowLabel":"Von der Idee zum Backlog","flowCaption":"Der Commit legt Repository, Arbeitsbereich und das Backlog für Meilenstein 1 an; optional auch ein privates GitHub-Repo.","cardsLabel":"Entscheidungen mit einem Klick","cardsBody":"„Überrasch mich“ und „Freigeben und Specs erzeugen“ erscheinen als Karten im Verlauf; jede getroffene Entscheidung bleibt dort als Nachweis stehen.","specsLabel":"Premium-Specs, ehrlich geprüft","specsBody":"Die Specs für Meilenstein 1 werden vollständig je zwei auf einmal geschrieben, dann wird der ganze Stapel geprüft (Problem, Lösung, Umfang, technische Überlegungen, sechs oder mehr Akzeptanzkriterien) und ein deterministisches Gate blockiert alles Dünne.","milestonesLabel":"Meilensteine auf Rails","milestonesBody":"Starte Meilenstein 1 und er läuft als Rails mit bis zu drei Specs, jedes auf dem Branch des vorigen gestapelt. <b>Wellen-Checkpoints</b> fragen vor jedem nächsten Rail, oder schalte automatisches Fortfahren ein.","progressLabel":"Live-Fortschritt","progressBody":"Das Blueprint-Panel zeigt echte Zahlen (geliefert, im Review, fertig), nie „abgeschlossen“, solange etwas ungemergt ist. Spätere Meilensteine werden gegen das echte Repository erzeugt."},"authorSpecs":{"nav":"Specs schreiben","title":"Ideen zu Specs machen","subtitle":"Sechs Wege, genau festzuhalten, was gebaut werden soll","intro":"Eine <b>Spec</b> beschreibt Arbeit, die erledigt werden soll. Schreib sie, wie es gerade passt: vom Einzeiler bis zum Agenten, der für dich recherchiert.","agentLabel":"Den Agenten fragen","agentBody":"Im Missionsmodus beschreibst du einfach die Änderung. Der Agent liest zuerst den echten Code, entwirft eine Super-Spec als Live-Karte und speichert sie, wenn du es sagst.","exploreLabel":"Explore: im Gespräch","exploreBody":"Beschreibe im Chat, was du willst; ein Live-Entwurf baut sich in jedem Zug neu auf. Ein Preset-Regler bestimmt, wie viel Projektkontext die KI sieht: von nur deiner Nachricht bis zur ganzen Codebasis plus deinen MCP-Servern.","quickLabel":"Quick: in einem Zug","quickBody":"Du weißt schon, was du willst? Erzeuge eine vollständige Spec in einem Zug. Optional mit Contract Layer: exakte Namen, Datenformen, Invarianten und Dateiliste, damit die Agenten nichts neu erfinden.","websiteLabel":"Von einer Website","websiteBody":"Öffnet einen eingebetteten Browser. Wähle ein Element oder zieh ein Rechteck: Screenshot, DOM und angewandtes CSS werden zu Anhängen.","smashLabel":"Ein großes Epic SMASHen","smashBody":"Zerlege eine große Spec mit einem Klick in eine Familie kleinerer Sub-Specs; jedes Kind trägt eine Kurzfassung auf seiner Karte.","draftsLabel":"Entwürfe & Weiterbearbeiten","draftsBody":"Parke eine laufende Exploration als Entwurfs-Ticket und mach später weiter; öffne jede Spec wieder in Explore, um sie zu verfeinern."},"rails":{"nav":"Rails & Review","title":"Die Pipeline auf Rails ausführen","subtitle":"Isolierte Spuren, dann ein Review, das man wirklich lesen kann","intro":"<b>Rails</b> sind Ausführungsspuren: bis zu zwölf, nach Bedarf erstellt. Lege Specs auf ein Rail und drücke <play>▶ Play</play>, oder <b>Alle starten</b> für freie Rails parallel. Jeder Lauf arbeitet im eigenen Git-Worktree, nie in deinem Checkout.","jobLabel":"Was jeder Lauf tut","flowCaption":"Jede Phase streamt live. Am Ende bleibt die Arbeit auf ihrem Branch und die App fragt dich, was zu tun ist: Specrails erzeugt PRs, es mergt nie von selbst.","reviewLabel":"PR-Review, das zuerst fragt","reviewBody":"Fertige Specs landen <b>Im Review</b>. Du wählst: Draft-PR erstellen, lokal integrieren (ohne Remote) oder verwerfen. Der Merge setzt sie auf Fertig.","packetLabel":"Review-Paket","packetBody":"Eine Klartext-Seite pro Lieferung: was verlangt war, was sich geändert hat, was die KI berichtet gegenüber dem, was die App verifiziert hat, die Kosten, mit Annehmen / Änderungen anfordern / Verwerfen.","steerLabel":"Mitten im Lauf steuern","steerBody":"Claude-Läufe sind interaktiv: stelle Fragen oder lenke um, während sie arbeiten, und folge einem erzählten Fortschritt statt roher Logs.","loopsLabel":"Eigene Loops bauen","loopsBody":"<b>Loops</b> ist ein visueller Builder: verkette KI-Schritte, Shell-Befehle und einen <b>Loop Decider</b>, der wiederholt, bis das Ziel erreicht ist. Implement, Batch und Freestyle sind fertig dabei.","profilesLabel":"Agentenprofile & Vorgaben","profilesBody":"Lege fest, welche Agenten laufen und welches Modell jeder nutzt: pro Projektprofil, pro Rail oder einmal für die ganze Maschine unter Einstellungen → Specrails-Agenten.","isolationLabel":"Viele Projekte, isoliert","isolationBody":"Jedes Projekt hat eigene Datenbank und Warteschlange; dein Repository bleibt unberührt, weil Specrails seine Dateien in deinem Home-Ordner hält."},"providers":{"nav":"Dein Agent","title":"Bring deinen eigenen Agenten","subtitle":"Claude Code, Codex, Gemini und Kimi als vollwertige Engines","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> und <b>Kimi Code</b> sind austauschbare Engines hinter einem Vertrag. Was auf dieser Maschine installiert und angemeldet ist, wird automatisch erkannt und überall angeboten; nichts pro Projekt zu konfigurieren.","calloutLabel":"Wenn mehrere installiert sind","calloutBody":"Wähle die Engine <b>pro Spec, pro Rail, pro Mission oder pro Terminalstart</b>; die App merkt sich deine letzte Wahl pro Projekt. Geschätzte Kosten sind mit <mono>~</mono> markiert; Kimi meldet weder Tokens noch Kosten.","table":{"capability":"Fähigkeit","streamingResume":"Streaming & Sitzungsfortsetzung","native":"Nativ","costReporting":"Kostenberichte","providerBilled":"Anbieterseitig abgerechnet","estimated":"Geschätzt (~)","unavailable":"Nicht verfügbar","telemetry":"Telemetrie (OTEL)","synthesized":"Synthetisiert","agentProfiles":"Agentenprofile"}},"cost":{"nav":"Kosten verfolgen","title":"Jeden Cent im Blick","subtitle":"Jeder kostenpflichtige Aufruf, erfasst und visualisiert","intro":"Jeder KI-Aufruf erfasst Lebenszyklus und Anbieter. Nutzungs- und Kostendaten bleiben nicht verfügbar, wenn ein Anbieter wie Kimi sie nicht meldet.","analyticsLabel":"Analytics-Seite","analyticsBody":"Ein Burn-Rate-Hero, Tages-Timeline, Top-Tickets, Modellaufschlüsselung und ein Kosten-vs.-Turns-Scatter. Filtern nach Zeitraum (7d / 30d / 90d / Alle) und nach Bereich.","perTicketLabel":"Ausgaben pro Ticket","perTicketBody":"Die Detailansicht jeder Spec zeigt, was sie gekostet hat und wie viele Turns sie brauchte – mit Deep-Link in die auf dieses Ticket gefilterte Analytics-Ansicht.","honestLabel":"Ehrliche Zahlen","honestBody":"Claude-Kosten werden vom Anbieter gemeldet; Codex und Gemini können geschätzt und mit <mono>~</mono> markiert werden. Bei Kimi sind Tokens und USD-Kosten nicht verfügbar, nicht null.","budgetsLabel":"Budgets & Alarme","budgetsBody":"Legen Sie ein Tagesbudget und einen Kostenalarm pro Job fest; die App pausiert die Queue automatisch, wenn die Grenze überschritten wird. Exportieren Sie alles als CSV oder JSON."},"workspace":{"nav":"Arbeitsbereich","title":"Mach es zu deinem Arbeitsbereich","subtitle":"Alles Nötige, ohne das Fenster zu verlassen","terminalLabel":"Terminal-Panel","terminalBody":"Ein echtes Terminal im VS-Code-Stil unten (<mod>{{mod}}</mod> <j>J</j>): WebGL-Rendering, Suche, Inline-Bilder, Pfade per Drag & Drop und Shell-Integration. Bis zu 10 Sitzungen pro Projekt.","codeLabel":"Code-Explorer","codeBody":"Ein schreibgeschützter Dateibaum und Monaco-Viewer mit KI-Zusammenfassungen in Klartext und einer Entstehungsgeschichte pro Datei: welche Spec sie berührt hat, wann und warum.","browserLabel":"Eingebetteter Browser","browserBody":"Öffne Links, PRs und deinen Dev-Server in der App: ein nativer Browser-Bereich in der Desktop-Version, mit Popups, die OAuth-Logins erhalten.","integrationsLabel":"Integrationen & MCP","integrationsBody":"Ein Marktplatz für MCP-Integrationen pro Projekt (Serenas semantische Navigation ist dabei), plus der Specrails-MCP-Server, der die App deinen eigenen KI-Tools öffnet.","themesLabel":"Themes & Effekte","themesBody":"Sechs eingebaute Themes (specrails, dracula, aurora-light, obsidian-dark, code-rain und galaxy), angewandt bevor die UI zeichnet. Einstellungen → Effekte schaltet visuelle Akzente wie den Denk-Halo des Agenten.","chatsLabel":"Minimierbare Chats","chatsBody":"Parke eine Explore- oder KI-Edit-Sitzung als Dock-Chip und nimm sie später wieder auf; geht bei Reloads oder Projektwechseln nie verloren.","compareLabel":"Nebeneinander vergleichen","compareBody":"Zieh eine Spec an den Bildschirmrand und eine Auswahl deiner anderen Specs fährt herein: prüfe zwei zusammen, Tablet-Stil.","desktopLabel":"Desktop oder Browser","desktopBody":"Nutze Specrails im Browser oder hol dir die signierte Desktop-App (macOS & Windows), die Server, Node, git und GitHub-CLI mitbringt."},"companion":{"nav":"Mobiler Companion","title":"Nehmen Sie Specrails überallhin mit","subtitle":"Specrails Companion – Ihre Pipelines auf Ihrem Smartphone","intro":"<b>Specrails Companion</b> ist eine Web-App unter specrails.dev/companion-app – öffnen Sie sie auf Ihrem Smartphone (oder fügen Sie sie zu Ihrem Home-Bildschirm hinzu), um das Specs-Board zu durchstöbern, Rails zu starten und zu stoppen, Live-Job-Logs zu verfolgen und einen Blick auf die Analytics zu werfen. Keine Installation, kein App-Store.","localLabel":"100 % lokal, wie alles andere","localBody":"Ihr Smartphone verbindet sich direkt mit diesem Rechner – Peer-to-Peer und verschlüsselt (WebRTC). Kein Cloud-Relay, kein Konto, und Ihr Code verlässt nie Ihre Geräte.","downloadLabel":"Auf Ihrem Smartphone öffnen","downloadHint":"Scannen Sie den Code mit der Kamera Ihres Smartphones oder öffnen Sie specrails.dev/companion-app im Browser.","open":"Specrails Companion öffnen","pairLabel":"Die Kopplung dauert zehn Sekunden","pairBody":"Öffnen Sie auf Ihrem Smartphone specrails.dev/companion-app und gehen Sie dann hier zu Einstellungen → Mobiler Companion → Web-Companion koppeln und folgen Sie den Schritten am Bildschirm."},"moveFast":{"nav":"Schnell sein","title":"Bewege dich in Gedankengeschwindigkeit","subtitle":"Tastatur zuerst, überall","paletteLabel":"Befehlspalette","paletteShortcut":"<f>Drücke</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>überall</m>","paletteBody":"Projekte wechseln, Spec-Befehle ausführen, zu jeder Seite springen und aktuelle Jobs finden, alles mit unscharfer Suche.","agentLabel":"Agent","agentBody":"Agent ein-/ausblenden mit <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; Stufe durchschalten mit <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Terminal-Panel","terminalBody":"Umschalten mit <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Alle Kurzbefehle","shortcutsBody":"Drücke <q>?</q> für die komplette Übersicht.","chatLabel":"Rechte Seitenleiste","chatBody":"Rechte Seitenleiste umschalten mit <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Projektleiste","projectsBody":"Linke Arc-Leiste umschalten mit <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Seiten & Projekte per Nummer","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> springt zu einer Seite; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> wechselt das Projekt.","outro":"<b>Das war die Tour.</b> Tippe in den Missions-Composer, was du bauen willst, oder füge links ein Projekt hinzu. Diese Tour lässt sich jederzeit in den Einstellungen erneut öffnen."},"jira":{"label":"Jira-Integration","body":"Hinterlege jedes Projekt mit einem <b>Jira-Board</b> — jede Spec wird zu einem Jira-Vorgang, in beide Richtungen synchronisiert: Der Status folgt dem Rail und am Ende eines Jobs wird ein Kommentar gepostet. Richte es pro Projekt beim Hinzufügen ein oder jederzeit in den Einstellungen."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|
|
1
|
+
var e={title:`Projekt hinzufügen`,description:`Registrieren Sie ein Projektverzeichnis, um es über Specrails zu verwalten.`,noProviderDetected:`Keine KI-CLI gefunden. Installieren Sie zuerst Claude Code, Codex CLI, Gemini CLI oder Kimi Code.`,pathLabel:`Projektpfad`,pathPlaceholder:`/Users/ich/mein-projekt`,pathHint:`Absoluter Pfad zum Projekt-Root`,browseForFolder:`Ordner auswählen`,selectProjectFolder:`Projektordner auswählen`,nameLabel:`Anzeigename`,optional:`(optional)`,namePlaceholder:`Mein Projekt`,nameHint:`Standard ist der Verzeichnisname`,adding:`Wird hinzugefügt…`,submit:`Projekt hinzufügen`,toolsRequired_one:`{{tools}} wird benötigt, um ein Projekt hinzuzufügen`,toolsRequired_other:`{{tools}} werden benötigt, um ein Projekt hinzuzufügen`,errors:{pathRequired:`Projektpfad ist erforderlich`,addFailed:`Projekt konnte nicht hinzugefügt werden`},toasts:{registered:`Projekt „{{name}}“ registriert`},chooser:{description:`Bring ein bestehendes Repository mit oder baue ein ganz neues Projekt aus einer Idee.`,existingTitle:`Bestehendes Projekt`,existingDescription:`Registriere ein Repository, das bereits auf der Festplatte existiert.`,newTitle:`Neues Projekt`,newDescription:`Beschreibe eine Idee und erhalte ein aufgesetztes Repo mit einem Meilenstein-1-Backlog.`}},t={corruptedBundle:`Bundle beschädigt – App neu installieren`,notInstalled:`nicht installiert`,failedToExecute:`gefunden, aber Ausführung fehlgeschlagen`,failedToExecuteAt:`unter {{path}} gefunden, aber Ausführung fehlgeschlagen`,failedToExecuteWithError:`gefunden, aber Ausführung fehlgeschlagen ({{error}})`,failedToExecuteAtWithError:`unter {{path}} gefunden, aber Ausführung fehlgeschlagen ({{error}})`,needsMinimum:`{{version}} gefunden – benötigt {{minVersion}}+`,unknownVersion:`unbekannt`,installedLabel:`installiert`,verifyError:`Entwickler-Tools konnten lokal nicht überprüft werden – die Installation validiert sie.`,allDetected:`Alle erforderlichen Tools erkannt`,bundleCorruptedTitle:`App-Bundle beschädigt`,toolsRequired_one:`{{count}} Entwickler-Tool erforderlich`,toolsRequired_other:`{{count}} Entwickler-Tools erforderlich`,reinstallHint:`Installieren Sie die Specrails-App neu, um die mitgelieferten Tools wiederherzustellen.`,installMissingHint:`Installieren Sie die fehlenden Tools, um fortzufahren.`,moreInfo:`Mehr Infos`,bundledBadge:`mitgeliefert`,optional:`optional`,ghNoAuth:"Nicht angemeldet — führe `gh auth login` aus"},n={title:`Entwickler-Tools installieren`,description:`SpecRails benötigt Node.js, npm, npx und Git im PATH. Wählen Sie das Snippet für Ihr Betriebssystem, führen Sie es aus und klicken Sie dann auf „Installiert, erneut prüfen“.`,darwin:{intro:`Mit Homebrew bekommen Sie beide Tools in einer Zeile. Ohne brew nutzen Sie die offiziellen Downloads.`,installNodeGit:`Node.js und Git über Homebrew installieren`},win32:{intro:`Winget ist in Windows 11 und aktuellen Windows-10-Versionen enthalten. Öffnen Sie PowerShell oder Terminal und führen Sie aus:`,installNode:`Node.js LTS installieren`,installGit:`Git installieren`,note:`Starten Sie Specrails nach der Installation neu, damit Windows den PATH aktualisiert.`},linux:{intro:`Verwenden Sie den Paketmanager Ihrer Distribution:`,debian:`Debian / Ubuntu`,fedora:`Fedora / RHEL`},links:{nodeOfficial:`Node.js (offiziell)`,gitOfficial:`Git (offiziell)`,gitWindows:`Git für Windows (offiziell)`},showOtherPlatforms:`Andere Plattformen anzeigen`,hideOtherPlatforms:`Andere Plattformen ausblenden`,recheck:`Installiert, erneut prüfen`,diagnostics:{copy:`Diagnose kopieren`,copied:`Diagnose kopiert`,failed:`Kopieren fehlgeschlagen`},corrupted:{title:`App-Bundle beschädigt`,description:`Mindestens ein mitgeliefertes Tool (Node.js, Git) konnte nicht verifiziert werden.`,body:`Dieses Tool ist in der Specrails-App enthalten und kann nicht separat installiert werden. Wenn Sie diese Meldung sehen, ist das App-Bundle möglicherweise beschädigt. Bitte installieren Sie Specrails neu.`}},r={title:`Willkommen bei <spec>spec</spec><rails>rails</rails>`,description:`Specrails verwaltet mehrere Projekte über eine einzige Oberfläche. Fügen Sie Ihr erstes Projekt hinzu, um loszulegen.`,addFirstProject:`Erstes Projekt hinzufügen`,jiraHint:`Verbinde jedes Projekt mit seinem eigenen Jira-Board — Specs bleiben in beide Richtungen synchron.`,mcpHint:`Verbinde externe KI-Tools über einen sicheren lokalen MCP-Server mit Specrails: standardmäßig an, verwalte ihn unter Einstellungen → MCP.`,agentChatHint:`Steuere Specrails per Chat — ein integrierter Agent verwaltet Specs, Rails und Analysen für dich über den lokalen MCP. Öffne ihn über die Blase oder mit ⌘⇧A.`,localEnginesHint:`Nur ein lokales Modell? Füge unter Einstellungen → Specrails Agents einen OpenAI-kompatiblen Endpoint hinzu — Rails, Chat und Missionen laufen dann standardmäßig darauf.`},i=JSON.parse(`{"productTour":"Produkttour","stepCount":"Schritt {{current}} von {{total}}","goToStep":"Zu Schritt {{step}}: {{label}}","stepLabel":"Schritt {{step}}","dontShowAgain":"Nicht mehr anzeigen","skipTour":"Tour überspringen","getStarted":"Loslegen","flow":{"architect":"Architekt","developer":"Entwickler","reviewer":"Reviewer","describe":"Beschreiben","specs":"Specs","rails":"Rails","review":"Prüfen & mergen","yourReview":"Dein Review","blueprint":"Blueprint","approve":"Freigeben","m1Specs":"Specs für Meilenstein 1","milestones":"Meilensteine"},"language":{"nav":"Sprache","title":"Wählen Sie Ihre Sprache","subtitle":"Specrails spricht Ihre Sprache","intro":"Wählen Sie die Sprache für die Oberfläche. Sie gilt sofort – diese Tour eingeschlossen.","note":"Sie können sie jederzeit unter Einstellungen → Sprache ändern."},"theme":{"nav":"Theme","title":"Wählen Sie Ihren Look","subtitle":"Integrierte Themes, sofort angewendet","intro":"Wählen Sie, wie Specrails aussehen soll — das Theme wird sofort beim Klick angewendet.","note":"Sie können es jederzeit unter Einstellungen → Erscheinungsbild ändern."},"welcome":{"nav":"Willkommen","title":"Willkommen bei Specrails","subtitle":"Dein lokales Cockpit, um Software mit KI-Agenten auszuliefern","intro":"Specrails macht aus einer Idee ausgelieferten Code, und du kannst jeden Schritt <b>sehen, steuern und prüfen</b>. Beschreibe, was du willst, erhalte präzise Specs, führe sie auf Rails mit Claude Code, Codex, Gemini oder Kimi aus und entscheide, was gemergt wird. Nichts wird ohne dich gemergt.","coreLoopLabel":"Der Kernzyklus","flowCaption":"<b>Beschreiben → Specs → Rails → Prüfen & mergen</b>. Jeder Schritt streamt live, jedes Ergebnis wartet auf deine Entscheidung.","missionLabel":"Missionsmodus: der Standard","missionBody":"Eine Unterhaltung steuert die ganze App: der Agent schreibt Specs, startet Rails, prüft Ausgaben und reicht dir Entscheidungskarten. <b>Du sprichst, er handelt.</b>","boardLabel":"Board-Modus: einen Schalter entfernt","boardBody":"Das klassische Dashboard: Spec-Board, Rails, Jobs, Analytik. Wechsle mit dem Schalter in der linken Seitenleiste: <b>gleiche Projekte, gleiche Daten</b>.","localNote":"<b>100 % lokal · ein Nutzer · keine Konten.</b> Alles läuft auf deinem Rechner. Dein Code verlässt den Laptop nur, wenn <i>du</i> einen Agenten darauf startest.","tourNote":"Diese kurze Tour zeigt alles, was die App kann: etwa zwei Minuten."},"mission":{"nav":"Missionsmodus","title":"Sprich, der Agent handelt","subtitle":"Der Missionsmodus ist die Standardoberfläche","intro":"Im <b>Missionsmodus</b> ist das ganze Fenster eine Unterhaltung mit einem Agenten, der Specrails über seine eigenen <b>MCP-Tools</b> steuert: „starte die drei wichtigsten Specs“, „wie viel habe ich diese Woche ausgegeben?“, „schreib mir eine Spec für den Dark Mode“. Alles passiert live: Rails, Specs und Karten aktualisieren sich, während er arbeitet.","missionsLabel":"Missionen & Projekte","missionsBody":"Jede Unterhaltung ist eine Mission, an ein Projekt geheftet (oder an Home für alles). Wechsle Missionen im Kopfbereich, schick Nachrichten mitten im Zug: sie reihen sich ein und laufen der Reihe nach.","levelsLabel":"Du hältst die Leine","levelsBody":"Eine Live-Stufe, <b>Beobachten → Bearbeiten → Bedienen → Autonom</b>, mit <shift>Shift</shift> <tab>Tab</tab> durchgeschaltet, begrenzt, wie weit er gehen darf. Er handelt nie über der gesetzten Stufe.","cardsLabel":"Entscheidungskarten","cardsBody":"Starts erscheinen als Live-Karten über dem Composer: Rail-Fortschritt, dann PR erstellen / Lokal integrieren / Verwerfen, mit einem Review in Klartext. Spec-Nummern, Jobs und Loops in Antworten sind anklickbar.","workspaceLabel":"Ein Arbeitsbereich nebenan","workspaceBody":"Die rechte Seitenleiste öffnet Blueprint, Jobs, Analytik, einen eingebetteten Browser, das Terminal und den Code-Explorer neben der Unterhaltung, ohne Kontextwechsel.","mcpLabel":"Läuft über das lokale MCP","mcpBody":"Der Agent arbeitet über den eingebetteten Specrails-MCP-Server: <b>standardmäßig an</b>, nur Loopback. Derselbe Server lässt deine eigenen Tools (Claude Desktop, Cursor …) Specrails steuern; verwalte ihn unter Einstellungen → MCP."},"builder":{"nav":"Neues Projekt","title":"Ein Projekt aus einer Idee starten","subtitle":"Der Builder: Blueprint, Specs und Meilensteine, bevor eine Zeile Code existiert","intro":"Projekt hinzufügen → <b>Neu</b> macht den Agenten zum <b>Projekt-Builder</b>. Beschreibe die Idee; er fragt kurz nach (oder entscheidet alles mit einem Klick), schlägt Produkt, Kernablauf, Plattform, Stack und Meilensteine vor, und du gibst frei oder passt an.","flowLabel":"Von der Idee zum Backlog","flowCaption":"Der Commit legt Repository, Arbeitsbereich und das Backlog für Meilenstein 1 an; optional auch ein privates GitHub-Repo.","cardsLabel":"Entscheidungen mit einem Klick","cardsBody":"„Überrasch mich“ und „Freigeben und Specs erzeugen“ erscheinen als Karten im Verlauf; jede getroffene Entscheidung bleibt dort als Nachweis stehen.","specsLabel":"Premium-Specs, ehrlich geprüft","specsBody":"Die Specs für Meilenstein 1 werden vollständig je zwei auf einmal geschrieben, dann wird der ganze Stapel geprüft (Problem, Lösung, Umfang, technische Überlegungen, sechs oder mehr Akzeptanzkriterien) und ein deterministisches Gate blockiert alles Dünne.","milestonesLabel":"Meilensteine auf Rails","milestonesBody":"Starte Meilenstein 1 und er läuft als Rails mit bis zu drei Specs, jedes auf dem Branch des vorigen gestapelt. <b>Wellen-Checkpoints</b> fragen vor jedem nächsten Rail, oder schalte automatisches Fortfahren ein.","progressLabel":"Live-Fortschritt","progressBody":"Das Blueprint-Panel zeigt echte Zahlen (geliefert, im Review, fertig), nie „abgeschlossen“, solange etwas ungemergt ist. Spätere Meilensteine werden gegen das echte Repository erzeugt."},"authorSpecs":{"nav":"Specs schreiben","title":"Ideen zu Specs machen","subtitle":"Sechs Wege, genau festzuhalten, was gebaut werden soll","intro":"Eine <b>Spec</b> beschreibt Arbeit, die erledigt werden soll. Schreib sie, wie es gerade passt: vom Einzeiler bis zum Agenten, der für dich recherchiert.","agentLabel":"Den Agenten fragen","agentBody":"Im Missionsmodus beschreibst du einfach die Änderung. Der Agent liest zuerst den echten Code, entwirft eine Super-Spec als Live-Karte und speichert sie, wenn du es sagst.","exploreLabel":"Explore: im Gespräch","exploreBody":"Beschreibe im Chat, was du willst; ein Live-Entwurf baut sich in jedem Zug neu auf. Ein Preset-Regler bestimmt, wie viel Projektkontext die KI sieht: von nur deiner Nachricht bis zur ganzen Codebasis plus deinen MCP-Servern.","quickLabel":"Quick: in einem Zug","quickBody":"Du weißt schon, was du willst? Erzeuge eine vollständige Spec in einem Zug. Optional mit Contract Layer: exakte Namen, Datenformen, Invarianten und Dateiliste, damit die Agenten nichts neu erfinden.","websiteLabel":"Von einer Website","websiteBody":"Öffnet einen eingebetteten Browser. Wähle ein Element oder zieh ein Rechteck: Screenshot, DOM und angewandtes CSS werden zu Anhängen.","smashLabel":"Ein großes Epic SMASHen","smashBody":"Zerlege eine große Spec mit einem Klick in eine Familie kleinerer Sub-Specs; jedes Kind trägt eine Kurzfassung auf seiner Karte.","draftsLabel":"Entwürfe & Weiterbearbeiten","draftsBody":"Parke eine laufende Exploration als Entwurfs-Ticket und mach später weiter; öffne jede Spec wieder in Explore, um sie zu verfeinern."},"rails":{"nav":"Rails & Review","title":"Die Pipeline auf Rails ausführen","subtitle":"Isolierte Spuren, dann ein Review, das man wirklich lesen kann","intro":"<b>Rails</b> sind Ausführungsspuren: bis zu zwölf, nach Bedarf erstellt. Lege Specs auf ein Rail und drücke <play>▶ Play</play>, oder <b>Alle starten</b> für freie Rails parallel. Jeder Lauf arbeitet im eigenen Git-Worktree, nie in deinem Checkout.","jobLabel":"Was jeder Lauf tut","flowCaption":"Jede Phase streamt live. Am Ende bleibt die Arbeit auf ihrem Branch und die App fragt dich, was zu tun ist: Specrails erzeugt PRs, es mergt nie von selbst.","reviewLabel":"PR-Review, das zuerst fragt","reviewBody":"Fertige Specs landen <b>Im Review</b>. Du wählst: Draft-PR erstellen, lokal integrieren (ohne Remote) oder verwerfen. Der Merge setzt sie auf Fertig.","packetLabel":"Review-Paket","packetBody":"Eine Klartext-Seite pro Lieferung: was verlangt war, was sich geändert hat, was die KI berichtet gegenüber dem, was die App verifiziert hat, die Kosten, mit Annehmen / Änderungen anfordern / Verwerfen.","steerLabel":"Mitten im Lauf steuern","steerBody":"Claude-Läufe sind interaktiv: stelle Fragen oder lenke um, während sie arbeiten, und folge einem erzählten Fortschritt statt roher Logs.","loopsLabel":"Eigene Loops bauen","loopsBody":"<b>Loops</b> ist ein visueller Builder: verkette KI-Schritte, Shell-Befehle und einen <b>Loop Decider</b>, der wiederholt, bis das Ziel erreicht ist. Implement und Freestyle sind fertig dabei.","profilesLabel":"Agentenprofile & Vorgaben","profilesBody":"Lege fest, welche Agenten laufen und welches Modell jeder nutzt: pro Projektprofil, pro Rail oder einmal für die ganze Maschine unter Einstellungen → Specrails-Agenten.","isolationLabel":"Viele Projekte, isoliert","isolationBody":"Jedes Projekt hat eigene Datenbank und Warteschlange; dein Repository bleibt unberührt, weil Specrails seine Dateien in deinem Home-Ordner hält."},"providers":{"nav":"Dein Agent","title":"Bring deinen eigenen Agenten","subtitle":"Claude Code, Codex, Gemini und Kimi als vollwertige Engines","intro":"<b>Claude Code</b>, <b>Codex CLI</b>, <b>Gemini CLI</b> und <b>Kimi Code</b> sind austauschbare Engines hinter einem Vertrag. Was auf dieser Maschine installiert und angemeldet ist, wird automatisch erkannt und überall angeboten; nichts pro Projekt zu konfigurieren.","calloutLabel":"Wenn mehrere installiert sind","calloutBody":"Wähle die Engine <b>pro Spec, pro Rail, pro Mission oder pro Terminalstart</b>; die App merkt sich deine letzte Wahl pro Projekt. Geschätzte Kosten sind mit <mono>~</mono> markiert; Kimi meldet weder Tokens noch Kosten.","table":{"capability":"Fähigkeit","streamingResume":"Streaming & Sitzungsfortsetzung","native":"Nativ","costReporting":"Kostenberichte","providerBilled":"Anbieterseitig abgerechnet","estimated":"Geschätzt (~)","unavailable":"Nicht verfügbar","telemetry":"Telemetrie (OTEL)","synthesized":"Synthetisiert","agentProfiles":"Agentenprofile"}},"cost":{"nav":"Kosten verfolgen","title":"Jeden Cent im Blick","subtitle":"Jeder kostenpflichtige Aufruf, erfasst und visualisiert","intro":"Jeder KI-Aufruf erfasst Lebenszyklus und Anbieter. Nutzungs- und Kostendaten bleiben nicht verfügbar, wenn ein Anbieter wie Kimi sie nicht meldet.","analyticsLabel":"Analytics-Seite","analyticsBody":"Ein Burn-Rate-Hero, Tages-Timeline, Top-Tickets, Modellaufschlüsselung und ein Kosten-vs.-Turns-Scatter. Filtern nach Zeitraum (7d / 30d / 90d / Alle) und nach Bereich.","perTicketLabel":"Ausgaben pro Ticket","perTicketBody":"Die Detailansicht jeder Spec zeigt, was sie gekostet hat und wie viele Turns sie brauchte – mit Deep-Link in die auf dieses Ticket gefilterte Analytics-Ansicht.","honestLabel":"Ehrliche Zahlen","honestBody":"Claude-Kosten werden vom Anbieter gemeldet; Codex und Gemini können geschätzt und mit <mono>~</mono> markiert werden. Bei Kimi sind Tokens und USD-Kosten nicht verfügbar, nicht null.","budgetsLabel":"Budgets & Alarme","budgetsBody":"Legen Sie ein Tagesbudget und einen Kostenalarm pro Job fest; die App pausiert die Queue automatisch, wenn die Grenze überschritten wird. Exportieren Sie alles als CSV oder JSON."},"workspace":{"nav":"Arbeitsbereich","title":"Mach es zu deinem Arbeitsbereich","subtitle":"Alles Nötige, ohne das Fenster zu verlassen","terminalLabel":"Terminal-Panel","terminalBody":"Ein echtes Terminal im VS-Code-Stil unten (<mod>{{mod}}</mod> <j>J</j>): WebGL-Rendering, Suche, Inline-Bilder, Pfade per Drag & Drop und Shell-Integration. Bis zu 10 Sitzungen pro Projekt.","codeLabel":"Code-Explorer","codeBody":"Ein schreibgeschützter Dateibaum und Monaco-Viewer mit KI-Zusammenfassungen in Klartext und einer Entstehungsgeschichte pro Datei: welche Spec sie berührt hat, wann und warum.","browserLabel":"Eingebetteter Browser","browserBody":"Öffne Links, PRs und deinen Dev-Server in der App: ein nativer Browser-Bereich in der Desktop-Version, mit Popups, die OAuth-Logins erhalten.","integrationsLabel":"Integrationen & MCP","integrationsBody":"Ein Marktplatz für MCP-Integrationen pro Projekt (Serenas semantische Navigation ist dabei), plus der Specrails-MCP-Server, der die App deinen eigenen KI-Tools öffnet.","themesLabel":"Themes & Effekte","themesBody":"Sechs eingebaute Themes (specrails, dracula, aurora-light, obsidian-dark, code-rain und galaxy), angewandt bevor die UI zeichnet. Einstellungen → Effekte schaltet visuelle Akzente wie den Denk-Halo des Agenten.","chatsLabel":"Minimierbare Chats","chatsBody":"Parke eine Explore- oder KI-Edit-Sitzung als Dock-Chip und nimm sie später wieder auf; geht bei Reloads oder Projektwechseln nie verloren.","compareLabel":"Nebeneinander vergleichen","compareBody":"Zieh eine Spec an den Bildschirmrand und eine Auswahl deiner anderen Specs fährt herein: prüfe zwei zusammen, Tablet-Stil.","desktopLabel":"Desktop oder Browser","desktopBody":"Nutze Specrails im Browser oder hol dir die signierte Desktop-App (macOS & Windows), die Server, Node, git und GitHub-CLI mitbringt."},"companion":{"nav":"Mobiler Companion","title":"Nehmen Sie Specrails überallhin mit","subtitle":"Specrails Companion – Ihre Pipelines auf Ihrem Smartphone","intro":"<b>Specrails Companion</b> ist eine Web-App unter specrails.dev/companion-app – öffnen Sie sie auf Ihrem Smartphone (oder fügen Sie sie zu Ihrem Home-Bildschirm hinzu), um das Specs-Board zu durchstöbern, Rails zu starten und zu stoppen, Live-Job-Logs zu verfolgen und einen Blick auf die Analytics zu werfen. Keine Installation, kein App-Store.","localLabel":"100 % lokal, wie alles andere","localBody":"Ihr Smartphone verbindet sich direkt mit diesem Rechner – Peer-to-Peer und verschlüsselt (WebRTC). Kein Cloud-Relay, kein Konto, und Ihr Code verlässt nie Ihre Geräte.","downloadLabel":"Auf Ihrem Smartphone öffnen","downloadHint":"Scannen Sie den Code mit der Kamera Ihres Smartphones oder öffnen Sie specrails.dev/companion-app im Browser.","open":"Specrails Companion öffnen","pairLabel":"Die Kopplung dauert zehn Sekunden","pairBody":"Öffnen Sie auf Ihrem Smartphone specrails.dev/companion-app und gehen Sie dann hier zu Einstellungen → Mobiler Companion → Web-Companion koppeln und folgen Sie den Schritten am Bildschirm."},"moveFast":{"nav":"Schnell sein","title":"Bewege dich in Gedankengeschwindigkeit","subtitle":"Tastatur zuerst, überall","paletteLabel":"Befehlspalette","paletteShortcut":"<f>Drücke</f> <mod>{{mod}}</mod> <m>+</m> <k>K</k> <m>überall</m>","paletteBody":"Projekte wechseln, Spec-Befehle ausführen, zu jeder Seite springen und aktuelle Jobs finden, alles mit unscharfer Suche.","agentLabel":"Agent","agentBody":"Agent ein-/ausblenden mit <mod>{{mod}}</mod> <shift>Shift</shift> <a>A</a>; Stufe durchschalten mit <shift>Shift</shift> <tab>Tab</tab>.","terminalLabel":"Terminal-Panel","terminalBody":"Umschalten mit <mod>{{mod}}</mod> <j>J</j>.","shortcutsLabel":"Alle Kurzbefehle","shortcutsBody":"Drücke <q>?</q> für die komplette Übersicht.","chatLabel":"Rechte Seitenleiste","chatBody":"Rechte Seitenleiste umschalten mit <mod>{{mod}}</mod> <bkey>B</bkey>.","projectsLabel":"Projektleiste","projectsBody":"Linke Arc-Leiste umschalten mit <alt>{{alt}}</alt> <mod>{{mod}}</mod> <bkey>B</bkey>.","pagesLabel":"Seiten & Projekte per Nummer","pagesBody":"<mod>{{mod}}</mod> <n>1–9</n> springt zu einer Seite; <alt>{{alt}}</alt> <mod>{{mod}}</mod> <n>1–9</n> wechselt das Projekt.","outro":"<b>Das war die Tour.</b> Tippe in den Missions-Composer, was du bauen willst, oder füge links ein Projekt hinzu. Diese Tour lässt sich jederzeit in den Einstellungen erneut öffnen."},"jira":{"label":"Jira-Integration","body":"Hinterlege jedes Projekt mit einem <b>Jira-Board</b> — jede Spec wird zu einem Jira-Vorgang, in beide Richtungen synchronisiert: Der Status folgt dem Rail und am Ende eines Jobs wird ein Kommentar gepostet. Richte es pro Projekt beim Hinzufügen ein oder jederzeit in den Einstellungen."}}`),a={addProject:e,prerequisites:t,instructions:n,welcome:r,onboarding:i};export{e as addProject,a as default,n as instructions,i as onboarding,t as prerequisites,r as welcome};
|