確定申告を自動化する AI コーディングエージェント向けプラグイン。個人事業主・会社員の所得税・消費税の確定申告を、帳簿の記帳から確定申告書等作成コーナーへの入力代行までエンドツーエンドで支援します。
Claude Code Plugin として動作するほか、SKILL.md オープン標準 に準拠した Agent Skills パッケージとして、Claude Code / Cursor / Windsurf / GitHub Copilot / Gemini CLI / Codex / Cline / Roo Code / Antigravity など 40 以上の AI コーディングエージェントで利用できます。
| 対象 | 対応レベル | 備考 |
|---|---|---|
| 個人事業主(青色申告・一般用) | Full | メインターゲット。帳簿 → 決算書 → 税額計算 → 作成コーナー入力 |
| 会社員 + 副業(事業所得) | Full | 源泉徴収票 + 事業所得の税額計算 → 作成コーナー入力 |
| 給与所得のみ(会社員) | Full | 還付申告・医療費控除等 → 作成コーナー入力 |
| 消費税課税事業者 | Full | 2割特例・簡易課税・本則課税すべて対応 |
| ふるさと納税利用者 | Full | 寄附金 CRUD + 控除計算 + 限度額推定 |
| 住宅ローン控除(初年度) | Full | 控除額計算(添付書類は別途必要) |
| 医療費控除 | Full | 明細集計+控除額計算 |
| 仮想通貨トレーダー | Full | 雑所得(総合課税)として申告書に自動反映 |
以下のケースには対応していません。
| 対象 | 理由 |
|---|---|
| 株式投資家(分離課税) | 株式譲渡所得・配当の分離課税 |
| FX トレーダー | 先物取引に係る雑所得等 |
| 不動産所得 | 不動産所得用の決算書・申告 |
| 退職所得 | 退職所得控除の計算 |
| 譲渡所得(不動産売却) | 長期/短期税率、3,000万円特別控除 |
| 外国税額控除 | 外国税支払額の追跡・控除計算 |
| 農業所得・山林所得 | 専用所得区分 |
| 白色申告 | 青色申告のみ対応 |
| 非居住者 | 日本居住者専用 |
確定申告は自己責任で行ってください。
- 本ツールが生成した申告書・計算結果は、提出前に必ずご自身で内容を確認してください
- 税法の解釈や申告内容に不安がある場合は、税理士等の専門家に相談することを強く推奨します
- 本ツールの利用によって生じたいかなる損害についても、開発者は責任を負いません
- 税制は毎年改正されます。本ツールは令和7年分(2025年課税年度)の税制に基づいています
- Python 3.11 以上
- uv パッケージマネージャ
スキルが内部で shinkoku コマンドを呼び出します。通常は /setup スキルが自動でインストールしますが、手動で行う場合は以下を実行してください。
# インストール
uv tool install git+https://github.com/kazukinagata/shinkoku
# 更新
uv tool upgrade shinkokuCowork の場合は、チャットで Claude にインストールを依頼してください。
プラグイン機能を使い、OCR 画像読取を含む全機能を利用できます。
# マーケットプレイスを追加
/plugin marketplace add kazukinagata/shinkoku
# プラグインをインストール
/plugin install shinkoku@shinkokuskills CLI でスキルをインストールできます。
# スキルのインストール(インストール先エージェントを対話的に選択)
npx skills add kazukinagata/shinkoku
# 特定のエージェントにグローバルインストール
npx skills add kazukinagata/shinkoku -g -a claude-code -a cursor
# インストール可能なスキル一覧を確認
npx skills add kazukinagata/shinkoku --list
| 環境 | 設定方法 |
|---|---|
| Claude Code | /plugin marketplace add kazukinagata/shinkoku → /plugin install shinkoku@shinkoku |
| Cowork | プラグイン > 個人用 > GitHub からマーケットプレイスを追加 > kazukinagata/shinkoku を入力してマーケットプレイスを追加し、その後表示される shinkoku プラグインをインストール |
| その他 | npx skills add kazukinagata/shinkoku でインストール(方法 2 を参照) |
/e-tax スキルでは、確定申告書等作成コーナーへの入力にブラウザ自動化が必要です。以下の3方式に対応しています。
| 方式 | 対象環境 | 備考 |
|---|---|---|
| Claude in Chrome(推奨) | Windows / macOS のネイティブ Chrome | Claude in Chrome 拡張機能が必要 |
| Antigravity Browser Sub-Agent | Windows / macOS / Linux | Antigravity IDE のブラウザ操作機能を利用 |
| Playwright CLI(β版) | WSL / Linux 等 | @playwright/cli のインストールが必要 |
Claude in Chrome を利用するには、Claude Code 起動時にフラグを付けるか、セッション内でコマンドを実行します。
# 起動時に有効化
claude --chrome
# セッション内で有効化
/chromeClaude in Chrome, Antigravity を利用する場合このステップは不要です。
# パッケージインストール
npm install -g @playwright/cli@latest
# スキルインストール(エージェントがコマンドを認識するために必要)
playwright-cli install --skills
# Chromium インストール
npx playwright install chromiumWSL の場合、GUI 表示が必要です(headed モードで Chrome を操作するため)。Windows 11 では WSLg が標準搭載されており追加設定は不要です。Windows 10 では X Server(VcXsrv 等)が必要です。
shinkoku はプラグイン(またはスキル)としてインストールして使います。このリポジトリを clone する必要はありません。
お好きなディレクトリを作業フォルダとして使ってください。確定申告に関するデータはすべてこのフォルダ内に保存されます。
# 例: 確定申告用のフォルダを作成
mkdir ~/kakuteishinkoku && cd ~/kakuteishinkoku
# git で管理する場合(推奨)
git init作業ディレクトリで /setup と入力すると、対話形式で初期設定が始まります。
/setup
セットアップでは以下が行われます:
- 設定ファイル(
shinkoku.config.yaml)の生成 .gitignoreの自動設定(git リポジトリの場合)- データベース(
shinkoku.db)の初期化
shinkoku は作業ディレクトリに以下のファイルを生成します。これらにはマイナンバー・住所・財務データ等の個人情報が含まれます。
| ファイル | 内容 |
|---|---|
shinkoku.config.yaml |
マイナンバー・電話番号・住所等の個人情報 |
shinkoku.db / shinkoku.db-wal / shinkoku.db-shm |
帳簿・仕訳の財務データ |
.shinkoku/ |
進捗ファイル(納税者情報のサマリー) |
output/ |
生成レポート |
/setup を git リポジトリ内で実行すると、これらのファイルが .gitignore に自動追加されます。ユーザーが設定した書類ディレクトリ(請求書・レシート等)も同様に追加されます。
注意:
.gitignoreに登録されていても、git add -fで強制追加するとコミットされてしまいます。個人情報を含むファイルを絶対にリモートリポジトリにプッシュしないよう注意してください。
| スキル | 説明 |
|---|---|
/setup |
初回セットアップ。設定ファイル(shinkoku.config.yaml)の生成とデータベースの初期化 |
/assess |
確定申告が必要かどうか、所得税・消費税の申告要否を判定 |
/gather |
必要書類のチェックリストと取得先を案内 |
/journal |
CSV・レシート・請求書・源泉徴収票を取り込み、複式簿記の仕訳を登録 |
/settlement |
減価償却・決算整理仕訳の登録、残高試算表・損益計算書・貸借対照表の生成 |
/income-tax |
所得税額を計算(所得控除・税額控除・復興特別所得税) |
/consumption-tax |
消費税額を計算(2割特例・簡易課税・本則課税) |
/submit |
最終確認チェックリストと提出方法(e-Tax / 郵送 / 持参)の案内 |
/e-tax |
確定申告書等作成コーナーへの入力代行(Claude in Chrome / Playwright / Antigravity) |
| スキル | 説明 |
|---|---|
/tax-advisor |
控除・節税・税制についての質問に回答する税務アドバイザー |
/furusato |
ふるさと納税の寄附金登録・一覧・削除・集計と控除限度額推定 |
/invoice-system |
インボイス制度関連の参照情報 |
/capabilities |
shinkoku の対応範囲・対応ペルソナ・既知の制限事項を表示 |
/incorporation |
法人成り(個人事業主から法人への移行)の税額比較・設立手続き相談 |
| スキル | 読取対象 |
|---|---|
/reading-receipt |
レシート・領収書・ふるさと納税受領証明書 |
/reading-withholding |
源泉徴収票 |
/reading-invoice |
請求書 |
/reading-deduction-cert |
控除証明書(生命保険料・地震保険料等) |
/reading-payment-statement |
支払調書 |
レシート・源泉徴収票等の画像読取(/reading-* スキル)は、利用する LLM がマルチモーダル(画像認識)に対応している必要があります。これはエージェントプラットフォームではなく、接続先の LLM の能力に依存します。
- マルチモーダル LLM(Claude Opus 4.6, GPT-5.2, Gemini 3.1 等): OCR 読取可能
- テキスト専用 LLM: 手動入力が必要
2つのサブエージェントが独立に画像を読み取り、結果をクロスチェックする機能です。サブエージェントの並列実行に対応したプラットフォームで利用できます。非対応のプラットフォームでは、単一読取 + ユーザー確認にフォールバックします。
| エージェント | デュアル検証 |
|---|---|
| Claude Code | ✓ |
| Cowork | ✓ |
| Cursor 2.5+ | ✓ |
| GitHub Copilot | ✓ |
| Cline | ✓ |
| Antigravity | ✓ |
| Windsurf | — |
| Gemini CLI | △ |
| Roo Code | △ |
- △: サブエージェント機能はあるが並列実行が制限的
make test # 全テスト実行
uv run pytest tests/unit/ -v # ユニットテスト
uv run pytest tests/scripts/ -v # CLI テスト
uv run pytest tests/integration/ -v # 統合テストmake lint # Ruff lint + format + mypy
uv run ruff format --check src/ tests/ # フォーマットチェック
uv run mypy src/shinkoku/ --ignore-missing-imports # 型チェックshinkoku/
├── .claude-plugin/
│ └── plugin.json # Claude Code プラグインマニフェスト
├── .github/
│ └── workflows/
│ └── test.yml # CI パイプライン
├── skills/ # Agent Skills(SKILL.md オープン標準)
│ ├── setup/SKILL.md # 初回セットアップ
│ ├── assess/SKILL.md # 申告要否判定
│ ├── gather/SKILL.md # 書類収集
│ ├── journal/SKILL.md # 仕訳入力・帳簿管理
│ ├── settlement/SKILL.md # 決算整理・決算書作成
│ ├── income-tax/SKILL.md # 所得税計算
│ ├── consumption-tax/SKILL.md # 消費税計算
│ ├── submit/SKILL.md # 提出準備
│ ├── tax-advisor/SKILL.md # 税務アドバイザー
│ ├── furusato/SKILL.md # ふるさと納税
│ ├── e-tax/SKILL.md # e-Tax 電子申告(Claude in Chrome)
│ ├── capabilities/SKILL.md # 機能確認
│ ├── incorporation/SKILL.md # 法人成り相談
│ ├── reading-receipt/SKILL.md # OCR: レシート
│ ├── reading-withholding/SKILL.md # OCR: 源泉徴収票
│ ├── reading-invoice/SKILL.md # OCR: 請求書
│ ├── reading-deduction-cert/SKILL.md # OCR: 控除証明書
│ └── reading-payment-statement/SKILL.md # OCR: 支払調書
├── src/shinkoku/
│ ├── cli/ # CLI エントリーポイント(shinkoku コマンド)
│ │ ├── __init__.py # main() + サブコマンド登録
│ │ ├── ledger.py # 帳簿管理 CLI
│ │ ├── tax_calc.py # 税額計算 CLI
│ │ ├── import_data.py # データ取込 CLI
│ │ ├── pdf.py # PDF ユーティリティ CLI
│ │ ├── furusato.py # ふるさと納税 CLI
│ │ └── profile.py # プロファイル CLI
│ ├── tools/ # ビジネスロジック(純粋関数)
│ │ ├── ledger.py # 帳簿管理
│ │ ├── tax_calc.py # 税額計算
│ │ ├── import_data.py # データ取り込み
│ │ ├── pdf.py # PDF ユーティリティ
│ │ ├── furusato.py # ふるさと納税
│ │ └── profile.py # プロファイル取得
│ ├── models.py # Pydantic モデル定義
│ ├── db.py # SQLite DB 管理
│ ├── master_accounts.py # 勘定科目マスタ
│ ├── tax_constants.py # 税制定数
│ ├── config.py # 設定ファイル読み込み
│ ├── hashing.py # ハッシュユーティリティ
│ └── duplicate_detection.py # 重複検出ロジック
├── tests/
│ ├── unit/ # ユニットテスト
│ ├── scripts/ # CLI テスト
│ ├── integration/ # 統合テスト
│ ├── fixtures/ # テストフィクスチャ
│ └── helpers/ # テストヘルパー
├── shinkoku.config.example.yaml # 設定ファイルテンプレート
├── pyproject.toml
├── Makefile
└── uv.lock
- Python 3.11+
- SQLite(WAL モード)
- Pydantic(モデル定義・バリデーション)
- pdfplumber(PDF 読取)
- Playwright(ブラウザ自動化フォールバック — Python
playwright+ npm@playwright/cli) - PyYAML(設定ファイル読み込み)
- Ruff(lint / format)
- mypy(型チェック)
- pytest(テスト)
MIT License -- 詳細は LICENSE を参照してください。
Issue や Pull Request を歓迎します。日本語での報告・提案で構いません。
- バグ報告: Issue を作成してください。再現手順があると助かります
- 機能提案: Issue で議論した上で PR を作成してください
- PR:
mainブランチに対して作成してください。CI(lint + テスト)が通ることを確認してください