skills/new-package/SKILL.md
# New Package Skill Create a new package in the Topographic Studio monorepo. ## Task You are helping the user scaffold a new package in the monorepo with all necessary configuration. ## Instructions 1. **Gather information** from the user: - Package name (e.g., "hooks", "animations", "api-client") - Package description - Package type (library, UI components, utilities, types, config) - Dependencies needed 2. **Create package structure**: ``` packages/{name}/ ├── packag
npx skillsauth add leobrival/topographic-skills skills/new-packageInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create a new package in the Topographic Studio monorepo.
You are helping the user scaffold a new package in the monorepo with all necessary configuration.
Gather information from the user:
Create package structure:
packages/{name}/
├── package.json
├── tsconfig.json
├── tsup.config.ts (if applicable)
├── README.md
└── src/
└── index.ts
Configure package.json:
@topographic-studio/{name}0.0.1Add TypeScript config:
Create initial source file:
Update root package.json:
Install dependencies:
bun install
Verify setup:
bun run build --filter=@topographic-studio/{name}
{
"name": "@topographic-studio/{name}",
"version": "0.0.1",
"description": "{description}",
"main": "./dist/index.js",
"module": "./dist/index.mjs",
"types": "./dist/index.d.ts",
"exports": {
".": {
"types": "./dist/index.d.ts",
"import": "./dist/index.mjs",
"require": "./dist/index.js"
}
},
"files": ["dist"],
"scripts": {
"build": "tsup",
"dev": "tsup --watch",
"lint": "biome check .",
"lint:fix": "biome check --write .",
"typecheck": "tsc --noEmit"
},
"keywords": [],
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/leobrival/core.git",
"directory": "packages/{name}"
},
"devDependencies": {
"tsup": "^8.3.5",
"typescript": "^5.7.2"
}
}
Created new package: @topographic-studio/{name}
Location: packages/{name}/
Files created:
✅ package.json
✅ tsconfig.json
✅ tsup.config.ts
✅ README.md
✅ src/index.ts
Next steps:
1. Implement your package logic in src/
2. Add dependencies if needed: bun add -D package-name
3. Build: bun run build --filter=@topographic-studio/{name}
4. Use in other packages: import from "@topographic-studio/{name}"
development
# Package Publish Skill Publish packages to npm using Changesets workflow. ## Task You are helping the user publish packages to npm with proper versioning and changelog generation. ## Instructions ### Pre-publish Checklist 1. **Ensure all checks pass**: ```bash bun run lint && bun run typecheck && bun run test && bun run build ``` 2. **Check for uncommitted changes**: ```bash git status ``` All changes must be committed before publishing. 3. **Verify on main branch**
development
# Monorepo Build Skill Build all packages in the Topographic Studio monorepo using Turborepo. ## Task You are helping the user build all packages in the monorepo. ## Instructions 1. Navigate to the monorepo root directory 2. Run the build command with Turborepo 3. Report any build errors with specific package names and error messages 4. If successful, show a summary of built packages ## Commands ```bash # Build all packages bun run build # Build with cache info turbo run build --summariz
development
# Check All Skill Run the complete validation suite for Topographic Studio projects. ## Task You are helping the user validate their code with a full quality check suite. ## Instructions Run these checks in order: 1. **Lint** - Check code style with Biome ```bash bun run lint ``` 2. **Type Check** - Verify TypeScript types ```bash bun run typecheck ``` 3. **Test** - Run all tests ```bash bun run test ``` 4. **Build** - Build all packages ```bash bun run
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.