@nac3/forge-cli 1.23.2 → 1.23.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nac3/forge-cli",
3
- "version": "1.23.2",
3
+ "version": "1.23.3",
4
4
  "description": "Yujin Forge -- voice-first NAC-3 React development framework. CLI + chat panel + spec ingest + 10-format document reader + voice loop.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "author": "Pablo Kuschnirof <pablo@rpaforce.com>",
@@ -15,23 +15,6 @@
15
15
  "exports": {
16
16
  ".": "./dist/index.js"
17
17
  },
18
- "scripts": {
19
- "version": "node scripts/sync_version.mjs && git add src/version.ts",
20
- "build": "node scripts/clean_dist.mjs && tsc && node scripts/copy_qa_assets.mjs",
21
- "dev": "tsx watch src/bin/yf.ts",
22
- "typecheck": "tsc --noEmit",
23
- "typecheck:all": "pnpm typecheck && pnpm --filter @yujin/hito4-server typecheck && pnpm --filter @yujin/forge-mobile typecheck",
24
- "test": "vitest run",
25
- "test:watch": "vitest",
26
- "lint": "tsc --noEmit",
27
- "yf": "tsx src/bin/yf.ts",
28
- "catalog:lint": "node scripts/catalog_lint.mjs",
29
- "pairing:check": "node scripts/check_pairing_sync.mjs",
30
- "brain-matrix:gate": "node scripts/brain_matrix_gate.mjs",
31
- "hito4:lint": "node scripts/hito4_lint_bundle.mjs",
32
- "publish-alpha-emergency": "node scripts/publish_alpha_emergency.mjs",
33
- "prepublishOnly": "pnpm run build && pnpm run typecheck && pnpm run catalog:lint && pnpm run test && pnpm run brain-matrix:gate && pnpm run hito4:lint"
34
- },
35
18
  "dependencies": {
36
19
  "@anthropic-ai/sdk": "^0.32.1",
37
20
  "@aws-sdk/client-ecs": "^3.1053.0",
@@ -68,7 +51,6 @@
68
51
  "node": ">=18.17",
69
52
  "pnpm": ">=9"
70
53
  },
71
- "packageManager": "pnpm@11.3.0",
72
54
  "files": [
73
55
  "dist",
74
56
  "templates",
@@ -113,5 +95,21 @@
113
95
  "publishConfig": {
114
96
  "access": "public",
115
97
  "tag": "latest"
98
+ },
99
+ "scripts": {
100
+ "version": "node scripts/sync_version.mjs && git add src/version.ts",
101
+ "build": "node scripts/clean_dist.mjs && tsc && node scripts/copy_qa_assets.mjs",
102
+ "dev": "tsx watch src/bin/yf.ts",
103
+ "typecheck": "tsc --noEmit",
104
+ "typecheck:all": "pnpm typecheck && pnpm --filter @yujin/hito4-server typecheck && pnpm --filter @yujin/forge-mobile typecheck",
105
+ "test": "vitest run",
106
+ "test:watch": "vitest",
107
+ "lint": "tsc --noEmit",
108
+ "yf": "tsx src/bin/yf.ts",
109
+ "catalog:lint": "node scripts/catalog_lint.mjs",
110
+ "pairing:check": "node scripts/check_pairing_sync.mjs",
111
+ "brain-matrix:gate": "node scripts/brain_matrix_gate.mjs",
112
+ "hito4:lint": "node scripts/hito4_lint_bundle.mjs",
113
+ "publish-alpha-emergency": "node scripts/publish_alpha_emergency.mjs"
116
114
  }
117
- }
115
+ }
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "يتطلب verb المستدعى project root نشط لكن ~/.yujin-forge/projects.json ليس به إدخالات.",
129
129
  "error.project_not_registered.fix": "أنشئ واحدا بـ yujin.project.init أو سجل واحدا موجودا بـ yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "لم يُرجع سطح المكتب ردًا على طلبك خلال {minutes} دقيقة.",
