Skills tc-protohub
在 ProtoHub 上管理原型。当用户想要上传目录或 ZIP 文件作为原型、更新现有原型、列出原型或获取预览链接时,请使用此技能。它支持自动打包文件夹、强制校验入口文件 (index.html),以及按名称搜索原型以便更新。
git clone https://github.com/openclaw/skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/airclear/tc-protohub" ~/.claude/skills/clawdbot-skills-tc-protohub && rm -rf "$T"
skills/airclear/tc-protohub/SKILL.mdSkill: ProtoHub AI Agent Integration
Purpose
This skill allows AI Agents to manage prototypes on ProtoHub. It provides automated tools for packaging, publishing, and discovering prototypes (folders or ZIP files) in the ProtoHub Private Sandbox.
Capabilities
- Automated Publishing: Package a directory or use a ZIP file to create/update prototypes.
- Entry Point Validation: Automatically checks for
before uploading.index.html - Prototype Discovery: List existing prototypes or search by name to find IDs.
- Preview Management: Retrieve public URLs for demonstration.
Mandatory Configuration
Before performing any action, the AI Agent MUST verify that the following environment variables are set:
: Required for authentication.PROTOHUB_API_KEY
: Base URL of the ProtoHub server (default:PROTOHUB_URL
).http://localhost:48080
Strict Validation Rule: If either of these is missing from the environment and has not been provided by the user in the current session, the Agent MUST NOT attempt to run the script and MUST NOT retry with placeholder values. Instead, immediately ask the user to provide the missing configuration.
How to set:
export PROTOHUB_API_KEY="your-api-key" export PROTOHUB_URL="http://localhost:48080"
Recommended Tool: publish.py
Usage Examples
1. Upload a Directory as a New Prototype
python skills/tc-protohub/scripts/publish.py publish ./my-dist-folder --name "My Prototype Name"
2. Update an Existing Prototype
Overwrites content while maintaining the same ID and URL.
python skills/tc-protohub/scripts/publish.py publish ./my-dist-folder --id 1024
3. List Prototypes (Search by Name)
Useful for finding the ID when the user says "Update the 'Login Page' prototype".
python skills/tc-protohub/scripts/publish.py list --name "Login Page"
4. Get Preview Link
python skills/tc-protohub/scripts/publish.py get-link 1024
Best Practices
- Folder Structure: Ensure
is at the root of your directory or ZIP file.index.html - Intelligent Updating:
- If the user asks to "update" a prototype but doesn't provide an ID, use
to find a matching prototype first.publish.py list --name "..." - If exactly one match is found, use its ID to perform the update.
- If multiple or no matches are found, ask the user for clarification or create a new one.
- If the user asks to "update" a prototype but doesn't provide an ID, use
- API Base URL: Default is
. Override using thehttp://localhost:48080
env var orPROTOHUB_URL
flag.--url - Error Handling:
: API Key is missing or invalid.401 Unauthorized
: The specified404 Not Found
does not exist.prototypeId
: The script will abort the upload to prevent broken previews.Missing index.html