AnalyzeProjects Overview
AnalyzeProjects is the index-driven CLI tool that evaluates the entire Aptlantis portfolio and produces the structured JSON this documentation site's data comes from. Its canonical evaluation inventory is ProjectIndex.md — the sole inclusion authority; it will not discover or evaluate anything not explicitly listed there, and it fails fatally on a mismatched project count.
:::info This is the tool behind this site
The docs/index.json and docs/processed-summary.md files that power the CTS/DRS/WDS project pages on this site are compiled output from a run of AnalyzeProjects. When you read a project's capabilities, interfaces, or roadmap elsewhere on this site, that data originated here.
:::
Who it's for
A single operator (Herb) who wants a controlled, repeatable evaluation of the whole portfolio — not an open-ended crawler. Every run requires exactly 30 registered projects across a fixed group distribution (12 DRS, 6 CTS, 4 WDS, 8 Standards); anything else is treated as a fatal validation error, not a warning.
The core concept
- Parse and validate
ProjectIndex.md— reject anything that doesn't match the required 12/6/4/8 distribution. - For each project, select its
<folder>.manifest.tomlif present (a manifest is optional, one alternative direct manifest is accepted). - Read the relevant governing standard (DRS, CTS, or WDS) once per group; Standards-group projects use a separate rubric focused on clarity, completeness, and implementability rather than release requirements.
- Sample high-value files within configured file-count and character budgets — every transferred block is explicitly labeled
complete fileorsampled excerpt, so a truncation boundary is never mistaken for a defect in the actual project. - Send the evidence plus governance context to a model (
gpt-5-mini-2025-08-07via OpenAI, or an Ollama-compatible endpoint as fallback) throughModelClient.py. - Validate and normalize the JSON response, write the individual per-project result, then compile the portfolio-wide summary.
Why this shape
The design is defensive on purpose: ProjectIndex.md as the sole inclusion authority, fatal validation on malformed entries or wrong group totals, and explicit sampling labels all exist to stop the LLM evaluation from silently drifting — either by evaluating the wrong set of projects, or by treating a sampling artifact as a real finding.