酷家樂智慧設計

👤 user_b14347c4 📦 v0.0.6 ⭐ 4.2 ⬇️ 3.3K 下載
🎨 設計多媒體 免費 🔑 需 API Key

📖 技能介紹


name: ai-kujiale-design description: 室內智慧設計skill,分步式對話完成戶型確認→風格選擇→佈局確認→渲染出圖。 version: 0.0.6 author: ManycoreTech tags: [aiDesign, kujiale, coohom]


室內智慧設計

說明

必須嚴格根據本文件流程來執行,不能自作主張發散。

初始化配置

首次使用需在專案根目錄建立 .kjlconfig.json 檔案(參考 .kjlconfig-example.json),配置 access_token。 若無 token,引導使用者訪問 https://www.kujiale.com/skills 生成並儲存 .kjlconfig.json,key 是access_token,value 是使用者複製的值,.kjlconfig.json要儲存在.kjlconfig-example.json同一目錄下。

Token 讀取

所有指令碼呼叫前,先從 .kjlconfig.json 讀取 access_token欄位作為 token:

版本校驗

每次執行前呼叫:node ./scripts/versionCheck.js --token=${token} --version=0.0.6 - action=1:繼續 - action=2:提示"版本已過時,建議更新" - action=3:終止,提示"版本已廢棄,需重新安裝"

輸出規則

  • 進度反饋通過 message(action=send) 傳送

    7w4.net小蔥技能。

  • 最終結果只輸出渲染圖、全景圖和設計亮點,最終結果要嚴格按照./outputs/result.md輸出
  • 已傳送的訊息不重複輸出

分步流程

階段1:戶型獲取與確認

觸發條件:使用者提到要做室內設計/裝修設計

步驟1.1:詢問戶型來源

"請問您有戶型資訊嗎? - 輸入小區名搜尋戶型 - 或直接上傳戶型圖"

路徑A:文字搜尋戶型

步驟1.2a:詢問城市

"請問房子在哪個城市?"

步驟1.3a:詢問小區

"請問是哪個小區?戶型資訊(幾室幾廳、面積)也可以一起告訴我。"

步驟1.4a:搜尋戶型

node ./scripts/searchPlan.js --token=<token> --query=<小區名> --areaId=<城市id> --start=0 --num=20

展示結果讓使用者選擇:

"找到以下戶型,請回複數字選擇: 1. {小區名} {面積}㎡ {戶型結構} 2. ..."

使用者選擇後獲得 planId。

步驟1.5a:獲取戶型圖並展示給使用者確認

node ./scripts/getFloorplanInfo.js --planId=<planId>

解析返回結果: - 若 floorplanInfos 為空陣列:提示"戶型圖獲取失敗,請重新選擇或上傳戶型圖",返回步驟1.4a - 若有資料:取 floorplanInfos[0].planImage 展示給使用者,直接展示圖片

"戶型已生成,請檢視戶型圖: [展示 planImage 圖片] 面積:{realArea}㎡ 請確認是否滿意? - 回覆「確認」繼續建立方案 - 回覆「重新生成」重新搜尋戶型 - 回覆「上傳圖片」改為上傳戶型圖"

等待使用者回覆: - 若使用者確認滿意 → 進入步驟1.6建立方案 - 若使用者不滿意 → 根據使用者選擇重新執行路徑A或路徑B

路徑B:上傳戶型圖

同時監聽 ~\.openclaw\media\inbound 是否有新圖片(每5秒檢查)。

步驟1.2b:識別戶型圖 檢測到圖片後:

"檢測到您上傳了圖片,正在識別戶型..."

步驟1.3b:上傳圖片

node ./scripts/getUploadToken.js --token=<token>

按 ./docs/upload.md 執行上傳獲取 url。

步驟1.4b:建立臨摹任務

node ./scripts/createBitmapTask.js --token=<token> --bitmap=<url>

輪詢結果:

node ./scripts/getBitmapTaskResult.js --token=<token> --taskId=<taskId>

獲得 planId。

步驟1.5b:獲取戶型圖並展示給使用者確認

node ./scripts/getFloorplanInfo.js --planId=<planId>

解析返回結果: - 若 floorplanInfos 為空陣列:提示"戶型圖識別失敗,請重新上傳或搜尋戶型",返回步驟1.2b - 若有資料:取 floorplanInfos[0].planImage 展示給使用者

"戶型已識別生成,請檢視戶型圖: [展示 planImage 圖片] 面積:{realArea}㎡ 請確認是否滿意? - 回覆「確認」繼續建立方案 - 回覆「重新生成」重新上傳戶型圖 - 回覆「搜尋戶型」改為文字搜尋"

等待使用者回覆: - 若使用者確認滿意 → 進入步驟1.6建立方案 - 若使用者不滿意 → 根據使用者選擇重新執行路徑A或路徑B

步驟1.6:建立方案(兩種路徑合併)

node ./scripts/createDesign.js --token=<token> --planId=<planId>

獲得 designId。

步驟1.7:確認戶型

"已確認戶型:{戶型資訊},接下來選擇您喜歡的風格~"


階段2:風格選擇(標籤+硬裝風格)

觸發條件:戶型已確認

步驟2.1:獲取標籤並展示選項

node ./scripts/getTags.js --token=<token>

解析返回的標籤列表,展示給使用者:

"請選擇您的偏好:(單選,回覆數字如'1') 1. {標籤項1名稱} 2. {標籤項2名稱} 3. ... 或直接描述您的喜好"

使用者選擇後獲得 tagItemIds 列表。

步驟2.2:查詢硬裝風格

