Skip to content

Pranav301102/Gemini-hack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ•ΈοΈ Agent Weaver β€” AI-Powered Team Collaboration Platform

A Gemini CLI Extension that turns AI into a coordinated team of 5 specialized agents with shared memory, human-verified code annotations, git-based resource sharing, and a real-time observability dashboard β€” built for teams where humans and AI agents work in sync.

Hackathon Track: 🧠 The Marathon Agent · ☯️ Vibe Engineering


The Problem

AI coding tools today have three critical failures:

  1. Agent Amnesia β€” Every prompt starts fresh. Re-reads files, re-discovers architecture, loses context from prior decisions.
  2. No Team Sharing β€” When one developer scans a project with AI, that intelligence dies in their session. Teammates re-do the same work.
  3. Unverified Intelligence β€” AI generates descriptions of what code does, but there's no way for humans to verify, correct, or trust those descriptions across a team.

The Solution

Agent Weaver is a platform for AI-powered teams where resources are shared and agent memory is verified by humans.

1. 🧠 Shared Agent Memory (Context Board)

A persistent JSON-based context board that all 5 agents read from and write to. Every brainstorm observation, architectural decision, code artifact, and QA result is recorded once and accessible to all agents. The Developer reads the Architect's style guide. QA maps test cases to the PM's acceptance criteria. No agent ever re-reads the codebase from scratch.

2. πŸ‘₯ Git-Based Team Collaboration

The entire .weaver/ directory is designed to be committed to git. When one teammate scans a project with /read, every other teammate who pulls gets:

  • The full AST-parsed code index (functions, classes, types, imports)
  • LLM-enriched descriptions of every symbol
  • Pre-computed dependency graphs, class hierarchies, call graphs
  • The project plan with change groups and file maps
  • All agent observations and decisions
  • Human-verified code annotations that the whole team can trust

No duplicate work. No re-scanning. One scan serves the entire team.

3. πŸ“ Human-Verified Code Annotations

