Skip to Content

명령어

이 문서는 Qwen Code에서 지원하는 모든 명령어를 설명하며, 세션 관리, 인터페이스 커스터마이징, 동작 제어를 효율적으로 수행할 수 있도록 도와줍니다.

Qwen Code 명령어는 특정 접두사를 통해 실행되며 세 가지 범주로 나뉩니다:

접두사 유형기능 설명일반적인 사용 사례
슬래시 명령어 (/)Qwen Code 자체에 대한 메타 수준의 제어세션 관리, 설정 수정, 도움말 확인
At 명령어 (@)로컬 파일 내용을 대화에 빠르게 주입AI가 지정된 파일이나 디렉터리 아래의 코드를 분석하도록 허용
느낌표 명령어 (!)시스템 Shell과 직접 상호작용git status, ls 등의 시스템 명령어 실행

1. 슬래시 명령어 (/)

슬래시 명령어는 Qwen Code 세션, 인터페이스, 기본 동작을 관리하는 데 사용됩니다.

1.1 세션 및 프로젝트 관리

이 명령어들은 작업 진행 상황을 저장, 복원, 요약하는 데 도움이 됩니다.

명령어설명사용 예시
/init현재 디렉터리를 분석하고 초기 컨텍스트 파일을 생성/init
/summary대화 기록을 기반으로 프로젝트 요약을 생성/summary 또는 /summary docs/my-summary.md
/compress토큰 절약을 위해 대화 기록을 요약으로 대체/compress 또는 /summarize
/compress-fastAI 없이 빠른 압축 — 오래된 도구 출력과 사고 과정을 제거/compress-fast
/resume이전 대화 세션을 재개/resume 또는 /continue
/recap즉시 한 줄 세션 요약을 생성/recap
/restore도구 호출 실행 전 체크포인트로 프로젝트 파일을 되돌림/restore (목록) 또는 /restore <ID>
/delete이전 세션을 삭제/delete
/branch현재 대화를 새 세션으로 포크/branch
/fork전체 대화를 상속하는 백그라운드 에이전트를 생성/fork <directive>
/rewind대화를 이전 턴으로 되감기/rewind 또는 /rollback
/export세션 기록을 파일로 내보내기/export html, /export md, /export json, /export jsonl
/rename현재 세션의 이름을 변경하거나 태그를 추가/rename My Feature 또는 /tag
Note

/summarize/compress의 별칭입니다(대화 기록을 압축합니다 — 되돌릴 수 없는 작업). 되돌릴 수 없는 프로젝트 요약을 생성하려면 /summary를 사용하세요.

Note

/summary는 선택적 [path] 인수를 받아 프로젝트 루트 내의 사용자 지정 위치에 요약을 저장합니다. 인수 없이 실행하면 .qwen/PROJECT_SUMMARY.md에 저장됩니다. 사용자 지정 경로의 요약은 환영 메시지 흐름(ui.enableWelcomeBack)에서 감지되지 않으며, 이 흐름은 기본 .qwen/PROJECT_SUMMARY.md 위치만 읽습니다.

1.2 인터페이스 및 작업 공간 제어

인터페이스 외관과 작업 환경을 조정하는 명령어입니다.

명령어설명사용 예시
/clear대화 기록을 지우고 컨텍스트 창을 확보/clear, /reset, /new
/context컨텍스트 창 사용량 세부 정보를 표시/context
detail항목별 컨텍스트 사용량 세부 정보를 표시/context detail
/history기록 표시 환경 설정 및 가시성 제어/history collapse-on-resume, /history expand-on-resume, /history expand-now
/diff커밋되지 않은 변경 사항과 턴별 diff를 보여주는 대화형 diff 뷰어를 엽니다. ←/→로 현재 git diff와 개별 대화 턴을 전환하고, ↑/↓로 파일을 탐색합니다/diff
/log작업 공간의 커밋 기록 뷰어를 엽니다 (Web Shell 전용)/log
/themeQwen Code 비주얼 테마를 변경/theme
/vim입력 영역 Vim 편집 모드를 켜기/끄기/vim
/voice음성 받아쓰기 입력을 토글/voice, /voice hold, /voice tap, /voice off, /voice status
/directory다중 디렉터리 지원 작업 공간을 관리/dir add ./src,./tests, /dir show
/cd이 세션을 새 작업 디렉터리로 이동/cd ../other-project
/editor지원되는 편집기를 선택하는 대화 상자를 엽니다/editor
/statusline대화형 상태 표시줄 프리셋 대화 상자를 엽니다/statusline
/statusline <text>에이전트를 통해 명령 모드 상태 표시줄을 생성합니다/statusline show model and git branch
/terminal-setup여러 줄 입력을 위한 터미널 키 바인딩을 설정/terminal-setup

