Install any skill in seconds. Free to start, no credit card required.
Get Started Free →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で申告", "作成コーナーに入力", "確定申告書等作成コーナー", "作成コーナー", "申告書を提出".
.claude/skills/kazukinagata-e-tax/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-11 | ✗→✓ | ▲ Improved | 1066% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 586% | 0% |
| case-08 | ✗→✓ | ▲ Improved | 552% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 1115% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 823% | 0% |
shinkoku で計算した確定申告データを、確定申告書等作成コーナー(https://www.keisan.nta.go.jp/)に Claude in Chrome を使ってブラウザ上で入力・提出するためのスキル。
/income-tax スキルで所得税の計算が完了していること/settlement スキルで決算書(PL/BS)の作成が完了していること/consumption-tax スキルで消費税の計算が完了していること(該当者のみ)shinkoku.config.yaml が設定済みであること確定申告書等作成コーナーへの入力には、以下の3つの方式がある。
| 項目 | 内容 | |-----|------| | 対象環境 | Windows / macOS のネイティブ Chrome | | 前提 | Claude in Chrome 拡張機能がインストール済み | | 利点 | OS 検出の問題なし。追加設定不要 |
| 項目 | 内容 | |-----|------| | 対象環境 | Windows / macOS / Linux(Antigravity IDE) | | 前提 | Antigravity IDE がインストール済みで browser_subagent ツールが利用可能 | | 利点 | ネイティブ Chrome を使用するため OS 偽装不要。Linux でも動作 |
| 項目 | 内容 | |-----|------| | 対象環境 | 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 の『ブラウザ自動化』セクションを参照してください。」Antigravity の browser_subagent は高レベルなタスク記述で操作する。 各ステップの入力操作を自然言語で記述し、browser_subagent に委任する。
例:
※ Antigravity はネイティブ Chrome を使用するため、etax-stealth.js による OS 偽装は不要。
Playwright CLI でブラウザを開く際の手順:
PLAYWRIGHT_MCP_INIT_SCRIPT=skills/e-tax/scripts/etax-stealth.jsplaywright-cli -s=etax open <url> --headed --browser=chrome-s=etax セッション指定で実行shinkoku.config.yaml を Read ツールで読み込む/setup スキルの実行を案内して終了する.shinkoku/progress/progress-summary.md を 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 — 課税判定結果.shinkoku/progress/10-etax.md の status を確認する:status: interrupted の場合 → 下記「中断・再開プロトコル」の 再開手順 に従うstatus: completed の場合 → ユーザーに完了済みである旨を伝え、再実行の意図を確認する/income-tax や /settlement の実行を案内する全ステップ共通のルール。ユーザーが中断を要求した場合(「中断したい」「今日はここまで」「また続きから」等)、以下の手順に従う。
作成コーナーの入力データを .data ファイルとして保存することを推奨します。
画面上部の「入力データの一時保存」ボタン(またはページ下部の「ここまでの入力データを保存する」リンク)
をクリックし、ファイルをダウンロードしてください。
ダウンロードが完了したら「ダウンロード済み」を選択してください。.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からやり直す.shinkoku/progress/10-etax.md で status: interrupted を検出した場合:
last_completed_step, data_file_saved)を読み取る前回の e-Tax 入力はステップ{N}で中断されています。
再開方法を選択してください。data_file_saved: true の場合のみ表示).data ファイルのアップロードを案内last_completed_step の次のステップから再開する確定申告書等作成コーナーへの入力に必要なデータが揃っているか検証する。
[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') │
└──────────────┬──────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ CC-AE-600 マイナポータル連携の選択 │
│ → 「マイナポータル連携を利用しない」 │
└──────────────┬──────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ CC-AA-024 e-Taxを行う前の確認 │
│ → 「利用規約に同意して次へ」 │
└──────────────┬──────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────┐
│ CC-AA-440 QRコード認証 │
│ ★ ユーザーの物理的認証が必要 │
│ スマートフォンでQRコード読み取り │
│ → マイナンバーカード認証完了後、自動遷移 │
└──────────────┬──────────────────────────────────────┘
▼
┌───────┴───────┐
▼ ▼
決算書コーナー 所得税コーナー
(事業所得あり) (給与のみ等)/kessan/ac/r7/top → ac0300(種類選択)→ aa0200(P/L入力)
→ aa0100(青色特別控除)→ preAoiroCalc(B/S入力)
→ aa0700(所得確認)→ ac0500(住所氏名)→ 印刷/保存
→ 所得税コーナーへ遷移SS-AA-010a(所得選択)→ SS-AA-050(収入入力ハブ)
→ SS-CA-010(給与入力) / SS-CB-xxx(事業所得) / 雑所得
→ SS-AA-070a(控除1/2)→ SS-AA-080(控除2/2)
→ SS-AA-090(計算結果確認)
→ SS-AC-010a(納付方法)→ SS-AC-020a(住民税等)
→ SS-AC-030(基本情報)→ SS-AC-040(マイナンバー)
→ ステップ5.5(意思決定ゲート)→ ステップ6(電子署名・送信プロトコル)所得税完了 → 「消費税の申告書作成はこちら」
2割特例:
ac0100(条件判定) → ac0250(所得区分選択) → 売上入力hub → 売上入力detail
→ 売上入力hub → 中間納付 → ac0300(計算結果) → 納税地等
→ ステップ6.5(電子署名・送信プロトコル)
簡易課税:
ac0100(条件判定) → ac0250(所得区分・事業区分選択) → 売上入力hub → 売上入力detail
→ 売上入力hub → ak2140(仕入税額控除方式選択)※ → 中間納付 → ac0300(計算結果)
→ 納税地等 → ステップ6.5(電子署名・送信プロトコル)
※ 2種以上の事業がある場合のみ
一般課税:
ac0100(条件判定) → ac0250(所得区分選択) → 売上・仕入入力hub → 売上入力detail
→ ai3610(決算額テーブル)※ → 売上・仕入入力hub → 中間納付 → ac0300(計算結果)
→ 納税地等 → ステップ6.5(電子署名・送信プロトコル)
※ 積上げ計算選択時のみhttps://www.keisan.nta.go.jp/kyoutu/ky/sm/top_web#bsctrl
画面番号: CC-AA-010
doSubmitCSW0100('1','3','/ky/sm/csw0100_myno_qr')画面番号: CC-AE-090
選択肢(令和7年分):
doSubmitCMW0900(1,'25')doSubmitCMW0900(2,'25') ← 事業所得ありの場合doSubmitCMW0900(3,'25')doSubmitCMW0900(4,'25')判断基準:
→ 「マイナポータル連携を利用しない」 をクリック
→ 「利用規約に同意して次へ」 をクリック
※ 環境チェック termnalInfomationCheckOS_myNumberLinkage() が実行される。 Windows/macOS の Chrome/Edge であれば問題なし。
★ ユーザー操作待ち — ブラウザ操作を一時停止
この画面ではエージェントがブラウザを操作してはならない。 AskUserQuestion ツールで一時停止し、ユーザーが認証完了を報告するまで絶対に次のステップに進まないこと。
AskUserQuestion で以下を表示する:
QRコード認証画面が表示されました。
スマートフォンのマイナポータルアプリでQRコードを読み取り、
マイナンバーカードで認証してください。
認証が完了したら「認証完了」を選択してください。認証完了後、自動的に次の画面に遷移する。
⚠️ Playwright CLI 使用時の注意: PLAYWRIGHT_MCP_INIT_SCRIPT 環境変数で etax-stealth.js を指定することで サーバーベイク関数パッチが自動適用されるが、QR コードが表示されない場合はコンソールで getClientOS() の 戻り値を確認し、'Windows' でなければ以下を手動実行する:
javascriptwindow.getClientOS = function() { return 'Windows'; }; displayQrcode();
> ⚠️ ネイティブダイアログ注意: 「次へ」クリック後に画面が遷移しない場合、ネイティブダイアログ(alert/confirm)が表示されている可能性がある。技術的な知見の「ネイティブダイアログの検知と対処」を参照。
ラジオボタン:
URL: https://www.keisan.nta.go.jp/kessan/ac/aa0200#bsctrl
| フィールド | name | デフォルト | |-----------|------|-----------| | 開始月 | sonekiKeisansyoFromMonth | 1 | | 開始日 | sonekiKeisansyoFromDay | 1 | | 終了月 | sonekiKeisansyoToMonth | 12 | | 終了日 | sonekiKeisansyoToDay | 31 |
「入力」ボタン → /kessan/ac/aa0201 売上仕入月別入力サブページに遷移。
aa0201 のフィールド:
uriageKingaku1〜uriageKingaku12: 月別売上siireKingaku1〜siireKingaku12: 月別仕入kajisyohi: 家事消費等zatusyunyu: 雑収入合計: uriageKingakuGokei, siireKingakuGokei
| 行 | 科目 | name(直接入力) | 備考 | |----|------|-------------------|------| | 8 | 租税公課 | sozeiKoka | | | 9 | 荷造運賃 | nidukuriUntin | | | 10 | 水道光熱費 | suidoKonetuhi | | | 11 | 旅費交通費 | ryohiKotuhi | | | 12 | 通信費 | tusinhi | | | 13 | 広告宣伝費 | kokokuSendenhi | | | 14 | 接待交際費 | settaiKosaihi | | | 15 | 損害保険料 | songaiHokenryo | | | 16 | 修繕費 | syuzenhi | | | 17 | 消耗品費 | syomohinhi | | | 18 | 減価償却費 | — | 「入力」→ /kessan/ac/init/aa0203 | | 19 | 福利厚生費 | fukuriKoseihi | | | 20 | 給料賃金 | — | 「入力」→ /kessan/ac/aa0205 | | 21 | 外注工賃 | gaichukotin | | | 22 | 利子割引料 | — | 「入力」→ /kessan/ac/aa0206 | | 23 | 地代家賃 | — | 「入力」→ /kessan/ac/aa0207 | | 24 | 貸倒金 | kasidaorekin | | | 25 | 税理士等の報酬 | keihiNiniKingaku1 | 科目名: keihiNiniKamoku1 | | 26 | 震災関連経費 | keihiNiniKingaku2 | 科目名: keihiNiniKamoku2 | | 27-30 | 任意科目 | keihiNiniKingaku3〜6 | 科目名: keihiNiniKamoku3〜6 | | 31 | 雑費 | zappi | |
集計 hidden フィールド: keihiSannyugakuGokei, kyuryoTinginTotalGokei, risiWaribikiryoGokei, tidaiYatinGokei
kurimodosiNiniKamoku1/kurimodosiNiniKingaku1kurimodosiNiniKamoku2/kurimodosiNiniKingaku2senjusyaKyuyoTotalGokei (hidden、「入力」ボタンで別画面)kasidaoreKuriireGokei (hidden)disp_aoiroKojomaeSyotokuKingaku = 売上 - 売上原価 - 経費 + 繰戻額 - 専従者給与等Q&A形式で控除額を選択:
| 選択肢 | value | 条件 | |--------|-------|------| | 10万円 | 2 | | | 55万円 | 3 | | | 65万円 | 1 | e-Tax送信が必須。書面提出ではエラー KS-E10089 |
フィールド: aoiroTokubetuKojoSentakugaku
65万円を選択する場合、電子帳簿保存または e-Tax 送信が条件。
> ⚠️ ネイティブダイアログ注意: 65万円を選択して次へ進むと、書面提出の場合は KS-E10089(e-Tax送信が必要)のネイティブダイアログが表示される。画面が遷移しない場合はダイアログの有無をユーザーに確認すること。
URL: /kessan/ac/preAoiroCalc
配列形式: sisannobuTaisyohyoDetailDataList[N].kisyuKingaku / .kimatuKingaku
| index | 勘定科目 | |-------|----------| | 0 | 現金 | | 1 | 当座預金 | | 2 | 定期預金 | | 3 | その他の預金 | | 4 | 受取手形 | | 5 | 売掛金 | | 6 | 有価証券 | | 7 | 棚卸資産 | | 8 | 前払金 | | 9 | 貸付金 | | 10 | 建物 | | 11 | 建物附属設備 | | 12 | 機械装置 | | 13 | 車両運搬具 | | 14 | 工具器具備品 | | 15 | 土地 | | 16-23 | 任意科目 |
配列形式: fusainobuTaisyohyoDetailDataList[N].kisyuKingaku / .kimatuKingaku
| index | 勘定科目 | |-------|----------| | 0 | 支払手形 | | 1 | 買掛金 | | 2 | 借入金 | | 3 | 未払金 | | 4 | 前受金 | | 5 | 預り金 | | 6 | 貸倒引当金 | | 7-15 | 任意科目 | | 16 | 元入金 | | 17 | 事業主借 | | 18 | 事業主貸 | | 19 | 青色申告特別控除前の所得金額(P/Lから自動) |
重要: 資産期末合計 = 負債期末合計 が必須(KS-E40003)
> ⚠️ ネイティブダイアログ注意: 資産期末合計と負債期末合計が一致しない状態で「次へ」を押すと、KS-E40003 のネイティブダイアログが表示される。画面が遷移しない場合はダイアログの有無をユーザーに確認すること。
| フィールド | name | |-----------|------| | 郵便番号 | jitakuZip | | 都道府県 | jitakuPrefectureId | | 市区町村以下 | jitakuAddress | | 事業所住所(該当者) | jimusyoAddress | | 提出先税務署 | zeimusyoName | | 氏名漢字(姓) | nameKanjiSei | | 氏名漢字(名) | nameKanjiMei | | 業種名 | gyosyuName | | 屋号 | yago | | 提出年月日 | teisyutuYear/teisyutuMonth/teisyutuDay |
印刷・データ保存画面(/kessan/ac/submit/ac0600)の 「所得税の申告書作成はこちら」ボタンで所得税コーナーに遷移(住所氏名引継ぎ)。
> ⚠️ ネイティブダイアログ注意: このボタンをクリックすると KS-W10035(印刷を確認したか)のネイティブダイアログが表示される場合がある。画面が遷移しない場合はダイアログの有無をユーザーに確認し、「OK」をクリックするよう案内すること。
> ⚠️ ネイティブダイアログ注意: 「次へ」クリック後に画面が遷移しない場合、ネイティブダイアログ(alert/confirm)が表示されている可能性がある。技術的な知見の「ネイティブダイアログの検知と対処」を参照。
URL: https://www.keisan.nta.go.jp/r7/syotoku/taM010a40_doInitialDisplay#bbctrl
| フィールド | name | |-----------|------| | 年 | inOutDto.shnkkBirthymdYy | | 月 | inOutDto.shnkkBirthymdMm | | 日 | inOutDto.shnkkBirthymdDd |
| 所得 | name | 典型的な選択 | |------|------|-------------| | 給与 | inOutDto.kyuy | 会社員: checked | | 事業(営業等) | inOutDto.jgyoEgyoTo | 個人事業主: checked | | 事業(農業) | inOutDto.jgyoNogyo | | | 不動産 | inOutDto.fdosn | | | 雑(業務・その他) | inOutDto.ztsGyomSnt | 暗号資産等: checked | | 公的年金等 | inOutDto.kotkNnknKgyoNnknEtc | | | 退職金 | inOutDto.tasyku | | | 株式等 | inOutDto.hatoKbshkJyotRsh | | | 先物取引 | inOutDto.skmnTrhk | | | 一時 | inOutDto.ichj | |
shinkoku 対象の典型パターン:
kyuy + jgyoEgyoTo + ztsGyomSnt(暗号資産あれば)kyuy選択した所得種類ごとに入力リンクが表示される。各リンクをクリックして個別入力画面へ遷移。
> 物理的な源泉徴収票との対応: 年末調整済みと年末調整未済で別フォーム・別ラベル体系。 > 年末調整済み = A〜L(12項目)、年末調整未済 = A〜E(5項目)。 > 物理的な源泉徴収票の「給与所得控除後の金額」「所得控除の額の合計額」欄は、 > 年末調整済みフォームでは入力不要だが、年末調整未済フォームでは B(自動)・C(入力) として存在する。
URL: https://www.keisan.nta.go.jp/r7/syotoku/taS510a10_doAdd_nncyzm#bbctrl
##### 主要入力フィールド
| ラベル | name | 備考 | |--------|------|------| | A: 支払金額 | inOutDto.shhraKngk | 必須 | | B: 源泉徴収税額 | inOutDto.gnsnTyosyuZegk | 2段記載時は下段 | | E: 社会保険料等の金額 | inOutDto.sykaHknryoToKngk | | | K: 支払者の住所 | inOutDto.shhrasyJysyKysyOrSyzach | 28文字以内 | | L: 支払者の氏名又は名称 | inOutDto.shhrasyNameOrMesyo | 28文字以内 |
##### ラジオボタン(記載有無の選択)
| フィールド | ラベル | name | 値 | |-----------|--------|------|-----| | 控除対象配偶者の記載 | C | inOutDto.kojyTashoHagsyKsaUm | 1(あり)/2(なし) | | 控除対象扶養親族の記載 | D | inOutDto.kojyTashoFyoShnzkKsaUm | 1(あり)/2(なし) | | 生命保険料控除額の記載 | F※ | inOutDto.semeHknryoKojygkKsaUm | 1(あり)/2(なし) | | 地震保険料控除額の記載 | G※ | inOutDto.jshnHknryoKojygkKsaUm | 1(あり)/2(なし) | | 住宅借入金等特別控除額の記載 | H※ | inOutDto.jyutkKrirknToTkbtsKojyGkKsaUm | 1(あり)/0(なし) | | 所得金額調整控除額の記載 | I※ | inOutDto.sytkKngkTyoseKojygkKsaUm | 1(あり)/0(なし) | | 本人が障害者・寡婦等 | J※ | inOutDto.hnninSygsyKfHtriyKnroGkseKsaUm | 1(あり)/2(なし) |
> ※ F〜J のラベルはフォーム上の並び順からの推定(スクリーンショット未確認)
##### 条件付きフィールド(ラジオ/チェックで「記載あり」選択時に表示)
| ラベル | name | 表示条件 | |--------|------|----------| | B': 源泉徴収税額(内書き) | inOutDto.gnsnTyosyuZegkUchgk | チェック時 | | 社会保険料等(内書き) | inOutDto.sykaHknryoToUchgk | チェック時 | | 生命保険料控除額 | inOutDto.semeHknryoKojygk | F「記載あり」時 | | 新生命保険料金額 | inOutDto.shnSemeHknryoKngk | F「記載あり」時 | | 旧生命保険料金額 | inOutDto.kyuSemeHknryoKngk | F「記載あり」時 | | 介護医療保険料金額 | inOutDto.kagIryoHknryoKngk | F「記載あり」時 | | 新個人年金保険料金額 | inOutDto.shnKjnNnknHknryoKngk | F「記載あり」時 | | 旧個人年金保険料金額 | inOutDto.kyuKjnNnknHknryoKngk | F「記載あり」時 | | 地震保険料控除額 | inOutDto.jshnHknryoKojygk | G「記載あり」時 | | 旧長期損害保険料金額 | inOutDto.kyuCyokSngaHknryoKngk | G「記載あり」時 | | H: 住宅借入金等特別控除額 | inOutDto.jyutkKrirknToTkbtsKojyGk | H「記載あり」時 | | H': 住宅借入金等特別控除可能額 | inOutDto.jyutkKrirknToTkbtsKojyknoGk | H「記載あり」時 | | H'': 住宅借入金年末残高1回目 | inOutDto.jyutkKrirknToNnmtszndkIkkam | H「記載あり」時 | | H''': 住宅借入金年末残高2回目 | inOutDto.jyutkKrirknToNnmtszndkNkam | チェック時 | | 寡婦チェック | inOutDto.ksaArKforkf | J「記載あり」時 | | 勤労学生チェック | inOutDto.ksaArKnroGkse | J「記載あり」時 |
URL: 要確認
##### 入力フィールド
| ラベル | name | 備考 | |--------|------|------| | A: 支払金額 | inOutDto.shhraKngk | 必須 | | B: 給与所得控除後の金額 | (自動計算) | 入力不可。A から自動算出 | | C: 所得控除の額の合計額 | 要確認 | 入力欄あり。源泉徴収票に記載があれば入力 | | D: 源泉徴収税額 | inOutDto.gnsnTyosyuZegk | | | E: 住宅借入金等特別控除額 | inOutDto.jyutkKrirknToTkbtsKojyGk | |
入力リンクのハブ画面。各控除をクリックして個別入力画面に遷移。
対応控除:
対応控除:
入力内容から計算された所得税額の確認画面。
表示項目:
ここで shinkoku の計算結果と照合する(後述「ステップ5: 申告内容の確認」参照)。
各セクションに「訂正する」ボタンがあり、前画面に戻れる。
納付金額が発生した場合に表示。還付の場合は還付口座入力画面(SS-AB-010a)が表示される。
| フィールド | type | name | 備考 | |-----------|------|------|------| | 延納を届け出る | checkbox | — | 利子税がかかる旨の注意あり | | 納付方法 | select | inOutDto.nofHoho | 必須 |
納付方法の選択肢:
| value | 方法 | |-------|------| | 1 | 振替納税(期限内申告の場合に利用可) | | 2 | 電子納税(ダイレクト納付/インターネットバンキング) | | 3 | クレジットカード納付 | | 5 | コンビニ納付 | | 6 | 金融機関等での窓口納付 |
還付の場合は還付口座情報の入力:
住民税に関する設定(給与からの特別徴収 or 自分で納付 等)。
| ラベル | name | 備考 | |--------|------|------| | 氏名フリガナ(姓) | inOutDto.nameKnSe | 11文字以内 | | 氏名フリガナ(名) | inOutDto.nameKnMe | | | 氏名漢字(姓) | inOutDto.nameKnjSe | 10文字以内 | | 氏名漢字(名) | inOutDto.nameKnjMe | | | 電話番号(種別) | inOutDto.rnrkSkKbn | 自宅/勤務先/携帯 | | 電話番号(市外) | inOutDto.shgaKykbn | | | 電話番号(市内) | inOutDto.shnaKykbn | | | 電話番号(番号) | inOutDto.knyusyBngo | | | 納税地区分 | inOutDto.nozeCh | 1=住所地, 2=事業所等 | | 郵便番号 | inOutDto.yubnBngoGnzaAddress | 7桁 | | 都道府県 | inOutDto.tdofknGnzaAddress | select | | 市区町村 | inOutDto.shkcyosnGnzaAddress | 都道府県連動 select | | 丁目番地等 | inOutDto.cyomBnchToGnzaAddress | 28文字以内 | | 建物名 | inOutDto.ttmnMeGoshtsGnzaAddress | 28文字以内 | | 提出先税務署(県) | inOutDto.tesytSkZemsyTdofkn | select | | 提出先税務署 | inOutDto.tesytSkZemsyZemsy | 県連動 select | | 職業 | inOutDto.job | 11文字以内 | | 屋号・雅号 | inOutDto.ygoGgo | 30文字以内 | | 世帯主の氏名 | inOutDto.stanshNameKnj | | | 続柄 | inOutDto.stanshKrTsdkgr | select | | 提出年月日 | inOutDto.tesytYmdYy/Mm/Dd | |
マイナンバー(12桁)を入力する画面。チェックディジットアルゴリズムによる検証あり。
> ⚠️ ネイティブダイアログ注意: 「次へ」クリック後に画面が遷移しない場合、ネイティブダイアログ(alert/confirm)が表示されている可能性がある。技術的な知見の「ネイティブダイアログの検知と対処」を参照。
所得税申告書の完了後、「他の申告書等を作成する」→ doSubmitCSW0900(3,'25') で消費税コーナーに遷移。
URL: https://www.keisan.nta.go.jp/syouhi/ac0100/submit.htmj#bsctrl
| フィールド | name | 備考 | |-----------|------|------| | 基準期間の課税売上高 | kijunKazeiUriage | R5年分 | | インボイス発行事業者 | invoice | true/false | | 簡易課税制度選択 | kani | true/false | | 経理方式 | zeikomi | 税込/税抜 |
| フィールド | name | 備考 | |-----------|------|------| | 新たに課税事業者か | newKazeiJigyosya | true/false | | 2割特例を適用するか | niwariTokurei | true/false |
| フィールド | name | 備考 | |-----------|------|------| | 仕入税額の計算方法 | siireKeisanHouhou | warimodosi/tumiage |
kijunKazeiUriage(基準期間の課税売上高)の値によって表示される選択肢が変化する:
| 条件 | 新規課税事業者? | 2割特例? | 簡易課税? | |------|---------------|---------|---------| | 基準期間=0, invoice=はい | 表示 | 表示 | 非表示 | | 基準期間=3,000,000, invoice=はい | 表示 | 表示 | 表示 | | 基準期間=60,000,000, invoice=はい | 非表示 | 非表示 | 表示 |
一般課税のみ: 「税額の計算方法として積上げ計算を選択する方」ボタン(折りたたみセクション内)
| 条件 | 遷移先ルート | |------|-------------| | インボイス=はい & 2割特例=はい | 2割特例 | | 簡易課税=はい | 簡易課税 | | 上記以外 | 一般課税 |
URL: https://www.keisan.nta.go.jp/syouhi/ac0250/submit.htmj#bsctrl
該当する所得区分を全て選択する。ヘッダに課税方式(一般課税/簡易課税)と経理方式(税込/税抜)が表示される。
| ラベル | name | 備考 | |--------|------|------| | 事業所得(営業等) | jigyoSyotokuEigyo | メインターゲット | | 事業所得(農業) | jigyoSyotokuNogyo | | | 不動産所得 | fudosanSyotoku | | | 雑所得(原稿料等) | zatuSyotoku | | | 業務用固定資産等の譲渡所得 | jotoSyotoku | 一般課税のみ表示 |
簡易課税の場合、各所得区分に対して事業区分(第1種〜第6種)のサブ選択がある:
| フィールド | name | 備考 | |-----------|------|------| | 事業区分(第1種) | jigyoSyotokuEigyoJigyoKubun1 | 卸売業 | | 事業区分(第2種) | jigyoSyotokuEigyoJigyoKubun2 | 小売業 | | 事業区分(第3種) | jigyoSyotokuEigyoJigyoKubun3 | 製造業等 | | 事業区分(第4種) | jigyoSyotokuEigyoJigyoKubun4 | その他 | | 事業区分(第5種) | jigyoSyotokuEigyoJigyoKubun5 | サービス業等 | | 事業区分(第6種) | jigyoSyotokuEigyoJigyoKubun6 | 不動産業 |
| フィールド | name | 備考 | |-----------|------|------| | 業務用固定資産等の購入がある | gyomuyosisanKonyu | checkbox |
URL パターン:
/syouhi/at3600/inputEigyo.htmj/syouhi/ak3600/inputEigyo.htmj/syouhi/ai3600/inputEigyo.htmj| フィールド | name | 備考 | |-----------|------|------| | 売上(収入)金額 | uriageWari | 必須。税込総額 | | 免税売上 | menzeiUriageWari | | | 非課税売上 | hikazeiUriageWari | | | 不課税取引 | jigyoFukazeiUriageWari | | | 軽減税率(6.24%)適用分 | kazeiUriage624PercentWari | | | 返還等対価(軽減) | uriageTaikaKeigen.uriageTaika624Percent | | | 返還等対価(標準) | uriageTaikaKeigen.uriageTaika78Percent | | | 貸倒れ発生(軽減) | kasidaoreKeigen.occurredKasidaore624Percent | 2割特例・簡易課税のみ | | 貸倒れ発生(標準) | kasidaoreKeigen.occurredKasidaore78Percent | 2割特例・簡易課税のみ | | 貸倒れ回収(軽減) | kasidaoreKeigen.recoveredKasidaore624Percent | 2割特例・簡易課税のみ | | 貸倒れ回収(標準) | kasidaoreKeigen.recoveredKasidaore78Percent | 2割特例・簡易課税のみ | | 貸倒れ発生有無 | kasidaore.occurredKasidaoreAns | 2割特例・簡易課税のみ (radio) |
| フィールド | name | 備考 | |-----------|------|------| | 非課税返還 | uriageTaikaKeigen.hikazeiHenkan | | | 非課税資産の輸出等返還 | uriageTaikaKeigen.hikazeiSisanHenkan | |
| name | 備考 | |------|------| | chukanNofuZei | 中間納付消費税額 | | chukanNofuJotoWari | 中間納付譲渡割額 |
URL: /syouhi/ai3610/submit.htmj
積上げ計算選択時のみ表示される大規模フォーム(194項目)。 青色申告決算書の各勘定科目に対して、決算額・課税取引金額・軽減税率分・免税事業者等取引分を入力。
フィールド名パターン: {科目略称}{列略称}Wari (割戻し) / {科目略称}{列略称}Tumi (積上げ)
列略称: Kessan(決算額), KazeiIgai(課税取引にならないもの), Keigen624(軽減税率分), MenzeiKeigen(免税事業者等/軽減), Menzei(免税事業者等/標準)
| 科目 | プレフィックス | |------|---------------| | 仕入金額 | siire | | 租税公課 | sozeiKoka | | 荷造運賃 | nidukuri | | 水道光熱費 | suido | | 旅費交通費 | ryohi | | 通信費 | tusin | | 広告宣伝費 | kokoku | | 接待交際費 | settai | | 損害保険料 | songai | | 修繕費 | syuzen | | 消耗品費 | syomohin | | 減価償却費 | genkasyokyaku | | 福利厚生費 | fukurikosei | | 給料賃金 | kyuryo | | 外注工賃 | gaichu | | 利子割引料 | risiWaribiki | | 地代家賃 | jidai | | 貸倒金 | kasidaore | | 任意科目 | niniKamoku25〜30 | | 雑費 | zappi |
| フィールド | name | 内容 | |-----------|------|------| | 発生した貸倒金 | kasidaoreKeigen.occurredKasidaoreAns | radio | | 回収した貸倒金 | kasidaoreKeigen.recoveredKasidaoreAns | radio | | 保税地域からの引取貨物 | hozeiKeigenIppan.hozeiAns | radio | | 課税仕入れに係る対価の返還等 | siireTaikaKeigenIppan.siireTaikaAns | radio | | 課税事業者になった方の棚卸高調整 | tanaorosiKeigenIppan.oldMenzeiJigyoshaAns | radio | | 免税事業者になる方の棚卸高調整 | tanaorosiKeigenIppan.newMenzeiJigyoshaAns | radio |
URL: /syouhi/ak2140/submit.htmj
2種以上の事業を営む場合に表示される。以下から選択:
全ルート共通の結果画面。ヘッダ部で「2割特例」「簡易課税」「一般課税」を表示。
表示項目:
URL パターン(ルートごとに異なる):
/syouhi/at1400/submit.htmj/syouhi/ak1400/submit.htmj/syouhi/ai1400/submit.htmj画面は全ルートで同一構造(pageId=ac0400)。
| フィールド | name | type | 備考 | |-----------|------|------|------| | 納付方法 | nofuHohoType | select | | | 納税地区分 | nozeitiKubun | radio | | | 郵便番号1 | nozeitiZipCode1 | text | | | 郵便番号2 | nozeitiZipCode2 | text | | | 都道府県 | nozeitiPrefectureCode | select | 住所用コード: 13=東京都 | | 市区町村 | municipalityCode | select | | | 丁目番地等 | nozeiti1ElaseMunicipal | text | | | 税務署都道府県 | prefectureCode | select | 税務署用コード: 15=東京都 ← 住所と異なるコード体系! | | 税務署 | sinkokuZeimusyoCode | select | | | 氏名カナ(姓) | simeiKanaSei | text | | | 氏名カナ(名) | simeiKanaMei | text | | | 氏名漢字(姓) | simeiKanjiSei | text | | | 氏名漢字(名) | simeiKanjiMei | text | | | マイナンバー1 | myNumber1 | password | | | マイナンバー2 | myNumber2 | password | | | マイナンバー3 | myNumber3 | password | | | 電話番号1 | telNumber1 | text | | | 電話番号2 | telNumber2 | text | | | 電話番号3 | telNumber3 | text | |
⚠️ 注意: 住所の都道府県コード(nozeitiPrefectureCode: 13=東京都)と税務署の都道府県コード(prefectureCode: 15=東京都)で異なるコード体系が使用されている。
| 項目 | 2割特例 (売上5M) | 簡易課税 第5種 (売上5M) | 一般課税 (売上66M, 仕入0) | |-----|----------------|----------------------|------------------------| | 課税標準額 | 4,545,000円 | 4,545,000円 | 60,000,000円 | | 消費税額 | 354,510円 | 354,510円 | 4,680,000円 | | 控除税額 | 283,608円 (×80%) | 177,255円 (×50%) | 0円 | | 差引税額 | 70,900円 | 177,200円 | 4,680,000円 | | 地方消費税譲渡割額 | 19,900円 | 49,900円 | 1,320,000円 | | 合計納付 | 90,800円 | 227,100円 | 6,000,000円 |
| 項目 | 2割特例 | 簡易課税 | 一般課税 | |------|---------|----------|----------| | 控除税額 | 消費税額×80% | みなし仕入率 | 実額(割戻し or 積上げ) | | 仕入入力 | 不要 | 不要 | 割戻し: 不要 / 積上げ: 決算額テーブル | | URL prefix | /at | /ak | /ai |
> ⚠️ ネイティブダイアログ注意: 消費税コーナー終了時は 2段階のネイティブダイアログが表示される — #otherTax(他の申告書等を作成しますか?)と #end(終了してもよろしいですか?)。画面が遷移しない場合はダイアログの有無をユーザーに確認し、それぞれ適切にクリックするよう案内すること。
作成コーナーの確認画面で、shinkoku の計算結果と一致しているか検証する。
□ 合計所得金額が一致するか
□ 所得控除合計が一致するか
□ 課税所得金額が一致するか
□ 算出税額が一致するか
□ 税額控除が一致するか
□ 復興特別所得税が一致するか
□ 申告納税額(または還付額)が一致するか
□ 消費税の納付税額が一致するか(該当者のみ)不一致がある場合は、差異の原因を調査し、ユーザーに報告する。
★ ユーザー確認待ち — 明示的な指示なくステップ6(電子署名・送信)に進んではならない
> 2段階ゲート構造: ステップ5.5 は「送信フェーズに進むかどうかの意思決定ゲート」。 > ステップ6-3 は「送信ボタン直前の操作ゲート(AI は送信しない、ユーザーが手動で送信する)」。 > 両方のゲートを通過しない限り、送信は実行されない。
申告内容の確認が完了した時点で、以下の手順を実行する。
ユーザーに .data ファイルの保存を案内する:
申告内容の入力と確認が完了しました。
電子署名・送信に進む前に、入力データを .data ファイルとして保存することを強く推奨します。
画面上部の「入力データの一時保存」ボタン(またはページ下部の「ここまでの入力データを保存する」リンク)
をクリックし、ファイルをダウンロードしてください。AskUserQuestion で以下を表示する:
次の操作を選択してください。重要: ユーザーが「電子署名・送信に進む」を明示的に選択するまで、絶対にステップ6に進まないこと。
前提: ステップ5.5 でユーザーが「電子署名・送信に進む」を選択済みであること。この前提が満たされていない場合はステップ5.5 に戻る。
マイナンバーカードで電子署名する。署名用パスワード(6〜16桁の英数字)が必要。
★ ユーザー操作待ち — ブラウザ操作を一時停止
AskUserQuestion で以下を表示する:
電子署名の画面に進みます。
マイナンバーカードで電子署名を行ってください。
署名が完了したら「署名完了」を選択してください。電子署名完了後、送信前の最終確認ページが表示される。
★★★ 絶対に AI が送信ボタンをクリックしてはならない ★★★ ★★★ ユーザーが「送信完了」を選択するまで、一切のブラウザ操作を行わない ★★★
★ ユーザー操作待ち — ブラウザ操作を一時停止
AskUserQuestion で以下を表示する:
送信前の申告内容確認ページが表示されています。
上記の内容をご確認ください。
問題がなければ、ご自身の操作で画面上の「送信を実行する」ボタンを
クリックしてください。
送信が完了したら「送信完了」を選択してください。ユーザーが「送信完了」を選択したら:
消費税の申告が必要な場合、所得税の送信完了後に消費税コーナーで申告書を作成する(ステップ4)。 消費税の入力・確認が完了したら、以下の送信プロトコルに従う。
消費税の計算結果確認(ac0300)と納税地等の入力が完了した時点で、以下を実行する。
★ ユーザー確認待ち — 明示的な指示なく電子署名・送信に進んではならない
AskUserQuestion で以下を表示する:
消費税の申告内容の入力と確認が完了しました。
電子署名・送信に進む前に、入力データを .data ファイルとして保存することを強く推奨します。
画面上部の「入力データの一時保存」ボタンをクリックし、ファイルをダウンロードしてください。
次の操作を選択してください。重要: ユーザーが「電子署名・送信に進む」を明示的に選択するまで、絶対に送信フェーズに進まないこと。
マイナンバーカードで電子署名する。
★ ユーザー操作待ち — ブラウザ操作を一時停止
AskUserQuestion で以下を表示する:
消費税の電子署名の画面に進みます。
マイナンバーカードで電子署名を行ってください。
署名が完了したら「署名完了」を選択してください。電子署名完了後、送信前の最終確認ページが表示される。
★★★ 絶対に AI が送信ボタンをクリックしてはならない ★★★ ★★★ ユーザーが「送信完了」を選択するまで、一切のブラウザ操作を行わない ★★★
★ ユーザー操作待ち — ブラウザ操作を一時停止
AskUserQuestion で以下を表示する:
消費税の送信前確認ページが表示されています。
上記の内容をご確認ください。
問題がなければ、ご自身の操作で画面上の「送信を実行する」ボタンを
クリックしてください。
送信が完了したら「送信完了」を選択してください。ユーザーが「送信完了」を選択したら:
作成コーナーでは申告データを .data ファイルとして保存できる。
送信完了後の .data ファイルには受付番号・送信日時等の追加情報が含まれる。 ステップ5.5 で保存済みであっても、送信後に改めて .data ファイルを再保存することを推奨する。
AskUserQuestion で以下を表示する:
送信が完了しました。送信後の .data ファイルには受付番号等の情報が追加されています。
「入力データを保存する」で .data ファイルを再度ダウンロードすることを推奨します。
ダウンロードが完了したら「ダウンロード済み」を選択してください。.data ファイルがあれば、次回は「保存データを利用して作成」から途中再開できる.data ファイルから入力データを復元できるdocument.forms[formName].submit())#bsctrl(決算書コーナー)/ #bbctrl(所得税コーナー)はページ管理用<input type="button"> が多用されており、id="input_xxx" で JS .click() 操作| コーナー | URL パターン | |---------|-------------| | 共通(認証等) | /kyoutu/ky/sm/*** | | 決算書 | /kessan/ac/*** | | 所得税 | /r7/syotoku/*** | | 消費税(共通) | /syouhi/ac**** | | 消費税(2割特例) | /syouhi/at**** | | 消費税(一般課税) | /syouhi/ai**** | | 消費税(簡易課税) | /syouhi/ak**** |
doSubmitCSW0100(qrCodeReadingFlag, reportType, url) — 認証方法選択doSubmitCMW0900(zeimokuType, year) — 申告書種類選択(1=所得税, 2=決算書, 3=消費税, 4=贈与税)| コード | 内容 | 対応 | |--------|------|------| | KS-W90011 | 入力データが初期化される | OK で続行 | | KS-W90006 | 入力データをクリアする | OK で続行 | | KS-W10035 | 印刷を確認したか | OK で続行 | | KS-E10089 | e-Tax送信が必要(65万円控除) | e-Tax ルートで再実行 | | KS-E10001 | 必須入力チェック | 入力漏れを修正 | | KS-E40003 | B/S 資産期末合計 ≠ 負債期末合計 | 金額を修正 |
消費税コーナー終了時は2段階のダイアログが表示される:
#otherTax — 「他の申告書等を作成しますか?」#end — 「終了してもよろしいですか?」※ 書面提出選択時はサーベイダイアログが毎回表示される(セッション間で記憶されない)
Claude in Chrome は alert() / confirm() / prompt() によるネイティブダイアログを検知できない。 ダイアログが表示されている間、ブラウザの DOM 操作はブロックされるため、エージェントの操作が無応答になる。
ボタンクリック後に以下の状態が続く場合、ネイティブダイアログが表示されている可能性がある:
ボタンをクリックしましたが、画面が遷移しません。
ブラウザにポップアップ(確認ダイアログ)が表示されていませんか?
表示されている場合は、ダイアログの内容(コード番号がある場合はそれも)を教えてください。| 操作 | 想定ダイアログ | ステップ | |------|--------------|---------| | 「次へ進む」クリック全般 | KS-E10001(必須入力チェック) | 2, 3, 4 | | 65万円控除の選択 | KS-E10089(e-Tax送信必須) | 2 | | B/S 入力後の「次へ」 | KS-E40003(資産≠負債) | 2 | | 決算書完了→所得税遷移 | KS-W10035(印刷確認) | 2→3 | | 消費税コーナー終了 | #otherTax + #end(2段階) | 4 | | データクリア・初期化操作 | KS-W90011, KS-W90006 | 全般 |
確定申告書等作成コーナーの推奨環境:
Linux は公式非対応。OS 検出は 2層 で行われるため、回避にも2層の偽装が必要:
termnalInfomationCheckOS_myNumberLinkage() がnavigator.platform / navigator.userAgent を検査し、Linux 環境では isTransition=false となり QR コード認証画面(CC-AA-440)への遷移がブロックされる。
User-Agent / sec-ch-ua-platform ヘッダから OS を判定し、レスポンス内の getClientOS() 関数に const os = "Linux" のようにハードコードする (サーバーサイドレンダリング)。addInitScript による navigator プロパティ偽装ではこのベイク値は変わらない。 CC-AA-440 の displayQrcode() でも getClientOS() が呼ばれ、oStUseType を決定する (Win='3', Mac='4')。Linux だと undefined になり QR コードが描画されない。
etax-stealth.js の2層偽装PLAYWRIGHT_MCP_INIT_SCRIPT 環境変数で etax-stealth.js を指定して回避可能:
bashPLAYWRIGHT_MCP_INIT_SCRIPT=skills/e-tax/scripts/etax-stealth.js \ playwright-cli -s=etax open https://www.keisan.nta.go.jp/ --headed --browser=chrome
層 1: navigator プロパティ偽装(addInitScript で実行、ページ読み込み前)
| プロパティ | 偽装値 | |-----------|--------| | navigator.platform | 'Win32' | | navigator.userAgent | Windows Chrome 131 UA | | navigator.userAgentData | Windows Chrome Client Hints | | navigator.webdriver | false | | navigator.plugins | Chrome 標準プラグイン | | navigator.languages | ['ja', 'en-US', 'en'] |
層 2: サーバーベイク関数のパッチ(DOMContentLoaded で実行、ページスクリプト後)
| パッチ対象 | 偽装値 | 目的 | |-----------|--------|------| | getClientOS() | 'Windows' | サーバーベイク値の上書き | | getClientOSVersionAsync() | 'Windows 11' | OS バージョン判定の回避 | | isRecommendedOsAsEtaxAsync() | true | 推奨 OS 判定の回避 | | isRecommendedBrowserAsEtaxAsync() | 'OK' | 推奨ブラウザ判定の回避 |
CC-AA-440 で QR コードが表示されない場合、displayQrcode() 内で getClientOS() が 'Linux' 等を返し、 oStUseType が undefined になっている可能性がある。
確認方法: ブラウザコンソールで getClientOS() の戻り値を確認。'Windows' でなければパッチが適用されていない。
手動対処(Playwright CLI の場合):
bashplaywright-cli -s=etax run-code 'window.getClientOS = function() { return "Windows"; }; displayQrcode();'
CC-AA-010 → CC-AE-090 → CC-AE-600 → CC-AA-024 → CC-AA-440(QR 表示確認済み)
詳細は docs/wsl-os-detection-workaround.md を参照。
全ステップ完了後、以下のファイルを Write ツールで出力する。
.shinkoku/progress/10-etax.md に以下の形式で出力する:
---
step: 10
skill: e-tax
status: completed
completed_at: "{当日日付 YYYY-MM-DD}"
fiscal_year: {tax_year}
---
# e-Tax 電子申告の結果
## 提出方法
- 確定申告書等作成コーナー(Claude in Chrome 入力代行)
## 税額サマリー
- 事業所得: {金額}円
- 課税所得: {金額}円
- 所得税額: {金額}円
- 申告納税額: {金額}円({納付/還付})
- 消費税納付額: {金額}円(該当者のみ)
## 送信結果
- 受付番号: {受付番号}
- 送信日時: {日時}
## 次のステップ
/submit で提出後のチェックリストを確認する.shinkoku/progress/progress-summary.md を更新する(存在しない場合は新規作成):
詳細なセレクタ情報・スクリーンショットは skills/e-tax/research/ ディレクトリを参照:
00-screen-flow-summary.md — 画面遷移マップ01〜05 — 認証フロー画面06〜14 — 決算書コーナー画面30〜41 — 所得税コーナー画面50〜55 — 消費税コーナー画面(初期調査)84〜87 — 消費税 2割特例(条件判定、売上入力、計算結果)89〜93 — 消費税 簡易課税(条件判定、事業区分、売上入力、控除方式、計算結果)94〜98 — 消費税 一般課税(条件判定、所得区分、売上入力、決算額テーブル、計算結果)| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-11 | fail→pass | 11,066 | 5,467 | -51% | 1 | 1 | 0% | 1,682 | 19,618 | +1066% | 0 | 0 | — |
case-01 | fail→fail | 10,937 | 3,776 | -65% | 1 | 1 | 0% | 1,760 | 19,000 | +980% | 0 | 0 | — |
case-02 | fail→fail | 11,015 | 3,130 | -72% | 1 | 1 | 0% | 1,821 | 18,920 | +939% | 0 | 0 | — |
case-03 | fail→fail | 16,037 | 2,777 | -83% | 1 | 1 | 0% | 2,602 | 18,982 | +630% | 0 | 0 | — |
case-04 | pass→fail | 20,711 | 3,252 | -84% | 1 | 1 | 0% | 4,700 | 18,947 | +303% | 0 | 0 | — |
case-05 | pass→fail | 8,770 | 3,569 | -59% | 1 | 1 | 0% | 1,482 | 18,991 | +1181% | 0 | 0 | — |
case-06 | pass→fail | 17,012 | 3,486 | -80% | 1 | 1 | 0% | 3,046 | 18,986 | +523% | 0 | 0 | — |
case-07 | fail→pass | 19,201 | 6,767 | -65% | 1 | 1 | 0% | 2,897 | 19,878 | +586% | 0 | 0 | — |
case-08 | fail→pass | 15,283 | 5,459 | -64% | 1 | 1 | 0% | 2,985 | 19,467 | +552% | 0 | 0 | — |
case-09 | fail→pass | 9,077 | 5,942 | -35% | 1 | 1 | 0% | 1,619 | 19,676 | +1115% | 0 | 0 | — |
case-10 | fail→pass | 12,533 | 7,087 | -43% | 1 | 1 | 0% | 2,142 | 19,775 | +823% | 0 | 0 | — |
case-12 | fail→pass | 12,939 | 8,210 | -37% | 1 | 1 | 0% | 2,089 | 19,907 | +853% | 0 | 0 | — |
case-13 | fail→pass | 12,559 | 8,446 | -33% | 1 | 1 | 0% | 2,277 | 20,012 | +779% | 0 | 0 | — |
case-14 | pass→pass | 16,534 | 8,839 | -47% | 1 | 1 | 0% | 2,741 | 20,191 | +637% | 0 | 0 | — |
case-15 | fail→pass | 13,994 | 6,881 | -51% | 1 | 1 | 0% | 2,177 | 19,581 | +799% | 0 | 0 | — |
case-16 | fail→pass | 12,239 | 4,697 | -62% | 1 | 1 | 0% | 2,056 | 19,531 | +850% | 0 | 0 | — |
case-17 | fail→pass | 14,824 | 4,306 | -71% | 1 | 1 | 0% | 2,704 | 19,374 | +616% | 0 | 0 | — |
case-18 | fail→pass | 14,535 | 6,383 | -56% | 1 | 1 | 0% | 2,274 | 19,937 | +777% | 0 | 0 | — |
case-19 | fail→pass | 17,825 | 8,135 | -54% | 1 | 1 | 0% | 2,929 | 20,140 | +588% | 0 | 0 | — |
case-20 | fail→pass | 13,758 | 4,414 | -68% | 1 | 1 | 0% | 2,345 | 19,284 | +722% | 0 | 0 | — |
case-21 | fail→pass | 16,924 | 5,334 | -68% | 1 | 1 | 0% | 2,681 | 19,609 | +631% | 0 | 0 | — |
case-22 | pass→pass | 11,703 | 6,852 | -41% | 1 | 1 | 0% | 2,519 | 20,079 | +697% | 0 | 0 | — |
case-23 | fail→pass | 15,874 | 6,934 | -56% | 1 | 1 | 0% | 2,602 | 19,836 | +662% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +52 percentage points is the difference between those two pass rates over the 23 comparable cases. 3 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.