Agents write detailed notes on code symbols β€” what functions do, how classes are used, design intent, edge cases, gotchas. These annotations are tagged as agent-written until a human reviews and verifies them. Verified annotations become trusted team knowledge that:

  • Survives across sessions and team members
  • Can be filtered (verified-only for production decisions, all for exploration)
  • Include tags for categorization (#auth, #critical-path, #tech-debt)
  • Track who verified what and when

4. πŸ”¬ Intelligent Code Indexing

AST-powered code indexing (via ast-grep) that parses functions, classes, interfaces, imports/exports, and type definitions. An LLM enrichment pipeline adds natural-language descriptions to every symbol. Agents can then search by meaning ("find the authentication middleware") instead of by filename.

5. πŸ“Š Real-Time Observability Dashboard

A Next.js dashboard connected via SSE that shows:

  • All 5 agent statuses with live activity
  • The Context Board with brainstorm, proposals, decisions, and artifacts
  • Implementation Checklist with progress tracking
  • Code Intelligence views (class maps, module architecture, call graphs)
  • Team Panel β€” members, code annotations, task claims, activity feed
  • The full project plan with change groups and file maps
  • Gemini-powered features: code explanation, codebase chat, AI-enriched index

Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                    Gemini CLI                            β”‚
β”‚  User runs /read, /build, /implement, /test, /review... β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                  β”‚ MCP (stdio)
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚              Agent Weaver MCP Server                     β”‚
β”‚  55 tools across 19 modules                              β”‚
β”‚                                                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
β”‚  β”‚ Indexer   β”‚ β”‚ Planner  β”‚ β”‚ Agents   β”‚ β”‚ App      β”‚   β”‚
β”‚  β”‚ AST parse β”‚ β”‚ Changes  β”‚ β”‚ 5 roles  β”‚ β”‚ Runner   β”‚   β”‚
β”‚  β”‚ Enrichmentβ”‚ β”‚ Brainstormβ”‚ β”‚ Assign   β”‚ β”‚ Logs     β”‚   β”‚
β”‚  β”‚ Code Maps β”‚ β”‚ File Map β”‚ β”‚ Revisionsβ”‚ β”‚ Monitor  β”‚   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
β”‚                                                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”‚
β”‚  β”‚ Context  β”‚ β”‚ File Ops β”‚ β”‚ Shell    β”‚ β”‚ Docs     β”‚   β”‚
β”‚  β”‚ Board    β”‚ β”‚ R/W/Del  β”‚ β”‚ Commands β”‚ β”‚ CRUD     β”‚   β”‚
β”‚  β”‚ Shared   β”‚ β”‚ Tracking β”‚ β”‚ Timeouts β”‚ β”‚ Versionedβ”‚   β”‚
β”‚  β”‚ Memory   β”‚ β”‚ Locking  β”‚ β”‚ 120s max β”‚ β”‚ Tagged   β”‚   β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜   β”‚
β”‚                                                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        Sync Push/Pull       β”‚
β”‚  β”‚   Team   β”‚ β”‚   Sync   β”‚ ◄────────────────────┐      β”‚
β”‚  β”‚ Git collabβ”‚ β”‚ Hub API  β”‚                      β”‚      β”‚
β”‚  β”‚Annotationsβ”‚ β”‚ Branches β”‚                      β”‚      β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                      β”‚      β”‚
β”‚                        β”‚                         β”‚      β”‚
β”‚              .weaver/  β”‚  (persistent state)     β”‚      β”‚
β”‚   context.json Β· index.json Β· plan.json Β·       β”‚      β”‚
β”‚   code-maps.json Β· docs.json Β· team.json Β·      β”‚      β”‚
β”‚   annotations.json Β· logs/events.jsonl          β”‚      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”˜
                  β”‚ File watch + SSE              β”‚
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”        β”‚
β”‚   Observability Dashboard (Next.js)     β”‚        β”‚
β”‚                                         β”‚        β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β–Όβ”€β”€β”€β”€β”€β”€β” β”‚
β”‚  β”‚  Plan   β”‚  β”‚ Context Boardβ”‚  β”‚   Team     β”‚ β”‚
β”‚  β”‚Navigatorβ”‚  β”‚ Code Intel   β”‚  β”‚  Members   β”‚ β”‚
β”‚  β”‚ Agents  β”‚  β”‚ Plan Detail  β”‚  β”‚Annotations β”‚ β”‚
β”‚  β”‚ Status  β”‚  β”‚ Docs Browser β”‚  β”‚  Activity  β”‚ β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜ β”‚
β”‚                                                  β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”‚
β”‚  β”‚  Agent Activity Feed (real-time SSE)     β”‚  β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β”‚
β”‚                                                  β”‚
β”‚  Gemini: Chat Β· Explain Β· Enrich Β· Summarize    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                  β”‚
                  β”‚ HTTP (port 4200)
                  β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚          Weaver Hub Server (Express)            β”‚
β”‚  Central sync server for team collaboration     β”‚
β”‚                                                  β”‚
β”‚  Storage: ~/.weaver-hub/<repo-hash>/<branch>/   β”‚
β”‚  Endpoints: push Β· pull Β· branches Β· status     β”‚
β”‚  Git-aware: tracks repo + branch for isolation  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The 5 Agents

Agent Role What They Access
πŸ—οΈ Architect Scans codebases, designs architecture, writes style guides, creates Mermaid diagrams Code index, dependency graph, code maps, enrichment pipeline
πŸ“‹ Product Manager Breaks requirements into specs and user stories with acceptance criteria Context board (reads architect's decisions), project context
πŸ’» Developer Writes production code following the style guide, handles revision requests Style guide, plan file map, code index, shell commands
πŸ§ͺ QA Engineer Maps acceptance criteria to tests, runs test suites, reports bugs PM's specs, developer's files, shell for test execution
πŸ” Code Reviewer Reviews for correctness, security, performance, style compliance Code maps, enriched index, context board history

Commands (Agile β€” Run Any, Anytime)

Command What It Does
/read Scan an existing project β†’ build code index β†’ generate code maps
/build Architect + PM brainstorm together β†’ create a structured plan
/implement Developer writes all code files following the plan
/test QA writes and runs tests against acceptance criteria
/review Code Reviewer evaluates the implementation
/ship Generate deployment summary and shipping report
/launch Launch the app and monitor logs in real-time
/docs Generate comprehensive project documentation
/dashboard Open the observability dashboard
/status Quick project status check

No sequential gates. The user drives the workflow β€” call any command in any order. Agents check current project state and adapt.

55 MCP Tools

Click to expand full tool list

Project Init (3): init_project Β· gather_requirements Β· update_project_context

Context Board (3): get_context_board Β· update_context_board Β· get_project_status

Agent Runner (4): assign_agent Β· complete_agent_task Β· get_agent_status Β· request_revision

Planner (8): run_plan Β· add_proposed_change Β· add_brainstorm_entry Β· save_plan Β· get_plan Β· get_file_change_map Β· request_plan_approval Β· check_plan_approval

File Ops (5): save_file Β· track_file Β· read_file Β· delete_file Β· list_project_files

Code Index (2): index_project Β· get_project_index

Enrichment (2): enrich_index Β· save_enrichments

Dependency Graph (1): build_dependency_graph

Code Intel (3): understand_file Β· search_codebase Β· get_dependency_graph

Code Maps (2): build_code_maps Β· get_code_maps

App Runner (4): launch_app Β· get_app_status Β· stop_app Β· get_app_logs

Docs (4): add_doc Β· get_docs Β· update_doc Β· list_doc_categories

Team Collaboration (7): team_status Β· record_team_activity Β· add_team_note Β· claim_task Β· annotate_code Β· verify_annotation Β· get_annotations

Hub Sync (3): sync_push Β· sync_pull Β· sync_status

Shell (1): run_command

Logging (2): log_event Β· read_logs

Project Scan (1): read_project


Quick Start

Prerequisites

Install

Option 1: Install from GitHub (Recommended)

# Install the extension via Gemini CLI
gemini extensions install https://github.com/Pranav301102/Gemini-hack

# Verify installation
gemini extensions list

The extension will automatically:

  • Clone the repository
  • Install dependencies
  • Build the MCP server
  • Register with Gemini CLI

Option 2: Install from Local Path

# Clone the repo
git clone https://github.com/Pranav301102/Gemini-hack
cd Gemini-hack/project-weaver

# Build the MCP server
npm install
npm run build

# Install the extension from local path
gemini extensions install .

# Verify installation
gemini extensions list

Optional: Set up Team Collaboration Hub

# Install and start the Hub server (for team sync features)
cd hub
npm install
npm start &  # Runs on http://localhost:4200
cd ..

Deploy to Vercel (Dashboard Only)

The dashboard can be deployed to Vercel for easy access:

# Install Vercel CLI
npm i -g vercel

# Deploy from project root
vercel

# Or use the Vercel GitHub integration
# Just connect your repo and deploy!

Note: The MCP server runs locally via Gemini CLI. Only the observability dashboard is hosted on Vercel.

Use with Gemini CLI

Once installed, the extension is available in any Gemini CLI session:

# Navigate to any project you want to work on
cd ~/my-project

# Start Gemini CLI
gemini

# The Agent Weaver extension is now available!
# Use any command:
/read          # Scan and index the codebase
/build         # Plan the work
/implement     # Write the code
/test          # Run tests
/review        # Code review
/dashboard     # Open the live dashboard
/status        # Quick project status check

Update the extension:

gemini extensions update agent-weaver

Run the Dashboard Standalone

cd project-weaver/dashboard
npm run dev
# Open http://localhost:3000
# Enter the project path in the top bar

Tech Stack

Layer Technology
AI Runtime Gemini CLI + Gemini 3 Pro API
MCP Server TypeScript, @modelcontextprotocol/sdk, stdio transport
Hub Server Express.js, stores team sync data in ~/.weaver-hub/
AST Parsing ast-grep/napi (Tree-sitter based)
Schema Validation Zod
Dashboard Next.js 15, React 19, Tailwind CSS 4
Real-time Server-Sent Events (SSE) + chokidar file watching
AI Features @google/generative-ai (Gemini API direct)
Diagrams Mermaid.js
Persistent State JSON files in .weaver/ directory

What Makes This Different

Feature Typical AI Coding Tool Agent Weaver
Memory None β€” re-reads everything Persistent context board + enriched index
Agents Single persona 5 specialized roles with shared state
Code Understanding Raw file reading AST-parsed, LLM-enriched, graph-connected
Visibility Terminal output only Real-time dashboard with SSE
Documentation Manual Centralized, versioned, multi-agent accessible
Workflow Linear or chat-based Agile β€” any command, any order
Code Review None Structured 7-area review with revision loops
Planning Prompt-based Architect + PM brainstorm β†’ structured change groups
Team Collab Session-locked Git-based sharing + Hub sync by branch
Code Annotations Not supported Human-verified, agent-written, team-shared

License

MIT

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages