Skip to main content

Overview

Forge projects are managed through the Web UI. Each project represents a codebase with its own task board, git repository, and configuration. Projects are automatically created when you first launch Forge in a directory.

Project Initialization

When you run Forge for the first time in a directory:
Forge automatically:
  1. Detects if it’s a git repository
  2. Creates .forge/ directory with configuration
  3. Initializes SQLite database
  4. Generates unique project ID
  5. Opens web UI at http://localhost:3000

Project Structure


Project Configuration

The .forge/config.json file stores project settings:

GitHub Integration

Connect your project to GitHub for OAuth and issue sync:

Setup via Web UI

1

Open Settings

2

Authenticate

Click “Connect GitHub”
  • Redirects to GitHub OAuth
  • Authorize Forge app
  • Returns with token
3

Select Repository

  • Choose repository from dropdown
  • Forge syncs repo metadata
  • Configuration saved
4

Verify Connection

  • Green checkmark appears
  • Repository name displayed
  • Issue sync enabled

Manual Configuration

Edit .forge/config.json:
Then authenticate via device flow:

Project REST API

Interact with projects programmatically:

List Projects

Response:

Get Project Details

Update Project

Delete Project


MCP Project Tools

When running in MCP mode, use these tools from AI agents:
List all projects
Returns array of all Forge projects.

Project Settings

Configure project behavior via Web UI:

General Settings

  • Project Name: Display name
  • Default Branch: Git branch for new worktrees
  • Default Executor: AI agent for new tasks
  • Auto-cleanup: Remove worktrees after merge

GitHub Settings

  • OAuth Token: GitHub authentication
  • Issue Sync: Auto-create tasks from issues
  • PR Integration: Link tasks to pull requests
  • Webhook: Real-time updates

Executor Settings

Configure available AI agents:

Worktree Settings


Multi-Project Workflow

Work with multiple projects:
1

Project 1 - Frontend

Opens at http://localhost:3000
2

Project 2 - Backend

Opens at http://localhost:3001
3

Project 3 - Mobile

Opens at http://localhost:3002
Each project runs independently with its own:
  • Task board
  • Database
  • Worktrees
  • Configuration

Project Export/Import

Export Project

Exports:
  • Project configuration
  • All tasks and attempts
  • Execution history
  • Labels and metadata

Import Project


Project Migration

Moving a project to a new location:
1

Backup Current Project

2

Move Repository

3

Update Configuration

4

Verify and Launch


Project Analytics

View project statistics via Web UI or API:
Metrics:
  • Total tasks created
  • Tasks by status
  • Tasks by executor
  • Average completion time
  • Success rate per executor
  • Active worktrees
  • Repository activity

Common Issues

Symptom: MCP tools return “Project not found”Solution:
Symptom: “GitHub OAuth failed” errorSolution:
Symptom: Port already in useSolution:
Symptom: .forge/worktrees/ consuming disk spaceSolution:

Next Steps

Task Commands

Manage tasks within projects

Config Commands

Configure project settings

Projects API

Complete API reference

GitHub Integration

Set up GitHub OAuth