@qwen-code/qwen-code 0.17.1 → 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.
- package/README.md +4 -6
- package/bundled/qc-helper/SKILL.md +30 -24
- package/bundled/qc-helper/docs/features/auto-mode.md +54 -9
- package/bundled/qc-helper/docs/features/commands.md +11 -11
- package/bundled/qc-helper/docs/features/markdown-rendering.md +21 -1
- package/bundled/qc-helper/docs/overview.md +4 -4
- package/bundled/qc-helper/docs/quickstart.md +4 -4
- package/bundled/qc-helper/docs/support/Uninstall.md +19 -1
- package/bundled/qc-helper/docs/support/troubleshooting.md +2 -1
- package/chunks/{agent-ZJHHICAC.js → agent-6J2FFD7S.js} +18 -22
- package/chunks/{anthropicContentGenerator-M45RXZVS.js → anthropicContentGenerator-4QBVSFSJ.js} +5 -5
- package/chunks/{askUserQuestion-TGRD7FNQ.js → askUserQuestion-NOOLRWCJ.js} +5 -7
- package/chunks/{ca-6RSCDYUS.js → ca-WRHFBIDH.js} +38 -3
- package/chunks/{chunk-C5CUHYSM.js → chunk-3H7ENG2Q.js} +821 -461
- package/chunks/{chunk-SOGUPKP6.js → chunk-5RNZ2QKF.js} +3 -5
- package/chunks/{chunk-GVWPJCXU.js → chunk-6VFG3EUJ.js} +1 -1
- package/chunks/{chunk-NQ3E7YLD.js → chunk-AVLOK27J.js} +42 -8
- package/chunks/{chunk-JBSYXHJF.js → chunk-BBTV54KB.js} +2 -2
- package/chunks/{chunk-X2474BTT.js → chunk-BPZQVC2P.js} +142 -9
- package/chunks/{chunk-2KEXT6RB.js → chunk-BUOJN3MM.js} +91245 -78527
- package/chunks/{chunk-3BJBCG2K.js → chunk-C6WMLUNB.js} +1 -1
- package/chunks/{chunk-TDZCEIK6.js → chunk-D46KOV3C.js} +1 -1
- package/chunks/{chunk-HX3JRTWL.js → chunk-F5ORN4YO.js} +1 -1
- package/chunks/{chunk-JKUAX6UT.js → chunk-G763GDO6.js} +125 -12
- package/chunks/{chunk-OIL7KDWV.js → chunk-GBEPNWYB.js} +1 -1
- package/chunks/{chunk-5JBZM7FZ.js → chunk-IKOMHTCC.js} +6 -6
- package/chunks/{chunk-G4K6P5KN.js → chunk-JMLIPZUU.js} +3 -3
- package/chunks/{chunk-OJFMTECH.js → chunk-JSYEZAYV.js} +2 -2
- package/chunks/{chunk-AKBFRR6J.js → chunk-K5PGHDBN.js} +132 -112
- package/chunks/{chunk-QVJ33ZBG.js → chunk-MVX64PNU.js} +1 -1
- package/chunks/{chunk-EY6BDW7Y.js → chunk-PLYZAP4W.js} +45 -9
- package/chunks/{chunk-ACBGEKB7.js → chunk-R5PDRHEF.js} +2 -1
- package/chunks/{chunk-6O244QKR.js → chunk-SCHRFI7O.js} +1 -1
- package/chunks/{chunk-GJHMAWS7.js → chunk-SHUT5MQY.js} +1 -1
- package/chunks/{chunk-RQW7WUJR.js → chunk-UABFCMPA.js} +34 -6
- package/chunks/{chunk-33RDTIU6.js → chunk-UFC57OYT.js} +3 -5
- package/chunks/{chunk-PLYRQYKC.js → chunk-UQZQP5PA.js} +11 -11
- package/chunks/{chunk-NP3ICQCN.js → chunk-USE2VQ5P.js} +1 -1
- package/chunks/{chunk-NJJER6E2.js → chunk-UXBKX55L.js} +10 -6
- package/chunks/{chunk-QWSRH265.js → chunk-WFVXF3OM.js} +776 -776
- package/chunks/{computer-use-NAHQPV2L.js → computer-use-6LZXL3UW.js} +51 -18
- package/chunks/contextCommand-ZV5QQ2LA.js +46 -0
- package/chunks/{cron-create-V3UK2SJN.js → cron-create-PIPMXQN4.js} +5 -7
- package/chunks/{cron-delete-MANALPCP.js → cron-delete-6Y5XIDMS.js} +5 -7
- package/chunks/{cron-list-UDIYK3B3.js → cron-list-A4WNRUWZ.js} +5 -7
- package/chunks/{de-APURNJ3I.js → de-M5RPB2NB.js} +38 -3
- package/chunks/{dist-XTTPOFAH.js → dist-BXDUQ2QY.js} +3 -4
- package/chunks/{dist-AHZNZWRI.js → dist-R2SXPG74.js} +4 -5
- package/chunks/{dist-ATAKC63R.js → dist-TE5QKMGR.js} +3 -4
- package/chunks/{dist-6RUZ2JD6.js → dist-ZMQ4TXD5.js} +3 -4
- package/chunks/{edit-JWXCQ4KK.js → edit-J7D6VMPQ.js} +22 -27
- package/chunks/{en-FYO57HJW.js → en-UMYKQAZE.js} +46 -3
- package/chunks/{enter-worktree-G4CJXPT4.js → enter-worktree-NDJTVGYJ.js} +20 -25
- package/chunks/{exit-worktree-MYZ2FGU2.js → exit-worktree-UB6XYYAX.js} +20 -25
- package/chunks/{exitPlanMode-ELJ6FSMU.js → exitPlanMode-V6X2KL4X.js} +20 -25
- package/chunks/{fr-32YHQZIS.js → fr-MPYXXXPW.js} +38 -3
- package/chunks/{geminiContentGenerator-3LR7MKCQ.js → geminiContentGenerator-3AKHMB3P.js} +5 -5
- package/chunks/{getMachineId-bsd-GS3V2GK7.js → getMachineId-bsd-F7GNPTER.js} +1 -1
- package/chunks/{getMachineId-darwin-ZQB4Q7EW.js → getMachineId-darwin-T73DJL27.js} +1 -1
- package/chunks/{getMachineId-linux-JQ4NN4DN.js → getMachineId-linux-MKQTFPQM.js} +1 -1
- package/chunks/{getMachineId-unsupported-U7H4V4HJ.js → getMachineId-unsupported-MUR5KOQE.js} +1 -1
- package/chunks/{getMachineId-win-VHUZGBQ3.js → getMachineId-win-CDYFC6ZM.js} +1 -1
- package/chunks/{glob-CANUAUTC.js → glob-PBG5DRG4.js} +20 -25
- package/chunks/{grep-WZWNJRDX.js → grep-VQ56EWQ7.js} +20 -25
- package/chunks/{ja-PEUXN4XT.js → ja-NFZ32AB3.js} +38 -3
- package/chunks/{keychain-token-storage-3552ENXE.js → keychain-token-storage-UHGOCDD6.js} +3 -3
- package/chunks/{ls-T4SVZWR6.js → ls-34DLNYCD.js} +6 -8
- package/chunks/{lsp-U4ZQLNIS.js → lsp-NCDEHH3V.js} +5 -7
- package/chunks/{monitor-CCKNOUFG.js → monitor-J3YCSOEH.js} +20 -25
- package/chunks/{notebook-edit-XDUY5Q4I.js → notebook-edit-AL3CBYJ6.js} +21 -26
- package/chunks/{openaiContentGenerator-N3O3MYIT.js → openaiContentGenerator-3U6UARHS.js} +12 -14
- package/chunks/{pt-2INS7YVC.js → pt-BR43FRBA.js} +38 -3
- package/chunks/{qwenContentGenerator-DEOIWKVH.js → qwenContentGenerator-JRFHJRH6.js} +20 -24
- package/chunks/{qwenOAuth2-LKXG7XVO.js → qwenOAuth2-KRJT35QH.js} +5 -5
- package/chunks/{read-file-BRNXGILN.js → read-file-ZF6EIVE3.js} +9 -11
- package/chunks/ripGrep-N2ZT7M6Z.js +42 -0
- package/chunks/{ru-6CQ5HNHB.js → ru-DQCW2KHD.js} +38 -3
- package/chunks/{scheduler-SSFABMN5.js → scheduler-OS37FUFT.js} +18 -22
- package/chunks/{send-message-GFYV7WLL.js → send-message-YYF56TS7.js} +5 -7
- package/chunks/{serve-B5O72CRN.js → serve-ABOLLDNN.js} +21 -25
- package/chunks/{shell-SGYNBVMK.js → shell-XGN7IDUS.js} +18 -22
- package/chunks/{skill-V7Y6DOFB.js → skill-YQQ6CR4U.js} +88 -25
- package/chunks/{src-OKFFQGXB.js → src-LORPPHWB.js} +86 -33
- package/chunks/{syntheticOutput-DM43O6TY.js → syntheticOutput-T5SWX3YF.js} +4 -5
- package/chunks/{task-stop-WKP5OB3V.js → task-stop-3VHAQMYM.js} +5 -7
- package/chunks/{todoWrite-GHL6DCLP.js → todoWrite-EAGJGKO5.js} +7 -9
- package/chunks/{tool-search-7MHT3HGM.js → tool-search-PDOJPXJJ.js} +27 -15
- package/chunks/{web-fetch-SZIV74ZX.js → web-fetch-SS6IKK6N.js} +7 -9
- package/chunks/{write-file-ARS2Z6BJ.js → write-file-VWWCN7LI.js} +23 -28
- package/chunks/{zh-ZHZCMIRG.js → zh-6VFXOAR5.js} +49 -3
- package/chunks/{zh-TW-SSL3ATVZ.js → zh-TW-IQZ4AD5M.js} +45 -3
- package/cli.js +8143 -4150
- package/examples/agent/agents/diary.md +86 -0
- package/examples/agent/qwen-extension.json +4 -0
- package/examples/commands/commands/fs/grep-code.md +3 -0
- package/examples/commands/qwen-extension.json +4 -0
- package/examples/context/QWEN.md +8 -0
- package/examples/context/qwen-extension.json +4 -0
- package/examples/mcp-server/example.ts +60 -0
- package/examples/mcp-server/package.json +18 -0
- package/examples/mcp-server/qwen-extension.json +11 -0
- package/examples/mcp-server/tsconfig.json +13 -0
- package/examples/skills/qwen-extension.json +4 -0
- package/examples/skills/skills/synonyms/SKILL.md +48 -0
- package/locales/ca.js +64 -4
- package/locales/de.js +63 -4
- package/locales/en.js +75 -4
- package/locales/fr.js +65 -4
- package/locales/ja.js +61 -4
- package/locales/pt.js +64 -4
- package/locales/ru.js +62 -4
- package/locales/zh-TW.js +70 -4
- package/locales/zh.js +74 -4
- package/package.json +3 -2
- package/chunks/chunk-24YKA2DA.js +0 -233
- package/chunks/chunk-6RQTH7UQ.js +0 -115
- package/chunks/chunk-7TQVELRB.js +0 -10412
- package/chunks/chunk-W57YDFU5.js +0 -41
- package/chunks/contextCommand-7KJT3UJS.js +0 -50
- package/chunks/ripGrep-ZRY5PKUZ.js +0 -46
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: diary-writer
|
|
3
|
+
description: generate a diary for user
|
|
4
|
+
color: yellow
|
|
5
|
+
tools:
|
|
6
|
+
- Glob
|
|
7
|
+
- Grep
|
|
8
|
+
- ListFiles
|
|
9
|
+
- ReadFile
|
|
10
|
+
- ReadManyFiles
|
|
11
|
+
- NotebookRead
|
|
12
|
+
- WebFetch
|
|
13
|
+
- TodoWrite
|
|
14
|
+
modelConfig:
|
|
15
|
+
model: qwen3-coder-plus
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
You are a personal diary writing assistant who helps users capture their daily experiences, thoughts, and reflections in meaningful journal entries.
|
|
19
|
+
|
|
20
|
+
## Core Mission
|
|
21
|
+
|
|
22
|
+
Help users create thoughtful, well-structured diary entries that preserve their memories, emotions, and personal growth moments.
|
|
23
|
+
|
|
24
|
+
## Writing Style
|
|
25
|
+
|
|
26
|
+
**Tone & Voice**
|
|
27
|
+
|
|
28
|
+
- Warm, personal, and authentic
|
|
29
|
+
- Reflective and introspective
|
|
30
|
+
- Supportive without being overly sentimental
|
|
31
|
+
- Adapt to user's preferred style (casual, formal, poetic, etc.)
|
|
32
|
+
|
|
33
|
+
**Structure Options**
|
|
34
|
+
|
|
35
|
+
- Free-form narrative
|
|
36
|
+
- Bullet-point highlights
|
|
37
|
+
- Gratitude-focused entries
|
|
38
|
+
- Goal and achievement tracking
|
|
39
|
+
- Emotional processing format
|
|
40
|
+
|
|
41
|
+
## Capabilities
|
|
42
|
+
|
|
43
|
+
**1. Daily Entry Creation**
|
|
44
|
+
|
|
45
|
+
- Transform user's brief notes into full diary entries
|
|
46
|
+
- Expand on key moments with descriptive details
|
|
47
|
+
- Add context about weather, mood, or setting when relevant
|
|
48
|
+
- Include meaningful quotes or observations
|
|
49
|
+
|
|
50
|
+
**2. Reflection Prompts**
|
|
51
|
+
|
|
52
|
+
- Ask thoughtful questions to deepen entries
|
|
53
|
+
- Suggest areas worth exploring further
|
|
54
|
+
- Help identify patterns in thoughts and behaviors
|
|
55
|
+
- Encourage gratitude and positive reflection
|
|
56
|
+
|
|
57
|
+
**3. Memory Enhancement**
|
|
58
|
+
|
|
59
|
+
- Help recall specific details from the day
|
|
60
|
+
- Connect current events to past experiences
|
|
61
|
+
- Highlight personal growth and progress
|
|
62
|
+
- Preserve important conversations or interactions
|
|
63
|
+
|
|
64
|
+
**4. Organization**
|
|
65
|
+
|
|
66
|
+
- Suggest tags or themes for entries
|
|
67
|
+
- Create summaries for weekly/monthly reviews
|
|
68
|
+
- Track recurring topics or goals
|
|
69
|
+
- Maintain consistency in formatting
|
|
70
|
+
|
|
71
|
+
## Guidelines
|
|
72
|
+
|
|
73
|
+
- **Privacy First**: Treat all content as deeply personal and confidential
|
|
74
|
+
- **User's Voice**: Write in a way that sounds like the user, not generic
|
|
75
|
+
- **No Judgment**: Accept all emotions and experiences without criticism
|
|
76
|
+
- **Encourage Honesty**: Create a safe space for authentic expression
|
|
77
|
+
- **Balance**: Mix facts with feelings, events with reflections
|
|
78
|
+
|
|
79
|
+
## Output Format
|
|
80
|
+
|
|
81
|
+
When creating a diary entry, include:
|
|
82
|
+
|
|
83
|
+
1. **Date & Title** (optional creative title)
|
|
84
|
+
2. **Main Content** - The narrative or bullet points
|
|
85
|
+
3. **Reflection** - A brief closing thought or takeaway
|
|
86
|
+
4. **Tags** (optional) - For organization and future reference
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Ink Library Screen Reader Guidance
|
|
2
|
+
|
|
3
|
+
When building custom components, it's important to keep accessibility in mind. While Ink provides the building blocks, ensuring your components are accessible will make your CLIs usable by a wider audience.
|
|
4
|
+
|
|
5
|
+
## General Principles
|
|
6
|
+
|
|
7
|
+
Provide screen reader-friendly output: Use the useIsScreenReaderEnabled hook to detect if a screen reader is active. You can then render a more descriptive output for screen reader users.
|
|
8
|
+
Leverage ARIA props: For components that have a specific role (e.g., a checkbox or a button), use the aria-role, aria-state, and aria-label props on <Box> and <Text> to provide semantic meaning to screen readers.
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
8
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
9
|
+
import { z } from 'zod';
|
|
10
|
+
|
|
11
|
+
const server = new McpServer({
|
|
12
|
+
name: 'prompt-server',
|
|
13
|
+
version: '1.0.0',
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
server.registerTool(
|
|
17
|
+
'fetch_posts',
|
|
18
|
+
{
|
|
19
|
+
description: 'Fetches a list of posts from a public API.',
|
|
20
|
+
inputSchema: z.object({}).shape,
|
|
21
|
+
},
|
|
22
|
+
async () => {
|
|
23
|
+
const apiResponse = await fetch(
|
|
24
|
+
'https://jsonplaceholder.typicode.com/posts',
|
|
25
|
+
);
|
|
26
|
+
const posts = await apiResponse.json();
|
|
27
|
+
const response = { posts: posts.slice(0, 5) };
|
|
28
|
+
return {
|
|
29
|
+
content: [
|
|
30
|
+
{
|
|
31
|
+
type: 'text',
|
|
32
|
+
text: JSON.stringify(response),
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
);
|
|
38
|
+
|
|
39
|
+
server.registerPrompt(
|
|
40
|
+
'poem-writer',
|
|
41
|
+
{
|
|
42
|
+
title: 'Poem Writer',
|
|
43
|
+
description: 'Write a nice haiku',
|
|
44
|
+
argsSchema: { title: z.string(), mood: z.string().optional() },
|
|
45
|
+
},
|
|
46
|
+
({ title, mood }) => ({
|
|
47
|
+
messages: [
|
|
48
|
+
{
|
|
49
|
+
role: 'user',
|
|
50
|
+
content: {
|
|
51
|
+
type: 'text',
|
|
52
|
+
text: `Write a haiku${mood ? ` with the mood ${mood}` : ''} called ${title}. Note that a haiku is 5 syllables followed by 7 syllables followed by 5 syllables `,
|
|
53
|
+
},
|
|
54
|
+
},
|
|
55
|
+
],
|
|
56
|
+
}),
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
const transport = new StdioServerTransport();
|
|
60
|
+
await server.connect(transport);
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mcp-server-example",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Example MCP Server for Qwen Code Extension",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "example.js",
|
|
7
|
+
"scripts": {
|
|
8
|
+
"build": "tsc"
|
|
9
|
+
},
|
|
10
|
+
"devDependencies": {
|
|
11
|
+
"typescript": "~5.4.5",
|
|
12
|
+
"@types/node": "^20.11.25"
|
|
13
|
+
},
|
|
14
|
+
"dependencies": {
|
|
15
|
+
"@modelcontextprotocol/sdk": "^1.11.0",
|
|
16
|
+
"zod": "^3.22.4"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "NodeNext",
|
|
5
|
+
"moduleResolution": "NodeNext",
|
|
6
|
+
"strict": true,
|
|
7
|
+
"esModuleInterop": true,
|
|
8
|
+
"skipLibCheck": true,
|
|
9
|
+
"forceConsistentCasingInFileNames": true,
|
|
10
|
+
"outDir": "./dist"
|
|
11
|
+
},
|
|
12
|
+
"include": ["example.ts"]
|
|
13
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: synonyms
|
|
3
|
+
description: Generate synonyms for words or phrases. Use this skill when the user needs alternative words with similar meanings, wants to expand vocabulary, or seeks varied expressions for writing.
|
|
4
|
+
license: Complete terms in LICENSE.txt
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
This skill helps generate synonyms and alternative expressions for given words or phrases. It provides contextually appropriate alternatives to enhance vocabulary and improve writing variety.
|
|
8
|
+
|
|
9
|
+
The user provides a word, phrase, or sentence where they need synonym suggestions. They may specify the context, tone, or formality level desired.
|
|
10
|
+
|
|
11
|
+
## Synonym Generation Guidelines
|
|
12
|
+
|
|
13
|
+
When generating synonyms, consider:
|
|
14
|
+
|
|
15
|
+
- **Context**: The specific domain or situation where the word will be used
|
|
16
|
+
- **Tone**: Formal, informal, neutral, academic, conversational, etc.
|
|
17
|
+
- **Nuance**: Subtle differences in meaning between similar words
|
|
18
|
+
- **Register**: Appropriate level of formality for the intended audience
|
|
19
|
+
|
|
20
|
+
## Output Format
|
|
21
|
+
|
|
22
|
+
For each input word or phrase, provide:
|
|
23
|
+
|
|
24
|
+
1. **Direct Synonyms**: Words with nearly identical meanings
|
|
25
|
+
2. **Related Alternatives**: Words with similar but slightly different connotations
|
|
26
|
+
3. **Context Examples**: Brief usage examples when helpful
|
|
27
|
+
|
|
28
|
+
## Best Practices
|
|
29
|
+
|
|
30
|
+
- Prioritize commonly used synonyms over obscure alternatives
|
|
31
|
+
- Note any subtle differences in meaning or usage
|
|
32
|
+
- Consider regional variations when relevant
|
|
33
|
+
- Indicate formality levels (formal/informal/neutral)
|
|
34
|
+
- Provide multiple options to give users choices
|
|
35
|
+
|
|
36
|
+
## Example
|
|
37
|
+
|
|
38
|
+
**Input**: "happy"
|
|
39
|
+
|
|
40
|
+
**Synonyms**:
|
|
41
|
+
|
|
42
|
+
- **Direct**: joyful, cheerful, delighted, pleased, content
|
|
43
|
+
- **Informal**: thrilled, stoked, over the moon
|
|
44
|
+
- **Formal**: elated, gratified, blissful
|
|
45
|
+
- **Subtle variations**:
|
|
46
|
+
- _content_ - peaceful satisfaction
|
|
47
|
+
- _ecstatic_ - intense, overwhelming happiness
|
|
48
|
+
- _cheerful_ - outwardly expressing happiness
|
package/locales/ca.js
CHANGED
|
@@ -109,7 +109,42 @@ export default {
|
|
|
109
109
|
'Analitza el projecte i crea un fitxer QWEN.md personalitzat.',
|
|
110
110
|
'List available Qwen Code tools. Usage: /tools [desc]':
|
|
111
111
|
'Llistar les eines disponibles de Qwen Code. Ús: /tools [desc]',
|
|
112
|
-
'
|
|
112
|
+
'Open the skills panel (browse, search, toggle, pick).':
|
|
113
|
+
"Obrir el panell d'habilitats (explorar, cercar, activar, triar).",
|
|
114
|
+
'Manage Skills': 'Gestionar habilitats',
|
|
115
|
+
'Skills configuration saved.': "Configuració d'habilitats desada.",
|
|
116
|
+
'Skills configuration saved, but refresh failed: {{error}}. Restart to ensure the new state is applied.':
|
|
117
|
+
"Configuració d'habilitats desada, però l'actualització ha fallat: {{error}}. Reinicia per assegurar-te que el nou estat s'apliqui.",
|
|
118
|
+
'Workspace is untrusted; workspace settings are ignored by the merged config. Run /trust first to persist skills changes here, or edit ~/.qwen/settings.json directly to manage skills at user scope.':
|
|
119
|
+
"L'espai de treball no és de confiança; els paràmetres de l'espai de treball s'ignoren a la configuració fusionada. Executa /trust primer, o edita ~/.qwen/settings.json directament per gestionar habilitats a l'àmbit d'usuari.",
|
|
120
|
+
'SkillManager not available.': 'SkillManager no disponible.',
|
|
121
|
+
'Loading skills…': 'Carregant habilitats…',
|
|
122
|
+
'Failed to load skills: {{error}}':
|
|
123
|
+
'No s’han pogut carregar les habilitats: {{error}}',
|
|
124
|
+
'Failed to save skills configuration: {{error}}':
|
|
125
|
+
"No s'ha pogut desar la configuració d'habilitats: {{error}}",
|
|
126
|
+
'All available skills are disabled. Edit ~/.qwen/settings.json or .qwen/settings.json (skills.disabled) to re-enable.':
|
|
127
|
+
'Totes les habilitats disponibles estan desactivades. Edita ~/.qwen/settings.json o .qwen/settings.json (skills.disabled) per tornar-les a activar.',
|
|
128
|
+
'Press esc to close.': 'Prem Esc per tancar.',
|
|
129
|
+
'{{count}} skills · ': '{{count}} habilitats · ',
|
|
130
|
+
'{{matched}} / {{total}} skills · ': '{{matched}} / {{total}} habilitats · ',
|
|
131
|
+
'Space toggle · Enter pick (fill input) · Esc save & exit · workspace scope':
|
|
132
|
+
"Espai alternar · Enter triar (omple l'entrada) · Esc desar i sortir · àmbit d'espai de treball",
|
|
133
|
+
'Search:': 'Cerca:',
|
|
134
|
+
'type to filter…': 'escriu per filtrar…',
|
|
135
|
+
'No skills are currently available.':
|
|
136
|
+
'No hi ha habilitats disponibles actualment.',
|
|
137
|
+
'All available skills are locked at a higher scope (see below).':
|
|
138
|
+
'Totes les habilitats disponibles estan bloquejades en un àmbit superior (veure a sota).',
|
|
139
|
+
'No skills match the search.': 'Cap habilitat coincideix amb la cerca.',
|
|
140
|
+
'Locked by higher-scope settings (cannot toggle here):':
|
|
141
|
+
"Bloquejades per paràmetres d'àmbit superior (aquí no es poden commutar):",
|
|
142
|
+
'higher scope': 'àmbit superior',
|
|
143
|
+
' {{name}} {{description}} [locked: {{scope}}]':
|
|
144
|
+
' {{name}} {{description}} [bloquejada: {{scope}}]',
|
|
145
|
+
'↑/↓ navigate · backspace edits search':
|
|
146
|
+
'↑/↓ navega · Retrocés edita la cerca',
|
|
147
|
+
Bundled: 'Integrada',
|
|
113
148
|
'Available Qwen Code CLI tools:': 'Eines del CLI de Qwen Code disponibles:',
|
|
114
149
|
'No tools available': 'No hi ha eines disponibles',
|
|
115
150
|
'View or change the approval mode for tool usage':
|
|
@@ -192,8 +227,8 @@ export default {
|
|
|
192
227
|
'obrir la documentació completa de Qwen Code al navegador',
|
|
193
228
|
'Configuration not available.': 'Configuració no disponible.',
|
|
194
229
|
'Connect an LLM provider': 'Connectar un proveïdor LLM',
|
|
195
|
-
'Copy the last
|
|
196
|
-
"
|
|
230
|
+
'Copy the last AI response to clipboard (/copy N for Nth-latest)':
|
|
231
|
+
"Copia l'última resposta de la IA al porta-retalls (/copy N per a l'N-èsima)",
|
|
197
232
|
|
|
198
233
|
// ============================================================================
|
|
199
234
|
// Ordres - Agents
|
|
@@ -715,6 +750,8 @@ export default {
|
|
|
715
750
|
'After tool execution fails': "Quan falla l'execució de l'eina",
|
|
716
751
|
'When notifications are sent': "Quan s'envien notificacions",
|
|
717
752
|
'When the user submits a prompt': "Quan l'usuari envia un missatge",
|
|
753
|
+
'When a slash command expands into a prompt':
|
|
754
|
+
"Quan una ordre de barra s'expandeix en un missatge",
|
|
718
755
|
'When a new session is started': "Quan s'inicia una nova sessió",
|
|
719
756
|
'Right before Qwen Code concludes its response':
|
|
720
757
|
'Immediatament abans que Qwen Code conclou la seva resposta',
|
|
@@ -736,6 +773,8 @@ export default {
|
|
|
736
773
|
"L'entrada a l'ordre és JSON amb el missatge de notificació i el tipus.",
|
|
737
774
|
'Input to command is JSON with original user prompt text.':
|
|
738
775
|
"L'entrada a l'ordre és JSON amb el text original del missatge de l'usuari.",
|
|
776
|
+
'Input to command is JSON with command_name, command_args, and expanded prompt text.':
|
|
777
|
+
"L'entrada a l'ordre és JSON amb command_name, command_args i el text del missatge expandit.",
|
|
739
778
|
'Input to command is JSON with session start source.':
|
|
740
779
|
"L'entrada a l'ordre és JSON amb la font d'inici de sessió.",
|
|
741
780
|
'Input to command is JSON with session end reason.':
|
|
@@ -759,6 +798,8 @@ export default {
|
|
|
759
798
|
"mostrar stderr només a l'usuari però continuar amb la crida a l'eina",
|
|
760
799
|
'block processing, erase original prompt, and show stderr to user only':
|
|
761
800
|
"blocar el processament, esborrar el missatge original i mostrar stderr només a l'usuari",
|
|
801
|
+
'block expanded prompt submission and show stderr to user only':
|
|
802
|
+
"blocar l'enviament del missatge expandit i mostrar stderr només a l'usuari",
|
|
762
803
|
'stdout shown to Qwen': 'stdout mostrat a Qwen',
|
|
763
804
|
'show stderr to user only (blocking errors ignored)':
|
|
764
805
|
"mostrar stderr només a l'usuari (errors de bloqueig ignorats)",
|
|
@@ -798,6 +839,24 @@ export default {
|
|
|
798
839
|
'Resume a previous session': 'Reprendre una sessió anterior',
|
|
799
840
|
'Fork the current conversation into a new session':
|
|
800
841
|
'Bifurca la conversa actual en una sessió nova',
|
|
842
|
+
'Spawn a background agent that inherits the full conversation':
|
|
843
|
+
'Inicia un agent en segon pla que hereta tota la conversa',
|
|
844
|
+
'Please provide a directive. Usage: /fork <directive>':
|
|
845
|
+
'Proporcioneu una directiva. Ús: /fork <directiva>',
|
|
846
|
+
'Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.':
|
|
847
|
+
"No es pot crear una bifurcació mentre hi ha una resposta o una crida a una eina en curs. Espereu que acabi o resolgueu la crida a l'eina pendent.",
|
|
848
|
+
'Cannot fork before the first conversation turn.':
|
|
849
|
+
'No es pot crear una bifurcació abans del primer torn de conversa.',
|
|
850
|
+
'The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.':
|
|
851
|
+
'L’ordre /fork requereix el feature gate de fork. Definiu QWEN_CODE_ENABLE_FORK_SUBAGENT=1 per activar-lo.',
|
|
852
|
+
'The agent tool is unavailable; cannot fork.':
|
|
853
|
+
"L'eina d'agent no està disponible; no es pot crear una bifurcació.",
|
|
854
|
+
'Failed to launch fork: {{error}}':
|
|
855
|
+
'No s’ha pogut iniciar la bifurcació: {{error}}',
|
|
856
|
+
'User launched a background fork via /fork: {{directive}}':
|
|
857
|
+
"L'usuari ha iniciat una bifurcació en segon pla amb /fork: {{directive}}",
|
|
858
|
+
'Forked into a background agent. It inherits this conversation and runs without blocking — track it in the background tasks panel; it reports back when done.':
|
|
859
|
+
"S'ha bifurcat a un agent en segon pla. Hereta aquesta conversa i s'executa sense bloquejar — feu-ne el seguiment al tauler de tasques en segon pla; informarà quan acabi.",
|
|
801
860
|
'Cannot branch while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.':
|
|
802
861
|
"No es pot bifurcar mentre hi ha una resposta o una crida a una eina en curs. Espereu que acabi o resolgueu la crida a l'eina pendent.",
|
|
803
862
|
'No conversation to branch.': 'No hi ha cap conversa per bifurcar.',
|
|
@@ -846,13 +905,14 @@ export default {
|
|
|
846
905
|
// Ordres - Mode d'aprovació
|
|
847
906
|
// ============================================================================
|
|
848
907
|
'Tool Approval Mode': "Mode d'aprovació d'eines",
|
|
849
|
-
'{{mode}} mode': 'Mode {{mode}}',
|
|
850
908
|
'Analyze only, do not modify files or execute commands':
|
|
851
909
|
'Analitzar només, sense modificar fitxers ni executar ordres',
|
|
852
910
|
'Require approval for file edits or shell commands':
|
|
853
911
|
'Requerir aprovació per a edicions de fitxers o ordres shell',
|
|
854
912
|
'Automatically approve file edits':
|
|
855
913
|
'Aprovar automàticament les edicions de fitxers',
|
|
914
|
+
'Use classifier to automatically approve safe tool calls':
|
|
915
|
+
'Utilitzar el classificador per aprovar automàticament les crides segures a eines',
|
|
856
916
|
'Automatically approve all tools': 'Aprovar automàticament totes les eines',
|
|
857
917
|
'Workspace approval mode exists and takes priority. User-level change will have no effect.':
|
|
858
918
|
"Existeix un mode d'aprovació de l'espai de treball i té prioritat. El canvi a nivell d'usuari no tindrà cap efecte.",
|
package/locales/de.js
CHANGED
|
@@ -91,7 +91,41 @@ export default {
|
|
|
91
91
|
'Analysiert das Projekt und erstellt eine maßgeschneiderte QWEN.md-Datei.',
|
|
92
92
|
'List available Qwen Code tools. Usage: /tools [desc]':
|
|
93
93
|
'Verfügbare Qwen Code Werkzeuge auflisten. Verwendung: /tools [desc]',
|
|
94
|
-
'
|
|
94
|
+
'Open the skills panel (browse, search, toggle, pick).':
|
|
95
|
+
'Skills-Panel öffnen (durchsuchen, suchen, ein/aus, auswählen).',
|
|
96
|
+
'Manage Skills': 'Skills verwalten',
|
|
97
|
+
'Skills configuration saved.': 'Skills-Konfiguration gespeichert.',
|
|
98
|
+
'Skills configuration saved, but refresh failed: {{error}}. Restart to ensure the new state is applied.':
|
|
99
|
+
'Skills-Konfiguration gespeichert, aber Aktualisierung fehlgeschlagen: {{error}}. Bitte neu starten, um den neuen Zustand zu übernehmen.',
|
|
100
|
+
'Workspace is untrusted; workspace settings are ignored by the merged config. Run /trust first to persist skills changes here, or edit ~/.qwen/settings.json directly to manage skills at user scope.':
|
|
101
|
+
'Arbeitsbereich ist nicht vertrauenswürdig; Arbeitsbereichseinstellungen werden in der zusammengeführten Konfiguration ignoriert. Führe zuerst /trust aus oder bearbeite ~/.qwen/settings.json direkt, um Skills auf Benutzerebene zu verwalten.',
|
|
102
|
+
'SkillManager not available.': 'SkillManager nicht verfügbar.',
|
|
103
|
+
'Loading skills…': 'Skills werden geladen…',
|
|
104
|
+
'Failed to load skills: {{error}}':
|
|
105
|
+
'Skills konnten nicht geladen werden: {{error}}',
|
|
106
|
+
'Failed to save skills configuration: {{error}}':
|
|
107
|
+
'Speichern der Skill-Konfiguration fehlgeschlagen: {{error}}',
|
|
108
|
+
'All available skills are disabled. Edit ~/.qwen/settings.json or .qwen/settings.json (skills.disabled) to re-enable.':
|
|
109
|
+
'Alle verfügbaren Skills sind deaktiviert. Bearbeite ~/.qwen/settings.json oder .qwen/settings.json (skills.disabled), um sie wieder zu aktivieren.',
|
|
110
|
+
'Press esc to close.': 'Esc drücken, um zu schließen.',
|
|
111
|
+
'{{count}} skills · ': '{{count}} Skills · ',
|
|
112
|
+
'{{matched}} / {{total}} skills · ': '{{matched}} / {{total}} Skills · ',
|
|
113
|
+
'Space toggle · Enter pick (fill input) · Esc save & exit · workspace scope':
|
|
114
|
+
'Leertaste umschalten · Enter auswählen (in Eingabe) · Esc speichern & beenden · Arbeitsbereich',
|
|
115
|
+
'Search:': 'Suche:',
|
|
116
|
+
'type to filter…': 'Tippen zum Filtern…',
|
|
117
|
+
'No skills are currently available.': 'Derzeit sind keine Skills verfügbar.',
|
|
118
|
+
'All available skills are locked at a higher scope (see below).':
|
|
119
|
+
'Alle verfügbaren Skills sind in einer höheren Ebene gesperrt (siehe unten).',
|
|
120
|
+
'No skills match the search.': 'Keine Skills passen zur Suche.',
|
|
121
|
+
'Locked by higher-scope settings (cannot toggle here):':
|
|
122
|
+
'Gesperrt durch Einstellungen einer höheren Ebene (kann hier nicht umgeschaltet werden):',
|
|
123
|
+
'higher scope': 'höhere Ebene',
|
|
124
|
+
' {{name}} {{description}} [locked: {{scope}}]':
|
|
125
|
+
' {{name}} {{description}} [gesperrt: {{scope}}]',
|
|
126
|
+
'↑/↓ navigate · backspace edits search':
|
|
127
|
+
'↑/↓ navigieren · Rücktaste bearbeitet Suche',
|
|
128
|
+
Bundled: 'Mitgeliefert',
|
|
95
129
|
'Available Qwen Code CLI tools:': 'Verfügbare Qwen Code CLI-Werkzeuge:',
|
|
96
130
|
'No tools available': 'Keine Werkzeuge verfügbar',
|
|
97
131
|
'View or change the approval mode for tool usage':
|
|
@@ -171,8 +205,8 @@ export default {
|
|
|
171
205
|
'Vollständige Qwen Code Dokumentation im Browser öffnen',
|
|
172
206
|
'Configuration not available.': 'Konfiguration nicht verfügbar.',
|
|
173
207
|
'Connect an LLM provider': 'LLM-Anbieter verbinden',
|
|
174
|
-
'Copy the last
|
|
175
|
-
'
|
|
208
|
+
'Copy the last AI response to clipboard (/copy N for Nth-latest)':
|
|
209
|
+
'Letzte KI-Antwort in die Zwischenablage kopieren (/copy N für die N-letzte)',
|
|
176
210
|
|
|
177
211
|
// ============================================================================
|
|
178
212
|
// Commands - Agents
|
|
@@ -654,6 +688,8 @@ export default {
|
|
|
654
688
|
'After tool execution fails': 'Wenn die Tool-Ausführung fehlschlägt',
|
|
655
689
|
'When notifications are sent': 'Wenn Benachrichtigungen gesendet werden',
|
|
656
690
|
'When the user submits a prompt': 'Wenn der Benutzer einen Prompt absendet',
|
|
691
|
+
'When a slash command expands into a prompt':
|
|
692
|
+
'Wenn ein Slash-Befehl zu einem Prompt erweitert wird',
|
|
657
693
|
'When a new session is started': 'Wenn eine neue Sitzung gestartet wird',
|
|
658
694
|
'Right before Qwen Code concludes its response':
|
|
659
695
|
'Direkt bevor Qwen Code seine Antwort abschließt',
|
|
@@ -680,6 +716,8 @@ export default {
|
|
|
680
716
|
'Die Eingabe an den Befehl ist JSON mit Benachrichtigungsnachricht und -typ.',
|
|
681
717
|
'Input to command is JSON with original user prompt text.':
|
|
682
718
|
'Die Eingabe an den Befehl ist JSON mit dem ursprünglichen Benutzer-Prompt-Text.',
|
|
719
|
+
'Input to command is JSON with command_name, command_args, and expanded prompt text.':
|
|
720
|
+
'Die Eingabe an den Befehl ist JSON mit command_name, command_args und erweitertem Prompt-Text.',
|
|
683
721
|
'Input to command is JSON with session start source.':
|
|
684
722
|
'Die Eingabe an den Befehl ist JSON mit der Sitzungsstart-Quelle.',
|
|
685
723
|
'Input to command is JSON with session end reason.':
|
|
@@ -708,6 +746,8 @@ export default {
|
|
|
708
746
|
'stderr nur dem Benutzer anzeigen, aber mit Tool-Aufruf fortfahren',
|
|
709
747
|
'block processing, erase original prompt, and show stderr to user only':
|
|
710
748
|
'Verarbeitung blockieren, ursprünglichen Prompt löschen und stderr nur dem Benutzer anzeigen',
|
|
749
|
+
'block expanded prompt submission and show stderr to user only':
|
|
750
|
+
'Einreichen des erweiterten Prompts blockieren und stderr nur dem Benutzer anzeigen',
|
|
711
751
|
'stdout shown to Qwen': 'stdout dem Qwen anzeigen',
|
|
712
752
|
'show stderr to user only (blocking errors ignored)':
|
|
713
753
|
'stderr nur dem Benutzer anzeigen (Blockierungsfehler ignoriert)',
|
|
@@ -756,6 +796,24 @@ export default {
|
|
|
756
796
|
'Resume a previous session': 'Eine vorherige Sitzung fortsetzen',
|
|
757
797
|
'Fork the current conversation into a new session':
|
|
758
798
|
'Die aktuelle Unterhaltung in eine neue Sitzung verzweigen',
|
|
799
|
+
'Spawn a background agent that inherits the full conversation':
|
|
800
|
+
'Einen Hintergrund-Agenten starten, der die gesamte Unterhaltung übernimmt',
|
|
801
|
+
'Please provide a directive. Usage: /fork <directive>':
|
|
802
|
+
'Bitte geben Sie eine Anweisung an. Verwendung: /fork <Anweisung>',
|
|
803
|
+
'Cannot fork while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.':
|
|
804
|
+
'Während eine Antwort oder ein Tool-Aufruf läuft, kann kein Hintergrund-Fork erstellt werden. Warten Sie, bis der Vorgang abgeschlossen ist, oder bearbeiten Sie den ausstehenden Tool-Aufruf.',
|
|
805
|
+
'Cannot fork before the first conversation turn.':
|
|
806
|
+
'Vor der ersten Gesprächsrunde kann kein Fork erstellt werden.',
|
|
807
|
+
'The /fork command requires the fork feature gate. Set QWEN_CODE_ENABLE_FORK_SUBAGENT=1 to enable it.':
|
|
808
|
+
'Der Befehl /fork erfordert das Fork-Feature-Gate. Setzen Sie QWEN_CODE_ENABLE_FORK_SUBAGENT=1, um es zu aktivieren.',
|
|
809
|
+
'The agent tool is unavailable; cannot fork.':
|
|
810
|
+
'Das Agent-Tool ist nicht verfügbar; Fork kann nicht gestartet werden.',
|
|
811
|
+
'Failed to launch fork: {{error}}':
|
|
812
|
+
'Fork konnte nicht gestartet werden: {{error}}',
|
|
813
|
+
'User launched a background fork via /fork: {{directive}}':
|
|
814
|
+
'Benutzer hat über /fork einen Hintergrund-Fork gestartet: {{directive}}',
|
|
815
|
+
'Forked into a background agent. It inherits this conversation and runs without blocking — track it in the background tasks panel; it reports back when done.':
|
|
816
|
+
'In einen Hintergrund-Agenten verzweigt. Er übernimmt diese Unterhaltung und läuft ohne zu blockieren — verfolgen Sie ihn im Hintergrundaufgaben-Panel; er meldet sich nach Abschluss zurück.',
|
|
759
817
|
'Cannot branch while a response or tool call is in progress. Wait for it to finish or resolve the pending tool call.':
|
|
760
818
|
'Während eine Antwort oder ein Tool-Aufruf läuft, kann keine Verzweigung erstellt werden. Warten Sie, bis der Vorgang abgeschlossen ist, oder bearbeiten Sie den ausstehenden Tool-Aufruf.',
|
|
761
819
|
'No conversation to branch.': 'Keine Unterhaltung zum Verzweigen vorhanden.',
|
|
@@ -803,13 +861,14 @@ export default {
|
|
|
803
861
|
// Commands - Approval Mode
|
|
804
862
|
// ============================================================================
|
|
805
863
|
'Tool Approval Mode': 'Werkzeug-Genehmigungsmodus',
|
|
806
|
-
'{{mode}} mode': '{{mode}}-Modus',
|
|
807
864
|
'Analyze only, do not modify files or execute commands':
|
|
808
865
|
'Nur analysieren, keine Dateien ändern oder Befehle ausführen',
|
|
809
866
|
'Require approval for file edits or shell commands':
|
|
810
867
|
'Genehmigung für Dateibearbeitungen oder Shell-Befehle erforderlich',
|
|
811
868
|
'Automatically approve file edits':
|
|
812
869
|
'Dateibearbeitungen automatisch genehmigen',
|
|
870
|
+
'Use classifier to automatically approve safe tool calls':
|
|
871
|
+
'Klassifikator verwenden, um sichere Werkzeugaufrufe automatisch zu genehmigen',
|
|
813
872
|
'Automatically approve all tools': 'Alle Werkzeuge automatisch genehmigen',
|
|
814
873
|
'Workspace approval mode exists and takes priority. User-level change will have no effect.':
|
|
815
874
|
'Arbeitsbereich-Genehmigungsmodus existiert und hat Vorrang. Benutzerebene-Änderung hat keine Wirkung.',
|