fengming 0.3.10 → 0.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/build-info.json +2 -2
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/cli/run-main.js +3 -3
- package/dist/cli-startup-metadata.json +8 -8
- package/dist/{command-registry-DMB-HKIk.js → command-registry-BHIBvpgR.js} +2 -2
- package/dist/{command-registry-C5ooX6PF.js → command-registry-BT5icv-c.js} +2 -2
- package/dist/{command-registry-core-B2w_XWvn.js → command-registry-core-C-a3GaYV.js} +2 -2
- package/dist/{completion-cli-Bf4mEw2W.js → completion-cli-BUfFF31m.js} +2 -2
- package/dist/control-ui/assets/{activity-D-mnRThU.js → activity-DF1iC1pF.js} +2 -2
- package/dist/control-ui/assets/{agents-U_KSP5I_.js → agents-CDGNJA8n.js} +2 -2
- package/dist/control-ui/assets/{channels-ohK9_G1O.js → channels-CAPFdCrE.js} +2 -2
- package/dist/control-ui/assets/{cron-6ZCzfU29.js → cron-DUUdUzzu.js} +2 -2
- package/dist/control-ui/assets/{debug-CSsDLg_s.js → debug-BwfVXGKK.js} +2 -2
- package/dist/control-ui/assets/{index-jUDczxhd.js → index-JWV4rMUy.js} +4 -4
- package/dist/control-ui/assets/{instances-782ZoDT4.js → instances-BqAPpn0Y.js} +2 -2
- package/dist/control-ui/assets/{nodes-BMX16BKM.js → nodes-gya-0PkG.js} +2 -2
- package/dist/control-ui/assets/{sessions-jLGSApYa.js → sessions-BdttyTpI.js} +2 -2
- package/dist/control-ui/assets/{skills-DweBwUhs.js → skills-D_rtwBjc.js} +2 -2
- package/dist/control-ui/assets/{workboard-BsU-FXIo.js → workboard-CIGDGkWB.js} +2 -2
- package/dist/control-ui/index.html +1 -1
- package/dist/control-ui/sw.js +1 -1
- package/dist/crestodian/crestodian.js +1 -1
- package/dist/crestodian/rescue-message.js +1 -1
- package/dist/{crestodian-C0x7JjF-.js → crestodian-CAxGCgHM.js} +3 -3
- package/dist/{dialogue-No0NvYX7.js → dialogue-CHuN9qet.js} +1 -1
- package/dist/gateway/protocol/index.d.ts +1 -1
- package/dist/{index-AZzJCgph.d.ts → index-DbpfOFUf.d.ts} +1 -1
- package/dist/{operations-Z85LFqsT.js → operations-Mvnrndji.js} +1 -1
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/plugin-sdk/{agent-harness-runtime-CgQiThzm.d.ts → agent-harness-runtime-Bkrjji63.d.ts} +2 -2
- package/dist/plugin-sdk/agent-harness-runtime.d.ts +4 -4
- package/dist/plugin-sdk/agent-harness-task-runtime.d.ts +1 -1
- package/dist/plugin-sdk/agent-harness.d.ts +4 -4
- package/dist/plugin-sdk/agent-runtime.d.ts +1 -1
- package/dist/plugin-sdk/{bundled-channel-config-schema-Dfn3b8sF.d.ts → bundled-channel-config-schema-ZTBQez8k.d.ts} +9 -9
- package/dist/plugin-sdk/bundled-channel-config-schema.d.ts +1 -1
- package/dist/plugin-sdk/channel-config-schema-legacy.d.ts +1 -1
- package/dist/plugin-sdk/channel-core.d.ts +2 -2
- package/dist/plugin-sdk/channel-entry-contract.d.ts +1 -1
- package/dist/plugin-sdk/{channel-pairing-CX6ncj1r.d.ts → channel-pairing-CzsPAHgH.d.ts} +1 -1
- package/dist/plugin-sdk/channel-pairing.d.ts +1 -1
- package/dist/plugin-sdk/channel-plugin-common.d.ts +2 -2
- package/dist/plugin-sdk/cli-backend.d.ts +1 -1
- package/dist/plugin-sdk/compat.d.ts +4 -4
- package/dist/plugin-sdk/{config-schema-DuJUjn6k.d.ts → config-schema-N64y7n8C.d.ts} +1 -1
- package/dist/plugin-sdk/config-schema.d.ts +4 -4
- package/dist/plugin-sdk/{core-CPtu2Ftl.d.ts → core-BWZB2hNB.d.ts} +1 -1
- package/dist/plugin-sdk/core.d.ts +7 -7
- package/dist/plugin-sdk/{delegate-uk6vAMkc.d.ts → delegate-o5xckIuc.d.ts} +1 -1
- package/dist/plugin-sdk/discord.d.ts +3 -3
- package/dist/plugin-sdk/{fengming-runtime-Dt2ZEVYX.d.ts → fengming-runtime-abXAXyq2.d.ts} +1 -1
- package/dist/plugin-sdk/gateway-runtime.d.ts +1 -1
- package/dist/plugin-sdk/{host-compat-CM0h9ODw.d.ts → host-compat-D2Ky8seZ.d.ts} +1 -1
- package/dist/plugin-sdk/{http-registry-BniL_epL.d.ts → http-registry-oxJbX3E-.d.ts} +2 -2
- package/dist/plugin-sdk/image-generation-core.d.ts +4 -4
- package/dist/plugin-sdk/image-generation-runtime.d.ts +3 -3
- package/dist/plugin-sdk/index.d.ts +4 -4
- package/dist/plugin-sdk/lmstudio.d.ts +1 -1
- package/dist/plugin-sdk/{loader-aELh60PE.d.ts → loader-CgJhYjxT.d.ts} +3 -3
- package/dist/plugin-sdk/{logger-BpB3--7Z.d.ts → logger-CyDIBtoX.d.ts} +1 -1
- package/dist/plugin-sdk/logging-core.d.ts +3 -3
- package/dist/plugin-sdk/memory-core-host-engine-embeddings.d.ts +2 -2
- package/dist/plugin-sdk/memory-core-host-engine-foundation.d.ts +3 -3
- package/dist/plugin-sdk/{memory-core-host-engine-storage-DYPjOQCg.d.ts → memory-core-host-engine-storage-DfW7ZqD0.d.ts} +1 -1
- package/dist/plugin-sdk/memory-core-host-engine-storage.d.ts +1 -1
- package/dist/plugin-sdk/memory-core-host-runtime-cli.d.ts +1 -1
- package/dist/plugin-sdk/memory-core-host-runtime-core.d.ts +3 -3
- package/dist/plugin-sdk/memory-core.d.ts +3 -3
- package/dist/plugin-sdk/memory-host-core.d.ts +3 -3
- package/dist/plugin-sdk/migration-runtime.d.ts +1 -1
- package/dist/plugin-sdk/migration.d.ts +1 -1
- package/dist/plugin-sdk/music-generation-core.d.ts +2 -2
- package/dist/plugin-sdk/{plugin-entry-DO9kQeTr.d.ts → plugin-entry-C9xM-ZA9.d.ts} +1 -1
- package/dist/plugin-sdk/plugin-entry.d.ts +3 -3
- package/dist/plugin-sdk/plugin-runtime.d.ts +3 -3
- package/dist/plugin-sdk/{provider-api-key-auth-DvIiojS6.d.ts → provider-api-key-auth-DOmYPTC2.d.ts} +1 -1
- package/dist/plugin-sdk/provider-auth-api-key.d.ts +4 -4
- package/dist/plugin-sdk/{provider-auth-helpers-CYkWZ0vq.d.ts → provider-auth-helpers-pqDNrZTd.d.ts} +1 -1
- package/dist/plugin-sdk/{provider-auth-input-DUV6ZTw4.d.ts → provider-auth-input-Ckt-cU4H.d.ts} +1 -1
- package/dist/plugin-sdk/provider-auth-result.d.ts +1 -1
- package/dist/plugin-sdk/provider-auth-runtime.d.ts +1 -1
- package/dist/plugin-sdk/provider-auth.d.ts +5 -5
- package/dist/plugin-sdk/provider-catalog-runtime.d.ts +2 -2
- package/dist/plugin-sdk/{provider-catalog-shared-Cm3SyFfL.d.ts → provider-catalog-shared-QvOT8Wz1.d.ts} +1 -1
- package/dist/plugin-sdk/provider-catalog-shared.d.ts +2 -2
- package/dist/plugin-sdk/provider-entry.d.ts +3 -3
- package/dist/plugin-sdk/{provider-model-shared-D5rgn7Gb.d.ts → provider-model-shared-Bnc8IMx5.d.ts} +1 -1
- package/dist/plugin-sdk/provider-model-shared.d.ts +2 -2
- package/dist/plugin-sdk/{provider-registry-DxdZT9UN.d.ts → provider-registry-Ba1nNfhA.d.ts} +1 -1
- package/dist/plugin-sdk/{provider-registry-DiKX35tc.d.ts → provider-registry-CqB5bSAD.d.ts} +1 -1
- package/dist/plugin-sdk/{provider-registry-D0vmhPWL.d.ts → provider-registry-CxdVib8g.d.ts} +1 -1
- package/dist/plugin-sdk/{provider-self-hosted-setup-BPx7JMDC.d.ts → provider-self-hosted-setup-eMoeVPnF.d.ts} +1 -1
- package/dist/plugin-sdk/provider-setup.d.ts +2 -2
- package/dist/plugin-sdk/{provider-stream-DcC2vn_N.d.ts → provider-stream-CGaLae9n.d.ts} +1 -1
- package/dist/plugin-sdk/provider-stream-family.d.ts +2 -2
- package/dist/plugin-sdk/{provider-stream-shared-ByDv3QKm.d.ts → provider-stream-shared-u5mt-8_i.d.ts} +1 -1
- package/dist/plugin-sdk/provider-stream-shared.d.ts +1 -1
- package/dist/plugin-sdk/provider-stream.d.ts +2 -2
- package/dist/plugin-sdk/provider-tools.d.ts +1 -1
- package/dist/plugin-sdk/provider-web-fetch-contract.d.ts +1 -1
- package/dist/plugin-sdk/provider-web-fetch.d.ts +1 -1
- package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +2 -2
- package/dist/plugin-sdk/{provider-web-search-contract-fields-CY4v8kS-.d.ts → provider-web-search-contract-fields-BiWOSs_d.d.ts} +1 -1
- package/dist/plugin-sdk/provider-web-search-contract.d.ts +2 -2
- package/dist/plugin-sdk/provider-web-search.d.ts +1 -1
- package/dist/plugin-sdk/realtime-transcription.d.ts +1 -1
- package/dist/plugin-sdk/realtime-voice.d.ts +1 -1
- package/dist/plugin-sdk/{redact-identifier-CVwkabcI.d.ts → redact-identifier-CVqsKaEK.d.ts} +1 -1
- package/dist/plugin-sdk/{registry-CzaGoAKH.d.ts → registry-Gq9OFlb3.d.ts} +2 -2
- package/dist/plugin-sdk/{registry-types-DN1yiH3F.d.ts → registry-types-DyBkef1H.d.ts} +2 -2
- package/dist/plugin-sdk/reply-runtime.d.ts +1 -1
- package/dist/plugin-sdk/runtime-env.d.ts +3 -3
- package/dist/plugin-sdk/runtime-store.d.ts +1 -1
- package/dist/plugin-sdk/runtime.d.ts +3 -3
- package/dist/plugin-sdk/self-hosted-provider-setup.d.ts +2 -2
- package/dist/plugin-sdk/simple-completion-runtime.d.ts +1 -1
- package/dist/plugin-sdk/speech-core.d.ts +2 -2
- package/dist/plugin-sdk/speech.d.ts +2 -2
- package/dist/plugin-sdk/{subsystem-n4Y4vCcQ.d.ts → subsystem-Boo2DQIV.d.ts} +1 -1
- package/dist/plugin-sdk/text-runtime.d.ts +2 -2
- package/dist/plugin-sdk/tool-plugin.d.ts +2 -2
- package/dist/plugin-sdk/{types-BI8R-vGd.d.ts → types-DGF1KeaJ.d.ts} +2 -2
- package/dist/plugin-sdk/{types-CsqNt0j8.d.ts → types-DpaN54PS.d.ts} +1 -1
- package/dist/plugin-sdk/{unhandled-rejections-D9eBl3hT.d.ts → unhandled-rejections-Bez6JG0y.d.ts} +2 -2
- package/dist/plugin-sdk/video-generation-core.d.ts +3 -3
- package/dist/plugin-sdk/video-generation-runtime.d.ts +3 -3
- package/dist/plugin-sdk/webhook-ingress.d.ts +1 -1
- package/dist/plugin-sdk/webhook-targets.d.ts +1 -1
- package/dist/{program-D19g2jaa.js → program-BaCHjV-F.js} +1 -1
- package/dist/{register.crestodian-BhIukKDA.js → register.crestodian-DMJEPMf3.js} +1 -1
- package/dist/register.subclis-B0BgjwyK.js +3 -0
- package/dist/{register.subclis-DVk0HU4k.js → register.subclis-BuoWG93n.js} +2 -2
- package/dist/{register.subclis-core-BK7nVvl6.js → register.subclis-core-BGBFrWE3.js} +2 -2
- package/dist/{standalone-CHrieUsw.js → standalone-CV2Ud6F7.js} +1 -1
- package/dist/tui-Bvt7hhwe.js +3 -0
- package/dist/tui-CFSmzhsm.js +2 -0
- package/dist/{tui-backend-_Pn3Byj-.js → tui-backend-Bm_t5G7x.js} +4 -4
- package/dist/{tui-cli-CAiC39zd.js → tui-cli-9Ny23hmo.js} +1 -1
- package/dist/tui-ink-run-CuExfFLV.js +2 -0
- package/dist/{tui-ink-run-ChXEGj1h.js → tui-ink-run-qNL49iQn.js} +17 -1
- package/package.json +6 -410
- package/CHANGELOG.md +0 -42
- package/THIRD_PARTY_NOTICES.md +0 -37
- package/dist/register.subclis-Bsvdh8RI.js +0 -3
- package/dist/tui-C733Qov0.js +0 -2
- package/dist/tui-DqbscVN5.js +0 -3
- package/dist/tui-ink-run-D4mSfLHj.js +0 -2
- package/docs/.i18n/README.md +0 -81
- package/docs/.i18n/ar-navigation.json +0 -18
- package/docs/.i18n/de-navigation.json +0 -18
- package/docs/.i18n/es-navigation.json +0 -18
- package/docs/.i18n/fr-navigation.json +0 -18
- package/docs/.i18n/glossary.ar.json +0 -78
- package/docs/.i18n/glossary.de.json +0 -78
- package/docs/.i18n/glossary.es.json +0 -78
- package/docs/.i18n/glossary.fa.json +0 -78
- package/docs/.i18n/glossary.fr.json +0 -78
- package/docs/.i18n/glossary.id.json +0 -78
- package/docs/.i18n/glossary.it.json +0 -78
- package/docs/.i18n/glossary.ja-JP.json +0 -98
- package/docs/.i18n/glossary.ko.json +0 -78
- package/docs/.i18n/glossary.nl.json +0 -78
- package/docs/.i18n/glossary.pl.json +0 -78
- package/docs/.i18n/glossary.pt-BR.json +0 -78
- package/docs/.i18n/glossary.th.json +0 -78
- package/docs/.i18n/glossary.tr.json +0 -78
- package/docs/.i18n/glossary.uk.json +0 -78
- package/docs/.i18n/glossary.vi.json +0 -78
- package/docs/.i18n/glossary.zh-CN.json +0 -1122
- package/docs/.i18n/glossary.zh-TW.json +0 -78
- package/docs/.i18n/id-navigation.json +0 -18
- package/docs/.i18n/it-navigation.json +0 -18
- package/docs/.i18n/ja-navigation.json +0 -18
- package/docs/.i18n/ko-navigation.json +0 -18
- package/docs/.i18n/pl-navigation.json +0 -18
- package/docs/.i18n/pt-BR-navigation.json +0 -18
- package/docs/.i18n/tr-navigation.json +0 -18
- package/docs/.i18n/translation-workflow.md +0 -111
- package/docs/.i18n/zh-Hans-navigation.json +0 -552
- package/docs/AGENTS.md +0 -36
- package/docs/CLAUDE.md +0 -1
- package/docs/agent-runtime-architecture.md +0 -48
- package/docs/announcements/bluebubbles-imessage.md +0 -79
- package/docs/auth-credential-semantics.md +0 -124
- package/docs/automation/auth-monitoring.md +0 -11
- package/docs/automation/clawflow.md +0 -12
- package/docs/automation/cron-jobs.md +0 -534
- package/docs/automation/cron-vs-heartbeat.md +0 -11
- package/docs/automation/gmail-pubsub.md +0 -11
- package/docs/automation/hooks.md +0 -387
- package/docs/automation/index.md +0 -135
- package/docs/automation/poll.md +0 -12
- package/docs/automation/standing-orders.md +0 -250
- package/docs/automation/taskflow.md +0 -155
- package/docs/automation/tasks.md +0 -374
- package/docs/automation/troubleshooting.md +0 -12
- package/docs/automation/webhook.md +0 -12
- package/docs/brave-search.md +0 -11
- package/docs/channels/access-groups.md +0 -201
- package/docs/channels/ambient-room-events.md +0 -214
- package/docs/channels/bot-loop-protection.md +0 -131
- package/docs/channels/broadcast-groups.md +0 -472
- package/docs/channels/channel-routing.md +0 -162
- package/docs/channels/clickclack.md +0 -138
- package/docs/channels/discord.md +0 -1758
- package/docs/channels/feishu.md +0 -650
- package/docs/channels/googlechat.md +0 -284
- package/docs/channels/group-messages.md +0 -95
- package/docs/channels/groups.md +0 -524
- package/docs/channels/imessage-from-bluebubbles.md +0 -259
- package/docs/channels/imessage.md +0 -839
- package/docs/channels/index.md +0 -64
- package/docs/channels/irc.md +0 -253
- package/docs/channels/line.md +0 -243
- package/docs/channels/location.md +0 -71
- package/docs/channels/matrix-migration.md +0 -370
- package/docs/channels/matrix-presentation.md +0 -77
- package/docs/channels/matrix-push-rules.md +0 -150
- package/docs/channels/matrix.md +0 -921
- package/docs/channels/mattermost.md +0 -542
- package/docs/channels/msteams.md +0 -1096
- package/docs/channels/nextcloud-talk.md +0 -176
- package/docs/channels/nostr.md +0 -253
- package/docs/channels/pairing.md +0 -214
- package/docs/channels/qqbot.md +0 -314
- package/docs/channels/signal.md +0 -417
- package/docs/channels/slack.md +0 -1623
- package/docs/channels/synology-chat.md +0 -187
- package/docs/channels/telegram.md +0 -1124
- package/docs/channels/tlon.md +0 -296
- package/docs/channels/troubleshooting.md +0 -162
- package/docs/channels/twitch.md +0 -431
- package/docs/channels/wechat.md +0 -171
- package/docs/channels/whatsapp.md +0 -796
- package/docs/channels/yuanbao.md +0 -416
- package/docs/channels/zalo.md +0 -253
- package/docs/channels/zalouser.md +0 -217
- package/docs/ci.md +0 -657
- package/docs/clawhub/publishing.md +0 -96
- package/docs/cli/acp.md +0 -370
- package/docs/cli/agent.md +0 -109
- package/docs/cli/agents.md +0 -253
- package/docs/cli/approvals.md +0 -190
- package/docs/cli/backup.md +0 -98
- package/docs/cli/browser.md +0 -307
- package/docs/cli/channels.md +0 -154
- package/docs/cli/clawbot.md +0 -25
- package/docs/cli/commitments.md +0 -90
- package/docs/cli/completion.md +0 -39
- package/docs/cli/config.md +0 -504
- package/docs/cli/configure.md +0 -77
- package/docs/cli/crestodian.md +0 -337
- package/docs/cli/cron.md +0 -304
- package/docs/cli/daemon.md +0 -67
- package/docs/cli/dashboard.md +0 -33
- package/docs/cli/devices.md +0 -240
- package/docs/cli/directory.md +0 -68
- package/docs/cli/dns.md +0 -53
- package/docs/cli/docs.md +0 -63
- package/docs/cli/doctor.md +0 -241
- package/docs/cli/flows.md +0 -52
- package/docs/cli/gateway.md +0 -572
- package/docs/cli/health.md +0 -43
- package/docs/cli/hooks.md +0 -345
- package/docs/cli/index.md +0 -400
- package/docs/cli/infer.md +0 -364
- package/docs/cli/logs.md +0 -68
- package/docs/cli/mcp.md +0 -529
- package/docs/cli/memory.md +0 -183
- package/docs/cli/message.md +0 -317
- package/docs/cli/migrate.md +0 -334
- package/docs/cli/models.md +0 -239
- package/docs/cli/node.md +0 -177
- package/docs/cli/nodes.md +0 -76
- package/docs/cli/onboard.md +0 -250
- package/docs/cli/pairing.md +0 -77
- package/docs/cli/path.md +0 -511
- package/docs/cli/plugins.md +0 -459
- package/docs/cli/policy.md +0 -886
- package/docs/cli/proxy.md +0 -89
- package/docs/cli/qr.md +0 -56
- package/docs/cli/reset.md +0 -39
- package/docs/cli/sandbox.md +0 -208
- package/docs/cli/secrets.md +0 -202
- package/docs/cli/security.md +0 -136
- package/docs/cli/sessions.md +0 -164
- package/docs/cli/setup.md +0 -59
- package/docs/cli/skills.md +0 -122
- package/docs/cli/status.md +0 -45
- package/docs/cli/system.md +0 -89
- package/docs/cli/tasks.md +0 -111
- package/docs/cli/transcripts.md +0 -151
- package/docs/cli/tui.md +0 -91
- package/docs/cli/uninstall.md +0 -44
- package/docs/cli/update.md +0 -243
- package/docs/cli/voicecall.md +0 -204
- package/docs/cli/webhooks.md +0 -117
- package/docs/cli/wiki.md +0 -256
- package/docs/concepts/active-memory.md +0 -856
- package/docs/concepts/agent-loop.md +0 -185
- package/docs/concepts/agent-runtimes.md +0 -276
- package/docs/concepts/agent-workspace.md +0 -230
- package/docs/concepts/agent.md +0 -140
- package/docs/concepts/architecture.md +0 -154
- package/docs/concepts/channel-docking.md +0 -145
- package/docs/concepts/commitments.md +0 -150
- package/docs/concepts/compaction.md +0 -203
- package/docs/concepts/context-engine.md +0 -347
- package/docs/concepts/context.md +0 -199
- package/docs/concepts/delegate-architecture.md +0 -319
- package/docs/concepts/dreaming.md +0 -264
- package/docs/concepts/experimental-features.md +0 -109
- package/docs/concepts/features.md +0 -91
- package/docs/concepts/fengming-sdk.md +0 -323
- package/docs/concepts/mantis-slack-desktop-runbook.md +0 -231
- package/docs/concepts/mantis.md +0 -744
- package/docs/concepts/markdown-formatting.md +0 -139
- package/docs/concepts/memory-builtin.md +0 -148
- package/docs/concepts/memory-honcho.md +0 -144
- package/docs/concepts/memory-qmd.md +0 -271
- package/docs/concepts/memory-search.md +0 -167
- package/docs/concepts/memory.md +0 -299
- package/docs/concepts/message-lifecycle-refactor.md +0 -1126
- package/docs/concepts/messages.md +0 -214
- package/docs/concepts/model-failover.md +0 -384
- package/docs/concepts/model-providers.md +0 -719
- package/docs/concepts/models.md +0 -371
- package/docs/concepts/multi-agent.md +0 -625
- package/docs/concepts/oauth.md +0 -198
- package/docs/concepts/parallel-specialist-lanes.md +0 -127
- package/docs/concepts/personal-agent-benchmark-pack.md +0 -74
- package/docs/concepts/presence.md +0 -117
- package/docs/concepts/progress-drafts.md +0 -406
- package/docs/concepts/qa-e2e-automation.md +0 -947
- package/docs/concepts/qa-matrix.md +0 -139
- package/docs/concepts/queue-steering.md +0 -90
- package/docs/concepts/queue.md +0 -136
- package/docs/concepts/retry.md +0 -86
- package/docs/concepts/session-pruning.md +0 -104
- package/docs/concepts/session-tool.md +0 -188
- package/docs/concepts/session.md +0 -164
- package/docs/concepts/soul.md +0 -116
- package/docs/concepts/streaming.md +0 -257
- package/docs/concepts/system-prompt.md +0 -328
- package/docs/concepts/timezone.md +0 -47
- package/docs/concepts/typebox.md +0 -309
- package/docs/concepts/typing-indicators.md +0 -88
- package/docs/concepts/usage-tracking.md +0 -66
- package/docs/date-time.md +0 -126
- package/docs/debug/node-issue.md +0 -90
- package/docs/diagnostics/flags.md +0 -182
- package/docs/docs.json +0 -1862
- package/docs/fengming-agent-runtime.md +0 -82
- package/docs/gateway/authentication.md +0 -256
- package/docs/gateway/background-process.md +0 -147
- package/docs/gateway/bonjour.md +0 -303
- package/docs/gateway/bridge-protocol.md +0 -97
- package/docs/gateway/cli-backends.md +0 -439
- package/docs/gateway/config-agents.md +0 -1525
- package/docs/gateway/config-channels.md +0 -945
- package/docs/gateway/config-tools.md +0 -774
- package/docs/gateway/configuration-examples.md +0 -704
- package/docs/gateway/configuration-reference.md +0 -1391
- package/docs/gateway/configuration.md +0 -739
- package/docs/gateway/diagnostics.md +0 -213
- package/docs/gateway/discovery.md +0 -154
- package/docs/gateway/doctor.md +0 -575
- package/docs/gateway/gateway-lock.md +0 -37
- package/docs/gateway/health.md +0 -73
- package/docs/gateway/heartbeat.md +0 -498
- package/docs/gateway/index.md +0 -383
- package/docs/gateway/local-model-services.md +0 -205
- package/docs/gateway/local-models.md +0 -355
- package/docs/gateway/logging.md +0 -149
- package/docs/gateway/multiple-gateways.md +0 -178
- package/docs/gateway/network-model.md +0 -15
- package/docs/gateway/openai-http-api.md +0 -378
- package/docs/gateway/openresponses-http-api.md +0 -347
- package/docs/gateway/openshell.md +0 -316
- package/docs/gateway/opentelemetry.md +0 -433
- package/docs/gateway/operator-scopes.md +0 -119
- package/docs/gateway/pairing.md +0 -207
- package/docs/gateway/prometheus.md +0 -249
- package/docs/gateway/protocol.md +0 -826
- package/docs/gateway/remote-gateway-readme.md +0 -169
- package/docs/gateway/remote.md +0 -280
- package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -148
- package/docs/gateway/sandboxing.md +0 -546
- package/docs/gateway/secrets-plan-contract.md +0 -159
- package/docs/gateway/secrets.md +0 -805
- package/docs/gateway/security/audit-checks.md +0 -127
- package/docs/gateway/security/exposure-runbook.md +0 -212
- package/docs/gateway/security/index.md +0 -1343
- package/docs/gateway/security/secure-file-operations.md +0 -76
- package/docs/gateway/security/shrinkwrap.md +0 -111
- package/docs/gateway/tailscale.md +0 -156
- package/docs/gateway/tools-invoke-http-api.md +0 -169
- package/docs/gateway/troubleshooting.md +0 -877
- package/docs/gateway/trusted-proxy-auth.md +0 -483
- package/docs/help/debugging.md +0 -341
- package/docs/help/environment.md +0 -233
- package/docs/help/faq-first-run.md +0 -870
- package/docs/help/faq-models.md +0 -556
- package/docs/help/faq.md +0 -2041
- package/docs/help/index.md +0 -39
- package/docs/help/scripts.md +0 -56
- package/docs/help/testing-live.md +0 -587
- package/docs/help/testing-updates-plugins.md +0 -299
- package/docs/help/testing.md +0 -977
- package/docs/help/troubleshooting.md +0 -449
- package/docs/index.md +0 -196
- package/docs/install/ansible.md +0 -233
- package/docs/install/azure.md +0 -315
- package/docs/install/bun.md +0 -59
- package/docs/install/clawdock.md +0 -112
- package/docs/install/development-channels.md +0 -148
- package/docs/install/digitalocean.md +0 -174
- package/docs/install/docker-vm-runtime.md +0 -154
- package/docs/install/docker.md +0 -564
- package/docs/install/exe-dev.md +0 -201
- package/docs/install/fly.md +0 -524
- package/docs/install/gcp.md +0 -418
- package/docs/install/hetzner.md +0 -285
- package/docs/install/hostinger.md +0 -98
- package/docs/install/index.md +0 -232
- package/docs/install/installer.md +0 -447
- package/docs/install/kubernetes.md +0 -196
- package/docs/install/macos-vm.md +0 -281
- package/docs/install/migrating-claude.md +0 -165
- package/docs/install/migrating-hermes.md +0 -178
- package/docs/install/migrating.md +0 -137
- package/docs/install/nix.md +0 -112
- package/docs/install/node.md +0 -142
- package/docs/install/northflank.mdx +0 -44
- package/docs/install/oracle.md +0 -218
- package/docs/install/podman.md +0 -216
- package/docs/install/railway.mdx +0 -92
- package/docs/install/raspberry-pi.md +0 -234
- package/docs/install/render.mdx +0 -167
- package/docs/install/uninstall.md +0 -131
- package/docs/install/updating.md +0 -284
- package/docs/install/upstash.md +0 -96
- package/docs/logging.md +0 -320
- package/docs/nav-tabs-underline.js +0 -100
- package/docs/network.md +0 -72
- package/docs/nodes/audio.md +0 -216
- package/docs/nodes/camera.md +0 -166
- package/docs/nodes/images.md +0 -77
- package/docs/nodes/index.md +0 -439
- package/docs/nodes/location-command.md +0 -102
- package/docs/nodes/media-understanding.md +0 -495
- package/docs/nodes/talk.md +0 -160
- package/docs/nodes/troubleshooting.md +0 -123
- package/docs/nodes/voicewake.md +0 -93
- package/docs/perplexity.md +0 -11
- package/docs/plan/codex-context-engine-harness.md +0 -624
- package/docs/plan/ui-channels.md +0 -284
- package/docs/platforms/digitalocean.md +0 -12
- package/docs/platforms/easyrunner.md +0 -109
- package/docs/platforms/index.md +0 -51
- package/docs/platforms/linux.md +0 -141
- package/docs/platforms/mac/bundled-gateway.md +0 -79
- package/docs/platforms/mac/canvas.md +0 -128
- package/docs/platforms/mac/child-process.md +0 -72
- package/docs/platforms/mac/dev-setup.md +0 -112
- package/docs/platforms/mac/health.md +0 -39
- package/docs/platforms/mac/icon.md +0 -36
- package/docs/platforms/mac/logging.md +0 -62
- package/docs/platforms/mac/menu-bar.md +0 -93
- package/docs/platforms/mac/peekaboo.md +0 -96
- package/docs/platforms/mac/permissions.md +0 -73
- package/docs/platforms/mac/remote.md +0 -123
- package/docs/platforms/mac/signing.md +0 -52
- package/docs/platforms/mac/skills.md +0 -43
- package/docs/platforms/mac/voice-overlay.md +0 -66
- package/docs/platforms/mac/voicewake.md +0 -73
- package/docs/platforms/mac/webchat.md +0 -54
- package/docs/platforms/mac/xpc.md +0 -66
- package/docs/platforms/oracle.md +0 -12
- package/docs/platforms/raspberry-pi.md +0 -13
- package/docs/platforms/windows.md +0 -286
- package/docs/plugins/adding-capabilities.md +0 -146
- package/docs/plugins/admin-http-rpc.md +0 -216
- package/docs/plugins/agent-tools.md +0 -13
- package/docs/plugins/architecture-internals.md +0 -1196
- package/docs/plugins/architecture.md +0 -483
- package/docs/plugins/building-extensions.md +0 -13
- package/docs/plugins/building-plugins.md +0 -335
- package/docs/plugins/bundles.md +0 -310
- package/docs/plugins/cli-backend-plugins.md +0 -310
- package/docs/plugins/codex-computer-use.md +0 -297
- package/docs/plugins/codex-harness-reference.md +0 -470
- package/docs/plugins/codex-harness-runtime.md +0 -268
- package/docs/plugins/codex-harness.md +0 -780
- package/docs/plugins/codex-native-plugins.md +0 -276
- package/docs/plugins/community.md +0 -77
- package/docs/plugins/compatibility.md +0 -167
- package/docs/plugins/copilot.md +0 -356
- package/docs/plugins/dependency-resolution.md +0 -176
- package/docs/plugins/google-meet.md +0 -1737
- package/docs/plugins/hooks.md +0 -484
- package/docs/plugins/install-overrides.md +0 -80
- package/docs/plugins/manage-plugins.md +0 -210
- package/docs/plugins/manifest.md +0 -1457
- package/docs/plugins/memory-lancedb.md +0 -385
- package/docs/plugins/memory-wiki.md +0 -529
- package/docs/plugins/message-presentation.md +0 -473
- package/docs/plugins/oc-path.md +0 -166
- package/docs/plugins/plugin-inventory.md +0 -189
- package/docs/plugins/plugin-permission-requests.md +0 -193
- package/docs/plugins/reference/acpx.md +0 -23
- package/docs/plugins/reference/admin-http-rpc.md +0 -23
- package/docs/plugins/reference/alibaba.md +0 -23
- package/docs/plugins/reference/amazon-bedrock-mantle.md +0 -23
- package/docs/plugins/reference/amazon-bedrock.md +0 -23
- package/docs/plugins/reference/anthropic-vertex.md +0 -19
- package/docs/plugins/reference/anthropic.md +0 -23
- package/docs/plugins/reference/arcee.md +0 -23
- package/docs/plugins/reference/azure-speech.md +0 -23
- package/docs/plugins/reference/bonjour.md +0 -19
- package/docs/plugins/reference/brave.md +0 -23
- package/docs/plugins/reference/browser.md +0 -23
- package/docs/plugins/reference/byteplus.md +0 -19
- package/docs/plugins/reference/canvas.md +0 -19
- package/docs/plugins/reference/cerebras.md +0 -23
- package/docs/plugins/reference/chutes.md +0 -23
- package/docs/plugins/reference/clickclack.md +0 -23
- package/docs/plugins/reference/cloudflare-ai-gateway.md +0 -23
- package/docs/plugins/reference/codex-supervisor.md +0 -27
- package/docs/plugins/reference/codex.md +0 -23
- package/docs/plugins/reference/comfy.md +0 -23
- package/docs/plugins/reference/copilot-proxy.md +0 -19
- package/docs/plugins/reference/copilot.md +0 -23
- package/docs/plugins/reference/deepgram.md +0 -23
- package/docs/plugins/reference/deepinfra.md +0 -23
- package/docs/plugins/reference/deepseek.md +0 -23
- package/docs/plugins/reference/diagnostics-otel.md +0 -19
- package/docs/plugins/reference/diagnostics-prometheus.md +0 -19
- package/docs/plugins/reference/diffs-language-pack.md +0 -19
- package/docs/plugins/reference/diffs.md +0 -19
- package/docs/plugins/reference/discord.md +0 -23
- package/docs/plugins/reference/document-extract.md +0 -23
- package/docs/plugins/reference/duckduckgo.md +0 -23
- package/docs/plugins/reference/elevenlabs.md +0 -23
- package/docs/plugins/reference/exa.md +0 -23
- package/docs/plugins/reference/fal.md +0 -23
- package/docs/plugins/reference/feishu.md +0 -23
- package/docs/plugins/reference/file-transfer.md +0 -19
- package/docs/plugins/reference/firecrawl.md +0 -23
- package/docs/plugins/reference/fireworks.md +0 -23
- package/docs/plugins/reference/github-copilot.md +0 -23
- package/docs/plugins/reference/gmi.md +0 -23
- package/docs/plugins/reference/google-meet.md +0 -23
- package/docs/plugins/reference/google.md +0 -23
- package/docs/plugins/reference/googlechat.md +0 -23
- package/docs/plugins/reference/gradium.md +0 -23
- package/docs/plugins/reference/groq.md +0 -23
- package/docs/plugins/reference/huggingface.md +0 -23
- package/docs/plugins/reference/imessage.md +0 -23
- package/docs/plugins/reference/inworld.md +0 -23
- package/docs/plugins/reference/irc.md +0 -23
- package/docs/plugins/reference/kilocode.md +0 -23
- package/docs/plugins/reference/kimi.md +0 -23
- package/docs/plugins/reference/line.md +0 -23
- package/docs/plugins/reference/litellm.md +0 -23
- package/docs/plugins/reference/llm-task.md +0 -19
- package/docs/plugins/reference/lmstudio.md +0 -23
- package/docs/plugins/reference/lobster.md +0 -19
- package/docs/plugins/reference/matrix.md +0 -23
- package/docs/plugins/reference/mattermost.md +0 -23
- package/docs/plugins/reference/memory-core.md +0 -19
- package/docs/plugins/reference/memory-lancedb.md +0 -23
- package/docs/plugins/reference/memory-wiki.md +0 -23
- package/docs/plugins/reference/microsoft-foundry.md +0 -19
- package/docs/plugins/reference/microsoft.md +0 -19
- package/docs/plugins/reference/migrate-claude.md +0 -19
- package/docs/plugins/reference/migrate-hermes.md +0 -19
- package/docs/plugins/reference/minimax.md +0 -23
- package/docs/plugins/reference/mistral.md +0 -23
- package/docs/plugins/reference/moonshot.md +0 -23
- package/docs/plugins/reference/msteams.md +0 -23
- package/docs/plugins/reference/nextcloud-talk.md +0 -23
- package/docs/plugins/reference/nostr.md +0 -23
- package/docs/plugins/reference/novita.md +0 -23
- package/docs/plugins/reference/nvidia.md +0 -23
- package/docs/plugins/reference/oc-path.md +0 -23
- package/docs/plugins/reference/ollama.md +0 -23
- package/docs/plugins/reference/open-prose.md +0 -19
- package/docs/plugins/reference/openai.md +0 -23
- package/docs/plugins/reference/opencode-go.md +0 -23
- package/docs/plugins/reference/opencode.md +0 -23
- package/docs/plugins/reference/openrouter.md +0 -23
- package/docs/plugins/reference/openshell.md +0 -19
- package/docs/plugins/reference/perplexity.md +0 -23
- package/docs/plugins/reference/pixverse.md +0 -23
- package/docs/plugins/reference/policy.md +0 -72
- package/docs/plugins/reference/qa-channel.md +0 -23
- package/docs/plugins/reference/qa-lab.md +0 -19
- package/docs/plugins/reference/qa-matrix.md +0 -19
- package/docs/plugins/reference/qianfan.md +0 -23
- package/docs/plugins/reference/qqbot.md +0 -23
- package/docs/plugins/reference/qwen.md +0 -23
- package/docs/plugins/reference/runway.md +0 -23
- package/docs/plugins/reference/searxng.md +0 -19
- package/docs/plugins/reference/senseaudio.md +0 -23
- package/docs/plugins/reference/sglang.md +0 -23
- package/docs/plugins/reference/signal.md +0 -23
- package/docs/plugins/reference/skill-workshop.md +0 -23
- package/docs/plugins/reference/slack.md +0 -23
- package/docs/plugins/reference/stepfun.md +0 -23
- package/docs/plugins/reference/synology-chat.md +0 -23
- package/docs/plugins/reference/synthetic.md +0 -23
- package/docs/plugins/reference/tavily.md +0 -23
- package/docs/plugins/reference/telegram.md +0 -23
- package/docs/plugins/reference/tencent.md +0 -23
- package/docs/plugins/reference/tlon.md +0 -23
- package/docs/plugins/reference/together.md +0 -23
- package/docs/plugins/reference/tokenjuice.md +0 -23
- package/docs/plugins/reference/tts-local-cli.md +0 -19
- package/docs/plugins/reference/twitch.md +0 -23
- package/docs/plugins/reference/venice.md +0 -23
- package/docs/plugins/reference/vercel-ai-gateway.md +0 -23
- package/docs/plugins/reference/vllm.md +0 -23
- package/docs/plugins/reference/voice-call.md +0 -23
- package/docs/plugins/reference/volcengine.md +0 -23
- package/docs/plugins/reference/voyage.md +0 -19
- package/docs/plugins/reference/vydra.md +0 -23
- package/docs/plugins/reference/web-readability.md +0 -19
- package/docs/plugins/reference/webhooks.md +0 -23
- package/docs/plugins/reference/whatsapp.md +0 -23
- package/docs/plugins/reference/workboard.md +0 -23
- package/docs/plugins/reference/xai.md +0 -23
- package/docs/plugins/reference/xiaomi.md +0 -23
- package/docs/plugins/reference/zai.md +0 -23
- package/docs/plugins/reference/zalo.md +0 -23
- package/docs/plugins/reference/zalouser.md +0 -24
- package/docs/plugins/reference.md +0 -145
- package/docs/plugins/sdk-agent-harness.md +0 -338
- package/docs/plugins/sdk-channel-inbound.md +0 -70
- package/docs/plugins/sdk-channel-ingress.md +0 -137
- package/docs/plugins/sdk-channel-message.md +0 -18
- package/docs/plugins/sdk-channel-outbound.md +0 -113
- package/docs/plugins/sdk-channel-plugins.md +0 -765
- package/docs/plugins/sdk-channel-turn.md +0 -9
- package/docs/plugins/sdk-entrypoints.md +0 -344
- package/docs/plugins/sdk-migration.md +0 -979
- package/docs/plugins/sdk-overview.md +0 -511
- package/docs/plugins/sdk-provider-plugins.md +0 -846
- package/docs/plugins/sdk-runtime.md +0 -676
- package/docs/plugins/sdk-setup.md +0 -550
- package/docs/plugins/sdk-subpaths.md +0 -391
- package/docs/plugins/sdk-testing.md +0 -403
- package/docs/plugins/skill-workshop.md +0 -713
- package/docs/plugins/tool-plugins.md +0 -411
- package/docs/plugins/voice-call.md +0 -942
- package/docs/plugins/webhooks.md +0 -192
- package/docs/plugins/workboard.md +0 -252
- package/docs/plugins/zalouser.md +0 -86
- package/docs/prose.md +0 -137
- package/docs/providers/alibaba.md +0 -158
- package/docs/providers/anthropic.md +0 -381
- package/docs/providers/arcee.md +0 -144
- package/docs/providers/azure-speech.md +0 -119
- package/docs/providers/bedrock-mantle.md +0 -211
- package/docs/providers/bedrock.md +0 -414
- package/docs/providers/cerebras.md +0 -130
- package/docs/providers/chutes.md +0 -153
- package/docs/providers/claude-max-api-proxy.md +0 -191
- package/docs/providers/cloudflare-ai-gateway.md +0 -119
- package/docs/providers/comfy.md +0 -362
- package/docs/providers/deepgram.md +0 -184
- package/docs/providers/deepinfra.md +0 -92
- package/docs/providers/deepseek.md +0 -146
- package/docs/providers/ds4.md +0 -309
- package/docs/providers/elevenlabs.md +0 -130
- package/docs/providers/fal.md +0 -240
- package/docs/providers/fireworks.md +0 -144
- package/docs/providers/github-copilot.md +0 -257
- package/docs/providers/gmi.md +0 -92
- package/docs/providers/google.md +0 -472
- package/docs/providers/gradium.md +0 -123
- package/docs/providers/groq.md +0 -171
- package/docs/providers/huggingface.md +0 -235
- package/docs/providers/index.md +0 -105
- package/docs/providers/inferrs.md +0 -272
- package/docs/providers/inworld.md +0 -120
- package/docs/providers/kilocode.md +0 -135
- package/docs/providers/litellm.md +0 -234
- package/docs/providers/lmstudio.md +0 -224
- package/docs/providers/minimax.md +0 -505
- package/docs/providers/mistral.md +0 -235
- package/docs/providers/models.md +0 -64
- package/docs/providers/moonshot.md +0 -413
- package/docs/providers/novita.md +0 -92
- package/docs/providers/nvidia.md +0 -158
- package/docs/providers/ollama-cloud.md +0 -115
- package/docs/providers/ollama.md +0 -1225
- package/docs/providers/openai.md +0 -1093
- package/docs/providers/opencode-go.md +0 -123
- package/docs/providers/opencode.md +0 -149
- package/docs/providers/openrouter.md +0 -349
- package/docs/providers/perplexity-provider.md +0 -123
- package/docs/providers/pixverse.md +0 -165
- package/docs/providers/qianfan.md +0 -132
- package/docs/providers/qwen-oauth.md +0 -115
- package/docs/providers/qwen.md +0 -364
- package/docs/providers/runway.md +0 -103
- package/docs/providers/senseaudio.md +0 -68
- package/docs/providers/sglang.md +0 -161
- package/docs/providers/stepfun.md +0 -229
- package/docs/providers/synthetic.md +0 -154
- package/docs/providers/tencent.md +0 -130
- package/docs/providers/together.md +0 -140
- package/docs/providers/venice.md +0 -312
- package/docs/providers/vercel-ai-gateway.md +0 -128
- package/docs/providers/vllm.md +0 -407
- package/docs/providers/volcengine.md +0 -199
- package/docs/providers/vydra.md +0 -180
- package/docs/providers/xai.md +0 -571
- package/docs/providers/xiaomi.md +0 -262
- package/docs/providers/zai.md +0 -224
- package/docs/refactor/access.md +0 -9
- package/docs/refactor/acp.md +0 -298
- package/docs/refactor/canvas.md +0 -131
- package/docs/refactor/database-first.md +0 -2256
- package/docs/refactor/ingress-core.md +0 -341
- package/docs/reference/AGENTS.default.md +0 -131
- package/docs/reference/RELEASING.md +0 -799
- package/docs/reference/api-usage-costs.md +0 -208
- package/docs/reference/application-modernization-plan.md +0 -208
- package/docs/reference/code-mode.md +0 -773
- package/docs/reference/credits.md +0 -33
- package/docs/reference/device-models.md +0 -50
- package/docs/reference/fengming-sdk-api-design.md +0 -390
- package/docs/reference/full-release-validation.md +0 -202
- package/docs/reference/memory-config.md +0 -604
- package/docs/reference/prompt-caching.md +0 -358
- package/docs/reference/release-performance-sweep.md +0 -360
- package/docs/reference/rich-output-protocol.md +0 -101
- package/docs/reference/rpc.md +0 -43
- package/docs/reference/secret-placeholder-conventions.md +0 -33
- package/docs/reference/secretref-credential-surface.md +0 -159
- package/docs/reference/secretref-user-supplied-credentials-matrix.json +0 -663
- package/docs/reference/session-management-compaction.md +0 -474
- package/docs/reference/templates/AGENTS.dev.md +0 -90
- package/docs/reference/templates/AGENTS.md +0 -227
- package/docs/reference/templates/BOOT.md +0 -16
- package/docs/reference/templates/BOOTSTRAP.md +0 -66
- package/docs/reference/templates/CLAUDE.md +0 -1
- package/docs/reference/templates/HEARTBEAT.md +0 -24
- package/docs/reference/templates/IDENTITY.dev.md +0 -52
- package/docs/reference/templates/IDENTITY.md +0 -34
- package/docs/reference/templates/SOUL.dev.md +0 -82
- package/docs/reference/templates/SOUL.md +0 -49
- package/docs/reference/templates/TOOLS.dev.md +0 -29
- package/docs/reference/templates/TOOLS.md +0 -51
- package/docs/reference/templates/USER.dev.md +0 -23
- package/docs/reference/templates/USER.md +0 -28
- package/docs/reference/test.md +0 -247
- package/docs/reference/token-use.md +0 -246
- package/docs/reference/transcript-hygiene.md +0 -214
- package/docs/reference/wizard.md +0 -252
- package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -101
- package/docs/security/THREAT-MODEL-ATLAS.md +0 -611
- package/docs/security/formal-verification.md +0 -170
- package/docs/security/incident-response.md +0 -59
- package/docs/security/network-proxy.md +0 -268
- package/docs/snippets/plugin-publish/minimal-fengming.plugin.json +0 -12
- package/docs/snippets/plugin-publish/minimal-package.json +0 -16
- package/docs/specs/claw-supervisor.md +0 -247
- package/docs/start/bootstrapping.md +0 -49
- package/docs/start/docs-directory.md +0 -69
- package/docs/start/fengming.md +0 -252
- package/docs/start/getting-started.md +0 -152
- package/docs/start/hubs.md +0 -201
- package/docs/start/lore.md +0 -223
- package/docs/start/onboarding-overview.md +0 -72
- package/docs/start/onboarding.md +0 -98
- package/docs/start/quickstart.md +0 -25
- package/docs/start/setup.md +0 -178
- package/docs/start/showcase.md +0 -363
- package/docs/start/wizard-cli-automation.md +0 -232
- package/docs/start/wizard-cli-reference.md +0 -331
- package/docs/start/wizard.md +0 -141
- package/docs/style.css +0 -137
- package/docs/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md +0 -316
- package/docs/tools/acp-agents-setup.md +0 -351
- package/docs/tools/acp-agents.md +0 -854
- package/docs/tools/agent-send.md +0 -130
- package/docs/tools/apply-patch.md +0 -64
- package/docs/tools/brave-search.md +0 -139
- package/docs/tools/browser-control.md +0 -391
- package/docs/tools/browser-linux-troubleshooting.md +0 -173
- package/docs/tools/browser-login.md +0 -77
- package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +0 -219
- package/docs/tools/browser.md +0 -810
- package/docs/tools/btw.md +0 -159
- package/docs/tools/capability-cookbook.md +0 -12
- package/docs/tools/clawhub.md +0 -5
- package/docs/tools/code-execution.md +0 -173
- package/docs/tools/creating-skills.md +0 -158
- package/docs/tools/diffs.md +0 -525
- package/docs/tools/duckduckgo-search.md +0 -109
- package/docs/tools/elevated.md +0 -128
- package/docs/tools/exa-search.md +0 -152
- package/docs/tools/exec-approvals-advanced.md +0 -444
- package/docs/tools/exec-approvals.md +0 -494
- package/docs/tools/exec.md +0 -285
- package/docs/tools/firecrawl.md +0 -155
- package/docs/tools/gemini-search.md +0 -114
- package/docs/tools/goal.md +0 -217
- package/docs/tools/grok-search.md +0 -129
- package/docs/tools/image-generation.md +0 -493
- package/docs/tools/index.md +0 -178
- package/docs/tools/kimi-search.md +0 -105
- package/docs/tools/llm-task.md +0 -137
- package/docs/tools/lobster.md +0 -365
- package/docs/tools/loop-detection.md +0 -154
- package/docs/tools/media-overview.md +0 -160
- package/docs/tools/minimax-search.md +0 -102
- package/docs/tools/multi-agent-sandbox-tools.md +0 -409
- package/docs/tools/music-generation.md +0 -372
- package/docs/tools/ollama-search.md +0 -153
- package/docs/tools/pdf.md +0 -213
- package/docs/tools/perplexity-search.md +0 -220
- package/docs/tools/plugin.md +0 -363
- package/docs/tools/reactions.md +0 -100
- package/docs/tools/searxng-search.md +0 -141
- package/docs/tools/skills-config.md +0 -195
- package/docs/tools/skills.md +0 -569
- package/docs/tools/slash-commands.md +0 -487
- package/docs/tools/steer.md +0 -77
- package/docs/tools/subagents.md +0 -651
- package/docs/tools/tavily.md +0 -162
- package/docs/tools/thinking.md +0 -142
- package/docs/tools/tokenjuice.md +0 -84
- package/docs/tools/tool-search.md +0 -269
- package/docs/tools/trajectory.md +0 -229
- package/docs/tools/tts.md +0 -1009
- package/docs/tools/video-generation.md +0 -555
- package/docs/tools/web-fetch.md +0 -210
- package/docs/tools/web.md +0 -461
- package/docs/tts.md +0 -11
- package/docs/vps.md +0 -139
- package/docs/web/control-ui.md +0 -512
- package/docs/web/dashboard.md +0 -107
- package/docs/web/index.md +0 -133
- package/docs/web/tui.md +0 -250
- package/docs/web/webchat.md +0 -102
- package/npm-shrinkwrap.json +0 -12861
- package/patches/.gitkeep +0 -0
- package/patches/@agentclientprotocol__claude-agent-acp@0.37.0.patch +0 -41
- package/pnpm-workspace.yaml +0 -120
- package/scripts/crabbox-wrapper.mjs +0 -2004
- package/scripts/lib/official-external-channel-catalog.json +0 -560
- package/scripts/lib/official-external-plugin-catalog.json +0 -264
- package/scripts/lib/official-external-provider-catalog.json +0 -158
- package/scripts/lib/package-dist-imports.mjs +0 -171
- package/scripts/npm-runner.mjs +0 -91
- package/scripts/postinstall-bundled-plugins.mjs +0 -978
- package/scripts/preinstall-package-manager-warning.mjs +0 -64
- package/scripts/prepare-git-hooks.mjs +0 -72
- package/scripts/windows-cmd-helpers.mjs +0 -22
- package/skills/batch/SKILL.md +0 -118
- package/skills/code-review/SKILL.md +0 -107
- package/skills/debug/SKILL.md +0 -83
- package/skills/loop/SKILL.md +0 -118
- package/skills/run/SKILL.md +0 -79
- package/skills/run-skill-generator/SKILL.md +0 -179
- package/skills/verify/SKILL.md +0 -103
- package/src/agents/templates/HEARTBEAT.md +0 -3
|
@@ -1,347 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Context engine: pluggable context assembly, compaction, and subagent lifecycle"
|
|
3
|
-
read_when:
|
|
4
|
-
- You want to understand how FengMing assembles model context
|
|
5
|
-
- You are switching between the legacy engine and a plugin engine
|
|
6
|
-
- You are building a context engine plugin
|
|
7
|
-
title: "Context engine"
|
|
8
|
-
sidebarTitle: "Context engine"
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
A **context engine** controls how FengMing builds model context for each run: which messages to include, how to summarize older history, and how to manage context across subagent boundaries.
|
|
12
|
-
|
|
13
|
-
FengMing ships with a built-in `legacy` engine and uses it by default - most users never need to change this. Install and select a plugin engine only when you want different assembly, compaction, or cross-session recall behavior.
|
|
14
|
-
|
|
15
|
-
## Quick start
|
|
16
|
-
|
|
17
|
-
<Steps>
|
|
18
|
-
<Step title="Check which engine is active">
|
|
19
|
-
```bash
|
|
20
|
-
fengming doctor
|
|
21
|
-
# or inspect config directly:
|
|
22
|
-
cat ~/.fengming/fengming.json | jq '.plugins.slots.contextEngine'
|
|
23
|
-
```
|
|
24
|
-
</Step>
|
|
25
|
-
<Step title="Install a plugin engine">
|
|
26
|
-
Context engine plugins are installed like any other FengMing plugin.
|
|
27
|
-
|
|
28
|
-
<Tabs>
|
|
29
|
-
<Tab title="From npm">
|
|
30
|
-
```bash
|
|
31
|
-
fengming plugins install @martian-engineering/lossless-claw
|
|
32
|
-
```
|
|
33
|
-
</Tab>
|
|
34
|
-
<Tab title="From a local path">
|
|
35
|
-
```bash
|
|
36
|
-
fengming plugins install -l ./my-context-engine
|
|
37
|
-
```
|
|
38
|
-
</Tab>
|
|
39
|
-
</Tabs>
|
|
40
|
-
|
|
41
|
-
</Step>
|
|
42
|
-
<Step title="Enable and select the engine">
|
|
43
|
-
```json5
|
|
44
|
-
// fengming.json
|
|
45
|
-
{
|
|
46
|
-
plugins: {
|
|
47
|
-
slots: {
|
|
48
|
-
contextEngine: "lossless-claw", // must match the plugin's registered engine id
|
|
49
|
-
},
|
|
50
|
-
entries: {
|
|
51
|
-
"lossless-claw": {
|
|
52
|
-
enabled: true,
|
|
53
|
-
// Plugin-specific config goes here (see the plugin's docs)
|
|
54
|
-
},
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
}
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
Restart the gateway after installing and configuring.
|
|
61
|
-
|
|
62
|
-
</Step>
|
|
63
|
-
<Step title="Switch back to legacy (optional)">
|
|
64
|
-
Set `contextEngine` to `"legacy"` (or remove the key entirely - `"legacy"` is the default).
|
|
65
|
-
</Step>
|
|
66
|
-
</Steps>
|
|
67
|
-
|
|
68
|
-
## How it works
|
|
69
|
-
|
|
70
|
-
Every time FengMing runs a model prompt, the context engine participates at four lifecycle points:
|
|
71
|
-
|
|
72
|
-
<AccordionGroup>
|
|
73
|
-
<Accordion title="1. Ingest">
|
|
74
|
-
Called when a new message is added to the session. The engine can store or index the message in its own data store.
|
|
75
|
-
</Accordion>
|
|
76
|
-
<Accordion title="2. Assemble">
|
|
77
|
-
Called before each model run. The engine returns an ordered set of messages (and an optional `systemPromptAddition`) that fit within the token budget.
|
|
78
|
-
</Accordion>
|
|
79
|
-
<Accordion title="3. Compact">
|
|
80
|
-
Called when the context window is full, or when the user runs `/compact`. The engine summarizes older history to free space.
|
|
81
|
-
</Accordion>
|
|
82
|
-
<Accordion title="4. After turn">
|
|
83
|
-
Called after a run completes. The engine can persist state, trigger background compaction, or update indexes.
|
|
84
|
-
</Accordion>
|
|
85
|
-
</AccordionGroup>
|
|
86
|
-
|
|
87
|
-
For the bundled non-ACP Codex harness, FengMing applies the same lifecycle by projecting assembled context into Codex developer instructions and the current turn prompt. Codex still owns its native thread history and native compactor.
|
|
88
|
-
|
|
89
|
-
### Subagent lifecycle (optional)
|
|
90
|
-
|
|
91
|
-
FengMing calls two optional subagent lifecycle hooks:
|
|
92
|
-
|
|
93
|
-
<ParamField path="prepareSubagentSpawn" type="method">
|
|
94
|
-
Prepare shared context state before a child run starts. The hook receives parent/child session keys, `contextMode` (`isolated` or `fork`), available transcript ids/files, and optional TTL. If it returns a rollback handle, FengMing calls it when spawn fails after preparation succeeds.
|
|
95
|
-
</ParamField>
|
|
96
|
-
<ParamField path="onSubagentEnded" type="method">
|
|
97
|
-
Clean up when a subagent session completes or is swept.
|
|
98
|
-
</ParamField>
|
|
99
|
-
|
|
100
|
-
### System prompt addition
|
|
101
|
-
|
|
102
|
-
The `assemble` method can return a `systemPromptAddition` string. FengMing prepends this to the system prompt for the run. This lets engines inject dynamic recall guidance, retrieval instructions, or context-aware hints without requiring static workspace files.
|
|
103
|
-
|
|
104
|
-
## The legacy engine
|
|
105
|
-
|
|
106
|
-
The built-in `legacy` engine preserves FengMing's original behavior:
|
|
107
|
-
|
|
108
|
-
- **Ingest**: no-op (the session manager handles message persistence directly).
|
|
109
|
-
- **Assemble**: pass-through (the existing sanitize → validate → limit pipeline in the runtime handles context assembly).
|
|
110
|
-
- **Compact**: delegates to the built-in summarization compaction, which creates a single summary of older messages and keeps recent messages intact.
|
|
111
|
-
- **After turn**: no-op.
|
|
112
|
-
|
|
113
|
-
The legacy engine does not register tools or provide a `systemPromptAddition`.
|
|
114
|
-
|
|
115
|
-
When no `plugins.slots.contextEngine` is set (or it's set to `"legacy"`), this engine is used automatically.
|
|
116
|
-
|
|
117
|
-
## Plugin engines
|
|
118
|
-
|
|
119
|
-
A plugin can register a context engine using the plugin API:
|
|
120
|
-
|
|
121
|
-
```ts
|
|
122
|
-
import { buildMemorySystemPromptAddition } from "fengming/plugin-sdk/core";
|
|
123
|
-
|
|
124
|
-
export default function register(api) {
|
|
125
|
-
api.registerContextEngine("my-engine", (ctx) => ({
|
|
126
|
-
info: {
|
|
127
|
-
id: "my-engine",
|
|
128
|
-
name: "My Context Engine",
|
|
129
|
-
ownsCompaction: true,
|
|
130
|
-
},
|
|
131
|
-
|
|
132
|
-
async ingest({ sessionId, message, isHeartbeat }) {
|
|
133
|
-
// Store the message in your data store
|
|
134
|
-
return { ingested: true };
|
|
135
|
-
},
|
|
136
|
-
|
|
137
|
-
async assemble({ sessionId, messages, tokenBudget, availableTools, citationsMode }) {
|
|
138
|
-
// Return messages that fit the budget
|
|
139
|
-
return {
|
|
140
|
-
messages: buildContext(messages, tokenBudget),
|
|
141
|
-
estimatedTokens: countTokens(messages),
|
|
142
|
-
systemPromptAddition: buildMemorySystemPromptAddition({
|
|
143
|
-
availableTools: availableTools ?? new Set(),
|
|
144
|
-
citationsMode,
|
|
145
|
-
}),
|
|
146
|
-
};
|
|
147
|
-
},
|
|
148
|
-
|
|
149
|
-
async compact({ sessionId, force }) {
|
|
150
|
-
// Summarize older context
|
|
151
|
-
return { ok: true, compacted: true };
|
|
152
|
-
},
|
|
153
|
-
}));
|
|
154
|
-
}
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
The factory `ctx` includes optional `config`, `agentDir`, and `workspaceDir`
|
|
158
|
-
values so plugins can initialize per-agent or per-workspace state before the
|
|
159
|
-
first lifecycle hook runs.
|
|
160
|
-
|
|
161
|
-
Then enable it in config:
|
|
162
|
-
|
|
163
|
-
```json5
|
|
164
|
-
{
|
|
165
|
-
plugins: {
|
|
166
|
-
slots: {
|
|
167
|
-
contextEngine: "my-engine",
|
|
168
|
-
},
|
|
169
|
-
entries: {
|
|
170
|
-
"my-engine": {
|
|
171
|
-
enabled: true,
|
|
172
|
-
},
|
|
173
|
-
},
|
|
174
|
-
},
|
|
175
|
-
}
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
### The ContextEngine interface
|
|
179
|
-
|
|
180
|
-
Required members:
|
|
181
|
-
|
|
182
|
-
| Member | Kind | Purpose |
|
|
183
|
-
| ------------------ | -------- | -------------------------------------------------------- |
|
|
184
|
-
| `info` | Property | Engine id, name, version, and whether it owns compaction |
|
|
185
|
-
| `ingest(params)` | Method | Store a single message |
|
|
186
|
-
| `assemble(params)` | Method | Build context for a model run (returns `AssembleResult`) |
|
|
187
|
-
| `compact(params)` | Method | Summarize/reduce context |
|
|
188
|
-
|
|
189
|
-
`assemble` returns an `AssembleResult` with:
|
|
190
|
-
|
|
191
|
-
<ParamField path="messages" type="Message[]" required>
|
|
192
|
-
The ordered messages to send to the model.
|
|
193
|
-
</ParamField>
|
|
194
|
-
<ParamField path="estimatedTokens" type="number" required>
|
|
195
|
-
The engine's estimate of total tokens in the assembled context. FengMing uses this for compaction threshold decisions and diagnostic reporting.
|
|
196
|
-
</ParamField>
|
|
197
|
-
<ParamField path="systemPromptAddition" type="string">
|
|
198
|
-
Prepended to the system prompt.
|
|
199
|
-
</ParamField>
|
|
200
|
-
<ParamField path="promptAuthority" type='"assembled" | "preassembly_may_overflow"'>
|
|
201
|
-
Controls which token estimate the runner uses for preemptive overflow
|
|
202
|
-
prechecks. Defaults to `"assembled"`, which means only the assembled
|
|
203
|
-
prompt's estimate is checked - appropriate for engines that return a
|
|
204
|
-
windowed, self-contained context. Set to `"preassembly_may_overflow"` only
|
|
205
|
-
when your assembled view can hide overflow risk in the underlying
|
|
206
|
-
transcript; the runner then takes the maximum of the assembled estimate
|
|
207
|
-
and the pre-assembly (unwindowed) session-history estimate when deciding
|
|
208
|
-
whether to preemptively compact. Either way, the messages you return are
|
|
209
|
-
still what the model sees - `promptAuthority` only affects the precheck.
|
|
210
|
-
</ParamField>
|
|
211
|
-
|
|
212
|
-
`compact` returns a `CompactResult`. When compaction rotates the active
|
|
213
|
-
transcript, `result.sessionId` and `result.sessionFile` identify the successor
|
|
214
|
-
session that the next retry or turn must use.
|
|
215
|
-
|
|
216
|
-
Optional members:
|
|
217
|
-
|
|
218
|
-
| Member | Kind | Purpose |
|
|
219
|
-
| ------------------------------ | ------ | --------------------------------------------------------------------------------------------------------------- |
|
|
220
|
-
| `bootstrap(params)` | Method | Initialize engine state for a session. Called once when the engine first sees a session (e.g., import history). |
|
|
221
|
-
| `ingestBatch(params)` | Method | Ingest a completed turn as a batch. Called after a run completes, with all messages from that turn at once. |
|
|
222
|
-
| `afterTurn(params)` | Method | Post-run lifecycle work (persist state, trigger background compaction). |
|
|
223
|
-
| `prepareSubagentSpawn(params)` | Method | Set up shared state for a child session before it starts. |
|
|
224
|
-
| `onSubagentEnded(params)` | Method | Clean up after a subagent ends. |
|
|
225
|
-
| `dispose()` | Method | Release resources. Called during gateway shutdown or plugin reload - not per-session. |
|
|
226
|
-
|
|
227
|
-
### Host requirements
|
|
228
|
-
|
|
229
|
-
Context engines can declare host capability requirements on `info.hostRequirements`.
|
|
230
|
-
FengMing checks these requirements before starting the operation and fails closed
|
|
231
|
-
with a descriptive error when the selected runtime cannot satisfy them.
|
|
232
|
-
|
|
233
|
-
For agent runs, declare `assemble-before-prompt` when the engine must control the
|
|
234
|
-
actual model prompt through `assemble()`:
|
|
235
|
-
|
|
236
|
-
```ts
|
|
237
|
-
info: {
|
|
238
|
-
id: "my-context-engine",
|
|
239
|
-
name: "My Context Engine",
|
|
240
|
-
hostRequirements: {
|
|
241
|
-
"agent-run": {
|
|
242
|
-
requiredCapabilities: ["assemble-before-prompt"],
|
|
243
|
-
unsupportedMessage:
|
|
244
|
-
"Use the native Codex or FengMing embedded runtime, or select the legacy context engine.",
|
|
245
|
-
},
|
|
246
|
-
},
|
|
247
|
-
}
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
Native Codex and FengMing embedded agent runs satisfy `assemble-before-prompt`.
|
|
251
|
-
Generic CLI backends do not, so engines that require it are rejected before the
|
|
252
|
-
CLI process starts.
|
|
253
|
-
|
|
254
|
-
### Failure isolation
|
|
255
|
-
|
|
256
|
-
FengMing isolates the selected plugin engine from the core reply path. If a
|
|
257
|
-
non-legacy engine is missing, fails contract validation, throws during factory
|
|
258
|
-
creation, or throws from a lifecycle method, FengMing quarantines that engine
|
|
259
|
-
for the current Gateway process and downgrades context-engine work to the
|
|
260
|
-
built-in `legacy` engine. The error is logged with the failed operation so the
|
|
261
|
-
operator can repair, update, or disable the plugin without the agent going
|
|
262
|
-
silent.
|
|
263
|
-
|
|
264
|
-
Host requirement failures are different: when an engine declares that a runtime
|
|
265
|
-
lacks a required capability, FengMing fails closed before starting the run. That
|
|
266
|
-
protects engines that would corrupt state if they ran in an unsupported host.
|
|
267
|
-
|
|
268
|
-
### ownsCompaction
|
|
269
|
-
|
|
270
|
-
`ownsCompaction` controls whether FengMing runtime's built-in in-attempt auto-compaction stays enabled for the run:
|
|
271
|
-
|
|
272
|
-
<AccordionGroup>
|
|
273
|
-
<Accordion title="ownsCompaction: true">
|
|
274
|
-
The engine owns compaction behavior. FengMing disables FengMing runtime's built-in auto-compaction for that run, and the engine's `compact()` implementation is responsible for `/compact`, overflow recovery compaction, and any proactive compaction it wants to do in `afterTurn()`. FengMing may still run the pre-prompt overflow safeguard; when it predicts the full transcript will overflow, the recovery path calls the active engine's `compact()` before submitting another prompt.
|
|
275
|
-
</Accordion>
|
|
276
|
-
<Accordion title="ownsCompaction: false or unset">
|
|
277
|
-
FengMing runtime's built-in auto-compaction may still run during prompt execution, but the active engine's `compact()` method is still called for `/compact` and overflow recovery.
|
|
278
|
-
</Accordion>
|
|
279
|
-
</AccordionGroup>
|
|
280
|
-
|
|
281
|
-
<Warning>
|
|
282
|
-
`ownsCompaction: false` does **not** mean FengMing automatically falls back to the legacy engine's compaction path.
|
|
283
|
-
</Warning>
|
|
284
|
-
|
|
285
|
-
That means there are two valid plugin patterns:
|
|
286
|
-
|
|
287
|
-
<Tabs>
|
|
288
|
-
<Tab title="Owning mode">
|
|
289
|
-
Implement your own compaction algorithm and set `ownsCompaction: true`.
|
|
290
|
-
</Tab>
|
|
291
|
-
<Tab title="Delegating mode">
|
|
292
|
-
Set `ownsCompaction: false` and have `compact()` call `delegateCompactionToRuntime(...)` from `fengming/plugin-sdk/core` to use FengMing's built-in compaction behavior.
|
|
293
|
-
</Tab>
|
|
294
|
-
</Tabs>
|
|
295
|
-
|
|
296
|
-
A no-op `compact()` is unsafe for an active non-owning engine because it disables the normal `/compact` and overflow-recovery compaction path for that engine slot.
|
|
297
|
-
|
|
298
|
-
## Configuration reference
|
|
299
|
-
|
|
300
|
-
```json5
|
|
301
|
-
{
|
|
302
|
-
plugins: {
|
|
303
|
-
slots: {
|
|
304
|
-
// Select the active context engine. Default: "legacy".
|
|
305
|
-
// Set to a plugin id to use a plugin engine.
|
|
306
|
-
contextEngine: "legacy",
|
|
307
|
-
},
|
|
308
|
-
},
|
|
309
|
-
}
|
|
310
|
-
```
|
|
311
|
-
|
|
312
|
-
<Note>
|
|
313
|
-
The slot is exclusive at run time - only one registered context engine is resolved for a given run or compaction operation. Other enabled `kind: "context-engine"` plugins can still load and run their registration code; `plugins.slots.contextEngine` only selects which registered engine id FengMing resolves when it needs a context engine.
|
|
314
|
-
</Note>
|
|
315
|
-
|
|
316
|
-
<Note>
|
|
317
|
-
**Plugin uninstall:** when you uninstall the plugin currently selected as `plugins.slots.contextEngine`, FengMing resets the slot back to the default (`legacy`). The same reset behavior applies to `plugins.slots.memory`. No manual config edit is required.
|
|
318
|
-
</Note>
|
|
319
|
-
|
|
320
|
-
## Relationship to compaction and memory
|
|
321
|
-
|
|
322
|
-
<AccordionGroup>
|
|
323
|
-
<Accordion title="Compaction">
|
|
324
|
-
Compaction is one responsibility of the context engine. The legacy engine delegates to FengMing's built-in summarization. Plugin engines can implement any compaction strategy (DAG summaries, vector retrieval, etc.).
|
|
325
|
-
</Accordion>
|
|
326
|
-
<Accordion title="Memory plugins">
|
|
327
|
-
Memory plugins (`plugins.slots.memory`) are separate from context engines. Memory plugins provide search/retrieval; context engines control what the model sees. They can work together - a context engine might use memory plugin data during assembly. Plugin engines that want the active memory prompt path should prefer `buildMemorySystemPromptAddition(...)` from `fengming/plugin-sdk/core`, which converts the active memory prompt sections into a ready-to-prepend `systemPromptAddition`. If an engine needs lower-level control, it can still pull raw lines from `fengming/plugin-sdk/memory-host-core` via `buildActiveMemoryPromptSection(...)`.
|
|
328
|
-
</Accordion>
|
|
329
|
-
<Accordion title="Session pruning">
|
|
330
|
-
Trimming old tool results in-memory still runs regardless of which context engine is active.
|
|
331
|
-
</Accordion>
|
|
332
|
-
</AccordionGroup>
|
|
333
|
-
|
|
334
|
-
## Tips
|
|
335
|
-
|
|
336
|
-
- Use `fengming doctor` to verify your engine is loading correctly.
|
|
337
|
-
- If switching engines, existing sessions continue with their current history. The new engine takes over for future runs.
|
|
338
|
-
- Engine errors are logged and the selected plugin engine is quarantined for the current Gateway process. FengMing falls back to `legacy` for user turns so replies can continue, but you should still repair, update, disable, or uninstall the broken plugin.
|
|
339
|
-
- For development, use `fengming plugins install -l ./my-engine` to link a local plugin directory without copying.
|
|
340
|
-
|
|
341
|
-
## Related
|
|
342
|
-
|
|
343
|
-
- [Compaction](/concepts/compaction) - summarizing long conversations
|
|
344
|
-
- [Context](/concepts/context) - how context is built for agent turns
|
|
345
|
-
- [Plugin Architecture](/plugins/architecture) - registering context engine plugins
|
|
346
|
-
- [Plugin manifest](/plugins/manifest) - plugin manifest fields
|
|
347
|
-
- [Plugins](/tools/plugin) - plugin overview
|
package/docs/concepts/context.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
summary: "Context: what the model sees, how it is built, and how to inspect it"
|
|
3
|
-
read_when:
|
|
4
|
-
- You want to understand what "context" means in FengMing
|
|
5
|
-
- You are debugging why the model "knows" something (or forgot it)
|
|
6
|
-
- You want to reduce context overhead (/context, /status, /compact)
|
|
7
|
-
title: "Context"
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
"Context" is **everything FengMing sends to the model for a run**. It is bounded by the model's **context window** (token limit).
|
|
11
|
-
|
|
12
|
-
Beginner mental model:
|
|
13
|
-
|
|
14
|
-
- **System prompt** (FengMing-built): rules, tools, skills list, time/runtime, and injected workspace files.
|
|
15
|
-
- **Conversation history**: your messages + the assistant's messages for this session.
|
|
16
|
-
- **Tool calls/results + attachments**: command output, file reads, images/audio, etc.
|
|
17
|
-
|
|
18
|
-
Context is _not the same thing_ as "memory": memory can be stored on disk and reloaded later; context is what's inside the model's current window.
|
|
19
|
-
|
|
20
|
-
## Quick start (inspect context)
|
|
21
|
-
|
|
22
|
-
- `/status` → quick "how full is my window?" view + session settings.
|
|
23
|
-
- `/context list` → what's injected + rough sizes (per file + totals).
|
|
24
|
-
- `/context detail` → deeper breakdown: per-file, per-tool schema sizes, per-skill entry sizes, and system prompt size.
|
|
25
|
-
- `/context map` → WinDirStat-style treemap image of the current session's tracked context contributors.
|
|
26
|
-
- `/usage tokens` → append per-reply usage footer to normal replies.
|
|
27
|
-
- `/compact` → summarize older history into a compact entry to free window space.
|
|
28
|
-
|
|
29
|
-
See also: [Slash commands](/tools/slash-commands), [Token use & costs](/reference/token-use), [Compaction](/concepts/compaction).
|
|
30
|
-
|
|
31
|
-
## Example output
|
|
32
|
-
|
|
33
|
-
Values vary by model, provider, tool policy, and what's in your workspace.
|
|
34
|
-
|
|
35
|
-
### `/context list`
|
|
36
|
-
|
|
37
|
-
```
|
|
38
|
-
🧠 Context breakdown
|
|
39
|
-
Workspace: <workspaceDir>
|
|
40
|
-
Bootstrap max/file: 12,000 chars
|
|
41
|
-
Sandbox: mode=non-main sandboxed=false
|
|
42
|
-
System prompt (run): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))
|
|
43
|
-
|
|
44
|
-
Injected workspace files:
|
|
45
|
-
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
|
|
46
|
-
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
|
|
47
|
-
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
|
|
48
|
-
- IDENTITY.md: OK | raw 211 chars (~53 tok) | injected 211 chars (~53 tok)
|
|
49
|
-
- USER.md: OK | raw 388 chars (~97 tok) | injected 388 chars (~97 tok)
|
|
50
|
-
- HEARTBEAT.md: MISSING | raw 0 | injected 0
|
|
51
|
-
- BOOTSTRAP.md: OK | raw 0 chars (~0 tok) | injected 0 chars (~0 tok)
|
|
52
|
-
|
|
53
|
-
Skills list (system prompt text): 2,184 chars (~546 tok) (12 skills)
|
|
54
|
-
Tools: read, edit, write, exec, process, browser, message, sessions_send, …
|
|
55
|
-
Tool list (system prompt text): 1,032 chars (~258 tok)
|
|
56
|
-
Tool schemas (JSON): 31,988 chars (~7,997 tok) (counts toward context; not shown as text)
|
|
57
|
-
Tools: (same as above)
|
|
58
|
-
|
|
59
|
-
Session tokens (cached): 14,250 total / ctx=32,000
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### `/context detail`
|
|
63
|
-
|
|
64
|
-
```
|
|
65
|
-
🧠 Context breakdown (detailed)
|
|
66
|
-
…
|
|
67
|
-
Top skills (prompt entry size):
|
|
68
|
-
- frontend-design: 412 chars (~103 tok)
|
|
69
|
-
- oracle: 401 chars (~101 tok)
|
|
70
|
-
… (+10 more skills)
|
|
71
|
-
|
|
72
|
-
Top tools (schema size):
|
|
73
|
-
- browser: 9,812 chars (~2,453 tok)
|
|
74
|
-
- exec: 6,240 chars (~1,560 tok)
|
|
75
|
-
… (+N more tools)
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
### `/context map`
|
|
79
|
-
|
|
80
|
-
Sends an image generated from the latest cached run report. Before a normal message has produced a run report in the session, `/context map` returns an unavailable message instead of rendering an estimate. Rectangle area is proportional to tracked prompt characters:
|
|
81
|
-
|
|
82
|
-
- injected workspace files
|
|
83
|
-
- base system prompt text
|
|
84
|
-
- skill prompt entries
|
|
85
|
-
- tool JSON schemas
|
|
86
|
-
|
|
87
|
-
`/context list`, `/context detail`, and `/context json` can still inspect an on-demand estimate when no run report is cached.
|
|
88
|
-
|
|
89
|
-
## What counts toward the context window
|
|
90
|
-
|
|
91
|
-
Everything the model receives counts, including:
|
|
92
|
-
|
|
93
|
-
- System prompt (all sections).
|
|
94
|
-
- Conversation history.
|
|
95
|
-
- Tool calls + tool results.
|
|
96
|
-
- Attachments/transcripts (images/audio/files).
|
|
97
|
-
- Compaction summaries and pruning artifacts.
|
|
98
|
-
- Provider "wrappers" or hidden headers (not visible, still counted).
|
|
99
|
-
|
|
100
|
-
## How FengMing builds the system prompt
|
|
101
|
-
|
|
102
|
-
The system prompt is **FengMing-owned** and rebuilt each run. It includes:
|
|
103
|
-
|
|
104
|
-
- Tool list + short descriptions.
|
|
105
|
-
- Skills list (metadata only; see below).
|
|
106
|
-
- Workspace location.
|
|
107
|
-
- Time (UTC + converted user time if configured).
|
|
108
|
-
- Runtime metadata (host/OS/model/thinking).
|
|
109
|
-
- Injected workspace bootstrap files under **Project Context**.
|
|
110
|
-
|
|
111
|
-
Full breakdown: [System Prompt](/concepts/system-prompt).
|
|
112
|
-
|
|
113
|
-
## Injected workspace files (Project Context)
|
|
114
|
-
|
|
115
|
-
By default, FengMing injects a fixed set of workspace files (if present):
|
|
116
|
-
|
|
117
|
-
- `AGENTS.md`
|
|
118
|
-
- `SOUL.md`
|
|
119
|
-
- `TOOLS.md`
|
|
120
|
-
- `IDENTITY.md`
|
|
121
|
-
- `USER.md`
|
|
122
|
-
- `HEARTBEAT.md`
|
|
123
|
-
- `BOOTSTRAP.md` (first-run only)
|
|
124
|
-
|
|
125
|
-
Large files are truncated per-file using `agents.defaults.bootstrapMaxChars` (default `12000` chars). FengMing also enforces a total bootstrap injection cap across files with `agents.defaults.bootstrapTotalMaxChars` (default `60000` chars). `/context` shows **raw vs injected** sizes and whether truncation happened.
|
|
126
|
-
|
|
127
|
-
When truncation occurs, the runtime can inject an in-prompt warning block under Project Context. Configure this with `agents.defaults.bootstrapPromptTruncationWarning` (`off`, `once`, `always`; default `always`).
|
|
128
|
-
|
|
129
|
-
## Skills: injected vs loaded on-demand
|
|
130
|
-
|
|
131
|
-
The system prompt includes a compact **skills list** (name + description + location). This list has real overhead.
|
|
132
|
-
|
|
133
|
-
Skill instructions are _not_ included by default. The model is expected to `read` the skill's `SKILL.md` **only when needed**.
|
|
134
|
-
|
|
135
|
-
## Tools: there are two costs
|
|
136
|
-
|
|
137
|
-
Tools affect context in two ways:
|
|
138
|
-
|
|
139
|
-
1. **Tool list text** in the system prompt (what you see as "Tooling").
|
|
140
|
-
2. **Tool schemas** (JSON). These are sent to the model so it can call tools. They count toward context even though you don't see them as plain text.
|
|
141
|
-
|
|
142
|
-
`/context detail` breaks down the biggest tool schemas so you can see what dominates.
|
|
143
|
-
|
|
144
|
-
## Commands, directives, and "inline shortcuts"
|
|
145
|
-
|
|
146
|
-
Slash commands are handled by the Gateway. There are a few different behaviors:
|
|
147
|
-
|
|
148
|
-
- **Standalone commands**: a message that is only `/...` runs as a command.
|
|
149
|
-
- **Directives**: `/think`, `/verbose`, `/trace`, `/reasoning`, `/elevated`, `/model`, `/queue` are stripped before the model sees the message.
|
|
150
|
-
- Directive-only messages persist session settings.
|
|
151
|
-
- Inline directives in a normal message act as per-message hints.
|
|
152
|
-
- **Inline shortcuts** (allowlisted senders only): certain `/...` tokens inside a normal message can run immediately (example: "hey /status"), and are stripped before the model sees the remaining text.
|
|
153
|
-
|
|
154
|
-
Details: [Slash commands](/tools/slash-commands).
|
|
155
|
-
|
|
156
|
-
## Sessions, compaction, and pruning (what persists)
|
|
157
|
-
|
|
158
|
-
What persists across messages depends on the mechanism:
|
|
159
|
-
|
|
160
|
-
- **Normal history** persists in the session transcript until compacted/pruned by policy.
|
|
161
|
-
- **Compaction** persists a summary into the transcript and keeps recent messages intact.
|
|
162
|
-
- **Pruning** drops old tool results from the _in-memory_ prompt to free context-window space, but does not rewrite the session transcript - the full history is still inspectable on disk.
|
|
163
|
-
|
|
164
|
-
Docs: [Session](/concepts/session), [Compaction](/concepts/compaction), [Session pruning](/concepts/session-pruning).
|
|
165
|
-
|
|
166
|
-
By default, FengMing uses the built-in `legacy` context engine for assembly and
|
|
167
|
-
compaction. If you install a plugin that provides `kind: "context-engine"` and
|
|
168
|
-
select it with `plugins.slots.contextEngine`, FengMing delegates context
|
|
169
|
-
assembly, `/compact`, and related subagent context lifecycle hooks to that
|
|
170
|
-
engine instead. `ownsCompaction: false` does not auto-fallback to the legacy
|
|
171
|
-
engine; the active engine must still implement `compact()` correctly. See
|
|
172
|
-
[Context Engine](/concepts/context-engine) for the full
|
|
173
|
-
pluggable interface, lifecycle hooks, and configuration.
|
|
174
|
-
|
|
175
|
-
## What `/context` actually reports
|
|
176
|
-
|
|
177
|
-
`/context` prefers the latest **run-built** system prompt report when available:
|
|
178
|
-
|
|
179
|
-
- `System prompt (run)` = captured from the last embedded (tool-capable) run and persisted in the session store.
|
|
180
|
-
- `System prompt (estimate)` = computed on the fly when no run report exists (or when running via a CLI backend that doesn't generate the report).
|
|
181
|
-
|
|
182
|
-
Either way, it reports sizes and top contributors; it does **not** dump the full system prompt or tool schemas.
|
|
183
|
-
|
|
184
|
-
## Related
|
|
185
|
-
|
|
186
|
-
<CardGroup cols={2}>
|
|
187
|
-
<Card title="Context engine" href="/concepts/context-engine" icon="puzzle-piece">
|
|
188
|
-
Custom context injection via plugins.
|
|
189
|
-
</Card>
|
|
190
|
-
<Card title="Compaction" href="/concepts/compaction" icon="compress">
|
|
191
|
-
Summarizing long conversations to keep them inside the model window.
|
|
192
|
-
</Card>
|
|
193
|
-
<Card title="System prompt" href="/concepts/system-prompt" icon="message-lines">
|
|
194
|
-
How the system prompt is built and what it injects each turn.
|
|
195
|
-
</Card>
|
|
196
|
-
<Card title="Agent loop" href="/concepts/agent-loop" icon="arrows-rotate">
|
|
197
|
-
The full agent execution cycle from inbound message to final reply.
|
|
198
|
-
</Card>
|
|
199
|
-
</CardGroup>
|