Claude Code ! Claude Code ! 停不下来了~ 两天前, Claude Code 可以自定义自己的 AI Agent 了 -> https://docs.anthropic.com/en/docs/claude-code/sub-agents.

正好周末也把博客迁移主题完成了 -> 《使用 Claude Code 和 Qwen3 Coder 将博客主题成功迁移到了 Stellar 》. 顺便把玩下新出的 Sub Agent 功能. 现在使用 Claude Code 制作 Agent 很简单, 通过 Slash 命令 /agents 即可开始创建自己的 Agent, 把意图描述清楚即可.

在场景的挑选上, 我选择了两个博客文章写作除了内容之外, 最主要的两个场景:

  • 1、文章 banner 头图制作: 文章出现点图片让自己看得会舒服点, 一般比较“花”的封面更容易吸引人;
  • 2、博客的 SVG 图标制作: 新的博客主题 Stellar 抛弃了之前的使用的图标库 fontawesome, 文章内如果想嵌入, 经常需要找, 找不到满意的, 感觉可以拿 AI 制作下.

我已经把 Agent 的系统提示词放到了博客的开源 GitHub 仓库中, 感兴趣的小伙伴可以拿来玩玩 -> .claude/agents.

接下来我们看看这两个 Sub Agent 的工作流程.

文章 banner 头图制作 Agent

我使用 AI 基于系统提示词, 将 Agent 工作流 wechat-cover-layout-designer.md 抽取成为了 mermaid 时序图, 如下:

sequenceDiagram
participant 用户 as 用户
participant 设计师 as 微信封面设计师
participant 分析器 as 需求分析器
participant 布局器 as 布局规划器
participant HTML构建器 as HTML构建器
participant CSS引擎 as CSS样式引擎
participant 响应式引擎 as 响应式引擎
participant 下载器 as 下载功能模块
participant 测试器 as 兼容性测试器
participant 质检器 as 质量保证器

用户->>设计师: 提出封面设计需求
设计师->>分析器: 启动需求分析
分析器->>分析器: 解析比例要求(3.35:1, 2.35:1, 1:1)
分析器->>分析器: 确定文本占比(≥70%)
分析器-->>布局器: 传递分析结果

布局器->>布局器: 规划整体布局结构
布局器->>布局器: 设计主封面和朋友圈分享区域
布局器-->>HTML构建器: 传递布局方案

HTML构建器->>HTML构建器: 创建语义化HTML结构
HTML构建器->>HTML构建器: 嵌入必要的CDN链接
HTML构建器-->>CSS引擎: 传递HTML结构

CSS引擎->>CSS引擎: 集成Tailwind CSS
CSS引擎->>CSS引擎: 应用Google Fonts字体
CSS引擎->>CSS引擎: 添加装饰元素和背景
CSS引擎-->>响应式引擎: 传递基础样式

响应式引擎->>响应式引擎: 实现严格的比例控制
响应式引擎->>响应式引擎: 确保跨设备兼容性
响应式引擎-->>下载器: 传递响应式设计

下载器->>下载器: 集成snapdom库
下载器->>下载器: 实现图片下载功能
下载器-->>测试器: 传递完整功能

测试器->>测试器: 验证跨浏览器兼容性
测试器->>测试器: 测试所有交互功能
测试器-->>质检器: 传递测试结果

质检器->>质检器: 数学验证比例准确性
质检器->>质检器: 检查响应式行为
质检器->>质检器: 验证文本视觉主导性
质检器->>质检器: 确认下载功能正常
质检器-->>设计师: 返回质检报告

设计师->>设计师: 生成完整HTML文档
设计师->>设计师: 添加实现说明注释
设计师-->>用户: 交付最终封面设计

Agent 会根据用户的意图, 帮我们生成一个 HTML 页面, 提供一个下载按钮, 使用 Snapdom 将图片转换出来. 生成页面效果如下:

一般我的写作是在 Visual Studio Code 中进行的, 所以可以很方便的通过 VS Code 插件 Live Preview 预览 Agent 生成的 HTML 文件.

{% folding 执行过程 %}

