بنقرة واحدة
publish-the-skill
Publish a skill folder as a .skill package to GitHub. Use when distributing skills.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Publish a skill folder as a .skill package to GitHub. Use when distributing skills.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Kimi WebBridge lets AI control the user's real browser — navigate, click, type, read, screenshot, and interact with any website using the user's actual login sessions. Use this skill whenever the user wants to interact with websites, automate browser tasks, scrape web content, or perform any action requiring a real browser. Also use when the user mentions "browser", "webpage", "open URL", "screenshot", or asks to read/interact with any website. Use even for simple-sounding browser requests — the daemon handles all complexity.
Record demo GIFs/MP4s of agent TUI sessions (Claude Code, Codex CLI, other agent CLIs), synchronized via a Stop-hook sentinel so the recording knows exactly when each response finishes. Two modes - scripted (VHS tape, repeatable) and live/adaptive (tmux + asciinema, where the outer Claude reads each inner response and decides the next prompt). Use when the user wants to record, capture, or make a demo/GIF/video of a Claude Code or Codex session, create a .tape file, drive a nested agent session interactively, or asks about VHS/asciinema recording of an agent CLI.
Put a website behind a Cloudflare Access (Zero Trust) login gate, or remove one, entirely from the CLI — no dashboard GUI. Use when the user wants to password/email-protect a hostname, gate a Cloudflare Pages or Workers site, restrict a site to specific emails, set up Zero Trust Access, or asks about "cf-gate". Manages Access applications and allow-email policies via the Cloudflare API using a token in the skill's .env. Note: wrangler does NOT manage Access — this uses the Cloudflare REST API directly.
Defer execution of a slash-command or prompt until a timer elapses. Starts a background polling timer that prints "TIMER DONE" on stdout, then executes the deferred prompt.
Generate an image via Codex CLI (OpenAI gpt-image-1) and save to a local path. Use when user asks to create/draw/generate an image AND save it (e.g. "draw X, save to images/y.png", "用 codex 生圖"). Requires `codex login` + `$OPENAI_API_KEY`.
DeepSeek client via the private chat.deepseek.com API (browser-exported userToken), not the official platform.deepseek.com API. Use for personal webgui automation, `x-ds-pow-response` / DeepSeekHashV1 POW solving, or SSE THINK/TOOL_SEARCH stream parsing.
| name | publish-the-skill |
| description | Publish a skill folder as a .skill package to GitHub. Use when distributing skills. |
Publish any skill folder as a distributable .skill package on GitHub with automated CI releases.
gh CLI authenticatedSKILL.md with frontmatter (name, description)Determine these values (ask if not obvious):
| Variable | Source | Example |
|---|---|---|
SKILL_DIR | Folder containing SKILL.md | ebmt-handbook/ |
SKILL_NAME | From SKILL.md frontmatter name: | ebmt-handbook |
REPO_NAME | {SKILL_NAME}-skill | ebmt-handbook-skill |
GH_USER | gh api user --jq '.login' | htlin222 |
DESCRIPTION | From SKILL.md frontmatter description: (first sentence, <160 chars) | |
LICENSE | From SKILL.md or ask user | CC BY 4.0 |
.gitignore.DS_Store
*.zip
*.skill
Write .github/workflows/release.yml:
name: Build & Release Skill
on:
push:
branches: [main]
workflow_dispatch:
permissions:
contents: write
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set version from SHA
id: version
run: |
SHORT_SHA="${GITHUB_SHA::7}"
echo "sha=${SHORT_SHA}" >> $GITHUB_OUTPUT
- name: Package skill
run: |
cd SKILL_DIR
zip -r ../SKILL_NAME.zip .
cd ..
cp SKILL_NAME.zip SKILL_NAME.skill
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: SKILL_NAME-${{ steps.version.outputs.sha }}
path: SKILL_NAME.skill
- name: Create GitHub Release
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
SHORT_SHA="${GITHUB_SHA::7}"
TAG="v0.1.0-${SHORT_SHA}"
cat > release-notes.md <<EOF
## SKILL_NAME skill
**Version:** \`${SHORT_SHA}\`
**Commit:** ${GITHUB_SHA}
### Install
\`\`\`bash
npx skills add GH_USER/REPO_NAME
\`\`\`
Or download the \`.skill\` file from assets below.
EOF
gh release create "${TAG}" \
--title "SKILL_NAME skill ${TAG}" \
--notes-file release-notes.md \
SKILL_NAME.skill
Replace all SKILL_DIR, SKILL_NAME, REPO_NAME, GH_USER placeholders with actual values.
# SKILL_NAME
[](https://github.com/GH_USER/REPO_NAME/actions/workflows/release.yml)
[](https://github.com/GH_USER/REPO_NAME/releases/latest)
[](LICENSE_URL)
[](https://github.com/vercel-labs/skills)
[](https://github.com/vercel-labs/skills#supported-agents)
> DESCRIPTION_ONE_LINER
## Install
\```bash
npx skills add GH_USER/REPO_NAME
npx skills add -g GH_USER/REPO_NAME # global
npx skills add GH_USER/REPO_NAME --agent claude-code # specific agent
\```
## What it does
WHAT_IT_DOES (extract from SKILL.md body)
## Skill structure
TREE_OUTPUT (run `tree SKILL_DIR`)
## Protocol
This skill follows the [vercel-labs/skills](https://github.com/vercel-labs/skills) protocol.
Each push to `main` triggers a GitHub Action that packages the skill as a `.skill` file
and creates a release tagged with the commit SHA.
## License
LICENSE_LINE
Replace all placeholders. Generate the tree from actual directory contents.
git init && git branch -M main
git add -A
git commit -m "Initial release: SKILL_NAME skill for AI coding agents"
gh repo create REPO_NAME --public \
--description "DESCRIPTION_SHORT. Install: npx skills add GH_USER/REPO_NAME" \
--source . --push
gh run list --repo GH_USER/REPO_NAME --limit 1
gh run watch <RUN_ID> --repo GH_USER/REPO_NAME --exit-status
gh release list --repo GH_USER/REPO_NAME --limit 1
Report the repo URL and install command to the user.