diff --git a/skills/baoyu-comic/SKILL.md b/skills/baoyu-comic/SKILL.md index 5b5ac27..e60681a 100644 --- a/skills/baoyu-comic/SKILL.md +++ b/skills/baoyu-comic/SKILL.md @@ -107,6 +107,7 @@ Details: [references/auto-selection.md](references/auto-selection.md) 1. Determine this SKILL.md file's directory path as `SKILL_DIR` 2. Script path = `${SKILL_DIR}/scripts/.ts` 3. Replace all `${SKILL_DIR}` in this document with the actual path +4. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun **Script Reference**: | Script | Purpose | @@ -209,7 +210,7 @@ Analyze → [Check Existing?] → [Confirm: Style + Reviews] → Storyboard → - **Backup rule**: If `characters/characters.png` exists, rename to `characters/characters-backup-YYYYMMDD-HHMMSS.png` ```bash # Use Reference Sheet Prompt from characters/characters.md -npx -y bun ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ +${BUN_X} ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ --promptfiles characters/characters.md \ --image characters/characters.png --ar 4:3 ``` @@ -233,7 +234,7 @@ Compress to reduce token usage when used as reference image: ```bash # Example: ALWAYS include --ref for consistency -npx -y bun ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ +${BUN_X} ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ --promptfiles prompts/01-page-xxx.md \ --image 01-page-xxx.png --ar 3:4 \ --ref characters/characters.png diff --git a/skills/baoyu-comic/references/workflow.md b/skills/baoyu-comic/references/workflow.md index 2c39526..40889fc 100644 --- a/skills/baoyu-comic/references/workflow.md +++ b/skills/baoyu-comic/references/workflow.md @@ -431,7 +431,7 @@ With confirmed prompts from Step 5/6: ```bash # Each page generation MUST include --ref -npx -y bun ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ +${BUN_X} ${SKILL_DIR}/../baoyu-image-gen/scripts/main.ts \ --promptfiles prompts/01-page-xxx.md \ --image 01-page-xxx.png \ --ar 3:4 \ @@ -474,7 +474,7 @@ If image generation skill supports `--sessionId`: After all images generated: ```bash -npx -y bun ${SKILL_DIR}/scripts/merge-to-pdf.ts +${BUN_X} ${SKILL_DIR}/scripts/merge-to-pdf.ts ``` Creates `{topic-slug}.pdf` with all pages as full-page images. diff --git a/skills/baoyu-compress-image/SKILL.md b/skills/baoyu-compress-image/SKILL.md index 28cd083..37234de 100644 --- a/skills/baoyu-compress-image/SKILL.md +++ b/skills/baoyu-compress-image/SKILL.md @@ -9,7 +9,7 @@ Compresses images using best available tool (sips → cwebp → ImageMagick → ## Script Directory -Scripts in `scripts/` subdirectory. Replace `${SKILL_DIR}` with this SKILL.md's directory path. +Scripts in `scripts/` subdirectory. `${SKILL_DIR}` = this SKILL.md's directory path. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun. Replace `${SKILL_DIR}` and `${BUN_X}` with actual values. | Script | Purpose | |--------|---------| @@ -48,7 +48,7 @@ test -f "$HOME/.baoyu-skills/baoyu-compress-image/EXTEND.md" && echo "user" ## Usage ```bash -npx -y bun ${SKILL_DIR}/scripts/main.ts [options] +${BUN_X} ${SKILL_DIR}/scripts/main.ts [options] ``` ## Options @@ -67,16 +67,16 @@ npx -y bun ${SKILL_DIR}/scripts/main.ts [options] ```bash # Single file → WebP (replaces original) -npx -y bun ${SKILL_DIR}/scripts/main.ts image.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts image.png # Keep PNG format -npx -y bun ${SKILL_DIR}/scripts/main.ts image.png -f png --keep +${BUN_X} ${SKILL_DIR}/scripts/main.ts image.png -f png --keep # Directory recursive -npx -y bun ${SKILL_DIR}/scripts/main.ts ./images/ -r -q 75 +${BUN_X} ${SKILL_DIR}/scripts/main.ts ./images/ -r -q 75 # JSON output -npx -y bun ${SKILL_DIR}/scripts/main.ts image.png --json +${BUN_X} ${SKILL_DIR}/scripts/main.ts image.png --json ``` **Output**: diff --git a/skills/baoyu-danger-gemini-web/SKILL.md b/skills/baoyu-danger-gemini-web/SKILL.md index 9bab9ba..d3106fc 100644 --- a/skills/baoyu-danger-gemini-web/SKILL.md +++ b/skills/baoyu-danger-gemini-web/SKILL.md @@ -14,7 +14,8 @@ Text/image generation via Gemini Web API. Supports reference images and multi-tu **Agent Execution Instructions**: 1. Determine this SKILL.md file's directory path as `SKILL_DIR` 2. Script path = `${SKILL_DIR}/scripts/.ts` -3. Replace all `${SKILL_DIR}` in this document with the actual path +3. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun +4. Replace all `${SKILL_DIR}` and `${BUN_X}` in this document with actual values **Script Reference**: | Script | Purpose | @@ -75,23 +76,23 @@ test -f "$HOME/.baoyu-skills/baoyu-danger-gemini-web/EXTEND.md" && echo "user" ```bash # Text generation -npx -y bun ${SKILL_DIR}/scripts/main.ts "Your prompt" -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Your prompt" --model gemini-3-flash +${BUN_X} ${SKILL_DIR}/scripts/main.ts "Your prompt" +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "Your prompt" --model gemini-3-flash # Image generation -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cute cat" --image cat.png -npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cute cat" --image cat.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png # Vision input (reference images) -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Describe this" --reference image.png -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Create variation" --reference a.png --image out.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "Describe this" --reference image.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "Create variation" --reference a.png --image out.png # Multi-turn conversation -npx -y bun ${SKILL_DIR}/scripts/main.ts "Remember: 42" --sessionId session-abc -npx -y bun ${SKILL_DIR}/scripts/main.ts "What number?" --sessionId session-abc +${BUN_X} ${SKILL_DIR}/scripts/main.ts "Remember: 42" --sessionId session-abc +${BUN_X} ${SKILL_DIR}/scripts/main.ts "What number?" --sessionId session-abc # JSON output -npx -y bun ${SKILL_DIR}/scripts/main.ts "Hello" --json +${BUN_X} ${SKILL_DIR}/scripts/main.ts "Hello" --json ``` ## Options diff --git a/skills/baoyu-danger-x-to-markdown/SKILL.md b/skills/baoyu-danger-x-to-markdown/SKILL.md index 157ee16..06b1e04 100644 --- a/skills/baoyu-danger-x-to-markdown/SKILL.md +++ b/skills/baoyu-danger-x-to-markdown/SKILL.md @@ -16,6 +16,7 @@ Scripts located in `scripts/` subdirectory. **Path Resolution**: 1. `SKILL_DIR` = this SKILL.md's directory 2. Script path = `${SKILL_DIR}/scripts/main.ts` +3. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun ## Consent Requirement @@ -135,10 +136,10 @@ Full reference: [references/config/first-time-setup.md](references/config/first- ## Usage ```bash -npx -y bun ${SKILL_DIR}/scripts/main.ts -npx -y bun ${SKILL_DIR}/scripts/main.ts -o output.md -npx -y bun ${SKILL_DIR}/scripts/main.ts --download-media -npx -y bun ${SKILL_DIR}/scripts/main.ts --json +${BUN_X} ${SKILL_DIR}/scripts/main.ts +${BUN_X} ${SKILL_DIR}/scripts/main.ts -o output.md +${BUN_X} ${SKILL_DIR}/scripts/main.ts --download-media +${BUN_X} ${SKILL_DIR}/scripts/main.ts --json ``` ## Options diff --git a/skills/baoyu-format-markdown/SKILL.md b/skills/baoyu-format-markdown/SKILL.md index 1a9aa04..f7dd61d 100644 --- a/skills/baoyu-format-markdown/SKILL.md +++ b/skills/baoyu-format-markdown/SKILL.md @@ -9,7 +9,7 @@ Transforms plain text or markdown files into well-structured markdown with prope ## Script Directory -Scripts in `scripts/` subdirectory. Replace `${SKILL_DIR}` with this SKILL.md's directory path. +Scripts in `scripts/` subdirectory. `${SKILL_DIR}` = this SKILL.md's directory path. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun. Replace `${SKILL_DIR}` and `${BUN_X}` with actual values. | Script | Purpose | |--------|---------| @@ -210,7 +210,7 @@ Example: After saving, **must** run the formatting script: ```bash -npx -y bun ${SKILL_DIR}/scripts/main.ts {output-file-path} [options] +${BUN_X} ${SKILL_DIR}/scripts/main.ts {output-file-path} [options] ``` **Script Options:** @@ -229,16 +229,16 @@ npx -y bun ${SKILL_DIR}/scripts/main.ts {output-file-path} [options] ```bash # Default: spacing + emphasis enabled, quotes disabled -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md # Enable all features including quote replacement -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --quotes +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --quotes # Only fix emphasis issues, skip spacing -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --no-spacing +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --no-spacing # Disable all processing except frontmatter formatting -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --no-spacing --no-emphasis +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --no-spacing --no-emphasis ``` **Script performs (based on options):** diff --git a/skills/baoyu-image-gen/SKILL.md b/skills/baoyu-image-gen/SKILL.md index 9bf5e88..2c9ee6e 100644 --- a/skills/baoyu-image-gen/SKILL.md +++ b/skills/baoyu-image-gen/SKILL.md @@ -12,6 +12,7 @@ Official API-based image generation. Supports OpenAI, Google, DashScope (阿里 **Agent Execution**: 1. `SKILL_DIR` = this SKILL.md file's directory 2. Script path = `${SKILL_DIR}/scripts/main.ts` +3. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun ## Step 0: Load Preferences ⛔ BLOCKING @@ -44,34 +45,34 @@ Schema: `references/config/preferences-schema.md` ```bash # Basic -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image cat.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image cat.png # With aspect ratio -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A landscape" --image out.png --ar 16:9 +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A landscape" --image out.png --ar 16:9 # High quality -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --quality 2k +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --quality 2k # From prompt files -npx -y bun ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --promptfiles system.md content.md --image out.png # With reference images (Google multimodal or OpenAI edits) -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --ref source.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --ref source.png # With reference images (explicit provider/model) -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --provider google --model gemini-3-pro-image-preview --ref source.png +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "Make blue" --image out.png --provider google --model gemini-3-pro-image-preview --ref source.png # Specific provider -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider openai +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider openai # DashScope (阿里通义万象) -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider dashscope +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider dashscope # Replicate (google/nano-banana-pro) -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate # Replicate with specific model -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana ``` ## Options @@ -136,10 +137,10 @@ Examples: ```bash # Use Replicate default model -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate # Override model explicitly -npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana +${BUN_X} ${SKILL_DIR}/scripts/main.ts --prompt "A cat" --image out.png --provider replicate --model google/nano-banana ``` ## Provider Selection diff --git a/skills/baoyu-markdown-to-html/SKILL.md b/skills/baoyu-markdown-to-html/SKILL.md index 304eb56..954973d 100644 --- a/skills/baoyu-markdown-to-html/SKILL.md +++ b/skills/baoyu-markdown-to-html/SKILL.md @@ -9,7 +9,7 @@ Converts Markdown files to beautifully styled HTML with inline CSS, optimized fo ## Script Directory -**Agent Execution**: Determine this SKILL.md directory as `SKILL_DIR`, then use `${SKILL_DIR}/scripts/.ts`. +**Agent Execution**: Determine this SKILL.md directory as `SKILL_DIR`. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun. Replace `${SKILL_DIR}` and `${BUN_X}` with actual values. | Script | Purpose | |--------|---------| @@ -97,7 +97,7 @@ test -f "$HOME/.baoyu-skills/baoyu-post-to-wechat/EXTEND.md" && grep -o 'default ### Step 2: Convert ```bash -npx -y bun ${SKILL_DIR}/scripts/main.ts --theme +${BUN_X} ${SKILL_DIR}/scripts/main.ts --theme ``` ### Step 3: Report Result @@ -107,7 +107,7 @@ Display the output path from JSON result. If backup was created, mention it. ## Usage ```bash -npx -y bun ${SKILL_DIR}/scripts/main.ts [options] +${BUN_X} ${SKILL_DIR}/scripts/main.ts [options] ``` **Options:** @@ -144,19 +144,19 @@ npx -y bun ${SKILL_DIR}/scripts/main.ts [options] ```bash # Basic conversion (uses default theme, removes first heading) -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md # With specific theme -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --theme grace +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --theme grace # Theme with custom color -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --theme modern --color red +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --theme modern --color red # Keep the first heading in content -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --keep-title +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --keep-title # Override title -npx -y bun ${SKILL_DIR}/scripts/main.ts article.md --title "My Article" +${BUN_X} ${SKILL_DIR}/scripts/main.ts article.md --title "My Article" ``` ## Output diff --git a/skills/baoyu-post-to-wechat/SKILL.md b/skills/baoyu-post-to-wechat/SKILL.md index e8bd4a3..791ac6a 100644 --- a/skills/baoyu-post-to-wechat/SKILL.md +++ b/skills/baoyu-post-to-wechat/SKILL.md @@ -11,7 +11,7 @@ description: Posts content to WeChat Official Account (微信公众号) via API ## Script Directory -**Agent Execution**: Determine this SKILL.md directory as `SKILL_DIR`, then use `${SKILL_DIR}/scripts/.ts`. +**Agent Execution**: Determine this SKILL.md directory as `SKILL_DIR`, then use `${SKILL_DIR}/scripts/.ts`. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun. | Script | Purpose | |--------|---------| @@ -88,7 +88,7 @@ chrome_profile_path: /path/to/chrome/profile Before first use, suggest running the environment check. User can skip if they prefer. ```bash -npx -y bun ${SKILL_DIR}/scripts/check-permissions.ts +${BUN_X} ${SKILL_DIR}/scripts/check-permissions.ts ``` Checks: Chrome, profile isolation, Bun, Accessibility, clipboard, paste keystroke, API credentials, Chrome conflicts. @@ -111,8 +111,8 @@ Checks: Chrome, profile isolation, Bun, Accessibility, clipboard, paste keystrok For short posts with multiple images (up to 9): ```bash -npx -y bun ${SKILL_DIR}/scripts/wechat-browser.ts --markdown article.md --images ./images/ -npx -y bun ${SKILL_DIR}/scripts/wechat-browser.ts --title "标题" --content "内容" --image img.png --submit +${BUN_X} ${SKILL_DIR}/scripts/wechat-browser.ts --markdown article.md --images ./images/ +${BUN_X} ${SKILL_DIR}/scripts/wechat-browser.ts --title "标题" --content "内容" --image img.png --submit ``` See [references/image-text-posting.md](references/image-text-posting.md) for details. @@ -247,7 +247,7 @@ WECHAT_APP_SECRET= **API method** (accepts `.md` or `.html`): ```bash -npx -y bun ${SKILL_DIR}/scripts/wechat-api.ts --theme [--color ] [--title ] [--summary <summary>] [--author <author>] [--cover <cover_path>] +${BUN_X} ${SKILL_DIR}/scripts/wechat-api.ts <file> --theme <theme> [--color <color>] [--title <title>] [--summary <summary>] [--author <author>] [--cover <cover_path>] ``` **CRITICAL**: Always include `--theme` parameter. Never omit it, even if using `default`. Only include `--color` if explicitly set by user or EXTEND.md. @@ -266,8 +266,8 @@ If script parameters do not expose the two comment fields, still ensure final AP **Browser method** (accepts `--markdown` or `--html`): ```bash -npx -y bun ${SKILL_DIR}/scripts/wechat-article.ts --markdown <markdown_file> --theme <theme> [--color <color>] -npx -y bun ${SKILL_DIR}/scripts/wechat-article.ts --html <html_file> +${BUN_X} ${SKILL_DIR}/scripts/wechat-article.ts --markdown <markdown_file> --theme <theme> [--color <color>] +${BUN_X} ${SKILL_DIR}/scripts/wechat-article.ts --html <html_file> ``` ### Step 5: Completion Report diff --git a/skills/baoyu-post-to-wechat/references/article-posting.md b/skills/baoyu-post-to-wechat/references/article-posting.md index 080e7ee..c0d6c8d 100644 --- a/skills/baoyu-post-to-wechat/references/article-posting.md +++ b/skills/baoyu-post-to-wechat/references/article-posting.md @@ -6,13 +6,13 @@ Post markdown articles to WeChat Official Account with full formatting support. ```bash # Post markdown article -npx -y bun ./scripts/wechat-article.ts --markdown article.md +${BUN_X} ./scripts/wechat-article.ts --markdown article.md # With theme -npx -y bun ./scripts/wechat-article.ts --markdown article.md --theme grace +${BUN_X} ./scripts/wechat-article.ts --markdown article.md --theme grace # With explicit options -npx -y bun ./scripts/wechat-article.ts --markdown article.md --author "作者名" --summary "摘要" +${BUN_X} ./scripts/wechat-article.ts --markdown article.md --author "作者名" --summary "摘要" ``` ## Parameters diff --git a/skills/baoyu-post-to-wechat/references/image-text-posting.md b/skills/baoyu-post-to-wechat/references/image-text-posting.md index f04e8c1..38e7d94 100644 --- a/skills/baoyu-post-to-wechat/references/image-text-posting.md +++ b/skills/baoyu-post-to-wechat/references/image-text-posting.md @@ -8,13 +8,13 @@ Post image-text messages with multiple images to WeChat Official Account. ```bash # Post with images and markdown file (title/content extracted automatically) -npx -y bun ./scripts/wechat-browser.ts --markdown source.md --images ./images/ +${BUN_X} ./scripts/wechat-browser.ts --markdown source.md --images ./images/ # Post with explicit title and content -npx -y bun ./scripts/wechat-browser.ts --title "标题" --content "内容" --image img1.png --image img2.png +${BUN_X} ./scripts/wechat-browser.ts --title "标题" --content "内容" --image img1.png --image img2.png # Save as draft -npx -y bun ./scripts/wechat-browser.ts --markdown source.md --images ./images/ --submit +${BUN_X} ./scripts/wechat-browser.ts --markdown source.md --images ./images/ --submit ``` ## Parameters diff --git a/skills/baoyu-post-to-x/SKILL.md b/skills/baoyu-post-to-x/SKILL.md index 48ea876..f4abf1f 100644 --- a/skills/baoyu-post-to-x/SKILL.md +++ b/skills/baoyu-post-to-x/SKILL.md @@ -15,6 +15,7 @@ Posts text, images, videos, and long-form articles to X via real Chrome browser 1. Determine this SKILL.md file's directory path as `SKILL_DIR` 2. Script path = `${SKILL_DIR}/scripts/<script-name>.ts` 3. Replace all `${SKILL_DIR}` in this document with the actual path +4. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun **Script Reference**: | Script | Purpose | @@ -69,7 +70,7 @@ test -f "$HOME/.baoyu-skills/baoyu-post-to-x/EXTEND.md" && echo "user" Before first use, suggest running the environment check. User can skip if they prefer. ```bash -npx -y bun ${SKILL_DIR}/scripts/check-paste-permissions.ts +${BUN_X} ${SKILL_DIR}/scripts/check-paste-permissions.ts ``` Checks: Chrome, profile isolation, Bun, Accessibility, clipboard, paste keystroke, Chrome conflicts. @@ -98,7 +99,7 @@ Checks: Chrome, profile isolation, Bun, Accessibility, clipboard, paste keystrok Text + up to 4 images. ```bash -npx -y bun ${SKILL_DIR}/scripts/x-browser.ts "Hello!" --image ./photo.png +${BUN_X} ${SKILL_DIR}/scripts/x-browser.ts "Hello!" --image ./photo.png ``` **Parameters**: @@ -117,7 +118,7 @@ npx -y bun ${SKILL_DIR}/scripts/x-browser.ts "Hello!" --image ./photo.png Text + video file. ```bash -npx -y bun ${SKILL_DIR}/scripts/x-video.ts "Check this out!" --video ./clip.mp4 +${BUN_X} ${SKILL_DIR}/scripts/x-video.ts "Check this out!" --video ./clip.mp4 ``` **Parameters**: @@ -138,7 +139,7 @@ npx -y bun ${SKILL_DIR}/scripts/x-video.ts "Check this out!" --video ./clip.mp4 Quote an existing tweet with comment. ```bash -npx -y bun ${SKILL_DIR}/scripts/x-quote.ts https://x.com/user/status/123 "Great insight!" +${BUN_X} ${SKILL_DIR}/scripts/x-quote.ts https://x.com/user/status/123 "Great insight!" ``` **Parameters**: @@ -157,8 +158,8 @@ npx -y bun ${SKILL_DIR}/scripts/x-quote.ts https://x.com/user/status/123 "Great Long-form Markdown articles (requires X Premium). ```bash -npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md -npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md --cover ./cover.jpg +${BUN_X} ${SKILL_DIR}/scripts/x-article.ts article.md +${BUN_X} ${SKILL_DIR}/scripts/x-article.ts article.md --cover ./cover.jpg ``` **Parameters**: diff --git a/skills/baoyu-post-to-x/references/articles.md b/skills/baoyu-post-to-x/references/articles.md index 1626579..a0f0d66 100644 --- a/skills/baoyu-post-to-x/references/articles.md +++ b/skills/baoyu-post-to-x/references/articles.md @@ -12,13 +12,13 @@ Publish Markdown articles to X Articles editor with rich text formatting and ima ```bash # Publish markdown article (preview mode) -npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md +${BUN_X} ${SKILL_DIR}/scripts/x-article.ts article.md # With custom cover image -npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md --cover ./cover.jpg +${BUN_X} ${SKILL_DIR}/scripts/x-article.ts article.md --cover ./cover.jpg # Actually publish -npx -y bun ${SKILL_DIR}/scripts/x-article.ts article.md --submit +${BUN_X} ${SKILL_DIR}/scripts/x-article.ts article.md --submit ``` ## Markdown Format @@ -76,13 +76,13 @@ Convert markdown and inspect structure: ```bash # Get JSON with all metadata -npx -y bun ${SKILL_DIR}/scripts/md-to-html.ts article.md +${BUN_X} ${SKILL_DIR}/scripts/md-to-html.ts article.md # Output HTML only -npx -y bun ${SKILL_DIR}/scripts/md-to-html.ts article.md --html-only +${BUN_X} ${SKILL_DIR}/scripts/md-to-html.ts article.md --html-only # Save HTML to file -npx -y bun ${SKILL_DIR}/scripts/md-to-html.ts article.md --save-html /tmp/article.html +${BUN_X} ${SKILL_DIR}/scripts/md-to-html.ts article.md --save-html /tmp/article.html ``` JSON output: @@ -161,7 +161,7 @@ Claude: - **No create button**: Ensure X Premium subscription is active - **Cover upload fails**: Check file path and format (PNG, JPEG) - **Images not inserting**: Verify placeholders exist in pasted content -- **Content not pasting**: Check HTML clipboard: `npx -y bun ${SKILL_DIR}/scripts/copy-to-clipboard.ts html --file /tmp/test.html` +- **Content not pasting**: Check HTML clipboard: `${BUN_X} ${SKILL_DIR}/scripts/copy-to-clipboard.ts html --file /tmp/test.html` ## How It Works diff --git a/skills/baoyu-post-to-x/references/regular-posts.md b/skills/baoyu-post-to-x/references/regular-posts.md index 51a8977..01eedd9 100644 --- a/skills/baoyu-post-to-x/references/regular-posts.md +++ b/skills/baoyu-post-to-x/references/regular-posts.md @@ -9,20 +9,20 @@ If you prefer step-by-step control: ### Step 1: Copy Image to Clipboard ```bash -npx -y bun ${SKILL_DIR}/scripts/copy-to-clipboard.ts image /path/to/image.png +${BUN_X} ${SKILL_DIR}/scripts/copy-to-clipboard.ts image /path/to/image.png ``` ### Step 2: Paste from Clipboard ```bash # Simple paste to frontmost app -npx -y bun ${SKILL_DIR}/scripts/paste-from-clipboard.ts +${BUN_X} ${SKILL_DIR}/scripts/paste-from-clipboard.ts # Paste to Chrome with retries -npx -y bun ${SKILL_DIR}/scripts/paste-from-clipboard.ts --app "Google Chrome" --retries 5 +${BUN_X} ${SKILL_DIR}/scripts/paste-from-clipboard.ts --app "Google Chrome" --retries 5 # Quick paste with shorter delay -npx -y bun ${SKILL_DIR}/scripts/paste-from-clipboard.ts --delay 200 +${BUN_X} ${SKILL_DIR}/scripts/paste-from-clipboard.ts --delay 200 ``` ### Step 3: Use Playwright MCP (if Chrome session available) @@ -59,7 +59,7 @@ mcp__playwright__browser_take_screenshot filename="preview.png" User: /post-to-x "Hello from Claude!" --image ./screenshot.png Claude: -1. Runs: npx -y bun ${SKILL_DIR}/scripts/x-browser.ts "Hello from Claude!" --image ./screenshot.png +1. Runs: ${BUN_X} ${SKILL_DIR}/scripts/x-browser.ts "Hello from Claude!" --image ./screenshot.png 2. Chrome opens with X compose page 3. Text is typed into editor 4. Image is copied to clipboard and pasted @@ -72,7 +72,7 @@ Claude: - **Chrome not found**: Set `X_BROWSER_CHROME_PATH` environment variable - **Not logged in**: First run opens Chrome - log in manually, cookies are saved - **Image paste fails**: - - Verify clipboard script: `npx -y bun ${SKILL_DIR}/scripts/copy-to-clipboard.ts image <path>` + - Verify clipboard script: `${BUN_X} ${SKILL_DIR}/scripts/copy-to-clipboard.ts image <path>` - On macOS, grant "Accessibility" permission to Terminal/iTerm in System Settings > Privacy & Security > Accessibility - Keep Chrome window visible and in front during paste operations - **osascript permission denied**: Grant Terminal accessibility permissions in System Preferences diff --git a/skills/baoyu-slide-deck/SKILL.md b/skills/baoyu-slide-deck/SKILL.md index a83809c..b58efa7 100644 --- a/skills/baoyu-slide-deck/SKILL.md +++ b/skills/baoyu-slide-deck/SKILL.md @@ -24,6 +24,7 @@ Transform content into professional slide deck images. **Agent Execution Instructions**: 1. Determine this SKILL.md file's directory path as `SKILL_DIR` 2. Script path = `${SKILL_DIR}/scripts/<script-name>.ts` +3. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun | Script | Purpose | |--------|---------| @@ -550,8 +551,8 @@ options: ### Step 8: Merge to PPTX and PDF ```bash -npx -y bun ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir> -npx -y bun ${SKILL_DIR}/scripts/merge-to-pdf.ts <slide-deck-dir> +${BUN_X} ${SKILL_DIR}/scripts/merge-to-pptx.ts <slide-deck-dir> +${BUN_X} ${SKILL_DIR}/scripts/merge-to-pdf.ts <slide-deck-dir> ``` ### Step 9: Output Summary diff --git a/skills/baoyu-url-to-markdown/SKILL.md b/skills/baoyu-url-to-markdown/SKILL.md index 0ede520..86eaf59 100644 --- a/skills/baoyu-url-to-markdown/SKILL.md +++ b/skills/baoyu-url-to-markdown/SKILL.md @@ -14,7 +14,8 @@ Fetches any URL via Chrome CDP and converts HTML to clean markdown. **Agent Execution Instructions**: 1. Determine this SKILL.md file's directory path as `SKILL_DIR` 2. Script path = `${SKILL_DIR}/scripts/<script-name>.ts` -3. Replace all `${SKILL_DIR}` in this document with the actual path +3. Resolve `${BUN_X}` runtime: if `bun` installed → `bun`; if `npx` available → `npx -y bun`; else suggest installing bun +4. Replace all `${SKILL_DIR}` and `${BUN_X}` in this document with actual values **Script Reference**: | Script | Purpose | @@ -98,16 +99,16 @@ Full reference: [references/config/first-time-setup.md](references/config/first- ```bash # Auto mode (default) - capture when page loads -npx -y bun ${SKILL_DIR}/scripts/main.ts <url> +${BUN_X} ${SKILL_DIR}/scripts/main.ts <url> # Wait mode - wait for user signal before capture -npx -y bun ${SKILL_DIR}/scripts/main.ts <url> --wait +${BUN_X} ${SKILL_DIR}/scripts/main.ts <url> --wait # Save to specific file -npx -y bun ${SKILL_DIR}/scripts/main.ts <url> -o output.md +${BUN_X} ${SKILL_DIR}/scripts/main.ts <url> -o output.md # Download images and videos to local directories -npx -y bun ${SKILL_DIR}/scripts/main.ts <url> --download-media +${BUN_X} ${SKILL_DIR}/scripts/main.ts <url> --download-media ``` ## Options diff --git a/skills/baoyu-xhs-images/references/workflows/prompt-assembly.md b/skills/baoyu-xhs-images/references/workflows/prompt-assembly.md index 12be2e7..326d661 100644 --- a/skills/baoyu-xhs-images/references/workflows/prompt-assembly.md +++ b/skills/baoyu-xhs-images/references/workflows/prompt-assembly.md @@ -167,7 +167,7 @@ When generating multiple images in a series: 1. **Image 1 (cover)**: Generate without `--ref` — this establishes the visual anchor 2. **Images 2+**: Always pass image 1 as `--ref` to the image generation skill: ```bash - npx -y bun ${SKILL_DIR}/scripts/main.ts \ + ${BUN_X} ${SKILL_DIR}/scripts/main.ts \ --promptfiles prompts/02-content-xxx.md \ --ref path/to/01-cover-xxx.png \ --image 02-content-xxx.png --ar 3:4 --quality 2k