bensz-r-developer
当主要交付物是可复用的 R 函数、稳定 API、S3/S4/R6 类或 R Package,需要设计、开发、重构或审查其接口、测试、文档、并行与性能边界时使用。分析项目中只有需要跨分析复用或形成公共 API 的组件才进入本 Skill。⚠️ 不适用:主要交付物是数据分析流程、科学结果、R Markdown…
Skill by Bensz Conan
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/huangwb8-bensz-r-developer
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, backend, cloud
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/bensz-r-developer
What's inside
- Skill name
bensz-r-developer- Description
- 当主要交付物是可复用的 R 函数、稳定 API、S3/S4/R6 类或 R Package,需要设计、开发、重构或审查其接口、测试、文档、并行与性能边界时使用。分析项目中只有需要跨分析复用或形成公共 API 的组件才进入本 Skill。⚠️ 不适用:主要交付物是数据分析流程、科学结果、R Markdown 报告或仅服务当前分析的辅助函数;这些任务使用 bensz-rmd-rules。
- License
- MIT
- Metadata
- author: Bensz Conan
- Instructions
- 161 lines in SKILL.md · view on GitHub
Files (21)
- CHANGELOG.md
- README.md
- README_EN.md
- SKILL.md
- config.yaml
- evals.json · evals/
- class-api-design.md · references/
- io-cache-contract.md · references/
- package-workflow.md · references/
- parallel-performance.md · references/
- DESCRIPTION · templates/demo-package/
- LICENSE · templates/demo-package/
- NAMESPACE · templates/demo-package/
- rdev_job.R · templates/demo-package/R/
- README.md · templates/demo-package/
- new_rdev_job.Rd · templates/demo-package/man/
- run_job.Rd · templates/demo-package/man/
- run_job.rdev_job.Rd · templates/demo-package/man/
- validate_rdev_job.Rd · templates/demo-package/man/
- testthat.R · templates/demo-package/tests/
- test-rdev_job.R · templates/demo-package/tests/testthat/
SKILL.md (first lines)
# bensz-r-developer
## 目标
开发优雅、可维护且可复用的 R 软件组件:以明确的输入、返回、错误和副作用契约设计函数与公共 API,用领域对象承载真实不变量和生命周期,并以成熟工具管理文档、测试、并行和性能。
本 Skill 关注的是“R 代码怎样稳定地被调用”,而不是“某次分析怎样可靠地跑完”。触发依据是主要交付物和复用边界,不是任务里是否出现 `.R` 文件或函数:
| 场景 | 主导 Skill |
| --- | --- |
| 主要交付物是可独立测试、文档化、版本化或跨项目复用的函数、类、API、Package | `bensz-r-developer` |
| 主要交付物是数据流、统计结果、Rmd/HTML 报告、论文图表,函数只服务当前分析 | `bensz-rmd-rules` |
| 同时交付分析流水线与可复用组件 | 由主要交付物决定主 Skill;分析主导时先由 `bensz-rmd-rules` 定义组件契约,再由本 Skill 实现组件,最后回到分析流程集成验证 |
不负责单纯运行既有代码,也不把分析项目中的每个 `_functions.R` 或 helper 都泛化成 Package。若主要验收标准是科学结果正确、缓存可恢复或报告可交付,应交给 `bensz-rmd-rules`;仅在其中出现具有独立复用价值的组件时参与协作。
## 流程
### 输入
确认主要交付物、复用范围(当前分析/当前项目/跨项目/公开 Package)、任务类型(函数/脚本/Package、新建/兼容修改)、数据与公开 API、对象生命周期、返回/错误、`output.dir`/`cache.dir` 职责、R/平台/依赖/硬件/复现约束,并读取现有 `DESCRIPTION`、`NAMESPACE`、`R/`、`tests/`、`src/`、`renv.lock` 与项目指令。不得读取凭据、环境文件或无关数据。保守默认不得改变公共 API;会改变类系统、覆盖、依赖或性能语义时先声明假设。
### 执行步骤
#### 1. 盘点现状与定义契约
先判定主要验收对象:是“函数/API/Package 自身的可复用契约”,还是“分析结果、数据流与报告”。再确认目标代码是否需要独立版本、稳定公共接口、跨项目复用或独立测试;仅服务当前分析单元的 helper 即使写在 `.R` 文件中,也仍由 `bensz-rmd-rules` 管理。
确认本 Skill 应主导后,读取调用链和测试,列出不变量、I/O、错误、副作用、并行及兼容边界。已有项目保持命名、类系统和公开 API,除非用户授权迁移。混合任务记录主 Skill、组件边界与交接点,避免两个 Skill 同时改写同一层职责。
#### 2. 选择类系统并建立最小对象模型
对象确有身份、不变量、状态或多步生命周期时才建类;无状态工具保持普通函数:
- S3:轻量值对象、单分派和多数分析型 API。
- S4:需要正式 slot、严格验证、多分派或 Bioconductor 互操作。
- R6:需要引用语义、可变资源或服务式生命周期。
类 API 至少有构造器、验证器、摘要打印和泛型/方法;不要让调用方拼内部结构。详见 [references/class-api-design.md](references/class-api-design.md)。
#### 3. 实现输出与缓存契约
自动落盘显式提供 `output.dir`;重要中间产物另设 `cache.dir`,二者不得同路:
- `output.dir`:稳定、面向用户、可解释的结果和 manifest。
- `cache.dir`:按输入、参数、代码/格式版本生成身份,可删除并重建。
- `NULL`:默认不持久化;不得暗中写入工作目录。
- 覆盖:默认拒绝覆盖,只有显式 `overwrite = TRUE` 才替换已知目标。
创建父目录、原子写入、返回产物路径;缓存损坏应可重算。详见 [references/io-cache-contract.md](references/io-cache-contract.md)。
#### 4. 保留可执行手测块
在函数文档与函数定义之后、核心逻辑之前放置:
```r
# Test
if (FALSE) {
x <- datasets::iris
output.dir <- tempfile("r-output-")
cache.dir <- tempfile("r-cache-")
# 在这里构造对象、参数并逐行运行当前函数。
}
```
使用内置/最小合成数据或项目 fixture,不写私人绝对路径、凭据或大数据。手测块不能替代 `testthat`。
#### 5. 写出清晰、惯用且可维护的 R
- 明确命名、小函数、早失败、稳定返回;公开函数写完整 roxygen2。
- 避免无意义封装、深层嵌套、隐式全局状态、部分匹配和 `1:length(x)`。
- 只在 I/O、用户输入、外部系统边界防御;构造器/验证器保证内部不变量。
- 随机过程显式接收 seed;库函数不静默改变 RNG、options、工作目录或并行计划。
- `styler`/`lintr` 辅助一致性,既有风格和可读性优先。
#### 6. 设计并行与性能路径
先用基准/profiler 找热点,再依次改算法、向量化/成熟包、复制与 I/O、分块、并行,最后考虑原生代码。并行优先 `future` 或领域主流后端;Package 尊重调用方 plan,顶层用 `parallelly::availableCores()` 配 workers。管理 RNG、错误、清理、嵌套并行与内存放大;默认留一个逻辑核,aggressive 模式需用户显式要求和资源评估。详见 [references/parallel-performance.md](references/parallel-performance.md)。
#### 7. 判断是否采用 C++/原生扩展
仅当 profiler 证明热点位于紧循环、递归、数值 kernel/转换边界且现有包无解时,才引入 `Rcpp`/`cpp11`。先冻结 R 参考实现和等价测试;检查 NA/NaN、溢出、内存、线程、中断和跨平台构建。文件编排、业务判断与易变逻辑留在 R。
#### 8. 按现代 R Package 工具链工作
Package 任务读取 [references/package-workflow.md](references/package-workflow.md):`usethis` 建结构,roxygen2 管文档/NAMESPACE,`testthat` 测试,`devtools` 执行 document/load_all/test/check。依赖写入 `DESCRIPTION`;API 变化同步示例、测试、README、CHANGELOG。
#### 9. 使用 demo 起步
`templates/demo-package/` 提供可运行 Package:S3 对象与方法、输出/缓存、手测块、future 并行和 testthat。复制后更换包名与领域语义,并运行:
```r
devtools::document("path/to/package")
devtools::test("path/to/package")
devtools::check("path/to/package", cran = FALSE)
```
#### 10. 审查并交付
检查类不变量、文件副作用、缓存失效、串/并行等价、RNG、恢复和跨平台路径;说明设计取舍、验证命令及风险。
### 输出
按规模交付可复用的 R 源码、类/泛型/方法、roxygen2、`testthat`、手测块与 demo;Package 同步 `DESCRIPTION`/`NAMESPACE`/README/CHANGELOG;性能任务附基准、等价证据与回退;摘要公开 API、副作用、依赖、验证和风险。若由分析流程发起协作,还要返回可供 `bensz-rmd-rules` 集成的调用契约和最小示例,但不接管分析编排、科学解释或报告交付。
### 输出管理
过程材料放入唯一 `.bensz-api/task-*/bensz-r-developer/{input,output,log}/`;正式源码与文档进目标项目。profile、临时编译物、R CMD check 和包归档进任务工作区或项目 `tmp/`。不得默认覆盖、删除或迁移用户文件。
### 校验
按风险选择并记录:
```r
parse(file = "R/example.R")
devtools::document()
devtools::test()
devtools::check(cran = FALSE)
lintr::lint_package()From huangwb8/skills, MIT.
More from huangwb8/skills
- 0.665score
knit-rmd-html
Bensz Conan
Knit/render R Markdown (.Rmd) to HTML reliably in this repo (auto-bootstrap pandoc, set correct knit_root_dir, and run rmarkdown::render via a Python wrapper).
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
which-model
Bensz Conan
当用户需要调研某个 skill 的模型选择最佳实践时使用:分析目标技能的源代码与工作流 → 通过联网搜索(Tavily/SearXNG/DuckDuckGo)收集官方文档与社区经验 → 总结出哪些场景该用什么模型/参数 → 生成 WHICHMODEL 小节插入目标技能的 README.md。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
bensz-rmd-rules
Bensz Conan
当主要交付物是基于 R 的数据分析流程、科学结果、可复现数据产品、R Markdown/HTML 报告或论文级图表与解读时使用;即使流程中包含 `.R` 脚本和仅服务当前分析的辅助函数,也由本 Skill 主导。⚠️ 不适用:主要交付物是可独立复用的 R 函数、稳定公共 API、类或 R…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
download-fulltext-pdf
Bensz Conan
当用户明确要求"下载文献全文"或"获取论文PDF"时使用。通过 DOI 号下载学术论文全文 PDF,支持 arXiv、Sci-Hub、Unpaywall、期刊官网等多源策略。⚠️ 不适用:用户只是想解析或处理已有的 PDF 文件(应使用 pdf skill)、只是想搜索论文信息而无需下载全文、没有提供…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
parallel-vibe
Bensz Conan
当用户明确要求并行或串行启用多个 Agent,或上游 Skill 声明需要统一的多 Agent 执行底座时使用。负责 Agent 的创建、隔离、调度、回收和汇总。⚠️ 不适用:普通 shell 并发、单元测试并发、下载任务,或要求强隔离的敏感数据处理。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
md-to-word
Bensz Conan
将一个或多个 Markdown 文档转换为格式优美的 Word(.docx),基于 Pandoc + 内置 reference.docx 模板(可选自定义模板),并确保不修改任何原始 Markdown 文件。内置模板已修复命名空间兼容性问题,支持 RGBA 图片自动转换。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
awesome-code
Bensz Conan
当用户明确要求使用 awesome-code、进行多代理协作或需要复杂任务规划时使用。它负责拆解任务、选择专业角色、设置门禁并审查结果;所有 Agent 的创建、隔离、串行或并行执行都必须交给 `parallel-vibe`。⚠️ 不适用:用户只需单一角色完成简单修改或咨询,或未表达多代理协作意图。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
verifier-state-architect
Bensz Conan
为任意 Agent Skill 设计、实现、接入或精简 Verifier 与 State;当用户希望给目标 skill 配置验证器/状态机、落实已有设计,或仅规划和审查架构时使用,尤其适合需要避免过度设计、硬编码并符合 Kernel 契约的任务。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
humanization
Bensz Conan
去除 NSFC 标书中的 AI 机器味,覆盖词语、句法、段落和章节层,尤其处理伪对立、工程协议腔、规格书式字段串、术语漂移、定义后连续否定排除项、边界声明过重和研究动作不清(不适用:非标书内容/需修改格式/需补充新内容);兼容旧名 nsfc-humanization 的润色请求
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
better-prompt
Bensz Conan
当用户明确要求"优化 prompt"、"改进提示词"、"润色指令"、"将简陋 prompt 转换为最佳实践版本",或要求"把 prompt 改写成伪代码"、"翻译成程序结构/可编程自然语言"时使用。支持两种输出模式:standard(基于 OpenAI/Anthropic 官方最佳实践做增强优化)与…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
auto-draw-plot
Bensz Conan
根据用户描述生成高质量绘图 prompt,并按通用、roadmap、schematic 模式通过 BenszAPI 直接完成 gpt-image-2.5-flare、gpt-image-2.5-sunburst、gpt-image-2 或 Nano Banana/Gemini…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
auto-test-project
Bensz Conan
当用户明确要求“测试项目”、 “运行 auto-test-project”或“进行项目级测试”时使用。对完整项目执行多轮 A 轮批判性测试与 B 轮质量检查,发现、记录、修复并验证问题。⚠️ 不适用:用户只是想优化功能、询问项目问题,或没有明确测试意图。
SkillAFreshness: A★ 50Claude Code +9
Signals
- Stars
- 50
- Forks
- 8
- Open issues
- 0
- Last commit (this folder)
- Sep 20, 2026 (1 month ago)
- Last release
- Oct 17, 2026 (11 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/huangwb8/skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Bensz Conan
- 0.665score
humanization
Bensz Conan
去除 NSFC 标书中的 AI 机器味,覆盖词语、句法、段落和章节层,尤其处理伪对立、工程协议腔、规格书式字段串、术语漂移、定义后连续否定排除项、边界声明过重和研究动作不清(不适用:非标书内容/需修改格式/需补充新内容);兼容旧名 nsfc-humanization 的润色请求
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
parallel-vibe
Bensz Conan
当用户明确要求并行或串行启用多个 Agent,或上游 Skill 声明需要统一的多 Agent 执行底座时使用。负责 Agent 的创建、隔离、调度、回收和汇总。⚠️ 不适用:普通 shell 并发、单元测试并发、下载任务,或要求强隔离的敏感数据处理。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
awesome-code
Bensz Conan
当用户明确要求使用 awesome-code、进行多代理协作或需要复杂任务规划时使用。它负责拆解任务、选择专业角色、设置门禁并审查结果;所有 Agent 的创建、隔离、串行或并行执行都必须交给 `parallel-vibe`。⚠️ 不适用:用户只需单一角色完成简单修改或咨询,或未表达多代理协作意图。
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
better-prompt
Bensz Conan
当用户明确要求"优化 prompt"、"改进提示词"、"润色指令"、"将简陋 prompt 转换为最佳实践版本",或要求"把 prompt 改写成伪代码"、"翻译成程序结构/可编程自然语言"时使用。支持两种输出模式:standard(基于 OpenAI/Anthropic 官方最佳实践做增强优化)与…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
auto-draw-plot
Bensz Conan
根据用户描述生成高质量绘图 prompt,并按通用、roadmap、schematic 模式通过 BenszAPI 直接完成 gpt-image-2.5-flare、gpt-image-2.5-sunburst、gpt-image-2 或 Nano Banana/Gemini…
SkillAFreshness: A★ 50Claude Code +9 - 0.665score
verifier-state-architect
Bensz Conan
为任意 Agent Skill 设计、实现、接入或精简 Verifier 与 State;当用户希望给目标 skill 配置验证器/状态机、落实已有设计,或仅规划和审查架构时使用,尤其适合需要避免过度设计、硬编码并符合 Kernel 契约的任务。
SkillAFreshness: A★ 50Claude Code +9
Cite this page
bensz-r-developer skill. Agent Mart. https://agentmart.dev/skills/huangwb8-bensz-r-developer (last updated 2026-10-24)