Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/andronics/claude-plugin-typescript-pronpx agentmods add commands/andronics/claude-plugin-typescript-pro/ts-packageWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/andronics/claude-plugin-typescript-pro/ts-package)<a href="https://agentmods.dev/commands/andronics/claude-plugin-typescript-pro/ts-package"><img src="https://agentmods.dev/badge/commands/andronics/claude-plugin-typescript-pro/ts-package/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/andronics/claude-plugin-typescript-pro/ts-package"><img src="https://agentmods.dev/badge/commands/andronics/claude-plugin-typescript-pro/ts-package.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00014 | $0.02093 |
| Opus 5.5 | $0.00006 | $0.00837 |
| Sonnet 5.5 | $0.00003 | $0.00419 |
| Haiku 4.5 | $0.00001 | $0.00209 |
Grade A, and why
ts-package scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 357 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Prepare TypeScript library for npm publication:
-
Validate Library Setup
Check if this is a publishable library:
- Is there a package.json?
- Is this intended for npm publication?
- What type of library: React, Vue, utility, Node?
- Target environments: Browser, Node, both?
-
Configure package.json
Essential Fields:
{ "name": "@scope/package-name", "version": "1.0.0", "description": "Library description", "author": "Name <email>", "license": "MIT", "repository": { "type": "git", "url": "https://github.com/user/repo.git" }, "keywords": ["typescript", "library"], "type": "module", "main": "./dist/index.cjs", "module": "./dist/index.js", "types": "./dist/index.d.ts", "exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.cjs" } }, "files": [ "dist", "README.md", "LICENSE" ], "sideEffects": false, "engines": { "node": ">=18" } }Verify and fix any missing or incorrect fields.
-
Set Up Build Configuration
Recommended: tsup (Simple & Fast)
// tsup.config.ts import { defineConfig } from 'tsup'; export default defineConfig({ entry: ['src/index.ts'], format: ['esm', 'cjs'], dts: true, splitting: false, sourcemap: true, clean: true, treeshake: true, external: [], // Add peer dependencies });Or configure tsc for dual package:
// tsconfig.build.json { "extends": "./tsconfig.json", "compilerOptions": { "declaration": true, "declarationMap": true, "sourceMap": true, "removeComments": false }, "exclude": ["**/*.test.ts", "**/*.spec.ts"] } -
Generate Type Declarations
Ensure high-quality .d.ts files:
- Enable
declaration: true - Enable
declarationMap: truefor IDE navigation - Keep JSDoc comments (
removeComments: false) - Export all public types explicitly
- Bundle declarations if multiple files
- Enable
-
Configure Dual Package (ESM + CJS)
Support both module systems:
"exports": { ".": { "types": "./dist/index.d.ts", "import": "./dist/index.js", "require": "./dist/index.cjs" }, "./utils": { "types": "./dist/utils.d.ts", "import": "./dist/utils.js", "require": "./dist/utils.cjs" } } -
Verify Public API
Check src/index.ts exports:
- All public APIs exported
- Types exported separately
- No internal implementation leaked
- Clear module boundaries
// Good exports export type { User, CreateUserInput } from './types'; export { createUser, updateUser } from './api'; export { default as UserService } from './UserService'; -
Add JSDoc Documentation
Document public APIs:
/** * Creates a new user with the provided details. * * @param input - The user details * @returns A promise resolving to the created user * @throws {ValidationError} If input is invalid * * @example * ```typescript * const user = await createUser({ * name: 'Alice', * email: '[email protected]' * }); * ``` */ export async function createUser( input: CreateUserInput ): Promise<User>; -
Configure Files to Publish
package.json files field:
{ "files": [ "dist", "README.md", "LICENSE", "CHANGELOG.md" ] }Or create
.npmignore:src/ tests/ *.test.ts *.spec.ts tsconfig.json .eslintrc -
Set Up Pre-Publish Scripts
{ "scripts": { "build": "tsup", "type-check": "tsc --noEmit", "test": "vitest run", "prepublishOnly": "npm run build && npm test" } }
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 357 lines · 14 tokens per session scan A da958144084d
ts-package is a command published in the GitHub repository andronics/claude-plugin-typescript-pro (4 stars, last pushed 1y ago), licensed MIT. It adds 14 tokens to every session and 2,093 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
cargo-publish
Command "cargo-publish" from olorehq/olore, covering cargo-publish(1), name, synopsis, description and options.
cargo-yank
Command "cargo-yank" from olorehq/olore, covering cargo-yank(1), name, synopsis, description and how yank works.
commit-push-pr
Commit, push, and open a PR (includes changeset creation).
release
Prepare and execute a Python package release with verification steps.
rel
You are tasked with releasing a Ruby gem. Follow these steps in order.
uv-publish
A command for publishing a Python package with uv, a Python tool for managing projects and dependencies, to PyPI, the main public package repository.