Agent skill

TypeScript Monorepo Conventions

by pierrecomputer in pierrecomputer/pierre

Conventions for adding packages and apps to a TypeScript monorepo: project references, moon tasks, workspace dependencies and published package exports.

Apache-2.0Auto-check passedDevelopment

Install TypeScript Monorepo Conventions

skills CLI
$ npx skills add pierrecomputer/pierre --skill typescript-monorepo -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pierrecomputer/pierre typescript-monorepo --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pierrecomputer/pierre.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/typescript-monorepo .claude/skills/typescript-monorepo && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
typescript-monorepo
GitHub stars
6.2k
Token cost
~450 tokens
SKILL.md length
198 words
Files
1
Skills in repo
10
Repo updated
First seen
Licence
Apache-2.0

At a glance

Conventions for adding packages and apps to a TypeScript monorepo: project references, moon tasks, workspace dependencies and published package exports.

  • Adding a new package or app to the workspace
  • SKILL.md covers TypeScript, Project References and Workspace Dependencies
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Wiring one workspace package to depend on another

What it does

The skill records how this repo's TypeScript workspace is wired. Shared compiler options sit in tsconfig.options.json with fairly strict settings, and the root tsconfig.json holds project references across the monorepo. Typechecking uses TypeScript 7's native tsc, run through moon with the moonx project:typecheck command, which builds workspace dependencies first because types resolve through each dependency's built output.

When you add a package or app, it goes into the root references, gets a local tsconfig.json that follows existing patterns and a moon.yml with its language, layer, tags and tasks. Internal dependencies use workspace:* plus an entry in the consuming package's references block when needed, while external packages follow the catalog rules in pnpm-workspace.yaml. Before changing the entry points or dependency ranges of a published package, review its exports, typesVersions, files, peer dependencies and moon prepublish task chain.

When your agent uses it

  • Adding a new package or app to the workspace
  • Wiring one workspace package to depend on another
  • Changing TypeScript configs or project references
  • Editing the exports or dependency ranges of a published package

Example prompts

  • “Add a new package called ui-tokens to the workspace with the right tsconfig and moon.yml.”
  • “Make the web app depend on the shared utils package and update the project references.”
  • “Update the exports field of the published diffs package without breaking its typesVersions.”

Requirements

  • A pnpm workspace
  • The moon task runner
  • TypeScript

What it can do on your machine

Read from SKILL.md and the folder at commit d302ea0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

TypeScript Monorepo Conventions loads about 450 tokens when it runs. Until then it costs about 45 tokens; SKILL.md has 198 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~45
When it runs · the whole SKILL.md, loaded when a task matches
~450

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from pierrecomputer/pierre at commit d302ea0, republished under its Apache-2.0 licence (© pierrecomputer). 198 words, ~450 tokens.

Download SKILL.mdSave it as .claude/skills/typescript-monorepo/SKILL.md (or your agent's skills folder).
name
typescript-monorepo
description
Use when adding or changing packages/apps, TypeScript configs, workspace dependencies, package references, exports, or monorepo project-reference relationships.

TypeScript Monorepo

TypeScript

Use TypeScript everywhere practical. Compiler settings are intentionally fairly strict.

  • Shared compiler options live in tsconfig.options.json.
  • Root tsconfig.json manages project references across the monorepo.
  • Typechecking uses TypeScript 7's native tsc (the successor to the tsgo preview) and runs through moon: moonx <project>:typecheck (moon builds workspace dependencies first, since types resolve through each dependency's built dist). Next runs the same tsc for its build-time check through experimental.useTypeScriptCli, which is on by default since Next 16.3.

Project References

