Investigating with AI

Connecting to the course server

You have an account on investigatingwithai.com. It gives you a Linux working environment with Python, uv and Claude Code already available, plus 25 GB of space. SSH is the terminal; SFTP is the file transfer. Both use the same username and password.

Your teacher will give you a username and an initial password privately.

SSH — working in the terminal

macOS / Linux — open Terminal:

ssh yourlogin@investigatingwithai.com

Windows — open PowerShell and use the same command. (Windows 10 and 11 include an SSH client.)

The first time you connect you'll see a message about the authenticity of the host and a fingerprint. Type yes. This is normal and happens only once.

Then type your password. The cursor will not move while you type it — no dots, no stars. That is expected; type it and press Enter.

Change your password

Once you're in, set a password only you know:

passwd

It asks for the current password first, then the new one twice.

Log in without a password (recommended)

Typing a long password every time gets old, and key-based login is safer. On your own computer, run this once:

ssh-keygen -t ed25519          # press Enter three times to accept the defaults
ssh-copy-id yourlogin@investigatingwithai.com

On Windows, if ssh-copy-id is missing:

type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh yourlogin@investigatingwithai.com "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

After that, ssh yourlogin@investigatingwithai.com just lets you in.

SFTP — moving files

SFTP runs over the same SSH connection, so there is nothing extra to install on the server and nothing extra to configure.

With a graphical clientFileZilla, Cyberduck, or WinSCP:

Field Value
Protocol SFTP — SSH File Transfer Protocol (not "FTP", not "FTPS")
Host investigatingwithai.com
Port 22
Logon type Normal
User your login
Password your password

From the terminal:

sftp yourlogin@investigatingwithai.com
put localfile.csv  projects/
get outputs/figures/plot.png
bye

Copy a whole folder with scp or rsync (faster for many files):

rsync -av ./my-analysis/ yourlogin@investigatingwithai.com:~/projects/my-analysis/

What's where

Path What it is
~ (your home) Yours alone. No other student can read it. 25 GB quota.
~/projects/ Put your analysis projects here.
~/datasets-shared/ Shared reference datasets. Read-only — copy what you need.
~/projects-shared/ Group workspace for collaborative assignments. Everyone in the course can read and edit these files.
/data/shared/dropbox/ Hand-in folder. You can write into it but not list or read it — submissions stay private.

Check your remaining space at any time:

quota -s

~/projects-shared/ has no undo. Anyone can overwrite or delete anything there. Keep your work in git, and treat it as a shared table, not a safe.

Running Jupyter on the server

Start the notebook server on the remote machine:

cd ~/projects/my-analysis
uv run jupyter lab --no-browser --port 8888

Then, in a second terminal on your own computer, forward the port:

ssh -L 8888:localhost:8888 yourlogin@investigatingwithai.com

Now open the http://localhost:8888/... link that Jupyter printed, in your own browser. Keep both terminals open while you work.

Claude Code on the server

Install it once, into your own account:

curl -fsSL https://claude.ai/install.sh | bash
claude

Login opens a browser — but there is no browser on the server. Press c, open the URL on your own computer, log in, and paste the code back into the terminal. Use the course Claude account, not a personal one.

When things go wrong

"Permission denied, please try again." Wrong password, or wrong username. Passwords are case-sensitive. Ask for a reset rather than guessing repeatedly.

"Connection refused" or it just hangs. Some university and hotel networks block outbound port 22. Try tethering to your phone to confirm, then tell your teacher.

You're locked out after several failed attempts. The server blocks an address for 15 minutes after 8 failures. Wait it out — it clears on its own.

"Disk quota exceeded". You've hit 25 GB. Run du -sh ~/* | sort -h to find the big folders. Raw data you can re-download does not belong in your home directory.

A command keeps running after you disconnect. It doesn't — closing SSH kills it. For long jobs use tmux: run tmux, start the job, press Ctrl-b then d to detach, and tmux attach to come back later.