Skip to content

Latest commit

 

History

History
421 lines (313 loc) · 22.5 KB

File metadata and controls

421 lines (313 loc) · 22.5 KB
Hive

Hive

Open source AI agent orkestrator za paralelno kodiranje kroz projekte.

Pokrenite Claude Code, OpenCode i Codex sesije paralelno. Jedan prozor. Izolirani branchevi. Nula tab haosa.

English | العربية | বাংলা | Bosanski | Dansk | Deutsch | Ελληνικά | Español | Français | עברית | Italiano | 日本語 | 한국어 | Norsk | Polski | Português (BR) | Русский | ไทย | Türkçe | Українська | Tiếng Việt | 简体中文 | 繁體中文

Latest Release Downloads Build Status macOS Windows Linux Node.js Electron TypeScript License PRs Welcome


Sadržaj

Instalacija

Hive podržava macOS, Windows i Linux.

macOS

Preko Homebrew (Preporučeno)

brew install --cask hive-app

Direktno preuzimanje

Preuzmite najnoviji .dmg sa GitHub Releases.

Windows

Preuzmite najnoviji .exe sa GitHub Releases.

Linux

Preuzmite najnoviji .AppImage ili .deb sa GitHub Releases.


Otvorite Hive i usmjerite ga na git repo.

Šta je Hive?

Ako pokrećete više AI coding agenata na različitim projektima i branchevima, znate tu bol -- šest terminal tabova otvoreno, ne sjećate se koji agent radi na čemu, i brinete da dva od njih uređuju iste fajlove.

Hive je AI agent orkestrator. Vidite sve pokrenute agente u jednom sidebaru, kliknite za prebacivanje između njih, i svaki radi na izoliranom git worktree branchu tako da ne mogu doći u konflikt. Povežite više repozitorija zajedno tako da jedna agent sesija ima kontekst kroz cijeli vaš stack.

Funkcionalnosti

🌳 Worktree-First Radni Tok

Radite na više brancheva istovremeno bez stashiranja ili prebacivanja. Kreirajte, arhivirajte i organizirajte worktreeje jednim klikom. Svaki worktree dobija jedinstveno ime bazirano na gradovima za lakšu identifikaciju.

🤖 Ugrađene AI Coding Sesije

Pokrenite AI coding agente direktno u Hive sa podrškom za OpenCode, Claude Code i Codex. Pratite odgovore u realnom vremenu, gledajte izvršavanje tool poziva i odobravajte dozvole po potrebi. Puna undo/redo podrška vas drži u kontroli.

📁 Pametni File Explorer

Vidite šta se promijenilo na prvi pogled sa live git status indikatorima. Pregledajte diffove inline, pretražite historiju fajlova i navigirajte kroz codebase bez napuštanja aplikacije. Integrirani Monaco editor pruža potpuni VS Code doživljaj.

🔧 Kompletna Git Integracija

Commitujte, pushajte, pullajte i upravljajte branchevima vizuelno. Nije potreban terminal za uobičajene git operacije. Vidite promjene na čekanju, stage-ovane fajlove i historiju commitova sve na jednom mjestu.

📦 Spaces za Organizaciju

Grupirajte povezane projekte i worktreeje u logičke radne prostore. Prikačite favorite za brz pristup. Održavajte razvojno okruženje organiziranim kako rastete.

Command Palette

Navigirajte i djelujte brzo sa prečicama na tastaturi. Pritisnite Cmd+K za pristup bilo kojoj funkcionalnosti trenutno. Pretražujte sesije, prebacujte worktreeje ili pokrenite komande bez dodirivanja miša.

🎨 Lijepe Teme

Birajte između 10 pažljivo dizajniranih tema — 6 tamnih i 4 svijetle. Prebacujte se trenutno da odgovaraju vašim preferencijama ili dobu dana. Automatski prati sistemsku temu ako želite.

🔌 Worktree Konekcije

Povežite dva worktreea zajedno za dijeljenje konteksta, poređenje implementacija ili saradnju u realnom vremenu. Savršeno za pregled promjena između brancheva, dijeljenje AI sesija kroz worktreeje ili održavanje konzistentnosti pri radu na povezanim funkcionalnostima. Pratite live ažuriranja kada se povezani worktreevi mijenjaju.

