用途
Design Agent 是 LangChain 团队的智能设计工作台,帮助团队按统一规范生成设计资产。该页面说明如何自定义它「知道什么」和「做什么」,核心原则是:每类知识只有一个归属位置,先找到对应位置再修改,避免同一规则散落多处。
知识归属
资料给出的分工如下:
- 品牌事实(颜色、字体、Logo、语气、图形语言):
workspace/brand/(brand-onboarding)。 - 团队经常需要的交付物或工作流:runtime skill,即
skills/<name>/SKILL.md。 - 面向所有视觉作品的设计准则(层次、字体、颜色、图表):
skills/design-wiki/references/。 - 身份、交付与审批规则、沟通方式:
instructions.md(超过约 8k token 会导致预算测试失败)。 - 可由机器计数的规则:
workspace/tools/中的检查。 - 工具或数据源:
config/mcp.toml中的 MCP 服务器。 - 哪个模型承担哪个角色、effort、预算:
.env设置。
新增 runtime skill
建议从团队每周都会要求的图形开始。先阅读相近的两个 skill(skills/stills/、skills/thumbnails/)和 skills/design-wiki/SKILL.md,再创建 skills/<name>/SKILL.md(必须是真实目录、只深一层,MDA 不跟随符号链接)。Frontmatter 中 name 为文件夹名,description 用人们实际请求时的说法说明何时使用;正文写清楚好的产出是什么样、尺寸、步骤与要运行的检查,深度内容放入 references/,正文保持精简。仅支持 UTF-8 文本,二进制文件(字体、图片)放入 skill-binaries/<name>/,由 stager 在沙箱中放回 skill 旁边。skill 中不要写品牌事实、颜色或来自 CDN 的库,这些由品牌包提供。
完成后运行 uv run pytest -q tests/unit/test_taste_skills.py tests/unit/test_media_skills.py,检查 frontmatter、大小、链接,以及其中提到的每个工具、脚本和检查是否真实存在。用真实请求试用:uv run design-agent ask "…",并查看生成文件。如重要,可添加 eval 任务(design-agent-evals),然后重新部署(design-agent-deploy)。Vendored skills(HyperFrames 和 LangSmith,列于 skills-lock.json)不可编辑,应在我们自己的同级 skill 中覆盖,或向上游提交修改。
指令、准则与检查
规则应写成带原因的默认值,或带证据的检查。关于模型的规则是临时的,模型变化后需重新测试并删除已被新模型超越的规则。机器可计数的规则应写入代码作为检查,而非散文。编辑后运行 uv run pytest -q,并用 evals 比较前后效果。
工具
MCP 服务器:将 config/mcp.example.toml 复制为 config/mcp.toml 并声明服务器。本地环境下 header 值来自环境变量(headers_env);在 MDA 上,需要凭据的服务器需指定 workspace connection(connection),由部署或每个人拥有(owner)。示例文件包含 Notion、Linear、GitHub、Figma 等预设。MDA 仅提供 HTTP 和 SSE。Paper 通过 PAPER_* 配置,不在此处。
媒体密钥:OPENAI_API_KEY(图像)、ELEVENLABS_API_KEY(语音、音乐、音效)、GROQ_API_KEY(转写)。新增 host 工具是 src/design_agent/tools/ 中的代码:密钥留在 host,结果以文件形式落入沙箱,需遵循 AGENTS.md 的变更纪律。
模型与成本
使用 uv run design-agent config set DESIGN_AGENT_MODEL=provider:model,然后 uv run design-agent test model。DESIGN_AGENT_JOB_BUDGET_USD 使 agent 在超出预算前先询问;DESIGN_AGENT_HELPER_EFFORT_CAP 限制 helper 的 effort。
限制
资料未提供具体的收费、价格、支持平台列表或效果数据,暂未提供。