@qwen-code/qwen-code 0.17.1-nightly.20260608.aea34fa2c → 0.18.0-preview.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/bundled/qc-helper/SKILL.md +30 -24
  2. package/bundled/qc-helper/docs/features/auto-mode.md +54 -9
  3. package/bundled/qc-helper/docs/features/commands.md +11 -11
  4. package/bundled/qc-helper/docs/features/markdown-rendering.md +21 -1
  5. package/chunks/{agent-CRCEWDXY.js → agent-6J2FFD7S.js} +16 -16
  6. package/chunks/{anthropicContentGenerator-CORCIHMT.js → anthropicContentGenerator-4QBVSFSJ.js} +4 -4
  7. package/chunks/{askUserQuestion-LXMRMFII.js → askUserQuestion-NOOLRWCJ.js} +2 -2
  8. package/chunks/{ca-AD47AV3M.js → ca-WRHFBIDH.js} +10 -1
  9. package/chunks/{chunk-MW6Z7JDT.js → chunk-3H7ENG2Q.js} +20 -18
  10. package/chunks/{chunk-UKQJ7G3U.js → chunk-5RNZ2QKF.js} +1 -1
  11. package/chunks/{chunk-LESSBSSE.js → chunk-6VFG3EUJ.js} +1 -1
  12. package/chunks/{chunk-2T34DNYQ.js → chunk-AVLOK27J.js} +42 -8
  13. package/chunks/{chunk-ZAHZV7IR.js → chunk-BBTV54KB.js} +2 -2
  14. package/chunks/{chunk-4XIYRIZ6.js → chunk-BPZQVC2P.js} +110 -9
  15. package/chunks/{chunk-MUMLIB4J.js → chunk-BUOJN3MM.js} +10481 -8589
  16. package/chunks/{chunk-OV5SE5JD.js → chunk-D46KOV3C.js} +1 -1
  17. package/chunks/{chunk-DU2ZAFA7.js → chunk-F5ORN4YO.js} +1 -1
  18. package/chunks/{chunk-UB3HGW3I.js → chunk-G763GDO6.js} +22 -11
  19. package/chunks/{chunk-7R5J5HSJ.js → chunk-GBEPNWYB.js} +1 -1
  20. package/chunks/{chunk-EYEDXJ2Z.js → chunk-IKOMHTCC.js} +6 -6
  21. package/chunks/{chunk-JAF4PLE7.js → chunk-JMLIPZUU.js} +3 -3
  22. package/chunks/{chunk-KSX2FIAZ.js → chunk-JSYEZAYV.js} +2 -2
  23. package/chunks/{chunk-R7WIF3BU.js → chunk-MVX64PNU.js} +1 -1
  24. package/chunks/{chunk-UEW42CYE.js → chunk-PLYZAP4W.js} +45 -9
  25. package/chunks/{chunk-S2HZQ4RC.js → chunk-R5PDRHEF.js} +1 -0
  26. package/chunks/{chunk-77UV3M62.js → chunk-SCHRFI7O.js} +1 -1
  27. package/chunks/{chunk-OCR7PXOA.js → chunk-SHUT5MQY.js} +1 -1
  28. package/chunks/{chunk-OPFJCRUK.js → chunk-UABFCMPA.js} +2 -1
  29. package/chunks/{chunk-DIO32KR5.js → chunk-UQZQP5PA.js} +11 -11
  30. package/chunks/{chunk-FCY4DV3R.js → chunk-UXBKX55L.js} +10 -6
  31. package/chunks/{computer-use-C5ZJRSKF.js → computer-use-6LZXL3UW.js} +16 -16
  32. package/chunks/{contextCommand-G54AJMCX.js → contextCommand-ZV5QQ2LA.js} +18 -18
  33. package/chunks/{cron-create-PJOVYSIF.js → cron-create-PIPMXQN4.js} +2 -2
  34. package/chunks/{cron-delete-7EYEJ44X.js → cron-delete-6Y5XIDMS.js} +2 -2
  35. package/chunks/{cron-list-LMUJOUDI.js → cron-list-A4WNRUWZ.js} +2 -2
  36. package/chunks/{de-GYJ2LJ32.js → de-M5RPB2NB.js} +10 -1
  37. package/chunks/{edit-JVUXZ6WE.js → edit-J7D6VMPQ.js} +19 -19
  38. package/chunks/{en-QEV466ZF.js → en-UMYKQAZE.js} +11 -1
  39. package/chunks/{enter-worktree-GOVBTJZR.js → enter-worktree-NDJTVGYJ.js} +16 -16
  40. package/chunks/{exit-worktree-YZAGLIWA.js → exit-worktree-UB6XYYAX.js} +16 -16
  41. package/chunks/{exitPlanMode-RY6DM3LO.js → exitPlanMode-V6X2KL4X.js} +16 -16
  42. package/chunks/{fr-GH7C66F4.js → fr-MPYXXXPW.js} +10 -1
  43. package/chunks/{geminiContentGenerator-BB4RL4HR.js → geminiContentGenerator-3AKHMB3P.js} +4 -4
  44. package/chunks/{glob-UZHZN5GU.js → glob-PBG5DRG4.js} +16 -16
  45. package/chunks/{grep-7N5SXCM2.js → grep-VQ56EWQ7.js} +16 -16
  46. package/chunks/{ja-ZXM3KE24.js → ja-NFZ32AB3.js} +10 -1
  47. package/chunks/{keychain-token-storage-25D5QXMC.js → keychain-token-storage-UHGOCDD6.js} +2 -2
  48. package/chunks/{ls-PPWEULT2.js → ls-34DLNYCD.js} +3 -3
  49. package/chunks/{lsp-2BY4ZXDL.js → lsp-NCDEHH3V.js} +2 -2
  50. package/chunks/{monitor-RUX4WCW6.js → monitor-J3YCSOEH.js} +16 -16
  51. package/chunks/{notebook-edit-QSHYIM2C.js → notebook-edit-AL3CBYJ6.js} +17 -17
  52. package/chunks/{openaiContentGenerator-557UCKMQ.js → openaiContentGenerator-3U6UARHS.js} +11 -11
  53. package/chunks/{pt-NHIAQIDQ.js → pt-BR43FRBA.js} +10 -1
  54. package/chunks/{qwenContentGenerator-QG4JMJH5.js → qwenContentGenerator-JRFHJRH6.js} +18 -18
  55. package/chunks/{qwenOAuth2-FUBP4U5T.js → qwenOAuth2-KRJT35QH.js} +4 -4
  56. package/chunks/{read-file-ROG4RM65.js → read-file-ZF6EIVE3.js} +8 -8
  57. package/chunks/{ripGrep-ADC4YGZN.js → ripGrep-N2ZT7M6Z.js} +16 -16
  58. package/chunks/{ru-PWPUZWMR.js → ru-DQCW2KHD.js} +10 -1
  59. package/chunks/{scheduler-SJAUHFQT.js → scheduler-OS37FUFT.js} +16 -16
  60. package/chunks/{send-message-OGMOM5PZ.js → send-message-YYF56TS7.js} +2 -2
  61. package/chunks/{serve-TDCSIUAA.js → serve-ABOLLDNN.js} +18 -18
  62. package/chunks/{shell-CHR54FUA.js → shell-XGN7IDUS.js} +16 -16
  63. package/chunks/{skill-XJVA5TG4.js → skill-YQQ6CR4U.js} +26 -18
  64. package/chunks/{src-7ACBXZIS.js → src-LORPPHWB.js} +65 -21
  65. package/chunks/{syntheticOutput-MS737GGZ.js → syntheticOutput-T5SWX3YF.js} +3 -3
  66. package/chunks/{task-stop-FBGBLI2N.js → task-stop-3VHAQMYM.js} +2 -2
  67. package/chunks/{todoWrite-4NAE33MV.js → todoWrite-EAGJGKO5.js} +4 -4
  68. package/chunks/{tool-search-TVX3HXW5.js → tool-search-PDOJPXJJ.js} +24 -9
  69. package/chunks/{web-fetch-YM7HKIWL.js → web-fetch-SS6IKK6N.js} +4 -4
  70. package/chunks/{write-file-FUPILDLW.js → write-file-VWWCN7LI.js} +19 -19
  71. package/chunks/{zh-CFLG2MJ5.js → zh-6VFXOAR5.js} +11 -1
  72. package/chunks/{zh-TW-7D4PSECL.js → zh-TW-IQZ4AD5M.js} +11 -1
  73. package/cli.js +3391 -959
  74. package/examples/agent/agents/diary.md +86 -0
  75. package/examples/agent/qwen-extension.json +4 -0
  76. package/examples/commands/commands/fs/grep-code.md +3 -0
  77. package/examples/commands/qwen-extension.json +4 -0
  78. package/examples/context/QWEN.md +8 -0
  79. package/examples/context/qwen-extension.json +4 -0
  80. package/examples/mcp-server/example.ts +60 -0
  81. package/examples/mcp-server/package.json +18 -0
  82. package/examples/mcp-server/qwen-extension.json +11 -0
  83. package/examples/mcp-server/tsconfig.json +13 -0
  84. package/examples/skills/qwen-extension.json +4 -0
  85. package/examples/skills/skills/synonyms/SKILL.md +48 -0
  86. package/locales/ca.js +20 -2
  87. package/locales/de.js +20 -2
  88. package/locales/en.js +21 -2
  89. package/locales/fr.js +20 -2
  90. package/locales/ja.js +20 -2
  91. package/locales/pt.js +20 -2
  92. package/locales/ru.js +20 -2
  93. package/locales/zh-TW.js +20 -2
  94. package/locales/zh.js +20 -2
  95. package/package.json +3 -2
