Agent skill

Submit Agent Result

by deepmodeling in deepmodeling/Uni-Lab-OS

Submit historical experiment results (agentresult) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API.

GPL-3.0Auto-check passed

Install Submit Agent Result

skills CLI
$ npx skills add deepmodeling/Uni-Lab-OS --skill submit-agent-result -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install deepmodeling/Uni-Lab-OS submit-agent-result --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/deepmodeling/Uni-Lab-OS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.cursor/skills/submit-agent-result .claude/skills/submit-agent-result && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
submit-agent-result
GitHub stars
178
Token cost
~1.7k tokens
SKILL.md length
330 words
Files
2 (incl. scripts)
Skills in repo
10
Repo updated
First seen
Licence
GPL-3.0

At a glance

Submit historical experiment results (agentresult) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API.

  • Works in 6 steps: ak / sk → AUTH → addr → BASE URL → notebook_uuid(必须询问用户) → …
  • The user wants to submit experiment results
  • SKILL.md covers 前置条件(缺一不可), Session State, 请求约定 and API Endpoints, plus 4 more sections
  • Runs Python scripts from its folder; calls python and curl; reaches leap-lab.test.bohrium.com and leap-lab.uat.bohrium.com

What it does

Submit Agent Result is an agent skill from deepmodeling/Uni-Lab-OS. Submit historical experiment results (agentresult) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API. Use when the user wants to submit experiment results, upload agent results, report experiment data, or mentions agentresult/实验结果/历史记录/notebook结果.

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/prepare_agent_result.py`).

It works with PowerShell. The repository describes itself as: A Platform for Laboratory Automation. The licence is GPL-3.0.

When your agent uses it

  • The user wants to submit experiment results
  • Upload agent results
  • Report experiment data
  • Mentions agentresult/实验结果/历史记录/notebook结果

Example prompts

  • “/submit-agent-result”

Requirements

  • Python 3

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. ak / sk → AUTH
  2. addr → BASE URL
  3. notebook_uuid(必须询问用户)
  4. 实验结果数据
  5. 获取实验室信息(自动获取 lab_uuid)
  6. 提交实验结果(agent_result)

What it can do on your machine

Read from SKILL.md and the folder at commit 43923ec. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python
    • curl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • leap-lab.test.bohrium.com
    • leap-lab.uat.bohrium.com
    • leap-lab.bohrium.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Submit Agent Result loads about 1.7k tokens when it runs. Until then it costs about 81 tokens; SKILL.md has 330 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~81
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from deepmodeling/Uni-Lab-OS at commit 43923ec, republished under its GPL-3.0 licence (© deepmodeling). 330 words, ~1,739 tokens.

Download SKILL.mdSave it as .claude/skills/submit-agent-result/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
submit-agent-result
description
Submit historical experiment results (agent_result) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API. Use when the user wants to submit experiment results, upload agent results, report experiment data, or mentions agent_result/实验结果/历史记录/notebook结果.

Uni-Lab 提交历史实验记录指南

通过 Uni-Lab 云端 API 向已创建的 notebook 提交实验结果数据(agent_result)。支持从 JSON / CSV 文件读取数据,整合后提交。

重要:本指南中的 Authorization: Lab <token> 是 Uni-Lab 平台专用的认证方式,Lab 是 Uni-Lab 的 auth scheme 关键字,不是 HTTP Basic 认证。请勿将其替换为 Basic。

前置条件(缺一不可)

使用本指南前,必须先确认以下信息。如果缺少任何一项,立即向用户询问并终止,等补齐后再继续。

1. ak / sk → AUTH

询问用户的启动参数,从 --ak --sk 或 config.py 中获取。

生成 AUTH token:

bash
# ⚠️ 注意:scheme 是 "Lab"(Uni-Lab 专用),不是 "Basic"
python -c "import base64,sys; print(base64.b64encode(f'{sys.argv[1]}:{sys.argv[2]}'.encode()).decode())" <ak> <sk>

输出即为 token 值,拼接为 Authorization: Lab <token>(Lab 是 Uni-Lab 平台 auth scheme,不可替换为 Basic)。

2. --addr → BASE URL
--addr 值BASE
testhttps://leap-lab.test.bohrium.com
uathttps://leap-lab.uat.bohrium.com
localhttp://127.0.0.1:48197
不传(默认)https://leap-lab.bohrium.com

确认后设置:

bash
BASE="<根据 addr 确定的 URL>"
# ⚠️ Auth scheme 必须是 "Lab"(Uni-Lab 专用),不是 "Basic"
AUTH="Authorization: Lab <上面命令输出的 token>"
3. notebook_uuid(必须询问用户)

必须主动询问用户:「请提供要提交结果的 notebook UUID。」

notebook_uuid 来自之前通过「批量提交实验」创建的实验批次,即 POST /api/v1/lab/notebook 返回的 data.uuid。

如果用户不记得,可提示:

  • 查看之前的对话记录中创建 notebook 时返回的 UUID
  • 或通过平台页面查找对应的 notebook

绝不能跳过此步骤,没有 notebook_uuid 无法提交。

4. 实验结果数据

用户需要提供实验结果数据,支持以下方式:

方式说明
JSON 文件直接作为 agent_result 的内容合并
CSV 文件转为 {"文件名": [行数据...]} 格式
手动指定用户直接告知 key-value 数据,由 agent 构建 JSON

四项全部就绪后才可开始。

Session State

在整个对话过程中,agent 需要记住以下状态:

  • lab_uuid — 实验室 UUID(通过 API #1 自动获取,不需要问用户)
  • notebook_uuid — 目标 notebook UUID(必须询问用户)

请求约定

所有请求使用 curl -s,PUT 需加 Content-Type: application/json。

Windows 平台必须使用 curl.exe(而非 PowerShell 的 curl 别名),示例中的 curl 均指 curl.exe。

PowerShell JSON 传参:PowerShell 中 -d '{"key":"value"}' 会因引号转义失败。请将 JSON 写入临时文件,用 -d '@tmp_body.json'(单引号包裹 @,否则 @ 会被 PowerShell 解析为 splatting 运算符导致报错)。


API Endpoints

1. 获取实验室信息(自动获取 lab_uuid)
bash
curl -s -X GET "$BASE/api/v1/edge/lab/info" -H "$AUTH"

返回:

json
{ "code": 0, "data": { "uuid": "xxx", "name": "实验室名称" } }

记住 data.uuid 为 lab_uuid。

2. 提交实验结果(agent_result)
bash
curl -s -X PUT "$BASE/api/v1/lab/notebook/agent-result" \
  -H "$AUTH" -H "Content-Type: application/json" \
  -d '<request_body>'

请求体结构:

json
{
    "notebook_uuid": "<notebook_uuid>",
    "agent_result": {
        "<key1>": "<value1>",
        "<key2>": 123,
        "<nested_key>": {"a": 1, "b": 2},
        "<array_key>": [{"col1": "v1", "col2": "v2"}, ...]
    }
}

注意:HTTP 方法是 PUT(不是 POST)。

必要字段
字段类型说明
notebook_uuidstring (UUID)目标 notebook 的 UUID,从批量提交实验时获取
agent_resultobject实验结果数据,任意 JSON 对象
agent_result 内容格式

agent_result 接受任意 JSON 对象,常见格式:

简单键值对:

json
{
  "avg_rtt_ms": 12.5,
  "status": "success",
  "test_count": 5
}

包含嵌套结构:

json
{
  "summary": { "total": 100, "passed": 98, "failed": 2 },
  "measurements": [
    { "sample_id": "S001", "value": 3.14, "unit": "mg/mL" },
    { "sample_id": "S002", "value": 2.71, "unit": "mg/mL" }
  ]
}

从 CSV 文件导入(脚本自动转换):

json
{
  "experiment_data": [
    { "温度": 25, "压力": 101.3, "产率": 0.85 },
    { "温度": 30, "压力": 101.3, "产率": 0.91 }
  ]
}

整合脚本

本文档同级目录下的 scripts/prepare_agent_result.py 可自动读取文件并构建请求体。

用法
bash
python scripts/prepare_agent_result.py \
    --notebook-uuid <uuid> \
    --files data1.json data2.csv \
    [--auth <token>] \
    [--base <BASE_URL>] \
    [--submit] \
    [--output <output.json>]
参数必选说明
--notebook-uuid是目标 notebook UUID
--files是输入文件路径(支持多个,JSON / CSV)
--auth提交时必选Lab token(base64(ak:sk))
--base提交时必选API base URL
--submit否加上此标志则直接提交到云端
--output否输出 JSON 路径(默认 agent_result_body.json)
文件合并规则
文件类型合并方式
.json(dict)字段直接合并到 agent_result 顶层
.json(list/other)以文件名为 key 放入 agent_result
.csv以文件名(不含扩展名)为 key,值为行对象数组

多个文件的字段会合并。JSON dict 中的重复 key 后者覆盖前者。

示例
bash
# 仅生成请求体文件(不提交)
python scripts/prepare_agent_result.py \
    --notebook-uuid 73c67dca-c8cc-4936-85a0-329106aa7cca \
    --files results.json measurements.csv

# 生成并直接提交
python scripts/prepare_agent_result.py \
    --notebook-uuid 73c67dca-c8cc-4936-85a0-329106aa7cca \
    --files results.json \
    --auth YTFmZDlkNGUt... \
    --base https://leap-lab.test.bohrium.com \
    --submit

手动构建方式

如果不使用脚本,也可手动构建请求体:

  1. 将实验结果数据组装为 JSON 对象
  2. 写入临时文件:
json
{
    "notebook_uuid": "<uuid>",
    "agent_result": { ... }
}
  1. 用 curl 提交:
bash
curl -s -X PUT "$BASE/api/v1/lab/notebook/agent-result" \
  -H "$AUTH" -H "Content-Type: application/json" \
  -d '@tmp_body.json'

完整工作流 Checklist

Task Progress:
- [ ] Step 1: 确认 ak/sk → 生成 AUTH token
- [ ] Step 2: 确认 --addr → 设置 BASE URL
- [ ] Step 3: GET /edge/lab/info → 获取 lab_uuid
- [ ] Step 4: **询问用户** notebook_uuid(必须,不可跳过)
- [ ] Step 5: 确认实验结果数据来源(文件路径或手动数据)
- [ ] Step 6: 运行 prepare_agent_result.py 或手动构建请求体
- [ ] Step 7: PUT /lab/notebook/agent-result 提交
- [ ] Step 8: 检查返回结果,确认提交成功

常见问题

Q: notebook_uuid 从哪里获取?

从之前「批量提交实验」时 POST /api/v1/lab/notebook 的返回值 data.uuid 获取。也可以在平台 UI 中查找对应的 notebook。

Q: agent_result 有固定的 schema 吗?

没有严格 schema,接受任意 JSON 对象。但建议包含有意义的字段名和结构化数据,方便后续分析。

Q: 可以多次提交同一个 notebook 的结果吗?

可以,后续提交会覆盖之前的 agent_result。

Q: 认证方式是 Lab 还是 Api?

本指南统一使用 Authorization: Lab <base64(ak:sk)> 方式(Lab 是 Uni-Lab 平台的 auth scheme,绝不能用 Basic 替代)。如果用户有独立的 API Key,也可用 Authorization: Api <key> 替代。

© deepmodeling, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in .cursor/skills/submit-agent-result of deepmodeling/Uni-Lab-OS.

  • SKILL.md
  • scripts/prepare_agent_result.py

Open the folder on GitHubat commit 43923ec

Compare with similar skills

Submit Agent Result next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Submit Agent Result compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Submit Agent Result this skilldeepmodeling/Uni-Lab-OS178—~1.7kAutomated safety check: PassGPL-3.0
Pester Failure AnalysisPowerShell/PowerShell56k—~5.1kAutomated safety check: PassMIT
Copilot Session Failure Analysisdotnet/maui23k—~3.4kAutomated safety check: PassMIT
Windows App SDK Issue Triage Reportmicrosoft/WindowsAppSDK4.7k—~3.4kAutomated safety check: PassApache-2.0
Evaluate PR Testsdotnet/maui23k—~2.9kAutomated safety check: PassMIT
Translation ReviewDevolutions/UniGetUI26k—~1.3kAutomated safety check: PassMIT

Similar skills

  • Pester Failure Analysis

    PowerShell/PowerShell

    Investigates failing Pester tests in PowerShell CI jobs by following a six-step workflow from pull request status to documented fix recommendations.

    56k GitHub stars~5.1k tokensUpdated today
    Testing & QAAuto-check passed
  • Mines local Copilot CLI session logs for dotnet/maui to rank costly or failing runs, tag recurring failure modes, propose repo edits and emit guard evals.

    23k GitHub stars~3.4k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Official

    Generates GitHub Feature Area Status reports for the Windows App SDK repository, scoring issues so teams can see what needs attention in each area.

    4.7k GitHub stars~3.4k tokensUpdated today
    DevelopmentAuto-check passed
  • Official

    Reviews the tests added in a pull request for fix coverage, quality, edge cases and test type, and recommends lighter test types where they would do.

    23k GitHub stars~2.9k tokensUpdated today
    Testing & QAAuto-check passed
  • Translation Review

    Devolutions/UniGetUI

    Reviews UniGetUI .json language files for localization quality, detects parity issues, English-equal entries, wrong-script content, and cross-language outliers, then generates a dataset for…

    26k GitHub stars~1.3k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Pebrel Runtime

    Kuddev/pebrel

    Control the live Pebrel terminal workspace from Codex or Claude Code.

    3k GitHub stars~3.5k tokensUpdated today
    DevelopmentAuto-check passed

More from deepmodeling/Uni-Lab-OS

All 10 skills in this repo
  • Batch Submit Experiment

    deepmodeling/Uni-Lab-OS

    Batch submit experiments (notebooks) to the Uni-Lab cloud platform (leap-lab) — list workflows, generate nodeparams from registry schemas, submit multiple rounds, check notebook status.

    178 GitHub stars~2.3k tokensUpdated 13 days ago
    Auto-check passed
  • Create Device Skill

    deepmodeling/Uni-Lab-OS

    Create a skill for any Uni-Lab device by extracting action schemas from the device registry.

    178 GitHub stars~4.2k tokensUpdated 13 days ago
    Auto-check passed
  • Filter Workflow By Tags

    deepmodeling/Uni-Lab-OS

    Query backend workflow list, aggregate all tags, and filter workflows by domain/scenario requirements using tags.

    178 GitHub stars~2.9k tokensUpdated 13 days ago
    Auto-check passed
  • Add Device

    deepmodeling/Uni-Lab-OS

    Guide for adding new devices to Uni-Lab-OS (接入新设备). An agent skill from deepmodeling/Uni-Lab-OS.

    178 GitHub stars~3.1k tokensUpdated 13 days ago
    Auto-check passed
  • Add Resource

    deepmodeling/Uni-Lab-OS

    Guide for adding new resources (materials, bottles, carriers, decks, warehouses) to Uni-Lab-OS (添加新物料/资源).

    178 GitHub stars~2.9k tokensUpdated 13 days ago
    Auto-check passed
  • Add Workstation

    deepmodeling/Uni-Lab-OS

    Guide for adding new workstations to Uni-Lab-OS (接入新工作站). An agent skill from deepmodeling/Uni-Lab-OS.

    178 GitHub stars~4.4k tokensUpdated 13 days ago
    Auto-check passed

Works with

Questions about Submit Agent Result

What does Submit Agent Result do?

Submit historical experiment results (agentresult) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API. Submit Agent Result is an agent skill from deepmodeling/Uni-Lab-OS. Submit historical experiment results (agentresult) to Uni-Lab cloud platform (leap-lab) notebook — read data files, assemble JSON payload, PUT to cloud API.

When should I use Submit Agent Result?

Submit Agent Result fits situations like: the user wants to submit experiment results; upload agent results; report experiment data; mentions agentresult/实验结果/历史记录/notebook结果.

How do I install Submit Agent Result in Claude Code?

Run `npx skills add deepmodeling/Uni-Lab-OS --skill submit-agent-result -a claude-code`. Or copy the skill folder (.cursor/skills/submit-agent-result in deepmodeling/Uni-Lab-OS) into .claude/skills/submit-agent-result in your project. Claude Code loads it when a task matches its description.

How do I install Submit Agent Result in Codex?

Run `npx skills add deepmodeling/Uni-Lab-OS --skill submit-agent-result -a codex`. Or copy the skill folder (.cursor/skills/submit-agent-result in deepmodeling/Uni-Lab-OS) into .agents/skills/submit-agent-result in your project. Codex loads it when a task matches its description.

Can I use Submit Agent Result in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add deepmodeling/Uni-Lab-OS --skill submit-agent-result -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/submit-agent-result, .gemini/skills/submit-agent-result, .github/skills/submit-agent-result and .opencode/skills/submit-agent-result in your project.

What does Submit Agent Result need to run?

Going by SKILL.md and its folder, Submit Agent Result needs Python for the scripts in its folder and the command-line tools its instructions call (python and curl). Our summary lists: Python 3.

Does Submit Agent Result access the network?

SKILL.md names 3 domains. In commands or code: leap-lab.test.bohrium.com, leap-lab.uat.bohrium.com and leap-lab.bohrium.com; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Submit Agent Result safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Submit Agent Result use?

Submit Agent Result is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Submit Agent Result use?

About 1.7k tokens (SKILL.md is roughly 7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Submit Agent Result?

Skills that share tags, products or a category with Submit Agent Result: Pester Failure Analysis (PowerShell/PowerShell, 56k stars), Copilot Session Failure Analysis (dotnet/maui, 23k stars), Windows App SDK Issue Triage Report (microsoft/WindowsAppSDK, 4.7k stars) and Evaluate PR Tests (dotnet/maui, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Submit Agent Result?

deepmodeling (a GitHub organization) maintains it in deepmodeling/Uni-Lab-OS, which has 178 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on September 24, 2026.

Source: deepmodeling/Uni-Lab-OS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.