Zašto Hive?

Pogledajte kako Hive transformiše vaš git radni tok:

Zadatak Tradicionalni radni tok Sa Hive
Prebaci branch git stashgit checkoutgit stash pop Klik na worktree → Gotovo
Rad na više funkcionalnosti Konstantno stashiranje i prebacivanje konteksta Otvorite više worktreeja uporedo
Kreiraj worktree git worktree add ../project-feature origin/feature Klik "Novi Worktree" → Izaberite branch
AI coding pomoć Terminal + poseban AI alat + copy/paste Integrirane AI sesije sa punim kontekstom
Pregledaj promjene fajlova git statusgit diff file.ts Vizuelno stablo sa inline diffovima
Uporedi brancheve Više terminal tabova, copy/paste između Povežite worktreeje za dijeljenje konteksta
Nađi worktree cd ~/projects/... → sjeti se imena direktorija Svi worktreevi u jednom sidebaru
Očisti worktreeje git worktree removerm -rf directory Klik "Arhiviraj" → Upravlja svime

Brzi početak

Po��nite za manje od 2 minute:

1️⃣ Dodajte svoj prvi projekat

Otvorite Hive → Kliknite "Dodaj Projekat" → Izaberite bilo koji git repozitorij na vašem računaru

2️⃣ Kreirajte Worktree

Izaberite projekat → Kliknite "Novi Worktree" → Izaberite branch (ili kreirajte novi)

3️⃣ Počnite kodirati sa AI

Otvorite worktree → Kliknite "Nova Sesija" → Počnite kodirati sa OpenCode, Claude, ili Codex

💡 Pro savjet: Pritisnite Cmd+K bilo kada za otvaranje command palete i brzu navigaciju!

📖 Pročitajte kompletan vodič | ⌨️ Prečice na tastaturi

🔌 Worktree Konekcije - Pravi game changer

Hive-ova funkcionalnost Worktree Konekcija vam omogućava da povežete dva worktreea zajedno, kreirajući most između različitih brancheva ili funkcionalnosti. Ovo je nevjerovatno moćno za razvojne radne tokove koji zahtijevaju svijest o više brancheva.

Šta su Worktree Konekcije?

Povežite bilo koja dva worktreea za:

  • 🔄 Dijeljenje konteksta - Pristupite fajlovima i promjenama iz drugog brancha trenutno
  • 🤝 Saradnju - Radite na povezanim funkcionalnostima sa live ažuriranjima između worktreeja
  • 📊 Poređenje - Vidite razlike između implementacija uporedo
  • 🎯 Referencu - Držite main branch vidljivim dok radite na funkcionalnostima
  • 🔗 Povezivanje funkcionalnosti - Povežite frontend i backend brancheve za full-stack razvoj
  • 💬 Dijeljenje AI sesija - Nastavite AI razgovore kroz različite worktreeje

Kako funkcioniše

  1. Izaberite izvorni Worktree - Izaberite worktree u kojem radite
  2. Povežite se sa ciljem - Kliknite ikonu konekcije i izaberite drugi worktree
  3. Dvosmjerna veza - Oba worktreea postaju svjesna jedan drugog
  4. Ažuriranja u realnom vremenu - Vidite promjene u povezanim worktreejima dok se dešavaju

Funkcionalnosti konekcije

  • Live sinhronizacija - Promjene fajlova u jednom worktreeu pojavljuju se u panelu konekcije
  • Brzo prebacivanje - Skočite između povezanih worktreeja jednim klikom
  • Diff pregled - Uporedite fajlove između povezanih worktreeja
  • Dijeljeni terminal - Pokrenite komande koje utiču na oba worktreea
  • Dijeljenje AI konteksta - AI sesije mogu referencirati kod povezanog worktreea
  • Status indikatori - Vidite build status, testove i promjene u povezanim worktreejima
  • Historija konekcija - Pratite koji worktreevi su bili povezani i kada
  • Pametni prijedlozi - Hive predlaže relevantne worktreeje za povezivanje na osnovu vašeg radnog toka