@@ -166,7 +166,7 @@ var pt_default = {
166
166
  "open full Qwen Code documentation in your browser": "abrir documenta\xE7\xE3o completa do Qwen Code no seu navegador",
167
167
  "Configuration not available.": "Configura\xE7\xE3o n\xE3o dispon\xEDvel.",
168
168
  "Connect an LLM provider": "Conectar a um provedor LLM",
169
- "Copy the last result or code snippet to clipboard": "Copiar o \xFAltimo resultado ou trecho de c\xF3digo para a \xE1rea de transfer\xEAncia",
169
+ "Copy the last AI response to clipboard (/copy N for Nth-latest)": "Copiar a \xFAltima resposta da IA para a \xE1rea de transfer\xEAncia (/copy N para a N-\xE9sima)",
170
170
  // ============================================================================
171
171
  // Commands - Agents
172
172
  // ============================================================================
@@ -592,6 +592,15 @@ var pt_default = {
592
592
  // ============================================================================
593
593
  "Resume a previous session": "Retomar uma sess\xE3o anterior",
594
594
  "Fork the current conversation into a new session": "Ramificar a conversa atual em uma nova sess\xE3o",
595
+ "Spawn a background agent that inherits the full conversation": "Iniciar um agente em segundo plano que herda toda a conversa",
596
+ "Please provide a directive. Usage: /fork <directive>": "Forne\xE7a uma diretiva. Uso: /fork <diretiva>",
597
+ "Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "N\xE3o \xE9 poss\xEDvel criar um fork enquanto uma resposta ou chamada de ferramenta est\xE1 em andamento. Aguarde a conclus\xE3o ou resolva a chamada de ferramenta pendente.",
598
+ "Cannot fork before the first conversation turn.": "N\xE3o \xE9 poss\xEDvel criar um fork antes da primeira rodada da conversa.",
599
+ "The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.": "O comando /fork requer o feature gate de fork. Defina QWEN_CODE_ENABLE_FORK_SUBAGENT=1 para ativ\xE1-lo.",
600
+ "The agent tool is unavailable; cannot fork.": "A ferramenta de agente est\xE1 indispon\xEDvel; n\xE3o \xE9 poss\xEDvel criar um fork.",
601
+ "Failed to launch fork: {{error}}": "Falha ao iniciar o fork: {{error}}",
602
+ "User launched a background fork via /fork: {{directive}}": "O usu\xE1rio iniciou um fork em segundo plano via /fork: {{directive}}",
603
+ "Forked into a background agent. It inherits this conversation and runs without blocking \u2014 track it in the background tasks panel; it reports back when done.": "Fork criado em um agente em segundo plano. Ele herda esta conversa e roda sem bloquear \u2014 acompanhe no painel de tarefas em segundo plano; ele informar\xE1 quando terminar.",
595
604
  "Cannot branch while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "N\xE3o \xE9 poss\xEDvel ramificar enquanto uma resposta ou chamada de ferramenta est\xE1 em andamento. Aguarde a conclus\xE3o ou resolva a chamada de ferramenta pendente.",
596
605
  "No conversation to branch.": "N\xE3o h\xE1 conversa para ramificar.",
597
606
  "Restore a tool call. This will reset the conversation and file history to the state it was in when the tool call was suggested": "Restaurar uma chamada de ferramenta. Isso redefinir\xE1 o hist\xF3rico da conversa e dos arquivos para o estado em que a chamada da ferramenta foi sugerida",
@@ -3,41 +3,41 @@
3
3
  import {
4
4
  DashScopeOpenAICompatibleProvider,
5
5
  OpenAIContentGenerator
6
- } from "./chunk-FCY4DV3R.js";
7
- import "./chunk-ZAHZV7IR.js";
8
- import "./chunk-MUMLIB4J.js";
6
+ } from "./chunk-UXBKX55L.js";
7
+ import "./chunk-BBTV54KB.js";
8
+ import "./chunk-BUOJN3MM.js";
9
9
  import "./chunk-K5PGHDBN.js";
10
10
  import "./chunk-O4PICXES.js";
11
11
  import "./chunk-TW522KN6.js";
12
12
  import "./chunk-MLZQVCF3.js";
13
- import "./chunk-77UV3M62.js";
14
- import "./chunk-UEW42CYE.js";
15
- import "./chunk-OPFJCRUK.js";
13
+ import "./chunk-SCHRFI7O.js";
14
+ import "./chunk-PLYZAP4W.js";
15
+ import "./chunk-UABFCMPA.js";
16
16
  import "./chunk-77WXWU44.js";
17
- import "./chunk-LESSBSSE.js";
18
- import "./chunk-MW6Z7JDT.js";
17
+ import "./chunk-6VFG3EUJ.js";
18
+ import "./chunk-3H7ENG2Q.js";
19
19
  import "./chunk-3PJXIDKI.js";
20
20
  import "./chunk-UWCTAVOD.js";
21
21
  import "./chunk-OFEVLU4C.js";
22
- import "./chunk-2T34DNYQ.js";
23
- import "./chunk-KSX2FIAZ.js";
24
- import "./chunk-UKQJ7G3U.js";
25
- import "./chunk-UB3HGW3I.js";
22
+ import "./chunk-AVLOK27J.js";
23
+ import "./chunk-JSYEZAYV.js";
24
+ import "./chunk-5RNZ2QKF.js";
25
+ import "./chunk-G763GDO6.js";
26
26
  import {
27
27
  SharedTokenManager
28
- } from "./chunk-JAF4PLE7.js";
29
- import "./chunk-7R5J5HSJ.js";
30
- import "./chunk-DU2ZAFA7.js";
31
- import "./chunk-R7WIF3BU.js";
28
+ } from "./chunk-JMLIPZUU.js";
29
+ import "./chunk-GBEPNWYB.js";
30
+ import "./chunk-F5ORN4YO.js";
31
+ import "./chunk-MVX64PNU.js";
32
32
  import {
33
33
  DEFAULT_DASHSCOPE_BASE_URL
34
- } from "./chunk-OV5SE5JD.js";
34
+ } from "./chunk-D46KOV3C.js";
35
35
  import "./chunk-BNESGOSJ.js";
