
我用 Claude Code 長出一套線上開課系統——賣課跟賣實體,本來就該共用一個後台
線上課也是商品。AgentCourse 是我在自己的電商系統上長出來的開課系統,為 12AI學院 建的。第一件做的事不是金流,是把課程內容拆開——因為線上課真正的問題不是賣不掉,是買了之後看不完,而那會直接吃掉你的回購。
上一篇講我用 Claude Code 蓋了一套自己的 DTC 電商系統。
這篇是第二段:在那個底座上長出一套線上開課系統,叫 AgentCourse。
它跟賣實體商品共用同一個後台、同一個購物車、同一次結帳。
這件事不是為了炫技。是因為線上課本來就是商品,它該走跟實體一樣的流程——加入購物車、結帳、付款、拿到東西。
差別只在拿到的東西是寄到你家,還是開通你的帳號。
為什麼不去買一套課程平台
12AI學院有十二個學院,每一個都要開課。
市面上課程平台很多,買一套最快。
我沒有。理由跟蓋電商系統一樣——我實際在用的,就要是真的拿出來賣的那一套。
如果我自己的課跑在別人的平台上,我對「開一門線上課到底難在哪」就永遠只有二手知識。而二手知識做不出好東西。
第一件事不是金流
大部分人加開課功能,第一個想的是收錢跟權限。
那些當然要做,也已經做完了。但那不是我第一個動手的地方。
我第一個動手的是課程內容長什麼樣子。
因為線上課最大的問題不在賣不掉。
在買了之後看不完。
這件事會直接吃掉你的回購
講到錢的部分。
一個看不完的課,會發生三件事——
第一,他不會買你第二門課。他心裡會記得「上次那個我沒看完」。
第二,他不會推薦給別人。沒有人會推薦一個自己沒上完的東西。
第三,退款的機率變高。
所以完課率不是一個「教育指標」,它是回購率的上游。
你花錢買來的那個客人,會不會變成第二次、第三次,就看他有沒有真的把第一次吃完。
但完課率差,是症狀不是病
我一開始把目標寫成「提高完課率」。後來改掉了。
這個區分很重要,因為它會做出完全不同的東西——
目標寫成完課率,做出來的是催促:三天沒上課寄信給你,進度停住就跳通知。
目標寫成學習體驗,做出來的是互動。
完課率差是線上課的共同症狀。真正的主因是呈現太無聊——幾乎就是自己看影片加老師講解,第一章到第十章長得一模一樣。
催他看完一個無聊的東西,跟讓那個東西不無聊,是兩件事。
所以我把課程內容拆開了
我把課程內容拆成三層:
單元 是最小的那塊,而且它是獨立的。
N 個單元組成一個課程主題。
N 個主題組成一門線上課。
獨立的意思是:每個單元自己帶著「我要長什麼樣」。第一章可以是一種排法,第二章可以是另一種,互不影響。
測試用的那門課現在有 38 個單元、12 個主題。
關鍵是:老師不會去設定
這是我覺得最值得講的一段。
一開始的做法很直覺:給每個單元一個「用哪種版型」的選項,老師想改就改。
問題是——老師不會改。
他忙著錄影片、寫講義、回學生問題。版型那一欄他會一直留空。
留空的結果就是整門課又長得一模一樣。那正是我要解的問題。
所以我換了做法:讓系統自己看這個單元在課裡扮演什麼角色。
看案例的、拆解表的、跟著做的、交作業的、直播的、純閱讀的——角色本身就決定了它該長什麼樣。
看案例的,問題要放在影片前面,還要框起來,不然會被當成影片說明滑過去。
拆解表的,內文放影片前面——學員回頭找的是那張表,不是那支影片,讓他少捲一次。
作業的,整個包成一張卡,捲到這裡就知道「要動手了」。
直播的,時間跟連結放最上面,因為打開它只想確認「現在能不能進去」。
結果是——那門課的版型欄位,一個都沒設定過。
但學員端實際畫出六種不同的樣子。
多元是預設值,不是老師額外做的功。 這一點對我來說是整件事的重點:任何需要老師「額外花力氣」才能達成的好,長期都不會發生。
上架一門課,是一支 Claude Code skill 在跑
把一份講義變成一門能賣的課,中間有八個步驟:讀材料、切章節、出作業、定價、寫銷售頁文案、選模版配圖、內容與影片上架、上架前檢查。
我沒有做一個後台精靈來帶老師走這八步。
我把它寫成一支 Claude Code skill。老師說一句「幫我把這份講義做成課」,它就會讀他的 PDF、提出切法、等他點頭、再一步一步寫進他的商店。
為什麼不是後台表單——因為這八步裡有一半的工作是判斷,不是填表。講義怎麼切、哪一段太長、銷售頁文案怎麼寫,這些沒有一個表單填得出來。
老實說還沒做完的
講師工作台只有後端。 老師要看得到自己學生的上課情形、批改作業、回留言,資料通道都通了,但畫面還沒做。
退款之後不會自動收回觀看權。 現在要人工處理,這條我知道會痛,還沒動到它。
這些我會照順序做,做完再寫。
回到生意上
如果你也在賣課,或打算賣課,我會建議你先問自己一個問題——
你的課,每一章長得一樣嗎?
如果一樣,那你的完課率問題大概不是學生的問題。
而完課率的問題,最後會變成回購的問題。
那才是真正在流血的地方。




