3.3 KiB
3.3 KiB
tver · 강사가 수업 준비 때 직접 만든 본 (2026-10-27)
정답 자료 · 학생 저장소에는 수업 뒤 VIBE-A-TVER.md와 함께 올립니다. 이 본은 강사가 CLI 에이전트에 단계 요청문을 보내 만든 것이 아니라, Claude Code가 VIBE-A의 SPEC · IMP-PLAN을 보고 직접 썼습니다. 학생이 만든 것과 파일 구성이 달라도 됩니다. 요구 R1~R14의 확인 방법이 같으면 됩니다.
설치 · 실행
cd ~/aio-01d4-stu/Last3Mon/74/tver
uv sync && uv run pytest -q # 테스트 11개 (저장소는 tmp_path, 가짜 키는 테스트 안에서 만듦)
uv tool install --editable . # 어느 폴더에서나 tver (R14)
cd /tmp && tver --help
| 하고 싶은 것 | 명령 |
|---|---|
| 두 파일 비교 | tver diff a.json b.json · 줄 diff 없이 --short · 다른 프로그램용 --json |
| 버전으로 저장 | tver save my-work/helpdesk.json · 폴더 tver save my-work (워크플로우만) |
| 버전 목록 · 비교 | tver log helpdesk.json · tver diff <rev1> <rev2> helpdesk.json |
| 한 버전 보기 · 꺼내기 | tver show <rev> helpdesk.json · tver restore <rev> helpdesk.json -o my-work/helpdesk.json |
| n8n에서 모두 가져오기 | tver pull [--container day65-n8n-n8n-1] (읽기만) |
| 화면(TUI) | tver my-work/helpdesk.json ([s] 지금 파일을 저장, [q] 끝) |
- 저장소:
~/.tver/store(또는--repo <폴더>,$TVER_REPO). 내 프로젝트 폴더 밖에 따로 둡니다. - 종료 코드:
diff0 같음 · 1 다름, 모든 명령 2 오류 (파일이 없음 · 워크플로우가 아님 · 키가 있어 저장 거부).
파일
| 파일 | 하는 일 | 요구 |
|---|---|---|
src/tver/workflow.py |
읽기, 뜻 없는 칸 빼기(clean), 키 정렬 저장 글(dumps), 키 모양 찾기(가려서) |
R2 · R7 |
src/tver/diff.py |
노드 이름으로 짝짓기, 설정 · 연결 비교, 줄 diff, 모델 · 지시문 · 흐름 분류, 이름 바꿈 | R1 · R3 · R4 · R12 |
src/tver/store.py |
git 저장소: 저장(같으면 안 함) · 목록 · 꺼내기, 폴더 저장, n8n에서 내보내기 | R5 · R6 · R9 · R10 · R13 |
src/tver/cli.py |
명령 · --json · 종료 코드 |
R11 |
src/tver/app.py |
Textual 화면 | R8 |
tests/ |
v1 · v2(tests/data, 비밀 없음)로 엔진 · 저장 · 화면 |
|
Doc/IMP-PLAN.md |
만든 순서 (엔진 1 → 2 → TUI 1 → 설치 → 엔진 3 · 4) |
2026-10-27에 확인한 것
| 확인 | 결과 |
|---|---|
uv run pytest -q |
11 passed |
tver diff reference/helpdesk-v1.json reference/helpdesk-v2.json --short |
flow.py diff와 같은 7줄, 7 change(s) · model 1 · prompt 1 · flow 5, 종료 코드 1 |
오늘 Lab의 helpdesk 정답 여섯 단계를 차례로 save |
버전 6개, 메시지 예 "15 change(s) · model 1 · prompt 1 · flow 13" (Lab 01 과제 2 → Lab 02 예제 1) |
tver save answers |
워크플로우 5개 저장, 테스트 파일 74-lab02-challenge-golden.json은 skipped |
tver pull (강사 n8n) |
192 new version(s) — 강사 n8n에 있던 워크플로우 전부, n8n은 그대로 |
uv tool install --editable . → /tmp에서 tver restore → 원본과 tver diff |
0 change(s), 종료 코드 0 |