---
layout: doc
title: Workshop
permalink: /workshop/
description: "é¿éäºç¾ç¼ · èªç¶è¯è¨äº¤äºå¨æå®éªââç¨ä¸å¥å¥äººè¯ææ¥ AI 婿ï¼å®æä»å®è£
CLI å°è·é Maidan-Studio å
¨æµç¨ã约 90 åéã"
keywords: "ç¾ç¼Workshop,èªç¶è¯è¨äº¤äº,AI Agent,Maidan-Studio,ç¾ç¼CLI,卿å®éª,AI工使µ"
---
# é¿éäºç¾ç¼ · èªç¶è¯è¨äº¤äºå¨æå®éª
è¿æ¯ä¸ä»½é¿éäºç¾ç¼ç卿å®éªæå¼ãæä»¬æ¢ä¸ç§ç©æ³ï¼**ä¸åææ²å½ä»¤ï¼èæ¯ç¨ä¸å¥å¥"人è¯"ææ¥ä½ ç AI 婿宿å
¨ç¨æå»º**ãä½ åªè¦ææ³åçäºè¯´æ¸
æ¥ï¼AI 婿ä¼å¨èåèªå¨è°ç¨é¿éäºç¾ç¼ CLIï¼`bl`ï¼è¿å¥å·¥å
·å¸®ä½ æ§è¡ã
> **é¢è®¡ç¨æ¶**ï¼çº¦ 90 åéã
---
## ä½ éè¦å
åå¤ä»ä¹
æ¬å®éªåè®¾ä½ æè¾¹æä¸ä¸ª**éç¨ AI Agent**ï¼ä»»ææ¯æå·¥å
·è°ç¨ç AI 婿çå¯ï¼ï¼å¹¶ä¸å®å·²ç»è½å¤è°ç¨é¿éäºç¾ç¼ CLI ä½ä¸ºå·¥å
·ââå¯ä»¥æ¯ç»ç«¯è®¿é®è½åï¼ä¹å¯ä»¥æ¯éè¿ MCP éæçç¾ç¼å·¥å
·éã
å颿¯ä¸æ¥ï¼ä½ çå°ç齿¯ã**ð å¯¹ä½ ç AI å©æè¯´**ãå ä¸ä¸æ®µèªç¶è¯è¨ãä½ ç
§ç说å³å¯ï¼å©ä¸çå®è£
ãé
ç½®ãæ§è¡ãæéé½äº¤ç» AI 婿ã妿æä¸æ¥å®éè¦ä½ ç¡®è®¤ï¼æ¯å¦å®è£
软件ãåå
¥æä»¶ï¼ï¼ææç¤ºç¡®è®¤å°±å¥½ã
> ð¡ ä»"æ²å½ä»¤"å°"说人è¯"ï¼åæ¥è¦è®° `bl text chat --message "..."`ï¼ç°å¨åªè¦è¯´"å¸®ææµè¯ä¸ä¸å¯¹è¯ï¼é®å®ä½ 好"ãå½ä»¤æ¯ AI 婿çäºï¼æå¾ææ¯ä½ çäºã
---
## æ¼ç¤ºé¡¹ç®ï¼Maidan-Studio
**èç¹å¼ AI èªåªä½å·¥ä½æµç¼è¾å¨ ââ èªåªä½å
容ç产ç ComfyUIã**
æãéé¢ â ææ¡ â å¹³å°åå â å°é¢ â å¤é¡µå
容å¾ãè¿æ¡èªåªä½å
容ç产é¾è·¯ï¼åæå¯ææ½ãå¯ç¼æãå¯ä¿å为模æ¿çå¯è§å工使µã
| é¡¹ç® | 说æ |
| --- | --- |
| ææ¯æ | Next.js 15 + React Flow + Supabase + é¿éäºç¾ç¼ CLIï¼blï¼ |
**两æ¡å
ç½®ç产线ï¼**
| æ¨¡æ¿ | æµæ°´çº¿ |
| --- | --- |
| å°çº¢ä¹¦æ¥æ´-è½»éç | å
³é®è¯ â éé¢æç´¢ â å¤ç»´è¯å â é 1 â èæ¬çæ â ä¸å¹³å°æ¹å + å°é¢ |
| Omi å°çº¢ä¹¦å¾æ-ç²¾è£
ç | ç´ æ â ç¬è®°å¯¼æ¼ â èµäº§çæ¿ â å°é¢ + å¤é¡µå
å®¹å¾ |
---
## Step 1ï¼è·åé¿éäºç¾ç¼ API Key
è¿ä¸æ¥æ¯å¨ç½é¡µä¸å®æçï¼éè¦ä½ äº²èªæä½ï¼æ¶åè´¦å·ç»å½ï¼AI 婿ä¸ä¼æ¿ä½ ç»å½æä¿ç®¡å¯é¥ï¼ã
ç¹å»ä¸æ¹é¾æ¥ï¼æ³¨å/ç»å½é¿éäºç¾ç¼å¹³å°å¹¶å建 API Keyï¼
ð **[è·å API Key](https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&tab=app#/api-key)**
æä½æ¥éª¤ï¼
1. ç¹å»é¾æ¥ï¼ä½¿ç¨é¿éäºè´¦å·ç»å½ï¼æ¯ææ¯ä»å®/ééæ«ç ï¼
2. è¿å
¥ãAPI-KEY 管çã页é¢
3. ç¹å»ãå建æ°ç API Keyã
4. å¤å¶çæç Keyï¼æ ¼å¼ä¸º `sk-xxxxxxxxxxxxxxxx`ï¼ï¼ä¿å好å¤ç¨
> 没æé¿éäºè´¦å·ï¼æ³¨åæ¯å
è´¹çï¼æ°ç¨æ·é»è®¤æå
è´¹è°ç¨é¢åº¦ã
---
## Step 2ï¼å®è£
å¹¶é
ç½®é¿éäºç¾ç¼ CLI
让 AI å©æå¸®ä½ æå·¥å
Ꮳ
好ãæé¥åé
ä¸ã
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "帮æå
¨å±å®è£
é¿éäºç¾ç¼ CLIï¼bailian-cliï¼ï¼è£
å®ç¡®è®¤ä¸ä¸çæ¬ãæç Node.js çæ¬ä½ ä¹å¸®ææ£æ¥ä¸ä¸ï¼è¦æ± ⥠22.12ã"
AI 婿ä¼å¨èå宿å®è£
å¹¶æ ¸å¯¹çæ¬ï¼ç¸å½äºæ§è¡ `npm install -g bailian-cli` å `bl --version`ï¼ã妿 Node.js çæ¬ä¸å¤ï¼å®ä¼æéä½ å级ã
**é
ç½® API Keyï¼**
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "ç¨è¿ä¸ª API Key ç»ç¾ç¼ CLI ç»å½é
置好ï¼`sk-xxxxx`ã"
AI 婿伿å¯é¥é
置妥å½ï¼ç¸å½äº `bl auth login --api-key sk-xxxxx` æè®¾ç½® `DASHSCOPE_API_KEY` ç¯å¢åéï¼ã
> â ï¸ API Key æ¯ææåè¯ã建议åªå¨ä½ ä¿¡ä»»çæ¬å°ç¯å¢éäº¤ç» AI 婿é
ç½®ï¼ä¸è¦åå°å
¬å¼æ¸ éã
**å¿«éæµè¯ä¸ä¸ï¼**
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "ç¨ç¾ç¼å¸®ææµè¯ä¸ä¸å¯¹è¯ï¼è®©å®åä¸ªèªæä»ç»ã"
>
> "åç¨ç¾ç¼çæä¸å¼ å¾ï¼ä¸åªç©¿å®èªæçç«ï¼åå° images æä»¶å¤¹ã"
å¦æå¯¹è¯æåå¤ãå¾çè½çæï¼è¯´æå·¥å
·å·²ç»éäºã
> é¿éäºç¾ç¼ CLI 为 AI Agent èçï¼æ¯æ¡å½ä»¤å³ä¸æ¬¡å·¥å
·è°ç¨ãæä»¥ä½ å®å
¨å¯ä»¥ç¨èªç¶è¯è¨é©±å¨å®ââæ è®ºæ¯å¨ç»ç«¯ï¼è¿æ¯å¨ CursorãQwen CodeãClaude DesktopãWindsurfãCline çä¸»æµ AI Agent æ¡æ¶éæå®å½å·¥å
·éæã
---
## Step 3ï¼å
éæ¼ç¤ºé¡¹ç®
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "帮ææè¿ä¸ªé¡¹ç®å
é䏿¥å¹¶å®è£
ä¾èµï¼https://github.com/CzzzzzzJ/bailian-cli.git ï¼ç¨ pnpm å®è£
ã"
AI 婿ä¼å®æå
éãè¿å
¥ç®å½ãå®è£
ä¾èµï¼ç¸å½äº `git clone` + `cd` + `pnpm install`ï¼ã
> **åç½®ä¾èµ**ï¼Node.js ⥠22.12ãpnpm ⥠9ã妿 pnpm 没è£
æçæ¬å¤ªä½ï¼å¯ä»¥é¡ºå¸¦è®© AI 婿ï¼"å¸®ææ pnpm åçº§å°ææ°çã"
---
## Step 4ï¼é
ç½®ç¯å¢
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "帮æåºäº .env.example å建ä¸ä¸ª .env.localï¼æä¸é¢è¿äºå¼å¡«è¿å»ï¼
> - ç¾ç¼ç DASHSCOPE_API_KEY ç¨æåæé£ä¸ª key
> - Supabase ç URL å anon key æçä¸ç»ä½ ï¼ç¨äºç»å½ + æ¨¡æ¿æä¹
åï¼"
éè¦å¡«å
¥çç¯å¢åéï¼
```
# é¿éäºç¾ç¼
DASHSCOPE_API_KEY=sk-your-key
# Supabaseï¼ç¨äºç»å½ + æ¨¡æ¿æä¹
åï¼
NEXT_PUBLIC_SUPABASE_URL=https://.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your-anon-key
```
**æ°æ®åºè¿ç§»ï¼**
æ°æ®åºè¿ç§»éè¦å¨ Supabase Dashboard â SQL Editor éæå¨æ§è¡ï¼è¿é¨åå¨ç½é¡µæ§å¶å°å®æï¼ã便¬¡è¿è¡é¡¹ç®éç两个 SQL æä»¶ï¼
- `supabase/schema.sql` ââ 8 å¼ è¡¨ + 触åå¨
- `supabase/policies.sql` ââ RLS çç¥
> ä¸ç¡®å®æä»¶å
容æ¶å¯ä»¥é® AI 婿ï¼"帮ææå¼ supabase/schema.sqlï¼æè¦æ§è¡ç SQL è´´ç»æï¼æå» Supabase æ§å¶å°è·ã"
---
## Step 5ï¼å¯å¨é¡¹ç®
**ð å¯¹ä½ ç AI å©æè¯´ï¼**
> "帮ææè¿ä¸ª web åºç¨è·èµ·æ¥ï¼ç¨ 3030 端å£ãå¼å¯ turbopackã起好ååè¯æè®¿é®å°åã"
AI 婿ä¼å¯å¨å¼åæå¡å¨ï¼ç¸å½äº `pnpm --filter @maidan/web exec next dev --turbopack -p 3030`ï¼ã
å¯å¨åï¼æå¼ **http://localhost:3030** â æ³¨åè´¦å· â éæ©æ¨¡æ¿ â ä¿®æ¹ PromptTemplate éçå
³é®è¯ â ç¹å»è¿è¡ã
---
## Step 6ï¼å¨æä½éªå·¥ä½æµ
### æ ¸å¿ç©æ³
æ¯ä¸ªèç¹ = ä¸ä¸ªé¿éäºç¾ç¼è½åçå°è£
ï¼è¿çº¿ = æ°æ®ä»ä¸æ¸¸äº§ç©åç»ä¸æ¸¸ã
ä¸é¢è¿å¼ 表ï¼å·¦è¾¹æ¯ç»å¸ä¸çèç¹ï¼ä¸é´æ¯å®å¨èåè°ç¨çç¾ç¼è½åï¼ä»¥åä½ ç¨èªç¶è¯è¨æè¿°åä¸ä»¶äºæ¶å¤§æ¦ä¼æä¹è¯´ï¼ï¼
| èç¹ | èåè°ç¨çè½å | ç¨èªç¶è¯è¨æä¹æè¿° |
| --- | --- | --- |
| TopicSearch | ææ¬å¯¹è¯ï¼qwen3.7-maxï¼ | "帮æåéé¢æç´¢ï¼æç»æå JSON è¾åºåééé¢" |
| ScriptGen | ææ¬å¯¹è¯ï¼qwen3.7-max / qwq-plusï¼ | "æ ¹æ®éå®çé¢ç®çæèæ¬ï¼è¦æ·±åº¦æèå°±åå°å¸¦æèé¾ç模å" |
| CoverGen | å¾åçæï¼qwen-image-2.0ï¼ | "æ ¹æ®èæ¬çæä¸å¼ å°é¢å¾" |
| AssetGen | å¾åç¼è¾ï¼å¾çå¾ï¼ | "ç¨è¿å¼ å¾åå¾çå¾ï¼å¥ä¸ IP 形象å飿 ¼" |
| XHSContentGen | å¾åç¼è¾ï¼å¹¶è¡ï¼ | "å¹¶è¡çæå¤é¡µå°çº¢ä¹¦å
容å¾" |
> å¨ç»å¸ä¸ï¼ä½ é常æ¯ç¹èç¹è·æµç¨ãä½çè§£è¿å±å¯¹åºå
³ç³»åï¼ä½ ä¹å¯ä»¥è±ç¦»ç»å¸ãç´æ¥å¯¹ AI 婿ç¨èªç¶è¯è¨è¦åæ ·ç产ç©ã
### æä½è¦ç¹
- **æå¾å
¥ç»å¸**ï¼ç´æ¥æå¾çæè¿ç»å¸ â èªå¨ä¸ä¼ â å建 ImageInput èç¹ â è¿çº¿å° AssetGen ä½ä¸º IP 形象ã
- **Skill æ¨¡æ¿æè½½**ï¼å¨èç¹æ½å±éæè½½ Skill markdownï¼è¿è¡æ¶ä¼èªå¨æ¼è¿ system promptã
- **äººå·¥å®¡æ ¸èç¹**ï¼æµç¨è·å°ãäººå·¥å®¡æ ¸ãèç¹ä¼æåï¼çä½ ç¡®è®¤ååç»§ç»ã
### æ¨èä½éªè·¯å¾
1. éãå°çº¢ä¹¦æ¥æ´-è½»éçãæ¨¡æ¿ã
2. ä¿®æ¹ PromptTemplate ä¸çå
³é®è¯ï¼æ¯å¦æ¢æãç¨ AI åèªåªä½ãï¼ã
3. ç¹å»è¿è¡ï¼è§å¯èç¹é个å绿ã
4. æ¥ç产åºï¼éé¢è¯åãèæ¬ææ¡ãä¸å¹³å°æ¹åãå°é¢å¾çã
5. å°è¯æè½½ä¸åç Skillï¼å¯¹æ¯è¾åºå·®å¼ã
> æ³æ´"对è¯å"å°ç©ï¼å¯ä»¥ç´æ¥å¯¹ AI å©æè¯´ï¼"è¿æ¬¡å¸®æå´ç»'ç¨ AI åèªåªä½'è¿ä¸ªå
³é®è¯ï¼å
æ 5 个éé¢å¹¶æåï¼éæå¥½çä¸ä¸ªçæèæ¬ï¼åæ¹åææé³ãå°çº¢ä¹¦ãå
¬ä¼å·ä¸ä¸ªçæ¬ï¼æåé
ä¸å¼ å°é¢ã"ââè¿æ£æ¯ãå°çº¢ä¹¦æ¥æ´-è½»éçãæµæ°´çº¿çèªç¶è¯è¨çæ¬ã
---
## é¿éäºç¾ç¼è½åä¸è§ï¼èªç¶è¯è¨çï¼
é¤äºæ¬æ¼ç¤ºé¡¹ç®ç¨å°çè½åï¼é¿éäºç¾ç¼ CLI è¿è¦çä¸é¢è¿äºãä½ ä¸å¿
è®°å½ä»¤ï¼è®°ä½"è½è®© AI å©æå¸®ä½ åä»ä¹"å°±å¤äºï¼
| è½å | 对 AI 婿å¯ä»¥è¿ä¹è¯´ | 说æ |
| --- | --- | --- |
| ææ¬å¯¹è¯ | "ç¨ç¾ç¼åæå¯¹è¯/帮æå䏿®µ" | Qwen3.7-maxï¼æ¯æ agentic coding |
| å
¨æ¨¡æå¯¹è¯ | "æè¿æ®µæå+å¾ç+é³è§é¢ä¸èµ·çè§£ä¸ä¸" | ææ¬ + å¾ç + é³é¢ + è§é¢å¤æ¨¡æ |
| å¾åçæ | "帮æçæä¸å¼ å¾ï¼è¦æ±æ¯â¦â¦" | Qwen-Image 2.0ï¼ä¸ä¸æå渲æ |
| å¾åç¼è¾ | "æè¿å¼ å¾å飿 ¼è¿ç§»/å¤å¾åæ/å¾çå¾" | å¾çå¾ã飿 ¼è¿ç§»ãå¤å¾åæ |
| è§é¢çæ | "ç¨è¿æ®µæåï¼æè¿å¼ å¾ï¼çæä¸æ®µè§é¢" | HappyHorse-1.0ï¼æ/å¾/åè â è§é¢ |
| è¯é³åæ | "æè¿æ®µæåè¯»åºæ¥/å
éè¿ä¸ªå£°é³" | CosyVoice æµå¼ TTS + 声é³å
é |
| è¯é³è¯å« | "æè¿æ®µå½é³è½¬ææå" | FunAudio-ASRï¼30 è¯è¨è¦ç |
| å¾ççè§£ | "ççè¿å¼ å¾/è¿æ®µé¿è§é¢/è¿ä»½ææ¡£è®²äºä»ä¹" | Qwen-VLï¼é¿è§é¢åæãææ¡£è§£æ |
| ç¥è¯åº | "卿çç¥è¯åºéæ£ç´¢ä¸ä¸â¦â¦" | 夿¨¡æ RAG æ£ç´¢ |
| èç½æç´¢ | "èç½å¸®ææ¥ä¸ä¸ææ°çâ¦â¦" | 宿¶äºèç½æ£ç´¢ |
| MCP éæ | "帮æç¼æ/è°ç¨è¿ä¸ªç¾ç¼ MCP æå¡" | ç¼æç¾ç¼ MCP æå¡ |
| æ¨¡åæ¨è | "æçåºæ¯æ¯â¦â¦ï¼æ¨è个æåéçæ¨¡å" | æè¿°åºæ¯è·åæä¼æ¨¡å建议 |
> æ´å¤è½ååè â [é¿éäºç¾ç¼ CLI æ§å¶å°](https://bailian.console.aliyun.com/cli?source_channel=cli_github&)ã
---
## 常è§é®é¢
| é®é¢ | è§£å³æ¹æ¡ |
| --- | --- |
| AI å©æè¯´æ¾ä¸å° `bl` å½ä»¤ | 让å®éæ°å®è£
ï¼`npm install -g bailian-cli`ï¼å¹¶ç¡®è®¤ Node.js ⥠22.12 |
| API Key æ æ | 确认 Key 以 `sk-` å¼å¤´ï¼å»ç¾ç¼æ§å¶å°æ£æ¥æ¯å¦å·²æ¿æ´» |
| å¾ççæè¶
æ¶ | å¾ççæé常éè¦ 10â30sï¼èå¿çå¾
ï¼æç»è¶
æ¶å°±è®© AI å©æå¸®ä½ æ£æ¥ç½ç» |
| `pnpm install` 失败 | 让 AI å©æç¡®è®¤ pnpm ⥠9ï¼å¿
è¦æ¶"å¸®ææ pnpm åçº§å°ææ°ç" |
| Supabase è¿æ¥å¤±è´¥ | 确认 .env.local éç URL å Key æ£ç¡®ãSupabase 项ç®å·²è¿è¡ |
| èç¹æ§è¡æ¥é | èç¹ç¶æå error åï¼ç¹å¼èç¹ç详æ
æ½å±éçé误信æ¯ï¼ä¹å¯ä»¥ææ¥éè´´ç» AI å©æè®©å®å¸®ä½ è¯æ |
---
## æäº¤ä½ çä½å
è·é Workshop ä¹åï¼æä½ çå®è·µæäº¤å°ç¤¾åºï¼è®©æ´å¤äººçå° ââ æ´ä¸ªè¿ç¨åªè¦ 3 æ¥ï¼
1. ç¹å»æäº¤å
¥å£ ð **[æ°å»º Issue](https://github.com/modelstudioai/modelstudioai.github.io/issues/new?template=showcase.md&title=%E3%80%90%E6%A1%88%E4%BE%8B%E3%80%91)**ï¼å·²é¢å¡«æ¨¡æ¿ï¼ã
2. ææ¨¡æ¿å¡«å个æ¿åï¼
| æ¿å | åä»ä¹ |
| --- | --- |
| æåäºä»ä¹ | ç®è¿°ä½ ç¨äºåªä¸ª Skillï¼å®æäºä»ä¹ä»»å¡ |
| 使ç¨çå·¥å
· | ä¾å¦ï¼OpenWork + é¿éäºç¾ç¼ CLI + canvas-design |
| ææå±ç¤º | è´´ä¸å¼ æªå¾ï¼ææè¿°äº§åºç»æï¼æªå¾å¯ç´æ¥ç²è´´å°ç¼è¾æ¡ï¼ |
| 踩åè®°å½ï¼å¯éï¼ | éå°äºä»ä¹é®é¢ï¼æä¹è§£å³çï¼ |
3. ç¹å»ãSubmit new issueãæäº¤ã
æä»¬ä¼æä¼ç§çæ¡ä¾æ¶å½å° [Showcase 页é¢](/showcase/)ã
> ð¡ å°è´´å£«ï¼æªå¾ç´æ¥ Ctrl+V ç²è´´å³å¯ï¼å å¥è¯ + ä¸å¼ å¾å°±å¤ï¼è·äºå¤ä¸ª Skill å¯ä»¥åå«æäº¤å¤ä¸ª issueã
---
## 社åºä¸èµæº
- é¿éäºç¾ç¼ CLI GitHubï¼[github.com/modelstudioai/cli](https://github.com/modelstudioai/cli)
- Agent Skills ç²¾éï¼[github.com/modelstudioai/skills](https://github.com/modelstudioai/skills)
- OpenWorkï¼å¼æºæ¡é¢ Agentï¼ï¼[github.com/modelstudioai/openwork](https://github.com/modelstudioai/openwork)
- [é¿éäºç¾ç¼ CLI æ§å¶å°](https://bailian.console.aliyun.com/cli?source_channel=cli_github&) ï½ [è·å API Key](https://bailian.console.aliyun.com/cn-beijing/?source_channel=key_github&tab=app#/api-key)