Adc Sandbox Usage logo

Adc Sandbox Usage

Community
infometa
adc-sandbox-usage

How to use the ADC zone runtime-domain connector correctly: which tools to call, in what order, what the guardrails reject, and how to read a failed job. Covers the ADC job workflow (template -> task -> Argo log), data files, collect plans, mining and multimodal retrieval, read-only host triage and read-only kubectl triage, read-only cloud resource queries, and image build/push to the zone registry. Write tools (create / dispatch / retry a job, copy a template, run host commands, submit or cancel an image build) ARE available here, but every write needs a two-phase confirmation (show the summary to the user, then send back the exact confirm_text) and is idempotent — never write without it. Use when a task needs this connector capability inside the ADC zone. Boundary: this skill only explains tool usage, it performs no actions itself.

Overview

Publisherinfometa
Repositoryworkbuddyskills
Skill nameadc-sandbox-usage
Stars
376
Forks
124
Bundled files
Instructions only
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by infometa on GitHub. Read the source before you install it.

Installation

Install the Adc Sandbox Usage AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/infometa/workbuddyskills/tree/main/connectors/adc-sandbox/skills/adc-sandbox-usage
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/infometa/workbuddyskills.git /tmp/workbuddyskills
mkdir -p .claude/skills
cp -r /tmp/workbuddyskills/connectors/adc-sandbox/skills/adc-sandbox-usage .claude/skills/adc-sandbox-usage
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Adc Sandbox Usage in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Adc Sandbox Usage on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Adc Sandbox Usage is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

智驾专区运行域 使用说明

工具面(一律以运行时为准)

工具按配置注册:宿主只注册已配置的上游 —— 未配置的上游不会出现在你的工具列表里。

所以这里不列工具清单:它是"当前事实",随上游增减而变,写进文档第二天就可能过期。 工具名与参数一律以运行时看到的为准(tools/list,或先搜一次把工具找出来); 不要凭印象"补"出一个工具名,也不要编造结果。

本连接器按上游分这几组能力:

上游能做什么写侧
作业域(DMS 直连)作业模板、作业任务与 Argo 日志、数据文件与采集计划、数据挖掘与多模态检索、本层动作自查有
主机排障(跳板机)连通性探测、白名单只读命令(⚠️ 见下方「> 字符陷阱」)、经确认的写命令与脚本有
TKE 排障kubectl 只读工具(对象 / 描述 / 事件 / 日志 / 资源用量)无(写操作经主机排障那组)
云资源查询任意只读云 API 动作(Describe / Get / List / Search / Check / Query / Inquire);写动作只放行服务端白名单里的那几个,未列入的一律拒有(经确认的白名单写动作,须两段式确认 + 幂等)
镜像构建推送服务状态、提交构建、轮询与取消、常驻运行时直发代码有
库存与客户资源(ADCM)可用区机型余量、趋势、告警、预扣、客户已用量无
CLS 日志 / 网络诊断没有专用工具 —— 查询面经云 API 的只读动作可达无

⚠️ TKE 没有自己的写工具:kubectl apply / delete / scale / rollout restart 这类写操作, 只能经主机排障那组的写工具在同一台跳板机上执行(就是跑 kubectl 的那台)—— 所以"工具面里没有 TKE 写工具"不等于"集群动不了"。

⚠️ > 字符陷阱(主机排障的只读命令):命令里只要出现 > 就会被当成重定向拒掉 —— 连 struct.unpack(">I")、if v>m 这种比较 / 格式符也会命中 ✗。判据不改,改写法: 用 int.from_bytes(b, "big") 代替 ">I",用 if m<v 代替 if v>m。

⚠️ 写侧已开放(2026-10-11 起):作业域、跳板机、镜像构建三组的写工具默认都在工具面里, 每一次写都必须两段式确认 + 幂等(见下节「写操作」)—— 缺 confirm_text 会被拒,且不会触达上游。 跳板机的写命令还受两道硬拦(都拦在两段式确认之前):A 档 = 服务/启动项类命令直接拒; E 档 = 不可逆操作类(rm -r /、mkfs、dd of=/dev/…、清空防火墙 / 关网卡这类会切断 自己链路的动作)本地直接拒、连确认都不给 —— 这类动作不存在"确认一下就放行"的路径, 别换措辞重试,改成可回退的做法(只删自己那部分、先备份)。

⚠️ 工具面里看不到写工具时,先分清三种原因(别一律说"写侧不开放"): ① 上游没配 —— 真的没有这个能力;② 令牌缺 mcp.write scope(只有 OAuth 模式有 scope 概念) —— 能力在,但那把令牌被 scope 挡了(写工具不出现在工具面里,调用会得 1005/403): 让用户换一把带 mcp.write 的授权(重新授权时加上该 scope,或改用静态令牌); ③ 平台侧的工具索引没带上它 —— 云端 Runtime 出现过"连接器 ready 但工具进不了模型的可用列表", 这时谁都调不到,如实说明即可,不要重试、不要编结果。

