Skip to main content

Cyberstrike is now open source! AI-powered penetration testing for security professionals. Star on GitHub

키바인딩 구성

워크플로에 맞게 키보드 단축키를 커스터마이즈하세요. 키바인딩은 설정 파일의 keybinds 객체 아래에 정의됩니다.

📸 SCREENSHOT: keybindings-config.png

키바인딩 구성 옵션

구성 위치

키바인딩은 전역 또는 프로젝트 설정 파일에서 구성합니다:

~/.config/cyberstrike/cyberstrike.json
{
"keybinds": {
"leader": "ctrl+x",
"session_new": "<leader>n"
}
}

이 페이지에 나열된 키만 유효합니다 — keybinds 객체는 엄격하게 검증되므로 알 수 없는 키는 거부됩니다.

리더 키

리더 키는 많은 단축키의 접두사입니다 (기본값 ctrl+x):

{
"keybinds": {
"leader": "ctrl+a"
}
}

키 구문

수정자

수정자구문
Controlctrl
Alt/Optionalt
Shiftshift
Super/Commandsuper

특수 키

키구문
Enterreturn
Escapeescape
Tabtab
Backspacebackspace
Deletedelete
방향키up down left right
Page Up / Downpageup pagedown
Home / Endhome end
기능 키f2, shift+f2

조합, 대안 및 리더

ctrl+alt+d # Ctrl + Alt + D
<leader>n # 리더 키 다음 N
pageup,ctrl+alt+b # 하나의 동작에 대한 두 가지 대안 바인딩 (쉼표 구분)

쉼표는 같은 동작에 대한 대안 바인딩을 구분합니다. 동작을 비활성화하려면 값을 none으로 설정합니다.

사용 가능한 동작

아래 모든 동작은 기본 바인딩을 표시합니다. keybinds 객체에서 원하는 부분만 재정의하세요.

세션

동작기본값설명
session_new<leader>n새 세션 만들기
session_list<leader>l모든 세션 나열
session_compact<leader>c세션 압축
session_timeline<leader>g세션 타임라인 표시
session_renamectrl+r세션 이름 변경
session_deletectrl+d세션 삭제
session_export<leader>x세션을 편집기로 내보내기
session_interruptescape현재 세션 중단
session_forknone메시지에서 세션 포크
session_sharenone현재 세션 공유
session_child_cycle<leader>right다음 하위 세션
session_parent<leader>up상위 세션으로 이동

메시지 및 탐색

동작기본값설명
messages_page_uppageup,ctrl+alt+b한 페이지 위로 스크롤
messages_page_downpagedown,ctrl+alt+f한 페이지 아래로 스크롤
messages_half_page_upctrl+alt+u반 페이지 위로 스크롤
messages_half_page_downctrl+alt+d반 페이지 아래로 스크롤
messages_firstctrl+g,home첫 번째 메시지로 이동
messages_lastctrl+alt+g,end마지막 메시지로 이동
messages_copy<leader>y메시지 복사
messages_undo<leader>u메시지 실행 취소
messages_redo<leader>r메시지 다시 실행
messages_toggle_conceal<leader>h코드 블록 숨김 토글

목록 및 대화상자

동작기본값설명
model_list<leader>m사용 가능한 모델 나열
agent_list<leader>a에이전트 나열
agent_cycletab다음 에이전트
agent_cycle_reverseshift+tab이전 에이전트
theme_list<leader>t사용 가능한 테마 나열
command_listctrl+p사용 가능한 명령어 나열

인터페이스

동작기본값설명
sidebar_toggle<leader>b사이드바 토글
status_view<leader>s상태 보기
editor_open<leader>e외부 편집기 열기
tips_toggle<leader>h홈 화면 팁 토글

애플리케이션 및 입력

동작기본값설명
app_exitctrl+c,ctrl+d,<leader>q애플리케이션 종료
terminal_suspendctrl+z터미널 일시 중지
input_submitreturn입력 전송
input_newlineshift+return,ctrl+return,alt+return,ctrl+j줄 바꿈 삽입
input_clearctrl+c입력 필드 지우기
input_pastectrl+v클립보드에서 붙여넣기

Info

입력 필드에는 커서 이동 및 편집 바인드(input_move_*, input_word_*, input_delete_* 등)의 대규모 세트가 있습니다. 동일한 keybinds 네이밍을 따르며 같은 방식으로 재정의할 수 있습니다.

전체 구성 예시

~/.config/cyberstrike/cyberstrike.json
{
"keybinds": {
"leader": "ctrl+x",
"session_new": "<leader>n",
"session_list": "<leader>l",
"session_compact": "<leader>c",
"session_timeline": "<leader>g",
"session_rename": "ctrl+r",
"session_export": "<leader>x",
"model_list": "<leader>m",
"agent_list": "<leader>a",
"theme_list": "<leader>t",
"command_list": "ctrl+p",
"sidebar_toggle": "<leader>b",
"status_view": "<leader>s",
"editor_open": "<leader>e",
"messages_half_page_up": "ctrl+alt+u",
"messages_half_page_down": "ctrl+alt+d",
"messages_undo": "<leader>u",
"app_exit": "ctrl+c,ctrl+d,<leader>q"
}
}

여러 바인딩

쉼표로 하나의 동작에 여러 단축키를 할당합니다:

{
"keybinds": {
"app_exit": "ctrl+c,ctrl+d,<leader>q",
"model_list": "<leader>m,ctrl+shift+m"
}
}

쉼표는 대안 바인딩을 구분합니다 — 코드 시퀀스가 아닙니다.

키바인딩 초기화

리셋 명령어는 없습니다. 기본값을 복원하려면 keybinds 객체에서 해당 키를 제거하세요 (또는 전체 객체를 삭제하여 모든 기본값을 복원).

문제 해결

  1. 터미널 에뮬레이터와의 충돌을 확인하세요
  2. 설정이 유효한 JSON이고 키 이름이 이 페이지와 정확히 일치하는지 확인하세요 (알 수 없는 키는 검증에 실패)
  3. TUI에서 command_list (ctrl+p)로 등록된 명령어를 탐색하세요

Tip

Cyberstrike에서 /help를 사용하면 활성 키바인딩의 빠른 참조를 볼 수 있습니다.

관련 문서