Skip to content
Automation
Skill

/e-tax

This skill should be used when the user wants to file their tax return electronically via the 確定申告書等作成コーナー (NTA Tax Return Preparation Corner) using Claude in Chrome, Antigravity Browser Sub-Agent, or Playwright CLI (fallback). It guides the browser-based input of calculated tax

From plugin
shinkoku
35924 skills
Install
$ npx -y skills add kazukinagata/shinkoku --skill e-tax --agent claude-code

How 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/e-tax

Context preview

The summary Claude sees to decide when to auto-load this skill.

This skill should be used when the user wants to file their tax return electronically via the 確定申告書等作成コーナー (NTA Tax Return Preparation Corner) using Claude in Chrome, Antigravity Browser Sub-Agent, or Playwright CLI (fallback). It guides the browser-based input of calculated tax

SKILL.md

e-tax.SKILL.md
name: e-tax
description: >
  This skill should be used when the user wants to file their tax return
  electronically via the 確定申告書等作成コーナー (NTA Tax Return Preparation
  Corner) using Claude in Chrome, Antigravity Browser Sub-Agent, or Playwright CLI (fallback). It guides the
  browser-based input of calculated tax data. Trigger phrases include:
  "e-Tax提出", "電子申告", "e-Taxで申告", "作成コーナーに入力",
  "確定申告書等作成コーナー", "作成コーナー", "申告書を提出".

e-Tax 電子申告 — ブラウザ自動化による確定申告書等作成コーナー入力

