라이프스타일

클라우드 작업과 GitHub

클라우드 작업은 저장소에 설정된 원격 환경에서 실행됩니다. 긴 작업을 맡길 수 있지만 로컬의 미커밋 파일이 자동으로 보이지는 않습니다. PR 생성과 병합·배포는 별개입니다.

읽는 데 약 15분 · 실습 35 분

작업 흐름을 설명하는 그림이며 제품 스크린샷이 아닙니다.
사진: Mokaair (© Mokaair)
이 글의 목차
  1. 목표와 준비
  2. 1단계: 클라우드가 실제로 읽을 자료 준비
  3. 2단계: 저장소 연결 및 환경 생성
  4. 3단계: 시작 버전 확인 후 수정
  5. 4단계: 검증 후 PR 준비
  6. 문제 해결, 중단, 다음 단계

목표와 준비

클라우드는 설정된 환경에서 실행되고 는 연결된 호스트를 제어합니다. 프로젝트 이름이 같아도 미커밋 변경, 웹사이트 로그인, node_modules는 자동으로 옮겨지지 않습니다. 명확한 브랜치와 파일 목록으로 결과의 출발점을 고정합니다.

1단계: 클라우드가 실제로 읽을 자료 준비

실습 자료를 풀고 broken의 index.html, style.css, app.js, core.mjs, core.test.mjs를 사용합니다. expected는 로컬 정답 참고용으로 남기고 시작 저장소에 섞지 않습니다. Completed가 미완료를 반환하므로 테스트 하나가 의도적으로 실패합니다.

GitHub New repository에서 자신의 계정, codex-cloud-lab, Private, README 초기화를 선택합니다. Add file → Upload files로 다섯 파일을 루트에 올리고 교재 추가를 설명하는 메시지로 새 실습 저장소의 시작 브랜치에 저장합니다. 조직 규칙이 PR을 요구하면 그 절차로 자료를 반영하고 운영 저장소 보호는 바꾸지 않습니다.

core.mjs가 broken 하위가 아닌 루트에 있고 실제 코드가 있는지 확인합니다. visibleTasks의 completed 조건이 반대인지 보고 표시된 브랜치와 최신 커밋을 기록합니다. main이라 가정하지 말고 자료가 있는 브랜치를 선택합니다. GitHub 로그인 성공만으로 시작 상태가 보장되지는 않습니다.

2단계: 저장소 연결 및 환경 생성

Codex cloud에서 ChatGPT 계정/워크스페이스를 확인하고 GitHub 연결로 codex-cloud-lab을 선택합니다. 조직 승인이 필요하면 완료 후 목록을 확인합니다. GitHub와 ChatGPT의 인증은 별개이며 한쪽 로그인만으로 연결이 허가되지 않습니다.

환경 설정에서 교재 저장소와 사용 가능한 Node.js 22 이상 호환 런타임을 선택합니다. 외부 패키지, API, 키는 필요 없습니다. setup script에는 다음 버전 확인만 넣습니다. 의도된 실패 테스트를 setup에 넣으면 에이전트 시작 전에 중단될 수 있으므로 작업 안에서 실행합니다.

클라우드 환경 설정: setup script에 넣는 버전 확인 · sh
node --version

필요한 파일이 모두 있으므로 agent internet access는 Off로 둡니다. 준비 단계와 에이전트 단계의 네트워크는 별개입니다. 의존성이 있는 다른 프로젝트라면 lockfile과 준비 로그를 따르되 이 실습에 불필요한 패키지를 추가하거나 README에 토큰을 쓰지 않습니다.

3단계: 시작 버전 확인 후 수정

교재 환경/브랜치를 선택하고 다음 읽기 요청을 보냅니다. 경로, 커밋, 다섯 소스와 실패 하나가 예상됩니다. 모두 성공하면 expected 업로드나 수정된 브랜치 선택을 확인하고 맞는 코드를 억지로 망가뜨리지 않습니다. 루트에 파일이 없으면 환경/업로드 위치부터 바로잡습니다.

자연어 요청: 선택한 환경의 클라우드 작업에 입력 · text
Inspect this Small Steps practice repository without changing files. Report the working directory, git commit, branch if available, and the five source filenames. Run node --test core.test.mjs. Explain the failing behavior from the test and core.mjs. Keep files unchanged and do not open a pull request yet.

로그 확인 후 같은 작업에서 수정을 요청합니다. core.mjs의 completed 조건으로 범위를 제한하고 테스트와 다른 동작을 보존합니다. 테스트 삭제나 기대값 완화는 수정이 아닙니다. 큰 재작성은 단일 조건 수정으로 부족한 이유를 확인한 뒤 결정합니다.

자연어 요청: 같은 클라우드 작업에서 수정 요청 · text
Fix only the reversed completed filter in core.mjs. Completed must return only finished tasks, Active only unfinished tasks, and All every task. Preserve order, input immutability and all existing tests. Remove any now-obsolete exercise comment. Run node --test core.test.mjs and show the final diff. Do not merge, deploy or open a PR until I review the result.

4단계: 검증 후 PR 준비

조건입력예상 표시
CompletedRead 완료, Build 미완료Read만
Active같은 두 항목Build만
All같은 두 항목원래 순서의 Read, Build
빈 목록항목 없음모든 필터에서 빈 목록

