基于 SOC 职业分类
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/johnalbertini14-glitch/openclaw-skills --skill colors命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
Use this skill to create a Polymarket wallet for your agent and trade on prediction markets. Browse markets, place bets, manage positions — all without exposing private keys.
ClawSec suite manager with embedded advisory-feed monitoring, cryptographic signature verification, approval-gated malicious-skill response, and guided setup for additional security skills.
Automated daily security audits for OpenClaw agents with email reporting. Runs deep audits and sends formatted reports.
| name | Colors |
| description | Build accessible color palettes with proper contrast ratios and semantic tokens. |
| metadata | {"clawdbot":{"emoji":"🎨","requires":{},"os":["linux","darwin","win32"]}} |
| Level | Normal Text | Large Text (≥18pt or ≥14pt bold) | UI Components |
|---|---|---|---|
| AA (minimum) | ≥ 4.5:1 | ≥ 3:1 | ≥ 3:1 |
| AAA (enhanced) | ≥ 7:1 | ≥ 4.5:1 | — |
Critical thresholds on white background:
#767676 → 4.54:1 ✅ barely passes#777777 → 4.47:1 ❌ fails (cannot round up)#757575 → 4.6:1 ✅ safe minimum grayPure colors on white:
#FF0000 → 4:1 ❌ fails for normal text#00FF00 → 1.4:1 ❌ always fails (never use for text)#0000FF → 8.6:1 ✅ passes AAANever rely on color alone to convey meaning. 8% of men have color vision deficiency.
<!-- ❌ Bad: only color differentiates states -->
<span class="text-green-500">Active</span>
<span class="text-red-500">Inactive</span>
<!-- ✅ Good: icon + text + color -->
<span class="text-green-500">✓ Active</span>
<span class="text-red-500">✗ Inactive</span>
Test designs in grayscale to verify information is still distinguishable.
Three-layer architecture for maintainable palettes:
/* Layer 1: Primitives (raw values) */
--blue-500: #3B82F6;
--gray-900: #111827;
/* Layer 2: Semantic (roles) */
--color-primary: var(--blue-500);
--color-text: var(--gray-900);
--color-error: var(--red-500);
/* Layer 3: Component (specific use) */
--btn-primary-bg: var(--color-primary);
--input-border-error: var(--color-error);
Name tokens by function, not appearance: text-primary not text-blue.
Create depth with luminosity, not shadows:
/* Light mode uses shadows for depth */
/* Dark mode uses surface brightness */
--surface-0: hsl(220 15% 8%); /* page background */
--surface-1: hsl(220 15% 12%); /* card */
--surface-2: hsl(220 15% 16%); /* elevated element */
--surface-3: hsl(220 15% 20%); /* modal */
Avoid pure black #000 and pure white #FFF as backgrounds. Use #0a0a0a and #fafafa to reduce eye strain.
Add a subtle tint of your primary color to grays for cohesion:
/* Instead of pure gray */
--gray-100: hsl(220 10% 96%); /* slight blue tint */
--gray-500: hsl(220 10% 46%);
--gray-900: hsl(220 10% 10%);
This creates a more polished, intentional palette.
HSL makes generating consistent color scales trivial:
--primary-100: hsl(220 90% 95%);
--primary-300: hsl(220 90% 75%);
--primary-500: hsl(220 90% 55%);
--primary-700: hsl(220 90% 35%);
--primary-900: hsl(220 90% 15%);
Same hue and saturation, only lightness changes.
60-30-10 distribution:
Limit palette to 3-5 colors plus neutrals. More creates visual noise.
text-gray-400 or lighter on white background typically fails contrast| Sector | Primary | Secondary | Why |
|---|---|---|---|
| Fintech | Navy #00246B | Light Blue #CADCFC | Trust + clarity |
| Healthcare | Light Blue #89ABE3 | White | Calm + clean |
| E-commerce | Red #F96167 | Yellow #F9E795 | Urgency + optimism |
Avoid: red + green (colorblindness), adjacent hues (blue + purple), yellow + white (no contrast).