shinkoku で計算した確定申告データを、確定申告書等作成コーナー(https://www.keisan.nta.go.jp/)に Claude in Chrome を使ってブラウザ上で入力・提出するためのスキル。

前提条件

  • `/income-tax` スキルで所得税の計算が完了していること
  • `/settlement` スキルで決算書(PL/BS)の作成が完了していること
  • `/consumption-tax` スキルで消費税の計算が完了していること(該当者のみ)
  • `shinkoku.config.yaml` が設定済みであること
  • **ブラウザ自動化ツール**がいずれか利用可能であること(下記「ブラウザ自動化方式の選択」参照)

ブラウザ自動化方式の選択

確定申告書等作成コーナーへの入力には、以下の3つの方式がある。

方式 A: Claude in Chrome(推奨)

| 項目 | 内容 | |-----|------| | 対象環境 | Windows / macOS のネイティブ Chrome | | 前提 | Claude in Chrome 拡張機能がインストール済み | | 利点 | OS 検出の問題なし。追加設定不要 |

方式 B: Antigravity Browser Sub-Agent

| 項目 | 内容 | |-----|------| | 対象環境 | Windows / macOS / Linux(Antigravity IDE) | | 前提 | Antigravity IDE がインストール済みで `browser_subagent` ツールが利用可能 | | 利点 | ネイティブ Chrome を使用するため OS 偽装不要。Linux でも動作 |

方式 C: Playwright CLI(フォールバック)

| 項目 | 内容 | |-----|------| | 対象環境 | WSL / Linux、または Claude in Chrome・Antigravity が利用できない環境 | | 前提 | `@playwright/cli` + Playwright CLI スキル + `etax-stealth.js`(OS 偽装スクリプト) | | 制限 | headed モード必須(QR コード認証に物理操作が必要) |

判定ロジック

1. Claude in Chrome のツール(browser_navigate 等)が利用可能か?
   → はい: 方式 A を使用
   → いいえ: 次へ

2. Antigravity の browser_subagent ツールが利用可能か?
   → はい: 方式 B を使用
   → いいえ: 次へ

3. Bash ツールで `playwright-cli` コマンドが利用可能か?
   → はい: 方式 C を使用(headed モードで起動)
   → いいえ: エラー表示

   エラーメッセージ:
   「確定申告書等作成コーナーへの入力には、Claude in Chrome、
    Antigravity Browser Sub-Agent、または Playwright CLI が必要です。
    セットアップ方法は README.md の『ブラウザ自動化』セクションを参照してください。」

方式 B 使用時の操作方法

Antigravity の `browser_subagent` は高レベルなタスク記述で操作する。 各ステップの入力操作を自然言語で記述し、`browser_subagent` に委任する。

例:

  • 「https://www.keisan.nta.go.jp/kyoutu/ky/sm/top_web#bsctrl を開く」
  • 「『マイナンバーカードをお持ちですか』で『はい』のラジオボタンをクリック」
  • 「name='sonekiKeisansyoFromMonth' の入力欄に '1' を入力」

※ Antigravity はネイティブ Chrome を使用するため、`etax-stealth.js` による OS 偽装は不要。

方式 C 使用時のセッション開始手順

Playwright CLI でブラウザを開く際の手順:

1. 環境変数を設定: `PLAYWRIGHT_MCP_INIT_SCRIPT=skills/e-tax/scripts/etax-stealth.js` 2. ブラウザ起動: `playwright-cli -s=etax open <url> --headed --browser=chrome` 3. 以降のコマンドは `-s=etax` セッション指定で実行

設定の読み込み(最初に実行)

1. `shinkoku.config.yaml` を Read ツールで読み込む 2. ファイルが存在しない場合は `/setup` スキルの実行を案内して終了する 3. 設定値を把握する:

  • 納税者プロファイル(氏名・住所・マイナンバー等)
  • 事業情報(屋号・業種等)
  • 申告方法(e-Tax/郵送/窓口)

進捗情報の読み込み

1. `.shinkoku/progress/progress-summary.md` を Read ツールで読み込む(存在する場合) 2. 以下の引継書を Read ツールで読み込む(存在する場合):

  • `.shinkoku/progress/06-settlement.md` — 決算結果(PL/BS データ)
  • `.shinkoku/progress/07-income-tax.md` — 所得税計算結果
  • `.shinkoku/progress/08-consumption-tax.md` — 消費税計算結果
  • `.shinkoku/progress/02-assess.md` — 課税判定結果

3. `.shinkoku/progress/10-etax.md` の `status` を確認する:

  • `status: interrupted` の場合 → 下記「中断・再開プロトコル」の **再開手順** に従う
  • `status: completed` の場合 → ユーザーに完了済みである旨を伝え、再実行の意図を確認する

4. 計算結果がまだ存在しない場合は、先に `/income-tax` や `/settlement` の実行を案内する

中断・再開プロトコル

全ステップ共通のルール。ユーザーが中断を要求した場合(「中断したい」「今日はここまで」「また続きから」等)、以下の手順に従う。

中断手順

1. **現在のステップの入力内容を確認する** — 未保存の入力がないか確認 2. **.data ファイルのダウンロードを案内する** — AskUserQuestion で以下を表示:

作成コーナーの入力データを .data ファイルとして保存することを推奨します。
画面上部の「入力データの一時保存」ボタン(またはページ下部の「ここまでの入力データを保存する」リンク)
をクリックし、ファイルをダウンロードしてください。

ダウンロードが完了したら「ダウンロード済み」を選択してください。
  • 選択肢: 「ダウンロード済み」 / 「スキップ(保存しない)」
  • 「スキップ」が選ばれた場合は、次回は最初からやり直しになる可能性がある旨を警告する

3. **進捗ファイルを記録する** — `.shinkoku/progress/10-etax.md` に以下の形式で Write ツールで出力:

---
step: 10
skill: e-tax
status: interrupted
last_completed_step: "{最後に完了したステップ番号(例: 3)}"
last_url: "{中断時のブラウザURL}"
data_file_saved: {true/false}
interrupted_at: "{当日日付 YYYY-MM-DD}"
fiscal_year: {tax_year}
---

# e-Tax 電子申告(中断)

## 中断時点の状況

- 最後に完了したステップ: ステップ{N}
- 中断時のURL: {URL}
- .data ファイル保存: {済/未}

## 次回の再開方法

1. `/e-tax` スキルを再実行する
2. .data ファイルがある場合は「保存データを利用して作成」から再開する
3. .data ファイルがない場合はステップ0からやり直す

4. **ユーザーに中断完了を報告** — 次回の再開方法を案内して終了する

再開手順

`.shinkoku/progress/10-etax.md` で `status: interrupted` を検出した場合:

1. 中断時の情報(`last_completed_step`, `data_file_saved`)を読み取る 2. AskUserQuestion で以下を表示:

前回の e-Tax 入力はステップ{N}で中断されています。

再開方法を選択してください。
  • 選択肢:
  • 「.data ファイルから再開する」(`data_file_saved: true` の場合のみ表示)
  • 「最初からやり直す」
  • 「中断記録を破棄して終了する」

3. **.data ファイルから再開する場合**:

  • 確定申告書等作成コーナーのトップページにアクセス
  • 「保存データを利用して作成」→「作成再開」を選択
  • `.data` ファイルのアップロードを案内
  • 読み込み完了後、`last_completed_step` の次のステップから再開する

4. **最初からやり直す場合**:

  • ステップ0 から通常通り開始する

ステップ0: 必須データの検証

確定申告書等作成コーナーへの入力に必要なデータが揃っているか検証する。

検証項目

[1] 税額計算済み
    - .shinkoku/progress/07-income-tax.md が存在し、status: completed であること

[2] プロファイル完備
    - 氏名(姓・名)が登録されているか
    - 住所が登録されているか
    - 所轄税務署名が登録されているか

[3] 決算書データ
    - PL/BS の計算結果が取得可能であること

[4] 消費税(該当者のみ)
    - .shinkoku/progress/08-consumption-tax.md が存在し、status: completed であること

[5] サニティチェック
    - `tax_calc.py sanity-check` を実行する
    - error > 0 の場合: 入力を中止し、`/income-tax` スキルで修正を促す
    - warning > 0 の場合: ユーザーに確認してから続行する

---

画面遷移フロー全体像

┌─────────────────────────────────────────────────────┐
│ CC-AA-010 税務署への提出方法の選択                      │
│   マイナンバーカード: はい → スマホ: はい               │
│   → 「スマートフォンを使用する」                        │
└──────────────┬──────────────────────────────────────┘
               ▼
┌─────────────────────────────────────────────────────┐
│ CC-AE-090 作成する申告書等の選択                        │
│   「決算書・収支内訳書(+所得税)」を選択              │
│   → doSubmitCMW0900(2,'25')                           │
│                                                         │
│   ※ 消費税のみ別途作成する場合:                        │
│   → doSubmitCMW0900(3,'25')                           │
└──────────────┬─────────────────────────────
Read more
Ships withshinkoku

確定申告を自動化する AI コーディングエージェント向けプラグイン。個人事業主・会社員の所得税・消費税の確定申告を、帳簿の記帳から確定申告書等作成コーナーへの入力代行までエンドツーエンドで支援します。 Claude Code Plugin として動作するほか、SKILL.md オープン標準 に準拠した Agent Skills パッケージとして、Claude Code / Cursor / Windsurf / GitHub Copilot / Gemini CLI / Codex / Cline / Roo

Get the whole plugin
Stats
360
Stars
34
Forks
Active
Maintenance
Python
Language
MIT
License
6d ago
Last commit
7mo ago
Created

Repo: kazukinagata/shinkoku

Other skills on shinkoku.

e-bookkeeping-compliance
Skill

e-bookkeeping-complian…

優良な電子帳簿の要件チェック・コンプライアンス診断を実行する。 「優良な電子帳簿」「電帳法対応」「電子帳簿の要件確認」 「税務調査の準備」「75万円控除の条件」「帳簿の要件を満たしているか」 「e-bookkeeping compliance」で起動。