feat(portless): add Portless plugin to marketplace#157
Merged
Conversation
Add Portless plugin from vercel-labs/portless that replaces port numbers with stable, named .localhost URLs for dev servers. Includes marketplace configuration, README entry, release-please config, plugin.json, and skills for intelligent activation.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
There was a problem hiding this comment.
Code Review
This pull request introduces the 'portless' plugin, which allows users to replace local port numbers with stable, named .localhost URLs. The changes include adding the plugin to the marketplace registry, updating the README with installation instructions, and providing a comprehensive skill definition for AI agents. One piece of feedback was provided regarding the plugin.json file, where the author field should be added as an object to properly credit the upstream organization (Vercel) as per the project's metadata standards.
There was a problem hiding this comment.
No issues found across 6 files
Confidence score: 5/5
- Automated review surfaced no issues in the provided summaries.
- No files require special attention.
Architecture diagram
sequenceDiagram
participant User as User/Agent
participant Marketplace as Plugin Marketplace
participant Claude as Claude CLI
participant Portless as Portless Proxy (Daemon)
participant DevServer as Local Dev Server (e.g. Next.js)
Note over User,Marketplace: Discovery & Installation
User->>Claude: /plugin install portless@pleaseai
Claude->>Marketplace: NEW: Fetch portless config (.claude-plugin/marketplace.json)
Marketplace-->>Claude: Return plugin manifest & source
Claude->>User: Plugin installed & Skill activated
Note over User,DevServer: Runtime Execution Flow
User->>Claude: "Run my app with portless"
Claude->>Claude: NEW: Consult SKILL.md for command syntax
Claude->>Portless: portless run [command]
opt Proxy not running
Portless->>Portless: Start background daemon (Port 443/80)
Portless->>Portless: NEW: Register .localhost SSL certs/Trust store
end
Portless->>Portless: Assign random internal port (e.g. 4001)
Portless->>DevServer: Execute command with PORT=4001
DevServer-->>Portless: App listening on 4001
Portless-->>User: App available at https://[project].localhost
Note over User,DevServer: Request Routing (Human or Agent)
User->>Portless: GET https://[project].localhost
Portless->>Portless: Lookup registration for [project]
Portless->>DevServer: Forward request to localhost:4001
DevServer-->>Portless: HTTP 200 OK
Portless-->>User: Return content
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.localhostURLs for dev servers — useful for both humans and agentsplugin.json, and agent skill for intelligent activationChanges
.claude-plugin/marketplace.json— add portless entry underdevelopmentcategoryREADME.md— add Portless plugin listing in the development sectionrelease-please-config.json— addplugins/portlessrelease configurationplugins/portless/.claude-plugin/plugin.json— plugin manifestplugins/portless/.agents/skills/portless/SKILL.md— skill for intelligent activationplugins/portless/skills-lock.json— skills lock fileTest Plan
/plugin install portless@pleaseairesolves correctlyclaude plugin validateSummary by cubic
Adds the
portlessplugin to the marketplace to replace port numbers with stable, named.localhostURLs for local dev servers. Improves local URL predictability for developers and agents./plugin install portless@pleaseaiplugins/portless/.claude-plugin/plugin.jsonplugins/portless/.agents/skills/portless/SKILL.mdplugins/portlessrelease-please-config.jsonupdated to manage releases forplugins/portlessWritten for commit c895c9d. Summary will update on new commits.