package-development

Package registration. Use when adding a workspace package, making a private package publishable, renaming a package, or moving its workspace path.

Install
npx skills add 'https://github.com/Effect-TS/effect/tree/main/.agents/skills/package-development'
Download bundle ↓
main · 90695b0Scanned 2026-09-15

Contributors

GitHub-linked commit authors for this SKILL.md at the saved revision. Co-authors and history before file renames are not included.

File history ↗

dependencies.md

dependencies.mdBrowse 4 files
View on GitHub
← Back to SKILL.md

Package Dependencies

Inspect the closest package with the same publication and integration shape. Classify every manifest entry by the role it serves:

RoleUse when
dependenciesPublished runtime code requires the package to receive its own installed copy.
peerDependenciesConsumers provide a compatible shared package or the public contract integrates with their copy.
devDependenciesOnly repository build, test, type test, benchmark, or code generation needs the package.
optionalDependenciesA runtime feature handles absence and installation failure must not block the base package.
Optional peer via peerDependenciesMetaA consumer-provided integration is genuinely optional. Keep its version in peerDependencies.

Use workspace:^ for workspace packages unless neighboring packages establish a different policy. When local build or tests need an installed peer, add the peer to devDependencies at the repository's tested version while keeping the peer range based on supported consumer versions.

Derive external versions from current consumers with the same integration shape. Add only direct requirements; do not copy a neighboring manifest entry that the new package's runtime, declarations, build, or tests do not use.

After editing manifests, run root pnpm install. Inspect warnings and the package's pnpm-lock.yaml importer for intended specifiers and resolutions. If a dependency has an install or native build, classify it under pnpm-workspace.yaml#allowBuilds using current repository policy.

This branch is complete when every entry has one justified role, workspace and peer ranges follow repository policy, the lockfile importer agrees with the manifest, and install/build policy is explicit.

Referenced from SKILL.md