node ./scripts/getStyles.js --token=<token> --tagItemIds=<id1,id2,...>

步驟2.3:風格選擇 - 若返回多個風格:展示封面圖讓使用者選擇

"以下硬裝風格可選,請回複數字選擇:" 展示每個風格的 coverUrl 圖片 + styleName,如果非Webchat渠道,直接展示圖片

  • 若返回單個風格:預設選擇

    "已為您匹配{風格名}風格"

獲得 styleId,進入下一階段。


階段3:佈局生成與確認

觸發條件:風格已確認。

步驟3.1:跟使用者確認本次佈局會消耗他賬號內的智慧佈局的額度/核豆,需要使用者確認知曉後再執行後續步驟

步驟3.2:使用 message(action=send) 傳送"開始佈局,請稍等"

步驟3.3:觸發智慧佈局

node ./scripts/triggerLayout.js --token=<token> --designId=<designId> --tagIds=<id1,id2,...> --styleId=<styleId> --applyDecorationStyle=true --buildCeiling=true --autoDesign=true

步驟3.4:等待並查詢佈局結果

node ./scripts/getLayoutResult.js --token=<token> --designId=<designId>

若 c!=0 則每10秒重複查詢。

步驟3.5:展示佈局結果並等待使用者確認 使用 message(action=send) 傳送佈局資訊:

"佈局已生成!以下是各房間的佈局情況: - {房間名1}:{傢俱列表} - {房間名2}:{傢俱列表} ... 直接進入階段4渲染出圖


階段4:渲染出圖

觸發條件:佈局已確認

步驟4.1:使用 message(action=send) 傳送:"開始渲染,請稍等"

步驟4.2:觸發渲染

node ./scripts/trigger-render.js --obsDesignId=<designId> --xToken=<token>

傳送:"正在生成效果圖,預計幾分鐘..."

步驟4.3:等待10秒後查詢渲染結果

node ./scripts/getRenderResult.js --token=<token> --designId=<designId>

提取 pictype=0 的 img(渲染圖)和 pictype=1 的 panoLink(全景圖)。若空則每分鐘重試,超5分鐘反饋失敗。

步驟4.4:輸出最終結果 傳送:"效果圖已生成!" 嚴格按 ./outputs/result.md 格式輸出: - 設計亮點(根據第一張渲染圖總結) - 渲染圖(按房間優先順序:客餐廳→主臥→次臥→其他) - 全景圖連結 - 方案詳情連結(https://www.kujiale.com/pcenter/design/{designId}/setting?from=skills)


渠道規則

  • Webchat:直接傳送圖片連結
  • 飛書:推送格式 MEDIA:圖片url,即直接展示圖片

結果排序

客餐廳 → 主臥 → 次臥 → 其他

介面文件

  • 戶型搜尋:./docs/planSearch.md
  • 戶型圖資訊:./docs/floorplanInfo.md
  • 生成方案:./docs/createDesign.md
  • 硬裝風格庫:./docs/hardStyle.md
  • 客戶標籤:./docs/customTag.md
  • 智慧佈局:./docs/layout.md
  • 佈局結果:./docs/layoutResult.md
  • 佈局候選:./docs/layoutCandidates.md
  • 渲染結果:./docs/renderResult.md
  • 上傳:./docs/upload.md
  • 臨摹匯入:./docs/planUrlCreate.md
  • 臨摹輪詢:./docs/planUrlCreateResult.md
  • 版本校驗:./docs/versionCheck.md

🤖 AI 評測

這個 Skill 的設計思路清晰,文件結構完整,涵蓋了室內設計的完整流程說明。然而存在致命問題:文件中提到的所有指令碼檔案都缺失,實際無法執行。整個技能目前只是一個"空殼",使用者即使按文件操作也無法完成任何設計任務。建議等待開發者補充完整的指令碼檔案後再使用。

📊 多維度評分

適應性4.5
規範性4.3
有效性4
可靠性3.5
可信度5

📁 包含檔案 (31 個)

📄 .kjlconfig-example.json 43 B
📄 SKILL.md 8 KB
📄 docs/city.json 61.6 KB
📄 docs/createDesign.md 1.5 KB
📄 docs/customTag.md 1.4 KB
📄 docs/floorplanInfo.md 2 KB
📄 docs/hardStyle.md 1.6 KB
📄 docs/layout.md 1.7 KB
📄 docs/layoutCandidates.md 1.6 KB
📄 docs/layoutResult.md 1.7 KB
📄 docs/planSearch.md 4.8 KB
📄 docs/planUrlCreate.md 4.4 KB
📄 docs/planUrlCreateResult.md 2.1 KB
📄 docs/renderResult.md 3.6 KB
📄 docs/upload.md 6.8 KB
📄 docs/versionCheck.md 1.7 KB
📄 outputs/result.md 513 B
📄 scripts/createBitmapTask.js 1.5 KB
📄 scripts/createDesign.js 1.5 KB
📄 scripts/getBitmapTaskResult.js 1.2 KB
📄 scripts/getCandidateLayout.js 1.2 KB
📄 scripts/getFloorplanInfo.js 1007 B
📄 scripts/getLayoutResult.js 1.2 KB
📄 scripts/getRenderResult.js 1.4 KB
📄 scripts/getStyles.js 1.4 KB
📄 scripts/getTags.js 1 KB
📄 scripts/getUploadToken.js 1 KB
📄 scripts/searchPlan.js 1.6 KB
📄 scripts/trigger-render.js 12.7 KB
📄 scripts/triggerLayout.js 4.3 KB
📄 scripts/versionCheck.js 1.2 KB