ワンクリックで
glimpse-prompt
One-shot Glimpse dialog. Use for confirm, choice, small form, text input, approval. Opens, returns JSON result, closes.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
One-shot Glimpse dialog. Use for confirm, choice, small form, text input, approval. Opens, returns JSON result, closes.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Set up or operate npm Trusted Publishing with OIDC and staged publishing using danielroe/uppt. Use when configuring npm release workflows, replacing NPM_TOKEN, creating first placeholder packages, running npm stage publish, or approving staged npm releases.
Persistent Glimpse window. Use for long-lived UI, dashboard, inspector, multi-step form, shell event loop, update/send/wait.
| name | glimpse-prompt |
| description | One-shot Glimpse dialog. Use for confirm, choice, small form, text input, approval. Opens, returns JSON result, closes. |
glimpse prompt = one-shot interaction. Opens temp window, waits for first page -> CLI message or close, prints JSON, exits.
Long-lived dashboard / multi-step event loop? Use glimpse-open skill.
result_json=$(glimpse prompt --width 360 --height 220 --title "Confirm" --html '
<main>
<p>Continue?</p>
<button id="yes">Yes</button>
<button id="cancel">Cancel</button>
</main>
<script>
document.querySelector("#yes").addEventListener("click", () => {
window.glimpse?.send?.({ type: "confirm.accepted" });
});
document.querySelector("#cancel").addEventListener("click", () => {
window.glimpse?.send?.({ type: "prompt.canceled" });
});
</script>
')
echo "$result_json"
Success envelope, submitted value in result:
{"ok":true,"result":{"type":"confirm.accepted"}}
User closes window without submit:
{"ok":true,"result":{"type":"window.closed"}}
Explicit cancel button sends reserved payload:
window.glimpse?.send?.({ type: 'prompt.canceled' });
Do not send raw null. v1 treats raw null like window close. Prefer discriminated payloads: every terminal outcome has type.
glimpse prompt --title "Label item" --width 420 --height 260 --html '
<form id="form">
<label>Name <input id="name" autofocus /></label>
<button>Save</button>
<button type="button" id="cancel">Cancel</button>
</form>
<script>
document.querySelector("#form").addEventListener("submit", event => {
event.preventDefault();
window.glimpse?.send?.({
type: "item.labeled",
name: document.querySelector("#name").value
});
});
document.querySelector("#cancel").addEventListener("click", () => {
window.glimpse?.send?.({ type: "prompt.canceled" });
});
</script>
'
Use timeout when script must not block forever:
glimpse prompt --timeout 30s --html '<button onclick="window.glimpse?.send?.({type:`ok`})">OK</button>'
Timeout = technical failure (ok:false), not prompt result.
Local/trusted URL prompt:
glimpse prompt --url http://localhost:3000/dialog
Remote URL prompts require both --allow-remote and --allow-bridge, because prompts need the page bridge to return a result to the CLI.
ok first.result.type.prompt.canceled + window.closed as successful terminal user outcomes, not command failures.--html for short inline prompts, file path for bigger UI, - for HTML from stdin.