teakit
v0.1.1
Published
CLI for creating, checking, and maintaining Teakit tslib projects.
Readme
teakit
Bun-first CLI for creating and checking Teakit tslib projects.
teakit provides repeatable project actions for humans and AI agents: create a new tslib project and check an existing project.
Start Here
For humans:
- Read this README for the package role, commands, and scripts.
- Read skills/index.mdx for the docs-site entry point.
- Read docs/proposals/v1-implementation.md for the current V1 implementation proposal.
- Read docs/knowledge/index.md for reusable project knowledge.
For AI agents:
- Read AGENTS.md for repository rules.
- Read docs/knowledge/index.md, then docs/memory/index.md.
- Read skills/llms.md for the compact package contract.
- Use skills/teakit-cli/SKILL.md when the agent runtime supports skills.
- See docs/specs/index.md for the executable command contracts.
Package Role
teakit is the command-line tool for Teakit tslib operations:
teakit create <name>
teakit doctor
teakit --describeCommands
| Command | Purpose |
| --- | --- |
| teakit create <name> | Create a new Teakit tslib project from the built-in tslib template. Flags: --cwd <dir>, --owner <scope>, --description <text>, --dry-run, --format <json\|text>. |
| teakit doctor | Check the current working directory and output structured findings. Flag: --format <json\|text>. |
| teakit --describe | Print a machine-readable description of commands, exit codes, and finding codes. |
| teakit --version / --help | Print the version / human usage (plain text). |
create, doctor, and --describe print a single JSON result; doctor/create carry a stable schemaVersion. create/doctor also accept --format <json|text> — the default follows the TTY (text in a terminal, JSON when piped), so agents that capture stdout get JSON. --version/--help are human-facing plain text. Exit codes: 0 ok/warn, 1 error findings or unsafe to complete, 2 usage error.
Built-in Tslib Template
The tslib template lives in src/templates/tslib.
It is embedded in this repository so teakit create can run from local package data without fetching remote templates at runtime.
Scripts
| Command | Description |
| --- | --- |
| bun run dev | Starts tsdown in watch mode for package development. |
| bun run build | Builds the package into dist and generates declaration files. |
| bun run check | Runs Biome checks across the project. |
| bun run check:fix | Runs Biome checks and writes safe fixes. |
| bun run typecheck | Runs TypeScript type checking without emitting files. |
| bun run test | Runs the Bun test suite. |
| bun run docs:dev | Starts the Rspress documentation site. |
| bun run docs:build | Builds the documentation site. |
| bun run docs:preview | Previews the built documentation site. |
Releasing
Releases publish to the public npm registry via the Release workflow, triggered by a version tag:
- Bump
versioninpackage.json(andsrc/version.ts— a test keeps them in sync). - Commit, then tag and push:
git tag v0.1.0 && git push origin v0.1.0. - The workflow verifies the tag matches
package.json, runs check/typecheck/test/build, and runsbun publish.
The workflow authenticates with an NPM_TOKEN repository secret (add it under Settings → Secrets → Actions). The tag must be v<version> (e.g. v0.1.0); a mismatch fails the workflow before publishing.
Rules and Constraints
Repository rules — Bun-only runtime, empty runtime dependencies, repository role, documentation map, the submit-code workflow, and verification — live in AGENTS.md. Durable decisions are distilled under docs/memory/index.md. This README intentionally does not restate them.
License
Copyright (c) 2026 Teakit.org. All rights reserved.
This project is proprietary and is not licensed for public use, distribution, or modification. See LICENSE for details.