132
+ "error.mobile_turn_unanswered.why": "قد تكون الجولة ما زالت تعمل: ما انتهى هو الانتظار، لا العمل. سطح المكتب لا يتوقف.",
133
+ "error.mobile_turn_unanswered.fix": "راجع محادثة سطح المكتب: إذا انتهت الجولة فالرد موجود هناك. لا تعد إرسال الطلب قبل أن تتحقق، وإلا سيُنفَّذ مرتين.",
134
+ "error.mobile_turn_undelivered.what": "لم أتمكن من تسليم طلبك إلى سطح المكتب.",
135
+ "error.mobile_turn_undelivered.why": "خادم المحادثة في سطح المكتب لم يكن يستمع على المنفذ {port}. لم يُنفَّذ أي شيء هنا.",
136
+ "error.mobile_turn_undelivered.fix": "افتح لوحة Forge على سطح المكتب (أو شغّلها بـ yf chat) ثم أعد إرسال الطلب.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "الوكلاء",
132
139
  "panel.agents.title": "الوكلاء",
133
140
  "panel.agents.subtitle": "المدير والوكلاء الفرعيون المسجلون في هذا المشروع",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "Das aufgerufene Verb benoetigt einen aktiven Project-Root, aber ~/.yujin-forge/projects.json hat keine Eintraege.",
129
129
  "error.project_not_registered.fix": "Erstellen Sie eines mit yujin.project.init oder registrieren Sie ein existierendes mit yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "Der Desktop hat deine Anfrage in {minutes} Minuten nicht beantwortet.",
132
+ "error.mobile_turn_unanswered.why": "Der Turn laeuft moeglicherweise weiter: abgelaufen ist das Warten, nicht die Arbeit. Der Desktop hoert nicht auf.",
133
+ "error.mobile_turn_unanswered.fix": "Schau in den Desktop-Chat: wenn der Turn fertig ist, steht die Antwort dort. Sende die Anfrage nicht erneut, ohne nachzusehen, sonst laeuft sie zweimal.",
134
+ "error.mobile_turn_undelivered.what": "Ich konnte deine Anfrage nicht an den Desktop uebergeben.",
135
+ "error.mobile_turn_undelivered.why": "Der Chat-Server des Desktops lauschte nicht auf Port {port}. Hier wurde nichts ausgefuehrt.",
136
+ "error.mobile_turn_undelivered.fix": "Oeffne das Forge-Panel auf dem Desktop (oder starte es mit yf chat) und sende die Anfrage erneut.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agenten",
132
139
  "panel.agents.title": "Agenten",
133
140
  "panel.agents.subtitle": "Director und Sub-Agenten registriert in diesem Projekt",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "The verb you invoked needs an active project root but ~/.yujin-forge/projects.json has no entries.",
129
129
  "error.project_not_registered.fix": "Create one with yujin.project.init or register an existing one with yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "The desktop did not return an answer to your request within {minutes} minutes.",
132
+ "error.mobile_turn_unanswered.why": "The turn may still be running: what expired is the wait, not the work. The desktop does not stop.",
133
+ "error.mobile_turn_unanswered.fix": "Check the desktop chat: if the turn finished, the answer is there. Do not resend the request before looking, or it runs twice.",
134
+ "error.mobile_turn_undelivered.what": "I could not hand your request to the desktop.",
135
+ "error.mobile_turn_undelivered.why": "The desktop chat server was not listening on port {port}. Nothing ran here.",
136
+ "error.mobile_turn_undelivered.fix": "Open the Forge panel on the desktop (or start it with yf chat) and send the request again.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agents",
132
139
  "panel.agents.title": "Agents",
133
140
  "panel.agents.subtitle": "Director and sub-agents registered in this project",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "El verb que invocaste requiere project root activo pero ~/.yujin-forge/projects.json no tiene entradas.",
129
129
  "error.project_not_registered.fix": "Crea uno con yujin.project.init o registra uno existente con yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "El escritorio no devolvio la respuesta de tu pedido en {minutes} minutos.",
132
+ "error.mobile_turn_unanswered.why": "El turno puede seguir corriendo: lo que vencio es la espera, no el trabajo. El escritorio no para.",
133
+ "error.mobile_turn_unanswered.fix": "Mira el chat del escritorio: si el turno termino, la respuesta esta ahi. No repitas el pedido sin fijarte, o se ejecuta dos veces.",
134
+ "error.mobile_turn_undelivered.what": "No pude entregarle tu pedido al escritorio.",
135
+ "error.mobile_turn_undelivered.why": "El servidor de chat del escritorio no estaba escuchando en el puerto {port}. Aca no se ejecuto nada.",
136
+ "error.mobile_turn_undelivered.fix": "Abri el panel de Forge en el escritorio (o arrancalo con yf chat) y volve a mandar el pedido.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agentes",
132
139
  "panel.agents.title": "Agentes",
