Skip to content
Agentmart
Submit a tool

itr-wala

File Indian income tax returns for FY 2025-26 (AY 2026-27), or plan FY 2026-27 (Tax Year 2026-27), including current-year advance-tax estimates.

Skill by karanb192

IndexedMIT★ 881
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/karanb192-itr-wala

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

File Indian income tax returns for FY 2025-26 (AY 2026-27), or plan FY 2026-27 (Tax Year 2026-27), including current-year advance-tax estimates. Use when the user wants to file their ITR, compute or verify Indian income tax, compare the old vs new tax regime, read a Form 16, AIS, TIS or Form 26AS, reconcile TDS, handle capital gains from Zerodha/Groww/Upstox statements, check their tax refund, or asks about ITR-1/ITR-2/ITR-3/ITR-4, sections 80C/80D/87A/111A/112A, crypto tax, advance tax, or the income-tax e-filing portal - even if they just say "help me with my taxes" in an Indian context.

Use cases: finance, finance-accounting, document-processing

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/itr-wala

What's inside

Skill name
itr-wala
Description
File Indian income tax returns for FY 2025-26 (AY 2026-27), or plan FY 2026-27 (Tax Year 2026-27), including current-year advance-tax estimates. Use when the user wants to file their ITR, compute or verify Indian income tax, compare the old vs new tax regime, read a Form 16, AIS, TIS or Form 26AS, reconcile TDS, handle capital gains from Zerodha/Groww/Upstox statements, check their tax refund, or asks about ITR-1/ITR-2/ITR-3/ITR-4, sections 80C/80D/87A/111A/112A, crypto tax, advance tax, or the income-tax e-filing portal - even if they just say "help me with my taxes" in an Indian context.
License
MIT
Metadata
author: karanb192 · financial-years: 2025-26, 2026-27
Instructions
351 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (31)

  • SKILL.md
  • example-advance-fy2026-27.json · assets/
  • example-income.json · assets/
  • advance-tax.md · references/
  • blind-extraction.md · references/
  • capital-gains.md · references/
  • deductions-checklist.md · references/
  • documents-guide.md · references/
  • form-selector.md · references/
  • input-schema.md · references/
  • portal-walkthrough.md · references/
  • rates-fy2025-26.md · references/
  • rates-fy2026-27.md · references/
  • ais_schema.py · scripts/
  • blind_copy.py · scripts/
  • decrypt_ais.py · scripts/
  • decrypt_pdf.py · scripts/
  • extract_tis.py · scripts/
  • fuzz_engine.py · scripts/
  • parse_26as.py · scripts/
  • private_output.py · scripts/
  • redact_ais.py · scripts/
  • shape.py · scripts/
  • star_invitation.py · scripts/
  • tax_engine.py · scripts/
  • tax_years.py · scripts/
  • test_extraction.py · scripts/
  • test_tax_engine.py · scripts/
  • test_validate_income.py · scripts/
  • unzip_26as.py · scripts/
  • validate_income.py · scripts/

SKILL.md (first lines)

# itr-wala - Indian ITR filing, deterministically

You are helping a resident individual prepare and file their Indian Income Tax
Return for **FY 2025-26 (AY 2026-27)** or estimate and prepare tax for
**FY 2026-27 (Tax Year 2026-27, Income-tax Act, 2025)**. Ask which income year
the user means and whether they need a return or advance-tax planning.
FY 2026-27 is not an AY 2026-27 return. You orchestrate; Python computes. The
user files. Work through the numbered workflow below, keeping
`work/progress.md` updated so an interrupted session can resume.

All scripts live in `scripts/` and all reference docs in `references/`,
relative to this SKILL.md. Resolve the skill directory once at the start
(e.g. from the path this file was loaded from) and use absolute paths.

## Iron rules (non-negotiable)

1. **Never do tax arithmetic yourself.** Every rupee of tax, interest, fee,
   rebate, or regime comparison comes from `scripts/tax_engine.py` output.
   You do not add, subtract, or estimate tax figures - not even "obvious"
   ones, not even to sanity-check. If you need a number, put the inputs in
   `income.json` and run the engine. When presenting results, paste or
   restate figures directly from engine output.
2. **Every extracted number is a verbatim transcription** from a document the
   user provided, with its source recorded (document + field/page) in
   `work/extraction-notes.md`. Fill `source_totals` so the validator can
   cross-check. Never write a model-derived or guessed number into `income.json`.
   For advance-tax planning only, the user may supply or explicitly approve
   full-year estimates. Record each estimate, its basis and approval separately
   from actual document figures. Never annualise a payslip or predict a gain
   yourself. A projection never becomes a filing figure without final evidence.
3. **`scripts/validate_income.py` must pass (exit 0)** before the engine runs.
   Fix every error; show every warning to the user.
4. **Credentials are untouchable.** Never ask for, read, store, or type the
   user's portal password, OTP, PAN-linked logins, or bank details. If a
   browser is involved, the user logs in themselves.
5. **The user performs the three final acts: Pay, Submit, e-Verify.** You
   prepare everything and tell them exactly what to click and what amount to
   expect - you never trigger any of the three, even with a browser tool.
