From 758d7d5aa608795f58e6bd676fcbc44a378ee479 Mon Sep 17 00:00:00 2001 From: OpenWaygate <27287694+OpenWaygate@users.noreply.github.com> Date: Thu, 12 Mar 2026 20:23:04 +0800 Subject: [PATCH] :speech_balloon: Add setup for new user --- .../SKILL.md | 6 +- .../references/activity-list.md | 0 skills/youtube-activity/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/caption-delete.md | 0 .../references/caption-download.md | 0 .../references/caption-insert.md | 0 .../references/caption-list.md | 0 .../references/caption-update.md | 0 skills/youtube-caption/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/channel-list.md | 0 .../references/channel-update.md | 0 skills/youtube-channel/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/channelBanner-insert.md | 0 .../youtube-channelBanner/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/channelSection-delete.md | 0 .../references/channelSection-list.md | 0 .../references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/comment-delete.md | 0 .../references/comment-insert.md | 0 .../references/comment-list.md | 0 .../references/comment-markAsSpam.md | 0 .../references/comment-setModerationStatus.md | 0 .../references/comment-update.md | 0 skills/youtube-comment/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/commentThread-insert.md | 0 .../references/commentThread-list.md | 0 .../youtube-commentThread/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/i18nLanguage-list.md | 0 .../youtube-i18nLanguage/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/i18nRegion-list.md | 0 skills/youtube-i18nRegion/references/setup.md | 62 +++++++++++++++++++ .../{yutu-member => youtube-member}/SKILL.md | 6 +- .../references/member-list.md | 0 skills/youtube-member/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/membershipsLevel-list.md | 0 .../references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/playlist-delete.md | 0 .../references/playlist-insert.md | 0 .../references/playlist-list.md | 0 .../references/playlist-update.md | 0 skills/youtube-playlist/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/playlistImage-delete.md | 0 .../references/playlistImage-insert.md | 0 .../references/playlistImage-list.md | 0 .../references/playlistImage-update.md | 0 .../youtube-playlistImage/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../references/playlistItem-delete.md | 0 .../references/playlistItem-insert.md | 0 .../references/playlistItem-list.md | 0 .../references/playlistItem-update.md | 0 .../youtube-playlistItem/references/setup.md | 62 +++++++++++++++++++ .../{yutu-search => youtube-search}/SKILL.md | 6 +- .../references/search-list.md | 0 skills/youtube-search/references/setup.md | 62 +++++++++++++++++++ .../SKILL.md | 6 +- .../youtube-subscription/references/setup.md | 62 +++++++++++++++++++ .../references/subscription-delete.md | 0 .../references/subscription-insert.md | 0 .../references/subscription-list.md | 0 .../SKILL.md | 6 +- .../references/setup.md | 62 +++++++++++++++++++ .../references/superChatEvent-list.md | 0 .../SKILL.md | 6 +- skills/youtube-thumbnail/references/setup.md | 62 +++++++++++++++++++ .../references/thumbnail-set.md | 0 skills/{yutu-video => youtube-video}/SKILL.md | 6 +- skills/youtube-video/references/setup.md | 62 +++++++++++++++++++ .../references/video-delete.md | 0 .../references/video-getRating.md | 0 .../references/video-insert.md | 0 .../references/video-list.md | 0 .../references/video-rate.md | 0 .../references/video-reportAbuse.md | 0 .../references/video-update.md | 0 .../SKILL.md | 6 +- .../references/setup.md | 62 +++++++++++++++++++ .../references/videoAbuseReportReason-list.md | 0 .../SKILL.md | 6 +- .../youtube-videoCategory/references/setup.md | 62 +++++++++++++++++++ .../references/videoCategory-list.md | 0 .../SKILL.md | 6 +- skills/youtube-watermark/references/setup.md | 62 +++++++++++++++++++ .../references/watermark-set.md | 0 .../references/watermark-unset.md | 0 96 files changed, 1474 insertions(+), 22 deletions(-) rename skills/{yutu-activity => youtube-activity}/SKILL.md (62%) rename skills/{yutu-activity => youtube-activity}/references/activity-list.md (100%) create mode 100644 skills/youtube-activity/references/setup.md rename skills/{yutu-caption => youtube-caption}/SKILL.md (64%) rename skills/{yutu-caption => youtube-caption}/references/caption-delete.md (100%) rename skills/{yutu-caption => youtube-caption}/references/caption-download.md (100%) rename skills/{yutu-caption => youtube-caption}/references/caption-insert.md (100%) rename skills/{yutu-caption => youtube-caption}/references/caption-list.md (100%) rename skills/{yutu-caption => youtube-caption}/references/caption-update.md (100%) create mode 100644 skills/youtube-caption/references/setup.md rename skills/{yutu-channel => youtube-channel}/SKILL.md (61%) rename skills/{yutu-channel => youtube-channel}/references/channel-list.md (100%) rename skills/{yutu-channel => youtube-channel}/references/channel-update.md (100%) create mode 100644 skills/youtube-channel/references/setup.md rename skills/{yutu-channelBanner => youtube-channelBanner}/SKILL.md (65%) rename skills/{yutu-channelBanner => youtube-channelBanner}/references/channelBanner-insert.md (100%) create mode 100644 skills/youtube-channelBanner/references/setup.md rename skills/{yutu-channelSection => youtube-channelSection}/SKILL.md (65%) rename skills/{yutu-channelSection => youtube-channelSection}/references/channelSection-delete.md (100%) rename skills/{yutu-channelSection => youtube-channelSection}/references/channelSection-list.md (100%) create mode 100644 skills/youtube-channelSection/references/setup.md rename skills/{yutu-comment => youtube-comment}/SKILL.md (62%) rename skills/{yutu-comment => youtube-comment}/references/comment-delete.md (100%) rename skills/{yutu-comment => youtube-comment}/references/comment-insert.md (100%) rename skills/{yutu-comment => youtube-comment}/references/comment-list.md (100%) rename skills/{yutu-comment => youtube-comment}/references/comment-markAsSpam.md (100%) rename skills/{yutu-comment => youtube-comment}/references/comment-setModerationStatus.md (100%) rename skills/{yutu-comment => youtube-comment}/references/comment-update.md (100%) create mode 100644 skills/youtube-comment/references/setup.md rename skills/{yutu-commentThread => youtube-commentThread}/SKILL.md (65%) rename skills/{yutu-commentThread => youtube-commentThread}/references/commentThread-insert.md (100%) rename skills/{yutu-commentThread => youtube-commentThread}/references/commentThread-list.md (100%) create mode 100644 skills/youtube-commentThread/references/setup.md rename skills/{yutu-i18nLanguage => youtube-i18nLanguage}/SKILL.md (66%) rename skills/{yutu-i18nLanguage => youtube-i18nLanguage}/references/i18nLanguage-list.md (100%) create mode 100644 skills/youtube-i18nLanguage/references/setup.md rename skills/{yutu-i18nRegion => youtube-i18nRegion}/SKILL.md (67%) rename skills/{yutu-i18nRegion => youtube-i18nRegion}/references/i18nRegion-list.md (100%) create mode 100644 skills/youtube-i18nRegion/references/setup.md rename skills/{yutu-member => youtube-member}/SKILL.md (67%) rename skills/{yutu-member => youtube-member}/references/member-list.md (100%) create mode 100644 skills/youtube-member/references/setup.md rename skills/{yutu-membershipsLevel => youtube-membershipsLevel}/SKILL.md (66%) rename skills/{yutu-membershipsLevel => youtube-membershipsLevel}/references/membershipsLevel-list.md (100%) create mode 100644 skills/youtube-membershipsLevel/references/setup.md rename skills/{yutu-playlist => youtube-playlist}/SKILL.md (64%) rename skills/{yutu-playlist => youtube-playlist}/references/playlist-delete.md (100%) rename skills/{yutu-playlist => youtube-playlist}/references/playlist-insert.md (100%) rename skills/{yutu-playlist => youtube-playlist}/references/playlist-list.md (100%) rename skills/{yutu-playlist => youtube-playlist}/references/playlist-update.md (100%) create mode 100644 skills/youtube-playlist/references/setup.md rename skills/{yutu-playlistImage => youtube-playlistImage}/SKILL.md (62%) rename skills/{yutu-playlistImage => youtube-playlistImage}/references/playlistImage-delete.md (100%) rename skills/{yutu-playlistImage => youtube-playlistImage}/references/playlistImage-insert.md (100%) rename skills/{yutu-playlistImage => youtube-playlistImage}/references/playlistImage-list.md (100%) rename skills/{yutu-playlistImage => youtube-playlistImage}/references/playlistImage-update.md (100%) create mode 100644 skills/youtube-playlistImage/references/setup.md rename skills/{yutu-playlistItem => youtube-playlistItem}/SKILL.md (62%) rename skills/{yutu-playlistItem => youtube-playlistItem}/references/playlistItem-delete.md (100%) rename skills/{yutu-playlistItem => youtube-playlistItem}/references/playlistItem-insert.md (100%) rename skills/{yutu-playlistItem => youtube-playlistItem}/references/playlistItem-list.md (100%) rename skills/{yutu-playlistItem => youtube-playlistItem}/references/playlistItem-update.md (100%) create mode 100644 skills/youtube-playlistItem/references/setup.md rename skills/{yutu-search => youtube-search}/SKILL.md (67%) rename skills/{yutu-search => youtube-search}/references/search-list.md (100%) create mode 100644 skills/youtube-search/references/setup.md rename skills/{yutu-subscription => youtube-subscription}/SKILL.md (63%) create mode 100644 skills/youtube-subscription/references/setup.md rename skills/{yutu-subscription => youtube-subscription}/references/subscription-delete.md (100%) rename skills/{yutu-subscription => youtube-subscription}/references/subscription-insert.md (100%) rename skills/{yutu-subscription => youtube-subscription}/references/subscription-list.md (100%) rename skills/{yutu-superChatEvent => youtube-superChatEvent}/SKILL.md (66%) create mode 100644 skills/youtube-superChatEvent/references/setup.md rename skills/{yutu-superChatEvent => youtube-superChatEvent}/references/superChatEvent-list.md (100%) rename skills/{yutu-thumbnail => youtube-thumbnail}/SKILL.md (66%) create mode 100644 skills/youtube-thumbnail/references/setup.md rename skills/{yutu-thumbnail => youtube-thumbnail}/references/thumbnail-set.md (100%) rename skills/{yutu-video => youtube-video}/SKILL.md (63%) create mode 100644 skills/youtube-video/references/setup.md rename skills/{yutu-video => youtube-video}/references/video-delete.md (100%) rename skills/{yutu-video => youtube-video}/references/video-getRating.md (100%) rename skills/{yutu-video => youtube-video}/references/video-insert.md (100%) rename skills/{yutu-video => youtube-video}/references/video-list.md (100%) rename skills/{yutu-video => youtube-video}/references/video-rate.md (100%) rename skills/{yutu-video => youtube-video}/references/video-reportAbuse.md (100%) rename skills/{yutu-video => youtube-video}/references/video-update.md (100%) rename skills/{yutu-videoAbuseReportReason => youtube-videoAbuseReportReason}/SKILL.md (70%) create mode 100644 skills/youtube-videoAbuseReportReason/references/setup.md rename skills/{yutu-videoAbuseReportReason => youtube-videoAbuseReportReason}/references/videoAbuseReportReason-list.md (100%) rename skills/{yutu-videoCategory => youtube-videoCategory}/SKILL.md (67%) create mode 100644 skills/youtube-videoCategory/references/setup.md rename skills/{yutu-videoCategory => youtube-videoCategory}/references/videoCategory-list.md (100%) rename skills/{yutu-watermark => youtube-watermark}/SKILL.md (64%) create mode 100644 skills/youtube-watermark/references/setup.md rename skills/{yutu-watermark => youtube-watermark}/references/watermark-set.md (100%) rename skills/{yutu-watermark => youtube-watermark}/references/watermark-unset.md (100%) diff --git a/skills/yutu-activity/SKILL.md b/skills/youtube-activity/SKILL.md similarity index 62% rename from skills/yutu-activity/SKILL.md rename to skills/youtube-activity/SKILL.md index 455b495..b19f326 100644 --- a/skills/yutu-activity/SKILL.md +++ b/skills/youtube-activity/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-activity -description: "Manage activities on YouTube. Use this skill to list channel activities. Always use this skill when the user mentions activity or wants to perform any operation on YouTube activity, even if they don't explicitly ask for activity management. Triggers: list activities, list activity, list my activity" +description: "Manage activities on YouTube. Use this skill to list channel activities. Always use this skill when the user mentions activity or wants to perform any operation on YouTube activity, even if they don't explicitly ask for activity management. Includes setup and installation instructions for first-time users. Triggers: list activities, list activity, list my activity" --- # Yutu Activity Manage activities on YouTube. Use this skill to list channel activities. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-activity/references/activity-list.md b/skills/youtube-activity/references/activity-list.md similarity index 100% rename from skills/yutu-activity/references/activity-list.md rename to skills/youtube-activity/references/activity-list.md diff --git a/skills/youtube-activity/references/setup.md b/skills/youtube-activity/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-activity/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-caption/SKILL.md b/skills/youtube-caption/SKILL.md similarity index 64% rename from skills/yutu-caption/SKILL.md rename to skills/youtube-caption/SKILL.md index 77f6847..27813a3 100644 --- a/skills/yutu-caption/SKILL.md +++ b/skills/youtube-caption/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-caption -description: "Manage YouTube video captions. Use this skill to list, insert, update, download, or delete video captions. Always use this skill when the user mentions caption or wants to perform any operation on YouTube caption, even if they don't explicitly ask for caption management. Triggers: delete captions, delete caption, delete my caption, download a caption, download caption, download my caption, insert a caption, insert caption, insert my caption, list captions, list caption, list my caption, update a video caption, update caption, update my caption" +description: "Manage YouTube video captions. Use this skill to list, insert, update, download, or delete video captions. Always use this skill when the user mentions caption or wants to perform any operation on YouTube caption, even if they don't explicitly ask for caption management. Includes setup and installation instructions for first-time users. Triggers: delete captions, delete caption, delete my caption, download a caption, download caption, download my caption, insert a caption, insert caption, insert my caption, list captions, list caption, list my caption, update a video caption, update caption, update my caption" --- # Yutu Caption Manage YouTube video captions. Use this skill to list, insert, update, download, or delete video captions. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-caption/references/caption-delete.md b/skills/youtube-caption/references/caption-delete.md similarity index 100% rename from skills/yutu-caption/references/caption-delete.md rename to skills/youtube-caption/references/caption-delete.md diff --git a/skills/yutu-caption/references/caption-download.md b/skills/youtube-caption/references/caption-download.md similarity index 100% rename from skills/yutu-caption/references/caption-download.md rename to skills/youtube-caption/references/caption-download.md diff --git a/skills/yutu-caption/references/caption-insert.md b/skills/youtube-caption/references/caption-insert.md similarity index 100% rename from skills/yutu-caption/references/caption-insert.md rename to skills/youtube-caption/references/caption-insert.md diff --git a/skills/yutu-caption/references/caption-list.md b/skills/youtube-caption/references/caption-list.md similarity index 100% rename from skills/yutu-caption/references/caption-list.md rename to skills/youtube-caption/references/caption-list.md diff --git a/skills/yutu-caption/references/caption-update.md b/skills/youtube-caption/references/caption-update.md similarity index 100% rename from skills/yutu-caption/references/caption-update.md rename to skills/youtube-caption/references/caption-update.md diff --git a/skills/youtube-caption/references/setup.md b/skills/youtube-caption/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-caption/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-channel/SKILL.md b/skills/youtube-channel/SKILL.md similarity index 61% rename from skills/yutu-channel/SKILL.md rename to skills/youtube-channel/SKILL.md index d7697c6..76bec22 100644 --- a/skills/yutu-channel/SKILL.md +++ b/skills/youtube-channel/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-channel -description: "Manage YouTube channels. Use this skill to list or update channels. Always use this skill when the user mentions channel or wants to perform any operation on YouTube channel, even if they don't explicitly ask for channel management. Triggers: list channel information, list channel, list my channel, update channel information, update channel, update my channel" +description: "Manage YouTube channels. Use this skill to list or update channels. Always use this skill when the user mentions channel or wants to perform any operation on YouTube channel, even if they don't explicitly ask for channel management. Includes setup and installation instructions for first-time users. Triggers: list channel information, list channel, list my channel, update channel information, update channel, update my channel" --- # Yutu Channel Manage YouTube channels. Use this skill to list or update channels. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-channel/references/channel-list.md b/skills/youtube-channel/references/channel-list.md similarity index 100% rename from skills/yutu-channel/references/channel-list.md rename to skills/youtube-channel/references/channel-list.md diff --git a/skills/yutu-channel/references/channel-update.md b/skills/youtube-channel/references/channel-update.md similarity index 100% rename from skills/yutu-channel/references/channel-update.md rename to skills/youtube-channel/references/channel-update.md diff --git a/skills/youtube-channel/references/setup.md b/skills/youtube-channel/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-channel/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-channelBanner/SKILL.md b/skills/youtube-channelBanner/SKILL.md similarity index 65% rename from skills/yutu-channelBanner/SKILL.md rename to skills/youtube-channelBanner/SKILL.md index 12a3b2a..25f8fe9 100644 --- a/skills/yutu-channelBanner/SKILL.md +++ b/skills/youtube-channelBanner/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-channelBanner -description: "Manage YouTube channel banners. Use this skill to insert or upload channel banners. Always use this skill when the user mentions channel banner or wants to perform any operation on YouTube channel banner, even if they don't explicitly ask for channel banner management. Triggers: insert a channel banner, insert channel banner, insert my channel banner" +description: "Manage YouTube channel banners. Use this skill to insert or upload channel banners. Always use this skill when the user mentions channel banner or wants to perform any operation on YouTube channel banner, even if they don't explicitly ask for channel banner management. Includes setup and installation instructions for first-time users. Triggers: insert a channel banner, insert channel banner, insert my channel banner" --- # Yutu Channel Banner Manage YouTube channel banners. Use this skill to insert or upload channel banners. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-channelBanner/references/channelBanner-insert.md b/skills/youtube-channelBanner/references/channelBanner-insert.md similarity index 100% rename from skills/yutu-channelBanner/references/channelBanner-insert.md rename to skills/youtube-channelBanner/references/channelBanner-insert.md diff --git a/skills/youtube-channelBanner/references/setup.md b/skills/youtube-channelBanner/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-channelBanner/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-channelSection/SKILL.md b/skills/youtube-channelSection/SKILL.md similarity index 65% rename from skills/yutu-channelSection/SKILL.md rename to skills/youtube-channelSection/SKILL.md index c87a483..034daef 100644 --- a/skills/yutu-channelSection/SKILL.md +++ b/skills/youtube-channelSection/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-channelSection -description: "Manage YouTube channel sections. Use this skill to list or delete channel sections. Always use this skill when the user mentions channel section or wants to perform any operation on YouTube channel section, even if they don't explicitly ask for channel section management. Triggers: delete channel sections, delete channel section, delete my channel section, list channel sections, list channel section, list my channel section" +description: "Manage YouTube channel sections. Use this skill to list or delete channel sections. Always use this skill when the user mentions channel section or wants to perform any operation on YouTube channel section, even if they don't explicitly ask for channel section management. Includes setup and installation instructions for first-time users. Triggers: delete channel sections, delete channel section, delete my channel section, list channel sections, list channel section, list my channel section" --- # Yutu Channel Section Manage YouTube channel sections. Use this skill to list or delete channel sections. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-channelSection/references/channelSection-delete.md b/skills/youtube-channelSection/references/channelSection-delete.md similarity index 100% rename from skills/yutu-channelSection/references/channelSection-delete.md rename to skills/youtube-channelSection/references/channelSection-delete.md diff --git a/skills/yutu-channelSection/references/channelSection-list.md b/skills/youtube-channelSection/references/channelSection-list.md similarity index 100% rename from skills/yutu-channelSection/references/channelSection-list.md rename to skills/youtube-channelSection/references/channelSection-list.md diff --git a/skills/youtube-channelSection/references/setup.md b/skills/youtube-channelSection/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-channelSection/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-comment/SKILL.md b/skills/youtube-comment/SKILL.md similarity index 62% rename from skills/yutu-comment/SKILL.md rename to skills/youtube-comment/SKILL.md index b694286..ddb2e29 100644 --- a/skills/yutu-comment/SKILL.md +++ b/skills/youtube-comment/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-comment -description: "Manage YouTube comments. Use this skill to list, create, update, delete, mark as spam, or set moderation status for comments. Always use this skill when the user mentions comment or wants to perform any operation on YouTube comment, even if they don't explicitly ask for comment management. Triggers: delete comments, delete comment, delete my comment, create a comment, insert comment, insert my comment, list comments, list comment, list my comment, mark comments as spam, markAsSpam comment, markAsSpam my comment, set comment moderation status, setModerationStatus comment, setModerationStatus my comment, update a comment on a video, update comment, update my comment" +description: "Manage YouTube comments. Use this skill to list, create, update, delete, mark as spam, or set moderation status for comments. Always use this skill when the user mentions comment or wants to perform any operation on YouTube comment, even if they don't explicitly ask for comment management. Includes setup and installation instructions for first-time users. Triggers: delete comments, delete comment, delete my comment, create a comment, insert comment, insert my comment, list comments, list comment, list my comment, mark comments as spam, markAsSpam comment, markAsSpam my comment, set comment moderation status, setModerationStatus comment, setModerationStatus my comment, update a comment on a video, update comment, update my comment" --- # Yutu Comment Manage YouTube comments. Use this skill to list, create, update, delete, mark as spam, or set moderation status for comments. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-comment/references/comment-delete.md b/skills/youtube-comment/references/comment-delete.md similarity index 100% rename from skills/yutu-comment/references/comment-delete.md rename to skills/youtube-comment/references/comment-delete.md diff --git a/skills/yutu-comment/references/comment-insert.md b/skills/youtube-comment/references/comment-insert.md similarity index 100% rename from skills/yutu-comment/references/comment-insert.md rename to skills/youtube-comment/references/comment-insert.md diff --git a/skills/yutu-comment/references/comment-list.md b/skills/youtube-comment/references/comment-list.md similarity index 100% rename from skills/yutu-comment/references/comment-list.md rename to skills/youtube-comment/references/comment-list.md diff --git a/skills/yutu-comment/references/comment-markAsSpam.md b/skills/youtube-comment/references/comment-markAsSpam.md similarity index 100% rename from skills/yutu-comment/references/comment-markAsSpam.md rename to skills/youtube-comment/references/comment-markAsSpam.md diff --git a/skills/yutu-comment/references/comment-setModerationStatus.md b/skills/youtube-comment/references/comment-setModerationStatus.md similarity index 100% rename from skills/yutu-comment/references/comment-setModerationStatus.md rename to skills/youtube-comment/references/comment-setModerationStatus.md diff --git a/skills/yutu-comment/references/comment-update.md b/skills/youtube-comment/references/comment-update.md similarity index 100% rename from skills/yutu-comment/references/comment-update.md rename to skills/youtube-comment/references/comment-update.md diff --git a/skills/youtube-comment/references/setup.md b/skills/youtube-comment/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-comment/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-commentThread/SKILL.md b/skills/youtube-commentThread/SKILL.md similarity index 65% rename from skills/yutu-commentThread/SKILL.md rename to skills/youtube-commentThread/SKILL.md index 7880b6e..7cb1365 100644 --- a/skills/yutu-commentThread/SKILL.md +++ b/skills/youtube-commentThread/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-commentThread -description: "Manage YouTube comment threads. Use this skill to list or insert new top-level comment threads. Always use this skill when the user mentions comment thread or wants to perform any operation on YouTube comment thread, even if they don't explicitly ask for comment thread management. Triggers: insert a new comment thread, insert comment thread, insert my comment thread, list comment threads, list comment thread, list my comment thread" +description: "Manage YouTube comment threads. Use this skill to list or insert new top-level comment threads. Always use this skill when the user mentions comment thread or wants to perform any operation on YouTube comment thread, even if they don't explicitly ask for comment thread management. Includes setup and installation instructions for first-time users. Triggers: insert a new comment thread, insert comment thread, insert my comment thread, list comment threads, list comment thread, list my comment thread" --- # Yutu Comment Thread Manage YouTube comment threads. Use this skill to list or insert new top-level comment threads. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-commentThread/references/commentThread-insert.md b/skills/youtube-commentThread/references/commentThread-insert.md similarity index 100% rename from skills/yutu-commentThread/references/commentThread-insert.md rename to skills/youtube-commentThread/references/commentThread-insert.md diff --git a/skills/yutu-commentThread/references/commentThread-list.md b/skills/youtube-commentThread/references/commentThread-list.md similarity index 100% rename from skills/yutu-commentThread/references/commentThread-list.md rename to skills/youtube-commentThread/references/commentThread-list.md diff --git a/skills/youtube-commentThread/references/setup.md b/skills/youtube-commentThread/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-commentThread/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-i18nLanguage/SKILL.md b/skills/youtube-i18nLanguage/SKILL.md similarity index 66% rename from skills/yutu-i18nLanguage/SKILL.md rename to skills/youtube-i18nLanguage/SKILL.md index b597da6..98543d5 100644 --- a/skills/yutu-i18nLanguage/SKILL.md +++ b/skills/youtube-i18nLanguage/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-i18nLanguage -description: "Manage YouTube i18n languages. Use this skill to list available internationalization languages. Always use this skill when the user mentions i18n language or wants to perform any operation on YouTube i18n language, even if they don't explicitly ask for i18n language management. Triggers: list i18n languages, list i18n language, list my i18n language" +description: "Manage YouTube i18n languages. Use this skill to list available internationalization languages. Always use this skill when the user mentions i18n language or wants to perform any operation on YouTube i18n language, even if they don't explicitly ask for i18n language management. Includes setup and installation instructions for first-time users. Triggers: list i18n languages, list i18n language, list my i18n language" --- # Yutu I18n Language Manage YouTube i18n languages. Use this skill to list available internationalization languages. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-i18nLanguage/references/i18nLanguage-list.md b/skills/youtube-i18nLanguage/references/i18nLanguage-list.md similarity index 100% rename from skills/yutu-i18nLanguage/references/i18nLanguage-list.md rename to skills/youtube-i18nLanguage/references/i18nLanguage-list.md diff --git a/skills/youtube-i18nLanguage/references/setup.md b/skills/youtube-i18nLanguage/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-i18nLanguage/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-i18nRegion/SKILL.md b/skills/youtube-i18nRegion/SKILL.md similarity index 67% rename from skills/yutu-i18nRegion/SKILL.md rename to skills/youtube-i18nRegion/SKILL.md index a701c0b..b5aba8f 100644 --- a/skills/yutu-i18nRegion/SKILL.md +++ b/skills/youtube-i18nRegion/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-i18nRegion -description: "Manage YouTube i18n regions. Use this skill to list available internationalization regions. Always use this skill when the user mentions i18n region or wants to perform any operation on YouTube i18n region, even if they don't explicitly ask for i18n region management. Triggers: list i18n regions, list i18n region, list my i18n region" +description: "Manage YouTube i18n regions. Use this skill to list available internationalization regions. Always use this skill when the user mentions i18n region or wants to perform any operation on YouTube i18n region, even if they don't explicitly ask for i18n region management. Includes setup and installation instructions for first-time users. Triggers: list i18n regions, list i18n region, list my i18n region" --- # Yutu I18n Region Manage YouTube i18n regions. Use this skill to list available internationalization regions. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-i18nRegion/references/i18nRegion-list.md b/skills/youtube-i18nRegion/references/i18nRegion-list.md similarity index 100% rename from skills/yutu-i18nRegion/references/i18nRegion-list.md rename to skills/youtube-i18nRegion/references/i18nRegion-list.md diff --git a/skills/youtube-i18nRegion/references/setup.md b/skills/youtube-i18nRegion/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-i18nRegion/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-member/SKILL.md b/skills/youtube-member/SKILL.md similarity index 67% rename from skills/yutu-member/SKILL.md rename to skills/youtube-member/SKILL.md index 45be359..ff0f091 100644 --- a/skills/yutu-member/SKILL.md +++ b/skills/youtube-member/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-member -description: "Manage YouTube channel members. Use this skill to list information about channel members. Always use this skill when the user mentions member or wants to perform any operation on YouTube member, even if they don't explicitly ask for member management. Triggers: list channel members, list member, list my member" +description: "Manage YouTube channel members. Use this skill to list information about channel members. Always use this skill when the user mentions member or wants to perform any operation on YouTube member, even if they don't explicitly ask for member management. Includes setup and installation instructions for first-time users. Triggers: list channel members, list member, list my member" --- # Yutu Member Manage YouTube channel members. Use this skill to list information about channel members. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-member/references/member-list.md b/skills/youtube-member/references/member-list.md similarity index 100% rename from skills/yutu-member/references/member-list.md rename to skills/youtube-member/references/member-list.md diff --git a/skills/youtube-member/references/setup.md b/skills/youtube-member/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-member/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-membershipsLevel/SKILL.md b/skills/youtube-membershipsLevel/SKILL.md similarity index 66% rename from skills/yutu-membershipsLevel/SKILL.md rename to skills/youtube-membershipsLevel/SKILL.md index 31b8519..6c94532 100644 --- a/skills/yutu-membershipsLevel/SKILL.md +++ b/skills/youtube-membershipsLevel/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-membershipsLevel -description: "Manage YouTube memberships levels. Use this skill to list information about channel membership levels. Always use this skill when the user mentions memberships level or wants to perform any operation on YouTube memberships level, even if they don't explicitly ask for memberships level management. Triggers: list memberships levels, list memberships level, list my memberships level" +description: "Manage YouTube memberships levels. Use this skill to list information about channel membership levels. Always use this skill when the user mentions memberships level or wants to perform any operation on YouTube memberships level, even if they don't explicitly ask for memberships level management. Includes setup and installation instructions for first-time users. Triggers: list memberships levels, list memberships level, list my memberships level" --- # Yutu Memberships Level Manage YouTube memberships levels. Use this skill to list information about channel membership levels. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-membershipsLevel/references/membershipsLevel-list.md b/skills/youtube-membershipsLevel/references/membershipsLevel-list.md similarity index 100% rename from skills/yutu-membershipsLevel/references/membershipsLevel-list.md rename to skills/youtube-membershipsLevel/references/membershipsLevel-list.md diff --git a/skills/youtube-membershipsLevel/references/setup.md b/skills/youtube-membershipsLevel/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-membershipsLevel/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-playlist/SKILL.md b/skills/youtube-playlist/SKILL.md similarity index 64% rename from skills/yutu-playlist/SKILL.md rename to skills/youtube-playlist/SKILL.md index 17cae2a..c9687ca 100644 --- a/skills/yutu-playlist/SKILL.md +++ b/skills/youtube-playlist/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-playlist -description: "Manage YouTube playlists. Use this skill to list, create, update, or delete playlists. Always use this skill when the user mentions playlist or wants to perform any operation on YouTube playlist, even if they don't explicitly ask for playlist management. Triggers: delete playlists, delete playlist, delete my playlist, create a new playlist, insert playlist, insert my playlist, list playlist information, list playlist, list my playlist, update a playlist, update playlist, update my playlist" +description: "Manage YouTube playlists. Use this skill to list, create, update, or delete playlists. Always use this skill when the user mentions playlist or wants to perform any operation on YouTube playlist, even if they don't explicitly ask for playlist management. Includes setup and installation instructions for first-time users. Triggers: delete playlists, delete playlist, delete my playlist, create a new playlist, insert playlist, insert my playlist, list playlist information, list playlist, list my playlist, update a playlist, update playlist, update my playlist" --- # Yutu Playlist Manage YouTube playlists. Use this skill to list, create, update, or delete playlists. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-playlist/references/playlist-delete.md b/skills/youtube-playlist/references/playlist-delete.md similarity index 100% rename from skills/yutu-playlist/references/playlist-delete.md rename to skills/youtube-playlist/references/playlist-delete.md diff --git a/skills/yutu-playlist/references/playlist-insert.md b/skills/youtube-playlist/references/playlist-insert.md similarity index 100% rename from skills/yutu-playlist/references/playlist-insert.md rename to skills/youtube-playlist/references/playlist-insert.md diff --git a/skills/yutu-playlist/references/playlist-list.md b/skills/youtube-playlist/references/playlist-list.md similarity index 100% rename from skills/yutu-playlist/references/playlist-list.md rename to skills/youtube-playlist/references/playlist-list.md diff --git a/skills/yutu-playlist/references/playlist-update.md b/skills/youtube-playlist/references/playlist-update.md similarity index 100% rename from skills/yutu-playlist/references/playlist-update.md rename to skills/youtube-playlist/references/playlist-update.md diff --git a/skills/youtube-playlist/references/setup.md b/skills/youtube-playlist/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-playlist/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-playlistImage/SKILL.md b/skills/youtube-playlistImage/SKILL.md similarity index 62% rename from skills/yutu-playlistImage/SKILL.md rename to skills/youtube-playlistImage/SKILL.md index 03837ff..b2680bc 100644 --- a/skills/yutu-playlistImage/SKILL.md +++ b/skills/youtube-playlistImage/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-playlistImage -description: "Manage YouTube playlist images. Use this skill to list, insert, update, or delete playlist images. Always use this skill when the user mentions playlist image or wants to perform any operation on YouTube playlist image, even if they don't explicitly ask for playlist image management. Triggers: delete playlist images, delete playlist image, delete my playlist image, insert a playlist image, insert playlist image, insert my playlist image, list playlist images, list playlist image, list my playlist image, update a playlist image, update playlist image, update my playlist image" +description: "Manage YouTube playlist images. Use this skill to list, insert, update, or delete playlist images. Always use this skill when the user mentions playlist image or wants to perform any operation on YouTube playlist image, even if they don't explicitly ask for playlist image management. Includes setup and installation instructions for first-time users. Triggers: delete playlist images, delete playlist image, delete my playlist image, insert a playlist image, insert playlist image, insert my playlist image, list playlist images, list playlist image, list my playlist image, update a playlist image, update playlist image, update my playlist image" --- # Yutu Playlist Image Manage YouTube playlist images. Use this skill to list, insert, update, or delete playlist images. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-playlistImage/references/playlistImage-delete.md b/skills/youtube-playlistImage/references/playlistImage-delete.md similarity index 100% rename from skills/yutu-playlistImage/references/playlistImage-delete.md rename to skills/youtube-playlistImage/references/playlistImage-delete.md diff --git a/skills/yutu-playlistImage/references/playlistImage-insert.md b/skills/youtube-playlistImage/references/playlistImage-insert.md similarity index 100% rename from skills/yutu-playlistImage/references/playlistImage-insert.md rename to skills/youtube-playlistImage/references/playlistImage-insert.md diff --git a/skills/yutu-playlistImage/references/playlistImage-list.md b/skills/youtube-playlistImage/references/playlistImage-list.md similarity index 100% rename from skills/yutu-playlistImage/references/playlistImage-list.md rename to skills/youtube-playlistImage/references/playlistImage-list.md diff --git a/skills/yutu-playlistImage/references/playlistImage-update.md b/skills/youtube-playlistImage/references/playlistImage-update.md similarity index 100% rename from skills/yutu-playlistImage/references/playlistImage-update.md rename to skills/youtube-playlistImage/references/playlistImage-update.md diff --git a/skills/youtube-playlistImage/references/setup.md b/skills/youtube-playlistImage/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-playlistImage/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-playlistItem/SKILL.md b/skills/youtube-playlistItem/SKILL.md similarity index 62% rename from skills/yutu-playlistItem/SKILL.md rename to skills/youtube-playlistItem/SKILL.md index 8bc36a3..6876ed5 100644 --- a/skills/yutu-playlistItem/SKILL.md +++ b/skills/youtube-playlistItem/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-playlistItem -description: "Manage YouTube playlist items. Use this skill to list items in a playlist, add new items, update items, or remove items. Always use this skill when the user mentions playlist item or wants to perform any operation on YouTube playlist item, even if they don't explicitly ask for playlist item management. Triggers: delete items from a playlist, delete playlist item, delete my playlist item, insert a playlist item into a playlist, insert playlist item, insert my playlist item, list playlist items, list playlist item, list my playlist item, update a playlist item, update playlist item, update my playlist item" +description: "Manage YouTube playlist items. Use this skill to list items in a playlist, add new items, update items, or remove items. Always use this skill when the user mentions playlist item or wants to perform any operation on YouTube playlist item, even if they don't explicitly ask for playlist item management. Includes setup and installation instructions for first-time users. Triggers: delete items from a playlist, delete playlist item, delete my playlist item, insert a playlist item into a playlist, insert playlist item, insert my playlist item, list playlist items, list playlist item, list my playlist item, update a playlist item, update playlist item, update my playlist item" --- # Yutu Playlist Item Manage YouTube playlist items. Use this skill to list items in a playlist, add new items, update items, or remove items. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-playlistItem/references/playlistItem-delete.md b/skills/youtube-playlistItem/references/playlistItem-delete.md similarity index 100% rename from skills/yutu-playlistItem/references/playlistItem-delete.md rename to skills/youtube-playlistItem/references/playlistItem-delete.md diff --git a/skills/yutu-playlistItem/references/playlistItem-insert.md b/skills/youtube-playlistItem/references/playlistItem-insert.md similarity index 100% rename from skills/yutu-playlistItem/references/playlistItem-insert.md rename to skills/youtube-playlistItem/references/playlistItem-insert.md diff --git a/skills/yutu-playlistItem/references/playlistItem-list.md b/skills/youtube-playlistItem/references/playlistItem-list.md similarity index 100% rename from skills/yutu-playlistItem/references/playlistItem-list.md rename to skills/youtube-playlistItem/references/playlistItem-list.md diff --git a/skills/yutu-playlistItem/references/playlistItem-update.md b/skills/youtube-playlistItem/references/playlistItem-update.md similarity index 100% rename from skills/yutu-playlistItem/references/playlistItem-update.md rename to skills/youtube-playlistItem/references/playlistItem-update.md diff --git a/skills/youtube-playlistItem/references/setup.md b/skills/youtube-playlistItem/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-playlistItem/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-search/SKILL.md b/skills/youtube-search/SKILL.md similarity index 67% rename from skills/yutu-search/SKILL.md rename to skills/youtube-search/SKILL.md index 47c7a23..eea2d85 100644 --- a/skills/yutu-search/SKILL.md +++ b/skills/youtube-search/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-search -description: "Manage YouTube search. Use this skill to search for videos, channels, playlists, and other resources. Always use this skill when the user mentions search or wants to perform any operation on YouTube search, even if they don't explicitly ask for search management. Triggers: search resources, list search, list my search" +description: "Manage YouTube search. Use this skill to search for videos, channels, playlists, and other resources. Always use this skill when the user mentions search or wants to perform any operation on YouTube search, even if they don't explicitly ask for search management. Includes setup and installation instructions for first-time users. Triggers: search resources, list search, list my search" --- # Yutu Search Manage YouTube search. Use this skill to search for videos, channels, playlists, and other resources. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/yutu-search/references/search-list.md b/skills/youtube-search/references/search-list.md similarity index 100% rename from skills/yutu-search/references/search-list.md rename to skills/youtube-search/references/search-list.md diff --git a/skills/youtube-search/references/setup.md b/skills/youtube-search/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-search/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-subscription/SKILL.md b/skills/youtube-subscription/SKILL.md similarity index 63% rename from skills/yutu-subscription/SKILL.md rename to skills/youtube-subscription/SKILL.md index 1c07167..baa76f8 100644 --- a/skills/yutu-subscription/SKILL.md +++ b/skills/youtube-subscription/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-subscription -description: "Manage YouTube subscriptions. Use this skill to list subscriptions/subscribers, subscribe to channels, or unsubscribe. Always use this skill when the user mentions subscription or wants to perform any operation on YouTube subscription, even if they don't explicitly ask for subscription management. Triggers: delete subscriptions, delete subscription, delete my subscription, insert a new subscription, insert subscription, insert my subscription, list subscription information, list subscription, list my subscription" +description: "Manage YouTube subscriptions. Use this skill to list subscriptions/subscribers, subscribe to channels, or unsubscribe. Always use this skill when the user mentions subscription or wants to perform any operation on YouTube subscription, even if they don't explicitly ask for subscription management. Includes setup and installation instructions for first-time users. Triggers: delete subscriptions, delete subscription, delete my subscription, insert a new subscription, insert subscription, insert my subscription, list subscription information, list subscription, list my subscription" --- # Yutu Subscription Manage YouTube subscriptions. Use this skill to list subscriptions/subscribers, subscribe to channels, or unsubscribe. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-subscription/references/setup.md b/skills/youtube-subscription/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-subscription/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-subscription/references/subscription-delete.md b/skills/youtube-subscription/references/subscription-delete.md similarity index 100% rename from skills/yutu-subscription/references/subscription-delete.md rename to skills/youtube-subscription/references/subscription-delete.md diff --git a/skills/yutu-subscription/references/subscription-insert.md b/skills/youtube-subscription/references/subscription-insert.md similarity index 100% rename from skills/yutu-subscription/references/subscription-insert.md rename to skills/youtube-subscription/references/subscription-insert.md diff --git a/skills/yutu-subscription/references/subscription-list.md b/skills/youtube-subscription/references/subscription-list.md similarity index 100% rename from skills/yutu-subscription/references/subscription-list.md rename to skills/youtube-subscription/references/subscription-list.md diff --git a/skills/yutu-superChatEvent/SKILL.md b/skills/youtube-superChatEvent/SKILL.md similarity index 66% rename from skills/yutu-superChatEvent/SKILL.md rename to skills/youtube-superChatEvent/SKILL.md index 04d932b..d55a4a7 100644 --- a/skills/yutu-superChatEvent/SKILL.md +++ b/skills/youtube-superChatEvent/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-superChatEvent -description: "Manage YouTube Super Chat events. Use this skill to list Super Chat events for a channel. Always use this skill when the user mentions super chat event or wants to perform any operation on YouTube super chat event, even if they don't explicitly ask for super chat event management. Triggers: list super chat events, list super chat event, list my super chat event" +description: "Manage YouTube Super Chat events. Use this skill to list Super Chat events for a channel. Always use this skill when the user mentions super chat event or wants to perform any operation on YouTube super chat event, even if they don't explicitly ask for super chat event management. Includes setup and installation instructions for first-time users. Triggers: list super chat events, list super chat event, list my super chat event" --- # Yutu Super Chat Event Manage YouTube Super Chat events. Use this skill to list Super Chat events for a channel. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-superChatEvent/references/setup.md b/skills/youtube-superChatEvent/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-superChatEvent/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-superChatEvent/references/superChatEvent-list.md b/skills/youtube-superChatEvent/references/superChatEvent-list.md similarity index 100% rename from skills/yutu-superChatEvent/references/superChatEvent-list.md rename to skills/youtube-superChatEvent/references/superChatEvent-list.md diff --git a/skills/yutu-thumbnail/SKILL.md b/skills/youtube-thumbnail/SKILL.md similarity index 66% rename from skills/yutu-thumbnail/SKILL.md rename to skills/youtube-thumbnail/SKILL.md index db0e9eb..1155516 100644 --- a/skills/yutu-thumbnail/SKILL.md +++ b/skills/youtube-thumbnail/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-thumbnail -description: "Manage YouTube video thumbnails. Use this skill to set custom thumbnails for videos. Always use this skill when the user mentions thumbnail or wants to perform any operation on YouTube thumbnail, even if they don't explicitly ask for thumbnail management. Triggers: set a thumbnail for a video, set thumbnail, set my thumbnail" +description: "Manage YouTube video thumbnails. Use this skill to set custom thumbnails for videos. Always use this skill when the user mentions thumbnail or wants to perform any operation on YouTube thumbnail, even if they don't explicitly ask for thumbnail management. Includes setup and installation instructions for first-time users. Triggers: set a thumbnail for a video, set thumbnail, set my thumbnail" --- # Yutu Thumbnail Manage YouTube video thumbnails. Use this skill to set custom thumbnails for videos. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-thumbnail/references/setup.md b/skills/youtube-thumbnail/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-thumbnail/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-thumbnail/references/thumbnail-set.md b/skills/youtube-thumbnail/references/thumbnail-set.md similarity index 100% rename from skills/yutu-thumbnail/references/thumbnail-set.md rename to skills/youtube-thumbnail/references/thumbnail-set.md diff --git a/skills/yutu-video/SKILL.md b/skills/youtube-video/SKILL.md similarity index 63% rename from skills/yutu-video/SKILL.md rename to skills/youtube-video/SKILL.md index bd27045..c293eb9 100644 --- a/skills/yutu-video/SKILL.md +++ b/skills/youtube-video/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-video -description: "Manage YouTube videos. Use this skill to list, upload, update, delete, get rating, or report videos. Always use this skill when the user mentions video or wants to perform any operation on YouTube video, even if they don't explicitly ask for video management. Triggers: delete videos, delete video, delete my video, get video ratings, getRating video, getRating my video, upload a video, insert video, insert my video, list video information, list video, list my video, rate a video, rate video, rate my video, report abuse on a video, reportAbuse video, reportAbuse my video, update a video, update video, update my video" +description: "Manage YouTube videos. Use this skill to list, upload, update, delete, get rating, or report videos. Always use this skill when the user mentions video or wants to perform any operation on YouTube video, even if they don't explicitly ask for video management. Includes setup and installation instructions for first-time users. Triggers: delete videos, delete video, delete my video, get video ratings, getRating video, getRating my video, upload a video, insert video, insert my video, list video information, list video, list my video, rate a video, rate video, rate my video, report abuse on a video, reportAbuse video, reportAbuse my video, update a video, update video, update my video" --- # Yutu Video Manage YouTube videos. Use this skill to list, upload, update, delete, get rating, or report videos. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-video/references/setup.md b/skills/youtube-video/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-video/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-video/references/video-delete.md b/skills/youtube-video/references/video-delete.md similarity index 100% rename from skills/yutu-video/references/video-delete.md rename to skills/youtube-video/references/video-delete.md diff --git a/skills/yutu-video/references/video-getRating.md b/skills/youtube-video/references/video-getRating.md similarity index 100% rename from skills/yutu-video/references/video-getRating.md rename to skills/youtube-video/references/video-getRating.md diff --git a/skills/yutu-video/references/video-insert.md b/skills/youtube-video/references/video-insert.md similarity index 100% rename from skills/yutu-video/references/video-insert.md rename to skills/youtube-video/references/video-insert.md diff --git a/skills/yutu-video/references/video-list.md b/skills/youtube-video/references/video-list.md similarity index 100% rename from skills/yutu-video/references/video-list.md rename to skills/youtube-video/references/video-list.md diff --git a/skills/yutu-video/references/video-rate.md b/skills/youtube-video/references/video-rate.md similarity index 100% rename from skills/yutu-video/references/video-rate.md rename to skills/youtube-video/references/video-rate.md diff --git a/skills/yutu-video/references/video-reportAbuse.md b/skills/youtube-video/references/video-reportAbuse.md similarity index 100% rename from skills/yutu-video/references/video-reportAbuse.md rename to skills/youtube-video/references/video-reportAbuse.md diff --git a/skills/yutu-video/references/video-update.md b/skills/youtube-video/references/video-update.md similarity index 100% rename from skills/yutu-video/references/video-update.md rename to skills/youtube-video/references/video-update.md diff --git a/skills/yutu-videoAbuseReportReason/SKILL.md b/skills/youtube-videoAbuseReportReason/SKILL.md similarity index 70% rename from skills/yutu-videoAbuseReportReason/SKILL.md rename to skills/youtube-videoAbuseReportReason/SKILL.md index 8284ea1..97ed3b7 100644 --- a/skills/yutu-videoAbuseReportReason/SKILL.md +++ b/skills/youtube-videoAbuseReportReason/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-videoAbuseReportReason -description: "Manage YouTube video abuse report reasons. Use this skill to list available abuse report reasons. Always use this skill when the user mentions video abuse report reason or wants to perform any operation on YouTube video abuse report reason, even if they don't explicitly ask for video abuse report reason management. Triggers: list video abuse report reasons, list video abuse report reason, list my video abuse report reason" +description: "Manage YouTube video abuse report reasons. Use this skill to list available abuse report reasons. Always use this skill when the user mentions video abuse report reason or wants to perform any operation on YouTube video abuse report reason, even if they don't explicitly ask for video abuse report reason management. Includes setup and installation instructions for first-time users. Triggers: list video abuse report reasons, list video abuse report reason, list my video abuse report reason" --- # Yutu Video Abuse Report Reason Manage YouTube video abuse report reasons. Use this skill to list available abuse report reasons. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-videoAbuseReportReason/references/setup.md b/skills/youtube-videoAbuseReportReason/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-videoAbuseReportReason/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-videoAbuseReportReason/references/videoAbuseReportReason-list.md b/skills/youtube-videoAbuseReportReason/references/videoAbuseReportReason-list.md similarity index 100% rename from skills/yutu-videoAbuseReportReason/references/videoAbuseReportReason-list.md rename to skills/youtube-videoAbuseReportReason/references/videoAbuseReportReason-list.md diff --git a/skills/yutu-videoCategory/SKILL.md b/skills/youtube-videoCategory/SKILL.md similarity index 67% rename from skills/yutu-videoCategory/SKILL.md rename to skills/youtube-videoCategory/SKILL.md index 69fa22c..f061480 100644 --- a/skills/yutu-videoCategory/SKILL.md +++ b/skills/youtube-videoCategory/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-videoCategory -description: "Manage YouTube video categories. Use this skill to list available video categories. Always use this skill when the user mentions video category or wants to perform any operation on YouTube video category, even if they don't explicitly ask for video category management. Triggers: list video categories, list video category, list my video category" +description: "Manage YouTube video categories. Use this skill to list available video categories. Always use this skill when the user mentions video category or wants to perform any operation on YouTube video category, even if they don't explicitly ask for video category management. Includes setup and installation instructions for first-time users. Triggers: list video categories, list video category, list my video category" --- # Yutu Video Category Manage YouTube video categories. Use this skill to list available video categories. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-videoCategory/references/setup.md b/skills/youtube-videoCategory/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-videoCategory/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-videoCategory/references/videoCategory-list.md b/skills/youtube-videoCategory/references/videoCategory-list.md similarity index 100% rename from skills/yutu-videoCategory/references/videoCategory-list.md rename to skills/youtube-videoCategory/references/videoCategory-list.md diff --git a/skills/yutu-watermark/SKILL.md b/skills/youtube-watermark/SKILL.md similarity index 64% rename from skills/yutu-watermark/SKILL.md rename to skills/youtube-watermark/SKILL.md index 39c8d88..b106242 100644 --- a/skills/yutu-watermark/SKILL.md +++ b/skills/youtube-watermark/SKILL.md @@ -1,12 +1,16 @@ --- name: yutu-watermark -description: "Manage YouTube watermarks. Use this skill to set or unset watermarks for channel videos. Always use this skill when the user mentions watermark or wants to perform any operation on YouTube watermark, even if they don't explicitly ask for watermark management. Triggers: set a watermark for channel's videos, set watermark, set my watermark, unset a watermark for channel's videos, unset watermark, unset my watermark" +description: "Manage YouTube watermarks. Use this skill to set or unset watermarks for channel videos. Always use this skill when the user mentions watermark or wants to perform any operation on YouTube watermark, even if they don't explicitly ask for watermark management. Includes setup and installation instructions for first-time users. Triggers: set a watermark for channel's videos, set watermark, set my watermark, unset a watermark for channel's videos, unset watermark, unset my watermark" --- # Yutu Watermark Manage YouTube watermarks. Use this skill to set or unset watermarks for channel videos. +## Before You Begin + +yutu requires Google Cloud Platform OAuth credentials and a cached token to access the YouTube API. If you haven't set up yutu yet, read the [setup guide](references/setup.md) first. + ## Operations Read the linked reference for full flag details and examples. diff --git a/skills/youtube-watermark/references/setup.md b/skills/youtube-watermark/references/setup.md new file mode 100644 index 0000000..92b520e --- /dev/null +++ b/skills/youtube-watermark/references/setup.md @@ -0,0 +1,62 @@ + + +# Yutu Setup Guide + +Before using any yutu skill, you need to install `yutu` and configure YouTube API credentials. + +## Prerequisites + +An account on [Google Cloud Platform](https://console.cloud.google.com/) is required. Set up the following: + +1. **Create a GCP Project** and enable these APIs under `APIs & Services -> Enable APIs and services`: + - [YouTube Data API v3](https://console.cloud.google.com/apis/api/youtube.googleapis.com/overview) (Required) + - [YouTube Analytics API](https://console.cloud.google.com/apis/api/youtubeanalytics.googleapis.com/overview) (Optional) + - [YouTube Reporting API](https://console.cloud.google.com/apis/api/youtubereporting.googleapis.com/overview) (Optional) + +2. **Create OAuth credentials**: + - Go to `APIs & Services -> OAuth consent screen`, create a consent screen with yourself as a test user + - Go to `Credentials -> Create Credentials -> OAuth Client ID`, select `Web Application` + - Add `http://localhost:8216` as an authorized redirect URI + - Download the credential file and save it as `client_secret.json` + +3. **Authenticate**: + + ```bash + yutu auth --credential client_secret.json + ``` + + A browser window will open for you to grant YouTube access. After granting permission, a token is saved to `youtube.token.json`. + +## Installation + +Install `yutu` using one of these methods: + + +```bash +# macOS +brew install yutu + +# Linux +curl -sSfL https://raw.githubusercontent.com/eat-pray-ai/yutu/main/scripts/install.sh | bash + +# Windows +winget install yutu + +### Go +go install github.com/eat-pray-ai/yutu@latest + +# Docker +docker pull ghcr.io/eat-pray-ai/yutu:latest +docker run --rm -it -u $(id -u):$(id -g) -v $(pwd):/app -p 8216:8216 ghcr.io/eat-pray-ai/yutu:latest +``` + +## Environment Variables + +| Variable | Description | Default | +|----------|-------------|---------| +| `YUTU_CREDENTIAL` | Path, base64, or JSON of OAuth client secret | `client_secret.json` | +| `YUTU_CACHE_TOKEN` | Path, base64, or JSON of cached OAuth token | `youtube.token.json` | +| `YUTU_ROOT` | Root directory for file resolution | Current working directory | +| `YUTU_LOG_LEVEL` | Log level: `DEBUG`, `INFO`, `WARN`, `ERROR` | `INFO` | + +For more details, see the [yutu README](https://github.com/eat-pray-ai/yutu#readme). diff --git a/skills/yutu-watermark/references/watermark-set.md b/skills/youtube-watermark/references/watermark-set.md similarity index 100% rename from skills/yutu-watermark/references/watermark-set.md rename to skills/youtube-watermark/references/watermark-set.md diff --git a/skills/yutu-watermark/references/watermark-unset.md b/skills/youtube-watermark/references/watermark-unset.md similarity index 100% rename from skills/yutu-watermark/references/watermark-unset.md rename to skills/youtube-watermark/references/watermark-unset.md