Chat-first GitHub — with a real agent harness

GitHub, without
the overhead.

Describe what you want. GitChat's agent picks the right tools, runs multi-step workflows, and asks before anything writes. PRs, CI, traffic, Vercel deploys — one conversation.

See how it works

Everything you need, one conversation

107 tools covering every part of GitHub, from reading blame annotations to shipping production releases.

Review pull requests without leaving the chat

View diffs, add inline review comments, approve or request changes, and merge. The agent fetches the right context and surfaces what matters — you decide what ships.

Manage commits, branches, and tags conversationally

Browse commit history, cherry-pick changes, create and compare branches, detect stale ones, and revert when things go wrong. No CLI commands to remember.

Trigger workflows and inspect pipeline results

Run GitHub Actions, re-trigger failed jobs, view logs, and check workflow status. When something breaks, ask why and get the relevant log output instantly.

Surface vulnerabilities before they ship

Dependabot alerts, secret scanning, and code scanning results in one place. Triage, dismiss, or fix security issues without context-switching between tabs.

Deploy and manage your infrastructure from chat

Push to Vercel, manage environment variables, configure domains, promote previews to production, and inspect build logs. All without leaving the conversation.

Find what broke in seconds.

Skip the 2,000-line log scroll. GitChat reads the failed step, extracts the actual error, and tells you exactly what's wrong.

acme/storefront
Why did CI fail on my latest push?

CI / build & test #284

feat/auth-refactor · a3f2c91 · refactor: extract auth helpers

test
Run tests

##[error]Process completed with exit code 1.

TypeError: Cannot read property 'token' of undefined

at getSession (src/lib/auth.ts:47:18)

View log output
2026-04-12T10:23:14.5Z PASS  src/lib/auth.test.ts > unauthenticated session
2026-04-12T10:23:15.1Z FAIL  src/lib/auth.test.ts > getSession returns null
2026-04-12T10:23:15.1Z   TypeError: Cannot read property 'token' of undefined
2026-04-12T10:23:15.1Z     at getSession (src/lib/auth.ts:47:18)
2026-04-12T10:23:15.1Z     at Object.<anonymous> (src/lib/auth.test.ts:47:25)
2026-04-12T10:23:15.2Z ##[error]Process completed with exit code 1.

The failure is in src/lib/auth.ts:47. getSession() returns undefined when no session exists, so destructuring .token throws.

AI reviews your PRs before you do.

Ask for a security review and the AI reads the full diff, surfaces concerns inline with file paths, and suggests fixes — all in one message.

acme/api
Review the latest open PR for security issues
1 pull request
#142feat: add OAuth provider support

feat/oauthmain · open · nabin · 4 months ago · feature · auth

Found 2 security concerns in PR #142:

SQL injection risk
src/lib/db/queries.ts:47

String interpolation in raw query. Use parameterized statements.

Missing rate limiting
src/app/api/auth/login/route.ts

No rate limiter on the auth endpoint. Brute-force risk.

Ship a release in one conversation.

Generate the changelog, cut the annotated tag, publish the GitHub release. The AI plans every step. You approve once.

acme/dashboard
Cut a v2.4.0 release with a changelog from the last 20 commits
1.Compare commits between v2.3.0 and main
2.Generate grouped changelog
3.Create annotated tag v2.4.0
4.Publish GitHub release
v2.3.0main
18 commits47 files
Features2
add OAuth provider support@nabin
real-time collaboration cursors@nabin
Bug fixes1
resolve race condition in session refresh@nabin

Nothing happens without your sign-off

Agents are powerful — so the harness keeps them honest. Every write pauses for explicit approval. You stay in control.

Reads are instant. Writes need approval.

Browsing data, viewing diffs, listing PRs, reading files — all happen instantly. Anything that changes state pauses for your explicit confirmation.

Destructive operations show a warning

Deleting a branch, force-resetting, deleting a repo, or merging a PR shows a clear warning summary before the AI can execute.

Multi-step plans before complex actions

When the agent plans a workflow with multiple writes, you see the full plan first. Approve once, watch each step execute one by one.

Your token never leaves the server

GitHub OAuth tokens stay server-side. The browser never sees them. Same for AI keys — they go directly from our backend to the provider.

Three steps. Zero friction.

From sign-in to your first agent turn in under a minute. The model reasons and calls tools; every write still pauses for your approval.

Step 01

Connect your GitHub

Sign in with GitHub OAuth. GitChat requests only the scopes you approve: repos, gists, notifications. Your tokens never leave the server.

Authorize GitChat
GitChatwants access to:
  • Read & write code, issues, and PRs
  • Manage gists
  • Read notifications
Authorize
Step 02

Ask anything

Start chatting immediately — no repo required. @mention files, commits, or branches. The agent routes the right tools for your intent (reads, CI, Vercel) and loops until it has an answer.

Reference something
File@file:
Commit@commit:
Branch@branch:
Tag@tag:
Repository@repo:
Show me @file:auth
Step 03

Review before it ships

Reads run instantly. Writes — merge a PR, create a branch, ship a deploy — pause for your explicit approval. You stay in the loop.

Your entire stack, one chat

Connect your deployment platform and manage everything without leaving the conversation.

GitHub

  • Commits, branches, tags, releases, and git blame
  • Pull requests: create, review, approve, and merge
  • Issues, milestones, labels, and collaborators
  • CI/CD workflows: trigger, cancel, re-run, inspect
  • Dependabot, secret scanning, and code scanning
  • Gists, notifications, and user contributions

Vercel

  • Deploy repos to production or preview
  • List and inspect deployments
  • Manage environment variables
  • Configure custom domains
  • View build logs
  • Promote deployments to production

Questions, answered.

The things developers always ask before signing up.

Is my code sent to the AI?

Only when you explicitly reference it. The AI sees what you @mention (file content, commit diffs, branch context) and tool outputs from API calls. Your full repo is never bulk-uploaded.

Where are my chats stored?

On Neon Postgres, scoped to your account. You can delete any chat at any time. Shared chats are public via a unique token only you can generate or revoke.

Do you store my GitHub token?

Yes, encrypted on the server, only used to make API calls on your behalf. Tokens never reach the browser. You can revoke access anytime from your GitHub settings.

Do I need an AI subscription?

No. GitChat doesn't sell AI credits. You bring your own API key from Anthropic, OpenAI, Google, xAI, Mistral, OpenRouter, NVIDIA, or run local models with LM Studio. Your key, your costs, your usage.

What does it cost?

GitChat itself is free. You only pay your AI provider directly for token usage. No per-seat fees, no usage tracking, no markup.

Can the AI delete my code by accident?

No. Every write operation (delete branch, merge PR, reset, delete file, etc.) pauses for your approval before executing. Destructive operations show explicit warnings.

How does the agent pick which tools to use?

GitChat uses a ToolLoopAgent with the full registered toolset for your session (GitHub + Vercel when connected). The model reasons and calls tools in a loop. Writes still need your approval.

Which GitHub permissions does GitChat request?

OAuth scopes: repo, delete_repo, gist, read:user, user:email, notifications. You see and approve these on GitHub's consent screen during sign-in.

Can I use GitChat with private repos?

Yes. The repo OAuth scope covers both public and private repositories you have access to.

Is there a self-hosted option?

Not yet, but it's on the roadmap. The codebase is designed to be deployable to your own infrastructure.

What about teams?

Currently single-user. Team workspaces, shared chats, and role-based access are planned for future releases.

Ready to talk to
your repos?

Sign in with GitHub and try it now. No setup, no credit card.