36
36
  import "./chunk-SZOEIL6S.js";
37
37
  import "./chunk-5IFG2VC4.js";
38
38
  import {
39
39
  createDebugLogger
40
- } from "./chunk-S2HZQ4RC.js";
40
+ } from "./chunk-R5PDRHEF.js";
41
41
  import "./chunk-ZERZSAZL.js";
42
42
  import "./chunk-QN5NZ3UQ.js";
43
43
  import "./chunk-BR4QREVK.js";
@@ -18,10 +18,10 @@ import {
18
18
  isDeviceTokenSuccess,
19
19
  isErrorResponse,
20
20
  qwenOAuth2Events
21
- } from "./chunk-JAF4PLE7.js";
22
- import "./chunk-7R5J5HSJ.js";
23
- import "./chunk-DU2ZAFA7.js";
24
- import "./chunk-S2HZQ4RC.js";
21
+ } from "./chunk-JMLIPZUU.js";
22
+ import "./chunk-GBEPNWYB.js";
23
+ import "./chunk-F5ORN4YO.js";
24
+ import "./chunk-R5PDRHEF.js";
25
25
  import "./chunk-WFVXF3OM.js";
26
26
  import "./chunk-A4BMJM77.js";
27
27
  import "./chunk-J2S4EL5Y.js";
@@ -2,20 +2,20 @@
2
2
  "use strict";
3
3
  import {
4
4
  ReadFileTool
5
- } from "./chunk-MW6Z7JDT.js";
5
+ } from "./chunk-3H7ENG2Q.js";
6
6
  import "./chunk-3PJXIDKI.js";
7
7
  import "./chunk-UWCTAVOD.js";
8
8
  import "./chunk-OFEVLU4C.js";
9
- import "./chunk-2T34DNYQ.js";
10
- import "./chunk-KSX2FIAZ.js";
11
- import "./chunk-UKQJ7G3U.js";
12
- import "./chunk-UB3HGW3I.js";
13
- import "./chunk-DU2ZAFA7.js";
14
- import "./chunk-OV5SE5JD.js";
9
+ import "./chunk-AVLOK27J.js";
10
+ import "./chunk-JSYEZAYV.js";
11
+ import "./chunk-5RNZ2QKF.js";
12
+ import "./chunk-G763GDO6.js";
13
+ import "./chunk-F5ORN4YO.js";
14
+ import "./chunk-D46KOV3C.js";
15
15
  import "./chunk-BNESGOSJ.js";
16
16
  import "./chunk-SZOEIL6S.js";
17
17
  import "./chunk-5IFG2VC4.js";
18
- import "./chunk-S2HZQ4RC.js";
18
+ import "./chunk-R5PDRHEF.js";
19
19
  import "./chunk-ZERZSAZL.js";
20
20
  import "./chunk-QN5NZ3UQ.js";
21
21
  import "./chunk-BR4QREVK.js";
@@ -3,33 +3,33 @@
3
3
  import {
4
4
  RipGrepTool,
5
5
  _resetRipGrepCachesForTest
6
- } from "./chunk-MUMLIB4J.js";
6
+ } from "./chunk-BUOJN3MM.js";
7
7
  import "./chunk-K5PGHDBN.js";
8
8
  import "./chunk-O4PICXES.js";
9
9
  import "./chunk-TW522KN6.js";
10
10
  import "./chunk-MLZQVCF3.js";
11
- import "./chunk-77UV3M62.js";
12
- import "./chunk-UEW42CYE.js";
13
- import "./chunk-OPFJCRUK.js";
11
+ import "./chunk-SCHRFI7O.js";
12
+ import "./chunk-PLYZAP4W.js";
13
+ import "./chunk-UABFCMPA.js";
14
14
  import "./chunk-77WXWU44.js";
15
- import "./chunk-LESSBSSE.js";
16
- import "./chunk-MW6Z7JDT.js";
15
+ import "./chunk-6VFG3EUJ.js";
16
+ import "./chunk-3H7ENG2Q.js";
17
17
  import "./chunk-3PJXIDKI.js";
18
18
  import "./chunk-UWCTAVOD.js";
19
19
  import "./chunk-OFEVLU4C.js";
20
- import "./chunk-2T34DNYQ.js";
21
- import "./chunk-KSX2FIAZ.js";
22
- import "./chunk-UKQJ7G3U.js";
23
- import "./chunk-UB3HGW3I.js";
24
- import "./chunk-JAF4PLE7.js";
25
- import "./chunk-7R5J5HSJ.js";
26
- import "./chunk-DU2ZAFA7.js";
27
- import "./chunk-R7WIF3BU.js";
28
- import "./chunk-OV5SE5JD.js";
20
+ import "./chunk-AVLOK27J.js";
21
+ import "./chunk-JSYEZAYV.js";
22
+ import "./chunk-5RNZ2QKF.js";
23
+ import "./chunk-G763GDO6.js";
24
+ import "./chunk-JMLIPZUU.js";
25
+ import "./chunk-GBEPNWYB.js";
26
+ import "./chunk-F5ORN4YO.js";
27
+ import "./chunk-MVX64PNU.js";
28
+ import "./chunk-D46KOV3C.js";
29
29
  import "./chunk-BNESGOSJ.js";
30
30
  import "./chunk-SZOEIL6S.js";
31
31
  import "./chunk-5IFG2VC4.js";
32
- import "./chunk-S2HZQ4RC.js";
32
+ import "./chunk-R5PDRHEF.js";
33
33
  import "./chunk-ZERZSAZL.js";
34
34
  import "./chunk-QN5NZ3UQ.js";
35
35
  import "./chunk-BR4QREVK.js";
