{"id":49594569,"url":"https://github.com/urmzd/dotfiles","last_synced_at":"2026-05-04T03:10:18.486Z","repository":{"id":64994193,"uuid":"408980362","full_name":"urmzd/dotfiles","owner":"urmzd","description":"Cross-platform dotfiles managed by Chezmoi with Homebrew/apt and per-language version managers. One-command bootstrap for macOS and Linux with Neovim, Tmux, Zsh, and AI agent skills.","archived":false,"fork":false,"pushed_at":"2026-04-22T03:12:10.000Z","size":3117,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-22T05:16:25.527Z","etag":null,"topics":["agent-skills","ai","chezmoi","development-environment","dotfiles","ghostty","homebrew","linux","macos","neovim","nvim","showcase","tmux","zsh"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/urmzd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2021-09-21T21:34:10.000Z","updated_at":"2026-04-22T03:12:14.000Z","dependencies_parsed_at":"2026-01-08T00:06:30.887Z","dependency_job_id":null,"html_url":"https://github.com/urmzd/dotfiles","commit_stats":null,"previous_names":["urmzd/.dotfiles","urmzd/dotfiles"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/urmzd/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/urmzd%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/urmzd%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/urmzd%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/urmzd%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/urmzd","download_url":"https://codeload.github.com/urmzd/dotfiles/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/urmzd%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32592745,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T22:12:39.696Z","status":"online","status_checked_at":"2026-05-04T02:00:06.625Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-skills","ai","chezmoi","development-environment","dotfiles","ghostty","homebrew","linux","macos","neovim","nvim","showcase","tmux","zsh"],"created_at":"2026-05-04T03:10:17.645Z","updated_at":"2026-05-04T03:10:18.479Z","avatar_url":"https://github.com/urmzd.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ch1 align=\"center\"\u003edotfiles\u003c/h1\u003e\n  \u003cp align=\"center\"\u003e\n    Cross-platform dev environment powered by Chezmoi + Homebrew. One command to a fully configured machine.\n    \u003cbr /\u003e\u003cbr /\u003e\n    \u003ca href=\"#quick-start\"\u003eQuick Start\u003c/a\u003e\n    \u0026middot;\n    \u003ca href=\"https://github.com/urmzd/dotfiles/issues\"\u003eReport Bug\u003c/a\u003e\n    \u0026middot;\n    \u003ca href=\"#agent-skill\"\u003eAgent Skill\u003c/a\u003e\n  \u003c/p\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/github/license/urmzd/dotfiles\" alt=\"License\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n## Features\n\n- **Homebrew + apt** as source of truth for CLIs (git, gh, kubectl, terraform, ...)\n- **Per-language version managers**: fnm (Node), uv (Python), rustup (Rust)\n- **Pinned upstream installers** for tools that need it: gcloud, aws-cli, Snowflake Cortex\n- **Zsh** with Oh My Zsh + Powerlevel10k and pre-generated completions\n- **Tmux** with `Ctrl+a` prefix, vim keys, Catppuccin cyberdream theme\n- **Ghostty** terminal with cyberdream theme and MonaspiceNe Nerd Font\n- **Neovim** (HEAD) with LSP for all included languages\n- **AI agents** (Claude Code, Gemini, Codex, Copilot) auto-installed via chezmoi\n- **34 portable agent skills** in [`dot_agents/skills/`](dot_agents/skills/) + **7 subagents** in [`dot_agents/agents/`](dot_agents/agents/)\n- **Chezmoi automation** scripts that trigger on apply\n- **Docker cleanup** launchd agent running daily at 3 AM\n\n## Quick Start\n\nOne-liner (installs Homebrew + chezmoi, then runs `chezmoi init --apply`):\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/urmzd/dotfiles/main/install.sh | bash\n```\n\nOr step by step:\n\n```bash\n# 1. Install Homebrew (macOS) or your distro's package manager (Linux)\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\n\n# 2. Install chezmoi and apply this repo in one shot\nsh -c \"$(curl -fsLS https://get.chezmoi.io)\" -- init --apply urmzd\n```\n\n`chezmoi apply` installs Brewfile/apt packages, sets up gcloud/aws/cortex from upstream, and installs the AI CLIs. Open a new terminal afterwards.\n\n## Usage\n\n### Day-to-day\n\n```bash\nchezmoi diff          # Preview pending dotfile changes\nchezmoi apply         # Apply dotfile changes to $HOME\nchezmoi add \u003cfile\u003e    # Start tracking a new file\nchezmoi edit \u003cfile\u003e   # Edit source, then apply\n```\n\n### Maintenance\n\n```bash\ndotfiles update          # brew upgrade \u0026\u0026 chezmoi apply\ndotfiles status          # Show installed AI tool versions\ndotfiles update-ai       # Re-install AI CLIs at pinned versions\ndotfiles cleanup         # Prune build artifacts and caches\n```\n\n### What's installed\n\n**CLI essentials** (Homebrew on macOS, apt/dnf/pacman on Linux): git, gh, fzf, ripgrep, jq, yq, just, tmux, direnv, chezmoi, tree-sitter, uv, tealdeer, terraform, kubectl, helm, k9s, colima, docker, fnm, deno, go, lua, ...see [`Brewfile`](Brewfile).\n\n**Version managers** (per-language, best-in-class): fnm (Node), uv (Python), rustup (Rust).\n\n**Upstream-pinned installers** (security/auth fixes ship faster than distro repos):\n- gcloud + aws-cli — [`run_onchange_after_install-cloud-clis.sh.tmpl`](run_onchange_after_install-cloud-clis.sh.tmpl)\n- Snowflake Cortex Code — [`run_onchange_after_install-cortex.sh.tmpl`](run_onchange_after_install-cortex.sh.tmpl) (gated on `install_cortex` feature flag)\n\n**AI tools** (installed via [`run_once_after_install-ai-clis.sh.tmpl`](run_once_after_install-ai-clis.sh.tmpl), sentinel-gated): Claude Code, Codex, Gemini CLI, GitHub Copilot. Update with `dotfiles update-ai`.\n\n### Adding a new tool\n\n1. Homebrew: add to [`Brewfile`](Brewfile). Linux: add to the apt/dnf/pacman list in [`run_once_before_install-packages-v2.sh.tmpl`](run_once_before_install-packages-v2.sh.tmpl).\n2. For tools needing version pinning: write a `run_onchange_after_install-\u003cname\u003e.sh.tmpl` mirroring the cortex / cloud-clis pattern.\n3. Run `chezmoi apply`. Completions regenerate if the package exposes zsh site-functions.\n\n### Adding a new dotfile\n\n1. Create or edit the file in your home directory\n2. Run `chezmoi add \u003cfile\u003e` to start tracking it\n3. Use `dot_` prefix naming, `private_` for sensitive files, `.tmpl` for templates\n4. Platform-specific blocks use `{{ if eq .chezmoi.os \"darwin\" }}...{{ end }}`\n\n## Configuration\n\n### Chezmoi automation\n\nThese scripts run automatically on `chezmoi apply`:\n\n| Script | Type | Trigger |\n| ------ | ---- | ------- |\n| `install-packages-v2` | run_once (before) | First apply (installs Homebrew + bootstrap Linux packages) |\n| `brewfile-install` | run_onchange (before) | Brewfile changes |\n| `install-cloud-clis` | run_onchange (after) | Script changes (re-pin gcloud/aws version) |\n| `install-cortex` | run_onchange (after) | Script changes (gated on `install_cortex` flag) |\n| `generate-completions` | run_onchange (after) | zshrc, Brewfile, or cloud-clis script changes |\n| `install-ai-clis` | run_once (after) | First apply (sentinel-gated; clear via `dotfiles update-ai`) |\n| `install-skills` | run_once (after) | First apply only (bootstraps `agentspec`, syncs skills to `~/.agents/skills/`) |\n| `install-stack` | run_once (after) | First apply only (installs `sr`, `teasr`, `oag` CLIs) |\n| `configure-terminal` | run_once (after) | First apply only |\n| `load-docker-cleanup` | run_once (after) | First apply only |\n\n### AI tools\n\nAI coding agents are installed by `chezmoi apply` (sentinel-gated, no shell-startup cost). Check versions with:\n\n```bash\ndotfiles status\n```\n\nClaude Code config lives in `dot_claude/`. Includes settings, custom statusline, and project-scoped skills.\n\n## Agent Skills\n\nThis repo's conventions are available as portable agent skills in [`dot_agents/skills/`](dot_agents/skills/), following the [Agent Skills Specification](https://agentskills.io/specification).\n\nRelated standards: [AGENTS.md](https://agents.md/) · [llms.txt](https://llmstxt.org/)\n\n### Managing skills\n\nAll skills are installed automatically via `chezmoi apply`. The [`install-skills`](run_once_after_install-skills.sh.tmpl) script uses [`agentspec`](https://github.com/urmzd/agentspec) to install both local skills from [`dot_agents/skills/`](dot_agents/skills/) and third-party skills globally to all agents:\n\n| Source | Skills |\n| ------ | ------ |\n| This repo (`dot_agents/skills/`) | All local skills |\n| [vercel-labs/skills](https://github.com/vercel-labs/skills) | All |\n| [vercel/ai-elements](https://github.com/vercel/ai-elements) | All |\n| [vercel/streamdown](https://github.com/vercel/streamdown) | All |\n| [google-gemini/gemini-skills](https://github.com/google-gemini/gemini-skills) | All |\n| [better-auth/skills](https://github.com/better-auth/skills) | better-auth-best-practices |\n| [vercel/ai](https://github.com/vercel/ai) | ai-sdk |\n| [fastapi/fastapi](https://github.com/fastapi/fastapi) | fastapi |\n\nTo manage skills and agents manually:\n\n```bash\nagentspec manage list                          # List managed resources with tool linkage\nagentspec manage add \u003csource\u003e                  # Add from local path, GitHub (owner/repo), or name\nagentspec manage link \u003cname\u003e \u003ctool\u003e            # Link resource to a tool (claude-code, codex, etc.)\nagentspec manage remove \u003cname\u003e                 # Remove a managed resource\nagentspec manage create [name]                 # Scaffold a new resource\nagentspec manage validate [path]               # Validate SKILL.md or agent definition\nagentspec status                               # Show managed vs unmanaged inventory\nagentspec sync --fast                          # Discover, adopt, link, and verify all resources\n```\n\n### All skills\n\n#### Coding standards\n\n| Skill | Purpose |\n| ----- | ------- |\n| assess-quality | Code quality assessment (readability, consistency, intentional design) |\n| build-cli | CLI conventions (JSON piping, stdout/stderr, structured logging) |\n| check-project | Validate project structure against scaffold conventions |\n| choose-stack | Canonical tech stack reference by purpose |\n| cli-standards | CLI patterns and conventions reference |\n| review-design | Pragmatic programming principles |\n| test-code | Testing philosophy and per-language conventions |\n| write-code | Coding standards and practices |\n\n#### Scaffolding \u0026 setup\n\n| Skill | Purpose |\n| ----- | ------- |\n| scaffold-go | Scaffold Go projects |\n| scaffold-node | Scaffold Node/TypeScript projects |\n| scaffold-project | Project structure (.envrc, Cargo workspace, etc.) |\n| scaffold-python | Scaffold Python projects |\n| scaffold-rust | Scaffold Rust projects |\n| scaffold-terraform | Scaffold Terraform projects |\n| setup-ci | CI/CD pipeline conventions |\n| setup-devenv | Per-language toolchain + direnv guidance |\n| sync-release | End-to-end release pipeline (sr.yaml, CI, multi-platform builds) |\n| repo-init | Full repo bootstrap (create, license, scaffold, push) |\n\n#### Workflow automation\n\n| Skill | Purpose |\n| ----- | ------- |\n| ship | Commit, push, and watch CI until pass/fail |\n| pr | Create PRs with auto-generated summary from commits |\n| diagnose-ci | Find failing pipelines, pull logs, identify root cause |\n| fix-and-retry | Diagnose CI failure, apply fix, commit, push, re-run |\n| status | Check active repos for recent activity and local state |\n| release-audit | Audit releases, tags, and assets for health |\n| sync-ecosystem | Sync project ecosystem (deps, configs, cross-repo consistency) |\n| update-repo-meta | Update GitHub repo topics, description, homepage |\n\n#### AI \u0026 documentation\n\n| Skill | Purpose |\n| ----- | ------- |\n| configure-ai | AI-assisted workflow patterns |\n| create-llms-txt | Generate LLM-friendly project summary files |\n| create-oss-skill | Create portable agent skills |\n| extend-oss-skills-to-claude | Extend skills with Claude Code-specific features |\n| audit-security | Security auditing and threat detection |\n| style-brand | Branding, themes, teasr demo capture, asset conventions |\n| sync-docs | Audit and synchronize project documentation |\n| write-readme | README structure and section order |\n\n#### Subagents\n\nDelegation targets in [`dot_agents/agents/`](dot_agents/agents/) that adopt a specific reasoning mode:\n\n| Agent | Purpose |\n| ----- | ------- |\n| architect | Interface-first systems design with verbose, principle-driven reasoning |\n| curator | Prescriptive perfectionist for consistency, polish, and visual hierarchy |\n| debugger | Terse, empirical root-cause analysis |\n| ideator | Expansive, generative creative exploration |\n| strategist | Imperative orchestration across multiple systems and repos |\n| technical-documentation-architect | Structured technical documentation and architecture docs |\n| writer | Concise, outcome-focused technical documentation |\n\n## License\n\n[Apache-2.0](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Furmzd%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Furmzd%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Furmzd%2Fdotfiles/lists"}