When adding a new package or app:

  • Add it to the root tsconfig.json references.
  • Ensure its local tsconfig.json follows existing package/app patterns.
  • Give it a moon.yml (language, layer, tags, and any project-specific tasks); shared tasks come from .moon/tasks/*.yml via tags or project language.

When one workspace package depends on another:

  • Add the dependency as workspace:* in the consuming package.
  • Add the dependency to the consuming package's TypeScript references block when needed for accurate and fast typechecking.

Workspace Dependencies

Use the pnpm-workspace.yaml catalog rules from tooling-and-dependencies for external packages. Use workspace:* for internal package dependencies.

If a package is published, review its exports, typesVersions, files, peer dependencies, and its moon prepublish task chain before changing public entrypoints or dependency ranges.

© pierrecomputer, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/typescript-monorepo of pierrecomputer/pierre.

Open the folder on GitHubat commit d302ea0

Compare with similar skills

TypeScript Monorepo Conventions next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

TypeScript Monorepo Conventions compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
TypeScript Monorepo Conventions this skillpierrecomputer/pierre6.2k—~450Automated safety check: PassApache-2.0
Pnpm Engineteambit/bit18k—~1.9kAutomated safety check: PassCustom licence
Linea Dependency MaintenanceConsensys-Incorporated/linea-attestation-registry1771 repos~3.7kAutomated safety check: WarnMIT
Link Workspace Packagesnomcopter/react-mosaic4.8k5 repos~760Automated safety check: PassCustom licence
Bumpy Add Changezap-studio/monorepo1721 repos~1.4kAutomated safety check: NotesMIT
TS SDK Authormindfold-ai/Trellis15k—~6.1kAutomated safety check: PassMIT

Similar skills

  • Pnpm Engine

    teambit/bit

    Work on the pnpm Rust engine (@pnpm/napi, the pacquet crates) that bit install runs through.

    18k GitHub stars~1.9k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Linea Dependency Maintenance

    Consensys-Incorporated/linea-attestation-registry

    Safely plan and execute dependency maintenance for JavaScript/TypeScript (npm, pnpm) and GitHub Actions, including npm lockfiles, pnpm workspaces, catalogs, overrides, SHA-pinned action versions…

    177 GitHub starsUsed in 1 repo~3.7k tokens
    DevelopmentAuto-check: warnings
  • Link Workspace Packages

    nomcopter/react-mosaic

    Link workspace packages in monorepos (npm, yarn, pnpm, bun).

    4.8k GitHub starsUsed in 5 repos~760 tokens
    DevelopmentAuto-check passed
  • Bumpy Add Change

    zap-studio/monorepo

    Create a bumpy bump file describing which packages changed and how, for version bumping and changelog generation.

    172 GitHub starsUsed in 1 repo~1.4k tokens
    DevelopmentAuto-check: notes
  • TS SDK Author

    mindfold-ai/Trellis

    Design, build, verify, and publish production-grade TypeScript SDKs as npm packages inside a pnpm monorepo.

    15k GitHub stars~6.1k tokensUpdated 8 days ago
    DevelopmentAuto-check passed
  • Typescript Expert

    cin12211/orca-q

    TypeScript and JavaScript expert with deep knowledge of type-level programming, performance optimization, monorepo management, migration strategies, and modern tooling.

    223 GitHub starsUsed in 11 repos~3.7k tokens
    DevelopmentAuto-check passed

More from pierrecomputer/pierre

All 10 skills in this repo
  • @pierre/diffs Code Rendering

    pierrecomputer/pierre

    Guides an agent through using @pierre/diffs to render syntax-highlighted files and diffs, and to build editing and review surfaces in React or plain JavaScript.

    6.2k GitHub starsUsed in 2 repos~803 tokens
    Auto-check passed
  • Pierre Theming Library

    pierrecomputer/pierre

    Explains how to use the @pierre/theming package to list, resolve, select, switch and persist themes, with controller, color and React references.

    6.2k GitHub stars~661 tokensUpdated yesterday
    Auto-check passed
  • Pierre Trees File Tree

    pierrecomputer/pierre

    Use when an app uses @pierre/trees to render or control a file tree, including React, vanilla JavaScript, SSR, web components, selection, search, rename, drag…

    6.2k GitHub stars~473 tokensUpdated yesterday
    Auto-check passed
  • Pierre Highlights

    pierrecomputer/pierre

    Shows how to use @pierre/highlights for syntax-highlighted HTML or tokens, streaming and incremental tokenizing, and Zed-compatible themes with CSS variables.

    6.2k GitHub stars~409 tokensUpdated yesterday
    Auto-check passed
  • Chooses the right verification step after a code change in Pierre's monorepo: format and lint, a typecheck, Bun unit tests, snapshots, or Playwright E2E.

    6.2k GitHub stars~608 tokensUpdated yesterday
    Auto-check passed
  • Pierre Theme Package

    pierrecomputer/pierre

    Shows an agent how to install and use the @pierre/theme package, which ships ten Pierre light and dark color themes for Shiki and VS Code.

    6.2k GitHub stars~352 tokensUpdated yesterday
    Auto-check passed

Works with

Categories

Questions about TypeScript Monorepo Conventions

What does TypeScript Monorepo Conventions do?

Conventions for adding packages and apps to a TypeScript monorepo: project references, moon tasks, workspace dependencies and published package exports. The skill records how this repo's TypeScript workspace is wired.json holds project references across the monorepo.

When should I use TypeScript Monorepo Conventions?

TypeScript Monorepo Conventions fits situations like: adding a new package or app to the workspace; wiring one workspace package to depend on another; changing TypeScript configs or project references; editing the exports or dependency ranges of a published package.

How do I install TypeScript Monorepo Conventions in Claude Code?

Run `npx skills add pierrecomputer/pierre --skill typescript-monorepo -a claude-code`. Or copy the skill folder (.agents/skills/typescript-monorepo in pierrecomputer/pierre) into .claude/skills/typescript-monorepo in your project. Claude Code loads it when a task matches its description.

How do I install TypeScript Monorepo Conventions in Codex?

Run `npx skills add pierrecomputer/pierre --skill typescript-monorepo -a codex`. Or copy the skill folder (.agents/skills/typescript-monorepo in pierrecomputer/pierre) into .agents/skills/typescript-monorepo in your project. Codex loads it when a task matches its description.

Can I use TypeScript Monorepo Conventions in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pierrecomputer/pierre --skill typescript-monorepo -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/typescript-monorepo, .gemini/skills/typescript-monorepo, .github/skills/typescript-monorepo and .opencode/skills/typescript-monorepo in your project.

What does TypeScript Monorepo Conventions need to run?

SKILL.md names no scripts, command-line tools or credentials: TypeScript Monorepo Conventions is instructions for the agent only. Our summary lists: A pnpm workspace; The moon task runner; TypeScript.

Does TypeScript Monorepo Conventions access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is TypeScript Monorepo Conventions safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does TypeScript Monorepo Conventions use?

TypeScript Monorepo Conventions is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does TypeScript Monorepo Conventions use?

About 450 tokens (SKILL.md is roughly 1.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to TypeScript Monorepo Conventions?

Skills that share tags, products or a category with TypeScript Monorepo Conventions: Pnpm Engine (teambit/bit, 18k stars), Linea Dependency Maintenance (Consensys-Incorporated/linea-attestation-registry, 177 stars), Link Workspace Packages (nomcopter/react-mosaic, 4.8k stars) and Bumpy Add Change (zap-studio/monorepo, 172 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains TypeScript Monorepo Conventions?

pierrecomputer (a GitHub organization) maintains it in pierrecomputer/pierre, which has 6,243 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 6, 2026.

Source: pierrecomputer/pierre on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.