1.3 언어 설정

인터페이스 및 출력 언어를 제어하는 명령어입니다.

명령어설명사용 예시
/language언어 설정을 확인하거나 변경/language
ui [language]UI 인터페이스 언어를 설정/language ui zh-CN
output [language]LLM 출력 언어를 설정/language output Chinese
  • 사용 가능한 내장 UI 언어: zh-CN(중국어 간체), en-US(영어), ru-RU(러시아어), de-DE(독일어), ja-JP(일본어), pt-BR(포르투갈어 - 브라질), fr-FR(프랑스어), ca-ES(카탈로니아어)
  • 출력 언어 예시: Chinese, English, Japanese

1.4 도구 및 모델 관리

AI 도구와 모델을 관리하는 명령어입니다.

명령어설명사용 예시
/mcp구성된 MCP 서버 및 도구를 나열/mcp, /mcp desc, /mcp nodesc, /mcp schema
/import-configClaude 설정에서 MCP 서버를 가져옴/import-config all, /import-config claude-code, /import-config claude-desktop --scope user|project
/tools현재 사용 가능한 도구 목록을 표시/tools, /tools desc
/skillsskill 패널을 열어 skill을 탐색, 검색, 토글, 실행/skills, /<skill-name>
/learn파일, 디렉터리, URL, 비디오 또는 텍스트에서 재사용 가능한 프로젝트 skill을 생성/learn https://docs.example.com/api, /learn ./tutorial.mp4 focus on deployment
/curator비활성 프로젝트 자동 skill을 검사, 고정, 보관, 복원/curator, /curator run --dry-run, /curator pin <directory>, /curator restore <directory>
/plan계획 모드로 전환하거나 계획 모드를 종료/plan, /plan <task>, /plan exit
/approval-mode도구 승인 모드를 변경 (현재 세션만)/approval-mode, /approval-mode auto-edit
plan분석만 수행, 실행하지 않음 (보안 검토)/approval-mode plan
default편집 시 승인을 요구 (일상 사용)/approval-mode default
auto-edit편집을 자동 승인 (신뢰할 수 있는 환경)/approval-mode auto-edit
auto분류기 평가 기반 승인 (자율 실행)/approval-mode auto
yolo모든 작업을 자동 승인 (빠른 프로토타이핑)/approval-mode yolo
/model현재 세션에서 사용되는 모델을 전환/model, /model <model-id> (즉시 전환)
/model --fast프롬프트 제안에 사용할 경량 모델을 설정/model --fast qwen3-coder-flash
/model --voice음성 트랜스크립션에 사용할 모델을 설정/model --voice <model-id>
/model --vision텍스트 전용 메인 모델에 이미지를 전달하기 위한 vision bridge 모델을 설정/model --vision <model-id>
/model --compaction대화 압축에 사용할 모델을 설정/model --compaction <model-id>, /model --compaction clear
/model --image내장 이미지 생성 도구에 사용할 이미지 전용 모델을 설정/model --image <model-id>
/effort사고(thinking) 가능 모델의 추론 강도를 설정/effort (피커 열기), /effort high (low/medium/high/xhigh/max; 제공자별로 매핑 및 제한됨)
/extensions확장을 관리/extensions list, /extensions manage
list설치된 확장을 나열/extensions list
manage설치된 확장을 관리 (대화형)/extensions manage
explore브라우저에서 확장 페이지를 엽니다/extensions explore <Gemini|ClaudeCode>
installgit 저장소 또는 경로에서 확장을 설치/extensions install <repo-or-path>
/memoryMemory Manager 대화 상자를 엽니다/memory
/remember영구적인 memory를 저장/remember Prefer terse responses
/forget자동 memory에서 일치하는 항목을 제거/forget <query>
/dream자동 memory 정리를 수동으로 실행/dream
/hooksQwen Code hook을 관리/hooks, /hooks list
/reload-plugins디스크에서 확장 변경 사항(명령어, skill, 에이전트, hook, MCP/LSP 서버)을 다시 로드/reload-plugins
/permissions권한 규칙을 관리/permissions
/agents서브에이전트를 관리/agents manage, /agents create
/arenaArena 세션을 관리/arena start, /arena stop, /arena status, /arena select (choose 별칭)
/goal목표를 설정 — 조건이 충족될 때까지 작업을 계속/goal <condition>, /goal clear
/tasks백그라운드 작업을 나열/tasks
/workflows워크플로우 실행을 검사/workflows, /workflows <runId>
/lspLSP 서버 상태를 표시/lsp
/trust폴더 신뢰 설정을 관리/trust
Warning

