Interfaces & Data
Interfaces
| Interface | Type |
|---|---|
Summarizer.py | CLI entrypoint |
config.toml / config.example.toml | Configuration |
ProjectIndex.md | Inclusion authority (the only source of truth for what gets evaluated) |
<folder>.manifest.toml discovery | Per-project manifest lookup |
| Ollama / OpenAI-compatible endpoints | Model backend (via ModelClient.py) |
Dashboard/Project-Summaries/raw/ | JSON output directory |
Dashboard/Dashboard.py | Flask dashboard over the compiled output |
Produces
- Per-project JSON summaries (raw, one file per project)
- Compiled
index.json— the same shape consumed by this documentation site summary.md— compiled Markdown portfolio summary- Flask-renderable dashboard HTML
- History and raw archives under
Project-Summaries
Consumes
ProjectIndex.md- Project files and manifests, sampled per project within configured budgets
config.tomland an environment-held OpenAI API key- Governing standards files (CTS, DRS, WDS)
- LLM service endpoints and credentials
Depends on
- Python 3.11+ (or a
tomlifallback) requests,flaskconcurrent.futuresthreadpool for incremental concurrent processing- Ollama or OpenAI-compatible API endpoints
- Local filesystem access to every indexed project path
Used by
- The operator (Herb) directly
- Portfolio maintainers and standards reviewers
- The local Flask dashboard
- This documentation site — every CTS/DRS/WDS project page's summary, capabilities, interfaces, and roadmap data traces back to a run of this tool
Notable governance detail
The manifest marks this project stability = experimental and active_development = true, distinct from a tool like CloneCratesio which is paused-but-stable. A known, intentional gap: full-portfolio API evaluation is excluded from local test verification, since it would spend real API credits on every test run.