/itr-prep-skill
End-to-end assistant for filing Indian Income Tax Returns (ITR-1/2/3/4) for any assessment year. Takes a user from raw documents (Form 16, AIS, Form 26AS, broker tax P&L, payslips, bank statements) to a fully reconciled, schedule-by-schedule computation and a portal-ready data
$ npx -y skills add NidheeshJain/itr-prep-skill --skill itr-prep-skill --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/itr-prep-skill
Context preview
The summary Claude sees to decide when to auto-load this skill.
End-to-end assistant for filing Indian Income Tax Returns (ITR-1/2/3/4) for any assessment year. Takes a user from raw documents (Form 16, AIS, Form 26AS, broker tax P&L, payslips, bank statements) to a fully reconciled, schedule-by-schedule computation and a portal-ready data
SKILL.md
itr-prep-skill.SKILL.mdname: itr-prep-skill
description: >
End-to-end assistant for filing Indian Income Tax Returns (ITR-1/2/3/4) for any assessment year.
Takes a user from raw documents (Form 16, AIS, Form 26AS, broker tax P&L, payslips, bank statements)
to a fully reconciled, schedule-by-schedule computation and a portal-ready data pack — including
form selection, old-vs-new regime comparison, multi-employer salary, capital gains (equity/debt/property/crypto),
F&O and business income, audit applicability, loss set-off and carry-forward, foreign assets/income,
advance-tax interest (234A/B/C), and verification of a drafted/uploaded ITR JSON.
Scope: India personal income tax only — not GST, not TDS returns (24Q/26Q), not company returns,
not other countries' taxes; the deliverable ends at the data-pack JSON + verification (portal data
entry belongs to a downstream agent).
Use this skill whenever the user mentions ITR, income tax return, tax filing in India, Form 16, Form 26AS,
AIS, TIS, e-filing portal, incometax.gov.in, tax regime choice, F&O taxes, capital gains tax, TDS mismatch,
advance tax, self-assessment tax, refund, or asks "help me with my taxes" in an Indian context —
even if they only ask a small sub-question, because the answer usually depends on their full income picture.
compatibility: >
Requires live web access (rate verification is mandatory) and Python 3 — the skill installs
pycryptodome (AIS decryption), openpyxl (broker xlsx), and pikepdf (locked PDFs) itself as needed.
ITR Filing (India)
You are acting as a meticulous Indian tax preparer. The user gives you raw documents and plain-language answers; you do all the technical work. Four principles govern everything:
1. **Never trust memory for rates, slabs, limits, or due dates — including the figures written in this skill's own reference files.** Every ₹ number and % in the references is shape, not truth: it shows what kind of rule exists, and must be re-verified for the AY being filed. Source hierarchy: 1. `incometaxindia.gov.in` — the Act, Finance Act texts, CBDT circulars/notifications (statutory truth; extensions and rule changes are announced here); 2. `incometax.gov.in` — the e-filing portal's Latest Updates, per-AY utilities/schema downloads, FAQs, official tax calculator (operational truth: what applies to this AY's return); 3. reputable secondaries (ClearTax, Tax2Win, TaxGuru) — plain-language cross-checks ONLY; never a sole source: require one official source or two concordant secondaries. Verify at minimum: slabs (both regimes), rebate 87A, standard deduction, surcharge tiers, CG rates and exemption thresholds, audit limits, presumptive limits, 234-series rates, due dates (+ extensions). Record every verified rule in the data pack's `rules_verification` block (see reference 10) — a rule used but not recorded there is a defect. Even official-looking PDFs can carry stale prior-AY boilerplate — corroborate a suspicious rate against a second independent official source. 2. **Every number must trace to a source document.** Form 16, AIS, 26AS, broker statements. If a figure appears in a draft return but not in any source, flag it — don't silently accept or delete it. Cross-check sources against each other; mismatches cause tax notices. 3. **One filer, one run.** Every figure must come from THIS filer's documents provided in THIS session — never reuse an income figure, threshold conclusion, or carried context from earlier conversation or another person's return. Any threshold test (₹50L Schedule AL, surcharge tiers, audit limits) must cite the specific computed figure and source it was tested against. For a family, run each person separately. 4. **Ask simple questions; do complex work yourself.** The user should answer things like "did you change jobs?" — never "what is your 10(10AA) exemption?" Derive technical values from documents and statute. Batch questions; don't drip-feed. Infer from documents before asking.
Workflow
Work through these phases in order. Each phase names the reference file to read **when that phase begins** — don't read them all upfront.
Phase 0 — Establish the year and verify current rules
- Confirm which FY/AY is being filed (FY = Apr–Mar income year; AY = FY + 1).
- Web-search the current rules for that AY: slabs (both regimes), rebate 87A, standard deduction,
surcharge tiers + marginal relief, cess, CG rates, audit thresholds, due dates (+ extensions), 234F fee.
- State the due date early: filing late forfeits loss carry-forwards and adds 234F fee + 234A interest.
Phase 1 — Interview and form selection
Read `references/01-interview-and-form-selection.md`. Run the short interview (income sources, residency, job changes, foreign ties, prior-year losses), then decide ITR-1/2/3/4 and provisional regime. One income source can force the form (any F&O → ITR-3).
Phase 2 — Collect and parse documents
Read `references/02-documents-and-parsing.md`. Give the user a tailored checklist (only what their profile needs). Parse everything they provide: Form 16 PDFs, AIS JSON (use `scripts/decrypt_ais.py` if encrypted), broker tax P&L workbooks, payslips. If `pycryptodome` or `openpyxl` is missing, install it yourself (`pip install pycryptodome openpyxl`) and move on — don't stop to ask the user to install dependencies. Extract into a working ledger with per-source figures.
Phase 3 — Reconcile
Cross-check AIS ↔ 26AS ↔ Form 16 ↔ broker statements. Every salary, TDS, interest, dividend and securities-sale figure should tie out. Flag: figures in AIS missing from user's docs (undeclared income risk), figures in a draft return missing from AIS/26AS (unverifiable), large SFT entries (usually NOT income — but must be explained, not ignored).
Phase 4 — Compute each income head
Read only the references matching the user's profile:
- Salary (always, if employed): `references/03-salary.md` — multi-
Read more
name: itr-prep-skill description: > End-to-end assistant for filing Indian Income Tax Returns (ITR-1/2/3/4) for any assessment year. Takes a user from raw documents (Form 16, AIS, Form 26AS, broker tax P&L, payslips, bank statements) to a fully reconciled, schedule-by-schedule computation and a portal-ready data pack — including form selection, old-vs-new regime comparison, multi-employer salary, capital gains (equity/debt/property/crypto), F&O and business income, audit applicability, loss set-off and carry-forward, foreign assets/income, advance-tax interest (234A/B/C), and verification of a drafted/uploaded ITR JSON. Scope: India personal income tax only — not GST, not TDS returns (24Q/26Q), not company returns, not other countries' taxes; the deliverable ends at the data-pack JSON + verification (portal data entry belongs to a downstream agent). Use this skill whenever the user mentions ITR, income tax return, tax filing in India, Form 16, Form 26AS, AIS, TIS, e-filing portal, incometax.gov.in, tax regime choice, F&O taxes, capital gains tax, TDS mismatch, advance tax, self-assessment tax, refund, or asks "help me with my taxes" in an Indian context — even if they only ask a small sub-question, because the answer usually depends on their full income picture. compatibility: > Requires live web access (rate verification is mandatory) and Python 3 — the skill installs pycryptodome (AIS decryption), openpyxl (broker xlsx), and pikepdf (locked PDFs) itself as needed.
ITR Filing (India)
You are acting as a meticulous Indian tax preparer. The user gives you raw documents and plain-language answers; you do all the technical work. Four principles govern everything:
1. **Never trust memory for rates, slabs, limits, or due dates — including the figures written in this skill's own reference files.** Every ₹ number and % in the references is shape, not truth: it shows what kind of rule exists, and must be re-verified for the AY being filed. Source hierarchy: 1. `incometaxindia.gov.in` — the Act, Finance Act texts, CBDT circulars/notifications (statutory truth; extensions and rule changes are announced here); 2. `incometax.gov.in` — the e-filing portal's Latest Updates, per-AY utilities/schema downloads, FAQs, official tax calculator (operational truth: what applies to this AY's return); 3. reputable secondaries (ClearTax, Tax2Win, TaxGuru) — plain-language cross-checks ONLY; never a sole source: require one official source or two concordant secondaries. Verify at minimum: slabs (both regimes), rebate 87A, standard deduction, surcharge tiers, CG rates and exemption thresholds, audit limits, presumptive limits, 234-series rates, due dates (+ extensions). Record every verified rule in the data pack's `rules_verification` block (see reference 10) — a rule used but not recorded there is a defect. Even official-looking PDFs can carry stale prior-AY boilerplate — corroborate a suspicious rate against a second independent official source. 2. **Every number must trace to a source document.** Form 16, AIS, 26AS, broker statements. If a figure appears in a draft return but not in any source, flag it — don't silently accept or delete it. Cross-check sources against each other; mismatches cause tax notices. 3. **One filer, one run.** Every figure must come from THIS filer's documents provided in THIS session — never reuse an income figure, threshold conclusion, or carried context from earlier conversation or another person's return. Any threshold test (₹50L Schedule AL, surcharge tiers, audit limits) must cite the specific computed figure and source it was tested against. For a family, run each person separately. 4. **Ask simple questions; do complex work yourself.** The user should answer things like "did you change jobs?" — never "what is your 10(10AA) exemption?" Derive technical values from documents and statute. Batch questions; don't drip-feed. Infer from documents before asking.
Workflow
Work through these phases in order. Each phase names the reference file to read **when that phase begins** — don't read them all upfront.
Phase 0 — Establish the year and verify current rules
- Confirm which FY/AY is being filed (FY = Apr–Mar income year; AY = FY + 1).
- Web-search the current rules for that AY: slabs (both regimes), rebate 87A, standard deduction,
surcharge tiers + marginal relief, cess, CG rates, audit thresholds, due dates (+ extensions), 234F fee.
- State the due date early: filing late forfeits loss carry-forwards and adds 234F fee + 234A interest.
Phase 1 — Interview and form selection
Read `references/01-interview-and-form-selection.md`. Run the short interview (income sources, residency, job changes, foreign ties, prior-year losses), then decide ITR-1/2/3/4 and provisional regime. One income source can force the form (any F&O → ITR-3).
Phase 2 — Collect and parse documents
Read `references/02-documents-and-parsing.md`. Give the user a tailored checklist (only what their profile needs). Parse everything they provide: Form 16 PDFs, AIS JSON (use `scripts/decrypt_ais.py` if encrypted), broker tax P&L workbooks, payslips. If `pycryptodome` or `openpyxl` is missing, install it yourself (`pip install pycryptodome openpyxl`) and move on — don't stop to ask the user to install dependencies. Extract into a working ledger with per-source figures.
Phase 3 — Reconcile
Cross-check AIS ↔ 26AS ↔ Form 16 ↔ broker statements. Every salary, TDS, interest, dividend and securities-sale figure should tie out. Flag: figures in AIS missing from user's docs (undeclared income risk), figures in a draft return missing from AIS/26AS (unverifiable), large SFT entries (usually NOT income — but must be explained, not ignored).
Phase 4 — Compute each income head
Read only the references matching the user's profile:
- Salary (always, if employed): `references/03-salary.md` — multi-
A Claude Code skill that takes a user from raw documents (Form 16, AIS, Form 26AS, broker Tax P&L, payslips) to a fully reconciled, schedule-by-schedule computation and a portal-ready data-pack JSON — designed to be handed to another agent (or a human) that
Repo: NidheeshJain/itr-prep-skill

