Loading...
Loading...
MSW `.map` / `.ui` / `.gamelogic` / `.model` 에셋과 `world.yaml` 을 버전 고정된 `@choigawoon/msw-vfs-cli`(npx) 로 읽고·탐색·편집·변환하는 스킬. '맵 구조 확인', '맵 엔티티 목록', 'UI 계층', 'HP바/텍스트 조사', 'entity 값 수정', '컴포넌트 추가/삭제', '.model 값 편집', 'YAML export/import', 'world 빌드', '.map/.ui/.gamelogic/.model 파일 분석' 요청 시 사용. L1(경로 기반 VFS) + L2(entity 단위) + .model + YAML/World 모두 지원.
npx skill4agent add choigawoon/choigawoon-test-plugins test-msw-vfs-cli@choigawoon/msw-vfs-cli.map.ui.gamelogic.modelworld.yaml@choigawoon/msw-vfs-cli@0.5.3npx@choigawoon/msw-vfs-cli@0.5.3scripts/msw-vfs.jsPKGscripts/msw-vfs-batch.jsPKGpackages/viewer/src/lib/vfs.tsREQUIRED_CLI_VERSION^0.5.0read-entityedit-component--aiscripts/msw-vfs.js--ai~/.msw-vfs/sessions/s_<ts>_<id>.jsonl@choigawoon/msw-vfs-vieweraiscripts/msw-vfs-batch.jsserve/rpcmsw-blob-vfs-readerAgent(
subagent_type="msw-devtools:msw-blob-vfs-reader",
description="맵/UI 분석",
prompt="<사용자 요청 + 대상 파일 경로를 포함한 구체적 지시>"
).map.uinode <plugin>/skills/test-msw-vfs-cli/scripts/msw-vfs.js <file> <subcmd> [args...]npx -y @choigawoon/msw-vfs-cli@0.5.3<file>.map.ui.gamelogic.model--typeserve# 파일로부터
node <plugin>/skills/test-msw-vfs-cli/scripts/msw-vfs-batch.js queries.jsonl
# stdin
cat queries.jsonl | node <plugin>/skills/test-msw-vfs-cli/scripts/msw-vfs-batch.js{"id":"a","argv":["/abs/map01.map","summary"]}
{"id":"b","argv":["/abs/map01.map","read-entity","/maps/map01/Hero"]}
{"id":"c","argv":["/abs/map01.map","grep-entities","BossRush"]}argv[0]{id,stdout,stderr,code}| Entry | 쓸 수 있는 명령군 | 트리/엔티티 명령 가능? |
|---|---|---|
| L1 VFS + L2 Entity + YAML export/import | ✅ |
| | ❌ — 트리 없음 |
| | ❌ |
.modelValues[]lstreeread-entitylist-entitiesedit-entityadd-component$ msw-vfs DefaultPlayer.model list-entities
msw-vfs: 'list-entities' is not a .model command —
.model has no children; a .model produces one entity at runtime..model| 의도 | | |
|---|---|---|
| 메타데이터 / 컴포넌트 카운트 | | |
| 들어있는 값들 나열 | (개념상 다름) | |
| 값 하나 읽기 | | |
| 값 변경 | | |
| 값 제거 | — | |
| 모델이 만들 엔티티 트리를 펼쳐 보고 싶음 | (해당 없음) | |
list-components.map.uiread-entity <path> --deep.modelinfoComponentslist-entities.modeledit-component.model.modelset <name>--target-typesummary.modelsummarymsw-vfs --help.model위 표대로/.model에는 적용되지 않는다.world.yaml/.map/.ui안에서 같은 데이터를 두 각도로 노출한다는 의미..gamelogic
lstreeglobgrepreadstatsummaryread-entitylist-entitiesfind-entitiesgrep-entitiesedit-entityedit-componentadd-entityremove-entityCOMMANDS.mdmsw-vfs --help.map.uils /tree --depth 3edit-entityedit-componentedit <path>.json@typeread-entityvalidateread-entityedit-entity <path> --set enable=falseedit-component <entity> <@type> --set Position='[1,0,0]'add-entityremove-entityrename-entityadd-componentremove-component.modelset <name> <json>--typeexport-yamlimport-yamlbuild-world--output / -o.map.ui.gamelogicEntities[].modelValues[]