**task-1152.1 완료 보고** (dev2-team) **완료 보고서: GLM 간단 호출 스크립트 구현** (12분 42초) **핵심 결과** `glm-call.py` (346행) 구현 완료. requests 라이브러리로 OpenAI 호환 API를 직접 호출하며, 역할별 system prompt 5종, 모델 4종 선택, --task/--task-file 입력, --output 저장을 지원한다. pytest 51건 전체 통과(0.20s), pyright 에러 0건. GLM-WORKFLOW.md(v6)와 run-glm.sh(v2)도 glm-call.py 기반으로 업데이트. ## 생성/수정 파일 - **(신규)** `/home/jay/workspace/tools/glm-call.py` — 핵심 CLI 스크립트 (346행) - **(신규)** `/home/jay/workspace/tools/tests/test_glm_call.py` — 유닛 테스트 51건 - **(수정)** `/home/jay/workspace/teams/dev8/GLM-WORKFLOW.md` — v5→v6: MCP→glm-call.py 전환 - **(수정)** `/home/jay/workspace/teams/dev8/run-glm.sh` — openclaw→glm-call.py 래퍼 ## 구현 상세 | 기능 | 구현 | |---|---| | API 호출 | requests.post → z.ai OpenAI 호환 API | | API Key | 환경변수 > .env.keys 직접 파싱 (export 접두어 처리) | | 역할 | backend, frontend, uxui, tester, general (기본) | | 모델 | glm-5(기본), glm-4.7, glm-4.7-flas 생성/수정: 4개 파일, 테스트: pyright 0 errors **발견/해결 이슈 4건** 1. **export 접두어 미처리** — .env.keys 파서에서 `export ` 접두어를 strip하는 로직 추가 (`glm-call.py:85-86`) 2. **Pyright Optional 접근 에러** — 테스트 파일에서 glm_call이 None일 수 있는 타입 이슈. `types.ModuleType("stub")` 패턴으로 해결 (`test_glm_call.py:42`) 3. **미사용 StringIO import** — 테스트 파일에서 제거 4. **z.ai API 잔액 부족** — 미해결: 범위 외 사유: API 크레딧 충전은 외부 운영 이슈. 스크립트 기능은 모킹 테스트로 검증 완료.