@@ -172,7 +172,7 @@ var ru_default = {
172
172
  "open full Qwen Code documentation in your browser": "\u041E\u0442\u043A\u0440\u044B\u0442\u0438\u0435 \u043F\u043E\u043B\u043D\u043E\u0439 \u0434\u043E\u043A\u0443\u043C\u0435\u043D\u0442\u0430\u0446\u0438\u0438 Qwen Code \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435",
173
173
  "Configuration not available.": "\u041A\u043E\u043D\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044F \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u043D\u0430.",
174
174
  "Connect an LLM provider": "\u041F\u043E\u0434\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u043F\u0440\u043E\u0432\u0430\u0439\u0434\u0435\u0440\u0430 LLM",
175
- "Copy the last result or code snippet to clipboard": "\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u043D\u0438\u0435 \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0435\u0433\u043E \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442\u0430 \u0438\u043B\u0438 \u0444\u0440\u0430\u0433\u043C\u0435\u043D\u0442\u0430 \u043A\u043E\u0434\u0430 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043E\u0431\u043C\u0435\u043D\u0430",
175
+ "Copy the last AI response to clipboard (/copy N for Nth-latest)": "\u041A\u043E\u043F\u0438\u0440\u043E\u0432\u0430\u0442\u044C \u043F\u043E\u0441\u043B\u0435\u0434\u043D\u0438\u0439 \u043E\u0442\u0432\u0435\u0442 \u0418\u0418 \u0432 \u0431\u0443\u0444\u0435\u0440 \u043E\u0431\u043C\u0435\u043D\u0430 (/copy N \u0434\u043B\u044F N-\u0433\u043E \u0441 \u043A\u043E\u043D\u0446\u0430)",
176
176
  // ============================================================================
177
177
  // Команды - Агенты
178
178
  // ============================================================================
@@ -604,6 +604,15 @@ var ru_default = {
604
604
  // ============================================================================
605
605
  "Resume a previous session": "\u041F\u0440\u043E\u0434\u043E\u043B\u0436\u0438\u0442\u044C \u043F\u0440\u0435\u0434\u044B\u0434\u0443\u0449\u0443\u044E \u0441\u0435\u0441\u0441\u0438\u044E",
606
606
  "Fork the current conversation into a new session": "\u0421\u043E\u0437\u0434\u0430\u0442\u044C \u0432\u0435\u0442\u043A\u0443 \u0442\u0435\u043A\u0443\u0449\u0435\u0433\u043E \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440\u0430 \u0432 \u043D\u043E\u0432\u043E\u0439 \u0441\u0435\u0441\u0441\u0438\u0438",
607
+ "Spawn a background agent that inherits the full conversation": "\u0417\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C \u0444\u043E\u043D\u043E\u0432\u043E\u0433\u043E \u0430\u0433\u0435\u043D\u0442\u0430, \u043A\u043E\u0442\u043E\u0440\u044B\u0439 \u043D\u0430\u0441\u043B\u0435\u0434\u0443\u0435\u0442 \u0432\u0435\u0441\u044C \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440",
608
+ "Please provide a directive. Usage: /fork <directive>": "\u0423\u043A\u0430\u0436\u0438\u0442\u0435 \u0438\u043D\u0441\u0442\u0440\u0443\u043A\u0446\u0438\u044E. \u0418\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u0435: /fork <\u0438\u043D\u0441\u0442\u0440\u0443\u043A\u0446\u0438\u044F>",
609
+ "Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "\u041D\u0435\u043B\u044C\u0437\u044F \u0441\u043E\u0437\u0434\u0430\u0442\u044C fork, \u043F\u043E\u043A\u0430 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043E\u0442\u0432\u0435\u0442 \u0438\u043B\u0438 \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430. \u0414\u043E\u0436\u0434\u0438\u0442\u0435\u0441\u044C \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F \u0438\u043B\u0438 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u0430\u0439\u0442\u0435 \u043E\u0436\u0438\u0434\u0430\u044E\u0449\u0438\u0439 \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430.",
610
+ "Cannot fork before the first conversation turn.": "\u041D\u0435\u043B\u044C\u0437\u044F \u0441\u043E\u0437\u0434\u0430\u0442\u044C fork \u0434\u043E \u043F\u0435\u0440\u0432\u043E\u0433\u043E \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u044F \u0432 \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440\u0435.",
611
+ "The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.": "\u041A\u043E\u043C\u0430\u043D\u0434\u0435 /fork \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044F feature gate fork. \u0423\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u0435 QWEN_CODE_ENABLE_FORK_SUBAGENT=1, \u0447\u0442\u043E\u0431\u044B \u0432\u043A\u043B\u044E\u0447\u0438\u0442\u044C \u0435\u0433\u043E.",
612
+ "The agent tool is unavailable; cannot fork.": "\u0418\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442 \u0430\u0433\u0435\u043D\u0442\u0430 \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D; fork \u0441\u043E\u0437\u0434\u0430\u0442\u044C \u043D\u0435\u043B\u044C\u0437\u044F.",
613
+ "Failed to launch fork: {{error}}": "\u041D\u0435 \u0443\u0434\u0430\u043B\u043E\u0441\u044C \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u0442\u044C fork: {{error}}",
614
+ "User launched a background fork via /fork: {{directive}}": "\u041F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u0442\u0435\u043B\u044C \u0437\u0430\u043F\u0443\u0441\u0442\u0438\u043B \u0444\u043E\u043D\u043E\u0432\u044B\u0439 fork \u0447\u0435\u0440\u0435\u0437 /fork: {{directive}}",
615
+ "Forked into a background agent. It inherits this conversation and runs without blocking \u2014 track it in the background tasks panel; it reports back when done.": "\u0421\u043E\u0437\u0434\u0430\u043D fork \u0432 \u0444\u043E\u043D\u043E\u0432\u043E\u043C \u0430\u0433\u0435\u043D\u0442\u0435. \u041E\u043D \u043D\u0430\u0441\u043B\u0435\u0434\u0443\u0435\u0442 \u044D\u0442\u043E\u0442 \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440 \u0438 \u0440\u0430\u0431\u043E\u0442\u0430\u0435\u0442 \u0431\u0435\u0437 \u0431\u043B\u043E\u043A\u0438\u0440\u043E\u0432\u043A\u0438 \u2014 \u043E\u0442\u0441\u043B\u0435\u0436\u0438\u0432\u0430\u0439\u0442\u0435 \u0435\u0433\u043E \u043D\u0430 \u043F\u0430\u043D\u0435\u043B\u0438 \u0444\u043E\u043D\u043E\u0432\u044B\u0445 \u0437\u0430\u0434\u0430\u0447; \u043E\u043D \u0441\u043E\u043E\u0431\u0449\u0438\u0442 \u0440\u0435\u0437\u0443\u043B\u044C\u0442\u0430\u0442 \u043F\u043E\u0441\u043B\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F.",
607
616
  "Cannot branch while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.": "\u041D\u0435\u043B\u044C\u0437\u044F \u0441\u043E\u0437\u0434\u0430\u0442\u044C \u0432\u0435\u0442\u043A\u0443, \u043F\u043E\u043A\u0430 \u0432\u044B\u043F\u043E\u043B\u043D\u044F\u0435\u0442\u0441\u044F \u043E\u0442\u0432\u0435\u0442 \u0438\u043B\u0438 \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430. \u0414\u043E\u0436\u0434\u0438\u0442\u0435\u0441\u044C \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u0438\u044F \u0438\u043B\u0438 \u043E\u0431\u0440\u0430\u0431\u043E\u0442\u0430\u0439\u0442\u0435 \u043E\u0436\u0438\u0434\u0430\u044E\u0449\u0438\u0439 \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430.",
608
617
  "No conversation to branch.": "\u041D\u0435\u0442 \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440\u0430 \u0434\u043B\u044F \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u0432\u0435\u0442\u043A\u0438.",
609
618
  "Restore a tool call. This will reset the conversation and file history to the state it was in when the tool call was suggested": "\u0412\u043E\u0441\u0441\u0442\u0430\u043D\u043E\u0432\u0438\u0442\u044C \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430. \u042D\u0442\u043E \u0432\u0435\u0440\u043D\u0435\u0442 \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0440\u0430\u0437\u0433\u043E\u0432\u043E\u0440\u0430 \u0438 \u0444\u0430\u0439\u043B\u043E\u0432 \u043A \u0441\u043E\u0441\u0442\u043E\u044F\u043D\u0438\u044E \u043D\u0430 \u043C\u043E\u043C\u0435\u043D\u0442, \u043A\u043E\u0433\u0434\u0430 \u0431\u044B\u043B \u043F\u0440\u0435\u0434\u043B\u043E\u0436\u0435\u043D \u044D\u0442\u043E\u0442 \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430",
@@ -5,36 +5,36 @@ import {
5
5
  } from "./chunk-MRO43B25.js";
6
6
  import {
7
7
  FILE_HISTORY_DIR
8
- } from "./chunk-MUMLIB4J.js";
8
+ } from "./chunk-BUOJN3MM.js";
9
9
  import "./chunk-K5PGHDBN.js";
10
10
  import "./chunk-O4PICXES.js";
11
11
  import "./chunk-TW522KN6.js";
12
12
  import "./chunk-MLZQVCF3.js";
13
- import "./chunk-77UV3M62.js";
14
- import "./chunk-UEW42CYE.js";
15
- import "./chunk-OPFJCRUK.js";
13
+ import "./chunk-SCHRFI7O.js";
14
+ import "./chunk-PLYZAP4W.js";
15
+ import "./chunk-UABFCMPA.js";
16
16
  import "./chunk-77WXWU44.js";
17
- import "./chunk-LESSBSSE.js";
18
- import "./chunk-MW6Z7JDT.js";
17
+ import "./chunk-6VFG3EUJ.js";
18
+ import "./chunk-3H7ENG2Q.js";
19
19
  import "./chunk-3PJXIDKI.js";
20
20
  import "./chunk-UWCTAVOD.js";
21
21
  import "./chunk-OFEVLU4C.js";
22
- import "./chunk-2T34DNYQ.js";
23
- import "./chunk-KSX2FIAZ.js";
24
- import "./chunk-UKQJ7G3U.js";
25
- import "./chunk-UB3HGW3I.js";
26
- import "./chunk-JAF4PLE7.js";
27
- import "./chunk-7R5J5HSJ.js";
28
- import "./chunk-DU2ZAFA7.js";
29
- import "./chunk-R7WIF3BU.js";
30
- import "./chunk-OV5SE5JD.js";
22
+ import "./chunk-AVLOK27J.js";
23
+ import "./chunk-JSYEZAYV.js";
24
+ import "./chunk-5RNZ2QKF.js";
25
+ import "./chunk-G763GDO6.js";
26
+ import "./chunk-JMLIPZUU.js";
27
+ import "./chunk-GBEPNWYB.js";
28
+ import "./chunk-F5ORN4YO.js";
29
+ import "./chunk-MVX64PNU.js";
30
+ import "./chunk-D46KOV3C.js";
31
31
  import "./chunk-BNESGOSJ.js";
32
32
  import "./chunk-SZOEIL6S.js";
33
33
  import "./chunk-5IFG2VC4.js";
34
34
  import {
35
35
  Storage,
36
36
  createDebugLogger
37
- } from "./chunk-S2HZQ4RC.js";
37
+ } from "./chunk-R5PDRHEF.js";
38
38
  import "./chunk-ZERZSAZL.js";
