KNOWLEDGE SOCIETY
知識を、自律的に育てる常駐ランタイム
実装済み / v1.5.92 / 明示有効化Knowledge Societyが実装されると、MURASAMEは知識を蓄えるだけでなく、Personaの視点を切り替えながら議論・問い・根拠・検証を積み重ね、次のKnowledge Candidateをゆっくり作り続けられます。 速度ではなく、社会の状態と生成過程を失わずに蓄積することを目的にしています。
ただし、LLM同士の合意を真実とは扱いません。議論が生むのはPerspective、Claim、Hypothesis、Questionです。 Evidence、Verification、人手確認を経るまで、共有Knowledgeへ自動昇格しません。
最初に押さえる境界
murasame CLI
│ society.op (操作要求・結果表示)
▼
local WebSocket または認証済み Gateway
▼
murasamed
├─ Society Scheduler / Simulation Clock
├─ Job Queue / Lease / Retry
├─ Persona / Council / Claim / Candidate
├─ Evidence / Verification / Memory
└─ Player Runtime
└─ OpenCode → GLM-5.3CLIはクライアントです。DB、Persona、Player、SchedulerをCLIプロセス内に持たず、操作を society.op としてdaemonへ送ります。 CLIを終了しても、投入済みのJob、Council、Claim、Candidate、監査イベントは murasamed 側に残ります。
PlayerとPersonaは別物
Player
LLMを実行する機械です。会話履歴や人格を永続保持せず、JobをLeaseして一つのTurnを実行します。同じPlayerが複数のPersonaを順番に実体化できます。
Persona
職種、経験、専門性、関心、信念、記憶、関係性を持つデータです。毎回すべてをPromptへ詰め込まず、Topicに関連するContext Packだけを作ります。
Knowledge Societyのループ
Knowledge / Knowledge Gap / Persona Interest
↓
Simulation Jobを投入
↓
Persona Context Packを作成
↓
PlayerがTurn実行
↓
Speech → Claim / Question / Memory候補
↓
Conflict / Evidence Request
↓
Evidence・Verificationを別境界で実行
↓
Knowledge Candidateを評価
↓
Human Review → candidate cardとして物質化Personaは常時起動しません。イベントまたはJobが必要なときだけ起動し、Turn終了後は休止します。 Playerを増やすと同じJob Queueを並列処理して社会時間を加速できますが、Society全体の日次予算は増えません。
保存される中心オブジェクト
Persona | 職種・経験・判断傾向・記憶・信念・関心を持つ永続的な参加者 |
Council | 複数Personaを選び、決められたPhaseで議論する作業単位 |
Claim / Question | 発話から分離した検証可能な主張と未解決の問い |
Evidence | 公式資料、ソースコード、論文、許可された資料などの根拠 |
Verification | 宣言したSpecをRunnerで実行し、仮説を再現可能な条件で確認する処理 |
Knowledge Candidate | 根拠・検証を紐付けたKnowledge Card候補。合意だけでは昇格しない |
Simulation Job | Council turn、research、verification、memory、idle curiosityを再開可能にする仕事 |
状態と昇格ゲート
Council: queued → active → resolved
└→ paused → active / resolved
Claim: speculation → hypothesis → supported → verified → knowledge
└────────────→ challenged → refuted
Candidate: candidate → evidence_pending / verification_pending / disputed
→ promotable → human review → promoted
└→ candidate cardVerificationに失敗してもCandidateを自動的にKnowledgeへ昇格しません。カード、Candidate、履歴、監査イベントを物質化する処理は同一Transactionで行われますが、物質化されたカードの初期状態は candidate です。 Verifiedカードへ変更する判断は別の評価・レビュー境界に残ります。
起動とレート制御
常駐ループは既定で停止しています。murasamed の運用設定で MURASAME_SOCIETY=1 を明示すると、Simulation ClockとJob Workerが起動します。 OpenCode / Coding Planを使う場合は、Societyとカード評価Workerが同じホスト上の共有レート制御を使います。
MURASAME_SOCIETY=1
MURASAME_SOCIETY_PLAYERS=opencode
MURASAME_OPENCODE_MODEL=zai-coding-plan/glm-5.3
MURASAME_SOCIETY_MAX_PLAYERS=1
# OpenCode呼び出しの開始間隔(既定: 60秒)
MURASAME_OPENCODE_MIN_INTERVAL_MS=60000
# Society全体の日次上限
MURASAME_SOCIETY_DAILY_MODEL_CALLS=200
MURASAME_SOCIETY_DAILY_TOKENS=500000
MURASAME_SOCIETY_DAILY_VERIFICATIONS=20OpenCodeの呼び出し開始前に最小間隔を予約します。呼び出しが失敗しても予約した間隔は維持されるため、リトライが短時間に連続送信されません。制限が厳しい環境では MURASAME_OPENCODE_MIN_INTERVAL_MS を大きくしてください。
CLIから観測・操作する
murasame society stats | Persona、Council、Claim、Candidate、Job、Runtimeの集計を表示 |
murasame society runtime status | Simulation Clockとpause状態を表示 |
murasame society runtime pause|resume | 常駐社会のJob処理を停止・再開 |
murasame society personas list|show <id> | Personaと関連する記憶・信念を表示 |
murasame society council enqueue "論点" | 永続JobとしてCouncilを投入 |
murasame society council run "論点" | daemon上のPlayerでCouncilを手動実行 |
murasame society council pipeline "論点" | Councilから調査・Candidate評価まで実行 |
murasame society council research <id> | Councilの調査Jobを投入 |
murasame society claims|questions|candidates|jobs list | 生成物と再開可能なJobを一覧表示 |
murasame society candidate assess <id> | Candidateの昇格条件を評価 |
murasame society candidate verify <id> --spec <file> | Candidateに紐付く実地Verificationを実行 |
murasame society candidate materialize <id> --human-reviewed | 人手確認済みのCandidateをcandidate cardへ物質化 |
murasame society memory consolidate <personaId> | Personaの記憶候補を統合 |
murasame society seed occupations --per-occupation N | 職種カタログからPersonaを初期投入 |
すべての操作はdaemon経由です。認証済みGatewayへ接続する場合も、CLIが共有DBへ直接接続することはありません。--json を付けると結果をJSONで受け取れます。進捗イベントはstderrへ分離されます。
匿名化とTool境界
対象名、ローカルパス、秘密情報、設定した別名は、daemon側で保存前と外部Playerへ渡す前に匿名化できます。 Society PlayerにはTool、Shell、File、Network、MCP権限を与えず、資料取得とVerificationを別の許可された境界へ分離します。
# 公開されるPrompt・保存イベント上の別名を設定
MURASAME_SOCIETY_SOURCE_ALIASES=/sensitive/source=reference-system-a,/another/path=reference-system-bEvidenceの本文は外部入力として扱い、Prompt命令として信頼しません。外部Playerへ送る内容に実在の対象名やローカルパスを残さないことが、運用時の前提です。
現時点の制約
- 同じGLM-5.3がPersonaを切り替えるため、Personaの人数は独立した専門家の人数を意味しません。
- 社会の議論はTruthではなく、検証すべきClaim・Question・Perspectiveを増やす仕組みです。
- Candidateの生成と評価は実装済みですが、Evidence・Verification・Human ReviewなしにVerifiedへ自動昇格しません。
- 業務DBのトランザクション原子性、同時編集、二重Submitなどは、接続先の実環境テストで別途確認します。
次に読む
- アーキテクチャ — CLI、Gateway、murasamed、Playerの責務と境界
- コマンドリファレンス — Societyを含むCLI操作一覧
- Operations — daemonのhealth、readiness、再起動回復と常駐運転
- Concept Runtime — 状態・権限・検証可能な設計を実行する核
- Knowledge Card / 評価 — Candidate、Evidence、Verifiedの信頼境界