Developer Setup
One-command setup for Claude Code, PSI context, and development tools.
What You’ll Get
| Tool | Purpose |
|---|---|
| GitHub CLI | Repository access, authentication |
| Azure CLI | Azure deployments and management |
| Node.js | Required runtime for Claude Code |
| Claude Code | AI coding assistant |
| sqlcmd (go) | Azure SQL database access with Entra MFA auth |
| Global CLAUDE.md | PSI terminology, wiki access, tech stack conventions |
After setup, you can use Claude Code from any project to look up PSI terminology, read wiki documentation, search for processes and data schemas, and get deployment guidance.
Quick Start
Step 1: Install GitHub CLI
winget install GitHub.cliThen restart your terminal.
Step 2: Authenticate with GitHub Enterprise
gh auth login -h progressivesurface.ghe.comSelect: HTTPS → Login with browser
Step 3: Run the Installer
gh api repos/ProgressiveSurface/PSI-Wiki-Site/contents/.claude/installer/setup.ps1?ref=v4 -H "Accept: application/vnd.github.raw" --hostname progressivesurface.ghe.com | iexThe installer will check what’s already installed, show what needs updating, and ask for confirmation before making changes.
Updating
Re-run the same installer command anytime:
gh api repos/ProgressiveSurface/PSI-Wiki-Site/contents/.claude/installer/setup.ps1?ref=v4 -H "Accept: application/vnd.github.raw" --hostname progressivesurface.ghe.com | iexUpdate Notifications
The installer can set up a daily scheduled task that notifies you when updates are available:
.\setup.ps1 -SetupNotificationsWhat Gets Installed
Development Tools
| Tool | Min Version | Install Command |
|---|---|---|
| GitHub CLI | 2.40.0 | winget install GitHub.cli |
| Azure CLI | 2.50.0 | winget install Microsoft.AzureCLI |
| Node.js | 18.0.0 | winget install OpenJS.NodeJS.LTS |
| Claude Code | 1.0.0 | npm install -g @anthropic-ai/claude-code |
| sqlcmd (go) | 1.9.0 | winget install sqlcmd |
Global CLAUDE.md
The installer sets up a global ~/.claude/CLAUDE.md that gives Claude PSI context in every project:
| What It Provides | Details |
|---|---|
| PSI Terminology | Redbook, AFTEC, BOM, ECN, GTCode, etc. |
| Wiki Update Workflow | When and how to update wiki pages after code changes |
| App → Wiki Map | Which wiki page corresponds to which repo |
| GitHub API Commands | Read/search/update wiki from any project |
| Tech Stack | React, .NET 8, UniData, Azure conventions |
Deploy WebApp Skill
| Skill | Description |
|---|---|
| deploy-webapp | Interactive Azure web application deployment guide |
Installed to ~/.claude/skills/deploy-webapp/ and available globally.
Usage Examples
Once installed, try these prompts in Claude Code:
What does PHYS. mean at PSI?
Read the PSI data catalog and summarize the main data sources
Search the PSI wiki for information about ECN process
I need to deploy a new web app to Azure
Setting Up CLAUDE.md (Best Practices)
The global ~/.claude/CLAUDE.md is the recommended way to give Claude PSI context. It’s loaded automatically at the start of every session — no skill invocation needed.
Why CLAUDE.md over Skills
| CLAUDE.md | Skills | |
|---|---|---|
| Loading | Automatic every session | On-demand when invoked |
| Context | Always available | Only when you remember to call it |
| Maintenance | One file to update | Separate install/update process |
| Best for | Context that’s always needed (terminology, conventions) | Interactive workflows (deployment guides) |
Global vs. Project CLAUDE.md
Claude Code supports CLAUDE.md at two levels — use both:
| Level | Location | Loaded When |
|---|---|---|
| Global | ~/.claude/CLAUDE.md | Every session, every project |
| Project | <repo-root>/CLAUDE.md | Only when working in that repo |
Global should contain cross-project context: PSI terminology, wiki workflow, tech stack. Project should contain repo-specific context: build commands, architecture decisions, unique patterns.
What to Put in Global CLAUDE.md
A good global CLAUDE.md includes:
- Company context — Who is PSI, what do we build
- Terminology — Key terms that appear across all projects
- Wiki workflow — How and when to update documentation
- App → wiki mapping — Which repo maps to which wiki page
- API fallback commands — GitHub API commands for remote wiki access
- Tech stack — Standard libraries, frameworks, and patterns
See Connect AI Agents for the full copyable template.
What to Put in Project CLAUDE.md
Each repo’s CLAUDE.md should cover:
- Project overview — What this app does, who uses it
- Build & test commands —
npm run dev,dotnet test, etc. - Architecture — Key directories, patterns, important files
- Deployment — How to deploy, what branch goes where
- Project-specific terms — Anything not in the global glossary
Tips for Effective CLAUDE.md Files
- Keep it concise — Claude reads the full file every session; avoid bloat
- Use tables — Structured data is easier for AI to parse than prose
- Include paths — Absolute paths to key files/directories help Claude navigate
- Update regularly — Stale instructions cause more harm than no instructions
- Test it — Start a new Claude Code session and ask about something in your CLAUDE.md to verify it’s loaded
Troubleshooting
”gh: command not found”
GitHub CLI isn’t installed or not in PATH:
winget install GitHub.cli
# Then restart your terminal“HTTP 404” or “Not Found”
You don’t have access to the ProgressiveSurface organization. Contact IT to be added.
npm install fails
winget install OpenJS.NodeJS.LTS
# Restart terminal, then retryCLAUDE.md Not Loading
- Check the file exists:
Get-ChildItem "$env:USERPROFILE\.claude\CLAUDE.md" - Verify content:
Get-Content "$env:USERPROFILE\.claude\CLAUDE.md" | Select-Object -First 10 - Start a new Claude Code session (CLAUDE.md is read at session start)
- Ask Claude: “What do you know about PSI?” — if it mentions terminology and wiki, it’s working
Deploy Skill Not Working
- Check the file exists:
Get-ChildItem "$env:USERPROFILE\.claude\skills\deploy-webapp" - Restart Claude Code after installation
For Developers
The installer source code is in the PSI-Wiki-Site repository:
.claude/
├── installer/
│ ├── manifest.json # Tool versions and definitions
│ ├── setup.ps1 # Main installer script
│ ├── update-checker.ps1 # Scheduled task for notifications
│ └── README.md # Technical documentation
└── skills/
└── deploy-webapp/ # Deployment guide skill
Related Pages
- connect-ai - AI agent integration options
- deploy-to-azure - Web app deployment guide
- getting-started - Wiki orientation
Last updated: March 2026