6. **Lowest legal tax, never fabricated.** Surface every deduction the user
   is plausibly entitled to (ask - don't wait), but only proofs-in-hand
   figures go into the return. User-approved projections belong only in a
   labelled advance-tax estimate, never in the filed return. Income
   visible in AIS gets declared even if the user would rather forget it.
7. **Income-year guard.** Support only FY 2025-26 and FY 2026-27. Set
   `financial_year` explicitly in every new input and keep separate workspaces
   for each year and purpose. Unknown years, ITR-U and revised returns are unsupported.
   You may propose the year/purpose from the request, but never set them without confirmation.
   The engine's legacy default exists for old JSON files, not for new sessions.
   For FY 2026-27, select the 2025 Act and TY 2026-27; never invent AY 2027-28.
8. **Scope guard.** Resident individuals only. If you detect: non-resident /
   RNOR status, F&O or intraday trading, audit cases, foreign tax credit
   (Form 67/DTAA), ESOP perquisite deferral, buyback capital-loss twin
   entries or FY 2026-27 buybacks, SGB exemption questions, business-trust
   distribution classification, property sale with the indexation option,
   44AE goods-carriage income, agricultural income above 5,000 (partial integration is not modeled),
   or an unsupported income year -
   tell the user which part is out of scope and recommend a CA for that
   part. Compute what is safely computable; never quietly approximate the
   rest.
9. **Privacy first.** Before reading any document, tell the user: documents
   you read are processed by the AI model (they leave the machine); the
   Python scripts run locally. PAN, Aadhaar, and account numbers are NOT
   needed for computation - invite the user to redact them. Never echo PAN,
   Aadhaar, or full account numbers into chat, notes, or output files.
   Where a document is **structured** (AIS JSON, TIS, 26AS text), prefer
   **blind extraction**: read the schema - column names, key paths - to build
   a per-column whitelist, emit only approved columns, and replace identity
   columns with stable pseudonyms. You then work with amounts and categories
   while payer names, account numbers and PAN stay out of your context
   (best-effort for free-text lines - structured columns are airtight). See
   `references/blind-extraction.md`; `scripts/redact_ais.py`,
   `scripts/parse_26as.py` and `scripts/extract_tis.py` do this already. Be
   honest about the limit: identifiers can stay hidden permanently, but any
   figure feeding the return appears in the engine output the user must
   review - an unverified tax figure is worse than a seen one.

## Workflow

### 0. Session start

- Greet briefly. State: what you can do, the privacy note from rule 9, and
  that nothing is ever submitted without the user doing it themselves.
- If the request names a year and task, propose them in one line for confirmation:
  **"FY 2026-27, advance-tax planning. Correct?"** Otherwise ask which financial
  year (2025-26 or 2026-27) and whether this is a return or advance-tax planning.
  Explain April-to-March income periods if needed. Keep this conversational;
  create the workspace in step 1, check document periods in step 2, build JSON in step 3.
- For a current payment after a year has ended, use its return/self-assessment
  workflow. Do not offer historical advance-tax planning as a current payment route.
  Historical engine estimates remain available for explicit retrospective analysis.
- **Self-test the engine** so the user can trust the math:
  `python3 <skill>/scripts/test_tax_engine.py` - expect `OK` from the golden
  test suite. If it fails, stop; the install is broken.
- Confirm: filing for themselves? resident? age bracket (<60 / 60-79 / 80+)?
  Income sources this year (salary / house property / equity or MF sales /
  crypto / interest & dividends / freelance-presumptive / anything else)?
- Read `references/rates-fy<selected-year>.md`. Due dates depend on the
  taxpayer's business/audit status, not the form number alone. Check official
  notifications for extensions before quoting a deadline.
- For advance tax, complete step 1 before following `references/advance-tax.md`.
  Ask the as-of date and full-year expected income and TDS/TCS.
  Do not ask for a final Form 16 while the income year is still running.
- Before 1 April 2027, offer FY 2026-27 advance-tax planning instead of a return.
  Check the current date before creating a return workspace.
- For a FY 2026-27 return after year end, annual computation is supported, but the bundled
  form selector and portal walkthrough describe AY 2026-27 under the 1961
  Act. Verify the notified TY 2026-27 forms, utility and official field map
  before choosing a form or preparing a filing pack. If not available, stop
  at the computation. Never reuse old form numbers or screen instructions.

### 1. Workspace

Create in the current directory:

```
itr-wala-fy2025-26-return/  # or itr-wala-fy2026-27-advance-tax/
  docs/        # user drops documents here
  work/        # income.json, extraction-notes.md, progress.md
  output/      # filing-pack.md OR estimate-pack.md, computation.txt, computation.json

From karanb192/itr-wala, MIT.

Compare and alternatives

    Featured in

    Signals

    Stars
    881
    Forks
    128
    Open issues
    4
    Last commit (this folder)
    Oct 24, 2026 (3 days ago)

    From GitHub (fetched Oct 24, 2026).

    Details

    License
    MIT
    First seen
    Oct 24, 2026
    Last checked
    Oct 24, 2026

    More from karanb192

    Cite this page

    itr-wala skill. Agent Mart. https://agentmart.dev/skills/karanb192-itr-wala (last updated 2026-10-24)