Primjeri korištenja

Razvoj funkcionalnosti: Povežite feature branch sa main da osigurate kompatibilnost i vidite kako se vaše promjene integriraju.

Ispravke grešaka: Povežite bugfix worktree sa production branchom da verificirate da ispravka radi u kontekstu.

Pregled koda: Povežite worktreeje recenzenta i autora da diskutirate o promjenama sa punim kontekstom s obje strane.

Full-Stack razvoj: Povežite frontend i backend worktreeje da radite na API-ju i UI-ju istovremeno uz savršenu koordinaciju.

Refaktoriranje: Povežite stare i nove implementacije da osigurate paritet funkcionalnosti tokom velikih refaktoriranja.

Pogledajte u akciji

Hive demo — orkestrijte AI agente kroz projekte
Više snimaka ekrana

Hive — AI coding sesija sa git worktreejima AI coding sesije sa integriranim git worktree upravljanjem

Kreiranje novog worktreea Kreirajte i upravljajte worktreejima vizuelno

Stablo fajlova sa git statusom File explorer sa live git status indikatorima

Prikaz tema Lijepe teme za svaku preferenciju

Zajednica i podrška

Documentation Issues Discussions Contributing Security

Dobijte pomoć

Resursi

Plan razvoja

🚀 Uskoro

  • Plugin sistem — Proširite Hive prilagođenim integracijama
  • Cloud sinhronizacija — Sinhronizujte postavke, sesije i šablone konekcija na svim uređajima
  • Timske funkcionalnosti — Dijelite worktreeje i surađujte u realnom vremenu
  • Git graf vizualizacija — Vizuelna historija brancheva i mergeova
  • Profiliranje performansi — Ugrađeni alati za optimizaciju

🎯 Vizija budućnosti

  • Udaljeni razvoj — SSH i container-bazirani razvoj
  • Trosmjerne konekcije — Povežite i mergujte više brancheva vizuelno
  • CI/CD integracija — Praćenje GitHub Actions, GitLab CI, Jenkins
  • Automatizacija konekcija — Auto-povezivanje srodnih brancheva na osnovu obrazaca
  • Režim pregleda koda — Poseban tip konekcije optimiziran za preglede
  • Praćenje vremena — Analitika aktivnosti po worktreeu i konekciji

Želite uticati na plan razvoja? Pridružite se diskusiji ili doprinesite!


Razvoj

Preduslovi

  • Node.js 20+
  • pnpm 9+
  • Git 2.20+ (worktree podrška)

Postavljanje

git clone https://github.com/anomalyco/hive.git
cd hive
pnpm install
pnpm dev

Ghostty Terminal (Opciono)

Hive uključuje opcionalni nativni terminal pokretan Ghostty-jevim libghostty. Ovo je potrebno samo ako želite raditi na ugrađenoj terminal funkcionalnosti.

Postavljanje:

  1. Buildajte libghostty iz Ghostty izvora (instrukcije za build):

    cd ~/Documents/dev
    git clone https://github.com/ghostty-org/ghostty.git
    cd ghostty
    zig build -Doptimize=ReleaseFast

    Ovo proizvodi macos/GhosttyKit.xcframework/macos-arm64_x86_64/libghostty.a.

  2. Ako je vaš Ghostty repo na ~/Documents/dev/ghostty/, build će ga pronaći automatski. Inače, postavite putanju:

    export GHOSTTY_LIB_PATH="/path/to/libghostty.a"
  3. Rebuildajte nativni addon:

    cd src/native && npx node-gyp rebuild

Ako libghostty nije dostupan, Hive se i dalje builda i pokreće -- Ghostty terminal funkcionalnost će samo biti onemogućena.

Komande

Komanda Opis
pnpm dev Pokreni sa hot reload
pnpm build Production build
pnpm lint ESLint provjera
pnpm lint:fix ESLint auto-fix
pnpm format Prettier formatiranje
pnpm test Pokreni sve testove
pnpm test:watch Watch režim
pnpm test:e2e Playwright E2E testovi
pnpm build:mac Pakuj za macOS

