跳到正文
cccskills
免费在 GitHub 公开

make-bot-ui

Use when a human invokes this skill to build a webhook UI that wakes a bot. Not for unpreviewed or unapproved credential, host, Tailscale, deployment, remote, paid, or irreversible changes.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(2)

  • SKILL.md6.5 KB
  • agents/openai.yaml140 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Make bot UI

Contract

FieldBound contract
TriggerA human explicitly invokes this skill to build a webhook UI that wakes a bot.
AuthorityHuman-gated: asks for explicit human invocation and previews the exact files, server endpoint, credential storage, network exposure, and any host-level Tailscale installation before changing them; otherwise reversible local: writes only the previewed webhook server and browser UI; rollback is version control. Do not perform an unpreviewed credential, data-at-rest, deployment, remote, paid, or irreversible action.
Side effectCreate or modify only the previewed webhook server and browser UI; optionally install and configure Tailscale node support only when the human explicitly requests that installation after seeing its host and network consequences.
DoneThe UI is working and has been exercised through the real server-to-webhook path, the bot wake request succeeds, and neither browser-delivered code nor browser-visible traffic contains the webhook secret.

Inputs

Required: the target project and run command; the bot webhook URL and its required request contract; the secret's approved server-side source, supplied without placing its value in browser code or chat output; and the UI action and fields that should wake the bot.

Optional: an existing server route to extend, UI constraints, the local or remote probe target, and a request to expose the server through Tailscale. A Tailscale request must identify the host and intended audience; installation or host configuration requires a separate preview of the exact host-level and network changes before execution.

Procedure

  1. Inspect the named project and identify its existing server, routing, configuration, and UI conventions. Bound the change to the files, endpoint, credential location, and network exposure needed for the requested wake action. Done when: the change boundary is stated and no out-of-scope file is queued.
  2. Present the bounded change set and consequences before mutation. Include every credential or data-at-rest change and, when requested, the exact Tailscale package, host, service, listener, and exposure change. Stop unless the human's explicit invocation covers the previewed external or irreversible work. Done when: the human confirms the preview or the run stops without mutation.
  3. Validate the webhook URL, required method, headers, payload fields, and expected success response at the server trust boundary. Validate and constrain every browser-supplied field before using it in the outbound request. Do not infer missing webhook semantics or secret values. Done when: every webhook contract field is validated or the run stops naming the missing field.
  4. Read the webhook secret only in server-side code from the approved server environment or credential store. Keep the secret out of HTML, browser JavaScript, serialized page state, URLs, logs, errors, and server responses. Make the server construct and authenticate the outbound webhook request. Done when: the secret is confined to server-side code and no browser-visible surface can contain it.
  5. Implement the smallest server route and UI needed for the wake action. The browser sends only validated non-secret inputs to the server; the server invokes the bot webhook and returns a bounded success or failure result that does not echo credentials or sensitive upstream content. Done when: the server route and UI exist and the browser sends only non-secret inputs.
  6. If Tailscale exposure was explicitly requested and approved after preview, install or configure only the named node support and expose only the approved listener to the approved audience. Otherwise, leave host packages and network configuration unchanged. Done when: the Tailscale configuration matches the approved preview or host state is unchanged.
  7. Launch the actual server and UI. Exercise the UI through the real browser-to-server-to-webhook path with an approved safe probe, and record the observed response and bot wake result. Inspect the browser-delivered assets, page state, URL, and browser-visible request and response data for the secret; treat any occurrence as failure and remove it before probing again. Done when: the end-to-end probe succeeds and the browser-side secret inspection is clean.
  8. Compare the observed state with the done predicate. Report success only when the wake request works and the browser-side secret inspection is clean; do not widen scope or invent probe evidence to obtain a passing result. Done when: the done predicate is confirmed or the failing observation is reported.

Failure and recovery

  • Missing or invalid input: do not mutate. Return blocked with the missing webhook contract, target, approved secret source, or host/exposure decision named exactly.
  • Authorization not established: do not perform the credential, data-at-rest, host installation, deployment, remote, paid, or irreversible action. Return blocked with the unapproved preview item.
  • Secret exposure: stop the probe, remove the secret from browser-delivered and browser-visible surfaces, invalidate or rotate it through the human's approved credential process if it may have escaped the local boundary, then repeat the complete probe. Never print the secret in the result.
  • Implementation, installation, network, or webhook failure: preserve the original error without credential material. Revert files changed by this execution to their pre-execution contents and undo only host or Tailscale changes made by this execution when that rollback is safe and was included in the preview; otherwise stop and identify the exact manual recovery action.
  • Partial result: a rendered UI, a running server, or a successful isolated webhook call is not success without the end-to-end probe and clean browser-side secret inspection. Return blocked with completed changes, remaining state, rollback performed, and the failing observation.

Output

Return the exact created or modified files and any approved host or Tailscale state changes, the command and target used for the end-to-end probe, the observed wake result, and a credential-redacted account of the browser-side secret inspection. End with success only when the done predicate holds; otherwise end with blocked and the applicable recovery state.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Use when explaining System V AMD64, ARM AAPCS, RISC-V psABI, stack frames, variadic calls, or FFI register rules. Not for the Rust FFI binding layer: use rust-ffi.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when configuring ADC sampling time, DMA-driven ADC, calibration, or DAC channel setup on bare-metal MCUs. Not for the DMA stream itself: use dma-baremetal.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

af-xdp

免费

Use when creating AF_XDP sockets, configuring UMEM and XSK rings, writing an XDP redirect program, or choosing copy versus zero-copy mode. Not for full kernel bypass: use dpdk.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a completed session needs an agent-environment retrospective. Not for an engineering retrospective from telemetry: use engineering-retrospective.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

Use when a redacted, trimmed agent transcript must be appended to a GitHub PR or issue body, with human approval and preview. Not for automated or model-initiated insertion.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

agents-md

免费

Use when a repo needs agent setup, AGENTS.md added or made lean, CLAUDE.md audited, or agent instructions scored or pruned. Not for remote, credential, publish, deploy, or irreversible changes.

中文简介正在准备中。当前显示原文说明。

OutlineDriven/odin-claude-plugin372026年9月29日 更新

查看 OutlineDriven 的全部技能

报告此技能的问题