Kumu / Start Here

Student Onboarding — your AI + GitHub foundation

Do this once · works for every course ~30–45 minutes Yours to keep after graduation

Every course on this site assumes two tools: a public GitHub portfolio and an AI you've taught to work your way. This page sets up both — none of it is course-specific, and all of it carries straight into your career.

Why this isn't just course setup

You're building two things at once. The obvious one: the accounts and habits your course projects require. The bigger one: your personal LLM foundation — the preferences, prompts, skills, and logs that make an AI assistant genuinely yours. Professionals who carry a tuned AI setup between jobs get dramatically more out of these tools than people who start from a blank chat window every time. You start building that setup today, with your bio and resume as the first project.

Step 1 — GitHub, done right (~15 min)

Every course on this site opens with Stage 0, and Stage 0 has two parts. This is part 1: the account, and the mechanics of saving work to it (the Git mechanics section below). Steps 4–5 get a bare repo and your first two files in place; part 2 then builds it out to the standard your courses expect — and it assumes you have finished this page.

Already have a GitHub account?

Use it. One account, one portfolio, every course — do not create a second one; add your hawaii.edu address to the account you already have, under Settings → Emails, and the education benefits attach to it. If you're starting from scratch, follow the steps below and sign up with that hawaii.edu address from the beginning: it is what unlocks GitHub Education. Either way you end up with one account you keep after graduation.

#What you doWhy it matters
1Create a github.com account with your .edu emailUnlocks free GitHub Education benefits — GitHub Pro, Copilot, and more
2Pick a professional username (firstname-lastname beats a gamer tag)Employers and reviewers see it — it's a second business card
3Install GitHub Desktop (no command line needed to start)Commit and push with buttons; the mental model is what counts: add → commit → push
4Create a public portfolio repo named after youfirstname-lastname — with a READMEPublic is the point — a reviewer must be able to open it without logging in. Check yours in an incognito window. Name it for the person, not a course: it outlives every class
5Add BIO.md and RESUME.md (the draft-and-review step below helps you write them)The two highest-leverage, lowest-effort career artifacts you can ship this week

Paste your portfolio repo URL

Saved only in this browser. It lets each project's stage pages check GitHub for your submissions and unlock the next stage's checklist — it's pacing, not a grade, and nothing about your repo leaves your machine except the check itself.

What GitHub actually is (the 30-second version)

GitHub is Google Docs for code and documents — a cloud platform for version control. Three things it buys you, and why each one matters here:

WhatWhy it matters
Version historyEvery save (a commit) is permanent and described. Something breaks? Roll back to any earlier version — nothing is ever really lost.
Portfolio artifactYour profile is public. Employers and grad programs look — a clean repo is evidence you can point to, not a claim you make.
Submission is the audit trailIn every course here you "submit" by committing. Your commit history is the record of what you did and when — no separate upload.

Two copies: local and remote

Every repository exists in two places at once, and most first-week confusion is really confusion about which one you are looking at.

LocalRemote
WhereA folder on your own machineOn GitHub's servers, at github.com/you/your-repo
Who can see itOnly youAnyone, if the repository is public
What it holdsYour files, plus the history of every commit you have madeThe history of every commit you have pushed
Changed byEditing files, then committingPushing — nothing else

Saving a file changes nothing anyone else can see. Committing changes nothing anyone else can see. Only a push moves work from your machine to GitHub. This is why "I definitely did it" and "it is not in your repository" are both true more often than you would expect — the work exists, locally, and was never pushed.

The reverse trip is pull: it brings commits from the remote down to your machine. You need it when you have worked from a second computer, edited a file on github.com, or are working with anyone else.

The three verbs: add → commit → push

The whole of Git you need to start is three moves, run every time you finish a piece of work. There are two ways to run them — a visual app (GitHub Desktop, the easiest start) or the command line. The mental model is identical; pick whichever you like.

VerbWhat it doesIn GitHub DesktopCommand line
add (stage)Pick which changed files go in this saveChanges tab — tick the filesgit add .
commitA permanent, described snapshot — your save pointType a Summary, click Commit to maingit commit -m "Stage 1 memo"
pushUpload your commits so they land on GitHub (and reach your instructor)Push origingit push

Descriptive commit messages, always

A commit message is a note to your future self and your reviewer. Write "Add bio focused on FX and emerging markets", not update or fix. Every course here grades commit hygiene in part — at least two meaningful commits per stage.

No install at all: edit right on github.com