신뢰할 수 있는 출처의 확장만 설치(/extensions install)하세요. 확장은 Qwen Code 자체와 동일한 권한으로 실행되는 MCP 서버, skill, 명령어를 포함할 수 있습니다 — 파일, API 키, 대화 데이터에 접근할 수 있습니다. /extensions install은 확인 프롬프트를 표시하지 않습니다.

Warning

auto-edit, auto, yolo 승인 모드는 도구 실행에 대한 승인 프롬프트를 건너뜁니다. yolo 모드에서는 shell 명령어, 파일 쓰기, 네트워크 요청을 포함한 모든 작업이 확인 없이 실행됩니다. 신뢰할 수 있는, 샌드박스 또는 일회용 환경에서만 이 모드를 사용하세요.

Note

/workflows, /lsp, /trust는 각 기능이 활성화되었을 때만 등록됩니다 — 각각 QWEN_CODE_ENABLE_WORKFLOWS=1 환경 변수, --experimental-lsp CLI 플래그, security.folderTrust.enabled 설정을 통해 활성화됩니다. 비활성화되면 표시되지 않으며 알 수 없는 명령어로 보고됩니다. 마찬가지로, /dream/forget은 관리되는 자동 memory가 사용 가능한 경우에만 등록됩니다; 그렇지 않으면 표시되지 않습니다.

1.5 내장 Skill

이 명령어들은 특수한 워크플로우를 제공하는 번들 skill을 호출합니다.

명령어설명사용 예시
/review다중 에이전트 코드 리뷰 (높은 강도에서 12개 병렬 에이전트)/review, /review 123, /review 123 --comment, /review --effort low
/loop반복 일정에 따라 프롬프트를 실행/loop 5m check the build
/simplify최근 변경 사항을 검토하고 안전한 정리 편집을 직접 적용/simplify, /simplify focus on duplication
/qc-helperQwen Code 사용 및 구성에 대한 질문에 답변/qc-helper how do I configure MCP?

자세한 /review 문서는 코드 리뷰를 참조하세요.

1.6 사이드 질문 (/btw)

/btw 명령어를 사용하면 기본 대화 흐름을 중단하거나 영향을 주지 않고 빠른 사이드 질문을 할 수 있습니다.

명령어설명
/btw <your question>빠른 사이드 질문을 합니다
?btw <your question>사이드 질문의 대체 구문

작동 방식:

  • 사이드 질문은 최근 대화 컨텍스트(최대 20개 메시지까지)와 함께 별도의 API 호출로 전송됩니다
  • 응답은 Composer 위에 표시됩니다 — 대기 중에도 계속 입력할 수 있습니다
  • 기본 대화가 차단되지 않습니다 — 독립적으로 계속 진행됩니다
  • 사이드 질문 응답은 기본 대화 기록에 포함되지 않습니다
  • 답변은 전체 Markdown 지원과 함께 렌더링됩니다 (코드 블록, 목록, 표 등)

키보드 단축키 (대화형 모드):

단축키동작
Escape취소 (로딩 중) 또는 닫기 (완료 후)
Space 또는 Enter답변을 닫기 (입력이 비어 있을 때)
Ctrl+C 또는 Ctrl+D진행 중인 사이드 질문 취소

예시:

(기본 대화가 코드 리팩터링에 관한 동안) > /btw What's the difference between let and var in JavaScript? ╭──────────────────────────────────────────╮ │ /btw What's the difference between let │ │ and var in JavaScript? │ │ │ │ + Answering... │ │ Press Escape, Ctrl+C, or Ctrl+D to cancel│ ╰──────────────────────────────────────────╯ > (Composer는 활성 상태 — 계속 입력 가능) (답변이 도착한 후) ╭──────────────────────────────────────────╮ │ /btw What's the difference between let │ │ and var in JavaScript? │ │ │ │ `let` is block-scoped, while `var` is │ │ function-scoped. `let` was introduced │ │ in ES6 and doesn't hoist the same way. │ │ │ │ Press Space, Enter, or Escape to dismiss │ ╰──────────────────────────────────────────╯ > (Composer 여전히 활성 상태)

