@hyphaene/hexa-ts-kit
v1.5.0
Published
TypeScript dev kit for Claude Code agents: architecture linting, scaffolding, knowledge analysis
Maintainers
Readme
hexa-ts-kit
TypeScript dev kit for Claude Code agents: architecture linting, scaffolding, and knowledge analysis.
Built for colocated feature architectures in Vue.js, NestJS, and Playwright projects.
Installation
npm install -g @hyphaene/hexa-ts-kitOr use directly with npx:
npx @hyphaene/hexa-ts-kit lintUsage
CLI
# Lint current directory
hexa-ts lint
# Lint only git-changed files (incremental mode)
hexa-ts lint --changed
# Filter by rule categories
hexa-ts lint --rules COL,NAM,VUE
# Analyze files to find matching knowledges
hexa-ts analyze src/domains/contracts/upload.composable.ts
# Analyze git-changed files
hexa-ts analyze --changed
# Scaffold a Vue feature
hexa-ts scaffold vue-feature src/domains/contracts/upload
# Scaffold a NestJS feature
hexa-ts scaffold nestjs-feature src/domains/orders/create
# Scaffold Playwright tests
hexa-ts scaffold playwright-feature e2e/checkoutMCP Server
Add to your Claude Code MCP configuration:
{
"mcpServers": {
"hexa-ts": {
"command": "npx",
"args": ["-y", "-p", "@hyphaene/hexa-ts-kit@latest", "-c", "hexa-ts-mcp"]
}
}
}Or if installed globally:
{
"mcpServers": {
"hexa-ts": {
"command": "hexa-ts-mcp"
}
}
}Available MCP tools:
| Tool | Description |
| ---------- | ------------------------------------- |
| lint | Lint files for architecture rules |
| analyze | Map files to associated knowledges |
| scaffold | Generate colocated feature structures |
Lint Rules
71 rules across 9 categories:
| Category | Prefix | Count | Focus | | ------------ | ------ | ----- | ---------------------------------- | | Colocation | COL | 12 | File placement and structure | | Naming | NAM | 12 | File and export naming conventions | | Vue | VUE | 13 | Vue component patterns | | Composable | CMP | 11 | Composable patterns | | Rules | RUL | 12 | Business rules file patterns | | Query | QRY | 8 | Query/API file patterns | | Translations | TRN | 5 | i18n file patterns | | TypeScript | TSP | 12 | TypeScript patterns | | Domain | DOM | 4 | Domain boundary rules |
Output Formats
# Console output (default)
hexa-ts lint
# JSON output (for agents)
hexa-ts lint --format jsonScaffold Templates
Vue Feature
src/domains/{domain}/{feature}/
├── Feature.vue
├── feature.composable.ts
├── feature.rules.ts
├── feature.types.ts
├── feature.query.ts
├── feature.translations.ts
└── __tests__/
└── feature.rules.test.tsNestJS Feature
src/domains/{domain}/{feature}/
├── feature.module.ts
├── feature.controller.ts
├── feature.service.ts
├── feature.types.ts
└── __tests__/
└── feature.controller.e2e.spec.tsPlaywright Feature
e2e/{feature}/
├── feature.spec.ts
├── feature.page.ts
└── feature.fixtures.tsKnowledge Analysis
The analyze command maps files to knowledge documents based on file patterns:
$ hexa-ts analyze upload.composable.ts
{
"success": true,
"files": ["upload.composable.ts"],
"mappings": [
{
"file": "upload.composable.ts",
"knowledges": ["vue-composable.knowledge.md"]
}
]
}Knowledge files use frontmatter to declare their matching patterns:
---
name: vue-composable
match: "*.composable.ts"
---Requirements
- Node.js 20+
- Git (for
--changedmode)
License
MIT