You don't strictly need Desktop or a terminal to submit small text files — the GitHub website can do it. On your repo page:

Git won't track an empty folder

Git tracks files, never empty directories — which is exactly why the repo skeleton drops a stub README.md in every folder. That one-line README is what makes the folder exist in the repo at all. Don't delete them.

.gitignore — deciding what never enters the history

Git's central promise is that nothing is lost. That promise runs in both directions: a file committed once stays in the repository history even after you delete it, because the history is the record of what was true at each commit. Deleting the file in a later commit records the deletion — it does not remove the earlier copy, and anyone can still read it. Removing something from history properly means rewriting every commit after it, which is disruptive and easy to get wrong.

So the only clean approach is to keep the file out in the first place. That is what .gitignore does: a plain-text file at the repository root listing patterns Git should pretend it cannot see.

Two categories belong in it. Junk — the hidden temp files Office and your operating system create constantly, which are noise in a diff and confusing to a reader. Anything that must never be published — credentials, personal data, licensed material. The full list and the reasoning are on AI conventions; the mechanical half is here.

Create the file at the repository root. The leading dot is required. On Windows, save it from a text editor with quotes around the name — ".gitignore" — or Notepad will append .txt and it will not work.

# Office and OS temp files
~$*.xlsx
~$*.xlsm
~$*.docx
~$*.pptx
.DS_Store
Thumbs.db

# Editor backups
*.tmp
*.bak
*~

# Never publish
.env
*.key
*.pem
secrets/
private/

If ~$model.xlsx or anything like it ever appears in your Changes panel, the file is missing, misnamed, or in the wrong folder. Fix that before committing rather than after.

Starter prompt — generate your own

Generate a .gitignore for a public GitHub repository that holds Excel workbooks,
Markdown documents, and exported chart images, worked on from both Windows and macOS.

Include patterns for Office lock and temp files, OS metadata files, editor backups,
and anything that would carry credentials or an environment file. Add a comment above
each group explaining what it catches. Do not exclude .xlsx, .md, .png, or .csv —
those are the deliverables.

Read every line before committing it. Generated ignore files sometimes exclude a whole file type you actually need to submit, and the failure is silent: the file simply never appears on GitHub, and you find out when somebody tells you your work is missing.

How work is submitted

Committing and pushing is the submission. Work is graded by inspecting the repository at the deadline, so the commit history is both the deliverable and the record of when you did it. There is no separate upload of the files themselves.

The one thing that goes to Lamaku is the pointer: your public repository URL, submitted once. After that, everything you push is visible without any further action from you. Confirm the URL opens in a private browser window — if it asks for a login, the repository is still private and nothing you push can be read.

Two habits make this work in your favor rather than against it:

Revisions after the deadline

Improvements you commit after a deadline can raise a score. The repository is re-read once after the deadline passes, the same criteria are applied to whatever state it is in, and the result stands — a sharper hypothesis, a real bio, a fixed .gitignore all count. You do not need to email anyone or open an issue; revise the files and push. One re-read per stage, and the score locks when it runs.

When something goes wrong (it will)

Six things trip up nearly everyone the first week. None are a big deal — Git tracks everything, so almost nothing is truly unrecoverable.

SymptomWhat happenedFix
"Everything up-to-date" but nothing shows on GitHubYou committed but didn't push — or never staged the fileStage the file, Commit, then Push origin (CLI: git add .git commitgit push)
fatal: not a git repositoryYour terminal isn't inside the project foldercd firstname-lastname to step into the cloned folder first
Edited the wrong file, want it backNothing lost — the last commit still holds the good versionDesktop: right-click the file → Discard changes. CLI: git checkout -- filename
rejected — failed to pushA newer commit exists on GitHub (you pushed from another device, say)Pull first, then Push (CLI: git pullgit push)
You asked an AI to commit and push for you, and it said it can'tIt's telling the truth. A chat window's repo connection reads — only a coding tool writes. Both vendors work this wayAdd the file on github.com as above — for a memo it's faster anyway. Full diagnosis: When the AI says it can't commit
A text editor opened and you're stuckYou ran git commit with no message, so Git opened one for youType your message, press Esc, type :wq, press Enter. Avoid it entirely: always git commit -m "your message".

Git cheat sheet

Seven commands cover almost everything you'll do this term. Keep this open in a tab.

