Skip to content
This repository was archived by the owner on May 23, 2026. It is now read-only.

v0.7.0 — Data Analysis with Embedded DuckDB

Choose a tag to compare

@magifd2 magifd2 released this 18 Apr 18:17
· 30 commits to main since this release

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 analyze subcommand — 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-duckdb v1.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