Sidekick setup from the terminal ================================ This page is for the person setting up their computer. Working with an AI assistant instead? Sign in at https://onboarding.afinit.dev/setup and paste the prompt it shows into your session — it points the assistant at a page written for it, issued under your name. Supported: macOS, Linux, and Windows. On Windows the steps differ slightly — see "On Windows" below — but from sign-in onward everything is the same. 1) Before you start Have curl, Python 3 with pip, and Git installed, and use a terminal with Bash. On Linux, install your distribution's python3-pip package if pip is missing. Have your company Google account ready. The script opens your browser when sign-in or Google consent is needed. You do not need to download a token file or visit the setup page first. 2) Download the script, check it, run it In a terminal: curl -fsSL https://onboarding.afinit.dev/bootstrap/init-cli.sh -o init-cli.sh python3 -c "import hashlib; print(hashlib.sha256(open('init-cli.sh', 'rb').read()).hexdigest())" The printed hash must be exactly: 482920fd801f938a71d295dc125a935a1b9a31f862c4a985a291b7a804335b8b (the same value is listed at https://onboarding.afinit.dev/bootstrap/SHA256SUMS) If it matches, run: bash init-cli.sh If it does not match, do not run it. Tell the onboarding channel. On Windows Windows has no Bash by default (the `bash` on PATH is the WSL stub and does not work), so use the launcher instead of the two commands above. First install Git for Windows — https://git-scm.com/download/win — which bundles Bash and curl, and Python 3 with pip — https://www.python.org/downloads/ — ticking "Add python.exe to PATH". Then, in Windows PowerShell: curl.exe -fsSL https://onboarding.afinit.dev/bootstrap/init-cli.ps1 -o init-cli.ps1 powershell -ExecutionPolicy Bypass -File .\init-cli.ps1 The launcher finds Git Bash, downloads init-cli.sh next to itself, checks its sha256 against the value above, and hands off to it. If Git Bash is missing it prints what to install and stops without running anything. To resume later, run the same command with --resume: powershell -ExecutionPolicy Bypass -File .\init-cli.ps1 --resume The rest of this page — sign-in, resume, the final snapshot — is the same. 3) Sign in and approve Google access in the browser Keep the terminal running while you sign in with your company Google account and review the requested Google permissions. Tokens are saved locally; there is nothing to copy into a chat. If the browser wait times out, the script prints a "PAUSED" block. Close the old sign-in tabs, then run: bash ~/.sidekick/init-cli.sh --resume This starts a new browser callback. Complete sign-in and consent in the new tabs while the terminal is running; the old callback no longer accepts them. Resume checks prerequisites and authentication again, continues unfinished installation steps, and always runs the final verification. A saved success record alone does not mean this computer is still ready. 4) If it fails The script stops and prints what failed, where its state file and log are, and a short block of text between ---8<--- and --->8---. If you want help, copy that block into Claude Code. When the cause is fixed, continue with: bash ~/.sidekick/init-cli.sh --resume The state file records step status, and the log masks known credentials. Check any excerpt before sharing it and never paste token values into a chat. 5) When it finishes, save a snapshot Run this once, after the script reports success: python3 ~/.sidekick/skills/local-ready/scripts/local_ready.py It prints a summary and writes ~/.sidekick/local-ready.json. Nothing here changes your machine — it only reads and reports. Keep the file: when something stops working later, it is the only record of what your setup looked like when it worked. The first line shows the checklist version. Rows can say UNKNOWN as well as FAIL — UNKNOWN means that row could not be measured this run, not that it is broken. Sidekick 터미널 셋업 ==================== 이 페이지는 컴퓨터를 셋업하는 사람을 위한 안내입니다. macOS, Linux, Windows를 지원합니다. AI 어시스턴트와 함께 하려면 https://onboarding.afinit.dev/setup 에서 로그인한 뒤 거기 나오는 프롬프트를 세션에 붙여넣으세요 — 어시스턴트용으로 쓰인, 본인 이름으로 발급된 페이지로 안내합니다. Windows는 시작 단계만 조금 다릅니다(아래 "Windows에서" 참고). 로그인부터는 모두 동일합니다. 1) curl, pip을 포함한 Python 3, Git을 설치하고 Bash를 실행할 수 있는 터미널을 준비합니다. Linux에서 pip이 없으면 배포판의 python3-pip 패키지를 설치하세요. 회사 Google 계정으로 로그인할 준비를 해 두세요. 로그인이나 Google 동의가 필요하면 스크립트가 브라우저를 엽니다. 토큰 파일을 받거나 셋업 페이지에 먼저 갈 필요는 없습니다. 2) 터미널에서 받아서 해시를 확인합니다: curl -fsSL https://onboarding.afinit.dev/bootstrap/init-cli.sh -o init-cli.sh python3 -c "import hashlib; print(hashlib.sha256(open('init-cli.sh', 'rb').read()).hexdigest())" 출력된 해시가 482920fd801f938a71d295dc125a935a1b9a31f862c4a985a291b7a804335b8b 와 같을 때만 `bash init-cli.sh` 로 실행합니다. 다르면 실행하지 말고 온보딩 채널에 알려 주세요. Windows에서 Windows에는 기본 Bash가 없습니다(PATH의 `bash`는 WSL 스텁이라 동작하지 않음). 그래서 위 두 명령 대신 런처를 사용합니다. 먼저 Git for Windows (https://git-scm.com/download/win — Bash와 curl 포함)와 pip 포함 Python 3 (https://www.python.org/downloads/ — "Add python.exe to PATH" 체크)를 설치하세요. 그다음 Windows PowerShell에서: curl.exe -fsSL https://onboarding.afinit.dev/bootstrap/init-cli.ps1 -o init-cli.ps1 powershell -ExecutionPolicy Bypass -File .\init-cli.ps1 런처가 Git Bash를 찾아 init-cli.sh를 같은 폴더로 받고, sha256을 위 값과 대조한 뒤 실행합니다. Git Bash가 없으면 무엇을 설치해야 하는지 출력하고 아무것도 실행하지 않고 멈춥니다. 나중에 이어서 하려면 같은 명령에 --resume을 붙여 실행하세요: powershell -ExecutionPolicy Bypass -File .\init-cli.ps1 --resume 이후(로그인·재개·마지막 스냅샷)는 모두 동일합니다. 3) 터미널을 켜 둔 채 브라우저에서 회사 Google 계정으로 로그인하고 요청된 권한을 검토해 승인하세요. 토큰은 로컬에 저장되며 채팅에 복사할 값은 없습니다. 제한 시간 안에 끝내지 못해 "PAUSED"가 나오면 이전 로그인 탭을 닫고 `bash ~/.sidekick/init-cli.sh --resume`을 실행하세요. 새 브라우저 콜백이 시작되므로 터미널이 실행 중일 때 새 탭에서 로그인과 동의를 마쳐야 합니다. 이전 콜백은 종료됐습니다. 재개할 때는 실행에 필요한 도구와 인증을 다시 확인하고, 미완료 설치 단계를 이어서 실행합니다. 최종 검증은 항상 다시 합니다. 과거 성공 기록만으로 완료 처리하지 않습니다. 4) 실패하면 ---8<--- 와 --->8--- 사이에 짧은 문장이 출력됩니다. 도움이 필요하면 그 문장을 Claude Code 에 붙여넣으세요. 원인을 고친 뒤에는 `bash ~/.sidekick/init-cli.sh --resume` 으로 이어서 실행합니다. 로그는 알려진 자격증명을 가립니다. 공유할 부분을 먼저 확인하고 토큰 값은 붙여넣지 마세요. 5) 끝나면 상태 스냅샷을 남깁니다 스크립트가 성공을 알린 뒤 한 번 실행하세요: python3 ~/.sidekick/skills/local-ready/scripts/local_ready.py 요약이 출력되고 ~/.sidekick/local-ready.json 이 만들어집니다. 이 명령은 기계를 바꾸지 않습니다 — 읽어서 적을 뿐입니다. 파일은 지우지 마세요. 나중에 무언가 안 될 때 «되던 때의 내 설정» 을 보여주는 유일한 기록입니다. 첫 줄에 체크리스트 버전이 찍힙니다. 행에는 FAIL 말고 UNKNOWN 도 나옵니다 — UNKNOWN 은 「고장났다」가 아니라 「이번에는 못 쟀다」입니다.