🎯

prd

🎯Skill

from dmmulroy/.dotfiles

VibeIndex|
What it does

Generates comprehensive product requirement documents (PRDs) by leveraging AI to extract key details and structure project specifications based on initial input.

πŸ“¦

Part of

dmmulroy/.dotfiles(11 items)

prd

Installation

git cloneClone repository
git clone https://github.com/dmmulroy/.dotfiles.git ~/.dotfiles
πŸ“– Extracted from docs: dmmulroy/.dotfiles
4Installs
-
AddedFeb 4, 2026

Skill Details

SKILL.md

Overview

# Dotfiles

A comprehensive, automated dotfiles management system for macOS development environments. Features a powerful CLI tool for setup, maintenance, and AI-powered development insights.

Overview

This repository contains my personal development environment configuration, managed through a custom CLI tool called dot. It uses GNU Stow for symlink management, Homebrew for package installation, and includes configurations for Fish shell, Neovim, Tmux, Git, and other essential development tools.

Key Features

  • πŸš€ One-command setup - Complete development environment in minutes
  • πŸ€– AI Integration - OpenCode for commit summaries and assistance
  • πŸ“¦ Resilient Package Management - Continues installation even if packages fail
  • πŸ” Health Monitoring - Comprehensive environment diagnostics
  • πŸ› οΈ Modular Design - Separate work and personal configurations

Quick Start

```bash

# Clone the repository

git clone https://github.com/dmmulroy/.dotfiles.git ~/.dotfiles

cd ~/.dotfiles

# Full setup (installs everything)

./dot init

# Or customize the installation

./dot init --skip-ssh --skip-font

```

After installation, the dot command will be available globally for ongoing management. Running dot without arguments shows help.

Repository Structure

```

~/.dotfiles/

β”œβ”€β”€ dot # Main CLI tool

β”œβ”€β”€ home/ # Configuration files (stowed to ~)

β”‚ β”œβ”€β”€ .config/

β”‚ β”‚ β”œβ”€β”€ fish/ # Fish shell configuration

β”‚ β”‚ β”œβ”€β”€ git/ # Git configuration

β”‚ β”‚ β”œβ”€β”€ nvim/ # Neovim configuration

β”‚ β”‚ β”œβ”€β”€ tmux/ # Tmux configuration

β”‚ β”‚ └── ...

β”‚ └── .ideavimrc # IntelliJ IDEA Vim config

β”œβ”€β”€ packages/

β”‚ β”œβ”€β”€ bundle # Base Brewfile

β”‚ └── bundle.work # Work-specific packages

β”œβ”€β”€ CLAUDE.md # Instructions for AI assistants

└── README.md # This file

```

The `dot` CLI Tool

The dot command is a comprehensive management tool for your dotfiles. It handles everything from initial setup to ongoing maintenance and provides AI-powered insights.

Installation Commands

#### dot init - Initial Setup

Complete environment setup with all tools and configurations.

```bash

# Full installation

dot init

# Skip SSH key generation

dot init --skip-ssh

# Skip font installation

dot init --skip-font

# Skip both SSH and font setup

dot init --skip-ssh --skip-font

```

What it does:

  1. Installs Homebrew (if not present)
  2. Installs packages from Brewfiles
  3. Creates symlinks with GNU Stow
  4. Installs Bun runtime
  5. Installs OpenCode CLI via Homebrew (with native installer/bun/npm fallback)
  6. Generates SSH key for GitHub (optional)
  7. Installs MonoLisa font (optional)
  8. Sets up Fish shell with plugins

Maintenance Commands

#### dot update - Update Everything

```bash

dot update

```

  • Pulls latest dotfiles changes (auto-detects jj vs git)
  • Updates Homebrew packages
  • Re-stows configuration files

#### dot doctor - Health Check

```bash

dot doctor

```

Comprehensive diagnostics including:

  • βœ… Homebrew installation
  • βœ… Essential tools (git, nvim, tmux, node, etc.)
  • βœ… OpenCode installation method and functionality
  • βœ… Fish shell configuration
  • βœ… PATH configuration
  • ⚠️ Broken symlinks detection
  • ⚠️ Missing dependencies

#### dot check-packages - Package Status

```bash

dot check-packages

```

Shows which packages are installed vs. missing from your Brewfiles.

#### dot retry-failed - Retry Failed Installations

```bash

dot retry-failed

```

Attempts to reinstall packages that failed during initial setup.

AI-Powered Features

#### dot summary - Commit Analysis

Uses OpenCode to generate intelligent summaries of recent git commits.

```bash

# Summarize last 3 commits (default)

dot summary

# Summarize specific number of commits

dot summary -n 5

# Include file diffs for detailed analysis

dot summary -d

# Verbose mode with commit details

dot summary -v

# Combine options

dot summary -n 10 -d -v

```

Example Output:

```

=> Summary of Recent Changes

Development Focus: Recent work centers on improving the diagnostic navigation

system in Neovim, updating deprecated API calls to use modern vim.diagnostic.jump()

functions. This includes better error handling and user experience improvements.

Technical Patterns: The commits show incremental configuration refinements

with a focus on tooling updates and environment optimization...

```

Performance & Development Tools

#### dot benchmark-shell - Fish Shell Performance Benchmarking

```bash

# Run 10 benchmarks (default)

dot benchmark-shell

# Run specific number of benchmarks

dot benchmark-shell -r 20

# Show verbose output with individual timings

dot benchmark-shell -v

# Combine options

dot benchmark-shell -r 15 -v

```

Measures Fish shell startup performance with detailed analysis:

  • High-precision timing via Python3 or Perl
  • Performance assessment with color-coded results (excellent ≀50ms, good ≀100ms, fair ≀200ms)
  • Optimization tips for slow performance
  • Statistical analysis including average, min, max, and range
  • Profiling guidance for detailed bottleneck identification

Example Output:

```

=> Fish Shell Startup Benchmark Results

Configuration:

Shell: fish, version 4.0.2

Runs: 10

Test: Empty script execution

Performance Results:

Average time: 0.061 seconds

Fastest time: 0.048 seconds

Slowest time: 0.078 seconds

Time range: 0.030 seconds

Performance Assessment:

βœ“ Good startup performance (≀100ms)

```

Utility Commands

#### dot completions - Generate Fish Shell Completions

```bash

dot completions

```

Generates comprehensive Fish shell completions for the dot command, including:

  • All commands and subcommands
  • Dynamic completions for installed packages
  • Option completions with descriptions

#### dot edit - Open in Editor

```bash

dot edit

```

Opens the dotfiles directory in your default editor (defined by $EDITOR).

#### dot stow - Update Dotfiles Symlinks

```bash

# Create/update symlinks for configuration files

dot stow

```

Re-creates symlinks from home/ directory to your home directory (~). Use this after editing configuration files.

#### dot link / dot unlink - Global dot Command Installation

```bash

# Install dot command globally (add to PATH)

dot link

# Remove global installation

dot unlink

```

Makes the dot command available from any directory by creating a symlink in /usr/local/bin or ~/.local/bin.

Configuration

Package Management

The system provides comprehensive package management through the dot package command and uses two Brewfiles for different contexts:

#### Package Commands

```bash

# List packages

dot package list # List all packages

dot package list base # List base packages only

dot package list work # List work packages only

# Add packages

dot package add git # Add git formula to base bundle

dot package add docker cask # Add docker cask to base bundle

dot package add kubectl brew work # Add kubectl to work bundle

# Update packages

dot package update # Update all installed packages

dot package update git # Update specific package

dot package update all base # Update only base bundle packages

dot package update all work # Update only work bundle packages

# Remove packages

dot package remove git # Remove git from any bundle

dot package remove docker base # Remove docker from base bundle only

```

#### Package Files

packages/bundle - Base packages for all machines:

  • Development tools: neovim, tmux, fish, git
  • CLI utilities: ripgrep, fd, fzf, starship
  • Applications: Arc browser, Raycast, OrbStack
  • AI tools: aider

packages/bundle.work - Work-specific additions:

  • AWS/Kubernetes tools
  • Enterprise development tools

#### Package Features

  • Auto-detection: Package type (brew vs cask) automatically detected
  • Sorted maintenance: Packages kept alphabetically sorted within each type
  • **Installat