statsoft-cli
跨平台统计软件 CLI 集成,面向 AI Agent;覆盖 34+ 款软件(R/Stata/SAS/SPSS/Python/贝叶斯/ML等),双语。核心价值:激活历史代码资产,用于 AI 工作流自动化。 / Cross-platform statistical software CLI integration for AI Agent; 34+ packages (R/Stata/SAS/SPSS/Python/Bayesian/ML, etc.), bilingual. Core value: activating historical code assets for AI workflow automation. Skill: statsoft-cli Owner: medstatstar Summary: 跨平台统计软件 CLI 集成,面向 AI Agent;覆盖 34+ 款软件(R/Stata/SAS/SPSS/Python/贝叶斯/ML等),双语。核心价值:激活历史代码资产,用于 AI 工作流自动化。 / Cross-platform statistical software CLI integration for AI Agent; 34+ packages (R/Stata/SAS/SPSS/Python/Bayesian/ML, etc.), bilingual. Core value: activating historical code assets for AI workflow automation. Tags: Initial Release:1.2.0, latest:2.8.2 Version history:
Rank
62
Safety
84
Downloads
2.8k
Updated
Oct 9, 2026
Version
2.8.2
Source
CLAWHUB
About
What it does, and when to use it.
Capability contract not published. No trust telemetry is available yet. 2.8K downloads reported by the source. Last updated 10/9/2026.
Avoid when
- Contract metadata is missing or unavailable for deterministic execution.
Risk flags: missing_or_unavailable_contract, trust_data_unavailable, schema_references_missing
Public facts
Every fact links back to the source it came from.
- Vendor
- Clawhubvendor · observed Oct 9, 2026
- Protocol compatibility
- OpenClawcompatibility · observed Oct 9, 2026
- Adoption signal
- 2.8K downloadsadoption · observed Oct 9, 2026
- Latest release
- 2.8.2release · observed Aug 2, 2026
- Handshake status
- UNKNOWNsecurity
Install and run
Setup complexity: low.
clawhub skill install s176fv8983h1rte6dmxwp9wt4n89j8p5:statsoft-cli- Setup complexity is classified as HIGH. You must provision dedicated cloud infrastructure or an isolated VM. Do not run this directly on your local workstation.
- Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.
Contract: missing
curl -s "https://www.xpersona.co/api/v1/agents/clawhub-medstatstar-statsoft-cli/snapshot"
Documentation
CLAWHUB
160,000 characters of source documentation, loaded on request.
Extracted files
5 files captured from the source.
SKILL.md
---
name: statsoft-cli
slug: statsoft-cli
displayName: 统计软件接入助手 / Statsoft-CLI
cn_name: 统计软件接入助手
version: "2.8.2"
summary: "跨平台统计软件 CLI 集成,面向 AI Agent;覆盖 34+ 款软件(R/Stata/SAS/SPSS/Python/贝叶斯/ML等),双语。核心价值:激活历史代码资产,用于 AI 工作流自动化。"
license: MIT
description: "跨平台统计软件 CLI 集成,面向 AI Agent;覆盖 34+ 款软件(R/Stata/SAS/SPSS/Python/贝叶斯/ML等),双语。核心价值:激活历史代码资产,用于 AI 工作流自动化。 / Cross-platform statistical software CLI integration for AI Agent; 34+ packages (R/Stata/SAS/SPSS/Python/Bayesian/ML, etc.), bilingual. Core value: activating historical code assets for AI workflow automation."
triggers:
- "SPSS"
- "SPSS Statistics"
- "R命令行"
- "Stata"
- "SAS"
- "统计软件"
- "连接统计软件"
- "statsoft-cli"
- "connect statistical software"
required_commands: [python, bash, powershell]
metadata:
{
"openclaw": { "emoji": "🛠️", "icon": "assets/icon.svg" },
"authors": ["medstatstar", "phoe-zip"],
"contributors": ["medstatstar", "phoe-zip"],
"version": "2.8.2",
"license": "MIT",
"tags": ["Statistical Software", "CLI", "R", "SPSS", "Stata", "SAS", "Bayesian", "Machine Learning", "Econometrics", "SEM", "Data Mining"],
"homepage": "https://github.com/medstatstar/statsoft-cli",
"repository": "https://github.com/medstatstar/statsoft-cli"
}
permissions:
scope: "user-space-only"
network: "off"
network_note: "Offline by default; only CRAN / Anaconda repo access for local dependency install, requires explicit confirmation."
filesystem: "read-only to its own files; writes only config.json under skill root with explicit opt-in"
data: "no external data transmission"
---
## Language
Pick the README that matches your language for human-readable, language-specific guides:
- **English guide** → [README.md](https://github.com/medstatstar/statsoft-cli/blob/main/README.md)
- **中文指南** → [README_zh-CN.md](https://github.com/medstatstar/statsoft-cli/blob/main/README_zh-CN.md)
This skill responds in the user's current input language (Chinese or English) and auto-detects / switches accordingly. The runtime scripts embed a locale check (`$script:isZH` in PowerShell, `SCRIPT_LANG` in Bash) so all user-facing prompts switch to Chinese on a `zh-*` UI culture and to English otherwise. Code comments and documentation are English-only.
The SKILL.md body, `references/*.md`, and `ADDITIONAL_SOFTWARE.md` are English-only and agent-facing; runtime command prompts switch to Chinese / English by locale. For end-to-end walkthroughs, examples, and troubleshooting in your language, open the README above.
## Overview
Activates historical code assets locked in statistical software (syntax, scripts, projects) and wires them into AI workflows via automated detection, configuration, and execution.
## Core Functions
Covers 34+ statistical / data-science packages, auto-routed by platform; non-Windows auto-hides incompatible software:
- **Cross-platform (Win / Mac / Linux, CLI)**: R, Stata, SAS, CmdStan, GenStat, Gretl, H2O.ai, JAGS, Julia, KNIME, Mathematica, Matlab, OREADME.md
# statsoft-cli [🇨🇳 中文 (Chinese)](./README_zh-CN.md) | [🇬🇧 English (Current)](#) <div align="center"> <img src="assets/icon.svg" alt="statsoft-cli logo" width="120" height="120"> </div> > **Cross-platform statistical software CLI integration for your AI Agent** > > You don't need to learn each tool's CLI — just tell the assistant which statistical software you want to use in plain language, and it detects, configures, and runs them inside your AI workflow. Covers 34+ packages (R, Stata, SAS, SPSS, Python, Bayesian, ML…), bilingual (Chinese / English). By default it only **detects** — it never writes config or runs anything risky without your explicit go-ahead. --- ## 1. How to Use It in a Chat (the Core) statsoft-cli is a **conversational skill**: you simply name the tool and the action in natural language — no commands to memorize. As a WorkBuddy skill it **auto-loads with no extra installation**. > **Quick start:** just name a tool and an action — *"Connect SPSS 26"*, *"Convert data.sav to data.dta"* — and the assistant detects, configures, and (with your OK) runs it. **It will not push you into a long menu:** a clear request acts immediately; a routing menu only appears when you're undecided (see Examples 4–5). Below are real conversational examples ordered from simple to advanced. Each shows **"You say"** and a sketch of **"The assistant replies"**, plus how to actually trigger the real action. ### Example 1 · Connect a single tool (most common) **You say:** > Connect SPSS 26 **Assistant replies (sketch):** > Scanning for SPSS Statistics… Found it at `C:\Program Files\IBM\SPSS\Statistics\26\stats.exe` (v26). > Detected only — I did not change config.json. To save this, say "save it" or set `STATSOFT_AUTO_WRITE` to `1`. **📌 No menu forced (simple path):** because this is a *simple* request (a named tool + action), the assistant detects and reports directly — no scan/routing menu pops up (see the Clarification Gate in SKILL.md). **📌 Trigger the real action:** By default only detection runs (fail-closed). To persist the result, say **"save the config"** / **"yes, write it"** at the prompt, or set `STATSOFT_AUTO_WRITE` to `1`. Execution of syntax / binaries also needs explicit confirmation. ### Example 2 · Run a syntax / convert data **You say:** > Convert data.sav to data.dta **Assistant replies (sketch):** > I'll use Stat/Transfer for that. Here is the planned command (dry-run shown). Confirm and I'll run it. ### Example 3 · Multi-software workflow **You say:** > In one session, use R for modeling and SPSS for descriptive stats ### Example 4 · Not sure what's installed (Complex menu) **You say:** > Set up my statistics tools, but I'm not sure which are installed or which versions I have **Assistant replies (sketch):** > Two ways to proceed — here's a menu: > **① How should I find your tools?** > - (a) Auto-scan my machine (~30s on Windows) — finds everything > - (b) I'll specify the paths myself (faster if you have ≤3) >
tests/README.md
# SPSS Splash-free Call Test / SPSS 无闪屏调用测试
## Test Purpose
验证 SPSS 无闪屏调用方式是否正常工作。
Verify that the SPSS splash-free call method works correctly.
> ⚠️ **副作用提示 / Side effects**:运行本测试会**执行第三方 SPSS 二进制**,并在磁盘上**写入文件** `test-data.sav`(约 5 条记录)。这是测试的预期产物,仅供手动执行;请勿在自动化流程中静默运行。测试完成后请参见文末「清理 / Cleanup」删除该文件。
>
> Running this test **executes the third-party SPSS binary** and **writes a file** `test-data.sav` (~5 rows) to disk. This is an expected artifact of a manually-run test — do not run it silently in automation. See "Cleanup" at the end to remove it afterward.
## Test Method
### Preferred Method (Completely Splash-free)
使用 SPSS 内置 Python 的 `spss` 模块直接运行语法,不调用 `stats.exe`,完全无 GUI。
Use SPSS built-in Python's `spss` module to run syntax directly, without calling `stats.exe`, completely GUI-free.
```bash
# 通过 spss_helper.py 运行
"[SPSS_PYTHON_PATH]" "[SKILL_DIR]/windows-only/SPSS/spss_helper.py" run-internal "[SPS_FILE]"
# 示例
"C:\Program Files\IBM\SPSS\Statistics\26\Python3\python.exe" \
"[SKILL_DIR]/windows-only/SPSS/spss_helper.py" \
run-internal \
"[SKILL_DIR]/tests/test-syntax.sps"
```
### Backup Method (No Splash)
通过 `stats.com`(控制台版)调用 .spj 文件,完全无闪屏:
```bash
# 示例
"C:\Program Files\IBM\SPSS\Statistics\26\stats.com" -production silent -nologo "[SKILL_DIR]/tests/test-job.spj"
```
`stats.com` 控制台版纯后台运行,绝无闪屏。
最后备选(可能有闪屏): `stats.exe -production silent -nologo`。
Call .spj file via `stats.exe -production`. This method may display splash screen.
```bash
# 通过 spss_helper.py 运行
"[STATS_EXE_PATH]" -production "[SPJ_FILE]" silent -nologo
# 示例
"C:\Program Files\IBM\SPSS\Statistics\26\stats.exe" \
-production \
"[SKILL_DIR]/tests/test-job.spj"
```
## Test Files
- `test-syntax.sps` — SPSS 语法文件,生成测试数据并保存
- `test-job.spj` — SPSS 生产作业文件(备用方式使用)
## Expected Results
1. **无闪屏** — 运行时不显示 SPSS GUI 窗口
2. **输出文件生成** — 生成 `test-data.sav` 文件
3. **数据正确** — `test-data.sav` 包含 5 条记录,id 和 score 两列
## Verification Method
```bash
# 检查输出文件是否生成
ls -la "[SKILL_DIR]/test-data.sav"
# 读取 .sav 文件内容(需要 pyreadstat)
python -c "
import pyreadstat
df, meta = pyreadstat.read_sav('[SKILL_DIR]/test-data.sav')
print(df)
"
```
## Cleanup
测试会写入 `test-data.sav`。测试完成后删除该文件即可清除所有磁盘副作用 / The test writes `test-data.sav`; delete it after the test to remove all disk side effects:
```bash
rm -f "[SKILL_DIR]/test-data.sav"
```
## Notes
1. SPSS 26 内置 Python 3.4,不支持 f-string,所有字符串格式化必须用 `%s` 或 `.format()`
2. 确保输出路径有写权限
3. 如果测试失败,检查 SPSS 安装路径是否正确_meta.json
{
"ownerId": "kn7amqq1jv28skb63wavr6shah89jsm5",
"slug": "statsoft-cli",
"version": "2.8.2",
"publishedAt": 1785672882418
}references/command-examples.md
# Command Invocation Examples
> This document contains CLI command invocation examples for each statistical software package.
---
## Table of Contents
1. [R](#r)
2. [SPSS](#spss)
3. [Stata](#stata)
4. [SAS](#sas)
5. [JMP](#jmp)
6. [GraphPad Prism](#graphpad)
7. [Stat/Transfer](#stattranfer)
8. [Other software](#others)
9. [JAGS](#jags)
10. [SHAZAM](#shazam)
11. [OxMetrics](#oxmetrics)
12. [TSP](#tsp)
13. [Tanagra](#tanagra)
14. [Orange](#orange)
15. [H2O.ai](#h2o)
16. [GenStat](#genstat)
17. [Rattle](#rattle)
18. [OpenBUGS](#openbugs)
19. [LIMDEP](#limdep)
20. [NLOGIT](#nlogit)
21. [Microfit](#microfit)
---
## R
### Basic run
```bash
# Run R script
Rscript --vanilla "script.R"
# Use R CMD BATCH (generates .Rout file)
R CMD BATCH "script.R" "output.Rout"
```
### Package installation (requires explicit user confirmation before network download/install)
```bash
# Downloads from CRAN and modifies the local R environment; requires explicit user confirmation before running — do not install without it
Rscript -e "install.packages('pkg', repos='https://cran.r-project.org')"
```
### Batch script template
```r
# script.R
options(warn=-1)
library(dplyr)
data <- read.csv("data.csv", fileEncoding="UTF-8")
result <- lm(y ~ x1 + x2, data=data)
summary(result)
write.csv(result$coefficients, "results.csv", row.names=FALSE)
save(result, file="results.RData")
```
### Common scenarios
```bash
# Read SPSS .sav file
Rscript -e "library(haven); df <- read_sav('data.sav'); print(head(df))"
# Generate HTML report
Rscript -e "rmarkdown::render('report.Rmd', output_file='report.html')"
# Large data processing
Rscript -e "library(arrow); df <- read_parquet('big_data.parquet'); print(dim(df))"
```
---
## SPSS
### 🎯 Usage Recommendation
> **For daily complex syntax runs** → **use Approach 1** (`stats.com` + `.spj`, foolproof)
>
> **Approach 2** (internal Python driver) **can only run pure analysis syntax** and **must not contain** the following commands:
> - ❌ `OUTPUT SAVE`
> - ❌ `OUTPUT EXPORT` / `OUTPUT DISPLAY`
> - ❌ `HOST COMMAND`
> - ❌ `XDATA` / `XSAVE` (when OUTPUT objects are involved)
>
> — When unsure whether a command involves OUTPUT/SAVE, use Approach 1 (`.spj`) for safety.
---
### ⭐ Preferred approach (completely splash-free)
Run directly through the SPSS built-in Python `spss` module:
```bash
# Invoke via spss_helper.py
"C:\Program Files\IBM\SPSS\Statistics\XX\Python3\python.exe" \
"C:\path\to\statsoft-cli\windows-only\SPSS\spss_helper.py" \
run-internal "C:\path\to\syntax.sps"
```
**Call chain**:
```
AI Agent (Bash tool)
→ python.exe spss_helper.py run-internal <sps_file>
→ subprocess.run([stats_python_path, helper_script], creationflags=0x08000000)
→ SPSS runs in background (zero window)
```
### Fallback approach
Run the .spj file via `stats.com` (console version, completely splash-free):
```bash
"C:\Program Files\IBM\SPSS\Statistics\XX\stats.com" -production silent -nologo "job.spj"
```
Or use `stats.exe` activepieces
AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents
cherry-studio
AI productivity studio with smart chat, autonomous agents, and 300+ assistants.
AionUi
Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!
CopilotKit
The Frontend for Agents & Generative UI. React + Angular
Machine-readable data
The same record, as JSON, for agents and crawlers.
{
"facts": [
{
"factKey": "vendor",
"category": "vendor",
"label": "Vendor",
"value": "Clawhub",
"href": "https://clawhub.ai/medstatstar/skills/statsoft-cli",
"sourceUrl": "https://clawhub.ai/medstatstar/skills/statsoft-cli",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T11:12:52.176Z",
"isPublic": true
},
{
"factKey": "protocols",
"category": "compatibility",
"label": "Protocol compatibility",
"value": "OpenClaw",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-medstatstar-statsoft-cli/contract",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-medstatstar-statsoft-cli/contract",
"sourceType": "contract",
"confidence": "medium",
"observedAt": "2026-10-09T11:12:52.176Z",
"isPublic": true
},
{
"factKey": "traction",
"category": "adoption",
"label": "Adoption signal",
"value": "2.8K downloads",
"href": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceUrl": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceType": "profile",
"confidence": "medium",
"observedAt": "2026-10-09T11:12:52.176Z",
"isPublic": true
},
{
"factKey": "latest_release",
"category": "release",
"label": "Latest release",
"value": "2.8.2",
"href": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceUrl": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-08-02T12:14:42.418Z",
"isPublic": true
},
{
"factKey": "handshake_status",
"category": "security",
"label": "Handshake status",
"value": "UNKNOWN",
"href": "https://www.xpersona.co/api/v1/agents/clawhub-medstatstar-statsoft-cli/trust",
"sourceUrl": "https://www.xpersona.co/api/v1/agents/clawhub-medstatstar-statsoft-cli/trust",
"sourceType": "trust",
"confidence": "medium",
"observedAt": null,
"isPublic": true
}
],
"events": [
{
"eventType": "release",
"title": "Release 2.8.2",
"description": "R1-R10 hardening (B1-B16) + ClawHub security-audit remediation; 48/48 tests pass.",
"href": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceUrl": "https://clawhub.ai/medstatstar/statsoft-cli",
"sourceType": "release",
"confidence": "medium",
"observedAt": "2026-08-02T12:14:42.418Z",
"isPublic": true
}
]
}Record generated Oct 9, 2026.
