명령 팔레트
명령 팔레트는 한 줄짜리 명령을 입력하는 팝업입니다. 마우스로 여러 번 눌러야 하는 일을 한 줄로 처리할 수 있고, 서버에 등록된 디버그 액션도 여기서 실행합니다. Ctrl+K로 열고 닫을 수 있으며, Tools > Command palette로도 열 수 있습니다. 텍스트 상자에 입력하는 중에도 Ctrl+K는 동작합니다.

모든 명령과 결과는 텍스트입니다. 명령을 실행하면 입력 아래의 결과 칸에 #3 view server → ok처럼 번호와 결과가 남습니다. 잘못된 명령은 입력을 지우지 않고 빨간 안내를 표시하므로 고쳐서 다시 실행할 수 있습니다. 마지막 결과는 팔레트를 닫았다 다시 열어도 남아 있습니다.
| 키 | 동작 |
|---|---|
| Enter | 실행 |
| Tab | 후보를 입력에 채움 |
| 위 / 아래 | 후보 선택. 입력이 비어 있거나 기록을 넘기는 중이면 위 키로 이전 명령을 불러옴 |
| Esc | 닫기 |
| 팔레트 바깥 클릭 | 닫기 |
후보를 눌러도 입력에 채워집니다. 후보가 여덟 줄을 넘으면 목록이 스크롤됩니다. 방향키로 후보를 선택한 뒤 Enter를 누르면 그 후보가 채워지고, 후보로 명령이 완성되면 바로 실행됩니다. 창을 여는 명령(open, report, copy 등)이 성공하면 팔레트가 닫힙니다.
명령 목록
섹션 제목: “명령 목록”help를 입력하면 지금 쓸 수 있는 명령이 표시되고, help <명령>을 입력하면 그 명령의 사용법과 예시가 표시됩니다. 능력이 부족한 명령은 목록에 나타나지 않으며, 입력해도 거절됩니다(권한과 레벨). 명령 이름은 대소문자를 구분하지 않습니다.
Windows
섹션 제목: “Windows”| 명령 | 하는 일 |
|---|---|
open <window> |
창을 열어 앞으로 가져옵니다. main, output, props, inspect, interpreter, settings를 쓸 수 있습니다. 예: open output |
close <window> |
창을 닫습니다. 위 목록에 channel(에이전트용 패널)이 추가됩니다 |
output은 Logs, inspect는 Server, interpreter는 Execute 능력이 필요합니다.
Explorer
섹션 제목: “Explorer”| 명령 | 하는 일 |
|---|---|
view client / view server |
Explorer를 클라이언트 트리나 서버 트리로 전환합니다. server는 Server 능력이 필요합니다. 예: view server |
select <path> |
지금 보기에서 해당 인스턴스를 선택하고 스크롤합니다(조상을 펼칩니다). 예: select Workspace.DevplorerFixtures.Near |
expand <path> / collapse <path> |
펼치거나 접습니다 |
reveal <path> |
선택을 바꾸지 않고 그 위치로 스크롤합니다 |
filter <글> |
Explorer 필터를 적용합니다. filter clear는 필터를 비웁니다. 예: filter Door |
bookmark [path] (별칭 mark) |
북마크를 만듭니다. 경로를 생략하면 현재 선택을 사용합니다 |
bookmarks (별칭 marks) |
지금 보기의 북마크를 번호와 함께 나열합니다 |
goto <번호 또는 경로> |
해당 북마크로 이동합니다. 예: goto 1 |
Output
섹션 제목: “Output”모두 Logs 능력이 필요합니다.
| 명령 | 하는 일 |
|---|---|
logs client / logs server |
Output 창을 해당 쪽으로 엽니다. 옵션으로 filter:, kind:, scope:를 함께 쓸 수 있습니다. 예: logs server kind:error, logs client filter:"timed out" scope:desc |
logfilter <글> |
열린 쪽의 텍스트 필터를 정합니다. logfilter clear는 필터를 비웁니다. 필터 문법은 Output과 같습니다. 예: logfilter -Roblox error |
logkind <종류> |
표시할 종류를 정합니다. all 또는 output,info,warning,error를 쉼표로 이어 씁니다. 예: logkind error,warning |
logscope off / desc / only |
Explorer 선택으로 로그를 필터링합니다. desc는 선택과 자손, only는 선택만 포함합니다 |
marker <글> |
서버 Output에 시각이 포함된 표시 줄([Devplorer:Mark], 100자까지)을 남깁니다. 재현 시점을 로그에 남길 때 유용합니다. 예: marker "bug happened here" |
Properties, Inspect
섹션 제목: “Properties, Inspect”| 명령 | 하는 일 |
|---|---|
props |
현재 선택의 Properties를 열고 내용을 결과에 표시합니다 |
compare on / compare off |
서버 Properties의 서버·클라이언트 값 비교를 켜고 끕니다(Server + ServerValues) |
stats |
Inspect를 Server 탭으로 열고 서버 수치를 결과에 표시합니다(Server) |
census [path] |
서버 인스턴스를 클래스별로 집계해 상위 클래스를 결과에 표시합니다. 경로를 지정하면 그 아래만 집계합니다. 예: census Workspace |
watch <path> <속성> |
서버 인스턴스의 속성이나 Attribute:<이름>을 감시합니다(Server + ServerValues). 예: watch Workspace.Door Transparency |
같은 작업을 Inspect 화면에서도 할 수 있습니다.
| 명령 | 하는 일 |
|---|---|
report |
QA 리포트를 엽니다. Ctrl+Shift+R과 같습니다(Report) |
copy path |
선택한 인스턴스의 경로를 복사 창에 표시합니다 |
highlight on / highlight off |
선택한 인스턴스를 게임 화면에서 윤곽선으로 표시합니다(이 클라이언트에서만 보입니다) |
help [명령] (별칭 ?) |
명령 목록이나 특정 명령의 설명을 표시합니다 |
history |
지금까지 실행한 명령을 번호와 함께 나열합니다 |
Channel (에이전트용)
섹션 제목: “Channel (에이전트용)”show, page, agent는 AI 에이전트가 화면 캡처로 상태를 읽을 때 쓰는 명령입니다. 사람이 직접 쓸 일은 거의 없습니다. 자세한 내용은 에이전트 모드에서 다룹니다.
입력 문법
섹션 제목: “입력 문법”- 단어는 공백으로 구분합니다. 공백이 든 이름은 따옴표로 감쌉니다:
"Workspace.My Part". - 경로는
game부터 시작하는 점 경로입니다:Workspace.Folder.Part. 이름에 점이 있으면\.으로 씁니다. - 옵션은
key:value형식입니다(kind:error). 명령이 정해 둔 옵션만 옵션으로 해석하고, 그 밖의 콜론이 든 입력(Attribute:Name등)은 일반 인자로 처리합니다. filter,logfilter,marker처럼 텍스트를 받는 명령은 명령 이름 뒤의 입력 전체를 공백까지 그대로 받습니다.
자동완성
섹션 제목: “자동완성”입력하면 아래에 후보가 나타납니다. 명령 이름의 앞부분으로 찾고, 철자가 비슷하면 did you mean으로 알려 줍니다. 명령 이름 다음에는 인자 값 후보(client | server, 창 이름 등)와 옵션 키가 이어서 나타납니다.
경로 인자에서는 지금 보기의 경로를 후보로 보여 줍니다. 서버 경로는 받아 오는 동안 loading… 줄이 표시되고, 도착하면 목록이 다시 계산됩니다. 경로 후보를 선택하면 이어서 .을 입력할 수 있도록 공백을 붙이지 않습니다.
디버그 액션 실행
섹션 제목: “디버그 액션 실행”게임에 등록된 디버그 액션(서버에서 실행되는 개발용 명령)이 있으면 내장 명령과 같은 목록에 표시됩니다. 후보 오른쪽의 꼬리표로 server(서버 액션)와 client(이 클라이언트에서 실행되는 클라이언트 액션)를 구분할 수 있습니다. 후보 설명에는 asks to confirm, cooldown 5 s 같은 특징이 함께 표시됩니다. 지금 내 권한으로 실행할 수 있는 액션만 나타납니다.
액션을 등록하는 방법은 디버그 액션과 클라이언트 액션에서 다룹니다.