테스트 세 개가 성공하고 completed가 참인 항목을 남기는 조건과 불필요한 오류 주석 제거를 확인합니다. Active, All, core.test.mjs는 바뀌지 않아야 합니다. 이전 완료 문구 대신 최종 diff와 최신 실행을 읽고 예상만 있다면 실제 출력을 요청합니다.

미커밋 변경뿐 아니라 시작 커밋과 비교하기

첫 읽기 전용 점검에서 기록한 커밋을 기준으로 삼습니다. 에이전트가 작업 중 변경을 이미 커밋했다면 일반 git diff는 비어 있어도 이번 작업의 변경은 남아 있을 수 있습니다. 시작점부터 최종 결과까지 전체 차이를 검토하세요. 시작 기록이 없다면 브랜치 이름을 추측하지 말고 작업 로그에서 확인합니다. 아래 요청은 점검용이며 PR을 만들거나 병합하지 않습니다.

자연어 요청: 같은 클라우드 작업에서 전체 변경 확인 · text
Use the commit recorded in our initial read-only inspection as the baseline.
If you cannot identify it, stop and ask me to recover that record.
Compare the final tracked tree against that baseline, including committed, staged and unstaged changes.
List untracked files separately. Confirm whether core.test.mjs is unchanged and explain every changed file.
Report the latest actual test command and result, or say not run.
Do not modify files, open a PR, merge or deploy.

준비되면 작업의 PR 생성에서 저장소, base, 수정된 head를 확인하고 다음 초안을 사용합니다. PR은 검토 요청이며 병합/배포가 아닙니다. 충돌, 미완료 검사, 관련 없는 변경을 해결한 후 판단합니다. 를 위해 미병합 상태로 남겨도 됩니다.

PR 초안 양식: 실제 결과를 작성한 뒤 검토 요청 · markdown
Title: Fix Completed filtering in Small Steps

Completed previously displayed unfinished tasks. It now displays only finished tasks while preserving Active, All, order and input data.

Baseline commit: [fill in the commit from the initial inspection]
Result checked: [fill in the final commit or task diff identifier]
Validation: [fill in command, exit code and actual pass/fail counts]
Browser verification: [performed / not run, with scope or reason]
Deployment: not performed.

대괄호 필드를 모두 실제 기록으로 바꾸세요. 실제 실행에서 세 테스트가 통과했을 때만 그렇게 적고, 실행하지 않은 검사는 미실행과 이유를 기록합니다. PR 제목과 결과 설명도 최종 diff와 맞아야 합니다. 화면 검증은 정확한 PR 브랜치나 커밋을 별도 폴더에 가져와 를 따릅니다. 남길 실습 자료를 보존한 뒤 About this exercise → Reset practice data를 선택하고 All tasks에서 빈 목록을 확인합니다. 그런 다음 Read와 Build를 추가하고 Read만 완료하면 Completed에는 Read, Active에는 Build가 보여야 합니다. 오래된 로컬 사본의 정상 화면으로 새 클라우드 수정을 검증하지 마세요.

문제 해결, 중단, 다음 단계

목록 누락은 소유자/연결 권한/조직 승인, 초기화 실패는 첫 setup 오류/Node, 테스트 파일 누락은 브랜치/위치, 로컬 불일치는 커밋/최신 실행을 확인합니다. 접근, 도구, 자료 위치, 버전을 구분하며 같은 프롬프트 재전송으로 끝내지 않습니다.

중단 후 상태와 남은 변경을 확인합니다. 중단은 기존 PR/GitHub 변경을 취소하지 않습니다. 미병합 PR은 확인 후 닫고 병합된 변경은 대상 커밋 복구를 사용하며 채팅 삭제로 대신하지 않습니다. UI/환경은 공식 문서, 교재 테스트는 로컬에서 확인했으며 독자의 클라우드 작업이나 PR을 실행했다고 주장하지 않습니다.

15. 클라우드 작업과 GitHub — 작업 흐름을 설명하는 그림이며 제품 스크린샷이 아닙니다. GitHub → Cloud environment → Pull request
15. 클라우드 작업과 GitHub — 작업 흐름을 설명하는 그림이며 제품 스크린샷이 아닙니다. GitHub → Cloud environment → Pull request · 사진: Mokaair (© Mokaair)
자세한 설명 보기

GitHub to Cloud environment to Pull request

전체 목차

  • 라이프스타일

    Codex 학습 센터: 전체 튜토리얼 목차

    설치와 첫 작업부터 MD 지침과 고급 연동까지 60개 강의, 열 개 단원을 계획합니다. 수준, 환경, 목표, 명령으로 다음 글을 찾고 미게시 항목의 상태를 확인할 수 있습니다.

  • 라이프스타일

    실습: 작은 웹사이트 만들기

    brief.md에서 Small Steps 할 일 사이트를 계획하고 추가·완료·삭제·필터·로컬 저장을 구현합니다. HTML·CSS·데이터 함수·화면 이벤트·시험을 분리하고 Node와 브라우저로 검증한 뒤 재시작·복원 인계 기록을 남깁니다.

  • 라이프스타일

    사용량과 효율: 재작업 줄이기

    조건, 모델 선택, 시간, 결과를 기록해 불필요한 재시도와 과도한 문맥을 줄입니다.

최신 여행 소식·가이드

출처

라이프스타일