Excel and CSV Data Analysis
bytedance/deer-flow
Analyzes uploaded Excel and CSV files with SQL through DuckDB, producing schema inspections, statistical summaries and exports to CSV, JSON or Markdown.
Wire up how an artifact renders in LAVA, end to end across the producer and the viewer.
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install abrignoni/VLEAPP lava-data-view --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/lava-data-view .claude/skills/lava-data-view && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .claude/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-viewType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install abrignoni/VLEAPP lava-data-view --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/lava-data-view .agents/skills/lava-data-view && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .agents/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install abrignoni/VLEAPP lava-data-view --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/lava-data-view .cursor/skills/lava-data-view && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .cursor/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/abrignoni/VLEAPP.git --path .claude/skills/lava-data-view--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install abrignoni/VLEAPP lava-data-view --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/lava-data-view .gemini/skills/lava-data-view && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .gemini/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install abrignoni/VLEAPP lava-data-viewInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/lava-data-view .github/skills/lava-data-view && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .github/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add abrignoni/VLEAPP --skill lava-data-view -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install abrignoni/VLEAPP lava-data-view --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/abrignoni/VLEAPP.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/lava-data-view .opencode/skills/lava-data-view && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "lava-data-view" agent skill from https://github.com/abrignoni/VLEAPP/tree/main/.claude/skills/lava-data-view into .opencode/skills/lava-data-view/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lava-data-view", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
lava-data-viewWire up how an artifact renders in LAVA, end to end across the producer and the viewer.
Lava Data View is an agent skill from abrignoni/VLEAPP. Wire up how an artifact renders in LAVA, end to end across the producer and the viewer. Use when adding a conversation view to an artifact, when a view renders wrong or not at all, when adding a field to the LAVA schema or manifest, or when asked to "add a module to the LAVA schema".
Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with SQL. The repository describes itself as: Vehicle Logs Events And Properties Parser. The licence is MIT.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit eada9a9. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Lava Data View loads about 1.1k tokens when it runs. Until then it costs about 75 tokens; SKILL.md has 570 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from abrignoni/VLEAPP at commit eada9a9, republished under its MIT licence (© abrignoni). 570 words, ~1,080 tokens.
.claude/skills/lava-data-view/SKILL.md (or your agent's skills folder).<!-- SHARED SKILL. Canonical copy lives in the LAVA repo under .claude/skills/.
Do not edit in place; edit the canonical copy and re-run the sync script. -->
LAVA/docs/schema/ is the authority and is more current than any summary:
| doc | covers |
|---|---|
docs/schema/data-views.md | every view type and every config field, with a required/optional table |
docs/schema/output-data-v1.md | the _lava_data manifest structure |
docs/schema/sqlite-data-v1.md | the artifact database layout |
Read data-views.md before writing a data_views block. This skill is the order of
operations and the traps around it.
The extractor declares the view; LAVA renders it. A change to one half without the other either does nothing or breaks the case. Decide up front which halves you are touching, and say so in the PR.
Producer side (any of the five extractors): the data_views block in
__artifacts_v2__, plus whatever columns the view references.
Viewer side (LAVA): only needed for a genuinely new view type or a new config field. An existing view type with a new artifact needs no LAVA change at all.
Column values in the config are the display names as they appear in the artifact module, not the sanitized SQL names. LAVA resolves them, and also accepts an exact match on the sanitized form, so use the display name and stay consistent.
Every required field in data-views.md must be present. A conversation view missing
directionColumn or timeColumn does not degrade gracefully, it fails to group.
directionSentValue is the value meaning "sent", and it is type-sensitive: 1 and "1"
are not interchangeable. Confirm what your parser actually writes into that column.
The table is created from the artifact's headers, and column names are sanitized to
snake_case, so Chat_Contact_ID becomes chat_contact_id. A header typed
('X', 'datetime') becomes an INTEGER epoch column.
Headers that sanitize to SQL reserved words are handled by quote_sql_name(), but a header
that sanitizes to the same name as another column silently collides. Check for that when
adding columns to an artifact that already has a view.
If the view references media, see the lava-media rule: register with check_in_media and
set mediaColumn.
data_views is consumed in src/renderer/components/ by ArtifactView.jsx, which decides
whether the view is offered, and ConversationPanel.jsx / ConversationExportView.jsx,
which render it. A new field means touching the panel and the export view together, or the
on-screen view and the exported one disagree.
Note the legacy alias: the code reads data_views.conversation || data_views.chat and has
a separate branch for chat. New artifacts use conversation. Do not add chat, and do
not remove support for it.
LAVA has no automated test runner. A passing harness is necessary and not sufficient, because the harness cannot exercise the GUI, which is where view bugs live.
Run an actual extractor against real data, then open the resulting _lava_data.lava in the
running app and check: the view is offered at all, conversations group on the right column,
direction is right for both sent and received, ordering follows timeColumn, labels resolve
rather than showing raw identifiers, and media renders in the bubble.
Confirm the plain table view still works. It is the default for every artifact and is easy to break while adding a second view.
docs/schema/sqlite-data-v1.md says the artifact table is named from the artifact's name
value. It is not. lava_process_artifact derives it from func_name, and falls back to
artifact_name only for modules that predate that parameter. Trust the code.
© abrignoni, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/lava-data-view of abrignoni/VLEAPP.
Open the folder on GitHubat commit eada9a9
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders. This page covers the copy in abrignoni/VLEAPP, which our catalogue first saw on October 7, 2026.
Lava Data View next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Lava Data View this skillabrignoni/VLEAPP | 118 | — | ~1.1k | Automated safety check: Pass | MIT | |
| Excel and CSV Data Analysisbytedance/deer-flow | 83k | 4 repos | ~2.2k | Automated safety check: Pass | MIT | |
| Clickhouse Logs Queriessupabase/supabase | 111k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Review PRapache/shardingsphere | 21k | — | ~6.4k | Automated safety check: Pass | Apache-2.0 | |
| Django Filter Benchmarksaleor/saleor | 23k | — | ~2.3k | Automated safety check: Pass | BSD-3-Clause | |
| Geoflowyaojingang/GEOFlow | 3.8k | — | ~722 | Automated safety check: Pass | AGPL-3.0 |
bytedance/deer-flow
Analyzes uploaded Excel and CSV files with SQL through DuckDB, producing schema inspections, statistical summaries and exports to CSV, JSON or Markdown.
supabase/supabase
Write, review, and migrate Supabase logs queries against the ClickHouse-backed logs table (the logs.all.otel analytics endpoint).
apache/shardingsphere
Review Apache ShardingSphere or user-authorized downstream pull requests and PR discussions from public or authorized repository evidence.
saleor/saleor
Benchmarks Django ORM filters in Saleor by generating bulk data, extracting the SQL and running EXPLAIN ANALYZE to check index usage.
yaojingang/GEOFlow
Operate/develop GEOFlow CLI/Laravel/admin/API, topics/专题 and topic tasks, theme libraries/replication, sites/leads/Agent, channel sync and legacy yao-geoflow-cli/design/template migration.
AvdLee/RocketSimApp
When the user wants help with revenue operations, lead lifecycle management, or marketing-to-sales handoff processes.
abrignoni/VLEAPP
Write, rework, review or audit a LEAPP artifact module. An agent skill from abrignoni/VLEAPP.
abrignoni/VLEAPP
Run a LEAPP tool end to end against a real extraction to validate artifact changes and produce a handoff.
abrignoni/VLEAPP
After fixing an artifact in one LEAPP core, find and fix the same defect in the sibling cores.
abrignoni/VLEAPP
Validate LEAPP artifact path globs against real extraction file listings before committing them.
Works with
Wire up how an artifact renders in LAVA, end to end across the producer and the viewer. Lava Data View is an agent skill from abrignoni/VLEAPP. Wire up how an artifact renders in LAVA, end to end across the producer and the viewer.
Lava Data View fits situations like: adding a conversation view to an artifact; A view renders wrong; adding a field to the LAVA schema; asked to add a module to the LAVA schema.
Run `npx skills add abrignoni/VLEAPP --skill lava-data-view -a claude-code`. Or copy the skill folder (.claude/skills/lava-data-view in abrignoni/VLEAPP) into .claude/skills/lava-data-view in your project. Claude Code loads it when a task matches its description.
Run `npx skills add abrignoni/VLEAPP --skill lava-data-view -a codex`. Or copy the skill folder (.claude/skills/lava-data-view in abrignoni/VLEAPP) into .agents/skills/lava-data-view in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add abrignoni/VLEAPP --skill lava-data-view -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lava-data-view, .gemini/skills/lava-data-view, .github/skills/lava-data-view and .opencode/skills/lava-data-view in your project.
SKILL.md names no scripts, command-line tools or credentials: Lava Data View is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Lava Data View is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.1k tokens (SKILL.md is roughly 4.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Lava Data View: Excel and CSV Data Analysis (bytedance/deer-flow, 83k stars), Clickhouse Logs Queries (supabase/supabase, 111k stars), Review PR (apache/shardingsphere, 21k stars) and Django Filter Benchmark (saleor/saleor, 23k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
abrignoni (a GitHub user) maintains it in abrignoni/VLEAPP, which has 118 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 7, 2026.
Source: abrignoni/VLEAPP on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.