Skip to content
Back to skills

Scnet Chat

ASecurity

通过自然语言交互管理 SCNet Chat 超算平台。用户需要查询/管理 SCNet 超算平台资源,包括查询作业、提交作业、管理文件、查看账户信息、切换区域等。触发关键词:scnet、超算、作业、作业管理、文件管理、账户、余额、查询余额、机时、集群、队列、上传、下载、重命名、区域切换、昆山、山东、西安等。

  • 23 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 18, 2026
ai-agentspythonbashgitapi

Works with

  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 20 files and shows the line behind each finding

Scanned October 18, 2026

npx -y skills add onescience-ai/OneSkills --skill scnet-chat --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Scnet Chat?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Scnet Chat
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/onescience-ai-scnet-chat/badge)](https://www.skillsdirectory.com/skills/onescience-ai-scnet-chat)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: scnet-chat
description: 通过自然语言交互管理 SCNet Chat 超算平台。用户需要查询/管理 SCNet 超算平台资源,包括查询作业、提交作业、管理文件、查看账户信息、切换区域等。触发关键词:scnet、超算、作业、作业管理、文件管理、账户、余额、查询余额、机时、集群、队列、上传、下载、重命名、区域切换、昆山、山东、西安等。
metadata:
  openclaw:
    requires:
      env:
        - SCNET_ACCESS_KEY
        - SCNET_SECRET_KEY
        - SCNET_USER
      bins:
        - python3
        - python
license: MIT
clawhub:
  slug: scnet-chat
  repo: https://github.com/wiltonMotta/scnet-chat
  autoEnable: true
  version: 2.1.0
type: executor
---

# SCNet Chat 技能

通过自然语言交互管理 SCNet 超算平台资源。

## When to Run

- 用户提到 SCNet、超算、作业管理、文件管理等关键词
- 用户需要查询作业(未指定实时/历史时同时查询两者)、提交作业、删除作业
- 用户需要上传/下载/管理远程文件
- 用户需要查看账户信息、余额、机时、作业统计(统计实时作业)
- 用户需要切换计算区域(昆山、山东、西安等)

## Workflow

1. **确定用户意图**:识别用户是想查询作业、管理文件、查看账户信息还是切换区域
2. **检查配置**:优先检查项目根目录 `onescience.json.runtime.scnet` 是否完整;缺失时应先调用 `onescience-runsite` 与用户交互补齐,不能依赖 `~/.scnet-chat.env` 直接提交任务
3. **执行命令**(根据操作系统选择正确的启动脚本):
   - **macOS/Linux**: `./scripts/run "自然语言命令"`
   - **Windows**: `./scripts/run.bat "自然语言命令"`
4. **返回结果**:将执行结果格式化后返回给用户

> **说明**:`scripts/run` 和 `scripts/run.bat` 是跨平台包装脚本,会自动检测并使用正确的 Python 解释器(macOS/Linux 优先使用 `python3`,Windows 优先使用 `python`)。

### 常用命令示例

**macOS/Linux:**
```bash
# 查询作业
# 作业管理 - 查询(基础)
# ⚠️ 注意:实时作业列表和历史作业列表是全区域聚合查询,一次调用返回所有区域的作业
# 💡 重要:如果未明确指定"实时"或"历史",默认同时查询实时作业和历史作业
./scripts/run "查询作业"                      # 未明确指定 → 同时查询实时作业+历史作业
./scripts/run "查看运行中的作业"              # 明确指定实时 → 仅查询实时作业
./scripts/run "实时作业"                      # 明确指定实时 → 仅查询实时作业
./scripts/run "历史作业"                      # 明确指定历史 → 仅查询历史作业
./scripts/run "作业详情 12345"                # 查询特定作业详情(需指定区域)

# 作业管理 - 查询(高级筛选)
./scripts/run "查询作业 第2页 每页20条"
./scripts/run "查询队列 debug 的作业 所有字段"
./scripts/run "查询用户 zhangsan 的作业"
./scripts/run "查询组作业"
./scripts/run "查询区域ID 12345 的作业"       # 筛选特定区域的作业

# 作业管理 - 历史作业查询(高级用法)
./scripts/run "历史作业 开始时间 2024-01-01 00:00:00 结束时间 2024-01-31 23:59:59"
./scripts/run "历史作业 最近7天"
./scripts/run "查询最近三天的历史作业"                    # 中文数字支持
./scripts/run "查询从2026-04-01到2026-04-03的历史作业"   # 简写日期范围
./scripts/run "查询历史作业,每页5条,显示第二页"         # 中文页码
./scripts/run "查询历史作业,状态为失败"                  # 中文状态筛选
./scripts/run "查询历史作业,队列为comp,每页10条"

# 作业管理 - 实时作业查询(高级用法)
# 💡 含"历史作业"关键词 → 仅查历史;含"实时"/"运行中" → 仅查实时;否则同时查两者
./scripts/run "查询作业 开始时间 2024-01-01 00:00:00 结束时间 2024-01-31 23:59:59"
./scripts/run "查询最近3天的作业"
./scripts/run "查询运行中的作业,每页5条"
./scripts/run "查询作业,状态为排队,显示第2页"

# 提交作业
./scripts/run "提交作业 sleep 900" # 简单命令
./scripts/run "提交作业 sleep 900 --queue comp --ppn 2 --wall-time 12:00:00 --job-name production-run1" # 位置命令 + 显式参数格式(推荐)

#提交作业帮助
./scripts/run "如何提交作业"
./scripts/run "提交作业帮助"
./scripts/run "作业有哪些参数"

# 删除作业
./scripts/run "删除作业 12345"

# 作业管理 - 队列和集群
./scripts/run "查询队列"
./scripts/run "集群信息"

# 文件管理 - 列表和上传下载
./scripts/run "文件列表"
./scripts/run "查看文件 /public/home/user"
./scripts/run "上传文件 ./data 到 /public/home/user/"
./scripts/run "下载文件 /public/home/user/data 到 ./"

# 文件管理 - 创建和删除
./scripts/run "创建目录 /public/home/user/workspace"
./scripts/run "创建文件 /public/home/user/data"
./scripts/run "删除文件 /public/home/user/data"

# 文件管理 - 复制移动和重命名
./scripts/run "复制文件 /src/data 到 /dst/"
./scripts/run "移动文件 /src/data 到 /dst/"
./scripts/run "重命名 /old/data 为 data1"
./scripts/run "检查文件 /public/home/user/file"

# 账户信息
./scripts/run "查询余额"
./scripts/run "查询用户"
./scripts/run "作业统计"                      # 按作业状态统计实时作业数量(非历史作业)
./scripts/run "机时"

# 区域切换
./scripts/run "切换到山东"
./scripts/run "切换到西安"

# 缓存管理
./scripts/run "刷新缓存"

# 帮助
./scripts/run "帮助"
```

**Windows:**
```bash
# 查询作业
# 作业管理 - 查询(基础)
# ⚠️ 注意:实时作业列表和历史作业列表是全区域聚合查询,一次调用返回所有区域的作业
# 💡 重要:如果未明确指定"实时"或"历史",默认同时查询实时作业和历史作业
./scripts/run.bat "查询作业"                      # 未明确指定 → 同时查询实时作业+历史作业
./scripts/run.bat "查看运行中的作业"              # 明确指定实时 → 仅查询实时作业
./scripts/run.bat "实时作业"                      # 明确指定实时 → 仅查询实时作业
./scripts/run.bat "历史作业"                      # 明确指定历史 → 仅查询历史作业
./scripts/run.bat "作业详情 12345"                # 查询特定作业详情(需指定区域)

# 作业管理 - 查询(高级筛选)
./scripts/run.bat "查询作业 第2页 每页20条"
./scripts/run.bat "查询队列 debug 的作业 所有字段"
./scripts/run.bat "查询用户 zhangsan 的作业"
./scripts/run.bat "查询组作业"
./scripts/run.bat "查询区域ID 12345 的作业"       # 筛选特定区域的作业

# 作业管理 - 历史作业查询(高级用法)
./scripts/run.bat "历史作业 开始时间 2024-01-01 00:00:00 结束时间 2024-01-31 23:59:59"
./scripts/run.bat "历史作业 最近7天"
./scripts/run.bat "查询最近三天的历史作业"                    # 中文数字支持
./scripts/run.bat "查询从2026-04-01到2026-04-03的历史作业"   # 简写日期范围
./scripts/run.bat "查询历史作业,每页5条,显示第二页"         # 中文页码
./scripts/run.bat "查询历史作业,状态为失败"                  # 中文状态筛选
./scripts/run.bat "查询历史作业,队列为comp,每页10条"

# 作业管理 - 实时作业查询(高级用法)
# 💡 含"历史作业"关键词 → 仅查历史;含"实时"/"运行中" → 仅查实时;否则同时查两者
./scripts/run.bat "查询作业 开始时间 2024-01-01 00:00:00 结束时间 2024-01-31 23:59:59"
./scripts/run.bat "查询最近3天的作业"
./scripts/run.bat "查询运行中的作业,每页5条"
./scripts/run.bat "查询作业,状态为排队,显示第2页"

# 提交作业
./scripts/run.bat "提交作业 sleep 900" # 简单命令
./scripts/run.bat "提交作业 sleep 900 --queue comp --wall-time 00:30:00" # Windows 下推荐使用位置命令 + 显式参数格式

#提交作业帮助
./scripts/run.bat "如何提交作业"
./scripts/run.bat "提交作业帮助"
./scripts/run.bat "作业有哪些参数"

# 删除作业
./scripts/run.bat "删除作业 12345"

# 作业管理 - 队列和集群
./scripts/run.bat "查询队列"
./scripts/run.bat "集群信息"

# 文件管理 - 列表和上传下载
./scripts/run.bat "文件列表"
./scripts/run.bat "查看文件 /public/home/user"
./scripts/run.bat "上传文件 ./data 到 /public/home/user/"
./scripts/run.bat "下载文件 /public/home/user/data 到 ./"

# 文件管理 - 创建和删除
./scripts/run.bat "创建目录 /public/home/user/workspace"
./scripts/run.bat "创建文件 /public/home/user/data"
./scripts/run.bat "删除文件 /public/home/user/data"

# 文件管理 - 复制移动和重命名
./scripts/run.bat "复制文件 /src/data 到 /dst/"
./scripts/run.bat "移动文件 /src/data 到 /dst/"
./scripts/run.bat "重命名 /old/data 为 data1"
./scripts/run.bat "检查文件 /public/home/user/file"

# 账户信息
./scripts/run.bat "查询余额"
./scripts/run.bat "查询用户"
./scripts/run.bat "作业统计"                      # 按作业状态统计实时作业数量(非历史作业)
./scripts/run.bat "机时"

# 区域切换
./scripts/run.bat "切换到山东"
./scripts/run.bat "切换到西安"

# 缓存管理
./scripts/run.bat "刷新缓存"

# 帮助
./scripts/run.bat "帮助"
```

## Output Format

- 作业查询结果按区域分组显示
- **未明确指定实时/历史时**:同时返回实时作业列表和历史作业列表
- **作业统计**:按作业状态(运行中、排队、完成等)统计**实时作业**数量
- 账户信息以表格形式展示
- 文件操作结果简洁明了
- 错误信息包含具体原因
- 根据用户当前操作给出3个下一步操作的预测问题

## 提交作业格式约束(Windows 重点)

- Windows 下提交作业时,优先使用“位置命令 + 显式参数”格式:`提交作业 bash run.sh --queue {queue} --work-dir {workdir} --ppn {ppn} --wall-time {wall_time} --job-name {job_name}`。
- `--ppn` 与 `--nproc` 对应平台 `GAP_PPN` / `GAP_NPROC`,是二选一资源参数;单节点软件任务优先只传 `--ppn`,软件内部并行数由各软件 skill 自己写入输入文件或运行脚本。
- Windows/OpenClaw 下软件任务不要优先使用 `--cmd "bash run.sh"`;该形式在平台模板二次注入时可能触发引号不闭合。保留 `--cmd` 仅用于兼容简单命令或人工调试。
- 启动命令只能出现在 `提交作业` 后、第一组显式参数前,例如 `bash run.sh`;`--queue`、`--work-dir`、`--ppn`、`--wall-time`、`--job-name` 等必须作为 scnet-chat 参数单独传递,不能拼进启动命令。
- 不要使用 `启动命令`、`命令行内容` 等中文标签;这些标签在某些路径下可能被原样写入生成脚本,导致 `command not found`。
- 若只是简单测试命令,可使用简洁格式:`提交作业 sleep 900`。
- 一旦涉及 `workdir`、队列、核数、作业名等参数,改用 `提交作业 <启动命令> --queue ... --work-dir ... --ppn ...` 形式,不要混用自然语言长句。

## 网络容错规则

scnet-chat 依赖远程 API,网络不稳定时可能出现超时或连接失败。执行命令时必须遵守以下规则:

1. **超时识别**:以下情况视为网络故障:
   - 命令执行超时(> 30 秒无响应)
   - SSL 握手超时(`handshake operation timed out`)
   - 读取超时(`read operation timed out`)
   - 连接拒绝或 DNS 解析失败

2. **重试策略**:遇到网络故障时,按以下策略重试:
   - 第 1 次:等待 5 秒后重试
   - 第 2 次:等待 15 秒后重试
   - 第 3 次:等待 30 秒后重试
   - 3 次重试均失败:停止并报告错误,让用户决定下一步

3. **重试时的提示**:每次重试前告知用户"网络超时,正在重试(第 N/3 次)..."

4. **禁止行为**:
   - 不要在未重试的情况下直接报错
   - 不要无限重试
   - 不要在重试间不做任何等待

## 配置说明

### 配置来源优先级

SCNet Chat 支持多种配置来源,按以下优先级读取(高优先级覆盖低优先级):

1. **项目根目录 `onescience.json`**(推荐且用于运行任务提交)
   - 路径:`runtime.scnet` 字段
   - 字段:`SCNET_ACCESS_KEY`、`SCNET_SECRET_KEY`、`SCNET_USER`,以及 `region`、`remote_work_dir`、`partition/queue` 等提交相关字段
   - 优点:与 OneScience 运行环境配置统一管理,是 runtime/scnet 提交的权威来源

2. **用户目录 `~/.scnet-chat.env`**(仅兼容独立使用)
   - 手动配置文件
   - 可用于独立使用 scnet-chat 做账户类/查询类操作;不应用作缺失项目级 `onescience.json.runtime.scnet` 时的任务提交兜底

### 配置方式

#### 方式 1:使用 onescience-runsite 技能(推荐)

如果项目根目录的 `onescience.json` 中缺少 SCNet 配置,调用 `onescience-runsite` 技能配置:


#### 方式 2:手动配置 ~/.scnet-chat.env

首次使用可手动在 `~/.scnet-chat.env` 配置:

```bash
SCNET_ACCESS_KEY=your_access_key
SCNET_SECRET_KEY=your_secret_key
SCNET_USER=your_username
```

#### 方式 3:手动编辑 onescience.json

直接编辑项目根目录的 `onescience.json` 文件中的 `runtime.scnet` 字段:

```json
{
  "runtime": {
    "scnet": {
      "SCNET_ACCESS_KEY": "your_access_key",
      "SCNET_SECRET_KEY": "your_secret_key",
      "SCNET_USER": "your_username",
      "region": "核心节点",
      "remote_work_dir": "",
      "partition": "comp"
    }
  }
}
```

### 获取凭证

访问 SCNet 控制台获取访问密钥:https://www.scnet.cn/ui/console/index.html#/personal/auth-manage

## 依赖安装

```bash
pip install aiohttp
```

Files in this skill

  • SKILL.md13.7 KB
  • assets/config.example.env510 B
  • assets/run_integration_tests.py8.2 KB
  • assets/test_cases.json1.7 KB
  • assets/test_integration_results.json12.7 KB
  • assets/test_intent_unit.py4 KB
  • references/doc.md12 KB
  • references/history-jobs-api.md2.9 KB
  • references/realtime-jobs-api.md2.1 KB
  • scripts/cache.py54.4 KB
  • scripts/compat.py1.3 KB
  • scripts/config.py5.4 KB
  • scripts/config_manager.py8.9 KB
  • scripts/file.py40.6 KB
  • scripts/job.py67.4 KB
  • scripts/run898 B
  • scripts/run.bat413 B
  • scripts/run.cmd413 B
  • scripts/scnet.py67.3 KB
  • scripts/scnet_chat.py86.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.