Gen2CsvAnalysis
Gen2 analysis skill for producing CSV outputs from mined domain logs.
Execution
python gen2_csv_analysis.py --timeframe <YYYY|YYYY/MM|YYYY/MM/DD> --prompt "" --max-files --max-chars-per-file --max-total-chars --llm-timeout
Arguments
- domain required alphabetic string only A-Z or a-z
- --timeframe required supports YYYY or YYYY/MM or YYYY/MM/DD (also accepts '-')
- --prompt required LLM analysis instruction, should clearly request a CSV-style table outcome
- --max-files optional default 200
- --max-chars-per-file optional default 6000
- --max-total-chars optional default 180000
- --llm-timeout optional default 90
Prompt guidance
Use explicit table-oriented instructions for best results, for example:
- "Create CSV list of projects and revenue across the last 5 years."
- "Create CSV table of supplier, contract value, contract start date, and risk category."
The skill enforces a structured schema from the LLM and then writes strict CSV.
LLM configuration
Uses OpenAI-compatible Chat Completions API with environment variables:
- OPENAI_API_KEY required
- OPENAI_MODEL optional default gpt-4o-mini
- OPENAI_BASE_URL optional default https://api.openai.com/v1
Behavior
- Resolves input folders from
01-Mine/<domain>usingFolderNavigator. - Loads
.txtfiles matching timeframe. - Builds bounded corpus.
- Sends corpus + prompt to LLM with a table schema contract.
- Writes CSV output to
02-Analysis/<domain>/<matching timeframe>/.
Output
On success returns JSON with:
- domain
- timeframe
- files_analyzed
- output_path
- columns
- rows
- status
On error returns JSON with:
- domain
- timeframe
- error
- status