charfloat-chart-style
Skill8 starsChanged 35 days agoMITView on GitHub
通过「字浮 CharFloat」批量读写实时 Excel/WPS 表格,调整样式、编辑图表、绘制可编辑矢量形状及看板。适用于范围和对象操作,不用于离线表格文件生成。
In this repository10 other files it gives its agents.
- AGENTS.mdAGENTS.md
- office-addon/AGENTS.mdAGENTS.md
- scripts/AGENTS.mdAGENTS.md
- skills/AGENTS.mdAGENTS.md
- tests/AGENTS.mdAGENTS.md
- windows-bootstrap/AGENTS.mdAGENTS.md
- wps-addon/AGENTS.mdAGENTS.md
- charfloat-ppt-designSkill
- charfloatSkill
- charfloat-word-batch-editSkill
The file
Files
Excel 范围与对象工作流
本任务尚未建立宿主与目标上下文时,先读 共享流程;已建立则复用,不重复查询连接与工具清单。
读取与执行
| 用户目标 | 最小读取 | 执行与核验 |
| 修改数据或公式 | 目标范围、必要公式与维度 | 用范围写入,不逐单元格调用;核对关键值和公式 |
| 统一样式 | 目标区域的样式摘要、合并与尺寸 | 相同样式按区域处理;完成区域后预览 |
| 修改已有图表 | 实际名称、源数据、待改属性 | 定位原对象修改,读回相关属性并预览 |
| 绘图或搭建看板 | 锚点区域几何、现有 Shapes 和数据摘要 | 同组形状一次 JS 批次创建;返回名称和边界,整体预览 |
搭建整页版面(看板 / 信息图 / 封面页)前先读 画布版面规范:它给出纵向节奏算法、"视觉中心"对齐规则、宿主不按请求尺寸创建对象时的读回校正做法、层级与遍历陷阱,以及交付前的自检清单。跳过它会做出"能看但很业余"的页面。
excel_get_range_styles 使用 mode: "summary" 和 include 选择需要的字段;只有定位差异时才使用 cells 和 maxCells。混合格式下 fontName/bold 等字段返回 null(表示区域或格内格式不一致,并非不支持);排查单元格内字符级局部格式(rich text)可传 include: ["runs"] 获取逐段详情。数据过大时分块读取所需范围,汇总可在宿主脚本中计算并返回摘要,避免传回整个工作簿。不能因只读取了样本就声称核验了全部数据。
样式排查与避坑指南:
- 粗体字族陷阱:单元格正文显粗但
Bold=false时,检查Font.Name是否为xxx Bold(如Microsoft YaHei Bold)。Font.Bold=false对粗体字族无效,必须显式修改Font.Name(如设为Microsoft YaHei)换回常规字族。 - 局部格式顺序陷阱:修改整格
Font.Name会重置单元格内所有字符级局部格式(Characters)。必须先统一整格字体,再施加局部加粗(format_text_segment)。 - 写入继承原字体:往单元格写文本会保留原有字体;若写入后需要常规正文,可在
patch_cells中传入fontName规范化字族,或使用format_cells同时规范化fontName与bold。 - 预览图不验字重:
capture_sheet_preview渲染通道可能发生字体替换或抗锯齿加粗,预览图不可作为字重/字体验收依据,验收必须以get_range_styles探针读取实际属性为准。 - 单元格富文本局部修改保真:单个单元格内若本身带了部分加粗或颜色标红(如标题红粗、正文常规),严禁直接用
patch_cells覆盖写回纯文本,也不得在改动后盲目调用format_cells整格刷格式!- 读取排查:调用
get_range_styles(include: ["runs"])完整获取单元格内各文本段的起止位置、字重与颜色,明确哪些是标题、哪些是正文。 - 精准修改:部分文本改动时,必须优先使用
find_and_replace精准原位替换!底层已通过 Characters 原位增删机制实现保真替换,未变动段落的加粗标红会被完整保留。 - 重写全格:若必须用
patch_cells全量重构文本,写入纯文本后系统会自动规范化为常规黑色正文,随后必须调用format_text_segment对重点标题精准施加局部加粗与颜色,绝不能用format_cells。
- 读取排查:调用
人机实时协同防错行与防覆盖规范:
- 末行追加动态嗅探:追加新数据或插入汇总行时,严禁假设“末行依然是上一轮的第 N 行”。每次操作前必须调用
wps_get_sheet_outline读取最新rowCount,或通过原生脚本动态探测末行,防止因人类手动新增行导致数据错行覆写。 - 业务行锚点搜索优先:修改“小计”、“合计”、“均值”或特定指标行时,优先使用
wps_search_cells搜索文字定位动态坐标,禁止写死绝对行号。人类可能在中间插入了明细行。 - 关键数据覆盖前核对:准备更新已有单元格内容前,先用
wps_read_range切片读取目标格。若发现人类已手动调整了数值,应吸收并基于最新值进行计算,禁止盲目将旧上下文直接覆写回工作簿。
保留已有内容、数据源和样式,不自动套用统一模板。日期数值结合工作簿日期系统判断;百分比轴保留真实量纲,例如 0.72 对应 72%。
图表和原生矢量
没有专用更新工具时,用 原生脚本 修改已有图表,不能直接推断必须删除重建。仅在无法原位完成且用户允许替换时重建,并保留源数据、位置尺寸、系列、图例和轴设置。
矢量绘图操作 Shapes 层,与单元格和统计图表不同。以目标单元格 Left/Top/Width/Height 为锚点,以 pt 计算布局;默认列宽 48pt、行高 16pt(如 A1:U42 = 1008×672pt),但每批应先读回真实几何再换算,参见 多元素构图范例。格式与形状的枚举一律传整数,字符串枚举不报错但静默失效,取值见 枚举速查表。同组矩形、文字、连接线在一个批次内处理;返回稳定名称或 ID、实际几何和完成数量。既有对象按精确名称定位,新建对象记录名称,便于失败后继续。不要用 Range(...).Group() 分组(实测产出损坏的分组对象)。
修改后只补读工具结果缺失的关键字段;一组对象完成后再截取整体区域。接口执行、视觉验证和保存是不同状态。审计回滚范围遵循共享流程。
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