지원되는 실행 모드:

모드동작
InteractiveMarkdown 렌더링과 함께 Composer 위에 표시
Non-interactive텍스트 결과 반환: btw> question\nanswer
ACP (Agent Protocol)stream_messages 비동기 생성기 반환
Tip

기본 작업에서 벗어나지 않고 빠른 답변이 필요할 때 /btw를 사용하세요. 개념을 명확히 하거나, 사실을 확인하거나, 기본 워크플로우에 집중하면서 빠른 설명을 얻는 데 특히 유용합니다.

1.7 세션 요약 (/recap)

/recap 명령어는 현재 세션의 짧은 “이전 작업 위치” 요약을 생성하여, 긴 대화 기록을 스크롤하지 않고도 이전 대화를 재개할 수 있게 해줍니다.

명령어설명
/recap한 줄 세션 요약을 생성하고 표시

작동 방식:

  • 구성된 빠른 모델(fastModel 설정)이 사용 가능할 때 이를 사용하고, 그렇지 않으면 기본 세션 모델로 대체됩니다. 요약에는 작고 저렴한 모델로 충분합니다.
  • 최근 대화(최대 30개 메시지, 텍스트만 — 도구 호출과 도구 응답은 필터링됨)가 엄격한 시스템 프롬프트와 함께 모델로 전송됩니다.
  • 요약은 실제 어시스턴트 응답과 구분되도록 어두운 색상과 접두사로 렌더링됩니다.
  • 모델 턴이 진행 중이거나 다른 명령어가 처리 중이면 인라인 오류로 거부됩니다. 사용 가능한 대화가 없거나 기본 생성이 실패하면, /recap은 요약 대신 짧은 정보 메시지를 표시합니다 — 수동 명령어는 항상 무언가로 응답합니다.

이석 중 복귀 시 자동 트리거:

터미널이 5분 이상 블러 상태였다가 다시 포커스를 받으면, 요약이 자동으로 생성되고 표시됩니다 (모델 응답이 진행 중이 아닐 때만; 그렇지 않으면 현재 턴이 완료될 때까지 기다린 후 실행됩니다). 수동 명령어와 달리, 자동 트리거는 실패 시 완전히 조용합니다: 생성에 오류가 있거나 요약할 내용이 없으면 기록에 메시지가 추가되지 않습니다. general.showSessionRecap 설정으로 제어됩니다 (기본값: false); 수동 /recap 명령어는 이 설정과 관계없이 항상 작동합니다.

예시:

> /recap ❯ Refactoring loopDetectionService.ts to address long-session OOM caused by unbounded streamContentHistory and contentStats. The next step is to implement option B (LRU sliding window with FNV-1a) pending confirmation.
Tip

/model --fast <model>(예: qwen3-coder-flash)을 통해 빠른 모델을 구성하면 /recap을 빠르고 저렴하게 만들 수 있습니다. general.showSessionRecaptrue로 설정하면 자동 트리거가 활성화됩니다; 수동 /recap 명령어는 이 설정과 관계없이 항상 작동합니다.

1.8 Diff 뷰어 (/diff)

/diff 명령어는 커밋되지 않은 변경 사항과 턴별 diff를 보여주는 대화형 diff 뷰어를 엽니다. ←/→로 현재 git diff와 개별 대화 턴을 전환하고, ↑/↓로 파일을 탐색하고, Enter로 인라인 diff를 확인합니다.

작동 방식:

대화형 모드에서, /diff는 상단에 소스 피커가 있는 대화 상자를 엽니다:

  • Current — 작업 트리와 HEAD 비교 (git diff HEAD). 스테이징, 언스테이징, 추적되지 않은 파일을 포함한 모든 커밋되지 않은 변경 사항을 표시합니다.
  • T1, T2, T3, … — 턴별 diff, 파일을 수정한 각 모델 턴마다 하나의 탭. 가장 최근 턴이 먼저 표시됩니다. 각 탭에는 컨텍스트를 위한 원본 프롬프트의 미리보기가 표시됩니다.

파일 목록은 파일별 통계(추가/삭제된 줄 수)와 특수 상태에 대한 태그(new, deleted, untracked, binary, truncated, oversized)를 표시합니다. 파일에서 Enter를 누르면 구문 강조된 hunk와 함께 인라인 diff를 볼 수 있습니다.