39
39
  import "./chunk-QN5NZ3UQ.js";
40
40
  import "./chunk-BR4QREVK.js";
@@ -5,8 +5,8 @@ import {
5
5
  BaseToolInvocation,
6
6
  ToolDisplayNames,
7
7
  ToolNames
8
- } from "./chunk-UB3HGW3I.js";
9
- import "./chunk-S2HZQ4RC.js";
8
+ } from "./chunk-G763GDO6.js";
9
+ import "./chunk-R5PDRHEF.js";
10
10
  import "./chunk-WFVXF3OM.js";
11
11
  import {
12
12
  init_esbuild_shims
@@ -29,7 +29,7 @@ import {
29
29
  getNpmVersion,
30
30
  loadSettings,
31
31
  mapDomainErrorToErrorKind
32
- } from "./chunk-4XIYRIZ6.js";
32
+ } from "./chunk-BPZQVC2P.js";
33
33
  import {
34
34
  ClientSideConnection,
35
35
  PROTOCOL_VERSION,
@@ -38,7 +38,7 @@ import {
38
38
  import {
39
39
  writeStderrLine,
40
40
  writeStdoutLine
41
- } from "./chunk-DIO32KR5.js";
41
+ } from "./chunk-UQZQP5PA.js";
42
42
  import {
43
43
  APPROVAL_MODES,
44
44
  BuiltinAgentRegistry,
@@ -56,16 +56,16 @@ import {
56
56
  loadIgnoreRules,
57
57
  require_once,
58
58
  writeWorkspaceContextFile
59
- } from "./chunk-MUMLIB4J.js";
59
+ } from "./chunk-BUOJN3MM.js";
60
60
  import "./chunk-K5PGHDBN.js";
61
61
  import "./chunk-O4PICXES.js";
62
62
  import "./chunk-TW522KN6.js";
63
63
  import "./chunk-MLZQVCF3.js";
64
- import "./chunk-77UV3M62.js";
65
- import "./chunk-UEW42CYE.js";
66
- import "./chunk-OPFJCRUK.js";
64
+ import "./chunk-SCHRFI7O.js";
65
+ import "./chunk-PLYZAP4W.js";
66
+ import "./chunk-UABFCMPA.js";
67
67
  import "./chunk-77WXWU44.js";
68
- import "./chunk-LESSBSSE.js";
68
+ import "./chunk-6VFG3EUJ.js";
69
69
  import {
70
70
  decodeBufferWithEncodingInfo,
71
71
  getAllGeminiMdFilenames,
@@ -73,14 +73,14 @@ import {
73
73
  isBinaryFile,
74
74
  isWithinRoot,
75
75
  require_safer
76
- } from "./chunk-MW6Z7JDT.js";
76
+ } from "./chunk-3H7ENG2Q.js";
77
77
  import "./chunk-3PJXIDKI.js";
78
78
  import "./chunk-UWCTAVOD.js";
79
79
  import "./chunk-OFEVLU4C.js";
80
- import "./chunk-2T34DNYQ.js";
81
- import "./chunk-KSX2FIAZ.js";
82
- import "./chunk-UKQJ7G3U.js";
83
- import "./chunk-UB3HGW3I.js";
80
+ import "./chunk-AVLOK27J.js";
81
+ import "./chunk-JSYEZAYV.js";
82
+ import "./chunk-5RNZ2QKF.js";
83
+ import "./chunk-G763GDO6.js";
84
84
  import {
85
85
  QwenOAuth2Client,
86
86
  QwenOAuthPollError,
@@ -89,20 +89,20 @@ import {
89
89
  isDeviceAuthorizationSuccess,
90
90
  isDeviceTokenPending,
91
91
  isDeviceTokenSuccess
92
- } from "./chunk-JAF4PLE7.js";
93
- import "./chunk-7R5J5HSJ.js";
94
- import "./chunk-DU2ZAFA7.js";
92
+ } from "./chunk-JMLIPZUU.js";
93
+ import "./chunk-GBEPNWYB.js";
94
+ import "./chunk-F5ORN4YO.js";
95
95
  import {
96
96
  detectRuntime,
97
97
  redactProxyCredentials
98
- } from "./chunk-R7WIF3BU.js";
99
- import "./chunk-OV5SE5JD.js";
98
+ } from "./chunk-MVX64PNU.js";
99
+ import "./chunk-D46KOV3C.js";
100
100
  import "./chunk-BNESGOSJ.js";
