community-publish
Installation
SKILL.md
Two concepts: PUBLISH vs LIST — never confuse them
This skill handles two fundamentally different concepts. Mixing them up is the #1 source of wrong answers.
| Concept | What it means | Functions |
|---|---|---|
| PUBLISH (发布) | Make something accessible — a URL works, or code is on GitHub | publish_preview, unpublish_preview, list_published_previews, open_source, remove_open_source, list_open_source, get_open_source, fork, validate_open_source |
| LIST (上架) | Make something discoverable/purchasable on the marketplace | Free: list_in_dashboard, unlist_from_dashboard, delete_listing, get_listing_statusPaid: create_paid_service, submit_for_review, get_review_status, publish_service, unpublish_service, list_my_services, get_service, update_service, delete_service, restore_serviceCover: upload_cover_imageBrowse + consumer: explore_services, get_service_detail, get_service_pricing, get_service_reviews, write_service_review, favorite_service, unfavorite_service, get_favorite_services, get_user_services, get_service_earnings, get_earnings_summary, get_service_tags, get_featured_servicesProjects query: explore_projects, my_projects, favorite_projects, get_tab_counts, get_popular_tags, get_user_projects, favorite_project, unfavorite_project |
Publishing does NOT auto-list. publish_preview() only allocates the URL. open_source() only pushes code. Neither makes the project discoverable on the marketplace — that requires a separate, deliberate LIST call.
Listing has two flows
| Flow | When to use | Review? | Pricing? | Functions |
|---|---|---|---|---|
| Free listing | Free project, show on /projects gallery |
No | No | list_in_dashboard() |
| Paid listing | Charge for access via x402 | Required (6-check review, must pass before publishing) | Yes (USDC/USDG/USDC(Solana) on platform networks — default Base+Monad+Robinhood+X Layer+Solana, follows all) |
create_paid_service() → submit_for_review() (required) → publish_service() |
POST /api/servicesno longer acceptsservice_type: "free_project". Free listing is done bylist_in_dashboard()(the project gallery flow). Paid listing usescreate_paid_service()+ review + publish (the service API flow).