$npx -y skills add kazukinagata/shinkoku --skill settlementThis skill should be used when the user needs to perform year-end closing adjustments (決算整理), review financial statements (決算書), compute depreciation, or review their trial balance. Trigger phrases include: "決算", "決算整理", "決算書を作る", "減価償却", "試算表", "残高試算表", "損益計算書", "貸借対照表", "BS", "
| 1 | # 決算整理・決算書作成(Year-End Settlement) |
| 2 | |
| 3 | 会計年度末の決算整理仕訳を登録し、残高試算表・損益計算書・貸借対照表を確認するスキル。 |
| 4 | journal スキルで日常仕訳の入力が完了していることを前提とする。 |
| 5 | |
| 6 | ## 設定の読み込み(最初に実行) |
| 7 | |
| 8 | 1. `shinkoku.config.yaml` を Read ツールで読み込む |
| 9 | 2. ファイルが存在しない場合は `/setup` スキルの実行を案内して終了する |
| 10 | 3. 設定値を把握し、相対パスは CWD を基準に絶対パスに変換する: |
| 11 | - `db_path`: CLI スクリプトの `--db-path` 引数に使用 |
| 12 | - `output_dir`: 進捗ファイル等の出力先ベースディレクトリ |
| 13 | - 各ディレクトリ: ファイル参照時に使用 |
| 14 | |
| 15 | ### パス解決の例 |
| 16 | |
| 17 | config の `db_path` が `./shinkoku.db`、`output_dir` が `./output` で CWD が `/home/user/tax-2025/` の場合: |
| 18 | - `ledger.py trial-balance --db-path /home/user/tax-2025/shinkoku.db --input query.json` |
| 19 | - `shinkoku ledger bs --db-path /home/user/tax-2025/shinkoku.db --input query.json` |
| 20 | |
| 21 | ## 進捗情報の読み込み |
| 22 | |
| 23 | 設定の読み込み後、引継書ファイルを読み込んで前ステップの結果を把握する。 |
| 24 | |
| 25 | 1. `.shinkoku/progress/progress-summary.md` を Read ツールで読み込む(存在する場合) |
| 26 | 2. 以下の引継書を Read ツールで読み込む(存在する場合): |
| 27 | - `.shinkoku/progress/04-journal.md` |
| 28 | - `.shinkoku/progress/02-assess.md` |
| 29 | 3. 読み込んだ情報を以降のステップで活用する(ユーザーへの再質問を避ける) |
| 30 | 4. ファイルが存在しない場合はスキップし、ユーザーに必要情報を直接確認する |
| 31 | |
| 32 | ## 基本方針 |
| 33 | |
| 34 | - journal スキルでの仕訳入力が完了しているか確認してから開始する |
| 35 | - 残高試算表で勘定残高を確認し、決算整理仕訳の必要性を判定する |
| 36 | - 減価償却は references/depreciation-rules.md のルールに基づいて計算する |
| 37 | - 決算整理仕訳も登録前に必ずユーザーに確認する |
| 38 | - 最終的に貸借対照表の貸借一致を検証する |
| 39 | |
| 40 | ## 前提条件の確認 |
| 41 | |
| 42 | 決算処理を開始する前に以下を確認する: |
| 43 | |
| 44 | 1. **日常仕訳が完了しているか**: 未記帳の取引がないか確認を促す |
| 45 | 2. **会計年度**: 対象年度を確認する(例: 2025年1月1日〜12月31日) |
| 46 | 3. **青色申告の種類**: 65万円控除(複式簿記 + e-Tax/電子帳簿保存)、55万円控除(複式簿記 + 書面提出)、10万円控除(簡易帳簿) |
| 47 | 4. **前年確定申告の確認**: 以下を assess の結果または前年の申告書から確認する |
| 48 | - 予定納税の有無と金額(所得税の前払い) |
| 49 | - 純損失の繰越控除の有無 |
| 50 | - 前年の期末残高(当年の期首残高と一致するか) |
| 51 | - 前年の減価償却累計額(固定資産がある場合) |
| 52 | |
| 53 | ※ 前年データが未確認の場合は、先に assess スキルで確認するか、 |
| 54 | ユーザーに前年の確定申告書を提示してもらう。 |
| 55 | |
| 56 | ### 0-1. 期首残高の確認・設定 |
| 57 | |
| 58 | 1. `ledger.py ob-list --db-path DB --fiscal-year YEAR` で期首残高が設定済みか確認 |
| 59 | 2. **未設定の場合**、ユーザーに以下を確認: |
| 60 | - 開業初年度か?(→ 期首残高なし、スキップ) |
| 61 | - 前年の確定申告書(青色申告決算書の貸借対照表)の期末列を提示してもらう |
| 62 | - 画像/PDFの場合は OCR で読み取り |
| 63 | 3. 前年の期末残高を `ob-set-batch` で一括登録 |
| 64 | 4. 登録後、`ob-list` で内容を確認し、ユーザーに承認を得る |
| 65 | |
| 66 | ## ステップ1: 残高試算表の確認 |
| 67 | |
| 68 | ### `ledger.py trial-balance` の呼び出し |
| 69 | |
| 70 | ```bash |
| 71 | shinkoku ledger trial-balance --db-path DB_PATH --input query.json |
| 72 | ``` |
| 73 | 入力 JSON: |
| 74 | ```json |
| 75 | { |
| 76 | "fiscal_year": 2025 |
| 77 | } |
| 78 | ``` |
| 79 | 出力: |
| 80 | - `accounts`: 各勘定科目の借方合計・貸方合計・残高 |
| 81 | - `total_debit`: 借方合計 |
| 82 | - `total_credit`: 貸方合計 |
| 83 | |
| 84 | **確認項目:** |
| 85 | |
| 86 | 1. 借方合計と貸方合計が一致しているか |
| 87 | 2. 各科目の残高が妥当か(マイナス残高の有無) |
| 88 | 3. 以下の科目に残高がある場合、決算整理が必要: |
| 89 | - 仮払金(1060)→ 精算して適切な科目に振り替える |
| 90 | - 仮受金(2060)→ 内容を確定して振り替える |
| 91 | - 仮払消費税(1090)/ 未払消費税(2070)→ 消費税の計算結果を反映する |
| 92 | |
| 93 | ## ステップ2: 決算整理仕訳の登録 |
| 94 | |
| 95 | 以下の決算整理項目を順に確認・処理する。各仕訳は `ledger.py add-journal --db-path DB_PATH --input journal.json` で登録する。 |
| 96 | |
| 97 | ### 2-1. 減価償却費の計上 |
| 98 | |
| 99 | 固定資産(1100〜1160)に残高がある場合、減価償却費を計上する。 |
| 100 | |
| 101 | **計算ツールの呼び出し:** |
| 102 | |
| 103 | ```bash |
| 104 | shinkoku tax calc-depreciation --input depreciation_input.json |
| 105 | ``` |
| 106 | |
| 107 | 定額法の場合: |
| 108 | ```json |
| 109 | { |
| 110 | "method": "straight_line", |
| 111 | "acquisition_cost": 300000, |
| 112 | "useful_life": 4, |
| 113 | "business_use_ratio": 100, |
| 114 | "months": 12 |
| 115 | } |
| 116 | ``` |
| 117 | |
| 118 | 定率法の場合: |
| 119 | ```json |
| 120 | { |
| 121 | "method": "declining_balance", |
| 122 | "acquisition_cost": 300000, |
| 123 | "book_value": 200000, |
| 124 | "useful_life": 4, |
| 125 | "declining_rate": 500, |
| 126 | "business_use_ratio": 100, |
| 127 | "months": 12 |
| 128 | } |
| 129 | ``` |
| 130 | |
| 131 | **仕訳の登録:** |
| 132 | ``` |
| 133 | 借方: 減価償却費(5200) / 貸方: 該当の固定資産科目 |
| 134 | 金額: 計算された償却額 |
| 135 | ``` |
| 136 | |
| 137 | - 耐用年数は references/depreciation-rules.md を参照する |
| 138 | - 事業供用開始日が期中の場合は月割り計算を行う |
| 139 | - 一括償却資産(1160)は取得原価の1/3を計上する(3年均等償却) |
| 140 | - 家事按分がある場合は事業使用割合を乗じた金額のみ計上する |
| 141 | |
| 142 | ### 2-2. 棚卸資産の評価 |
| 143 | |
| 144 | 期末に在庫がある場合、棚卸高を計上する。 |
| 145 | |
| 146 | #### 在庫データの登録 |
| 147 | |
| 148 | まず `ledger.py list-inventory --db-path DB_PATH --input query.json` で登録済みの棚卸データを確認する。 |
| 149 | 未登録の場合は `ledger.py set-inventory --db-path DB_PATH --input inventory.json` で期首・期末の棚卸高を登録する: |
| 150 | |
| 151 | ```json |
| 152 | { |
| 153 | "fiscal_year": 2025, |
| 154 | "detail": { |
| 155 | "period": "ending", |
| 156 | "amount": 200000, |
| 157 | "method": "cost", |
| 158 | "details": "品目の明細等" |
| 159 | } |
| 160 | } |
| 161 | ``` |
| 162 | |
| 163 | #### 棚卸仕訳の登録 |
| 164 | |
| 165 | ``` |
| 166 | 期末棚卸仕訳: |
| 167 | 借方: 棚卸資産(1030) / 貸方: 仕入(5001) 金額: 期末棚卸高 |
| 168 | |
| 169 | 期首棚卸仕訳(翌期首に自動振替する場合の備忘): |
| 170 | 借方: 仕入(5001) / 貸方: 棚卸資産(1030) 金額: 期首棚卸高 |
| 171 | ``` |
| 172 | |
| 173 | - 期末の在庫数量と単価をユーザーに確認する |
| 174 | - 評価方法(最終仕入原価法等)を確認する |
| 175 | - **売上原価の計算**: 期首棚卸高 + 仕入高 - 期末棚卸高 |
| 176 | - 登録した棚卸データは `ledger.py pl` と青色申告決算書 PDF に自動反映される |
| 177 | |
| 178 | ### 2-3. 未払費用の計上 |
| 179 | |
| 180 | 年度末時点で発生しているが未払いの費用を計上する。 |
| 181 | |
| 182 | ``` |
| 183 | 借方: 該当の費用科目 / 貸方: 未払費用(2031) |
| 184 | ``` |
| 185 | |
| 186 | - 12月分の家賃(翌月払いの場合) |
| 187 | - 12月分の通信費・光熱費 |
| 188 | - 社会保険料の未払い分 |
| 189 | |
| 190 | ### 2-4. 前払費用の計上 |
| 191 | |
| 192 | 翌期分を当期に支払い済みの場合、前払費用に振り替える。 |
| 193 | |
| 194 | ``` |
| 195 | 借方: 前払費用(1041) / 貸方: 該当の費用科目 |
| 196 | ``` |
| 197 | |
| 198 | - 年払いの保険料のうち翌期対応分 |
| 199 | - 年払いのサブスクリプション料金のうち翌期対応分 |
| 200 | |
| 201 | ### 2-5. 売掛金・買掛金の確認 |
| 202 | |
| 203 | - 売掛金(1010)残高と未回収の請求書一覧が一致するか確認する |
| 204 | - 買掛金(2001)残高と未払いの仕入先一覧が一致するか確認する |
| 205 | - 回収不能な売掛金がある場合は貸倒金(5260)への振替を検討する |
| 206 | |
| 207 | ### 2-6. 事業主勘定の確認 |
| 208 | |
| 209 | - 事業主貸(1200): 事業資金から個人利用分の合計 |
| 210 | - 事業主借(3010): 個人資金から事業利用分の合計 |
| 211 | - これらは決算で相殺しない(翌期首に元入金で繰越処理する) |
| 212 | |
| 213 | ## ステップ2.7: 地代家賃の内訳登録 |
| 214 | |
| 215 | 事業で地代家賃を計上している場合、内訳を登録する(青色申告決算書の添付資料)。 |
| 216 | |
| 217 | ### `ledger.py add-rent-detail` の呼び出し |
| 218 | |
| 219 | ```bash |
| 220 | shinkoku ledger add-rent-detail --db-path DB_PATH --input rent.json |
| 221 | ``` |
| 222 | 入力 JSON: |
| 223 | ```json |
| 224 | { |
| 225 | "fiscal_year": 2025, |
| 226 | "detail": { |
| 227 | "property_type": "自宅兼事務所", |
| 228 | "usage": "自宅兼事務所", |
| 229 | "landlord_name": "賃貸先の名称", |
| 230 | "landlord_address": "賃貸先の住所", |
| 231 | "monthly_rent": |