턴별 diff는 파일 체크포인트가 활성화되어 있어야 합니다 (대화형 모드에서 기본적으로 켜져 있음). 파일 체크포인트가 꺼져 있으면 “Current” 소스만 사용 가능합니다.

키보드 단축키:

동작
/ 소스 간 전환 (Current / T1 / T2…)
/ 파일 목록 탐색
j / k파일 목록 탐색 (vim 스타일)
Enter선택한 파일의 인라인 diff 보기
/ Esc인라인 diff 보기에서 파일 목록으로 복귀
Esc대화 상자 닫기

예시:

┌ /diff · Turn 3 "refactor the auth middleware" ──── 3 files +45 -12 ┐ │ │ │ ◀ Current · T3 · T2 · T1 ▶ │ │ │ │ › src/utils/parser.ts +30 -8 │ │ src/utils/parser.test.ts +12 -2 │ │ README.md +3 -2 │ │ │ │ ←/→ source · ↑/↓ file · Enter view · Esc close │ └─────────────────────────────────────────────────────────────────────┘

비대화형 모드:

헤드리스 모드(--prompt) 또는 비대화형 컨텍스트에서, /diff는 작업 트리와 HEAD 비교의 일반 텍스트 요약을 출력합니다. 턴별 탐색은 사용할 수 없습니다.

3 files changed, +45 / -12 +30 -8 src/utils/parser.ts +12 -2 src/utils/parser.test.ts +3 -2 README.md

Web Shell: Web Shell UI(qwen serve)에서, /diff는 그래픽 diff 대화 상자를 엽니다. 상단의 탭 바를 통해 Changes 뷰와 History 뷰(/log) 간에 전환할 수 있습니다.

History 뷰어 (/log) — Web Shell 전용

/log 명령어는 현재 작업 공간의 커밋 기록 브라우저를 엽니다. Web Shell UI에서만 사용할 수 있으며, CLI/TUI에는 이 명령어가 없습니다.

작동 방식:

/log는 커밋을 역순(최신 우선)으로 나열하는 대화 상자를 엽니다. 각 행에는 다음이 표시됩니다:

  • 짧은 SHA (모노스페이스, 전체 SHA를 위한 복사 버튼 포함)
  • 커밋 제목 (한 줄)
  • 작성자 이름과 상대적 시간 (예: “2h ago”)
  • 브랜치/태그 ref 라벨 (있는 경우)
  • 병합 커밋에 대한 병합 아이콘 (⎇)

커밋 행을 클릭하면 상세 정보가 필요에 따라 확장됩니다:

  • 전체 커밋 메시지 본문
  • 파일 변경 통계 (변경된 파일, 추가/삭제된 줄, 파일별 세부 정보)

하단의 Load more를 사용하여 다음 페이지의 커밋을 가져옵니다 (페이지당 50개).

예시:

┌─ History ──────────────────────────── 50 commits ─ ✕ ┐ │ │ │ a1b2c3d feat(cli): add --json flag 2h ago │ │ wenshao │ │ │ │ e4f5g6h fix(core): handle null config 5h ago │ │ dev · main v1.2.0 │ │ │ │ ▼ 789abcd refactor: simplify parser 1d ago │ │ ┌─────────────────────────────────────────────┐ │ │ │ Broke the monolithic parse() into smaller │ │ │ │ functions for readability. │ │ │ │ │ │ │ │ 3 files · +45 −12 │ │ │ │ +30 −8 src/parser.ts │ │ │ │ +10 −2 src/utils.ts │ │ │ │ +5 −2 test/parser.test.ts │ │ │ └─────────────────────────────────────────────┘ │ │ │ │ [ Load more ] │ └───────────────────────────────────────────────────────┘
Note

/log는 git 저장소 작업 공간이 필요합니다. 작업 공간이 git 저장소가 아니거나 커밋이 없으면, 대화 상자에 플레이스홀더 메시지가 표시됩니다.

1.9 정보, 설정 및 도움말

정보를 얻고 시스템 설정을 수행하는 명령어입니다.