CommandWhat it does
git clone <url>Download a repo for the first time
git statusSee what's changed
git add .Stage all changes for the next commit
git commit -m "msg"Save a described snapshot
git pushUpload commits to GitHub
git pullDownload the latest changes from GitHub
git log --onelineView commit history, one line each
Useful linkWhat it's for
github.comCreate an account, view repos
desktop.github.comGitHub Desktop — the visual Git client
education.github.comStudent Developer Pack — free Pro with your .edu email
git-scm.comInstall Git (for the command line)
code.visualstudio.comVS Code — a free text editor

Step 2 — Tell your AI how you want to work (~5 min)

There's no single right way to use an LLM — there's a default pattern the courses recommend (AI drafts, you edit and own the result) and then there's your way. Pick what fits you below. Your choices are saved in this browser and Kumu reads them on every page, so the tutor adapts to you instead of lecturing you with rules.

What role would you like the LLM to play in drafting your bio and resume?

Saved. Kumu will work this way whenever you bring it your bio or resume — and if you use any AI on a career document, add a one-line disclosure at the bottom naming the tool and what it did.

How do you like things explained?

Saved. Every Kumu answer on this site will use this style.

When your reasoning has a gap, how should Kumu tell you?

Saved. (You can come back and change any of these — Kumu updates immediately.)

Would you like to turn these preferences into a reusable skill — a file that teaches any Claude session how you work, forever?

A skill is just a Markdown file (SKILL.md) in your repo that an AI reads before helping you — your preferences, your standards, your examples. Committed to your portfolio, it follows you to every project and every job. This is the seed of your personal AI toolkit.

Step 3 — Draft & review your bio and resume (~20 min)

Your portfolio needs a 150–200 word BIO.md and a one-page RESUME.md, both in Markdown. Kumu works these with you, in whatever role you chose above — career documents aren't graded analysis, so drafting help is fair game. Structured starting points: the course repo's bio template and resume template.

Own the words — and disclose

Run 2–3 angles, pick the strongest, then edit until it sounds like you — the first AI draft is rarely the best one. If AI helped, add one line at the bottom of the file: "Drafted with help from Claude (Anthropic, 2026); reviewed and edited by me."

Step 4 — Start your personal LLM foundation

Four habits separate people who use AI from people who get compounding value from it. You'll practice all four in your courses; they're listed here because they're not really course habits — they're career habits.

HabitWhat it isCareer payoff
A personal preferences fileAn AGENTS.md in your repo — who you are, how you like to work, your standards — plus a one-line CLAUDE.md pointing at it, so any tool finds it. What goes in it →Every AI session starts warm instead of cold — at any employer, on any project
SkillsReusable SKILL.md files for tasks you repeat — resume tailoring, memo formatting, model checkingYour best workflows become one-line invocations instead of re-explained instructions
Slash commandsShort command files (e.g. /review-bio) that trigger a skill with one keystroke in tools like Claude CodeThe difference between "I know how to prompt" and "I have tooling"
The prompt logA running prompt-log.md of meaningful AI sessions: what you asked, what it got wrong, how you caught itVerifiable AI literacy — the exact evidence employers are starting to ask for
Decision memosA dated file in docs/decisions/ each time you decide something you'd otherwise have to re-argue laterMemory that outlives the conversation — for your teammates, for future you, and for the model

Why decision memos matter more than they look like they do

The other three habits make an AI session start well. This one is what stops you from having the same session again in six weeks.

A decision memo is a short dated file recording something you settled — a tool, an approach, a structure, a thing you tried and rejected. It reads as bureaucracy until the first time you need one, and then it is the most valuable file in the repository, because it serves three readers at once:

Four fields carry it: what was decided · why · who decided it · what would reverse it. The last one is what separates a decision record from a diary, and it is the one everybody skips. A decision nobody can name the conditions for undoing isn't a decision — it's a habit that hardened. The structure is on Deliverable templates; the courses here use it for every engagement's recommendation memo, so you will have written several before the term is out.

This site runs on the practice it is describing

Kumu is built out of a repository whose docs/decisions/ folder holds exactly these memos — why the site is organized by subject rather than by course code, why cases are named for concepts, what the AI-use boundary is and what would move it. When a decision here gets revisited, the memo is what gets read first, and more than one proposal has been withdrawn because a memo already answered it. The habit is not being recommended from theory.

Created a skill in Step 2? Commit it to your portfolio repo now — .claude/skills/ is the conventional home — and it's real: version-controlled, portable, improvable.

Next stop, when a course project reaches the stage where an AI does the assembly: read the AI Tools Lab — which tool to open, how to hand it your repo, and how to stay the auditor while it types.

Onboarding checklist

Check yourself