origin-scripting

origin-scripting is a skill for Claude Code, Codex from Fantasality/dsh-origin-plugin. It costs 66 tokens per session (2,856 once invoked), scanned A, original, MIT.

A guide for generating Python or LabTalk scripts that users can paste into OriginLab and run themselves. It is an alternative to connecting an AI assistant through MCP.

In plain words
What is it for?
It is for producing scripts to create or adjust OriginLab charts, including scripts users can inspect and run manually.
Why use it?
It helps users who do not want to install an MCP client or configure a Python environment, while warning about script operations that can silently fail.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit It is for producing scripts to create or adjust OriginLab charts, including scripts users can inspect and run manually.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/fantasality/dsh-origin-plugin/origin-scripting
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add Fantasality/dsh-origin-plugin --skill origin-scripting
Clone the repo
git clone --depth 1 https://github.com/Fantasality/dsh-origin-plugin

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for origin-scripting

README.md
[![agentmods](https://agentmods.dev/badge/skills/fantasality/dsh-origin-plugin/origin-scripting/github.svg)](https://agentmods.dev/skills/fantasality/dsh-origin-plugin/origin-scripting)
Your own site
<a href="https://agentmods.dev/skills/fantasality/dsh-origin-plugin/origin-scripting"><img src="https://agentmods.dev/badge/skills/fantasality/dsh-origin-plugin/origin-scripting/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for origin-scripting

Your own site · 80×15
<a href="https://agentmods.dev/skills/fantasality/dsh-origin-plugin/origin-scripting"><img src="https://agentmods.dev/badge/skills/fantasality/dsh-origin-plugin/origin-scripting.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 66 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,856 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00066 $0.02856
Opus 5.5 $0.00026 $0.01142
Sonnet 5.5 $0.00013 $0.00571
Haiku 4.5 $0.00007 $0.00286

Measured 28d ago against content hash 5f5f35e02412, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

origin-scripting scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 28d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/origin-scripting/SKILL.md · 155 lines

How it starts

The opening of the file, as written. The whole thing — 155 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Origin 脚本模式(零安装、零依赖、不碰 MCP)

什么时候用这个 skill(先判断,再生成)

  • 用户没有 MCP 客户端、不会配 Python 环境、不想改 mcp.json → 直接给脚本让他手动跑。
  • 用户只想要一段可复制的脚本(贴进 Origin 自己执行),而不是让 AI 自动画图。
  • 用户想在 Origin 内手动微调前,先有现成脚本打底。
  • 任何"给我段 Origin 脚本 / 贴进 Origin 怎么画 / 我自己跑"的表述 → 本 skill,不走 origin-plotting 的工具流。

铁律:生成脚本的硬规则(每条都对应本项目实测过的返工,违反必出错)

  1. 内嵌 Python 一律 import originpro as op:Origin 自带内嵌 Python + originpro,这是最稳通道;别用系统 python、别让用户 pip install。脚本开头固定:
    import originpro as op
    op.set_show(True)   # 让 Origin 窗口可见(调试时)
    
  2. LabTalk 裸表达式只在"目标图页恰为活动窗口"时可靠 → 脚本里先 activate() 再操作,或优先用 COM 作用域对象(originpro 的 wks/gp/gl 对象自带作用域,不依赖哪个窗口活动)。需要 LabTalk 时务必先 win -a <短名> 或 gp.activate(),否则写进别的窗口/静默返回 NaN。
  3. 已知静默失败通道(写进去像成功、实际没生效,最坑):
    • 3D 图(GL 层)的轴标题写不进去——别给 3D 图设轴标题,留空或改用 2D;强行写会静默无效。
    • 矩阵 heatmap 的 plotm 全变体静默失败——矩阵画热力图优先走 Origin 官方模板或先转工作表再画,别裸调 plotm。
  4. 通道纪律(写后必须读回,NaN 比较恒为 False):
    • 设完轴标题/范围/样式,读回确认落点(gl.xlabel 再打印),不要假设写成功。
    • NaN 比较永远 False:if x == float('nan') 永远不成立;判空用 import math; math.isnan(x) 或 x != x。
    • LabTalk 读回值是 NaN → 该通道在当前图/版本无效,别重试同一通道,换 originpro COM 对象。

生成脚本的通用骨架(复制后只改"←改这里"标注行)

# 作用:<一句话说明这张图干什么>
# 需要你改的:下面标了「←改这里」的行(数据 / 列名 / 轴标题 / 路径)
import originpro as op
op.set_show(True)

wks = op.new_sheet("w", "MyData")          # ←改这里:工作表短名
x = [20, 25, 30, 35]                        # ←改这里:X 数据
y = [95, 101, 112, 118]                     # ←改这里:Y 数据
wks.from_list(0, x, lname="temperature_C", axis="X")   # axis="X" 把第0列设为X
wks.from_list(1, y, lname="pressure_kPa", axis="Y")

gp = op.new_graph(lname="MyPlot")           # ←改这里:图页短名
gl = gp[0]                                  # 取第 0 个图层
gl.add_plot(wks, 1, 0, type="l")            # 1=Y列索引, 0=X列索引, type="l"折线
gl.rescale()

# 轴标题(语义化:物理量+单位)——写后读回验证
gl.set_x_label("Temperature (\u00b0C)")      # ←改这里
gl.set_y_label("Pressure (kPa)")            # ←改这里
print("x_label =", gl.xlabel)               # 读回确认(通道纪律)

模板(直接复制,只改标注行)

Read the full file on GitHub · 155 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 28d ago First seen · 155 lines · 66 tokens per session scan A 5f5f35e02412

Subscribe to this mod's changes

origin-scripting is a skill published in the GitHub repository Fantasality/dsh-origin-plugin (23 stars, last pushed 28d ago), licensed MIT. It adds 66 tokens to every session and 2,856 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-18.

Related

Other skills, from other repositories

agent-figure-gallery

Query visual scientific figure references, show candidates for human preference selection, export selected reference bundles, and guide plotting agents from human-selected visual examples to code action.

Dsadd4/AgentFigureGallery · 36 tokens

discretelog

Use when users ask about solving the discrete logarithm problem g^x ≡ y (mod P) with Shor-style two-register Fourier sampling, building/explaining DLP circuits, running simulator demos, or debugging post-processing (continued fractions plus two-dimensional Fourier-sample congruence solving). Triggers: discrete log…

unitarylab/quantum-practices · 127 tokens

aqc

Explains and demonstrates UnitaryLab's small-scale adiabatic quantum linear-system solver. Use it for AQC or QLSP questions, simulator examples, and work involving Householder state preparation, SVD block encoding, adiabatic schedules, post-selection, solution rescaling, or residual checks.

unitarylab/quantum-practices · 64 tokens

amplitude-estimation

A quantum algorithm for estimating the amplitude of a specific state in a quantum superposition, which can be used for various applications such as Monte Carlo simulations and optimization problems. Provides efficient implementations and educational resources for understanding and utilizing amplitude estimation in…

unitarylab/quantum-practices · 75 tokens

mps

Loads states with a Matrix Product State representation when low-entanglement structure can reduce the preparation cost. It covers state-to-MPS decomposition, bond-dimension truncation, canonicalization, QR-based unitary completion, work-qubit encoding, leakage, and phase-invariant validation in UnitaryLab.

unitarylab/quantum-practices · 63 tokens

superposition

Prepares a normalized state with sparse computational-basis support using compact coefficient preparation followed by a support permutation. The current implementation is exact up to floating-point error but materializes dense matrices.

unitarylab/quantum-practices · 40 tokens