Arhitektura

Hive koristi Electron-ov model sa tri procesa uz strogi sandboxing:

┌─────────────────────────────────────────────────────┐
│                    Main Process                      │
│               (Node.js + SQLite)                     │
│                                                      │
│  ┌──────────┐ ┌──────────┐ ┌───────────────────┐   │
│  │ Database  │ │   Git    │ │  Agent SDK Mgr    │   │
│  │ Service   │ │ Service  │ │  (AI Sessions)    │   │
│  └──────────┘ └──────────┘ └───────────────────┘   │
│                      │                               │
│              ┌───────┴───────┐                       │
│              │  IPC Handlers │                       │
│              └───────┬───────┘                       │
└──────────────────────┼──────────────────────────────┘
                       │ Typed IPC
┌──────────────────────┼──────────────────────────────┐
│              ┌───────┴───────┐                       │
│              │    Preload    │                       │
│              │   (Bridge)    │                       │
│              └───────┬───────┘                       │
└──────────────────────┼──────────────────────────────┘
                       │ window.* APIs
┌──────────────────────┼──────────────────────────────┐
│                 Renderer Process                     │
│              (React + Tailwind)                      │
│                                                      │
│  ┌──────────┐ ┌──────────┐ ┌───────────────────┐   │
│  │ Zustand   │ │ shadcn/  │ │    Components     │   │
│  │ Stores    │ │ ui       │ │  (14 domains)     │   │
│  └──────────┘ └──────────┘ └───────────────────┘   │
└─────────────────────────────────────────────────────┘

Struktura projekta

src/
├── main/                  # Electron glavni proces (Node.js)
│   ├── db/                # SQLite baza podataka + šema + migracije
│   ├── ipc/               # IPC handler moduli
│   └── services/          # Git, AI agents, logger, file servisi
├── preload/               # Bridge sloj (tipizirani window.* API-ji)
└── renderer/src/          # React SPA
    ├── components/        # UI organiziran po domenu
    ├── hooks/             # Prilagođeni React hookovi
    ├── lib/               # Utility, teme, helperi
    └── stores/            # Zustand state management

Tech Stack

Sloj Tehnologija
Framework Electron 41
Frontend React 19
Jezik TypeScript 5.7
Styling Tailwind CSS 4 + shadcn/ui
State Zustand 5
Baza podataka better-sqlite3 (WAL režim)
AI OpenCode, Claude Code, Codex
Git simple-git
Build electron-vite

Dokumentacija

Detaljna dokumentacija se nalazi u docs/:

Doprinos

Volimo doprinose! Hive je napravljen od developera, za developere, i dobrodošla su poboljšanja svih vrsta.

Načini doprinosa

  • 🐛 Prijavite greške sa jasnim koracima za reprodukciju
  • 💡 Predložite funkcionalnosti koje bi poboljšale vaš radni tok
  • 📝 Poboljšajte dokumentaciju da pomognete drugima da počnu
  • 🎨 Pošaljite UI/UX poboljšanja za bolju upotrebljivost
  • 🔧 Ispravite greške iz našeg issue trackera
  • Optimizujte performanse na kritičnim putanjama
  • 🧪 Dodajte testove za poboljšanje pokrivenosti
  • 🌐 Prevedite aplikaciju na svoj jezik

Prije doprinosa, molimo pročitajte naše Smjernice za doprinos i Kodeks ponašanja.

Vodič za brzi doprinos

  1. Forkajte repozitorij
  2. Kreirajte feature branch (git checkout -b feature/amazing-feature)
  3. Napravite svoje promjene
  4. Pokrenite testove (pnpm test) i linting (pnpm lint)
  5. Commitujte sa opisnom porukom
  6. Pushajte na svoj fork
  7. Otvorite Pull Request

Pogledajte CONTRIBUTING.md za detaljne smjernice.

Licenca

MIT © 2024 morapelker

Hive je open source softver licenciran pod MIT licencom. Pogledajte LICENSE fajl za potpune detalje.