명령어설명사용 예시
/help사용 가능한 명령어에 대한 도움말 정보를 표시/help 또는 /?
/status버전 정보를 표시/status 또는 /about
/status paths현재 세션 파일 및 로그 경로를 표시/status paths
/stats대화형 사용 통계 대시보드를 엽니다 (Session, Activity, Efficiency 탭)/stats 또는 /usage
/stats model모델별 토큰 사용량과 예상 비용을 표시/stats model
/stats tools도구별 호출 횟수를 표시/stats tools
/stats skills현재 라이브 세션의 skill별 호출 횟수를 표시 (라이브만; 교차 세션 일일/월간 활동 제외)/stats skills
/stats daily일일 토큰 사용량 통계를 표시/stats daily (별칭 day), /stats day [YYYY-MM-DD]
/stats monthly월간 토큰 사용량 통계를 표시/stats monthly (별칭 month), /stats month [YYYY-MM]
/stats export사용 통계를 CSV 또는 JSON으로 내보내기/stats export <daily|monthly> [date|month] [--format csv|json] [--output path]
/settings설정 편집기를 엽니다/settings
/config점 경로(dot-path) 키로 모든 설정을 가져오거나 설정합니다 (사용자 설정에 기록)/config (전체 목록), /config <key>, /config <key>=<value>
/auth인증 방식을 변경/auth, /connect, /login
/doctor설치 및 환경 진단을 실행/doctor, /doctor memory
memory현재 프로세스 메모리 진단을 표시/doctor memory [--json] [--sample] [--snapshot]
cpu-profileChrome DevTools 분석을 위한 CPU 프로파일을 기록/doctor cpu-profile [--duration <seconds>]
rollback독립 실행형 CLI 바이너리를 이전 버전으로 롤백합니다 (독립 실행형 설치 전용; 대화 기록은 /rewind 사용)/doctor rollback
/docs브라우저에서 전체 Qwen Code 문서를 엽니다/docs
/ideIDE 통합을 관리/ide status, /ide install, /ide enable, /ide disable
/insight대화 기록에서 프로그래밍 인사이트를 생성/insight
/setup-githubGitHub Actions를 설정/setup-github
/bugQwen Code에 대한 이슈를 제출/bug Button click unresponsive
/copy클립보드에 복사: 응답 (마지막 N번째), 코드 (언어별), LaTeX, 또는 Mermaid/copy, /copy 2, /copy python, /copy latex, /copy mermaid
/quitQwen Code를 즉시 종료/quit 또는 /exit
Warning

/doctor memory --snapshot은 현재 세션의 프롬프트, 파일 내용, API 키, 도구 결과를 포함할 수 있는 V8 힙 스냅샷을 작성합니다. 공유하기 전에 파일을 검토하세요.

Note

/config는 점 경로 키(예: general.vimMode)로 개별 설정을 읽고 쓰며, 대화형 /settings 편집기를 보완합니다. 인수 없이 /config를 실행하면(또는 --help) 모든 설정 가능한 키가 유형과 현재 값과 함께 나열됩니다. /config <key>는 현재 값을 출력합니다 — 부울 키의 경우 값을 토글합니다. /config <key>=<value>는 값을 설정합니다. 변경 사항은 사용자 설정(~/.qwen/settings.json)에 기록됩니다. boolean, string, number, enum 설정만 이 방식으로 변경할 수 있습니다 — arrayobject 설정은 settings.json에서 직접 편집해야 합니다. 민감한 값(API 키, 토큰, base URL)은 출력에서 마스킹되며, tools.approvalModeyolo로 설정하는 것은 차단됩니다.

1.10 일반적인 단축키

단축키기능참고
Ctrl/cmd+L화면 지우기보이는 화면만 지웁니다 (/clear처럼 세션을 초기화하지 않음)
Ctrl/cmd+T도구 설명 토글MCP 도구 관리
Ctrl/cmd+C×2종료 확인안전한 종료 메커니즘
Ctrl/cmd+Z입력 실행 취소텍스트 편집
Ctrl/cmd+Shift+Z입력 다시 실행텍스트 편집

1.11 인증 명령어

Qwen Code 세션 내에서 /auth를 사용하여 인증을 구성하세요. /doctor를 사용하여 현재 인증 및 환경 상태를 확인하세요.

명령어설명
/auth대화형으로 인증을 구성합니다 (별칭: /connect, /login)
/doctor인증 및 환경 검사를 표시
Note

독립 실행형 qwen auth CLI 명령어는 제거되었습니다. qwen auth status와 같은 레거시 호출은 마이그레이션 안내와 함께 제거 공지를 출력합니다. 자세한 내용은 인증 페이지를 참조하세요.

2. @ 명령어 (파일 가져오기)

