Get the free Claude course and the Skill Builder.
11 short lessons on chat, Cowork and Claude Code, under an hour in all. The Skill Builder asks about your business, then writes skills that fit it. The pack adds a slides skill and the 17 prompts from Claude Code for Beginners, for a live website and a CRM you own.
A free course from UpSys
Claude Start
Claude set up around your business, in chat, Cowork and Claude Code.
- 11 lessons
- 6 skills
- 27 prompts
For Claude
The files you download with the course
skill-builder The interview
One question at a time. Wait for the answer. Never send the whole list at once, because a wall of questions gets a wall of one-word answers.
- The business in one breath. What do you sell, to whom, and roughly for how much? If a
CLAUDE.mdorcontext/folder exists here, read it first and only ask what it doesn't say. - Last week, out loud. "Walk me through last week, Monday to Friday. What did you actually do?" Push for the boring parts. Invoice follow-ups never come up unless you ask.
- The 4 corners. For each one, ask what repeats: sales (inquiries, proposals, follow-ups), delivery (onboarding, updates, handovers), marketing (posts, emails, videos), admin (invoices, contracts, scheduling). One question per corner, and ask for the last real example of each.
- The fix they always make. For every repeated job: "When Claude or a teammate does this for you, what do you always have to fix?" Whatever they name is the best rule the finished skill will have.
Then stop asking and hand back a table, one row per repeated job:
skill-builder
Interviews you about your week, then writes a skill for each job you repeat.
- The business in one breath. What do you sell, to whom, and roughly for how much? If a
website-and-crm/prompts.md 12. The CRM
Add a login page for my team using Supabase Auth, with email and password. Only people I add myself should get in, so tell me where to switch off public sign-ups in the Supabase dashboard, and how to add my own account there with a password.
Build the CRM at /crm. Only logged-in users can open it; everyone else goes to the login page. Show every lead as a card on a board with 4 columns: New, Contacted, Call booked, Won. I want to drag a card to another column to change its status, and click a card to see the full message and the date it came in. Use only DESIGN.md tokens and our shadcn-svelte components, so it looks like the same company as the website. Put a link to it in the website footer.
When I open a lead, add a notes box where my team can write what was said on the call. Save it as they type, and show the first line of the note on the card.
Anything that errors from here on, copy the error and paste it with one line:
The board says: [PASTE THE ERROR]. Fix it.
website-and-crm/prompts.md
The 17 prompts from Claude Code for Beginners. Your website, and the CRM its leads land in, live.
presentation The deck from a brief
Read first
Read these if they exist. Don't ask for them if they don't.
context/offer.mdandcontext/voice.md: what we sell, who for, and how we talkcontext/brand/: the base template, the colors, the fonts and the logo filescontext/clients.md(orcontext/clients/<client>.md) and the call transcript, when the deck is for one client
No template? Say so in one line at the top, then build on plain black and white with one accent color. Don't invent a brand.
presentation
Your notes from a call become a slide deck in your brand template.
project-instructions.md I run [business name], a [what you do] business based in [where]. We serve [who, specifically: not "small businesses" but "agency owners between 5 and 30 people who bill for projects"].
What we sell: [the 2 or 3 things, with the price or range beside each].
How I talk: [3 adjectives you'd actually own, then one sentence about rhythm]. Short sentences. Contractions. I say [word you use] and never [word you hate].
What you should know that you can't see:
- [the constraint that changes every answer, e.g. "I work alone, so any advice that needs a team is useless to me"]
- [the number that matters, e.g. "my floor is $2,000 a project"]
- [the thing everybody assumes wrong about my business]
project-instructions.md
Fill in the brackets and every chat in your Project starts out knowing your business.
scope-and-price Scope it and price it
Read first
context/offer.md: the packages, the day rate, and the floor below which we say nocontext/clients.md, orcontext/clients/<client>.md: what an existing client already pays us for- The last 3 proposals in
outputs/, for the shape and the wording
Missing any of these, say which one is missing in one line at the top of your answer and carry on with what you have. Never stall on a missing file.
The task
scope-and-price
A new inquiry comes back as scope, exclusions, a price range and a next step.
follow-up-pack The follow-up pack
This is a work order. It names its inputs, its 2 outputs and what done means, so it runs the same way whether you typed one sentence or a scheduler did.
Inputs
Read everything in
inbox/. Anything goes in there: a CRM export, an invoice list, a screenshot of a pipeline, notes from a call. Then readoutputs/for last week's pack, because what matters most is what has not moved since.If
inbox/is empty, stop and say so in one line. Do not build a pack out of nothing.The rules
follow-up-pack
Open deals and unpaid invoices in one sheet, with the chase list in send order.
client-update The weekly client update
Read first
Read these if they exist. Do not ask for them if they do not.
context/offer.mdandcontext/voice.md: what we sell and how we talkcontext/clients.md, orcontext/clients/<client>.mdonce each client has a file: this client's scope, contacts and history- The last update sent to this client, in
outputs/, so this one does not repeat it
If you cannot find who the client is from the request, ask once, in one line, then continue.
client-update
Your raw notes become the weekly update a client reads.
call-to-actions Call to actions
Read the transcript, the notes or the memo. Pull out the decisions, what somebody now owes, and the questions nobody answered. Then write the email that goes back to the room.
The 6 steps
- Separate the decisions from the opinions. A decision can't be re-opened without a new conversation. "We should probably" isn't one, and neither is a preference nobody agreed to.
- Give every action one owner and one date. Nobody named on the call? Assign it to whoever spoke it and mark it
unconfirmed. Never write "the team". - Quote the words that set the deadline. One short quote beside a date stops the argument 2 weeks later.
- List what was raised and dropped. The question nobody answered is the one that comes back. Write "Nothing" only when you're sure.
- Copy money, dates and names exactly. Everything else can be paraphrased. When a figure is said twice with 2 values, give both and flag it.
call-to-actions
A call transcript becomes decisions, owners with dates, and the follow-up email.
go-live-checklist.md Lock the doors
.envisn't on GitHub. Open your repo on github.com and look. If you can see a file called.env, delete it, then make new keys in Supabase, because the old ones are public now.- Row-level security is on for every table. In Supabase, open the Table Editor and check each table. Anything marked "RLS disabled" can be read by anyone with your site's address.
- The CRM needs a login. Open
/crmin a private browser window. You should land on the login page. If you see the board, anyone can. - Public sign-ups are off. In Supabase, go to Authentication and open
go-live-checklist.md
10 checks before your site goes public, so only your team ever sees your leads.
11 lessons in 4 modules
Click a lesson to see what you'll have when it ends.
Get set upPick your plan and install Claude
Pick your plan and install Claude
Pick the plan that opens Cowork and Code, install the desktop app, and open Chat, Cowork and Code once each.