库存与客户资源(ADCM,只读)

判断「部署到哪个可用区」的顺序(具体工具名以运行时为准): 先看资源告警(总量够、但某机型告警时仍会排不上)→ 再看该区该机型的可用量 → 看趋势 (照这个速度还能撑多久)→ 别忘了预扣会占用可用量 → 最后对客户已用量。

⚠️ 这一族只有只读(上游第三、五章没有写接口,也没有要确认的写操作)。 报「凭据被拒 / 不可达」时,先调那一族的用户信息工具,把链路问题与参数问题分开。

镜像构建推送(宿主直连构建机,不经窄桥)

把代码 / 镜像地址变成推到上海侧仓库的容器镜像(专区靠仓库的实例同步分发)。

动线(工具名以运行时为准):

  1. 先看服务状态 —— 仓库凭据配没配、docker 与对象存储依赖在不在。
  2. 提交构建 —— source 四类:git(代码地址,monorepo 要给 subdir)· object(交接桶里的 代码包,大包走这条)· image(既有镜像,拉—重打—推)· upload(宿主侧先流式上传)。 立即返回 job_id。私有来源(git / 私有 registry)还要带凭据引用:引用名由管理员在 服务侧登记,凭据值不经过对话;不确定登记过没有,先按 tools/list 找那一族的查询工具看一眼。
  3. 轮询与拉日志 —— 构建是分钟级,别同步等;日志要增量拉。
  4. 需要时取消 —— 只能取消尚未结束的任务。
  5. 调试期免重建 —— 常驻运行时里同一 session_id 复用同一个容器,改代码直接跑 (文件落在 /work/code/ 下;容器工作目录是 /work,所以命令要写全路径); 跑通之后再用第 2 步固化成镜像。

⚠️ 代码包不要塞进工具参数(工具参数由模型生成,服务侧 JSON 上限默认 1 MB): 大包先在宿主侧流式上传或放进交接桶,再以 source.kind=object 提交。 只要"代码进专区"、不出镜像时(专区作业按对象键读代码):上传后走那一族的对象推送, 落到专区对象桶的指定对象键上 —— 桶由服务端配置(你只给键);把返回的 bucket + 键报给用户, 作业侧按它读 ✓。 宿主侧上传里,包大了还要再分片(开会话 → 按 offset 逐片追加 → 提交收尾):一次性吐几十 KB 的 base64 本身就不可靠 ✗;单片 / 合计上限与会话有效期按工具面自述取,超上限改走交接桶 ✓。

⚠️ 对象推送会"自动加一段前缀":你请求时给的键不等于最终落点,服务侧会加上自己那一段 —— 以推送回执里的完整键为准,作业侧按它写挂载前缀,别按你请求时写的那个 ✗。 文件名只允许字母数字与 . _ -,且首位必须是字母数字(_keep 这类会被拒)。 推完要三方核对(本地 / 挂载点 / 回执):COS 客户端有本地缓存,"脚本说写入成功" 不等于对象已落桶 —— 在另一台机器的挂载点上 ls 到才算数 ✓。

写操作:两段式确认 + 幂等(人工复核就在这一步)

写工具都是两段式,照这个顺序用,别跳:

  1. 先不带 confirm_text 调一次 —— 返回 summary(这一步要做什么)与应原样回传的 confirm_text。
  2. 把 summary 念给用户(带对象与影响范围),等他明确同意。
  3. 带原样的 confirm_text 再调一次 —— 参数必须与第一次完全一致;同参数只会执行一次(幂等键在服务端)。
  • 术语统一:确认串(confirm_text)+ 幂等键 —— 不要叫"令牌"。
  • 参数变了就重新确认:中途补参数(补 cluster_name、补 params)会换一个新确认串 ⇒ 回到第 1 步。
  • 不要猜 confirm_text;也不要因为第二次调用"没反应"就反复重试(幂等键会保持同一次执行,重试只污染判断)。
  • ⚠️ 跳板机写命令另有两道前置:A 档(服务 / 启动项类:systemctl restart/stop/reload、 reboot、crontab)与 E 档(不可逆操作类:rm -r /、mkfs、dd of=/dev/…、 清空防火墙 / 关网卡),拦在两段式确认之前 —— 命中时连 summary 都不会生成; 别换措辞重试(这类动作没有"确认一下就放行"的路径)。

作业动线(DMS 语义)

排查从"结果"往回走,别从猜开始:

  1. dms_task_list 筛出目标作业(关注状态码)。
  2. dms_task_get(id) 看 status、argoWorkflowName 与各节点配置。
  3. dms_task_log(id) 取 Argo 工作流日志 —— 失败原因基本都在这里。

