@cat-factory/app 0.176.0 → 0.178.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.
@@ -111,6 +111,8 @@
111
111
  "repositories": "Репозиторії",
112
112
  "addFromRepo": "Додати з наявного репозиторію",
113
113
  "bootstrapRepo": "Ініціалізувати репозиторій",
114
+ "models": "Моделі",
115
+ "modelProviders": "Постачальники моделей",
114
116
  "integrations": "Інтеграції",
115
117
  "sandbox": "Пісочниця",
116
118
  "kaizen": "Kaizen",
@@ -122,8 +124,7 @@
122
124
  "accountSettings": "Налаштування облікового запису",
123
125
  "operatorDashboard": "Спостережуваність платформи",
124
126
  "reports": "Звіти",
125
- "infrastructure": "Інфраструктура",
126
- "environmentSetup": "Налаштування середовища"
127
+ "infrastructure": "Інфраструктура"
127
128
  },
128
129
  "board": {
129
130
  "toast": {
@@ -1103,7 +1104,34 @@
1103
1104
  "save": "Зберегти перевірки",
1104
1105
  "savedToast": "Перевірки збережено",
1105
1106
  "saveFailed": "Не вдалося зберегти перевірки",
1106
- "clearFailed": "Не вдалося очистити перевірки"
1107
+ "clearFailed": "Не вдалося очистити перевірки",
1108
+ "detect": {
1109
+ "action": "Визначити",
1110
+ "hint": "Запропонувати перевірки з репозиторію цієї служби",
1111
+ "added": "Додано {count} перевірку | Додано {count} перевірки | Додано {count} перевірок",
1112
+ "found": "Розпізнано: {ecosystems}.",
1113
+ "capped": "Деякі пропозиції пропущено — служба приймає щонайбільше {max} перевірок.",
1114
+ "nothingNew": "Немає чого додавати",
1115
+ "alreadyPresent": "Усі виявлені команди вже є у списку.",
1116
+ "unrecognised": "У корені репозиторію не розпізнано жодної відомої екосистеми. Додайте команди вручну.",
1117
+ "repo_unavailable": "До цієї служби не прив’язано репозиторій, тож немає чого перевіряти.",
1118
+ "failed": "Не вдалося прочитати репозиторій"
1119
+ },
1120
+ "ecosystem": {
1121
+ "node": "Node.js",
1122
+ "python": "Python",
1123
+ "go": "Go",
1124
+ "rust": "Rust",
1125
+ "maven": "Maven",
1126
+ "gradle": "Gradle",
1127
+ "dotnet": ".NET",
1128
+ "ruby": "Ruby",
1129
+ "php": "PHP",
1130
+ "elixir": "Elixir",
1131
+ "make": "Make",
1132
+ "just": "just",
1133
+ "task": "Task"
1134
+ }
1107
1135
  }
1108
1136
  },
1109
1137
  "panels": {
@@ -1934,7 +1962,8 @@
1934
1962
  },
1935
1963
  "integrationBack": {
1936
1964
  "backToMySetup": "Назад до Моє налаштування",
1937
- "backToIntegrations": "Назад до Інтеграції"
1965
+ "backToIntegrations": "Назад до Інтеграції",
1966
+ "backToModelProviders": "Назад до Постачальники моделей"
1938
1967
  },
1939
1968
  "commandBar": {
1940
1969
  "searchPlaceholder": "Знайдіть або виконайте команду…",
@@ -1995,23 +2024,21 @@
1995
2024
  },
