SF
STS Forge

/setup

First-time project configuration wizard. Auto-discovers engine path, VCS type, GAS usage, and plugins.

Interactive configuration wizard that discovers your project structure and generates machine-local configuration files.

Trigger phrases#

/setup, configure project, initialize, or on first run when project-config.json does not exist and a skill needs it.

When to run#

  • First time using AI ForgeKit in a project
  • When Docs/_working/state/project-config.json is missing
  • When your engine installation path changes
  • When switching to a different machine (each machine runs /setup independently)

What it discovers#

Project structure#

Globs for *.uproject in the working directory, reads it to extract project name, module list, enabled plugins, and engine association. Verifies Source/ and Content/ directories exist.

Engine path#

Searches in order: UE_ROOT / UE5_ROOT environment variable, then common installation locations on Windows, macOS, and Linux. Validates the found path by checking for the UnrealBuildTool binary. Derives the full UBT path and Editor-Cmd path. Extracts the engine version from Engine/Build/Build.version.

If the engine is not found automatically, /setup asks for the path.

VCS type#

Detects Git (.git/ directory) or Perforce (p4 info exit code). If both are present, asks which is primary. Captures the default branch (Git) or workspace name (Perforce).

GAS usage#

Greps *.Build.cs files for "GameplayAbilities" and Source/**/*.h for UAbilitySystemComponent or UGameplayAbility. Marks GAS as enabled or inactive based on what is found.

Plugin inventory#

Reads the .uproject Plugins array for enabled plugins, scans the Plugins/ directory for project-specific plugins with source, and checks for known UE5+ plugin patterns (Enhanced Input, CommonUI, Online Subsystem, commandlet plugins).

What it writes#

project-config.json#

Written to Docs/_working/state/project-config.json. Contains everything the other skills need to operate: build command, UBT path, VCS type, GAS status, plugin inventory:

{
  "project": {
    "name": "MyGame",
    "uproject_path": "C:/Projects/MyGame/MyGame.uproject",
    "engine_root": "C:/Epic Games/UE_5.5",
    "engine_version": "5.5"
  },
  "vcs": {
    "type": "git",
    "default_branch": "main",
    "workspace": ""
  },
  "build": {
    "ubt_path": "C:/Epic Games/UE_5.5/Engine/Binaries/DotNET/UnrealBuildTool/UnrealBuildTool.exe",
    "editor_cmd_path": "C:/Epic Games/UE_5.5/Engine/Binaries/Win64/UnrealEditor-Cmd.exe",
    "target": "MyGameEditor",
    "platform": "Win64",
    "configuration": "Development",
    "full_command": "\"<UBT_PATH>\" MyGameEditor Win64 Development \"-Project=<UPROJECT>\" -NoHotReloadFromIDE -progress"
  },
  "features": {
    "gas_enabled": true,
    "enhanced_input": true,
    "common_ui": false
  },
  "plugins": {
    "project_plugins": ["BlueprintAIAssistant"],
    "commandlets": []
  },
  "setup_completed": "2026-03-21T10:00:00Z",
  "setup_version": "1.0.0"
}

This file is machine-local: it contains absolute paths specific to your machine. Add it to .gitignore / .p4ignore. See Installation for the full list of files to exclude from VCS.

settings.local.json#

Written to .claude/settings.local.json. Adds a permissions entry that allows Claude Code to run the build command for this specific project and UBT path. Also machine-local and excluded from VCS.

Official plugin installation#

After writing the config files, /setup installs three official Claude Code plugins from Anthropic's marketplaces. These are not bundled in the harness: they are pulled from official sources at install time.

Plugin Source Purpose
skill-creator anthropics/skills Create, benchmark, and iterate on custom skills with an eval framework
clangd-lsp claude-plugins-official C++ code intelligence: diagnostics, navigation, and completions for UE projects
pr-review-toolkit claude-plugins-official Structured PR review agents

If the marketplace is unreachable or installation fails, /setup outputs the commands for you to run manually in the main session. Plugin failure does not block setup completion.

Bundled skills#

Three skills are included with Claude Code and available out of the box, without any installation:

  • /simplify: review and simplify recently changed code for clarity and maintainability
  • /batch: orchestrate large-scale parallel changes across the codebase (Git only)
  • /debug: troubleshoot the current Claude Code session

CLAUDE.md placeholders#

Replaces {{PROJECT_NAME}}, {{ENGINE_VERSION}}, {{PROJECT_DESCRIPTION}}, and {{VCS_TYPE}} in CLAUDE.md with the detected values. Clears the Status: NEW_ENVIRONMENT marker from Docs/index.md.

After /setup completes#

/setup offers to run /map-codebase immediately to populate the Dev wiki. This is recommended for first setup.

Idempotent#

Running /setup again re-runs all discovery and overwrites project-config.json and settings.local.json. It does not duplicate or corrupt state. Safe to re-run after engine upgrades or machine changes.

Team setup#

Each team member runs /setup independently on their own machine. The generated files are machine-local. The shared files: CLAUDE.md, .claude/rules/, .claude/agents/, .claude/skills/, Docs/Design/, Docs/Dev/ are committed and shared across the team.