인자 칸
섹션 제목: “인자 칸”입력이 인자를 가진 액션의 이름으로 시작하면 팔레트 오른쪽(화면이 좁으면 아래)에 인자 패널이 나타납니다. 인자 하나가 칸 하나입니다.
- 입력 줄과 칸의 내용은 연동됩니다. 칸을 수정하면 입력 줄이
이름 "값" "값"형식으로 다시 쓰이고, 입력 줄을 수정하면 칸도 함께 바뀝니다. - 칸을 비워 두면 기본값을 사용합니다. 기본값은 흐린 글자로 표시됩니다.
- 인자 종류에 따라 칸의 모양이 다릅니다. 플레이어 칸에는 Me와 플레이어 이름 후보, 인스턴스 칸에는 Server selection/Client selection(Explorer에서 선택한 것을 채움)과 Clear, Boolean 칸에는 체크 상자(
Enabled), 위치 칸에는 My position이 있습니다. 칸 이름에 마우스를 올리면 설명이 나타납니다. - 값 후보는 Choice 목록, Enum 항목, 플레이어, 인스턴스 경로에서 가져옵니다. 입력 줄에서도 같은 후보가 나타나며 Tab으로 채울 수 있습니다.
- 칸에서 Enter를 눌러도 입력 줄에서 실행한 것과 똑같이 실행됩니다.
검사 (Check)
섹션 제목: “검사 (Check)”액션마다 인자를 검사하는 시점이 다르며, 후보 설명에 표시됩니다.
- Live:
the server checks the arguments as you type. 입력을 멈추면 잠시 뒤 서버(또는 클라이언트)가 값을 검사하고, 잘못된 칸에 이유를 빨갛게 표시합니다. - Lazy:
checks the arguments only when it runs. 실행하기 전에는 인자 오류가 표시되지 않습니다.
그 밖에 팔레트 자체의 검사도 항상 동작합니다. 닫히지 않은 따옴표, 인자보다 많은 값, 형식이 잘못된 값은 실행 전에 입력 아래에 빨갛게 표시됩니다.
Confirm 확인
섹션 제목: “Confirm 확인”액션이 확인을 요구하면(asks to confirm) Enter를 눌러도 바로 실행되지 않습니다. 입력 아래에 액션의 확인 문구와 인자 요약이 표시되고 Press Enter to run, Esc or edit the line to cancel.이라는 안내가 나타납니다. Enter를 한 번 더 누르면 실행되고, Esc를 누르거나 입력을 수정하면 취소됩니다.
실행 중 제한
섹션 제목: “실행 중 제한”- 이전 액션이 아직 실행 중이면
busy: the previous action is still running이라고 알려 주고 새로 실행하지 않습니다. - 쿨다운이 있는 액션은
is cooling down (2.5 s left)와 함께 막힙니다. - 서버가 요청마다 권한을 다시 확인하므로, 클라이언트에서 입력을 조작해도 서버가 거절합니다(보안 모델).