1996
2025
  "integrationsHub": {
1997
2026
  "title": "Інтеграції",
1998
- "intro": "Підключайте зовнішні системи, які може приєднати цей робочий простір, і керуйте ними.",
2027
+ "intro": "Підключайте необов'язкові зовнішні системи, які може приєднати цей робочий простір, і керуйте ними. Моделі, на яких працюють ваші агенти, є в розділі Постачальники моделей.",
1999
2028
  "searchPlaceholder": "Пошук інтеграцій…",
2000
2029
  "noMatches": "Жодна інтеграція не відповідає \"{query}\".",
2001
2030
  "getStarted": {
2002
2031
  "title": "Початок роботи",
2003
- "body": "Підключіть джерело коду й постачальника моделей, щоб запустити свій перший конвеєр."
2032
+ "body": "Підключіть джерело коду, щоб вашим конвеєрам було над чим працювати."
2004
2033
  },
2005
2034
  "status": {
2006
2035
  "connected": "Підключено",
2007
- "keyConnected": "Ключ підключено",
2008
2036
  "notConnected": "Не підключено",
2009
2037
  "needsAttention": "Потребує уваги",
2010
2038
  "disabled": "Вимкнено",
2011
2039
  "recommended": "Рекомендовано"
2012
2040
  },
2013
2041
  "groups": {
2014
- "models": "Моделі та постачальники",
2015
2042
  "sourceControl": "Контроль версій",
2016
2043
  "communication": "Комунікація",
2017
2044
  "documents": "Документи",
@@ -2021,16 +2048,6 @@
2021
2048
  "personal": "Особисте (лише ви)"
2022
2049
  },
2023
2050
  "items": {
2024
- "openrouter": {
2025
- "description": "Єдиний шлюз до понад 300 моделей. Додайте свій ключ і вмикайте моделі в одному місці."
2026
- },
2027
- "vendors": {
2028
- "label": "Постачальники та ключі",
2029
- "description": "Підписки LLM робочого простору та ключі API постачальників."
2030
- },
2031
- "personalSubs": {
2032
- "label": "Особисті підписки (Claude, ChatGPT/Codex, GLM)"
2033
- },
2034
2051
  "github": {
2035
2052
  "description": "Підключіть GitHub App робочого простору, переглядайте репозиторії, PR-и та тикети."
2036
2053
  },
@@ -2070,10 +2087,6 @@
2070
2087
  "label": "Мій токен GitHub",
2071
2088
  "description": "Особистий токен доступу, який використовується для запусків, що ви розпочинаєте (pushes, PR-и, CI, злиття)."
2072
2089
  },
2073
- "localRunners": {
2074
- "label": "Мої локальні виконавці",
2075
- "description": "Ваші виконавці моделей на власній машині (Ollama, LM Studio, vLLM…)."
2076
- },
2077
2090
  "documentTemplates": {
2078
2091
  "label": "Шаблони та приклади"
2079
2092
  },
@@ -2083,6 +2096,45 @@
2083
2096
  }
2084
2097
  }
2085
2098
  },
2099
+ "modelProvidersHub": {
2100
+ "title": "Постачальники моделей",
2101
+ "intro": "Рушії, на яких працюють ваші агенти. Щоб виконався бодай один крок конвеєра, має бути підключений принаймні один постачальник.",
2102
+ "searchPlaceholder": "Пошук постачальників…",
2103
+ "noMatches": "Немає постачальників, що відповідають \"{query}\".",
2104
+ "getStarted": {
2105
+ "title": "Жодного постачальника ще не підключено",
2106
+ "body": "Кроки агента не можуть виконуватися, доки модель недоступна. Ключ OpenRouter відкриває широкий каталог найшвидше, але ключі постачальників, особистий план чи власний локальний виконавець працюють так само добре."
2107
+ },
2108
+ "status": {
2109
+ "connected": "Підключено",
2110
+ "keyConnected": "Ключ підключено",
2111
+ "notConnected": "Не підключено",
2112
+ "recommended": "Рекомендовано",
2113
+ "connectedCount": "{count} підключено | {count} підключено | {count} підключено"
2114
+ },
2115
+ "groups": {
2116
+ "workspace": "Постачальники робочого простору",
2117
+ "personal": "Особисте (лише ви)",
2118
+ "personalNote": "Вони належать вашому обліковому запису, а не робочому простору, і використовуються лише для запусків, які починаєте ви. Їх також перелічено в розділі Моє налаштування."
2119
+ },
2120
+ "items": {
2121
+ "openrouter": {
2122
+ "description": "Єдиний шлюз до понад 300 моделей. Додайте свій ключ і вмикайте моделі в одному місці."
2123
+ },
2124
+ "vendors": {
2125
+ "label": "Постачальники та ключі",
2126
+ "description": "Підписки LLM робочого простору та ключі API постачальників."
2127
+ },
2128
+ "personalSubs": {
2129
+ "label": "Мої підписки",
2130
+ "description": "Плани індивідуального використання, які ви розблоковуєте особистим паролем (Claude, GLM, Codex)."
2131
+ },
2132
+ "localRunners": {
2133
+ "label": "Мої локальні виконавці",
2134
+ "description": "Виконавці моделей на вашій власній машині (Ollama, LM Studio, vLLM)."
2135
+ }
2136
+ }
2137
+ },
2086
2138
  "shortcuts": {
2087
2139
  "title": "Комбінації клавіш",
2088
2140
  "commandBar": "Відкрити командний рядок",
@@ -2651,6 +2703,32 @@
2651
2703
  "removeFailed": "Не вдалося видалити спільний стек"
2652
2704
  }
2653
2705
  },
