Skip to content
fresh-install-cleanup logo

Fresh Install Cleanup

fresh-install-cleanup

Clean up and perform a fresh install of the Orient monorepo. Use when asked to "fresh install", "clean install", "rebuild from scratch", "fix build issues", "clean node_modules", or when encountering stale build artifacts, tsbuildinfo issues, or turbo cache problems.

SKILL.md

Full skill instructions

Fresh Install Cleanup

Quick Reference

# Full cleanup and reinstall
rm -rf node_modules .turbo packages/​*/​node_modules packages/​*/​.turbo packages/​*/​dist
find packages/​*/​src -type f \( -name "*.js" -o -name "*.js.map" -o -name "*.d.ts" -o -name "*.d.ts.map" \) -delete
find packages -name "*.tsbuildinfo" -delete
rm -f .tsbuildinfo
pnpm install
pnpm run build:packages

Common Issues & Fixes

1. Stale tsbuildinfo Files (Incremental Compilation)

Symptoms:

  • tsc runs without error but produces no output
  • Turbo shows "cache hit" but dist/ folders are empty
  • Turbo warns: "no output files found for task @orient/​mcp-tools#build"
  • Build completes "successfully" but dependent packages fail with TS2307

Cause: TypeScript's .tsbuildinfo files store incremental compilation state. When stale, tsc believes everything is up-to-date and skips compilation entirely - even when dist/ is empty.

Key indicator: The warning "no output files found" after a build means tsbuildinfo is stale.

Fix:

find packages -name "*.tsbuildinfo" -delete
rm -f .tsbuildinfo

Verification (critical step after cleaning):

# Rebuild
pnpm run build:packages

# Verify dist directories are populated BEFORE proceeding
ls packages/​mcp-tools/​dist/​index.js
ls packages/​core/​dist/​index.js
ls packages/​agents/​dist/​index.js

If dist/ is still empty after rebuild, check for other issues (stray files in src/, turbo cache).

2. Stray Compiled Files in src/

Symptom: Build errors about missing modules even though dependencies are installed.

Cause: Previous builds left .js, .d.ts, .js.map, .d.ts.map files in src/ directories instead of dist/.

Fix:

find packages/​*/​src -type f \( -name "*.js" -o -name "*.js.map" -o -name "*.d.ts" -o -name "*.d.ts.map" \) -delete

3. Turbo Cache Issues

Symptom: Build appears cached but dist folders are empty or stale.

Fix:

rm -rf .turbo packages/​*/​.turbo

4. Stale Worktrees

Symptom: Many old worktrees consuming disk space.

Check:

git worktree list

Fix:

# Remove worktree directories
rm -rf ~/​claude-worktrees/​orient/​*
rm -rf ~/​.cursor/​worktrees/​orient/​*
# Prune git references
git worktree prune

5. Stale Fresh Install Folders

Symptom: Multiple orient-fresh-* directories in parent folder.

Fix:

rm -rf ../​orient-fresh-*

6. Module Resolution Errors (TS2307)

Symptom: Build fails with error TS2307: Cannot find module '@orient/​mcp-tools' or similar.

Cause: Turbo's dependency graph wasn't respected because:

  • Stale tsbuildinfo made turbo think prerequisite packages were already built
  • The dist/ folder was empty or missing despite turbo showing "cache hit"

Troubleshooting:

  1. Verify turbo.json has "dependsOn": ["^build"] for the build task
  2. Check package.json has correct workspace:* dependencies
  3. Manually verify prerequisite package dist exists:
    ls packages/​mcp-tools/​dist/​index.js
    

Fix: Clean tsbuildinfo and turbo cache, then rebuild:

find packages -name "*.tsbuildinfo" -delete
rm -rf .turbo packages/​*/​.turbo packages/​*/​dist
pnpm run build:packages