133
140
  "panel.agents.subtitle": "Director + sub-agentes registrados en este proyecto",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "Le verb invoque necessite un project root actif mais ~/.yujin-forge/projects.json n'a pas d'entrees.",
129
129
  "error.project_not_registered.fix": "Creez-en un avec yujin.project.init ou enregistrez un existant avec yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "Le bureau n'a pas renvoye de reponse a ta demande en {minutes} minutes.",
132
+ "error.mobile_turn_unanswered.why": "Le tour peut encore tourner : ce qui a expire, c'est l'attente, pas le travail. Le bureau ne s'arrete pas.",
133
+ "error.mobile_turn_unanswered.fix": "Regarde le chat du bureau : si le tour est fini, la reponse y est. Ne renvoie pas la demande sans verifier, sinon elle s'execute deux fois.",
134
+ "error.mobile_turn_undelivered.what": "Je n'ai pas pu transmettre ta demande au bureau.",
135
+ "error.mobile_turn_undelivered.why": "Le serveur de chat du bureau n'ecoutait pas sur le port {port}. Rien n'a ete execute ici.",
136
+ "error.mobile_turn_undelivered.fix": "Ouvre le panneau Forge sur le bureau (ou lance-le avec yf chat) puis renvoie la demande.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agents",
132
139
  "panel.agents.title": "Agents",
133
140
  "panel.agents.subtitle": "Director et sous-agents enregistres dans ce projet",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "invoked verb को सक्रिय project root की आवश्यकता है लेकिन ~/.yujin-forge/projects.json में कोई entries नहीं हैं।",
129
129
  "error.project_not_registered.fix": "yujin.project.init के साथ एक बनाएं या yf projects add के साथ एक मौजूदा पंजीकृत करें।",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "डेस्कटॉप ने {minutes} मिनट में आपके अनुरोध का उत्तर नहीं लौटाया।",
132
+ "error.mobile_turn_unanswered.why": "टर्न अभी भी चल सकता है: जो समाप्त हुआ वह प्रतीक्षा है, काम नहीं। डेस्कटॉप रुकता नहीं है।",
133
+ "error.mobile_turn_unanswered.fix": "डेस्कटॉप का चैट देखें: अगर टर्न पूरा हो गया है, तो उत्तर वहीं है। देखे बिना अनुरोध दोबारा न भेजें, वरना वह दो बार चलेगा।",
134
+ "error.mobile_turn_undelivered.what": "मैं आपका अनुरोध डेस्कटॉप तक नहीं पहुंचा सका।",
135
+ "error.mobile_turn_undelivered.why": "डेस्कटॉप का चैट सर्वर पोर्ट {port} पर सुन नहीं रहा था। यहां कुछ भी नहीं चला।",
136
+ "error.mobile_turn_undelivered.fix": "डेस्कटॉप पर Forge पैनल खोलें (या yf chat से शुरू करें) और अनुरोध दोबारा भेजें।",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "एजेंट",
132
139
  "panel.agents.title": "एजेंट",
133
140
  "panel.agents.subtitle": "इस परियोजना में पंजीकृत निदेशक और उप-एजेंट",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "Il verb invocato richiede un project root attivo ma ~/.yujin-forge/projects.json non ha voci.",
129
129
  "error.project_not_registered.fix": "Creane uno con yujin.project.init o registrane uno esistente con yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "Il desktop non ha restituito una risposta alla tua richiesta in {minutes} minuti.",
132
+ "error.mobile_turn_unanswered.why": "Il turno puo essere ancora in corso: a scadere e stata l'attesa, non il lavoro. Il desktop non si ferma.",
133
+ "error.mobile_turn_unanswered.fix": "Guarda la chat del desktop: se il turno e finito, la risposta e la. Non rimandare la richiesta senza controllare, altrimenti viene eseguita due volte.",
134
+ "error.mobile_turn_undelivered.what": "Non ho potuto consegnare la tua richiesta al desktop.",
135
+ "error.mobile_turn_undelivered.why": "Il server di chat del desktop non era in ascolto sulla porta {port}. Qui non e stato eseguito nulla.",
136
+ "error.mobile_turn_undelivered.fix": "Apri il pannello Forge sul desktop (o avvialo con yf chat) e rimanda la richiesta.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agenti",
132
139
  "panel.agents.title": "Agenti",
