Add Typescript Best Practices

v1.0.0

Setup TypeScript best practices and code style rules in CLAUDE.md

0· 72·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for hahamumu08/add-typescript-best-practices.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Add Typescript Best Practices" (hahamumu08/add-typescript-best-practices) from ClawHub.
Skill page: https://clawhub.ai/hahamumu08/add-typescript-best-practices
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install add-typescript-best-practices

ClawHub CLI

Package manager switcher

npx clawhub@latest install add-typescript-best-practices
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
The name and description (add TypeScript best practices into CLAUDE.md) align with the SKILL.md content, which instructs the agent to create or update CLAUDE.md with the provided rules. The skill does not request unrelated capabilities.
Instruction Scope
The SKILL.md instructs the agent to write the provided markdown exactly as-is into a file named CLAUDE.md. That means the skill will create or overwrite a repository file; the instruction is narrowly scoped and does not ask the agent to read other files, access environment variables, or send data externally. User beware: it may overwrite existing CLAUDE.md content. The content is opinionated style guidance but contains no external endpoints or secrets.
Install Mechanism
No install spec is present (instruction-only), so nothing is downloaded or written to disk by an installer step. This is the lowest-risk install model.
Credentials
The skill requests no environment variables, credentials, or config paths. The guidance references common libraries by name but does not require access to package registries or keys.
Persistence & Privilege
always:false (default) and the skill does not request elevated or persistent privileges. It does modify project state by writing a file, but it does not alter other skills, agent configs, or request system-wide access.
Assessment
This skill simply writes opinionated TypeScript style guidance into a file named CLAUDE.md and does not request credentials or install anything. Before installing or running it, confirm where CLAUDE.md will be written (it may overwrite an existing file) and consider backing up or committing current changes. Review the exact markdown (it's enforced to be written verbatim) to ensure the wording and recommendations match your team's preferences.

Like a lobster shell, security has layers — review code before you run it.

latestvk97fnghq5kcq33w4ebj2pmzmbd8509xx
72downloads
0stars
1versions
Updated 1w ago
v1.0.0
MIT-0

Setup TypeScript Best Practices

Create or update CLAUDE.md in with following content, <critical>write it strictly as it is<critical>, do not summaraise or introduce and new additional information:

## Code Style Rules

### General Principles

- **TypeScript**: All code must be strictly typed, leverage TypeScript's type safety features

### Code style rules

- Interfaces over types - use interfaces for object types
- Use enum for constant values, prefer them over string literals
- Export all types by default
- Use type guards instead of type assertions

### Best Practices

#### Library-First Approach

- Common areas where libraries should be preferred:
  - Date/time manipulation → date-fns, dayjs
  - Form validation → joi, yup, zod
  - HTTP requests → axios, got
  - State management → Redux, MobX, Zustand
  - Utility functions → lodash, ramda

#### Code Quality

- Use destructuring of objects where possible:
  - Instead of `const name = user.name` use `const { name } = user`
  - Instead of `const result = await getUser(userId)` use `const { data: user } = await getUser(userId)`
  - Instead of `const parseData = (data) => data.name` use `const parseData = ({ name }) => name`
- Use `ms` package for time related configuration and environment variables, instead of multiplying numbers by 1000

Comments

Loading comments...