2706
+ "composeEnvSetup": {
2707
+ "title": "Покрокове налаштування Docker Compose для сервісу",
2708
+ "lead": "Проводить один сервіс через створення рецепта Docker Compose, з якого піднімаються його тестові середовища, замість ручного введення шляху до compose і кроків підготовки.",
2709
+ "how": {
2710
+ "title": "Як це працює",
2711
+ "scan": "Сканує пов'язаний репозиторій сервісу на предмет файлів compose, профілів, файлів env і дампів початкових даних.",
2712
+ "analyse": "За бажанням запускає агента-аналітика середовища, щоб на основі власних скриптів репозиторію накидати кроки підготовки та перевірку готовності.",
2713
+ "preflight": "Виконує попередні перевірки рецепта на машині, яка його підніматиме.",
2714
+ "save": "Зберігає рецепт на сервісі й реєструє обробник Docker Compose робочого простору.",
2715
+ "outcome": "Далі Deployer піднімає саме цей стек щоразу, коли конвеєру потрібне живе середовище, а Tester працює проти нього. Нічого не застосовується, доки ви не збережете."
2716
+ },
2717
+ "needed": {
2718
+ "title": "Це потрібно, коли",
2719
+ "running": "Тести сервісу потребують реально запущеного застосунку: тести API чи інтерфейсу, міграції, початкові дані.",
2720
+ "compose": "Сервіс піднімається через Docker Compose і ще не має збереженого рецепта.",
2721
+ "setup": "Підняття стека потребує більше ніж однієї команди: профілів, файлів env, початкових даних або перевірки готовності."
2722
+ },
2723
+ "notNeeded": {
2724
+ "title": "Це можна пропустити, коли",
2725
+ "inContainer": "Конвеєр лише запускає лінтер, збірку або модульні тести. Вони виконуються в контейнері агента як перевірки перед PR, без підняття середовища.",
2726
+ "otherBackend": "Сервіс піднімається іншим способом (Kubernetes, хмарний попередній перегляд або взагалі без інфраструктури). Налаштуйте це вище.",
2727
+ "noRepo": "Сервіс не має пов'язаного репозиторію, тож сканувати нічого."
2728
+ },
2729
+ "start": "Почати покрокове налаштування",
2730
+ "rerunHint": "Запускайте повторно будь-коли, щоб змінити збережений рецепт."
2731
+ },
2654
2732
  "localMode": {
2655
2733
  "title": "Локальний режим",
2656
2734
  "intro": "Налаштування локального запускача контейнерів, збережене на розгортанні цієї машини (воно замінило змінні середовища {poolVars} / {harnessVars}). Збереження змінює розмір теплого пулу наживо, без потреби в перезапуску; поточні запуски зберігають контейнер, який вони вже утримують.",
@@ -5255,8 +5333,8 @@
5255
5333
  },
5256
5334
  "environmentWizard": {
5257
5335
  "progress": "Крок {index} з {total}",
5258
- "title": "Налаштувати тестове середовище",
5259
- "subtitle": "Виявіть, перегляньте та збережіть рецепт Docker Compose, щоб Deployer його забезпечив.",
5336
+ "title": "Налаштування середовища Docker Compose",
5337
+ "subtitle": "Створіть рецепт Docker Compose, з якого піднімаються тестові середовища сервісу: сканування репозиторію, перегляд, попередні перевірки, збереження.",
5260
5338
  "recommended": "рекомендовано",
5261
5339
  "steps": {
5262
5340
  "pick": "Обрати сервіс",
@@ -5266,6 +5344,7 @@
5266
5344
  },
5267
5345
  "pick": {
5268
5346
  "intro": "Оберіть сервіс, для якого налаштувати середовище Docker Compose.",
5347
+ "scope": "Змінюється лише вибраний сервіс. Запустіть це пізніше ще раз, щоб відредагувати його рецепт.",
5269
5348
  "empty": "Сервісів ще немає. Спершу додайте сервіс."
5270
5349
  },
5271
5350
  "review": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/app",
3
- "version": "0.176.0",
3
+ "version": "0.178.0",
4
4
  "description": "Reusable Nuxt layer for the Agent Architecture Board SPA (components, stores, composables, pages). Consume it from a thin deployment app via `extends: ['@cat-factory/app']` and point it at your backend with NUXT_PUBLIC_API_BASE. See deploy/frontend for an example.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -40,7 +40,7 @@
40
40
  "valibot": "^1.4.2",
41
41
  "vue": "3.5.40",
42
42
  "wretch": "^3.0.9",
43
- "@cat-factory/contracts": "0.186.0"
43
+ "@cat-factory/contracts": "0.187.0"
44
44
  },
45
45
  "devDependencies": {
46
46
  "@toad-contracts/testing": "0.3.2",