SGA Dental Partners · Internal

Claude Code Flight Plan

The step-by-step walkthrough for getting Dallas fully set up on Claude Code — installs, accounts, concepts, first projects, and the habits that make it click. Work top to bottom; check things off as you go (progress saves in this browser).
0% complete ·
Step 0

Start here — what this is and how we'll use it

This page is the whole onboarding, in order. Scott and Dallas walk it together on day one; anything marked DALLAS can be done as homework beforehand. Tags show who does each step.

"This isn't about learning to code. It's about learning to hand off problems to something that can build for you. Your job is to describe clearly and judge the result." The framing for everything below. And the only question that matters after each task: did that solve your problem — yes or no?

The triangle — the one mental model to get first

Three pieces, and how they relate. If this clicks, everything else is detail.

GitHub (cloud) the shared, saved copy Your laptop folder the working copy — what Claude actually reads and edits CLAUDE.md the note Claude reads first, every session — "how we do things here" clone / pull down commit + push up lives inside the folder versioned + shared too
GitHub is the shared cloud copy · the laptop folder is the working copy Claude reads · CLAUDE.md rides inside it
Dallas: bring three real problems to the first session DALLAS
A blank tool is paralyzing; three real problems make the training teach itself. Bring a mix: one quick win (finishable in the session), one medium task, and one meaty problem that shows the tool's real range. Jot them down before day one.
Both: skim this page top to bottom once before doing anything TOGETHER
Five minutes. Just to see the shape of the journey — mental model → installs → accounts → first project.
Step 1

Concepts — the vocabulary, in plain English

Ten terms cover 95% of everything. Claude will gloss any word the first time it uses it — and you can always ask "explain that like I've never coded." Skim these once — don't memorize. They'll click when you touch them; come back whenever a word bugs you.

The tool
Claude Code (Desktop app)

An AI agent: you describe an outcome in plain English, it does the work — reads and writes files, runs tools, builds dashboards, makes spreadsheets. The Desktop app is the friendly window around it. No terminal needed.

Standing instructions
CLAUDE.md

A text file at the top of your project that Claude reads first, every session — who you are, how the company works, the rules. There are levels (a personal one in your home folder, a project one in the repo) — focus on the project one; it's shared through GitHub. Anything you re-explain twice, say: "add that to the CLAUDE.md."

What it remembers
Memory

Claude keeps notes between sessions (plain markdown files + an index it loads every time). Yours arrives pre-seeded with SGA knowledge — the vernacular, data rules, metric traps — so day one, Claude already knows how SGA works.

Packaged know-how
Skills

Reusable workflows Claude already knows: the SGA dashboard look, Excel exports, the "?" metric explainer, guided tours. Kit ships 8. You just ask — "build me a dashboard" — and Claude picks the right ones.

Your own routines
Agents

An agent is just saved instructions plus permission to use tools. Do a task once conversationally (a monthly reconciliation, an Excel pull-and-report), then say "save this so I can rerun it monthly." The conversation IS the recording — no screen capture, no programming. Next month: "run the September one."

Data doors
Connectors

Secure doors from Claude to company data. You get two: the Crosswalk API (the live practice roster — a simple key-protected lookup) and the sga-data connector (an MCP door to governed Power BI / Dental Intel numbers — permission-checked and audited).

Safety valve
Plan mode

Claude proposes a plan and waits for your OK before touching anything. Start non-trivial tasks here — pick Plan in the mode selector next to the send button. The other modes just change how much it asks per step.

The shared copy
Repo, fork, commit, push

Repo = the project folder with full history. Fork = your own copy on GitHub linked to the original. Commit = save a named snapshot. Push = upload it. Claude runs all of this for you — you just say "commit this."

Publishing
Deploy (Cloudflare Pages)

"Deploy" = put a dashboard on a live URL you can send to anyone. Claude does it; the deliverable is always the link, not a file path.

Usage
Your seat & limits

