typescript-best-practices
alleneubank/claude-code · skills.sh
Open source Repository Open in the app JSON README (API)
About
Skill publicada por alleneubank/claude-code no skills.sh. Instale com: npx skills add alleneubank/claude-code@typescript-best-practices
Details
- Kind
- Agent skills
- Topic
- No topic detected
- Publisher
- alleneubank
- Origin
- skillssh
- Category
- ferramentas
- Stars
- 52
- Forks
- 7
- Open pull requests
- 1
- Last push
- 2026-06-24T21:35:57Z
- Repository state
- arquivado
- Language
- Zig
- License
- Apache-2.0
- Added
- 2026-08-30 15:21:45
- Updated
- 2026-09-08 15:03:29
- Origin id
alleneubank/claude-code/typescript-best-practices
README
# Claude Code Configuration Personal configuration for [Claude Code](https://docs.anthropic.com/en/docs/claude-code): agent guidelines, slash commands, subagents, language-specific skills, plugins, a Zig statusline, and a settings baseline. Designed to be usable as a standalone repo or as a submodule of a larger dotfiles tree. ## Quick Start Clone the repo anywhere, then run the installer to symlink runtime assets into `~/.claude/`: ```bash git clone https://github.com/alleneubank/claude-code.git ~/code/claude-code cd ~/code/claude-code ./install.sh # apply symlinks ./install.sh --check # report drift without changing anything ``` The installer is idempotent. It links: - `CLAUDE.md` → `~/.claude/CLAUDE.md` (agent guidelines) - `commands/` → `~/.claude/commands/` (slash commands) - `agents/` → `~/.claude/agents/` (subagents) - `.claude/skills/` → `~/.claude/skills/` (best-practices skills) - `codex.json` → `~/.claude/codex.json` (Codex CLI config for the `codex-reviewer` plugin) Settings, statusline binary, and plugins are opt-in — see the sections below. ## Repository Layout ``` claude-code/ ├── CLAUDE.md # Agent guidelines (linked into ~/.claude/CLAUDE.md) ├── codex.json # Codex CLI defaults (linked into ~/.claude/codex.json) ├── install.sh # Idempotent symlink installer ├── commands/ # Slash commands ├── agents/ # Subagents ├── .claude/skills/ # Best-practices skills (auto-load by file context) ├── .claude-plugin/ # Marketplace manifest for the bundled plugins ├── plugins/ # Source for plugins published via marketplace.json │ ├── codex-reviewer/ # Codex CLI review gate │ └── ralph-reviewed/ # Iterative loop with Codex review ├── codex-overrides/skills/ # Codex-only skill overrides applied during sync ├── settings/settings.json # Settings baseline (copy or merge into ~/.claude/settings.json) ├── statusline/ # Zig statusline (build separately, see below) ├── hooks/direnv-bash-env # BASH_ENV shim that loads direnv on subshell cd ├── scripts/ # Usage tracking, codex sync, plugin version checks └── analytics/ # Submodule: claude-code-analytics (transcript analyzer) ``` ## Commands Invoked with `/<name>` in Claude Code. Sources live in `commands/`. | Command | Description | |---------|-------------| | `/commit` | Stage, draft, and create a conventional git commit from the current diff | | `/fix-issue <id>` | Find and fix an issue end-to-end with tests and a PR description | | `/greenline` | Tilt bootstrap then iterative e2e baseline improvement with categorized fixes | | `/handoff` | Generate a self-contained handoff prompt for another agent (writes to `~/.handoffs/`) | | `/rewrite-history` | Rewrite the current branch with a clean narrative commit history | | `/specout` | Interview-driven workflow to fill gaps in a `SPEC.md` | | `/triage` | Interactive Linear issue triage with codebase verification | ## Subagents Custom subagents in `agents/`. Claude Code delegates automatically when their description matches the task. | Agent | Purpose | |-------|---------| | `code-reviewer` | Reviews changes for quality, security, and project conventions | | `debugger` | Investigates failures through root cause analysis | | `refactorer` | Restructures code with clean breaks and complete migrations | | `test-writer` | Writes tests that verify correctness without gaming assertions | ## Skills Best-practices skills in `.claude/skills/` are auto-loaded when the file context matches their triggers. The full set: | Skill | Use when | |-------|----------| | `atlas-best-practices` | Editing `atlas.hcl`, schema HCL/SQL, or planning Atlas migrations | | `axe-ios-simulator` | Driving the iOS Simulator via AXe (screenshots, accessibility, automation) | | `brief-best-practices` | Creating, reviewing, or updating `BRIEF.md` (the quality law for a surface) | | `canton-network-repos` | Working with Canton Network participants, Daml, or Splice | | `e2e` | Running, debugging, or fixing e2e tests | | `electrobun-best-practices` | Building Electrobun desktop apps | | `git-best-practices` | Commits, branches, PRs, rewriting history | | `git-rebase-sync` | Rebasing a feature branch onto its base | | `git-worktree-tidy` | Pruning stale local branches and worktrees | | `go-best-practices` | Reading or writing `.go` files | | `improve` | Surfacing concrete improvements after a task | | `nix-best-practices` | Editing flakes, overlays, `shell.nix`, `flake.nix` | | `op-cli` | Reading secrets from 1Password via `op` | | `orbstack-best-practices` | OrbStack Linux VMs and Docker on macOS | | `playwright-best-practices` | Writing or modifying Playwright tests | | `python-best-practices` | Reading or writing Python files | | `react-best-practices` | Reading or writing React components | | `spec-best-practices` | Creating, reviewing, or updating `SPEC.md` | | `tamagui-best-practices` | Working in Tamagui projects | | `testing-best-practices` | Designing tests and planning test strategy | | `tilt` | Reading Tilt status, logs, working with Tiltfiles | | `tiltup` | Bootstrapping Tilt to a healthy state | | `typescript-best-practices` | Reading or writing TypeScript / JavaScript files | | `web-fetch` | Fetching web content as clean markdown | | `zig-best-practices` | Reading or writing Zig files | | `zmx` | Managing long-lived dev processes via `zmx` | ## Plugins This repo also doubles as a Claude Code plugin marketplace via `.claude-plugin/marketplace.json`. Two plugins ship from it: | Plugin | Description | |--------|-------------| | `ralph-reviewed` | Iterative Ralph loop with a Codex CLI review gate at completion | | `codex-reviewer` | Standalone Codex-powered code review gate | ### Install as a marketplace ```bash # Inside Claude Code: /plugin marketplace add alleneubank/claude-code /plugin install ralph-reviewed@0xbigboss-plugins /plugin install codex-reviewer@0xbigboss-plugins ``` Or install from a local checkout: ```bash /plugin marketplace add ~/code/claude-code ``` Both plugins read `~/.claude/codex.json` for sandbox/approval/timeout settings — `install.sh` puts a default copy there. See `plugins/ralph-reviewed/README.md` for the full schema. ## Settings Baseline `settings/settings.json` is an opinionated baseline you can adopt as-is or use as a reference: - `permissions.allow` pre-approves common read-only and safe-write Bash patterns (git, npm/bun/yarn, zig, go, tilt, kubectl, docker, gh) plus a few skills. - `extraKnownMarketplaces` declares plugin marketplaces; `enabledPlugins` controls which are turned on. - `statusLine.command` invokes the Zig statusline binary (see below). - `env.BASH_ENV` points at `hooks/direnv-bash-env` so subshells reload direnv on `cd`. This file ships with author-specific marketplace pointers (e.g. private Send/Canton repos) and a hard-coded `BASH_ENV` path. If you adopt it, edit those fields to match your machine. The simplest path is to copy it once and treat `~/.claude/settings.json` as yours: ```bash cp settings/settings.json ~/.claude/settings.json ``` The author personally generates `~/.claude/settings.json` via a private merge helper in the surrounding dotfiles tree (baseline + `~/.claude/settings.local.json` overrides). That helper is not required to use this repo — direct copy works fine. ## Statusline A small Zig statusline lives in `statusline/`. It reads JSON on stdin and prints one formatted status line. ```bash cd statusline zig build -Doptimize=ReleaseFast # binary lands at statusline/zig-out/bin/statusline ``` Point Claude Code at it by setting `statusLine.command` in `~/.claude/settings.json` (the baseline already does this). Minimum Zig: `0.16.0`. See `statusline/CLAUDE.md` and `statusline/SPEC.md` for build, runtime contract, and design notes. ## Scripts `scripts/` contains optional utilities: | Script | Purpose | |--------|---------| | `setup-usage-tracking.py` | Writes hook overrides into `~/.claude/settings.local.json` to log every session/tool/command | | `usage-tracker.py` | The hook handler that records events to SQLite + JSONL | | `analyze-usage.py` | Summaries, time-windowed reports, exports | | `usage-dashboard.py` | Live terminal dashboard over the SQLite store | | `sync-codex.sh` | Mirrors `commands/` + `.claude/skills/` into `~/.codex/` (prompts + skills), applying `codex-overrides/` on top | | `check-plugin-versions.sh` | Pre-commit guardrail: plugin source changes must bump `plugin.json` and `marketplace.json` versions in lockstep | | `install-symlinks.sh` | Older partial symlinker (kept for compatibility; `install.sh` is the canonical entrypoint) | See `scripts/README.md` for the usage-tracking specifics. ### Codex sync (optional) If you also use the Codex CLI and want the same skills/commands available there: ```bash scripts/sync-codex.sh --check # report drift (exit 0 clean, 2 drift, 1 error) scripts/sync-codex.sh # apply ``` Codex skill resolution order during sync: 1. User skills from `.claude/skills/` 2. Plugin skills (with selective drops per `scripts/sync-codex.skill-policy.tsv`) 3. Codex-only overrides from `codex-overrides/skills/` (win on name collision) ## Analytics `analytics/` is a [submodule](https://github.com/0xbigboss/claude-code-analytics) that analyzes Claude Code transcripts (skill usage, token consumption, tool patterns). ```bash git submodule update --init analytics cd analytics && uv sync uv run cc-analytics skills ``` ## Instruction Source of Truth - Shared agent guidelines live in `CLAUDE.md` at the repo root. The installer links this into `~/.claude/CLAUDE.md`. - Personal local notes belong in `~/.claude/CLAUDE.local.md` (or this repo's `CLAUDE.local.md`, which is gitignored). Do not move local-only content into the tracked `CLAUDE.md` — it is meant to be shareable. ## Relationship to a Larger Dotfiles Tree The author keeps this repo as a submodule of a private dotfiles tree. When present, that tree's `codex/codex.json` is preferred by `install.sh` over the in-repo sample, and a private `claude-bootstrap` / `claude-settings-merge` pair manages additional symlinks and the settings merge. Neither is required to use this repo standalone — everything in this README assumes no parent tree. ## Author Allen Eubank ([@alleneubank](https://github.com/alleneubank)) ## License Licensed under the Apache License, Version 2.0. See [LICENSE](LICENSE).