101
101
  import "./chunk-SZOEIL6S.js";
102
102
  import "./chunk-5IFG2VC4.js";
103
103
  import {
104
104
  Storage
105
- } from "./chunk-S2HZQ4RC.js";
105
+ } from "./chunk-R5PDRHEF.js";
106
106
  import "./chunk-ZERZSAZL.js";
107
107
  import {
108
108
  require_src
@@ -7,33 +7,33 @@ import {
7
7
  buildLongRunningForegroundHint,
8
8
  detectBlockedSleepPattern,
9
9
  parseNumstat
10
- } from "./chunk-MUMLIB4J.js";
10
+ } from "./chunk-BUOJN3MM.js";
11
11
  import "./chunk-K5PGHDBN.js";
12
12
  import "./chunk-O4PICXES.js";
13
13
  import "./chunk-TW522KN6.js";
14
14
  import "./chunk-MLZQVCF3.js";
15
- import "./chunk-77UV3M62.js";
16
- import "./chunk-UEW42CYE.js";
17
- import "./chunk-OPFJCRUK.js";
15
+ import "./chunk-SCHRFI7O.js";
16
+ import "./chunk-PLYZAP4W.js";
17
+ import "./chunk-UABFCMPA.js";
18
18
  import "./chunk-77WXWU44.js";
19
- import "./chunk-LESSBSSE.js";
20
- import "./chunk-MW6Z7JDT.js";
19
+ import "./chunk-6VFG3EUJ.js";
20
+ import "./chunk-3H7ENG2Q.js";
21
21
  import "./chunk-3PJXIDKI.js";
