This repository was archived by the owner on May 23, 2026. It is now read-only.
Repository navigation
v0.7.0 — Data Analysis with Embedded DuckDB
What's New
Two-layer data analysis architecture with embedded DuckDB.
Interactive Layer (in-process)
- Load CSV/JSON/JSONL files into DuckDB tables
- Natural language → SQL generation via LLM
- Direct SQL execution, schema inspection, description annotation
- LLM-powered analysis suggestions and quick summaries
Background Layer (detached process)
- Sliding window summarization for large datasets
- Survives app shutdown (Setsid session leader)
- Status tracking via
status.json, findings + markdown report output
Key Design
- Single binary:
shell-agent analyzesubcommand — no separate build or deploy - 10 analysis tools: load-data, describe-data, query-preview, query-sql, suggest-analysis, quick-summary, analyze-bg, analysis-status, analysis-result, reset-analysis
- DB copy for background jobs: avoids DuckDB file-level locking conflicts
- nlk/guard: prompt injection defense in SQL generation and window analysis
Architecture Documentation
Comprehensive architecture docs added (EN/JA):
Dependencies
- Added
github.com/marcboeker/go-duckdbv1.8.5 (CGO, embedded) - Build tag:
no_duckdb_arrow(Arrow interface unused)
Full changelog: https://github.com/nlink-jp/shell-agent/blob/main/CHANGELOG.md