dsh-color: 本地色彩解析、對比與調色板生成工具

前言

DeepSeek Harness (DSH) 的智能體在處理前端樣式、設計規範或進行無障礙(WCAG)評估時,常需直接操作顏色數據。如果依賴網絡查詢或調用外部庫,不僅增加延遲,還可能受限於網絡環境。dsh-color 是一個爲 DSH 設計的本地色彩工具箱,它將色彩處理能力內置於插件中,無需任何運行時依賴或網絡請求即可完成複雜的顏色計算。

是什麼

dsh-color 是一個純數學實現的色彩工具庫,由 TYEclipse 維護。它專注於解析和轉換 CSS 顏色格式、計算 WCAG 2.0 對比度、查詢 CSS 顏色名稱以及生成和諧的色彩方案。所有計算均在本地完成,不產生副作用。

核心功能

該插件提供了以下核心能力:

  1. 色彩解析與轉換
    支持將任意 CSS 顏色(包括 hex、rgb、hsl、hwb、CSS 命名顏色)解析爲指定格式。支持 Hex 簡寫/全寫(3/4/6/8 位)、傳統與現代 RGB 語法、角度單位以及透明度處理。

  2. WCAG 對比度評估
    基於 WCAG 2.x 標準,計算兩個顏色之間的對比度比率,並給出 AA/AAA 級別的通過/失敗判定。支持普通文本和大型文本(≥18pt 或 ≥14pt 粗體)的閾值判斷。

  3. 顏色名稱查詢
    支持按名稱子串或精確值查找 CSS 顏色名稱,並返回對應的 hex、rgb、hsl 和亮度值。

  4. 色彩方案生成
    基於基礎色生成和諧的色彩組合,包括互補色、 analogous(類似色)、triadic(三角色)、split-complementary(分裂互補色)、tetradic(四角色)、square(正方形色)和 monochromatic(單色)。

  5. 色彩調整
    支持對顏色進行變亮、變暗、飽和、去飽和或色相旋轉操作,結果同樣支持 hex/rgb/hsl 輸出。

安裝與啓用

安裝該插件需要指定一個 DSH 配置文件(例如 web),因爲 DSH 本身沒有默認配置文件。

dsh plugin --profile web add github:TYEclipse/dsh-color

典型用法

安裝完成後,可在 DSH 會話中直接調用以下命令:

顏色轉換

// 將顏色名稱轉換爲多種格式
convert_color("rebeccapurple")
// 輸出: hex #663399, rgb(102, 51, 153), hsl(270, 50%, 40%), hwb(270 20% 40%)

// 指定輸出格式
convert_color("#ff000080", format: "hex")
// 輸出: #ff000080 (alpha 保留)

對比度計算

// 計算 CSS 顏色和 hex 顏色的對比度
contrast_ratio("#777777", "#ffffff")
// 輸出: ratio 4.48 — fail for normal text, AA for large text

contrast_ratio("white", "hsl(0, 100%, 50%)")
// 輸出: ratio 4.0 — AA for large text only

色彩方案

// 生成互補色方案
color_scheme("#336699", type: "triadic")

// 生成類似色方案,數量爲 5
color_scheme("#ff0000", type: "analogous", count: 5)

// 生成單色方案,數量爲 4
color_scheme("#336699", type: "monochromatic", count: 4)

色彩調整

// 將顏色變亮 25%
adjust_color("#336699", op: "lighten", amount: 25)

// 將紅色色相旋轉 120 度(變綠)
adjust_color("#ff0000", op: "hue", amount: 120)

使用說明與注意事項

  • Alpha 通道處理:在所有轉換中,Alpha 通道會被保留。當 Alpha 小於 1 時,Hex 輸出會自動轉換爲 8 位格式(帶 alpha)。
  • WCAG 數學細節:對比度計算使用相對亮度(基於 sRGB 線性化),公式爲 (L1+0.05)/(L2+0.05)。閾值設定爲:普通文本 AA 4.5 / AAA 7,大型文本 AA 3 / AAA 4.5。
  • 色彩調整機制:亮度/飽和度的調整是基於通道值的百分比點數(0-100)進行偏移,超出範圍會被截斷;色相旋轉支持任意角度。
  • 兼容性:支持 148 個 CSS 顏色名稱及 transparent 關鍵字。
  • 依賴:完全零運行時依賴,純數學計算,符合現代 CSS 行爲(如超出範圍的值截斷)。

結語

dsh-color 爲 DSH 智能體提供了堅實的本地色彩處理能力,使其無需網絡即可完成從簡單的格式轉換到複雜的設計規範校驗工作。所有功能均基於 MIT 許可證開源,適合在各類涉及視覺設計的自動化場景中使用。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