You're on SGA's Claude Enterprise account — you just sign in with your work login; there's no bill to watch. Seats do have weekly usage limits, so Claude works lean and warns before heavy multi-agent runs. Settings → account shows what you're signed into.

The one hard rule — no PHI, ever. No patient names, phones, emails, birthdates, appointment-level rows, clinical notes, or claim detail — not in a prompt, a file, or a page. Practice-level and aggregated numbers are fine. Unsure? Leave it out and ask. (Company policy — our agreements with Anthropic are defense in depth, not permission.)
Step 2

Install — six tools + one setup step, in this order

All free. Defaults are fine everywhere. Do these as homework before day one DALLAS. After each install, run the verify command in PowerShell (press Win, type "powershell", Enter). Installers may pop a Windows admin (UAC) prompt — if it asks for an admin password you don't have, stop and ping Scott/IT. You'll never operate most of these yourself — you're stocking Claude's garage. It drives; you talk.

When anything goes wrong — the unstick ritual (every time): ① Copy the exact error text (red text, popup, whatever). ② Paste it to Claude with one line of context: "I got this when I ran the git install check — what do I do?" (Before Claude is set up, paste it into ChatGPT or claude.ai — same move, and you already know how.) ③ Try the fix once. ④ Still stuck after ~15 minutes? Screenshot + message Scott. That's not failing the onboarding — that is the onboarding. Never sit stuck longer than 15 minutes.
Most common one: PowerShell says 'git' is not recognized (or node/python) right after an install → close PowerShell and open a fresh one — already-open windows don't see new installs.
1 · Git for Windows
Version control — also gives Claude its command shell. Install before first launch of the Claude app. Keep the default "Git from the command line and also from 3rd-party software."
Download: git-scm.com/download/win
git --version
2 · GitHub CLI
Lets Claude talk to GitHub (sign-in, forks, PRs) without you managing passwords. Take the .msi, defaults.
Download: cli.github.com
gh --version
3 · Node.js (LTS)
Powers dashboard deploys and page testing. Choose the LTS installer, defaults.
Download: nodejs.org
node --version npm --version
4 · Python 3.12+
Powers Excel file generation and analysis scripts. Check "Add python.exe to PATH" in the installer — the one box that matters. Then install the two libraries below.
Download: python.org/downloads
Windows 11 trap: if typing python opens the Microsoft Store, the PATH box was missed — rerun the installer and check it. And pip install printing a wall of text with yellow warnings is normal; success = Successfully installed … at the end.
python --version pip install openpyxl pandas
5 · Claude desktop app
The main event. It's ONE app with tabs — Chat, Cowork, and Code. Claude Code lives in the Code tab; that's where all of this happens. Install now; you'll sign in with your @sgadental.com work account in the next section.
Download: claude.com/download
6 · Handy — talk instead of type (recommended)
Open-source voice dictation: hold a hotkey, speak, release — your words land in whatever app is focused, including Claude. 100% on-device (audio never leaves your machine — why we use it instead of Wispr Flow or Windows' built-in voice typing, which both go to the cloud). On first launch pick the Parakeet V3 model, then set your push-to-talk key.
Download: handy.computer · GitHub
winget install cjpais.Handy
7 · One-time tool setup (after 1–5)
Installs the browser-testing tool Claude uses to visually check dashboards before shipping. It drives your normal Google Chrome — if Chrome isn't installed yet, install it first from google.com/chrome (do NOT run npx playwright install chrome — it can overwrite your existing Chrome).
npm install -g playwright
Step 3

Accounts & keys — wiring up access

Four wirings: Claude (your company account — no key needed), GitHub, Cloudflare, and the crosswalk. Two involve secrets — the crosswalk key arrives from Scott; the Cloudflare token gets created together. Secrets move by password-manager share or in person, never email or chat, and never go into git.

Claude — sign in with your work account DALLAS
Open the Claude app and sign in with your @sgadental.com login — you're on SGA's Claude Enterprise account, already provisioned. That's the whole setup. Confirm: open Settings → your account — it should show the SGA Enterprise organization.
⚠️ Never set an ANTHROPIC_API_KEY on your machine. A key silently overrides your company seat and bills per-usage instead. If the account screen ever shows "API key" auth, tell Scott.
GitHub account + sign-in DALLAS
Create an account at github.com/join (work email is fine; turn on two-factor). Then authenticate — choose GitHub.com → HTTPS → Yes → sign in via browser. It shows a short one-time code, then opens your browser — paste the code there (browser didn't open? copy the printed link manually). In the identity lines, replace the whole <placeholder>, angle brackets and all:
gh auth login git config --global user.name "Dallas Morris" git config --global user.email "<your-github-email>"
Cloudflare account (for publishing dashboards) DALLAS
Homework part: just create the free account at dash.cloudflare.com/sign-up. That's it.
Cloudflare token — made together TOGETHER
The token screen is the most alien part of setup, so it happens with Scott (or ask Claude to walk you through it click by click): My Profile → API Tokens → Create Token → Create Custom Token → permission Account · Cloudflare Pages · Edit. It goes straight into a local .env file Claude sets up — and if a token is ever lost, no problem: delete it and make a new one. Never email or Slack a token to yourself in the meantime.
Crosswalk key — the practice-roster lookup SCOTTDALLAS
Scott hands over the crosswalk instructions doc (contains your personal API key — minted and live). Save it in a private folder outside the repo (e.g. C:\Users\<you>\sga-secrets\). Claude reads it from there whenever it needs a practice lookup.
Step 4

GitHub — your starter kit, and how the fork model works

Your starter repo is ready: github.com/scott4885/dallas-sga — it contains your CLAUDE.md, 8 SGA skills, the docs, and the pre-seeded memory. You don't work in Scott's copy — you fork it, so Scott can keep improving the kit and you can pull updates cleanly.

Scott's kit repo scott4885/dallas-sga "upstream" — updates come from here Your fork (on GitHub) <you>/dallas-sga "origin" — your cloud copy Your laptop folder where Claude works the local clone fork (once) clone (once) push (daily work) "fetch upstream" — pull Scott's kit updates (whenever announced) pull request — offer improvements back (later)
Fork once, clone once. Daily work pushes to YOUR fork; kit updates flow down from Scott's repo.
Scott invites Dallas to the private repo SCOTT
Needs Dallas's GitHub username first. Dallas accepts the email invite.
Fork + clone — one paste DALLAS
Creates your fork on GitHub, downloads it to your laptop, and wires both remotes (origin = your fork, upstream = Scott's kit). Paste the whole box into PowerShell exactly as-is — no placeholders to fill:
mkdir $HOME\Projects -Force cd $HOME\Projects gh repo fork scott4885/dallas-sga --clone cd dallas-sga git remote -v
git remote -v should list both origin and upstream (the --clone wires both automatically). If git says the repository can't be found, you haven't accepted Scott's email invite yet (previous step). And you can skip the typing entirely: once Claude is signed in, paste this box to Claude and say "run this for me."
Open Claude in the folder + first prompt TOGETHER
In the Claude app: Code tab → Local → open the folder…\Projects\dallas-sga itself, not a parent. The folder name shows at the top; that's how you know Claude is "in" it. First prompt: "What does this project do? Read the CLAUDE.md and the docs and summarize."
Load the memory seed + verify it took TOGETHER
Ask: "Copy every file from memory-seed/ into your auto-memory folder for this project, then read MEMORY.md." Then the check that matters — in a fresh session (/clear): "what do you know about how SGA data works?" If it answers with PBI/DI/crosswalk specifics, the seed took. If it shrugs, the copy silently failed — redo it now, not later.
Learn the update ritual (30 seconds, whenever Scott says "kit updated") DALLAS
Or just tell Claude: "pull the latest kit updates from upstream and merge them."
git fetch upstream git merge upstream/main git push
If the merge reports a conflict (you and Scott changed the same file), don't touch anything — tell Claude: "resolve the merge conflict, show me what you kept." Routine, not broken.

Your first 10 minutes in the app — what you'll actually see

  • You type in the box at the bottom; Enter sends. While Claude works, text and tool activity scroll past — you don't need to read all of it. Some tasks churn visibly for a few minutes. That's normal, not stuck.
  • Permission boxes are the safety system, not errors. Claude frequently asks "may I run this / edit this file?" with Allow/Deny. Week one: read what it wants, then allow.
  • Plan-mode approval looks like: Claude prints a numbered plan and stops. You approve by choosing accept — or just say "go ahead" / "change step 2 first."
  • The brake pedal: press Esc anytime to stop Claude mid-task. Nothing breaks — then tell it what to change.
  • Fresh start: /clear wipes the conversation; old sessions live in the left sidebar — click one to continue it. Closing the window loses nothing that was saved to files.
Step 5

The big picture — how everything talks to everything

One diagram of the whole machine. You speak (or type) on the left; live dashboards and Excel files come out the right.

You describe the outcome 🎙 Handy: hold-to-talk Claude Code (Desktop app) reads CLAUDE.md + memory uses the 8 SGA skills plans → asks → executes works inside your dallas-sga folder Crosswalk API live roster (~253 active practices) sga-data connector governed door → Power BI $$ + Dental Intel engagement permission-checked · audited Live dashboards Cloudflare Pages URL Excel / docs xlsx · decks · reports GitHub your fork = saved history of everything "look up Ressler" "pull new patients" "commit this" — save your work
You → Claude → data doors → shipped outputs, with GitHub underneath saving every version.
Where the money numbers come from: finance = Power BI (through the governed connector) · engagement / call funnel / follow-ups = Dental Intel · the practice list itself = the Crosswalk, always live, never a stale spreadsheet. Claude knows this map from its memory seed — but it's worth knowing yourself.
Step 6

Data connectors — wire them and prove they work

Two doors, ~10 minutes total. The finance door is deliberately permission-scoped — you'll see both an allowed pull and a denial, on purpose.

Crosswalk — test the roster lookup DALLAS
With the handoff doc saved in your private folder (Step 3), just ask Claude:
Look up the Ressler practice in the crosswalk — city, state, region, and ROD.
A real practice record back = the door works.
Scott registers Dallas in the data system SCOTT
One row in the admin console: dmorris@sgadental.com, role vp, scope all (DI full; production/patients/appointments/hygiene basic; finance held back to start).
Connect the sga-data door DALLAS
Already wired into your repo — when you open the project, Claude asks to enable the "sga-data" server: approve it. The first data call opens a Microsoft sign-in with your @sgadental.com account; sessions renew themselves. (If the prompt never appeared, tell Scott — the connector is defined in the kit's .mcp.json, so a fresh "pull kit updates" usually fixes it.)
Run the five proof queries TOGETHER
Ask each in plain English and check the expected result:
Ask ClaudeExpect
"Use sga-data: whoami"Your email, role vp, scope all
"List the metrics I can query"Your entitled set — finance metrics don't even appear
"New patients, last 3 months, network-wide"✅ Real Dental Intel rows — your wheelhouse
"Total production by month, last 6 months"✅ Headline production (the basic tier)
"EBITDA / P&L by practice last quarter"🚫 Denied — on purpose. Finance isn't in your grant yet; the denial (and its audit entry) is the credential system working. Access widens as needs are proven.
Step 7

Personalize — teach Claude who you are

Two files carry your identity: CLAUDE.md (standing rules, loads every session) and memory-seed/user_profile.md (who you are). Fill the placeholder brackets on day one — then make them smarter by mining your own AI history.

Mine your past AI conversations into your CLAUDE.md

You've been using ChatGPT (and some Claude) for a while — those conversations are a goldmine of "context you keep re-explaining." Harvest it once, keep it forever:

Grab your ChatGPT brain DALLAS
In ChatGPT: Settings → Personalization → Custom Instructions — copy both boxes into a text file. Then Settings → Personalization → Memory → Manage — copy the memory list too. (Optional, thorough version: Settings → Data Controls → Export data emails you an archive of every conversation; save the export into a folder in your repo and Claude can mine ALL of it at once.)
Mine, then shape — two prompts, in order DALLAS
Prompt 1 — the mining step (run it against your exported/pasted history; if your Claude app has "search past chats" enabled in Settings, it can search directly):
Here is my AI conversation history and my old custom instructions. Analyze how I work. Tell me the recurring topics, the details about my company and my projects that come up repeatedly, my preferences and working style, and anything you'd want to know upfront to help me more effectively.
Prompt 2 — the shaping step (run only after reviewing Prompt 1's answer — don't ask for both at once):
Based on everything you just found, update my CLAUDE.md and my user_profile memory. Organize it into: who I am, how I like to work, and any rules you should always follow. Keep it tight and practical — and show me the changes before saving.
Let Claude interview you (10 min) DALLAS
The fastest personalization is a conversation:
Interview me — one question at a time — about my role, what I'm responsible for, who I report to, what a great week looks like, and how I like information presented. Then fold what you learn into CLAUDE.md and user_profile. Show me before saving.
The habit that compounds: every time Claude gets something wrong because it lacked context — or you catch yourself re-explaining — say "add that to the CLAUDE.md." The file starts small and gets smarter forever. Don't write a novel up front.
Step 8

First week — from first prompt to first shipped dashboard

One focus per day. Rules to drill all week: start in plan mode · commit when things work · /clear between unrelated tasks · no PHI, ever.

Copy-paste starters for your first solo hour

For the blinking-cursor moment. Any of these is a great opening move:

What can you do for me? Look at this project and give me 5 concrete ideas ranked by usefulness.
Explain this folder to me like I'm brand new. What's here and why?
Look up [practice name] in the crosswalk and tell me about it.
I have an Excel file on my desktop — help me pull it in and summarize it.
Here's a problem I'm chewing on: [...]. Don't build anything — just talk me through my options.
What did we do last session? Catch me up.
DayFocus
1Wire everything on this page through Step 6, together. First prompt: "explain this project to me." Stay in plan mode. Run one of your three brought problems — the quick win.
2Explore: @filename to point Claude at a file; reopen yesterday's session from the left sidebar. Re-run the crosswalk + data queries solo. Do the personalization mining (Step 7).
3Make a small change → review Claude's proposed diff → approve → "commit this." The full loop: describe → review → accept → save. This loop is why it's safe to move fast — every change is reviewable and undoable.
4Branch → change → "open a PR" — the full GitHub flow once, reviewed by Scott. Plus: turn one repetitive task into your first agent ("save these steps so I can rerun them monthly").
5Build a small dashboard from sample data (the skills do the heavy lifting), add the "?" explainer, and deploy it live — first deploy together with Scott. Send someone the URL. 🎉
Wk 2A real task on real (Phase-A) data through the sga-data door. Tackle the meaty problem you brought. Review week-one usage with Scott and tune the working rhythm.

Teaching agents — the reconciliation example

Don't start with "let's build an agent." Start by doing the task once, live, in plain conversation: walk the Excel file in, have Claude pull the data and report out. When it's right, say the magic sentence — "save this as something I can rerun every month." That's it: the conversation was the recording. No screen capture, no programming — Claude bottles the steps into a reusable routine. Next month: "run the September one." Need a tweak? Say what changed, in words. This is the pattern for finance agents, monthly reconciliations, Excel extract-and-report jobs — any repetitive task in the company.

Step 9

Tips & tricks — the ones that actually move the needle

Ten habits that separate "meh" results from great ones.

1
Talk to it like a smart new hire — outcome first.

Full sentences, context, the why, and the problem you're solving — not step-by-step instructions. Let Claude figure out the how; you judge the result: did it solve it, yes or no?

2
Expect it to be wrong sometimes — confidently.

That's normal texture, not a sign you broke it. Your job was never to trust it; it's to check it. The magic isn't that it's always right — it's that a redo costs one sentence.

3
When it goes sideways, just say so plainly.

"That's not what I meant — I actually wanted X." It course-corrects instantly. No need to start over.

4
Let it ask questions first.

"Ask me anything you need before you start." It surfaces the things you forgot to mention — huge for avoiding wrong turns.

5
One problem at a time.

Small clear chunks beat one giant tangled request. And when a conversation gets muddled, /clear and start fresh — faster than untangling.

6
Tell it who the work is for.

"This goes to leadership" vs "just for me" changes the polish, the caution, and the checking it applies.

7
Ask it to explain its thinking.

"Walk me through what you just did." It teaches as it goes — the fastest way to build your own confidence.

8
Use it to think, not just to build.

"Here's my problem — what are my options?" before committing to anything. It's a genuinely good brainstorming partner.

9
Ramble, then ask it to clean up.

You don't need the perfect prompt. Talk messy (hold the Handy key and think out loud), then: "help me tighten this up."

10
Save the winners.

When a prompt works really well — "add that to the CLAUDE.md." Your setup gets smarter every week you use it.

House rules (the SGA-specific ones)

  • Plan mode first (the mode selector next to the send button → Plan) for anything non-trivial — approve before work starts.
  • Usage awareness: your seat has weekly usage limits. Heavy multi-agent runs eat them fast, so Claude warns before expensive patterns — that's it doing its job.
  • Numbers someone will quote get checked a second way before they ship (the kit's operating manual has the checklist — Claude follows it).
  • Ship results, not drafts: no "v3 final corrected" — the reader sees the clean answer.
  • Secrets stay out of git and out of chat. Claude proposing to commit a key = stop and flag it.
  • No PHI. Ever. When unsure, leave it out and ask.
Reference

Glossary — the terms we actually use

Every term you'll hear in week one, in plain English. Type to filter. (And remember: Claude will gloss any term on the spot — just ask.)

TermPlain EnglishWorld
AgentAI that does multi-step work for you — reads files, runs tools, builds things. Your own saved routines are agents too: saved instructions + permission to use tools.Claude
CLAUDE.mdThe standing-instructions file Claude reads at the start of every session. Project-level one (in the repo) is the one that matters.Claude
MemoryNotes Claude keeps between sessions (markdown files + an index). Yours comes pre-seeded with SGA knowledge.Claude
SkillA packaged workflow Claude already knows (the SGA dashboard look, Excel exports, the "?" explainer…). You ask; it picks.Claude
MCP / connectorA secure door from Claude to an outside system — sga-data is one. (The Crosswalk is a plain key-protected web API — same idea, simpler plumbing.)Claude
Plan modePick Plan in the mode selector next to the send button — Claude proposes a plan and waits for your OK before doing anything.Claude
Session / contextOne conversation. Claude's short-term attention span lives inside it — /clear starts fresh; yesterday's sessions live in the left sidebar.Claude
TokenThe unit AI usage is measured in (≈ ¾ of a word). Why long, rambling sessions "cost" more of your seat's weekly limit.Claude
DiffThe before/after view of a proposed change — what you review before approving.Claude
Terminal / PowerShellThe type-commands-directly window in Windows. You use it only during setup — after that, Claude runs the commands for you.Claude
Slash commandAnything starting with / controls the app itself instead of asking Claude a question — e.g. /clear. (Some terminal-only ones don't exist in the app; the app's buttons cover them.)Claude
Permission promptThe Allow/Deny box Claude shows before running a command or editing a file. The safety system working — not an error.Claude
.md (markdown)A plain text file with light formatting (CLAUDE.md, MEMORY.md). Opens in Notepad; nothing special.Claude
RepoA project folder with a saved history of every version.GitHub
ForkYour own copy of someone's repo on GitHub, linked back to the original.GitHub
CloneDownloading a repo to your laptop — the working copy Claude actually reads.GitHub
CommitA saved snapshot with a short message. "Commit this" = save my work.GitHub
BranchA side copy for experimental work, so main stays safe until it's ready.GitHub
Push / pullUpload your commits to GitHub / download changes from it.GitHub
PR (pull request)"Please review and merge my branch" — how changes get a second set of eyes.GitHub
mainThe main branch — the "real" current version of the repo that branches eventually merge back into.GitHub
Merge conflictYou and Scott changed the same lines; git asks a human to pick. Tell Claude "resolve the merge conflict" — routine, not broken.GitHub
origin / upstreamIn your fork setup: origin = your fork (daily pushes), upstream = Scott's kit (updates come from there).GitHub
DeployPublish a page to a live URL (Cloudflare Pages). The deliverable is the link.Claude
.envA local file holding secret keys. Never committed, never pasted into chat.Claude
SGABy itself = all three business units, the full ~260-practice network (NOT just East).SGA
Gen4SGA West.SGA
ModisSGA Specialty.SGA
"SGA" (legacy use)In older docs/data, "SGA" alone can mean SGA East specifically. Ambiguous? Ask.SGA
Business UnitThe division field to cohort practices by (NOT "Region" — that field misleads).SGA
RODRegional Operations Director — the field leader a group of practices reports to.SGA
OMOffice Manager — runs a single practice's front office.SGA
DSODental Support Organization — what SGA is: the parent supporting 260+ individually-branded practices.SGA
CrosswalkThe live master list of practices (names, locations, regions, RODs, IDs). Always the API, never an old spreadsheet.SGA
PBI (Power BI)The source of truth for money — production, collections, budget. Reached through the governed sga-data door.SGA
DI (Dental Intelligence)The source for engagement — call funnel, follow-ups, reappointment. Not for finance.SGA
Production / collectionsDentistry billed for vs cash actually collected. Related, never identical. Watch gross vs net production — net (after adjustments) is the standard for comparisons.SGA
ProviderAny clinician who produces: dentists and hygienists. (The "provider" in visits-per-provider-per-day.)SGA
HygieneThe cleanings/recare side of the practice, vs doctor (restorative) work. Production usually splits doctor vs hygiene.SGA
Recare / reappointmentGetting hygiene patients rebooked before they leave. Recent months always look low (future visits haven't happened yet) — judge with a maturation window.SGA
NPNew patients.SGA
Visits per provider per dayOur default way to compare practices fairly — normalizes for office size before comparing totals.SGA
PHI / Phase APHI = protected health information (patient-identifiable data) — never enters this environment. Phase A = the safe zone: practice-level info and aggregated numbers.SGA
Appointments feedThe data feed from practice management systems. (Always call it this — not by any vendor name.)SGA
Step 10

Final check — prove the whole machine works

Run these in order in one session. All green = onboarding complete.

1 · Settings → account shows the SGA Enterprise organization (NOT an API key)
2 · "Summarize this project" → sensible answer from CLAUDE.md
3 · Fresh session: "what do you know about SGA data?" → answers from the memory seed
4 · Crosswalk lookup returns a live practice record
5 · sga-data whoami → your identity, role, scope
6 · A Dental Intel pull returns rows; the EBITDA test is denied (expected!)
7 · "Make a tiny Excel file with 3 rows" → opens in Excel
8 · Tiny page deployed to Cloudflare → live URL loads
9 · git remote -v shows origin (your fork) + upstream (the kit)
10 · git log shows your commits (passes after your first commit — Day 3); no secrets anywhere in the repo
Done? You now have what took Scott months to assemble: a personalized AI teammate with SGA's knowledge pre-loaded, governed data access, and a publishing pipeline. Go run the three problems you brought.

Every link in one place

WhatLink
Git for Windowsgit-scm.com/download/win
GitHub CLIcli.github.com
GitHub — create accountgithub.com/join
Node.js LTSnodejs.org
Pythonpython.org/downloads
Claude Code Desktopclaude.com/download
Handy (voice)handy.computer
Cloudflare — create accountdash.cloudflare.com/sign-up
Your starter repogithub.com/scott4885/dallas-sga