F7_AI_Runtime / AI Runtime
隠れた汎用チャットではなく、目的・入力・送り先・費用見積りを表に出す変換器官。
sourceIdとpurposeを伴うrun planを作り、approval後にmock実行し、出力を人がaccept/reject/undoする。
入力 → 状態 → 出力
- 入力validated JSON payload
- 状態engine-owned durable slice
- 承認必要な外部 / 不可逆操作だけ
- 出力result / receipt / explicit error
- 回復cancelでin-flight runを止め、失敗や拒否もprovenanceとともに残す。prompt injection境界はplan前に検査する。
保存状態はAction Coreのfilesystem state store内の capabilities sliceとして再起動可能なplain dataで保持される。functionや秘密値をstateへ保存しない。
全Action
以下はAction Registryに実在するF7_AI_Runtimeの全actionである。クリックでpayload境界、状態、出力、回復を開ける。
capability.ai.bindBind AI runtimelocal or validated transition
- payload
- JSON object(validatorに個別fieldなし)
- 状態
- unbound → configured / ready
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.plan_runPlan AI runreversible preparation
- payload
sourceIdinputTextpurpose- 状態
- durable plan → approval_required
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.arm_runArm AI runreversible preparation
- payload
runId- 状態
- approval_required → armed
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.execute_runExecute AI runapproval boundary / external effect
- payload
runId- 状態
- armed → visible provider/result state
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- 実行前にarm状態を要求する。失敗はengineが保持し、同一keyは重複実行を防ぐ。
capability.ai.cancel_runCancel AI runlocal or validated transition
- payload
runId- 状態
- active work → cancelled
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.accept_outputAccept AI outputlocal or validated transition
- payload
runId- 状態
- completed → accepted
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.reject_outputReject AI outputlocal or validated transition
- payload
runId- 状態
- completed → rejected
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
capability.ai.undo_outputUndo AI outputlocal or validated transition
- payload
runId- 状態
- accepted → undone
- result
- Capability engine の
okresult、または明示的な validation / provider error。plan・receipt・stateは持続sliceへ返る。 - recovery
- error codeと状態を残し、必要に応じて再計画・再承認・retryへ戻る。
Capability Spec
F7 AI Runtime — Capability Spec
World-internal transformer (never generic hidden chat). Explicit input/source/model/provider/purpose/token-cost estimate/output destination. Plan → approval → execute for external AI send. OpenAI-compatible adapter contract (mock only).
Run States
| State | Meaning |
|---|---|
idle | No active run. |
planned | Run plan recorded. |
approval_required | Awaiting human approval before external send. |
running | Provider execution in flight. |
streaming | Streaming chunks in progress. |
completed | Run finished; output available. |
failed | Run failure preserved. |
cancelled | Run stopped before completion. |
Human Decision States
| State | Meaning |
|---|---|
pending | Awaiting accept/reject. |
accepted | Human accepted output. |
rejected | Human rejected output. |
undone | Prior acceptance reversed. |
Actions
| Action | Flow |
|---|---|
bind | Configure OpenAI-compatible binding |
plan_run | Create visible plan with token estimate preview |
arm_run | Explicit human approval |
execute_run | Armed → provider mock; idempotent |
stream_chunk | Stream output chunks; cancel supported |
cancel_run | Stop in-flight run |
accept_output | Human accept with provenance |
reject_output | Human reject |
undo_output | Reverse prior acceptance |
Boundaries
- Never generic hidden chat: purpose and destination explicit
- Prompt-injection boundary checked before plan
- External AI send requires visible plan + approval
- Provenance recorded on completion/accept
- No network I/O
Environment Names
| Name | Role |
|---|---|
OPENAI_API_KEY | API key reference |
OPENAI_BASE_URL | Base URL reference |
MIKAAIR_AI_DEFAULT_MODEL | Default model |
MIKAAIR_AI_INJECTION_PATTERNS | Extra injection patterns |
MIKAAIR_AI_MAX_TOKENS | Token ceiling |
Provider Binding
Reference adapter: binding/adapter_contract.mjs (OpenAI-compatible mock).
binding / secret boundary
provider設定はbinding templateから参照する。環境変数は名前だけを扱い、値はsource repository・画面・reportに書かない。
| 環境変数名 | 扱い |
|---|---|
OPENAI_API_KEY | secret reference — 値は表示・保存しない |
OPENAI_BASE_URL | configuration reference — 値は表示・保存しない |
MIKAAIR_AI_DEFAULT_MODEL | configuration reference — 値は表示・保存しない |
MIKAAIR_AI_INJECTION_PATTERNS | configuration reference — 値は表示・保存しない |
MIKAAIR_AI_MAX_TOKENS | configuration reference — 値は表示・保存しない |
cancelでin-flight runを止め、失敗や拒否もprovenanceとともに残す。prompt injection境界はplan前に検査する。
source trace
../MikaAir LIGHTNESS/F_BUS_Capability/F7_AI_Runtime/spec/capability_spec.md e46159cdc475../MikaAir LIGHTNESS/F_BUS_Capability/F7_AI_Runtime/binding/binding_manifest.template.json 083b4117b224../MikaAir LIGHTNESS/F_BUS_Capability/F7_AI_Runtime/agent.md 41cde9554edc../MikaAir LIGHTNESS/F_BUS_Capability/runtime_bridge.mjs 7e7384638a41../MikaAir LIGHTNESS/F_BUS_Capability/action_surface.mjs e5bae5f48648../MikaAir LIGHTNESS/A_BUS_Action_Core/A2_State_Store/filesystem_store.mjs b1cc32d3f456../MikaAir LIGHTNESS/F_BUS_Capability/F7_AI_Runtime/contract/index.mjs 4050fc5843ab../MikaAir LIGHTNESS/F_BUS_Capability/F7_AI_Runtime/engine.mjs be66570d55b0