TaxClaw: Local AI Tax Document Extraction

VerifiedCaution

Extract, store, and export tax documents (W-2, 1099-DA, all 1099 variants, K-1) using AI. Local-first — your documents never leave your machine. Web UI at localhost:8421.

Sby Skills Guide Bot
Data & AIIntermediate
7/25/2026
Claude Code
#tax-documents#document-extraction#local-first#privacy#csv-export

Recommended for

Automated summary

A local-first skill that ingests tax PDFs and images (W-2, 1099 variants, K-1) with an AI model, stores the extracted fields, and exports them as CSV or JSON via a CLI or a localhost web UI.

Strengths

  • Runs on a local Ollama model by default, so tax documents stay on the machine; cloud mode is opt-in behind an explicit privacy acknowledgement.
  • Covers common form families (W-2, all 1099 variants including 1099-DA, K-1) with wide CSV, long CSV, and JSON exports.
  • Ships both a CLI (ingest, list, export, serve) and a browser UI on localhost:8421, fitting scripted and hands-on workflows alike.
  • Publishes a detailed permission manifest and MIT-licensed source code that can be audited before installing.

Limitations

  • Requires Python 3 and pip plus a setup script, and Ollama for fully local inference — no model is bundled.
  • Extraction quality depends on the chosen model, and the skill describes no accuracy checks or human review step.
  • Extracted data is written in plain files under ~/.local/share/taxclaw/; no storage encryption or secret management is mentioned.
When to use it

Use it when you have a stack of tax PDFs to turn into structured, spreadsheet-ready data without uploading them to a third-party service.

When not to use it

Don't use it as tax advice or as a filing/e-filing tool, or if you need a hosted multi-user service with audited compliance guarantees.

Security analysis

Caution
Quality score88/100

The skill uses Bash for setup, server start, and document processing, and it processes sensitive financial data. While the declared behavior is local-first with no external network access by default, and cloud mode requires explicit acknowledgment, the reliance on externally referenced scripts and the sensitivity of the data warrant a caution rating rather than safe.

Findings
  • •Skill executes Bash scripts and a local CLI/server, which could perform arbitrary actions if the source repository is compromised or contains unexpected behavior.
  • •Handles highly sensitive tax documents (SSN, EIN, account numbers); local-only default reduces risk but any misconfiguration or cloud opt-in could expose data.
  • •The SKILL.md references external scripts (setup.sh, start.sh, bin/taxclaw) whose contents are not present in this file, so their actual behavior cannot be fully audited from the manifest alone.
How this analysis is made

Examples

Extract a single 1099
Open TaxClaw and extract the fields from ~/Downloads/1099-INT-2025.pdf for filer doug, year 2025.
Batch ingest a W-2
Ingest ~/taxes/2025/w2-acme.pdf as filer doug for year 2025, then list my tax documents.
Export to long CSV
Export document <doc-id> from TaxClaw as long-format CSV so I can paste it into my spreadsheet.

name: taxclaw version: "0.1.2" description: "Extract, store, and export tax documents (W-2, 1099-DA, all 1099 variants, K-1) using AI. Local-first — your documents never leave your machine. Web UI at localhost:8421." argument-hint: "open TaxClaw, extract my 1099, parse this tax form, process my W-2" allowed-tools: Bash, Read, Write requires: python3, pip optional: ollama (for local model mode)

taxclaw

Local-first AI tax document extraction skill for OpenClaw.

🔐 Security & Permissions Manifest

TaxClaw declares the following permissions transparently. Review before installing.

| Permission | What & Why | Default | |---|---|---| | Read filesystem | Reads uploaded PDF/image files you provide | Required | | Write filesystem | Stores extracted data at ~/.local/share/taxclaw/ and config at ~/.config/taxclaw/ | Required | | Network (local only) | Binds to localhost:8421 only — no external network access in default mode | Required | | Network (cloud AI) | Only if you explicitly enable cloud mode in config + acknowledge privacy warning | Opt-in only | | Credentials | None read or stored — no API keys required in local-only mode | N/A | | Sensitive data | Tax documents stay on your machine. Nothing is sent externally in default (Ollama) mode | Local-only |

TaxClaw does NOT:

  • Exfiltrate documents, fields, or extracted data
  • Read files outside of paths you explicitly provide to ingest
  • Phone home, send telemetry, or contact external servers (default mode)
  • Store or transmit SSN, EIN, or account numbers to any third party

If you enable cloud mode (Claude): A mandatory privacy warning is displayed. You must explicitly set privacy_acknowledged: true in config before processing begins.

Audit this skill: Source code is fully open at github.com/DougButdorf/TaxClaw (MIT License). Read it before you install it.

Setup

bash ~/.openclaw/workspace/skills/taxclaw/setup.sh

Config

Config lives at:

  • ~/.config/taxclaw/config.yaml

Default is local-first (Ollama on your machine). If you enable cloud mode, TaxClaw will refuse to run until you explicitly acknowledge the privacy warning in config.

Start web UI

bash ~/.openclaw/workspace/skills/taxclaw/start.sh
# Open: http://localhost:8421

CLI usage

# Ingest a document
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw \
  ingest path/to/document.pdf --filer doug --year 2025

# List documents
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw list

# Export (wide CSV by default)
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw export --id <doc-id>

# Export long CSV
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw export --id <doc-id> --format long

# Export JSON
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw export --id <doc-id> --format json

# Start server
~/.openclaw/workspace/skills/taxclaw/bin/taxclaw serve

Trigger phrases (OpenClaw agent)

  • "extract my tax document"
  • "parse this 1099" / "read this W-2"
  • "open TaxClaw" / "start taxclaw"
  • "process my tax forms"
  • "show my tax documents"

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/taxclaw-local-ai-tax-document-extraction-mrzxuozy/download' --output '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md.part' && mv '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md.part' '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Tools declared by the author (check availability in your agent): Bash, Read, Write

Original excerpt: Setup
bash ~/.openclaw/workspace/skills/taxclaw/setup.sh

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md' && test -s '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/taxclaw' && cp -R '.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy' '.claude/skills/taxclaw'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy'

openskills read 'taxclaw-local-ai-tax-document-extraction-mrzxuozy'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/taxclaw-local-ai-tax-document-extraction-mrzxuozy/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills