{"id":33484483,"url":"https://github.com/insanoid/treehopper","last_synced_at":"2026-03-04T15:32:08.116Z","repository":{"id":325764844,"uuid":"1102307064","full_name":"insanoid/treehopper","owner":"insanoid","description":"Tools to use Git Worktree productively with Raycast or Alfred 🪾","archived":false,"fork":false,"pushed_at":"2025-11-23T20:12:12.000Z","size":4123,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-02T16:23:10.260Z","etag":null,"topics":["alfred","alfred-workflow","git","macos","productivity","raycast-extension","worktree"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/insanoid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-23T07:55:23.000Z","updated_at":"2025-11-23T22:57:45.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/insanoid/treehopper","commit_stats":null,"previous_names":["insanoid/treehopper"],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/insanoid/treehopper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/insanoid%2Ftreehopper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/insanoid%2Ftreehopper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/insanoid%2Ftreehopper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/insanoid%2Ftreehopper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/insanoid","download_url":"https://codeload.github.com/insanoid/treehopper/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/insanoid%2Ftreehopper/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30084968,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T13:22:36.021Z","status":"ssl_error","status_checked_at":"2026-03-04T13:20:45.750Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["alfred","alfred-workflow","git","macos","productivity","raycast-extension","worktree"],"created_at":"2025-11-25T16:00:29.384Z","updated_at":"2026-03-04T15:32:08.108Z","avatar_url":"https://github.com/insanoid.png","language":"TypeScript","readme":"# Treehopper\n\n\u003cimg src=\"alfred-workflow/icon.png\" width=\"128\" alt=\"Treehopper icon\"\u003e\n\nHop between git worktrees with ease. Available for both Alfred and Raycast.\n\n## Alfred Workflow\n\nNavigate and create git worktrees directly from Alfred.\n\n\u003cimg src=\"alfred-workflow/images/wt_open.png\" width=\"600\" alt=\"Alfred - List worktrees\"\u003e\n\u003cimg src=\"alfred-workflow/images/wt_new.png\" width=\"600\" alt=\"Alfred - Create worktree\"\u003e\n\n**[Download Latest Release](../../releases/latest)** | [Full Documentation](alfred-workflow/README.md)\n\n### Commands\n\n- `wt` - List and open existing worktrees\n- `wtn` - Create new worktree with new branch from base\n\n## Raycast Extension\n\nSame functionality for Raycast users.\n\n\u003cimg src=\"raycast-extension/media/list-worktree.png\" width=\"600\" alt=\"Raycast - List worktrees\"\u003e\n\u003cimg src=\"raycast-extension/media/new-worktree.png\" width=\"600\" alt=\"Raycast - Create worktree\"\u003e\n\n[Full Documentation](raycast-extension/README.md)\n\n### Commands\n\n- **List Worktrees** - Browse and open existing worktrees\n- **Create Worktree** - Create new worktree with new branch\n\n### Install\n\n```bash\ncd raycast-extension \u0026\u0026 npm install \u0026\u0026 npm run dev\n```\n\n---\n\n## Features\n\n- Auto-discover repos or configure manually\n- Customizable editor (Cursor, VS Code, Zed, etc.)\n- Customizable terminal (Terminal, iTerm, Warp)\n- Supports `worktrees.json` for custom setup commands\n\n## How It Works\n\n1. Select a repo and base branch (e.g., `api` from `main`)\n2. Enter new branch name (e.g., `feat/my-feature`)\n3. Creates worktree with new branch based on selected base\n4. Runs setup commands and opens in your editor\n\n## What are Git Worktrees?\n\nGit worktrees let you check out multiple branches simultaneously in separate directories. Instead of stashing changes or committing WIP to switch branches, you can have each branch in its own folder and switch instantly.\n\n```bash\n# Traditional workflow (painful)\ngit stash\ngit checkout feature-b\n# work on feature-b\ngit checkout feature-a\ngit stash pop\n\n# Worktree workflow (smooth)\ncd ../project-feature-b   # just switch directories\n```\n\n**Benefits:**\n\n- Work on multiple features/fixes simultaneously\n- No stashing, no WIP commits\n- Keep long-running tasks (tests, builds) running while switching context\n- Review PRs without disrupting your current work\n\n## worktrees.json\n\nAdd a `worktrees.json` to your repo root to customize setup:\n\n```json\n{\n  \"setup-worktree\": [\"npm install\", \"cp $ROOT_WORKTREE_PATH/.env .env\"]\n}\n```\n\n## License\n\nMIT\n","funding_links":[],"categories":["Developer"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsanoid%2Ftreehopper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finsanoid%2Ftreehopper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finsanoid%2Ftreehopper/lists"}