@ 명령어는 로컬 파일이나 디렉터리 내용을 대화에 빠르게 추가하는 데 사용됩니다.

명령어 형식설명예시
@<file path>지정된 파일의 내용을 주입@src/main.py Please explain this code
@<directory path>디렉터리 내 모든 텍스트 파일을 재귀적으로 읽음@docs/ Summarize content of this document
독립 @@ 기호 자체에 대해 논의할 때 사용@ What is this symbol used for in programming?

참고: 경로에 포함된 공백은 백슬래시로 이스케이프해야 합니다 (예: @My\ Documents/file.txt)

3. 느낌표 명령어 (!) - Shell 명령어 실행

느낌표 명령어를 사용하면 Qwen Code 내에서 시스템 명령어를 직접 실행할 수 있습니다.

명령어 형식설명예시
!<shell command>하위 Shell에서 명령어를 실행!ls -la, !git status
독립 !Shell 모드로 전환, 모든 입력이 Shell 명령어로 직접 실행됨!(진입) → 명령어 입력 → !(종료)

환경 변수: !를 통해 실행된 명령어는 QWEN_CODE=1 환경 변수를 설정합니다.

4. 사용자 정의 명령어

자주 사용하는 프롬프트를 단축 명령어로 저장하여 작업 효율을 높이고 일관성을 유지하세요.

Note

사용자 정의 명령어는 이제 선택적 YAML 프론트매터와 함께 Markdown 형식을 사용합니다. TOML 형식은 더 이상 사용되지 않지만 하위 호환성을 위해 여전히 지원됩니다. TOML 파일이 감지되면 자동 마이그레이션 프롬프트가 표시됩니다.

빠른 개요

기능설명장점우선순위해당 시나리오
네임스페이스하위 디렉터리가 콜론 이름의 명령어를 생성더 나은 명령어 구성
전역 명령어~/.qwen/commands/모든 프로젝트에서 사용 가능낮음개인적으로 자주 사용하는 명령어, 교차 프로젝트 사용
프로젝트 명령어<project root directory>/.qwen/commands/프로젝트별, 버전 관리 가능높음팀 공유, 프로젝트별 명령어

우선순위 규칙: 프로젝트 명령어 > 사용자 명령어 (이름이 같을 때 프로젝트 명령어가 사용됨)

명령어 명명 규칙

파일 경로 → 명령어 이름 매핑 표

파일 위치생성되는 명령어예시 호출
~/.qwen/commands/test.md/test/test Parameter
<project>/.qwen/commands/git/commit.md/git:commit/git:commit Message

명명 규칙: 경로 구분자(/ 또는 \)가 콜론(:)으로 변환됩니다

Markdown 파일 형식 사양 (권장)

사용자 정의 명령어는 선택적 YAML 프론트매터가 있는 Markdown 파일을 사용합니다:

--- description: 선택적 설명 (/help에 표시됨) --- 여기에 프롬프트 내용을 작성하세요. 매개변수 주입에 {{args}}를 사용하세요.
필드필수 여부설명예시
description선택명령어 설명 (/help에 표시됨)description: Code analysis tool
프롬프트 본문필수모델로 전송되는 프롬프트 내용프론트매터 뒤의 모든 Markdown 내용

TOML 파일 형식 (더 이상 사용되지 않음)

Warning

더 이상 사용되지 않음: TOML 형식은 여전히 지원되지만 향후 버전에서 제거될 예정입니다. Markdown 형식으로 마이그레이션하세요.

필드필수 여부설명예시
prompt필수모델로 전송되는 프롬프트 내용prompt = "Please analyze code: {{args}}"
description선택명령어 설명 (/help에 표시됨)description = "Code analysis tool"

매개변수 처리 메커니즘

처리 방법구문적용 시나리오보안 기능
컨텍스트 인식 주입{{args}}정확한 매개변수 제어가 필요한 경우자동 Shell 이스케이프
기본 매개변수 처리특별한 표시 없음간단한 명령어, 매개변수 추가그대로 추가
Shell 명령어 주입!{command}동적 내용이 필요한 경우실행 전 확인 필요

1. 컨텍스트 인식 주입 ({{args}})

시나리오TOML 설정호출 방법실제 효과
원시 주입prompt = "Fix: {{args}}"/fix "Button issue"Fix: "Button issue"
Shell 명령어 내prompt = "Search: !{grep {{args}} .}"/search "hello"grep "hello" . 실행

2. 기본 매개변수 처리

