Port
Architects multi-language SDKs with idiomatic patterns per language, typed error handling, auto-pagination, and consistent cross-language interfaces — generated and hand-polished. Use when designing a new SDK surface, reviewing an existing SDK for ergonomics, or auditing coverage gaps across languages. Trigger with \"design the SDK architecture\", \"review this SDK\".
- Type
- Subagent
- Repository
- jeremylongshore/tons-of-skills-marketplace
- GitHub stars
- 2.8k
- License
- MIT
- Repo last updated
- Sep 27, 2026
- Source file
- plugins/ai-agency/tonone/agents/port.md
- Model
- sonnet
- Version
- 1.0.0
- Author
- Jeremy Longshore <[email protected]>
What Port is
Port is a subagent published in the jeremylongshore/tons-of-skills-marketplace repository on GitHub, which has about 2.8k stars. The repository describes itself as: “Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com.”
A subagent is a specialist assistant that Claude can hand part of a task to. It is a markdown file whose frontmatter sets a name, a description that tells Claude when to delegate, and optionally the tools and model it may use; the body becomes the subagent's own system prompt.
Because a subagent works in its own context, it keeps the main conversation focused: Claude can send a narrow job, such as a review or a specialised analysis, to Port and get back a compact result.
How to install Port
Claude Code
- Download port.md from the repository.
- Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control.
- Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Claude Cowork
- Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent.
- Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.
Inside the source file
An excerpt from plugins/ai-agency/tonone/agents/port.md, shared under the repository's MIT license. Read the full file on GitHub.
You are Port — SDK Design Engineer on the Developer Experience Team. Designs multi-language SDKs that feel native in every language while maintaining consistency across the full SDK surface.
Think in developer empathy and time-to-value. Every friction point in the developer experience is a drop-off. Every missing doc is a support ticket. Every breaking change without a migration guide is a churned integration.
Communication
Respond terse. All technical substance stays — only filler dies. Follow output-kit protocol: compressed prose, no filler, fragments OK. Documents: normal prose. See docs/output-kit.md for CLI skeleton, severity indicators, 40-line rule.
Operating Principle
An SDK must feel like it was written by a native speaker of each language. A Python SDK that returns dicts instead of dataclasses fails the Pythonic test. A TypeScript SDK without proper type exports fails the TS test. Consistency across languages means the concepts are the same, not the syntax. Generated SDKs (from OpenAPI) ship fast but feel generic — the best SDKs are generated and then hand-polished.
What you skip: SDK documentation — that's Guide and Sample. Port designs the SDK interface; Guide documents it.
What you never skip: Never ship an SDK that requires the developer to build the request URL manually. Never make a developer handle HTTP status codes directly — the SDK must translate them to typed errors. Never name SDK methods differently than the API operation names without a clear mapping.
Scope
Owns: SDK architecture design, language-idiomatic API design, cross-language consistency, SDK code generation
Skills
- Port Design: Design an SDK architecture for an API — language targets, idiomatic patterns, and code generation strategy.
- Port Review: Review an existing SDK for idiomatic quality, consistency, and developer ergonomics.
- Port Recon: Audit multi-language SDK coverage — find missing languages, inconsistencies, and maintenance gaps.
Key Rules
- Idiomatic: Python uses dataclasses + type hints; TS uses interfaces + generics; Go uses structs + errors
- Error handling: typed error classes per error category, not just a generic Error
- Pagination: SDK handles pagination automatically with an iterator pattern
- Auth: SDK handles token refresh and retry on 401 automatically
- Versioning: SDK version tracks API version; breaking API changes bump SDK major version
Process Disciplines
When performing Port work, follow these superpowers process skills:
Iron rule: No completion claims without fresh verification.
Before you install
- Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
- Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
- Try it in a test project or a copy of your files before pointing it at real work.
- Pin the version you tested, and review changes before updating.
- Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.
FAQ
What is Port?
Port is a subagent for Claude Code and Claude Cowork from the jeremylongshore/tons-of-skills-marketplace repository on GitHub. Architects multi-language SDKs with idiomatic patterns per language, typed error handling, auto-pagination, and consistent cross-language interfaces — generated and hand-polished. Use when designing a new SDK surface, reviewing an existing SDK for ergonomics, or auditing coverage gaps across languages. Trigger with \"design the SDK architecture\", \"review this SDK\".
How do I install Port in Claude Code?
Download port.md from the repository. Save it to ~/.claude/agents/ to use it in every project, or to .claude/agents/ inside one project to share it through version control. Claude Code watches these folders, so the subagent is usually available right away. Ask Claude to use it by name, or @-mention it to make sure it runs.
Can I use Port in Claude Cowork?
Cowork loads subagents through plugins. If the repository is packaged as a plugin marketplace, add it under Customize → Plugins → Add marketplace and install the plugin that contains this subagent. Otherwise, bundle the file into your own plugin's agents/ folder and upload it from Customize → Plugins.
Is Port safe to install?
It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.
Similar resources
- Geepers Orchestrator Fullstack Coordinates the full engineering team (API design, database, React frontend, accessibility, deployment) to deliver cohesive backend-to-frontend features with enforced layer contracts. Use when building a feature that spans database, API, and UI. Trigger with \"build this full-stack feature\", \"coordinate the backend and frontend\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Geepers Orchestrator Python Coordinates specialized sub-agents to audit, build, or refactor Python projects (Flask apps, CLI tools, libraries, scripts). Use when starting or reviewing a Python codebase and needing end-to-end coverage. Trigger with \"audit this Python project\", \"build a Python tool\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Geepers Orchestrator Research Coordinates swarm-style parallel data gathering across APIs, websites, and system sources, then aggregates findings into a structured research report. Use when pulling data from multiple sources or validating link collections. Trigger with \"gather data from these APIs\", \"research and synthesize this topic\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Geepers Prd Transforms ideas and business plans into detailed PRDs with user personas, prioritized user stories, functional requirements, and acceptance criteria developers can build from. Use when starting a new product or feature and needing structured technical requirements. Trigger with \"write a PRD for this\", \"turn this idea into requirements\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Portfolio Manager Applies Modern Portfolio Theory to construct and rebalance portfolios, calculate Sharpe/Sortino ratios, size positions via Kelly Criterion, and flag concentration or volatility threshold breaches. Use when reviewing a portfolio or planning an asset allocation. Trigger with "review my portfolio", "optimize asset allocation". Subagent · jeremylongshore/tons-of-skills-marketplace
- Plot Selects chart types and encodings, designs EDA workflows, and audits existing visualizations for misleading charts, accessibility failures, and wrong library choices. Use when choosing how to visualize a dataset, building a dashboard spec, or catching bad charts in a notebook. Trigger with \"design this visualization\", \"audit our charts\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Prism Implements design system specs into production-quality UI components, pages, and internal tools using design tokens, TDD, and full a11y — never reinterprets Form's visual decisions. Use when building React/Vue/Svelte components, wiring state management, or hardening production UI against empty/error/loading states. Trigger with \"implement this component\", \"build the UI\". Subagent · jeremylongshore/tons-of-skills-marketplace
- Pitch Runs the Dunford five-step positioning framework and writes the output — homepage copy, launch announcements, email, taglines, and GTM plans that name specific distribution channels. Use when launching a product, repositioning against new competitors, or writing the landing page. Trigger with \"position this product\", \"write the launch copy\". Subagent · jeremylongshore/tons-of-skills-marketplace