22
22
  import "./chunk-UWCTAVOD.js";
23
23
  import "./chunk-OFEVLU4C.js";
24
- import "./chunk-2T34DNYQ.js";
25
- import "./chunk-KSX2FIAZ.js";
26
- import "./chunk-UKQJ7G3U.js";
27
- import "./chunk-UB3HGW3I.js";
28
- import "./chunk-JAF4PLE7.js";
29
- import "./chunk-7R5J5HSJ.js";
30
- import "./chunk-DU2ZAFA7.js";
31
- import "./chunk-R7WIF3BU.js";
32
- import "./chunk-OV5SE5JD.js";
24
+ import "./chunk-AVLOK27J.js";
25
+ import "./chunk-JSYEZAYV.js";
26
+ import "./chunk-5RNZ2QKF.js";
27
+ import "./chunk-G763GDO6.js";
28
+ import "./chunk-JMLIPZUU.js";
29
+ import "./chunk-GBEPNWYB.js";
30
+ import "./chunk-F5ORN4YO.js";
31
+ import "./chunk-MVX64PNU.js";
32
+ import "./chunk-D46KOV3C.js";
33
33
  import "./chunk-BNESGOSJ.js";
34
34
  import "./chunk-SZOEIL6S.js";
35
35
  import "./chunk-5IFG2VC4.js";
36
- import "./chunk-S2HZQ4RC.js";
36
+ import "./chunk-R5PDRHEF.js";
37
37
  import "./chunk-ZERZSAZL.js";
38
38
  import "./chunk-QN5NZ3UQ.js";
39
39
  import "./chunk-BR4QREVK.js";
@@ -1,35 +1,36 @@
1
1
  // Force strict mode and setup for ESM
2
2
  "use strict";
3
3
  import {
4
+ applySkillAllowedTools,
4
5
  buildSkillLlmContent,
5
6
  escapeXml,
6
7
  registerSkillHooks
7
- } from "./chunk-UEW42CYE.js";
8
- import "./chunk-OPFJCRUK.js";
8
+ } from "./chunk-PLYZAP4W.js";
9
+ import "./chunk-UABFCMPA.js";
9
10
  import {
10
11
  SkillLaunchEvent,
11
12
  logSkillLaunch
12
- } from "./chunk-MW6Z7JDT.js";
13
+ } from "./chunk-3H7ENG2Q.js";
13
14
  import "./chunk-3PJXIDKI.js";
14
15
  import "./chunk-UWCTAVOD.js";
15
16
  import "./chunk-OFEVLU4C.js";
16
- import "./chunk-2T34DNYQ.js";
17
- import "./chunk-KSX2FIAZ.js";
18
- import "./chunk-UKQJ7G3U.js";
17
+ import "./chunk-AVLOK27J.js";
18
+ import "./chunk-JSYEZAYV.js";
19
+ import "./chunk-5RNZ2QKF.js";
19
20
  import {
20
21
  BaseDeclarativeTool,
21
22
  BaseToolInvocation,
22
23
  ToolDisplayNames,
23
24
  ToolNames
24
- } from "./chunk-UB3HGW3I.js";
25
- import "./chunk-DU2ZAFA7.js";
26
- import "./chunk-OV5SE5JD.js";
25
+ } from "./chunk-G763GDO6.js";
26
+ import "./chunk-F5ORN4YO.js";
27
+ import "./chunk-D46KOV3C.js";
27
28
  import "./chunk-BNESGOSJ.js";
28
29
  import "./chunk-SZOEIL6S.js";
29
30
  import "./chunk-5IFG2VC4.js";
30
31
  import {
31
32
  createDebugLogger
32
- } from "./chunk-S2HZQ4RC.js";
33
+ } from "./chunk-R5PDRHEF.js";
33
34
  import "./chunk-ZERZSAZL.js";
34
35
  import "./chunk-QN5NZ3UQ.js";
35
36
  import "./chunk-BR4QREVK.js";
@@ -323,14 +324,17 @@ var SkillToolInvocation = class extends BaseToolInvocation {
323
324
  if (disabled) {
324
325
  if (this.commandExecutor) {
325
326
  try {
326
- const content = await this.commandExecutor(this.params.skill);
327
- if (content !== null) {
328
- if (typeof content === "object" && "error" in content) {
329
- return {
330
- llmContent: content.error,
331
- returnDisplay: content.error
332
- };
333
- }
327
+ const content = await this.commandExecutor(
328
+ this.params.skill,
329
+ this.params.args ?? ""
330
+ );
331
+ if (content && typeof content === "object" && "error" in content) {
332
+ return {
333
+ llmContent: content.error,
334
+ returnDisplay: content.error
335
+ };
336
+ }
337
+ if (typeof content === "string") {
334
338
  return {
335
339
  llmContent: [{ text: content }],
336
340
  returnDisplay: `Delegated to command: ${this.params.skill}`
@@ -402,6 +406,10 @@ ${errorMessages.join("\n")}` : "";
402
406
  new SkillLaunchEvent(this.params.skill, true, this.promptId)
403
407
  );
404
408
  this.onSkillLoaded(this.params.skill);
409
+ applySkillAllowedTools(
410
+ this.config.getPermissionManager(),
411
+ skill.allowedTools
412
+ );
405
413
  debugLogger.debug("Skill hooks check:", {
406
414
  hasHooks: !!skill.hooks,
407
415
  hooksKeys: skill.hooks ? Object.keys(skill.hooks) : [],