Project Optimizer

Updated April 20, 2026

The project optimizer scans your project and scores how well it’s set up for AI coding agents. It checks for missing files, content gaps, code quality issues, setup problems, and cross-file inconsistencies — then gives you prioritized recommendations with one-click fixes.

Opening the Optimizer

Open it from gem settings (click a gem tile in the Crystal Rail, then the “optimize” button) or from the main menu under Tools > Project Optimizer.

The optimizer runs fresh every time you open it. Click re-analyze to rescan after making changes while the window is still open.

Layout

The optimizer has two tabs:

  • Analyze — health score, category breakdown, and prioritized gap list (left pane) alongside your project’s agent files with edit/create buttons (right pane)
  • Explore — directory browser for navigating your project’s file tree, viewing agent files, and adding saved files from your library to any directory

Health Score

The overall health score is a weighted average across four categories:

CategoryWeightWhat it measures
Content3xQuality and completeness of CLAUDE.md instructions
Files2xPresence of required agent files and cross-file consistency
Code2xSource code size and organization
Setup1xSkills, rules, MCP servers, settings, hooks

Scores map to three levels: high (75+), medium (40-74), and low (below 40).

What It Checks

File Checks

CheckSeverityWhat it detects
No CLAUDE.mdHighProject has no Claude Code instructions
No codex.mdHighCodex is active but has no instructions
No AGENTS.mdMediumMulti-agent project lacks shared instructions
No .claudeignoreMediumLarge generated directories (node_modules, .build, dist) visible to agents
Subpackage missing CLAUDE.mdLowMonorepo subpackage has its own build but no agent instructions

Content Checks

CheckSeverityWhat it detects
No Build & Run sectionHighAgents can’t build or test without knowing the commands
Build & Run is a placeholderHighSection exists but has no real commands
No Architecture sectionMediumNo project map for agents to navigate by
No file size limit statedMediumWithout a limit, agents create unbounded files
CLAUDE.md is very shortLowLikely a stub — more context improves accuracy
CLAUDE.md over 200 linesMediumConsider splitting into .claude/rules/ for modularity
CLAUDE.md over 400 linesHighWell past the recommended limit — split into rules

Content Quality Checks

CheckSeverityWhat it detects
No testing commands sectionHighAgents need to verify their own work
No code conventions or style guideMediumAgents guess at naming, formatting, and patterns
Stack not mentionedLowManifest file detected but CLAUDE.md doesn’t mention the language/framework
Build section has no copy-pasteable commandsMediumProse-only build instructions — fenced code blocks are more useful
Instructions are too vagueLowMultiple vague phrases like “write clean code” with little actual content
No known issues or gotchas sectionLowWithout documented pitfalls, agents hit problems by trial and error
No verification commandMediumNo verify gate — agents can report success without checking
No commit guidelinesLowWithout commit discipline, agents bundle unrelated changes

Code Checks

CheckSeverityWhat it detects
Files over 1000 linesHighSource files that are far too large for agents to work with effectively
Files over 500 linesMediumSource files approaching the recommended limit

Setup Checks

CheckSeverityWhat it detects
No Claude skills configuredLowNo .claude/commands/ directory with reusable skills
No MCP servers configuredLowNo .mcp.json for extending agent capabilities
No .claude/rules/ configuredLowNo modular rule files
Few rules in .claude/rules/LowOnly 1-3 rules — consider adding more
No path-scoped rulesLowMonorepo detected but rules don’t use glob scoping
No .claude/settings.jsonLowNo project-level permission rules
No hooks configuredLowNo hooks to automate lint, type-check, or memory sync
No permission rules in settingsLowNo allow/deny rules for tool access

Cross-File Checks

CheckSeverityWhat it detects
Stale paths in CLAUDE.mdMediumFile paths referenced in CLAUDE.md that no longer exist
CLAUDE.md and codex.md conflictMediumContradictory naming conventions or file size limits between agent files
CLAUDE.md is gitignoredMediumTeam members won’t receive project instructions
CLAUDE.local.md not gitignoredMediumLocal overrides are being shared via git
.claude/settings.local.json not gitignoredMediumUser-specific permissions are being shared

Project Type Checks

The optimizer detects your tech stack from manifest files and suggests relevant facets when no project-specific guidance exists:

StackDetected bySuggestions
Next.jsnext.config.js/ts/mjsTypeScript setup, accessibility
Node.jspackage.jsonLinting configuration, logging
SwiftPackage.swiftSwift tests, concurrency guidance
Pythonpyproject.toml, requirements.txtPytest patterns, linting/formatting
Djangomanage.pyModel design, views and serializers
Gogo.modProject structure, error handling patterns
RustCargo.tomlClippy lints

Export for Agent

Click copy for agent to export the current analysis as optimization-report.md in your project directory. A prompt is copied to your clipboard that you can paste directly into Claude Code or Codex — the agent will read the report and fix the gaps using real content from your codebase.

Explore Tab

The explore tab lets you browse your project’s directory tree. Each directory shows:

  • Agent instruction files with colored badges (claude.md, agents.md, codex.md) and edit buttons
  • Subdirectories with click-to-navigate breadcrumbs
  • ”+” buttons on every directory to add files from your saved library