TokenDanceCode
Updated 2026-06-19

Contributing

Contributions welcome. Whether you are fixing a bug, adding tests, or proposing a feature, this is where to start.

Setup

git clone https://github.com/TokenDanceLab/TokenDanceCode.git
cd TokenDanceCode
pnpm install
pnpm build

Three commands and you are in. The project uses TypeScript in strict mode and runs tests with Vitest.

Build commands

CommandWhat it does
pnpm buildCompile all packages (core, sdk, cli)
pnpm testRun Vitest across all packages
pnpm verifyTypecheck + lint + test + contract check
pnpm pack:smokePack tarballs and verify they import
pnpm release:next:checkPre-release dry-run checklist

Opening a PR

  1. Run pnpm verify and confirm it passes.
  2. If you changed a public API surface, update the types and doc comments.
  3. Add or update tests covering the new behavior.
  4. Breaking changes need a design note — explain what changed, why, and the migration path.
  5. If the change is part of a release candidate, run pnpm release:next:check as well.

Not sure if a change fits? Open an issue first. It saves time.

Code style

  • TypeScript strict across all packages. No exceptions.
  • Exported symbols need JSDoc comments.
  • Use @tokendance/code-core for shared runtime types. Do not copy type definitions between packages.
  • File naming: kebab-case.ts for modules, index.ts for barrel exports.
  • Throw typed errors (TokenDanceCodeError subclasses), not bare strings.

Release

Collaboration and release orchestration happen on AgentHub. npm publish is done manually by the release owner after pnpm release:next:check passes.

Edit this page on GitHub