> 使用 wechat-cover-layout-designer 完成封面图设计, 标题为: 使用 Claude Code 的自定义 Sub Agent 完善博客写作体验
⎿  ⧉ Selected 1 lines from source/_posts/claude-code-subagent-for-tech-writing.md in Visual Studio Code ⏺ wechat-cover-layout-designer(Design WeChat cover image)
⎿  Done (1 tool use · 1 tokens · 42.6s) ⏺ 我已使用 wechat-cover-layout-designer 完成了封面图设计, 创建了符合要求的微信公众号封面图布局: - 整体比例为 3.35:1, 包含 2.35:1 的主封面区域和 1:1 的分享封面区域
- 采用了现代渐变背景(蓝到紫)和装饰性图案叠加
- 响应式排版设计, 主封面完整显示标题, 分享封面突出显示"博客写作"
- 使用 Tailwind CSS 和 Google Fonts 实现现代化中文字体效果
- 内置下载功能, 可将整个布局保存为 PNG 图片 设计已完成, 您可以在浏览器中打开 HTML 文件并点击"下载封面图片"按钮获取图片. 请问您需要对设计进行哪些调整吗?

{% endfolding %}

SVG 图标制作 Agent

同样, 我也将 SVG 图标制作 Agent 工作流 svg-icon-generator 通过 AI 抽取为了如下 mermaid 时序图:

sequenceDiagram
participant U as 用户
participant A as SVG图标生成专家
participant FS as 文件系统
participant IconFile as icons.yml

U->>A: 请求创建SVG图标
A->>U: 询问图标需求澄清问题(如需要)
U->>A: 提供图标详细要求

Note over A: 生成SVG代码
A->>A: 创建优化的SVG代码<br/>- 设置合适的viewBox<br/>- 最小化路径复杂度<br/>- 添加可访问性标签<br/>- 确保一致的样式

A->>FS: 将SVG保存到当前目录<br/>(临时预览文件)
FS-->>A: 文件创建成功

A->>U: 展示SVG预览<br/>提供查看说明
U->>U: 查看生成的SVG文件

alt 用户满意图标
U->>A: 明确批准使用此图标
A->>IconFile: 将SVG数据添加到<br/>source/_data/icons.yml
IconFile-->>A: 更新成功
A->>FS: 删除临时SVG预览文件
FS-->>A: 文件删除成功
A->>U: 图标集成完成
else 用户需要修改
U->>A: 请求修改图标
A->>A: 根据反馈调整SVG设计
A->>FS: 更新临时SVG文件
FS-->>A: 文件更新成功
A->>U: 展示修改后的SVG预览
Note over U,A: 重复直到用户满意
end

Note over A,IconFile: 验证检查:<br/>- SVG代码有效性<br/>- 文件可访问性<br/>- YAML语法正确性<br/>- 保持现有图标完整性

Agent 会基于我的意图, 生成一个 SVG 文件, 然后保存到当前目录, 我会在 Visual Studio Code 编辑器中预览它, 如果我满意的话, 会将 SVG 图标 XML 定义存放到博客主题的配置文件 icons.yml 中, 供后续使用.

关于 Claude Code 自定义 Agent 功能的使用感想

  • Agent 的工作效果可能一开始不是很好, 但问题不大, 我们可以逐步在使用中, 让 Claude Code 不断优化子 Agent 的工作流即可. 关键还是多用, 多迭代.
  • 多关注下社区的 Agent 制作玩法, 开拓下视野, 不要让 Agent 的能力, 受限于自己.

