tc-protohub
Skill: 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
index.htmlbefore uploading. - 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:
PROTOHUB_API_KEY: Required for authentication.PROTOHUB_URL: Base URL of the ProtoHub server (default: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
index.htmlis at the root of your directory or ZIP file. - Intelligent Updating:
- If the user asks to "update" a prototype but doesn't provide an ID, use
publish.py list --name "..."to find a matching prototype first. - 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
http://localhost:48080. Override using thePROTOHUB_URLenv var or--urlflag. - Error Handling:
401 Unauthorized: API Key is missing or invalid.404 Not Found: The specifiedprototypeIddoes not exist.Missing index.html: The script will abort the upload to prevent broken previews.
More from airclear/skills
conductor-setup
Scaffolds the project and sets up the Conductor environment for Context-Driven Development. Use when starting a new project or initializing the Conductor workflow in an existing (brownfield) project. This skill guides the user through project discovery, product definition, tech stack configuration, and initial track planning.
14bmad-tea
Enterprise Test Architecture (TEA) framework for quality engineering. Includes workflows for testing education (TEA Academy), risk-based test design, framework scaffolding, ATDD (Red-phase), CI/CD pipeline configuration, NFR (Non-functional) assessment, and quality auditing (0-100 scoring). Use for establishing or executing comprehensive testing strategies.
13conductor-status
Provides a comprehensive status overview of the Conductor project. Use when the user wants to know the current progress, active tasks, next steps, or overall health of the project tracks and plans.
12conductor-implement
Executes the tasks defined in a specified track's plan. Use when the user wants to start or continue implementing a feature or bug fix. This skill manages the task lifecycle, adheres to the project's workflow, synchronizes project documentation upon completion, and offers track cleanup options.
11conductor-review
Acts as a Principal Software Engineer and Code Review Architect to review completed or in-progress work against project standards, style guides, and the implementation plan. Use when the user wants a quality check on their code or before finalizing a track.
10conductor-revert
Reverts logical units of work (Tracks, Phases, or Tasks) by analyzing git history and synchronizing the Conductor plans. Use when a user wants to undo specific changes and ensure the project's documentation reflects the rolled-back state.
10