npx skills add mthines/gw-toolsREADME
gw-tools
Git Worktree Tools - A CLI for managing Git worktrees with automatic file syncing.
š ļø gw CLI Tool
gw simplifies Git worktree management with features like:
- Create worktrees with automatic file copying (
.env, secrets, configs) - Quick navigation with
gw cdand smart partial matching - Proxy commands for
git worktreeoperations with enhanced output
Installation
npm install -g @gw-tools/gw-tool
Quick Start
# Create a new worktree (auto-creates branch if needed, auto-copies files)
gw add feature-auth
# Navigate to worktree
gw cd feature-auth
# Sync files between worktrees
gw sync feature-auth .env secrets/
# List all worktrees
gw list
# Remove when done
gw remove feature-auth
š Full documentation: packages/gw-tool/README.md
š AI Skills (for Claude Code, Copilot, Cursor, etc.)
Enhance your AI agent with gw-tools knowledge using skills.sh:
npx skills add https://github.com/mthines/gw-tools --skill @gw-git-worktree-workflows @gw-config-management @gw-multi-worktree-dev # installs all skills
# Master Git worktrees and gw workflows
npx skills add https://github.com/mthines/gw-tools --skill @gw-git-worktree-workflows
# Configure gw for your project type (Next.js, monorepos, etc.)
npx skills add https://github.com/mthines/gw-tools --skill @gw-config-management
# Advanced parallel development patterns
npx skills add https://github.com/mthines/gw-tools --skill @gw-multi-worktree-dev
Once installed, your AI agent can:
- Create worktrees for bug fixes and features automatically
- Configure gw for your specific project type
- Navigate between worktrees and manage files
- Create PRs from isolated worktrees
š Skill documentation: skills/README.md
š¦ Other Packages
This monorepo also includes utility libraries:
@gw-tools/strings- String manipulation utilities@gw-tools/async- Async utility functions with retry logic@gw-tools/colors- Color conversion and manipulation utilities@gw-tools/utils- Shared utilities (internal)
šļø Nx Monorepo
This repository uses Nx for monorepo management.
š Development Quick Start
# Clone the repository
git clone <your-fork-url>
cd typescript-template
# Install dependencies
pnpm install
# Build all packages
npx nx run-many -t build
# Run tests
npx nx run-many -t test
# Lint all projects
npx nx run-many -t lint
# Run everything in parallel
npx nx run-many -t lint test build --parallel=3
# Visualize the project graph
npx nx graph
ā Featured Nx Capabilities
This repository showcases several powerful Nx features:
1. š Module Boundaries
Enforces architectural constraints using tags. Each package has specific dependencies it can use:
scope:shared(utils) - Can be used by all packagesscope:strings- Can only depend on shared utilitiesscope:async- Can only depend on shared utilitiesscope:colors- Can only depend on shared utilities
Try it out:
# See the current project graph and boundaries
npx nx graph
# View a specific project's details
npx nx show project strings --web
Learn more about module boundaries ā
2. š ļø Custom Run Commands
Packages can define custom commands beyond standard build/test/lint:
# Run the custom build-base command for strings package
npx nx run strings:build-base
# See all available targets for a project
npx nx show project strings
Learn more about custom run commands ā
3. š§ Self-Healing CI
The CI pipeline includes nx fix-ci which automatically identifies and suggests fixes for common issues. To test it, you can make a change to async-retry.spec.ts so that it fails, and create a PR.
# Run tests and see the failure
npx nx test async
# In CI, this command provides automated fixes
npx nx fix-ci
Learn more about self-healing CI ā
4. š¦ Package Publishing
Manage releases and publishing with Nx Release:
# Dry run to see what would be published
npx nx release --dry-run
# Version and release packages
npx nx release
# Publish only specific packages
npx nx release publish --projects=strings,colors
Learn more about Nx Release ā
š Project Structure
āāā packages/
ā āāā strings/ [scope:strings] - String utilities (publishable)
ā āāā async/ [scope:async] - Async utilities (publishable)
ā āāā colors/ [scope:colors] - Color utilities (publishable)
ā āāā utils/ [scope:shared] - Shared utilities (private)
ā
...
