xl — community community, ide skills, Claude Code, Cursor, Windsurf

v1.0.0
GitHub

About this Skill

Perfect for Data Analysis Agents needing interactive Excel workbook exploration and modification capabilities. Claude Code skill for interacting with running Excel workbooks

jamtho jamtho
[0]
[0]
Updated: 3/5/2026

Agent Capability Analysis

The xl skill by jamtho is an open-source community AI agent skill for Claude Code and other IDE workflows, helping agents execute tasks with better context, repeatability, and domain-specific guidance.

Ideal Agent Persona

Perfect for Data Analysis Agents needing interactive Excel workbook exploration and modification capabilities.

Core Value

Empowers agents to interact with open Microsoft Excel workbooks using the `xl.exe` CLI tool, enabling spreadsheet exploration, formula analysis, and data modification through natural conversation, leveraging JSON output for seamless integration.

Capabilities Granted for xl

Listing available workbooks and their target IDs
Exploring and analyzing Excel spreadsheet formulas
Modifying data within open Excel workbooks

! Prerequisites & Limits

  • Requires `xl.exe` CLI tool installation
  • Microsoft Excel must be installed and running
Labs Demo

Browser Sandbox Environment

⚡️ Ready to unleash?

Experience this Agent in a zero-setup browser environment powered by WebContainers. No installation required.

Boot Container Sandbox

xl

Install xl, an AI agent skill for AI agent workflows and automation. Works with Claude Code, Cursor, and Windsurf with one-command setup.

SKILL.md
Readonly

Excel Exploration Skill

You can interact with open Microsoft Excel workbooks using the xl.exe CLI tool. This enables spreadsheet exploration, formula analysis, and data modification through natural conversation.

Session Workflow

1. Start by Listing Workbooks

Always begin by showing the user what workbooks are available:

bash
1"${CLAUDE_PLUGIN_ROOT}/bin/xl.exe" list

This returns JSON with all open Excel instances and workbooks. Each workbook has a target_id you'll use for subsequent commands.

2. Help User Select a Workbook

Present the workbooks in a readable format. Include:

  • Workbook name and path
  • Whether it has unsaved changes
  • Which one is active (if multiple)

Even if only one workbook is open, show it and confirm with the user before proceeding.

3. Explore the Workbook

Once a target is selected, gather context:

  • List sheets: xl.exe sheet list --target <id>
  • List named ranges: xl.exe name list --target <id>
  • Read specific ranges as needed

4. Respond to User Requests

Use the appropriate commands based on what the user wants to do. For modifications, always use --mode rw.

Command Reference

Listing and Discovery

List all open workbooks:

bash
1xl.exe list

List sheets in a workbook:

bash
1xl.exe sheet list --target <target_id>

List named ranges:

bash
1xl.exe name list --target <target_id>

Get named range details:

bash
1xl.exe name get --target <target_id> --name <name>

Reading Data

Read a range:

bash
1xl.exe range read --target <target_id> --sheet <sheet_name> --a1 <range>

Example:

bash
1xl.exe range read --target "excel:1234:0x000A1234:wb:0" --sheet Sheet1 --a1 A1:D10

The output includes:

  • values: 2D array of cell values
  • formulas: 2D array of formulas (null for non-formula cells)
  • types: Cell types (number, string, boolean, date_serial, error, null)

Modifying Data (requires --mode rw)

Write values to a range:

bash
1echo '{"values": [[1, 2], [3, 4]]}' | xl.exe range write --mode rw --target <target_id> --sheet <sheet_name> --a1 <range>

Write formulas:

bash
1echo '{"formulas": [["=SUM(A1:A10)"], ["=AVERAGE(B1:B10)"]]}' | xl.exe range write --mode rw --target <target_id> --sheet <sheet_name> --a1 <range>

Add a sheet:

bash
1xl.exe sheet add --mode rw --target <target_id> --sheet <new_sheet_name>

Rename a sheet:

bash
1xl.exe sheet rename --mode rw --target <target_id> --sheet <old_name> --new-name <new_name>

Delete a sheet:

bash
1xl.exe sheet delete --mode rw --target <target_id> --sheet <sheet_name>

Add a named range:

bash
1xl.exe name add --mode rw --target <target_id> --name <name> --refers-to "=Sheet1!\$A\$1:\$C\$10"

Delete a named range:

bash
1xl.exe name delete --mode rw --target <target_id> --name <name>

Save the workbook:

bash
1xl.exe workbook save --mode rw --target <target_id>

Calculation Control

Check calculation mode:

bash
1xl.exe calc status --target <target_id>

Trigger calculation:

bash
1xl.exe calc run --mode rw --target <target_id>

Set calculation mode:

bash
1xl.exe calc set --mode rw --target <target_id> --calc-mode manual 2# Options: manual, automatic, automatic_except_tables

Safety Guidelines

Read-Only Mode (Default)

By default, all commands run in --mode ro (read-only). This guarantees:

  • No writes to values, formulas, formats, or structure
  • No calculation triggers
  • No refresh of external data connections
  • No opening or closing workbooks

Read-Write Mode

Use --mode rw only when the user explicitly requests a modification. Always:

  1. Confirm the intended change with the user
  2. Report what was modified after the operation
  3. Remind user to save if they want to keep changes

Error Handling

Commands return JSON with "ok": true on success or "ok": false with error details:

  • NO_EXCEL_INSTANCE: No Excel processes running
  • WORKBOOK_NOT_OPEN: Target workbook no longer open
  • SHEET_NOT_FOUND: Sheet name doesn't exist
  • RANGE_INVALID: Invalid A1 reference
  • MODE_VIOLATION: Attempted write in read-only mode

Output Interpretation

Cell Values

  • Numbers are returned as JSON numbers
  • Strings are returned as JSON strings
  • Booleans are true/false
  • Empty cells are null
  • Dates are Excel serial numbers (days since 1899-12-30)

Formulas

  • Formulas include the leading =
  • Cells without formulas show null in the formulas array
  • Named range references in refers_to use the format =Sheet!$A$1:$B$10

Example User Prompts

Users might ask things like:

Exploration:

  • "Show me what workbooks are open"
  • "What sheets are in this workbook?"
  • "Read the data in A1:D10"
  • "What's in the Summary sheet?"
  • "What named ranges are defined?"
  • "Show me the formulas in column B"

Analysis:

  • "Find cells that reference Sheet2"
  • "What formula is in cell C5?"
  • "Show me all cells with SUM formulas"
  • "Are there any circular references?"

Modification:

  • "Add a new sheet called Results"
  • "Rename Sheet1 to RawData"
  • "Create a named range called SalesTotal for B2:B100"
  • "Write these values to A1:C3"
  • "Update the formula in D5 to use the new named range"

Refactoring:

  • "Replace hardcoded references with named ranges"
  • "Consolidate duplicate formulas"
  • "Standardize the sheet naming"

When handling these requests, break down complex tasks into steps, show the user what you find, and confirm before making changes.

<!-- This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at https://mozilla.org/MPL/2.0/. Copyright (c) 2026 James Thompson -->

FAQ & Installation Steps

These questions and steps mirror the structured data on this page for better search understanding.

? Frequently Asked Questions

What is xl?

Perfect for Data Analysis Agents needing interactive Excel workbook exploration and modification capabilities. Claude Code skill for interacting with running Excel workbooks

How do I install xl?

Run the command: npx killer-skills add jamtho/xlai/xl. It works with Cursor, Windsurf, VS Code, Claude Code, and 19+ other IDEs.

What are the use cases for xl?

Key use cases include: Listing available workbooks and their target IDs, Exploring and analyzing Excel spreadsheet formulas, Modifying data within open Excel workbooks.

Which IDEs are compatible with xl?

This skill is compatible with Cursor, Windsurf, VS Code, Trae, Claude Code, OpenClaw, Aider, Codex, OpenCode, Goose, Cline, Roo Code, Kiro, Augment Code, Continue, GitHub Copilot, Sourcegraph Cody, and Amazon Q Developer. Use the Killer-Skills CLI for universal one-command installation.

Are there any limitations for xl?

Requires `xl.exe` CLI tool installation. Microsoft Excel must be installed and running.

How To Install

  1. 1. Open your terminal

    Open the terminal or command line in your project directory.

  2. 2. Run the install command

    Run: npx killer-skills add jamtho/xlai/xl. The CLI will automatically detect your IDE or AI agent and configure the skill.

  3. 3. Start using the skill

    The skill is now active. Your AI agent can use xl immediately in the current project.

Related Skills

Looking for an alternative to xl or another community skill for your workflow? Explore these related open-source skills.

View All

widget-generator

Logo of f
f

f.k.a. Awesome ChatGPT Prompts. Share, discover, and collect prompts from the community. Free and open source — self-host for your organization with complete privacy.

149.6k
0
AI

flags

Logo of vercel
vercel

flags is a Next.js feature management skill that enables developers to efficiently add or modify framework feature flags, streamlining React application development.

138.4k
0
Browser

zustand

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI

data-fetching

Logo of lobehub
lobehub

The ultimate space for work and life — to find, build, and collaborate with agent teammates that grow with you. We are taking agent harness to the next level — enabling multi-agent collaboration, effortless agent team design, and introducing agents as the unit of work interaction.

72.8k
0
AI