让我们在 AI 时代, 更加享受创作吧~ღ( ´・ᴗ・` )比心~

使用 Claude Code 的自定义 Sub Agent 完善博文写作体验的更多相关文章

  1. WPF 自定义 MessageBox (相对完善版 v1.0.0.6)

    基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当你不得不弹出一个消息框通知用户消息时(虽然很不建议在程序中频繁 ...

  2. 自定义HttpFilter模块完善

    自定义HttpFilter模块完善   背景 在12月由于要针对项目做用户操作日志,但不想在每个方法里去增加代码,写入用户日志.因为这样具体的方法违背职责单一的原则,若后期日志内容格式发生变更,或其他 ...

  3. WPF 自定义 MessageBox (相对完善版)

    WPF 自定义 MessageBox (相对完善版)     基于WPF的自定义 MessageBox. 众所周知WPF界面美观.大多数WPF元素都可以简单的修改其样式,从而达到程序的风格统一.可是当 ...

  4. Sublime Text3—Code Snippets(自定义代码片段)

    摘要 程序员总是会不断的重复写一些简单的代码片段,为了提高编码效率,我们可以把经常用到的代码保存起来再调用. 平时用sublime安装各种插件,使用Tab键快速补全,便是snippets(可译为代码片 ...

  5. RN code push自定义弹框

    最近在弄react native的code push热更新问题.开始是用的后台默默更新配置.由于微软服务器速度问题,经常遇到用户一直在下载中问题.而用户也不知道代码需要更新才能使用新功能,影响了正常业 ...

  6. Android中ListView实现图文并列并且自定义分割线(完善仿微信APP)

    昨天的(今天凌晨)的博文<Android中Fragment和ViewPager那点事儿>中,我们通过使用Fragment和ViewPager模仿实现了微信的布局框架.今天我们来通过使用Li ...

  7. 2019-01-29 VS Code创建自定义Python代码片段

    续前文[日常]Beyond的歌里最多是"唏嘘"吗? - Python分词+词频最后的想法, 发现VS Code支持用户自定义代码片段: Creating your own snip ...

  8. Pycharm code templates自定义

    Settings>Editor>Code Style>File and Code Templates python script>>>> # 模板变量 ${P ...

  9. 通过视图实现自定义查询<持续完善中。。。>

    目前实现: ----普通查询路径 /viewShow/viewShow/list.htm ----Echarts查询路劲 /viewShow/viewShow/echarts.htm 1.自定义查询条 ...

  10. Visual Studio Code 背景色自定义

    1 寻找主体配置文件:默认的颜色主题配置文件都位于$RELEASE/resources/app/extensions目录中.以theme-开头的目录即为颜色主题配置(事实上,其中有些是文件图标主题). ...

随机推荐

  1. 解析V8引擎底层原理,探究其优异性能之谜

    @charset "UTF-8"; .markdown-body { line-height: 1.75; font-weight: 400; font-size: 15px; o ...

  2. Django批量创建Model实例

    1.前言: 将测试数据全部敲入数据库非常繁琐,而且如果与合作伙伴一起开发,部署,那么他们肯定也不想把时间花在一个一个录入数据的繁琐过程中,这时候,创建一个批量录入数据的脚本(population sc ...

  3. 已经在为VKProxy写UI配置站点和文档了

    VKProxy 是使用c#开发的基于 Kestrel 实现 L4/L7的代理 有兴趣的同学点个赞呗 目前已经在写文档了, 文档在 https://fs7744.github.io/VKProxy.Do ...

  4. Spring Boot微服务设置logback日志打印级别并关闭kafka debug日志

    摘要:以关闭Spring Boot微服务kafka日志为例,介绍logback日志框架中logger标签的属性. 问题描述   在Spring Boot整合kafka的时候,日志配置使用 logbac ...

  5. 【2020.11.28提高组模拟】T1 染色(color) 题解

    [2020.11.28提高组模拟]T1 染色(color) 题解 题意描述 给长度为n的数列染色,若\(i-j\)为质数那么\(i,j\)异色.求最小需要的颜色种类并构造出一组. \(n\le10^4 ...

  6. [nodejs原型链污染及绕过]校赛第四次纳新赛 bypass WP

    前言 赛后自学了nodejs原型链污染后来尝试做这个题,难度不算太大,但是绕过姿势非常奇怪没见过,写一篇总结记录一下做法 wp 首先打开环境发现是一个登录框,题目有附件我们下载查看附件 最关键的就是c ...

  7. vue模板语法中能否用??的三目运算简写的问题

    使用双问号(??)的三目运算可以在 JavaScript 中使用,但在 Vue 模板语法中不支持.Vue 模板语法中的三目运算仍然使用单个问号(?)和冒号(:)的标准形式.例如: {{ conditi ...

  8. 记录.Net 8 发布增加 PublishTrimmed 裁剪选项,调用WMI 的ManagementObject 异常

    最近在做OTA的功能,需要获取到sn做一些业务的逻辑.我们自己实现的库里边的,大部分都是调用 System.Management 的 ManagementObjectSearcher 获取 Bios ...

  9. CAE教程:HyperMesh概述与有限元分析简介

    1.1 HyperMesh 概述 本节将介绍有限单元法基本原理,HyperMesh 软件基本功能及界面介绍,获取在线帮助等内容. 1.1.1 有限元分析方法简介 有限单元法(FEM)是一种可以精确预测 ...

  10. APIO2025 一堆题解

    APIO2025 一堆题解 图论 AtCoder Xmas Contest 2024 A 答案永远是\(1\),6 NWRRC 2015 Graph 考虑不加边,怎么找字典序最小的拓扑序,就维护一个小 ...