133
140
  "panel.agents.subtitle": "Director e sub-agenti registrati in questo progetto",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "呼び出した verb はアクティブな project root が必要ですが、~/.yujin-forge/projects.json にエントリがありません。",
129
129
  "error.project_not_registered.fix": "yujin.project.init で作成するか、yf projects add で既存のものを登録してください。",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "デスクトップは {minutes} 分以内にリクエストへの応答を返しませんでした。",
132
+ "error.mobile_turn_unanswered.why": "ターンはまだ実行中かもしれません。期限が切れたのは待ち時間であって、作業ではありません。デスクトップは止まりません。",
133
+ "error.mobile_turn_unanswered.fix": "デスクトップのチャットを確認してください。ターンが終わっていれば、そこに応答があります。確認せずに再送すると二重に実行されます。",
134
+ "error.mobile_turn_undelivered.what": "リクエストをデスクトップに渡せませんでした。",
135
+ "error.mobile_turn_undelivered.why": "デスクトップのチャットサーバーがポート {port} で待ち受けていませんでした。ここでは何も実行されていません。",
136
+ "error.mobile_turn_undelivered.fix": "デスクトップで Forge パネルを開き (または yf chat で起動し)、もう一度リクエストを送ってください。",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "エージェント",
132
139
  "panel.agents.title": "エージェント",
133
140
  "panel.agents.subtitle": "このプロジェクトに登録されたディレクターとサブエージェント",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "O verb invocado requer project root ativo mas ~/.yujin-forge/projects.json nao tem entradas.",
129
129
  "error.project_not_registered.fix": "Crie um com yujin.project.init ou registre um existente com yf projects add.",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "O desktop nao devolveu a resposta do seu pedido em {minutes} minutos.",
132
+ "error.mobile_turn_unanswered.why": "O turno pode continuar rodando: o que expirou foi a espera, nao o trabalho. O desktop nao para.",
133
+ "error.mobile_turn_unanswered.fix": "Veja o chat do desktop: se o turno terminou, a resposta esta la. Nao reenvie o pedido sem olhar, ou ele roda duas vezes.",
134
+ "error.mobile_turn_undelivered.what": "Nao consegui entregar seu pedido ao desktop.",
135
+ "error.mobile_turn_undelivered.why": "O servidor de chat do desktop nao estava escutando na porta {port}. Aqui nada foi executado.",
136
+ "error.mobile_turn_undelivered.fix": "Abra o painel do Forge no desktop (ou inicie com yf chat) e envie o pedido de novo.",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "Agentes",
132
139
  "panel.agents.title": "Agentes",
133
140
  "panel.agents.subtitle": "Director e sub-agentes registados neste projeto",
@@ -128,6 +128,13 @@
128
128
  "error.project_not_registered.why": "调用的verb需要活动的project root,但 ~/.yujin-forge/projects.json 没有条目。",
129
129
  "error.project_not_registered.fix": "用 yujin.project.init 创建一个或用 yf projects add 注册一个现有的。",
130
130
  "error.project_not_registered.cmd": "yf projects scan",
131
+ "error.mobile_turn_unanswered.what": "桌面端在 {minutes} 分钟内没有返回你的请求结果。",
132
+ "error.mobile_turn_unanswered.why": "该轮次可能仍在运行:到期的是等待,而不是工作。桌面端不会停止。",
133
+ "error.mobile_turn_unanswered.fix": "查看桌面端的聊天记录:如果该轮次已完成,结果就在那里。不要在未查看前重发请求,否则会执行两次。",
134
+ "error.mobile_turn_undelivered.what": "无法把你的请求交给桌面端。",
135
+ "error.mobile_turn_undelivered.why": "桌面端的聊天服务没有在端口 {port} 上监听。这里没有执行任何操作。",
136
+ "error.mobile_turn_undelivered.fix": "在桌面端打开 Forge 面板(或用 yf chat 启动),然后重新发送请求。",
137
+ "error.mobile_turn_undelivered.cmd": "yf chat",
131
138
  "panel.button.agents": "智能体",
132
139
  "panel.agents.title": "智能体",
133
140
  "panel.agents.subtitle": "本项目已注册的总监和子智能体",