입력 상황처리 방법예시
매개변수 있음프롬프트 끝에 추가 (두 줄 바꿈으로 구분)/cmd parameter → 원본 프롬프트 + 매개변수
매개변수 없음프롬프트를 그대로 전송/cmd → 원본 프롬프트

🚀 동적 내용 주입

주입 유형구문처리 순서목적
파일 내용@{file path}먼저 처리정적 참조 파일 주입
Shell 명령어!{command}중간에 처리동적 실행 결과 주입
매개변수 교체{{args}}마지막에 처리사용자 매개변수 주입

3. Shell 명령어 실행 (!{...})

작업사용자 상호작용
1. 명령어와 매개변수 파싱-
2. 자동 Shell 이스케이프-
3. 확인 대화 상자 표시✅ 사용자 확인
4. 명령어 실행-
5. 출력을 프롬프트에 주입-

예시: Git 커밋 메시지 생성

--- description: Generate Commit message based on staged changes --- Please generate a Commit message based on the following diff: ```diff !{git diff --staged} ```

4. 파일 내용 주입 (@{...})

파일 유형지원 상태처리 방법
텍스트 파일✅ 완전 지원내용을 직접 주입
이미지/PDF✅ 멀티모달 지원인코딩하여 주입
바이너리 파일⚠️ 제한적 지원건너뛰기거나 잘릴 수 있음
디렉터리✅ 재귀적 주입.gitignore 규칙 따름

예시: 코드 리뷰 명령어

--- description: Code review based on best practices --- Review {{args}}, reference standards: @{docs/code-standards.md}

실용적인 생성 예시

”순수 함수 리팩터링” 명령어 생성 단계 표

작업명령어/코드
1. 디렉터리 구조 생성mkdir -p ~/.qwen/commands/refactor
2. 명령어 파일 생성touch ~/.qwen/commands/refactor/pure.md
3. 명령어 내용 편집아래 전체 코드를 참조
4. 명령어 테스트@file.js/refactor:pure
--- description: Refactor code to pure function --- Please analyze code in current context, refactor to pure function. Requirements: 1. Provide refactored code 2. Explain key changes and pure function characteristic implementation 3. Maintain function unchanged

사용자 정의 명령어 모범 사례 요약

명령어 설계 권장 사항 표

실천 항목권장 접근 방식피해야 할 사항
명령어 명명네임스페이스를 사용하여 구성지나치게 일반적인 이름 사용 피하기
매개변수 처리{{args}}를 명확하게 사용기본 추가에 의존 (혼동하기 쉬움)
오류 처리Shell 오류 출력 활용실행 실패 무시
파일 구성디렉터리 내에서 기능별로 구성모든 명령어를 루트 디렉터리에 배치
설명 필드항상 명확한 설명을 제공자동 생성 설명에 의존

보안 기능 알림 표

보안 메커니즘보호 효과사용자 작업
Shell 이스케이프명령어 주입 방지자동 처리
실행 확인실수 실행 방지대화 상자 확인
오류 보고문제 진단 지원오류 정보 확인

5. CLI 서브명령어

이 명령어들은 대화형 세션을 시작하기 전에 셸에서 qwen <subcommand>로 실행됩니다.

세션 관리

명령어설명사용 예시
qwen sessions list최근 대화 세션을 나열qwen sessions list, qwen sessions list --json --limit 50

qwen sessions list

메타데이터와 함께 최근 Qwen Code 세션을 나열합니다.

플래그:

플래그유형기본값설명
--jsonbooleanfalseJSON Lines로 출력 (한 줄에 하나의 JSON 객체)
--limitnumber20표시할 최대 세션 수

사람이 읽을 수 있는 출력 (기본값):

다음 열이 있는 표: SESSION ID, STARTED (UTC 타임스탬프), TITLE, BRANCH, PROMPT.

JSON 출력 (--json):

stdout에 JSON Lines를 출력합니다. 각 줄은 다음 필드를 가진 JSON 객체입니다:

sessionId, startTime, mtime, prompt, gitBranch, customTitle, titleSource, filePath, cwd

“더 많은 세션이 있음” 힌트는 stderr를 통해 출력되므로 jq로 파이프해도 안전합니다.

예시:

# 최근 20개 세션 표시 (기본값) qwen sessions list # 최근 50개 세션 표시 qwen sessions list --limit 50 # 스크립팅을 위해 JSON으로 출력 qwen sessions list --json | jq .
Last updated on