Source of truth for the autonomous operation of MU / 株式会社イネブラ (Enabler Inc.). Machine-readable:
store/src/main.rsreads this file viainclude_str!at compile time. Write permission: yuki@hamada.tokyo only.git logis the immutable audit trail. Last reviewed: 2026-05-12.
These 20 principles translate the 4-line Vision into machine-applicable rules.
Agents reference this section when proposing changes (self_evolve, strategist)
or auditing surfaces (vision_drift).
T1 (irreversible) or T2 (reversible) tag. T1 → governance queue. T2 → execute.autonomy_decision_log before the side effect.DRY_RUN_<name>=1. CI / staging uses dry-run.AGENT_KILL_<name>=1. Master switch: AGENT_KILL_ALL=1.self_evolve may modify allowlisted lines only (prompt text, intervals, thresholds). Anything else is T1./admin/governance (admin token gated, but visible).price_jpy is always max(1000, printful_cost × 1.2) ≤ price ≤ 100,000. active=0 flips are T1 only. Any diff touching collab_products.price_jpy / active / draft, products.sold / inventory, the Stripe webhook handler, the /api/checkout/* endpoints, or /products/* templates is T1 only and excluded from auto-merge. The checkout_health agent probes the live purchase path every 15 minutes; any 4xx/5xx is a CRITICAL alert. The funnel_anomaly agent catches silent breakage (CV drop > 50% vs 30d baseline).Agents may propose T1 actions into autonomy_governance_queue, but never execute them.
tokushoho.html, privacy.html, terms.html) body textauto_refund)inventory_rebalance capsns_post_queue (within rate limit)active=0) or unhiding itagent_journal / ai_decisions / autonomy_decision_logself_evolve PR (auto-merge gated by allowlist below)A self_evolve PR may be auto-merged only when all conditions hold:
store/src/main.rs — but only lines that are one of:
interval_secs: N,pub const *_THRESHOLD*: i64 = N; / pub const *_CAP_*: i64 = N;static/templates/messages/*.txtcargo check + tests) is greenSTRIPE, PRINTFUL_API_KEY, GEMINI_API_KEY, SECRET, password, DROP TABLE, DROP COLUMN, ALTER TABLE, DELETE FROM, unsafe, transmuteauto-merge-eligible: true and a link to the originating agent_journal entrySELF_EVOLVE_AUTO_MERGE is not set to 0Anything failing any of the above falls back to manual review.
| Category | Cap | Enforcement |
|---|---|---|
| Gemini total (all agents) | ¥30,000 | budget_check / budget_state_jpy (existing) |
| X API basic plan | ¥15,000 | hard subscription cap |
| Auto-refund total | ¥50,000 | auto_refund checks running sum before each refund |
| Inventory restock (Printful) | ¥150,000 | inventory_rebalance rolling sum |
| Ad spend (Google / Meta) | ¥30,000 | ad_spend_adjuster rolling sum (P3+) |
| Embedding API | ¥1,500 | journal_embedder skips when budget hit |
| Total ceiling | ¥276,500 | treasury agent halts new spend if 90% hit |
Cap changes require a Constitution edit (T1) which is by definition a yuki commit.
Environment variables, set at the Fly machine level (fly secrets set):
| Var | Effect |
|---|---|
MU_AUTOPILOT=0 | Existing master switch. All autonomous crons skip with log. |
AGENT_KILL_ALL=1 | All registered agents (new system) skip + log to autonomy_kill_log. |
AGENT_KILL_<NAME>=1 | Single agent skip (e.g. AGENT_KILL_AUTO_REFUND=1). |
DRY_RUN_ALL=1 | All spending agents log-only, no side effects. |
DRY_RUN_<NAME>=1 | Single agent log-only. |
SELF_EVOLVE_AUTO_MERGE=0 | Repo secret. Disables auto-merge of self_evolve PRs. |
Three-failure auto-kill: any agent that errors 3 times within 24h is paused (sets AGENT_KILL_<NAME>=1 in DB-backed flag) until governance reactivates (T1).
/admin/governance?token=… to approve / reject T1 items.status='expired' (1h tick).Every agent action (or proposed action) is written to autonomy_decision_log with:
agent_name: which agent proposed itdecision_kind: domain tag (refund, price_adjust, drop_launch, prompt_edit, …)reversibility: T1 or T2payload: full JSON of what would changeexecuted: 0 if dry-run / pending / rejected, 1 if appliedescalated: 1 if T1 raised to governancedry_run: 1 if blocked by DRY_RUN envoutcome_score: filled 30 days later by score_past_decisions agent (0.0–1.0)outcome_notes: AI's retrospective rationaleThis table is the canonical answer to "did MU make a good decision last month?"
Maintained by vision_drift agent over time. Current snapshot
(2026-05-12) — agent may extend via self_evolve PR (T1 edit to this section
requires yuki ratification):
今シーズン, 春夏新作, 今期トレンド, NEW SEASON, NEW DROP!!革命的, 華やかに, 感動の, 驚き, すごい進化, 洞察, 成果, 課題 (when used without a number)🔥🔥, ✨✨)If MU's monthly revenue falls below ¥30,000 for 3 consecutive months,
the treasury agent files a T1 proposal "wind-down" to governance.
If approved, MU enters a 30-day announcement window, all inventory goes
to SWEEP at cost, and the Fly machine spins down on day 31.
No mourning. One blog post with the final number. End.
wearmu.com shall remain registered through at least 2126-05-13
(100 years from the Constitution's first publication).
Concretely:
.com registry allows
(currently 10 years per registration). The next renewal must occur
no later than 60 days before the registrar expiry date.domain_watch) polls expiry daily and
alerts Telegram at 90 / 60 / 30 / 7 days remaining./transparency shows the live expiry date — every visitor can
verify the commitment is being kept.yuki@hamada.tokyo becomes
permanently unreachable, ownership transfers to 株式会社イネブラ
(Enabler Inc., 法人番号 9010001229178) as the corporate parent.
On the company's dissolution, the next-named designee in the
board minutes inherits the domain + Fly account + Stripe entity.
If no named designee exists, the domain enters a 5-year hold
under the registrar's standard expiry process — yuki / イネブラ
shall pre-fund 5 years of renewals into the registrar account
to cover any handover gap.governance_queue.This commitment is hashed into cv_config['domain_expiry_target']
and chronicle_* infrastructure depends on it (the QR codes on
shirts resolve to wearmu.com/c/... and must remain resolvable for
the lifetime of every shirt ever sold).
§23 — The DAO has no fungible token.
Voting weight is a pure function of three soulbound primitives:
Constitution authorship — each line of this document, age-weighted.
The line's (author_email, line_start, line_end, committed_date) is
maintained in CONSTITUTION_AUTHORS inside store/src/main.rs. Every
T1-approved amendment appends entries. Lines later deleted lose their
weight retroactively. Wisdom dividend: 0.5x (0–30d), 1.0x (30d–1y),
2.0x (1–5y), 4.0x (5–25y), 8.0x (25–100y).
MA pieces — each 1-of-1 piece counts 100. Transferable; weight travels with ownership.
Chronicle slots — each shirt purchase counts 1. Soulbound to the Stripe customer.
No fungible token is minted. No ICO. No airdrop. No sale of governance. The DAO's "shareholders" are the people who write the rules, the people who carry the 1-of-1 pieces, and the people who wear the brand — in that order of permanence.
The weight function is deterministic and lives at
GET /api/dao/weight/<wallet>. The leaderboard lives at /dao.
Anyone with this repo can recompute it. Anyone with a wallet bound to
their email (via /api/admin/dao/bind) can vote.
§23 is itself a §22-style hard commitment: no future amendment shall introduce a transferable fungible token tied to MU's governance. If such a token is ever needed, MU is already a different brand and should rename. Constitution-mint is the only mint.
Founder share at publication of §23 (2026-05-13): yuki authored lines 1–204 of this Constitution → ~204 shares × 0.5 (probationary) ≈ 102 weight. As Chronicle slots accumulate and new amendments are ratified, this share dilutes naturally. Wisdom dividend re-inflates it over time if it survives.
§24 — From the cutoffs below, the default fabric for MUGEN, MUON, and MA is Stanley/Stella SATU001 Creator 2.0 Ribbed Neck T-Shirt (Printful product 818). Per-brand era-2 cutoffs (drops at-or-above):
Spec:
20717; cost to merchant ≈ $25.00Drops 1–147 (the Bella+Canvas 3001 era) are immutable. No retroactive
re-printing — Constitution §21 (purchase path sacrosanct) takes
precedence over fabric upgrades. Each shirt's fabric era is recorded
on its /shirt/:pid/life page so a buyer can prove "I have an era-1
piece" forever.
Pricing for drop_num ≥ 148:
Constitution §21 ceiling ¥100,000 unchanged. §21 floor cost × 1.2
satisfied (¥5,700 × 1.2 = ¥6,840 < ¥7,800).
Margin profile: 27% at start → ~83% at cap. 30 sales/month at the base price clears the §Cessation ¥30,000 net threshold by ~2x.
(History: §24 initially set base ¥9,800 / cap ¥40,000 on 2026-05-13; relaxed to ¥7,800 / cap ¥35,000 the same day to lower the entry barrier for first-time buyers while keeping the §21 floor.)
Pricing summary by brand (era-2):
§25 — MUGEN designs from drop_num 148 onward (era-2) follow this brief:
This directive is mirrored in cv_config['mugen_design_directive'] for
m5 generate.py to read at compile-time. Updates to §25 require T1.
Why this fabric:
/persona.md) values.Substitution to a different default fabric requires a new amendment to §24. MA pieces, MUON, and collab lines retain their own fabric decisions (recorded per-line, not in this §).
§27 — MU は、 各年度 (4 月 1 日 〜 翌 3 月 31 日) の税引き後純利益の50%、 もしくは最低 ¥100,000 (どちらか大きい方) を、 毎年 4 月末までに北海道弟子屈町へ寄付する。
/transparency および当年度の /blog/donations-YYYY に公開する背景:
更新には T1 (人間承認) を要する。
§28 — MU 事業の税引後 当期純利益 P を、 各事業年度の期末監査確定後に、 以下の 6 セグメントに分配する (合計 100%):
| # | セグメント | 比率 | 受益主体 | 法的性格 |
|---|---|---|---|---|
| 1 | 寄付 | 50% | 弟子屈町 (企業版ふるさと納税) | 損金算入 + 法人税特別控除 (~9割) |
| 2 | Yuki 報酬 | 10% | 濱田優貴 (代表取締役) | 定期同額給与 (翌期 12 等分) |
| 3 | 株主配当 | 10% | Enabler 全株主 (持分比率、 East Ventures 5% 含む) | 株主総会決議後配当 |
| 4 | MA ホルダー還元 | 10% | MUGEN+stack ホルダー | MU クーポン (前払式支払手段 自家型) |
| 5 | MU Community Fund | 10% | コミュニティ (50% を公募 grant 枠) | Enabler 内 引当金 |
| 6 | 運転備金 | 10% | Enabler Inc. 内部留保 | 利益剰余金 (端数吸収) |
/profit-split (HTML) と /api/profit-split (JSON)store/src/main.rs::profit_split_breakdown§27 と §28 の関係: §27 の「寄付 50%」 は §28 の segment #1 に対応。 §27 の最低額条項 (¥100,000/年) は §28 でも継承され、 推定 P × 50% < ¥100,000 のときは floor ¥100,000 が適用される。
§29 — MU の北極星目標は、 合法的に Bitcoin の時価総額を超えること。 達成期日は定めない (§22 の 100 年計画と整合)。
定義と整合性:
coingecko.com/coins/bitcoin 公示値とする§30 — MU は MU pt という単一の community 通貨を 運用する。 token ではなく 企業内ロイヤリティポイント に分類される (資金決済法 上の前払式支払手段に該当しうるが、 詳細は §28 segment #4 と統合)。
設計:
30pt → 新規 MUGEN drop spawn (Gemini が seed prompt から 1 design 生成、 community-brand として publish)30pt → 既存 1 商品の 1 piece 引換 (Stripe 経由せず、 pt 残高でチェックアウト)30pt → MA Council 提案権 (新規コラボ SKU を Council 投票にかけられる)100,000pt 以上 で Tシャツ等の現物商品と交換可能。 価格テーブルは /pt-marketplace で公開、 ledger は proposal_points を再利用/pt-exchange で「exchange 表明」 → A の所有 cert が swap pool に放出 (= 黙示の贈与)。 A の手元の物理 T シャツは A の判断で保持/廃棄/寄付 (MU は関知しない)30pt で claimpt_certificates) は soulbound 風 (email key)、 譲渡履歴は pt_swap_pool に永続/pt-vault で保管中の SKU 一覧 + "今すぐ発送" ボタンを提供。 残高不足が 3 ヶ月続いたら警告 → 6 ヶ月で MU が買い取り (預け入れ時価) として精算。 法的位置付けは寄託契約 (民法 657 条) + 前払式支払手段。 実装は vault_orders テーブル (order_id, deferred_since, monthly_yen, status, last_billed_at)proposal_points (balance) + proposal_point_events (ledger)、 拡張せずに reason 列で新規エントリ識別 (purchase_reward / pt_spawn / pt_checkout / pt_propose / pt_marketplace)§29 と §30 の関係: §30 の pt 経済が活性化すると user retention が上がり、 §28 の profit が増え、 結果として §29 の equity 評価額が上がる。 §30 は §29 を支える community engine。
This document is hashed into every build. The build SHA prefix is shown on /admin/agents next to the Constitution version.