エージェントループコントロール
エージェントループコントロール
Kill-switch (次世代デフォルトからのオプトアウト)
次世代の動作はデフォルトで有効です。以下の各 DISABLE_* env は、 1 / true / yes / on に設定すると単一機能を 1 つ元に戻します。 日常運用ではなく、リグレッションの二分探索に使用してください。
DISABLE_STRICT_PLAYBOOK
1 にすると buildPlaybookBlock を、既定の命令形チェックリスト("The playbook below is the AUTHORITATIVE specification for this turn — not guidance. …")ではなく、ソフトな助言形式のヘッダー("Follow the playbooks below…")に戻します。より厳格なトーンが特定のシナリオで LLM を過度に制約する場合や、オペレーターがその差異を A/B したい場合に有用です。
- 使用箇所: src/skills/scenarios/session.ts(buildPlaybookBlock)。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - 設定の所在: 設定 → 環境設定(schema キー)
DISABLE_METHODOLOGY_INJECTION
1 にするとオンデマンドの methodology パスをすべて抑制します。シナリオのプレースホルダー解決({{methodology:key|default:val}} は default: にフォールバック)、ツール出力への <methodology_reminder> の融合、methodology_lookup ツールのヒットが対象です。既定の挙動(未設定): 3 つのパスすべてが graduated tier(Wilson ≥ 0.55)で store を照会します。
- 使用箇所: src/skills/scenarios/methodology-placeholder.ts、
- src/core/tool-output-hints.ts、src/tools/methodology-lookup.ts。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - Compat: レガシーの
METHODOLOGY_INJECTION_MODE=offは現在もエイリアスとして - 尊重されます(起動時に一度だけ非推奨の警告を出力します)。
- レガシーの
readonly/fullの値は新しい既定(有効)にマッピングされます。 - 旧来の 3 状態ではどちらも「オン」状態だったためです。
- 設定の所在: 設定 → 環境設定(schema キー)
DISABLE_METHODOLOGY_CASE_RECORDING
1 にするとケースレコーダーの書き込みパスを短絡します(recordHint / finalizeTurn が no-op になります)。DISABLE_METHODOLOGY_INJECTION より範囲が狭く、読み取りパスは引き続き機能します。ケースのスキーマが疑わしく、LLM から見える methodology のヒントを失わずに学習だけを止めたい場合に使用します。
- 使用箇所: src/learning/case-recorder.ts(
- src/learning/methodology-kill-switches.ts 経由)。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - web UI の Settings → Preferences →
safety.methodologyCaseRecording(肯定形)からも到達できます。- 設定の所在: 設定 → 環境設定(schema キー)
DISABLE_METHODOLOGY_MUTATIONS
1 にすると methodology のすべての変更を短絡します。recordUsage / recordOutcome / requantize / synthesis cron / case-attribution がすべて no-op になります。読み取り(retrieve / findByKey / fusion / lookup)は引き続き機能します。最も広範なキルスイッチであり、学習の書き込みパス自体が疑わしいインシデント対応向けです。
- 使用箇所: src/learning/methodology-store.ts、
- src/learning/case-attribution.ts、src/learning/methodology-synthesis.ts
- (src/learning/methodology-kill-switches.ts 経由)。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - web UI の Settings → Preferences →
safety.methodologyMutations(肯定形)からも到達できます。- 設定の所在: 設定 → 環境設定(schema キー)
MINARA_RETRIEVAL_ENGINE
メモリ想起に使う検索エンジンを選択します。bm25(既定)は従来から提供されているキーワード全文検索エンジンです。hybrid は BM25 とベクターキャッシュを組み合わせ、言い換えられたクエリでの想起精度を高めますが、レイテンシとメモリのコストが増えます。不明な値は bm25 にフォールバックします。
- 使用箇所: src/learning/contracts/learning-services.ts(Phase 5C の
- スキャフォールディング。配線は後続の PR で導入されます)。
- 形式:
bm25/hybrid(既定はbm25)。 - 設定の所在: ユーザー向け設定ではありません
PROMPT_COMPOSER_ENABLED
true にすると、新しいプロバイダーレジストリベースの PromptComposer を使ってシステムプロンプトを組み立てます。Phase 5B ではコンポーザーを shadow モード(出力はレガシーのアセンブラーとバイト単位で同一)で提供するため、このフラグはコンポーザーが既定になる前にストレステストしたいオペレーター向けのオプトインです。既定で無効にしておくことで golden スナップショットが安定します。
- 使用箇所: src/core/prompt-composer.ts。
- 形式:
1/true/yes/onで有効化します(既定では未設定)。 - 設定の所在: ユーザー向け設定ではありません
方法論監査サブシステム
方法論学習ループに対する受動的で読み取り専用のオブザーバーです。既存の 学習テーブルに対して SQL 集計を毎日のペースで実行し、総合的なヘルス レポートを methodology_audit_reports に書き込みます。学習状態を決して 変更しません。エージェントループと協調的です: ユーザーターンが進行中は ティックをスキップし、1 パスの途中で SQL ステージ間に処理を譲ります。 src/learning/methodology-audit.ts と docs-site の env-vars ドキュメントを参照してください。
METHODOLOGY_AUDIT_CRON_ENABLED
プロセス内監査スケジューラーのオプトインスイッチ。既定は 0(オフ)。学習ループがスコアリングに十分なデータを蓄積した後(通常は METHODOLOGY_LEARNING_CRON_ENABLED を有効化してから 1〜2 週間後)に、オペレーターが明示的に有効化する必要があります。マルチワーカー構成では、IS_PRIMARY_WORKER=1 のワーカーのみがスケジューラーを実行し、レプリカは何もしません。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 形式:
1/true/yes/onで有効化します。 - 設定の所在: 設定 → 環境設定(schema キー)
METHODOLOGY_AUDIT_CRON_INTERVAL_MS
監査スケジューラーの tick 間隔。既定は 86400000(24 時間)。タイプミスが Agent プロセスをスパムしたり監査を暗黙に無効化したりしないよう、実行時に [5min, 30d] にクランプされます。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 設定の所在: 設定 → 環境設定(schema キー)
METHODOLOGY_AUDIT_WINDOW_DAYS
ウィンドウ境界のスコアリング次元(synthesis_quality、attribution_integrity、quarantine_churn)のルックバックウィンドウ。既定は 30。実行時に範囲が [1, 365] にクランプされます。ウィンドウが大きいほどトレンドは平滑化されますが、急激な劣化へのシステムの反応が遅くなります。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 設定の所在: 設定 → 環境設定(schema キー)
METHODOLOGY_AUDIT_RETENTION_DAYS
監査レポートを保持する期間。既定は 90。範囲は [7, 3650] にクランプされます。監査 cron は日次の tick 後、ローカル日ごとに最大 1 回プルーニングします。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 設定の所在: ユーザー向け設定ではありません
METHODOLOGY_AUDIT_SKIP_BUSY_THRESHOLD_MS
busy プリフライトチェックのアイドル閾値。既定は 180000(3 分)。BusyTracker が inFlight > 0 または idleSinceMs < threshold を報告すると、監査 tick は延期され deferred_count が増加します。範囲は [0, 1h] にクランプされます。0 に設定するとプリフライトゲートが無効になります(Agent の状態に関係なく毎 tick で即座に監査が実行されます)。テストには有用ですが、本番では推奨しません。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 設定の所在: ユーザー向け設定ではありません
METHODOLOGY_AUDIT_MAX_DEFERRED_TICKS
スターベーションガード。この回数だけ連続で tick が延期された後は、Agent がまだビジーでも監査パスを実行します。これにより恒常的にビジーなインストールでも監査カバレッジを失いません。既定は 4(24 時間の既定間隔で約 4 日)。範囲は [0, 100] にクランプされます。0 に設定すると、ビジー状態に関係なく毎 tick を強制的に実行します。
- 使用箇所: src/learning/methodology-audit-cron.ts。
- 設定の所在: ユーザー向け設定ではありません
METHODOLOGY_AUDIT_YIELD_TIMEOUT_MS
各 SQL ステージの間で、監査オーケストレーターはイベントループに制御を譲り、BusyTracker がアイドルを報告するのを待ちます。この設定はその待機時間に上限を設け、終わらないターンが監査を無期限に飢えさせないようにします。既定は 60000(60 秒)。範囲は [0, 10min] にクランプされます。タイムアウト後は、ビジー状態に関係なく監査が再開されます。
- 使用箇所: src/learning/methodology-audit-cron.ts、
- src/learning/methodology-audit.ts。
- 設定の所在: ユーザー向け設定ではありません
DISABLE_METHODOLOGY_AUDIT
監査サブシステムのトップレベルキルスイッチ。1 にすると cron パスと audit run CLI の両方を短絡します。band=disabled のプレースホルダーレポートが返され、永続化されません。CLI の読み取りパス(audit show、audit trend、audit findings)には影響しません。既存の DISABLE_METHODOLOGY_MUTATIONS キルスイッチに倣ったものです。
- 使用箇所: src/learning/methodology-audit.ts。
- 形式:
1/true/yes/onで無効化します。 - 設定の所在: ユーザー向け設定ではありません
DISABLE_METHODOLOGY_INSTANCE_DISPATCH
1 にすると MethodologyInstanceStore.resolveThresholds が常にテンプレートの既定値を返すよう強制し、BO でチューニングされた資産クラス単位のインスタンスオーバーライドを無視します。既定の挙動(未設定): インスタンスオーバーライドが存在する場合はテンプレートの既定値にマージされます。
- 使用箇所: src/learning/methodology-instance-store.ts。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - 設定の所在: ユーザー向け設定ではありません
Proactive Wealth Agent
有効化された各マンデート(mandate)を実行するバックグラウンド監督ループです: ポジションを時価評価し、利益確定 / 損切り / リバランスを行い、カーブ用に PnL のスナップショットを取り、作業ログを書き込みます。両方のノブは Settings → Proactive および Proactive モジュール自身の設定タブで、 リアルタイムに編集できます (proactive.* preferences にマッピングされます)。
PROACTIVE_SUPERVISOR_ENABLED
バックグラウンドスーパーバイザーのマスタースイッチ。既定は 1(オン): 有効化されたマンデートは、設定した制限の範囲内で自律的に作業を続けます。0 に設定すると、すべてのマンデートの自律的な活動を一時停止します。マンデートは有効化されたままですが、これを再びオンにするまで行動を停止します。マルチワーカー構成では IS_PRIMARY_WORKER=1 のみがループを実行し、レプリカは何もしません。
- 使用箇所: src/proactive/supervisor-cron.ts。
- 形式:
1/true/yes/onで有効化します(既定はオン)。 - 設定の所在: 設定 → 環境設定(schema キー)
PROACTIVE_SUPERVISOR_INTERVAL_SEC
各マンデートがポジションをチェックする頻度(秒)。既定は 900(15 分)。タイプミスがプロセスをスパムしたりループを停滞させたりしないよう、実行時に [10s, 1h] にクランプされます。間隔が短いほど反応は速くなりますが、処理量が増えます。
- 使用箇所: src/proactive/supervisor-cron.ts。
- 設定の所在: 設定 → 環境設定(schema キー)
PROACTIVE_REDISCOVER_INTERVAL_SEC
マンデートが新しい機会を探索する頻度(有料の再計画ステップ)(秒)。既定は 1800(30 分)。実行時に [1min, 24h] にクランプされます。これは各サイクルでライブに読み取られるため、変更は再起動なしで適用されます。再探索はより高速なスーパーバイザーパスの上で実行されます。頻度が低いほど LLM 呼び出しのコストが下がります。モデルが構成されていない場合は正常にスキップされます。
- 使用箇所: src/app.ts(runProactiveMandateCycle)。
- 設定の所在: 設定 → 環境設定(schema キー)
DISABLE_KNOWLEDGE_BUDGET
1 にすると Knowledge Budget ネゴシエーターを完全にバイパスします。シナリオプレイブック + メモリスナップショット + ロールヒントが全長で出力され、Anthropic のコンテキスト上限のみに従います。既定の挙動(未設定): 合計サイズが KNOWLEDGE_BUDGET_TOKENS(既定 15000 ≈ 60k 文字)を超える場合にトリムします。
- 使用箇所: src/core/knowledge-budget.ts(src/core/agent-loop.ts 経由)。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - 設定の所在: 設定 → 環境設定(schema キー)
ROLE_MEMORY_MODE
起動時のロールケース学習と注入のモード。
- 制御対象:
offは既存のロールケースを監査 API から利用可能なまま保ちますが、新規の作成・評価・想起・注入は行いません。shadow(既定)は、一致する手動トレードが実行された後にのみケースを保存・評価し、想起の登録やモデルプロンプトの変更は行いません。activeはさらに、反映された手動ケースを、一致する分析スキルと機関投資家の Trader / PM プロンプトに想起します。Autopilot、Strategy Studio、workflow、および出所不明の perps はこのパスに入りません。実行ツールがロールメモリのテキストを受け取ることは決してありません。 - 設定するタイミング: ケースの品質を検証している間は
shadowのままにしてください。リフレクションをレビューした後にのみactiveを使い、新規のロール学習を止めるにはoffを使います。 - When unset or invalid:
shadow(不正な値は起動時に警告を出力します)。 - 変更は起動時に一度だけ読み取られ、Agent の再起動が必要です。
- 形式: 厳密に
off、shadow、activeのいずれか。 - 設定の所在: 設定 → 環境設定(schema キー)
DISABLE_PARALLEL_TOOL_CALLS
DISABLE_PARALLEL_TOOL_CALLS はターン単位のツールスケジューラを制御します。1 にすると、すべてのツール呼び出しを直列実行します。未設定の場合、READ_ONLY ツールは既定で上限付き FIFO 並列枠を共有します。オプトアウトしたツール、書き込み、資金操作、未知のツール、動的ツール、tool_invoke、META_UNSAFE ツールは引き続き排他実行されます。
- 使用箇所: ターン単位のツール実行スケジューラが読み取ります。
- 形式:
1/true/yes/onで無効化します(既定では未設定)。 - 変更は次のターンから反映されます。
- 設定の所在: 設定 → 環境設定(schema キー)
MAX_PARALLEL_TOOL_CALLS
MAX_PARALLEL_TOOL_CALLS は、1ターン内で同時実行できる安全な読み取り専用ツールの最大数を設定します。
- デフォルト: 既定値は
16です。 - 形式: 形式は
1から32の10進整数です。 - 不正な値は
16に戻り、構造化された起動警告を1回だけ出力します。ユーザー Preference override がこの値より優先されます。 - 変更は次のターンから反映されます。ツールの並列実行が無効な場合、この上限は無視されます。
- 設定の所在: 設定 → 環境設定(schema キー)
MINARA_SUBAGENT_FOREGROUND_MAX_CONCURRENT
MINARA_SUBAGENT_FOREGROUND_MAX_CONCURRENT は、通常のツール枠を使わず前面サブエージェントの同時実行数を制限します。
- デフォルト: 既定値は
8。 - 形式: 形式は
1から16の整数。 - 超過分は独立した FIFO キューで待機し、ユーザー設定が優先され次のターンから反映されます。
- 設定の所在: 設定 → 環境設定(schema キー)
MINARA_SUBAGENT_BACKGROUND_MAX_CONCURRENT
MINARA_SUBAGENT_BACKGROUND_MAX_CONCURRENT は、前面とは独立したキューで背景サブエージェントの同時実行数を制限します。
- デフォルト: 既定値は
8。 - 形式: 形式は
1から16の整数。 - 超過分は独立した FIFO キューで待機し、ユーザー設定が優先され次のターンから反映されます。
- 設定の所在: 設定 → 環境設定(schema キー)
MINARA_SUBAGENT_TIMEOUT_SECONDS
MINARA_SUBAGENT_TIMEOUT_SECONDS は、各サブエージェントが実際に開始してからの標準制限時間を設定します。
- デフォルト: 既定値は
600秒。 - 形式: 形式は
30から3600の整数で、待機時間は含みません。 - 単一の呼び出しでは
subagent.timeout_sで上書きでき、ユーザー設定が優先されます。 - 設定の所在: 設定 → 環境設定(schema キー)
Shadow Mode (A/B 観察ロガー)
計装された決定ポイントで (現在の動作, 提案された動作) のバリアントペアを、 オフライン分析用に shadow_runs SQLite テーブルへ書き込む軽量レコーダー です。LLM の二重実行はありません。Sprint 2+ の最適化(メモリスナップショット のバケット化、キャッシュヒット率、ロールヒント注入)を実トラフィックに対して 検証することを目的としています。
SHADOW_MODE
レコーダーのモード。 off — 記録しません。オーバーヘッドはゼロです。 sampled — SHADOW_SAMPLE_RATE の割合でランダムにサンプリングします。既定。 on — すべての呼び出しを記録します。短い監査ウィンドウでのみ使用してください。
- 形式:
off/sampled/on。 - 設定の所在: ユーザー向け設定ではありません
SHADOW_SAMPLE_RATE
SHADOW_MODE=sampled のときに記録する対象呼び出しの割合。既定は 0.1(10%)。範囲は [0, 1]。
- 形式: 0 から 1 の間の浮動小数点数。
- 設定の所在: ユーザー向け設定ではありません
SHADOW_RETENTION_DAYS
shadow_runs の行を保持する日数。起動ごとに 1 回のプルーニングが実行され、この閾値より古い行を削除します。これにより、長期稼働のデプロイでテーブルが際限なく増大するのを防ぎます。既定は 30。トラフィックの多い環境やディスク制約のある環境では低く設定します。
- 形式: 正の整数。
- 設定の所在: ユーザー向け設定ではありません
Memory Snapshot のバケット化
MemoryStore.loadSnapshot() はセッション開始時に一度実行され、FIFO の 50 行のメモリリストをシステムプロンプトに注入します。Sprint 2 以前は、 最近の observation 行が大量に発生すると、長寿命の preference / strategy 行が追い出されることがありました。Sprint 2 は FIFO をカテゴリー別クォータに置き換えます。高優先度バケットの未使用スロットは observation にあふれ込むため、疎なプロファイルでも合計は 50 に保たれます。 放出順序: preference → strategy → trade_note → observation。 消費元: app.ts の配線を通じた src/memory/memory-store.ts。 チューニングの指針: プロファイル中心のユーザーには preference / strategy を 上げ、ノイズの多い短期分析ワークフローには observation を上げてください。
MEMORY_SNAPSHOT_PREF_LIMIT
ユーザー設定のスロット。中核となるプロファイルデータ。
- 設定の所在: ユーザー向け設定ではありません
MEMORY_SNAPSHOT_STRAT_LIMIT
ユーザーの長期的な戦略メモ。
- 設定の所在: ユーザー向け設定ではありません
MEMORY_SNAPSHOT_TRADE_LIMIT
トレードに関する苦情 / 事後分析のメモ。
- 設定の所在: ユーザー向け設定ではありません
MEMORY_SNAPSHOT_OBS_LIMIT
ローリング観測のクォータ、および未使用の設定 / 戦略 / トレードスロットのロールオーバープール。
- 設定の所在: ユーザー向け設定ではありません
Memory Snapshot のソフトリフレッシュ (P1-2)
セッション開始時に読み込まれたスナップショットは、通常セッション全体を通じて 固定されたままです(プロンプトのプリフィックスキャッシュを保持)。長いセッション では情報の鮮度が失われます — ユーザーがターン 10 で宣言した preference は、 次のセッションまでプロンプトに届きません。ソフトリフレッシュは、前回の再構築 以降に両方の閾値(書き込み回数 AND ターン数)が満たされたとき、セッション途中で スナップショットを再構築します。MEMORY_REFRESH_TURNS=0 に設定すると、従来の セッション固定の動作に戻ります。
MEMORY_REFRESH_WRITES
前回のスナップショット再構築以降の memory_write 呼び出し回数。既定は 3。
- 設定の所在: ユーザー向け設定ではありません
MEMORY_REFRESH_TURNS
前回のスナップショット再構築以降のターン数。既定は 10。0 に設定するとソフトリフレッシュを完全に無効化します(スナップショットはセッション中フリーズされたままになります)。再構築にはこれと MEMORY_REFRESH_WRITES の両方に到達する必要があり、単一の大きな書き込みによるキャッシュのスラッシングを防ぎます。
- 設定の所在: ユーザー向け設定ではありません
MEMORY_WRITE_MAX_LEN
Agent が memory_write ツール(observation / preference / trade_note / strategy カテゴリー)でメモリを保存する際に保持する最大文字数。これより長いコンテンツは保存前にこの長さにトリムされ、単一の過大な、または汚染されたエントリーがシステムプロンプトや FTS インデックスを氾濫させないようにします。より厳格なパーソナライゼーションファクトのパスは独自のより短い上限を保持し、影響を受けません。src/tools/memory-tool.ts が消費します。Settings の設定 memory.writeMaxLen としても表示されます。未設定時の既定は 2000。許容範囲は 200〜8000(正の整数、文字数)。
- 設定の所在: 設定 → 環境設定(schema キー)
Memory 統合 (FactLayer, Phase 1)
MEMORY_CONSOLIDATION_ENABLED
バックグラウンドの再構築器が学習する、チャットから抽出されたパーソナライゼーションファクトの矛盾解決。
- ON by default: 再構築器はメモリ再構築ごとに 1 回の追加バックグラウンド LLM 呼び出しを実行します。
- そしてファクトごとに、それが既存のファクトを重複・洗練・置換するかを判断します。
- これにより、メモリスナップショットが陳腐化した行や矛盾する行を
- 蓄積し続けるのを止めます。
0/false/no/offに設定するとオプトアウトできます。- その場合、抽出された各ファクトは新しい行として追加されます(長年の挙動)。
- 置き換えられたファクトはソフト削除され(復元可能)、
- すべての判断は memory_consolidation_events 監査テーブルに記録されます。
- memory/consolidation-config.ts + memory/fact-consolidation.ts が消費します。
- Agent が記録したファクトのニアデュープリケート調停も駆動します(memory/general-fact-service.ts)。
- 形式: 未設定 /
1/true/yes/onで有効になります。 - 明示的な
0/false/no/offのみが無効化します。Settings → - Experimental の「Tidy duplicate and outdated memories」トグルとして表示されます。
- 設定の所在: 設定 → 環境設定(schema キー)
MEMORY_CONSOLIDATION_GUIDANCE
統合がファクトをどのようにマージまたは廃止するかを指示する任意の自由記述テキスト(例: 「最も新しい発言を優先する」「資産ごとにメモを分ける」)。リゾルバーのプロンプトに非権威的な設定として注入されます。ハードな安全ルールを上書きすることは決してありません(ユーザーが設定したハード制約が、より新しい明示的なユーザー発言以外で外されることはなく、ユーザーが述べたファクトは常にアシスタントが推論したファクトより優先されます)。500 文字が上限です。MEMORY_CONSOLIDATION_ENABLED がオフの場合は効果がありません。
- 形式: プレーンテキスト、既定は空(組み込みのポリシーを使用)。
- 設定の所在: 設定 → 環境設定(schema キー)
FACT_LIFECYCLE_ENABLED
ファクトの陳腐化ライフサイクルにオプトインします。オフ(既定)の場合、保存されたすべてのファクトは永久に全重みを保ちます(長年の挙動)。オンの場合、バックグラウンドのメモリ再構築が、LLM を使わない決定論的なスイープを実行し、ファクトをタイプ別にエイジングします。マーケットビュー(observation.market_view)は約 14 日後に warm に降格し、約 45 日後に注入プロファイルから外れます(cold)。トレードメモは約 90 / 270 日です。一方、ユーザーが設定したハード制約(constraint.hard)とゴールは決してエイジングしません。降格は可逆です。何も削除されず、cold なファクトも検索可能なままで、新たな言及(統合による更新)はファクトを hot に再昇格させます。memory/consolidation-config.ts + memory/fact-lifecycle.ts が、パーソナライゼーション再構築器を通じて消費します。形式: 1 / true / yes / on で有効化。未設定 / それ以外は無効のままです。Settings → Experimental の「Let old memories fade」トグルとして表示されます。
- 設定の所在: 設定 → 環境設定(schema キー)
FACT_LIFECYCLE_AGE_MULTIPLIER
すべてのファクトライフサイクルのエイジング閾値に対するグローバルなスケール。1(既定)は組み込みのタイプ別エイジングを使います。2 は降格までの各ファクトの持続を 2 倍に、0.5 は半分にします。オペレーターは、ファクトタイプごとにノブを公開することなく、減衰カーブ全体を移動できます。[0.25, 10] にクランプされます。非正 / 解析不能な値は 1 にフォールバックします。FACT_LIFECYCLE_ENABLED がオフの場合は効果がありません。memory/consolidation-config.ts が消費します。形式: 正の数。
- 設定の所在: 設定 → 環境設定(schema キー)
サイドタスクの同時実行
サイドタスクのセッション数に制限はありませんが、モデルターンは 上限付きのプロセス内スケジューラーを共有します。メインセッションの ターンはこの制限を通りません。
MINARA_SIDE_TASK_MAX_CONCURRENT_TURNS
Gateway 全体で同時に実行できるサイドタスクの Agent ターン数です。上限を超えたターンは公平なキューで待機します。開いているだけ、またはアイドル状態のタブは枠を消費しません。メインセッションはこの制限の対象外です。
- 使用箇所: src/gateway/side-task-concurrency.ts が使用します。
- 設定するタイミング: モデルプロバイダーが並行サイドタスクを繰り返しレート制限する場合に値を下げます。
- 未設定時: 未設定時は 8 ターンです。
- 形式: 形式:1〜32 の整数。無効な値は 8 に戻ります。変更後は Gateway を再起動してください。
- 設定の所在: ユーザー向け設定ではありません
Knowledge budget (動的ブロック上限)
KNOWLEDGE_BUDGET_TOKENS
システムプロンプト内の 3 つの動的ナレッジブロック(シナリオプレイブック + メモリコンテキスト + ロールヒント)の合計サイズに対する数値上限(トークン単位)。合計サイズがこれを超えると、ネゴシエーターは優先度の最も低いものからトリムします: roleHints → memoryContext → scenarioPlaybook。
- 既定は 15000 トークン(約 60k 文字 ≈ 200k コンテキストの 7.5%)。
- ほとんどのターンに十分な余裕があります。この env による明示的なオーバーライドが可能です。
- ネゴシエーターを完全に無効化するには(ブロックを全長で出力させる)、
DISABLE_KNOWLEDGE_BUDGET=1を設定します。上記のキルスイッチブロックを参照してください。- 形式: 非負の整数。
0で無効化します。 - 設定の所在: ユーザー向け設定ではありません
KNOWLEDGE_SOURCE_TAGS
各動的ナレッジブロックの先頭に HTML コメントの出所タグを付加します(<!-- source: memory:snapshot -->、<!-- source: role:case-memory -->)。人間 / ログベースのプロンプト監査専用です。LLM は HTML コメントをノイズとして扱います。既定はオフ。
- 形式:
true/false。 - 設定の所在: ユーザー向け設定ではありません