状态码是固定取值,不要自己编:0 待调度 / 1 已下发 / 2 执行中 / 3 成功 / 4 失败 / 7 下发失败。

要新建作业时的顺序:先 dms_data_file_list 拿 file_id, 再 dms_template_list 选 template_id,然后 dms_task_create → dms_task_execute(建完不会自动执行, 这是 DMS 的接口形状)。

⚠️ 模板里的 memoryLimit / memoryRequest 必须带 Gi 单位(如 "4Gi"); 模板更新只影响之后创建的任务,不追溯已建任务。

⚠️ 下发是异步受理:status=0 不等于"没生效"。刚下发(或重试)后编排器拉起有延迟, 立即回读大概率还停在 0(待调度)—— 判读要等 1~2 分钟再看 status 是否离开 0, 或用只读 kubectl 看任务 Pod 是否被拉起。不要回读一次 status=0 就下"未生效"的结论。

运维细节

  • 端点级的注意事项与读错误判读,问 adc_capabilities(只读、不联网)—— 它回答: 本层替注入了什么、上游路径里的历史拼写、哪一族是 REST 形状、哪些接口本层不持有 schema, 以及失败时怎么区分「没查到」(上游业务的正常回执,带原文 code/msg)与 「查不了」(本层失败:上游超时 / 配置缺失 / 动作不在白名单)。 ⚠️ 这些是代码级事实,所以只在服务端回答、不进包(进包就得跟着升版重发,且很容易过期); 包内文本只留判据:两类失败下一步完全不同,都别编一个结果出来。 ⚠️ 工具面里没有 adc_capabilities 时(本地形态的包不在本仓库)—— 按上面这条判据判读。

失败定位

先 dms_task_get 看状态与节点 → dms_task_log 取日志 → 按现象定位环节:

现象最可能原因
显存不足 / OOM批次过大或资源与节点不匹配
数据路径不存在挂载路径与模板配置不一致
依赖版本冲突镜像基线与代码要求不一致
启动即退出入口命令错误或缺环境变量
超时被回收资源不足或存在死循环
状态停在 7 下发失败调度侧问题,不是作业自身失败

区分「没跑成」与「跑了但结果不好」 —— 两类问题的下一步完全不同。

硬约束

  • 不静默重试:失败先定位,再由用户决定是否重跑(dms_task_retry 可用,但不等于可以替你决定重跑)。
  • 别凭印象编 Id:模板 Id、任务 Id、file_id 都要从查询工具拿到。
  • 引用日志只取必要片段:日志可能很长、可能含内部路径 —— 长度本层不裁剪。
  • 凭据类字段会被自动剥掉:模板配置、返回值与命令输出在返回给你之前,已按「键名 / name-value 配对 / 高置信模式」剥掉凭据(AKID…、sk-…、JWT、PEM 私钥、password=… 这类)。所以某字段拿不到不等于它不存在 —— 先考虑是被裁剪了,别据此猜值,也别反复重试。
  • 写操作必须用户确认:所有写工具都会改真实状态(作业的建 / 下发 / 重试、模板复制、 主机命令与脚本、镜像构建与取消、常驻运行时跑代码)—— 缺 confirm_text 不得调用, 也不得替用户"先做了再说"。

风险(如实告知,别淡化)

⚠️ DMS 的写接口当前没有鉴权(文档原话是"内网可达即可调用")。本形态的写侧已开放, 所以"连接器层隐藏"那道老护栏已经不存在 —— 现在的门槛是工具层的两段式确认 + 幂等 (再加跳板机的危险动词黑名单 / A 档硬拦)。在 DMS 侧补上鉴权之前,不要把本形态的写能力当作用户已授权; 用户没说清对象与影响范围时,也不要替他确认。

Frequently asked questions

What does the Adc Sandbox Usage AI skill do?

How to use the ADC zone runtime-domain connector correctly: which tools to call, in what order, what the guardrails reject, and how to read a failed job. Covers the ADC job workflow (template -> task -> Argo log), data files, collect plans, mining and multimodal retrieval, read-only host triage and read-only kubectl triage, read-only cloud resource queries, and image build/push to the zone registry. Write tools (create / dispatch / retry a job, copy a template, run host commands, submit or cancel an image build) ARE available here, but every write needs a two-phase confirmation (show the su...

Why use Adc Sandbox Usage on TypingMind?

Because you install it once and use it with any model. Adc Sandbox Usage is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Adc Sandbox Usage in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/infometa/workbuddyskills/tree/main/connectors/adc-sandbox/skills/adc-sandbox-usage. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Adc Sandbox Usage?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Adc Sandbox Usage?

As many as you like. As long as a model supports skills, you can use Adc Sandbox Usage with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Adc Sandbox Usage AI skill free?

It is published on GitHub by infometa. Check the repository for licensing terms. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