Full Cleanup Procedure

  1. Remove node_modules and build artifacts:

    rm -rf node_modules .turbo packages/​*/​node_modules packages/​*/​.turbo packages/​*/​dist
    
  2. Clean stray compiled files from src directories:

    find packages/​*/​src -type f \( -name "*.js" -o -name "*.js.map" -o -name "*.d.ts" -o -name "*.d.ts.map" \) -delete
    
  3. Clean tsbuildinfo files:

    find packages -name "*.tsbuildinfo" -delete
    rm -f .tsbuildinfo
    
  4. Clean worktrees (optional):

    rm -rf ~/​claude-worktrees/​orient/​* ~/​.cursor/​worktrees/​orient/​*
    git worktree prune
    
  5. Fresh install:

    pnpm install
    
  6. Build packages:

    pnpm run build:packages
    
  7. Verify build completion (critical - don't skip):

    # Turbo's "cache hit" can be misleading - always verify dist/ exists
    ls packages/​*/​dist/​index.js
    

    If any package is missing dist/​index.js, clean tsbuildinfo and rebuild that package.

Docker Testing Mode

Running Tests with Docker Stack

./​run.sh test        # Build and start full Docker stack
./​run.sh test pull   # Use pre-built images from ghcr.io (requires auth)
./​run.sh test status # Check container health
./​run.sh test stop   # Stop containers

7. Docker Build Hangs on Metadata Loading

Symptom: ./​run.sh test hangs at "load metadata for docker.io/​library/​node:20-alpine"

Cause: Docker buildx can be slow to fetch metadata from Docker Hub on macOS.

Workaround: Use existing local images without rebuilding:

cd docker
docker compose --env-file ../​.env -f docker-compose.v2.yml -f docker-compose.local.yml --profile slack up -d --no-build

8. Port Conflicts (9000, 5432, 80)

Symptom: Bind for 0.0.0.0:9000 failed: port is already allocated

Cause: Dev containers (orienter--0) share ports with test containers (orienter-).

Fix: Stop dev containers first:

docker stop orienter-nginx-0 orienter-postgres-0 orienter-minio-0
docker rm orienter-nginx-0 orienter-postgres-0 orienter-minio-0

Then start test containers:

./​run.sh test

9. ghcr.io Authentication Required

Symptom: ./​run.sh test pull fails with 401 Unauthorized

Cause: Private images require GitHub authentication.

Fix: Either authenticate to ghcr.io or use local builds:

# Option 1: Authenticate
echo $GITHUB_TOKEN | docker login ghcr.io -u USERNAME --password-stdin

# Option 2: Use local images (skip pull)
./​run.sh test  # builds locally

Verification

After cleanup and rebuild, verify:

# Check dist directories exist
ls packages/​*/​dist

# Run unit tests
pnpm run test:ci

# Run e2e tests with Docker stack
./​run.sh test status  # Ensure all healthy
E2E_TESTS=true pnpm vitest run tests/​e2e

More skills from majiayu000

xiaohongshu logo
majiayu000/claude-arsenal

xiaohongshu

xiaohongshu

286 148
View
agent-task-conductor logo
majiayu000/claude-skill-registry

agent-task-conductor

Conduct multi-agent task orchestration and workflow coordination.

663 1
View
conductor-setup logo
majiayu000/claude-skill-registry

conductor-setup

Initialize project with Conductor artifacts (product definition,

663 1
View
animation-designer logo
majiayu000/claude-skill-registry

animation-designer

Expert in web animations, transitions, and motion design using Framer Motion and CSS

663 1
View
diagramming logo
majiayu000/claude-skill-registry

diagramming

Creates Mermaid and ASCII diagrams for flowcharts, architecture, ERDs, state machines, mindmaps, and more. Use when user mentions diagram, flowchart, mermaid, ASCII diagram, text diagram, terminal diagram, visualize, C4, mindmap, architecture diagram, sequence diagram, ERD, or needs visual docume...

663 1
View
h3-pg logo
majiayu000/claude-skill-registry-data

h3-pg

PostgreSQL bindings for H3 hexagonal grid system. Use when working with H3 cells in Postgres, including spatial indexing, geometry/geography integration, and raster analysis.

23 1
View
conductor-development logo
majiayu000/claude-skill-registry

conductor-development

Context-Driven Development skill for projects using Conductor. Use this skill when you detect a `conductor/` directory in the project, when working on tasks defined in a `plan.md` file, or when the user asks about tracks, specs, or plans. Automatically applies TDD workflow, tracks task completion...

663 1
View
conductor-status logo
majiayu000/claude-skill-registry

conductor-status

Display project status, active tracks, and next actions

663 1
View
dockerization logo
majiayu000/claude-skill-registry

dockerization

Official Stakpak application containerization standard operating procedure, a step-by-step guidline to properly dockerize applications. This is a rule book curated by the Stakpak Team.

663 1
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View