fengming 0.3.9 → 0.3.11

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.
Files changed (763) hide show
  1. package/dist/build-info.json +2 -2
  2. package/dist/{bundled-channel-config-schema-DpdKMATU.d.ts → bundled-channel-config-schema-Bte--ZlY.d.ts} +26 -26
  3. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  4. package/dist/cli-startup-metadata.json +8 -8
  5. package/dist/control-ui/assets/{activity-B2W-IeAT.js → activity-wgT0-JR0.js} +2 -2
  6. package/dist/control-ui/assets/{agents-mRUyNVCz.js → agents-DG5PobrT.js} +2 -2
  7. package/dist/control-ui/assets/{channels-8QHOqBnt.js → channels-CX28oM42.js} +2 -2
  8. package/dist/control-ui/assets/{cron-H3unP_mO.js → cron-B8ixwBqU.js} +2 -2
  9. package/dist/control-ui/assets/{debug-CxLsQ9vH.js → debug-CnkYZUXy.js} +2 -2
  10. package/dist/control-ui/assets/{index-jtIYT0Eh.js → index-DQRZJKbO.js} +4 -4
  11. package/dist/control-ui/assets/{instances-B1JQeCRb.js → instances-BE3mV1JC.js} +2 -2
  12. package/dist/control-ui/assets/{nodes-RGOmq_1l.js → nodes-Cou4PWRX.js} +2 -2
  13. package/dist/control-ui/assets/{sessions-C2O-Jgpg.js → sessions-DpAaBT21.js} +2 -2
  14. package/dist/control-ui/assets/{skills-jyJOYA4I.js → skills-DjA_j_20.js} +2 -2
  15. package/dist/control-ui/assets/{workboard-uM_kK8cQ.js → workboard-BFnvbS0k.js} +2 -2
  16. package/dist/control-ui/index.html +1 -1
  17. package/dist/control-ui/sw.js +1 -1
  18. package/dist/gateway/protocol/index.d.ts +1 -1
  19. package/dist/{index-DhOQs6M_.d.ts → index-DuDY3bCZ.d.ts} +45 -45
  20. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  21. package/dist/plugin-sdk/agent-config-primitives.d.ts +1 -1
  22. package/dist/plugin-sdk/{bundled-channel-config-schema-Dfn3b8sF.d.ts → bundled-channel-config-schema-BPFNnbwu.d.ts} +23 -23
  23. package/dist/plugin-sdk/bundled-channel-config-schema.d.ts +3 -3
  24. package/dist/plugin-sdk/channel-config-primitives.d.ts +2 -2
  25. package/dist/plugin-sdk/channel-config-schema-legacy.d.ts +3 -3
  26. package/dist/plugin-sdk/channel-config-schema.d.ts +2 -2
  27. package/dist/plugin-sdk/channel-core.d.ts +1 -1
  28. package/dist/plugin-sdk/channel-plugin-common.d.ts +1 -1
  29. package/dist/plugin-sdk/compat.d.ts +2 -2
  30. package/dist/plugin-sdk/{config-schema-DUddICQM.d.ts → config-schema-D7cABQ6o.d.ts} +1 -1
  31. package/dist/plugin-sdk/config-schema.d.ts +4 -4
  32. package/dist/plugin-sdk/core.d.ts +1 -1
  33. package/dist/plugin-sdk/discord.d.ts +2 -2
  34. package/dist/plugin-sdk/tts-runtime.d.ts +1 -1
  35. package/dist/plugin-sdk/{zod-schema.core-B4_b2R5K.d.ts → zod-schema.core-CwBNqcXp.d.ts} +1 -1
  36. package/dist/{zod-schema.core-Cuz0lz6m.d.ts → zod-schema.core-BGLctDlK.d.ts} +1 -1
  37. package/package.json +7 -412
  38. package/CHANGELOG.md +0 -38
  39. package/THIRD_PARTY_NOTICES.md +0 -37
  40. package/docs/.i18n/README.md +0 -81
  41. package/docs/.i18n/ar-navigation.json +0 -18
  42. package/docs/.i18n/de-navigation.json +0 -18
  43. package/docs/.i18n/es-navigation.json +0 -18
  44. package/docs/.i18n/fr-navigation.json +0 -18
  45. package/docs/.i18n/glossary.ar.json +0 -78
  46. package/docs/.i18n/glossary.de.json +0 -78
  47. package/docs/.i18n/glossary.es.json +0 -78
  48. package/docs/.i18n/glossary.fa.json +0 -78
  49. package/docs/.i18n/glossary.fr.json +0 -78
  50. package/docs/.i18n/glossary.id.json +0 -78
  51. package/docs/.i18n/glossary.it.json +0 -78
  52. package/docs/.i18n/glossary.ja-JP.json +0 -98
  53. package/docs/.i18n/glossary.ko.json +0 -78
  54. package/docs/.i18n/glossary.nl.json +0 -78
  55. package/docs/.i18n/glossary.pl.json +0 -78
  56. package/docs/.i18n/glossary.pt-BR.json +0 -78
  57. package/docs/.i18n/glossary.th.json +0 -78
  58. package/docs/.i18n/glossary.tr.json +0 -78
  59. package/docs/.i18n/glossary.uk.json +0 -78
  60. package/docs/.i18n/glossary.vi.json +0 -78
  61. package/docs/.i18n/glossary.zh-CN.json +0 -1122
  62. package/docs/.i18n/glossary.zh-TW.json +0 -78
  63. package/docs/.i18n/id-navigation.json +0 -18
  64. package/docs/.i18n/it-navigation.json +0 -18
  65. package/docs/.i18n/ja-navigation.json +0 -18
  66. package/docs/.i18n/ko-navigation.json +0 -18
  67. package/docs/.i18n/pl-navigation.json +0 -18
  68. package/docs/.i18n/pt-BR-navigation.json +0 -18
  69. package/docs/.i18n/tr-navigation.json +0 -18
  70. package/docs/.i18n/translation-workflow.md +0 -111
  71. package/docs/.i18n/zh-Hans-navigation.json +0 -552
  72. package/docs/AGENTS.md +0 -36
  73. package/docs/CLAUDE.md +0 -1
  74. package/docs/agent-runtime-architecture.md +0 -48
  75. package/docs/announcements/bluebubbles-imessage.md +0 -79
  76. package/docs/auth-credential-semantics.md +0 -124
  77. package/docs/automation/auth-monitoring.md +0 -11
  78. package/docs/automation/clawflow.md +0 -12
  79. package/docs/automation/cron-jobs.md +0 -534
  80. package/docs/automation/cron-vs-heartbeat.md +0 -11
  81. package/docs/automation/gmail-pubsub.md +0 -11
  82. package/docs/automation/hooks.md +0 -387
  83. package/docs/automation/index.md +0 -135
  84. package/docs/automation/poll.md +0 -12
  85. package/docs/automation/standing-orders.md +0 -250
  86. package/docs/automation/taskflow.md +0 -155
  87. package/docs/automation/tasks.md +0 -374
  88. package/docs/automation/troubleshooting.md +0 -12
  89. package/docs/automation/webhook.md +0 -12
  90. package/docs/brave-search.md +0 -11
  91. package/docs/channels/access-groups.md +0 -201
  92. package/docs/channels/ambient-room-events.md +0 -214
  93. package/docs/channels/bot-loop-protection.md +0 -131
  94. package/docs/channels/broadcast-groups.md +0 -472
  95. package/docs/channels/channel-routing.md +0 -162
  96. package/docs/channels/clickclack.md +0 -138
  97. package/docs/channels/discord.md +0 -1758
  98. package/docs/channels/feishu.md +0 -650
  99. package/docs/channels/googlechat.md +0 -284
  100. package/docs/channels/group-messages.md +0 -95
  101. package/docs/channels/groups.md +0 -524
  102. package/docs/channels/imessage-from-bluebubbles.md +0 -259
  103. package/docs/channels/imessage.md +0 -839
  104. package/docs/channels/index.md +0 -64
  105. package/docs/channels/irc.md +0 -253
  106. package/docs/channels/line.md +0 -243
  107. package/docs/channels/location.md +0 -71
  108. package/docs/channels/matrix-migration.md +0 -370
  109. package/docs/channels/matrix-presentation.md +0 -77
  110. package/docs/channels/matrix-push-rules.md +0 -150
  111. package/docs/channels/matrix.md +0 -921
  112. package/docs/channels/mattermost.md +0 -542
  113. package/docs/channels/msteams.md +0 -1096
  114. package/docs/channels/nextcloud-talk.md +0 -176
  115. package/docs/channels/nostr.md +0 -253
  116. package/docs/channels/pairing.md +0 -214
  117. package/docs/channels/qqbot.md +0 -314
  118. package/docs/channels/signal.md +0 -417
  119. package/docs/channels/slack.md +0 -1623
  120. package/docs/channels/synology-chat.md +0 -187
  121. package/docs/channels/telegram.md +0 -1124
  122. package/docs/channels/tlon.md +0 -296
  123. package/docs/channels/troubleshooting.md +0 -162
  124. package/docs/channels/twitch.md +0 -431
  125. package/docs/channels/wechat.md +0 -171
  126. package/docs/channels/whatsapp.md +0 -796
  127. package/docs/channels/yuanbao.md +0 -416
  128. package/docs/channels/zalo.md +0 -253
  129. package/docs/channels/zalouser.md +0 -217
  130. package/docs/ci.md +0 -657
  131. package/docs/clawhub/publishing.md +0 -96
  132. package/docs/cli/acp.md +0 -370
  133. package/docs/cli/agent.md +0 -109
  134. package/docs/cli/agents.md +0 -253
  135. package/docs/cli/approvals.md +0 -190
  136. package/docs/cli/backup.md +0 -98
  137. package/docs/cli/browser.md +0 -307
  138. package/docs/cli/channels.md +0 -154
  139. package/docs/cli/clawbot.md +0 -25
  140. package/docs/cli/commitments.md +0 -90
  141. package/docs/cli/completion.md +0 -39
  142. package/docs/cli/config.md +0 -504
  143. package/docs/cli/configure.md +0 -77
  144. package/docs/cli/crestodian.md +0 -337
  145. package/docs/cli/cron.md +0 -304
  146. package/docs/cli/daemon.md +0 -67
  147. package/docs/cli/dashboard.md +0 -33
  148. package/docs/cli/devices.md +0 -240
  149. package/docs/cli/directory.md +0 -68
  150. package/docs/cli/dns.md +0 -53
  151. package/docs/cli/docs.md +0 -63
  152. package/docs/cli/doctor.md +0 -241
  153. package/docs/cli/flows.md +0 -52
  154. package/docs/cli/gateway.md +0 -572
  155. package/docs/cli/health.md +0 -43
  156. package/docs/cli/hooks.md +0 -345
  157. package/docs/cli/index.md +0 -400
  158. package/docs/cli/infer.md +0 -364
  159. package/docs/cli/logs.md +0 -68
  160. package/docs/cli/mcp.md +0 -529
  161. package/docs/cli/memory.md +0 -183
  162. package/docs/cli/message.md +0 -317
  163. package/docs/cli/migrate.md +0 -334
  164. package/docs/cli/models.md +0 -239
  165. package/docs/cli/node.md +0 -177
  166. package/docs/cli/nodes.md +0 -76
  167. package/docs/cli/onboard.md +0 -250
  168. package/docs/cli/pairing.md +0 -77
  169. package/docs/cli/path.md +0 -511
  170. package/docs/cli/plugins.md +0 -459
  171. package/docs/cli/policy.md +0 -886
  172. package/docs/cli/proxy.md +0 -89
  173. package/docs/cli/qr.md +0 -56
  174. package/docs/cli/reset.md +0 -39
  175. package/docs/cli/sandbox.md +0 -208
  176. package/docs/cli/secrets.md +0 -202
  177. package/docs/cli/security.md +0 -136
  178. package/docs/cli/sessions.md +0 -164
  179. package/docs/cli/setup.md +0 -59
  180. package/docs/cli/skills.md +0 -122
  181. package/docs/cli/status.md +0 -45
  182. package/docs/cli/system.md +0 -89
  183. package/docs/cli/tasks.md +0 -111
  184. package/docs/cli/transcripts.md +0 -151
  185. package/docs/cli/tui.md +0 -91
  186. package/docs/cli/uninstall.md +0 -44
  187. package/docs/cli/update.md +0 -243
  188. package/docs/cli/voicecall.md +0 -204
  189. package/docs/cli/webhooks.md +0 -117
  190. package/docs/cli/wiki.md +0 -256
  191. package/docs/concepts/active-memory.md +0 -856
  192. package/docs/concepts/agent-loop.md +0 -185
  193. package/docs/concepts/agent-runtimes.md +0 -276
  194. package/docs/concepts/agent-workspace.md +0 -230
  195. package/docs/concepts/agent.md +0 -140
  196. package/docs/concepts/architecture.md +0 -154
  197. package/docs/concepts/channel-docking.md +0 -145
  198. package/docs/concepts/commitments.md +0 -150
  199. package/docs/concepts/compaction.md +0 -203
  200. package/docs/concepts/context-engine.md +0 -347
  201. package/docs/concepts/context.md +0 -199
  202. package/docs/concepts/delegate-architecture.md +0 -319
  203. package/docs/concepts/dreaming.md +0 -264
  204. package/docs/concepts/experimental-features.md +0 -109
  205. package/docs/concepts/features.md +0 -91
  206. package/docs/concepts/fengming-sdk.md +0 -323
  207. package/docs/concepts/mantis-slack-desktop-runbook.md +0 -231
  208. package/docs/concepts/mantis.md +0 -744
  209. package/docs/concepts/markdown-formatting.md +0 -139
  210. package/docs/concepts/memory-builtin.md +0 -148
  211. package/docs/concepts/memory-honcho.md +0 -144
  212. package/docs/concepts/memory-qmd.md +0 -271
  213. package/docs/concepts/memory-search.md +0 -167
  214. package/docs/concepts/memory.md +0 -299
  215. package/docs/concepts/message-lifecycle-refactor.md +0 -1126
  216. package/docs/concepts/messages.md +0 -214
  217. package/docs/concepts/model-failover.md +0 -384
  218. package/docs/concepts/model-providers.md +0 -719
  219. package/docs/concepts/models.md +0 -371
  220. package/docs/concepts/multi-agent.md +0 -625
  221. package/docs/concepts/oauth.md +0 -198
  222. package/docs/concepts/parallel-specialist-lanes.md +0 -127
  223. package/docs/concepts/personal-agent-benchmark-pack.md +0 -74
  224. package/docs/concepts/presence.md +0 -117
  225. package/docs/concepts/progress-drafts.md +0 -406
  226. package/docs/concepts/qa-e2e-automation.md +0 -947
  227. package/docs/concepts/qa-matrix.md +0 -139
  228. package/docs/concepts/queue-steering.md +0 -90
  229. package/docs/concepts/queue.md +0 -136
  230. package/docs/concepts/retry.md +0 -86
  231. package/docs/concepts/session-pruning.md +0 -104
  232. package/docs/concepts/session-tool.md +0 -188
  233. package/docs/concepts/session.md +0 -164
  234. package/docs/concepts/soul.md +0 -116
  235. package/docs/concepts/streaming.md +0 -257
  236. package/docs/concepts/system-prompt.md +0 -328
  237. package/docs/concepts/timezone.md +0 -47
  238. package/docs/concepts/typebox.md +0 -309
  239. package/docs/concepts/typing-indicators.md +0 -88
  240. package/docs/concepts/usage-tracking.md +0 -66
  241. package/docs/date-time.md +0 -126
  242. package/docs/debug/node-issue.md +0 -90
  243. package/docs/diagnostics/flags.md +0 -182
  244. package/docs/docs.json +0 -1862
  245. package/docs/fengming-agent-runtime.md +0 -82
  246. package/docs/gateway/authentication.md +0 -256
  247. package/docs/gateway/background-process.md +0 -147
  248. package/docs/gateway/bonjour.md +0 -303
  249. package/docs/gateway/bridge-protocol.md +0 -97
  250. package/docs/gateway/cli-backends.md +0 -439
  251. package/docs/gateway/config-agents.md +0 -1525
  252. package/docs/gateway/config-channels.md +0 -945
  253. package/docs/gateway/config-tools.md +0 -774
  254. package/docs/gateway/configuration-examples.md +0 -704
  255. package/docs/gateway/configuration-reference.md +0 -1391
  256. package/docs/gateway/configuration.md +0 -739
  257. package/docs/gateway/diagnostics.md +0 -213
  258. package/docs/gateway/discovery.md +0 -154
  259. package/docs/gateway/doctor.md +0 -575
  260. package/docs/gateway/gateway-lock.md +0 -37
  261. package/docs/gateway/health.md +0 -73
  262. package/docs/gateway/heartbeat.md +0 -498
  263. package/docs/gateway/index.md +0 -383
  264. package/docs/gateway/local-model-services.md +0 -205
  265. package/docs/gateway/local-models.md +0 -355
  266. package/docs/gateway/logging.md +0 -149
  267. package/docs/gateway/multiple-gateways.md +0 -178
  268. package/docs/gateway/network-model.md +0 -15
  269. package/docs/gateway/openai-http-api.md +0 -378
  270. package/docs/gateway/openresponses-http-api.md +0 -347
  271. package/docs/gateway/openshell.md +0 -316
  272. package/docs/gateway/opentelemetry.md +0 -433
  273. package/docs/gateway/operator-scopes.md +0 -119
  274. package/docs/gateway/pairing.md +0 -207
  275. package/docs/gateway/prometheus.md +0 -249
  276. package/docs/gateway/protocol.md +0 -826
  277. package/docs/gateway/remote-gateway-readme.md +0 -169
  278. package/docs/gateway/remote.md +0 -280
  279. package/docs/gateway/sandbox-vs-tool-policy-vs-elevated.md +0 -148
  280. package/docs/gateway/sandboxing.md +0 -546
  281. package/docs/gateway/secrets-plan-contract.md +0 -159
  282. package/docs/gateway/secrets.md +0 -805
  283. package/docs/gateway/security/audit-checks.md +0 -127
  284. package/docs/gateway/security/exposure-runbook.md +0 -212
  285. package/docs/gateway/security/index.md +0 -1343
  286. package/docs/gateway/security/secure-file-operations.md +0 -76
  287. package/docs/gateway/security/shrinkwrap.md +0 -111
  288. package/docs/gateway/tailscale.md +0 -156
  289. package/docs/gateway/tools-invoke-http-api.md +0 -169
  290. package/docs/gateway/troubleshooting.md +0 -877
  291. package/docs/gateway/trusted-proxy-auth.md +0 -483
  292. package/docs/help/debugging.md +0 -341
  293. package/docs/help/environment.md +0 -233
  294. package/docs/help/faq-first-run.md +0 -870
  295. package/docs/help/faq-models.md +0 -556
  296. package/docs/help/faq.md +0 -2041
  297. package/docs/help/index.md +0 -39
  298. package/docs/help/scripts.md +0 -56
  299. package/docs/help/testing-live.md +0 -587
  300. package/docs/help/testing-updates-plugins.md +0 -299
  301. package/docs/help/testing.md +0 -977
  302. package/docs/help/troubleshooting.md +0 -449
  303. package/docs/index.md +0 -196
  304. package/docs/install/ansible.md +0 -233
  305. package/docs/install/azure.md +0 -315
  306. package/docs/install/bun.md +0 -59
  307. package/docs/install/clawdock.md +0 -112
  308. package/docs/install/development-channels.md +0 -148
  309. package/docs/install/digitalocean.md +0 -174
  310. package/docs/install/docker-vm-runtime.md +0 -154
  311. package/docs/install/docker.md +0 -564
  312. package/docs/install/exe-dev.md +0 -201
  313. package/docs/install/fly.md +0 -524
  314. package/docs/install/gcp.md +0 -418
  315. package/docs/install/hetzner.md +0 -285
  316. package/docs/install/hostinger.md +0 -98
  317. package/docs/install/index.md +0 -232
  318. package/docs/install/installer.md +0 -447
  319. package/docs/install/kubernetes.md +0 -196
  320. package/docs/install/macos-vm.md +0 -281
  321. package/docs/install/migrating-claude.md +0 -165
  322. package/docs/install/migrating-hermes.md +0 -178
  323. package/docs/install/migrating.md +0 -137
  324. package/docs/install/nix.md +0 -112
  325. package/docs/install/node.md +0 -142
  326. package/docs/install/northflank.mdx +0 -44
  327. package/docs/install/oracle.md +0 -218
  328. package/docs/install/podman.md +0 -216
  329. package/docs/install/railway.mdx +0 -92
  330. package/docs/install/raspberry-pi.md +0 -234
  331. package/docs/install/render.mdx +0 -167
  332. package/docs/install/uninstall.md +0 -131
  333. package/docs/install/updating.md +0 -284
  334. package/docs/install/upstash.md +0 -96
  335. package/docs/logging.md +0 -320
  336. package/docs/nav-tabs-underline.js +0 -100
  337. package/docs/network.md +0 -72
  338. package/docs/nodes/audio.md +0 -216
  339. package/docs/nodes/camera.md +0 -166
  340. package/docs/nodes/images.md +0 -77
  341. package/docs/nodes/index.md +0 -439
  342. package/docs/nodes/location-command.md +0 -102
  343. package/docs/nodes/media-understanding.md +0 -495
  344. package/docs/nodes/talk.md +0 -160
  345. package/docs/nodes/troubleshooting.md +0 -123
  346. package/docs/nodes/voicewake.md +0 -93
  347. package/docs/perplexity.md +0 -11
  348. package/docs/plan/codex-context-engine-harness.md +0 -624
  349. package/docs/plan/ui-channels.md +0 -284
  350. package/docs/platforms/digitalocean.md +0 -12
  351. package/docs/platforms/easyrunner.md +0 -109
  352. package/docs/platforms/index.md +0 -51
  353. package/docs/platforms/linux.md +0 -141
  354. package/docs/platforms/mac/bundled-gateway.md +0 -79
  355. package/docs/platforms/mac/canvas.md +0 -128
  356. package/docs/platforms/mac/child-process.md +0 -72
  357. package/docs/platforms/mac/dev-setup.md +0 -112
  358. package/docs/platforms/mac/health.md +0 -39
  359. package/docs/platforms/mac/icon.md +0 -36
  360. package/docs/platforms/mac/logging.md +0 -62
  361. package/docs/platforms/mac/menu-bar.md +0 -93
  362. package/docs/platforms/mac/peekaboo.md +0 -96
  363. package/docs/platforms/mac/permissions.md +0 -73
  364. package/docs/platforms/mac/remote.md +0 -123
  365. package/docs/platforms/mac/signing.md +0 -52
  366. package/docs/platforms/mac/skills.md +0 -43
  367. package/docs/platforms/mac/voice-overlay.md +0 -66
  368. package/docs/platforms/mac/voicewake.md +0 -73
  369. package/docs/platforms/mac/webchat.md +0 -54
  370. package/docs/platforms/mac/xpc.md +0 -66
  371. package/docs/platforms/oracle.md +0 -12
  372. package/docs/platforms/raspberry-pi.md +0 -13
  373. package/docs/platforms/windows.md +0 -286
  374. package/docs/plugins/adding-capabilities.md +0 -146
  375. package/docs/plugins/admin-http-rpc.md +0 -216
  376. package/docs/plugins/agent-tools.md +0 -13
  377. package/docs/plugins/architecture-internals.md +0 -1196
  378. package/docs/plugins/architecture.md +0 -483
  379. package/docs/plugins/building-extensions.md +0 -13
  380. package/docs/plugins/building-plugins.md +0 -335
  381. package/docs/plugins/bundles.md +0 -310
  382. package/docs/plugins/cli-backend-plugins.md +0 -310
  383. package/docs/plugins/codex-computer-use.md +0 -297
  384. package/docs/plugins/codex-harness-reference.md +0 -470
  385. package/docs/plugins/codex-harness-runtime.md +0 -268
  386. package/docs/plugins/codex-harness.md +0 -780
  387. package/docs/plugins/codex-native-plugins.md +0 -276
  388. package/docs/plugins/community.md +0 -77
  389. package/docs/plugins/compatibility.md +0 -167
  390. package/docs/plugins/copilot.md +0 -356
  391. package/docs/plugins/dependency-resolution.md +0 -176
  392. package/docs/plugins/google-meet.md +0 -1737
  393. package/docs/plugins/hooks.md +0 -484
  394. package/docs/plugins/install-overrides.md +0 -80
  395. package/docs/plugins/manage-plugins.md +0 -210
  396. package/docs/plugins/manifest.md +0 -1457
  397. package/docs/plugins/memory-lancedb.md +0 -385
  398. package/docs/plugins/memory-wiki.md +0 -529
  399. package/docs/plugins/message-presentation.md +0 -473
  400. package/docs/plugins/oc-path.md +0 -166
  401. package/docs/plugins/plugin-inventory.md +0 -189
  402. package/docs/plugins/plugin-permission-requests.md +0 -193
  403. package/docs/plugins/reference/acpx.md +0 -23
  404. package/docs/plugins/reference/admin-http-rpc.md +0 -23
  405. package/docs/plugins/reference/alibaba.md +0 -23
  406. package/docs/plugins/reference/amazon-bedrock-mantle.md +0 -23
  407. package/docs/plugins/reference/amazon-bedrock.md +0 -23
  408. package/docs/plugins/reference/anthropic-vertex.md +0 -19
  409. package/docs/plugins/reference/anthropic.md +0 -23
  410. package/docs/plugins/reference/arcee.md +0 -23
  411. package/docs/plugins/reference/azure-speech.md +0 -23
  412. package/docs/plugins/reference/bonjour.md +0 -19
  413. package/docs/plugins/reference/brave.md +0 -23
  414. package/docs/plugins/reference/browser.md +0 -23
  415. package/docs/plugins/reference/byteplus.md +0 -19
  416. package/docs/plugins/reference/canvas.md +0 -19
  417. package/docs/plugins/reference/cerebras.md +0 -23
  418. package/docs/plugins/reference/chutes.md +0 -23
  419. package/docs/plugins/reference/clickclack.md +0 -23
  420. package/docs/plugins/reference/cloudflare-ai-gateway.md +0 -23
  421. package/docs/plugins/reference/codex-supervisor.md +0 -27
  422. package/docs/plugins/reference/codex.md +0 -23
  423. package/docs/plugins/reference/comfy.md +0 -23
  424. package/docs/plugins/reference/copilot-proxy.md +0 -19
  425. package/docs/plugins/reference/copilot.md +0 -23
  426. package/docs/plugins/reference/deepgram.md +0 -23
  427. package/docs/plugins/reference/deepinfra.md +0 -23
  428. package/docs/plugins/reference/deepseek.md +0 -23
  429. package/docs/plugins/reference/diagnostics-otel.md +0 -19
  430. package/docs/plugins/reference/diagnostics-prometheus.md +0 -19
  431. package/docs/plugins/reference/diffs-language-pack.md +0 -19
  432. package/docs/plugins/reference/diffs.md +0 -19
  433. package/docs/plugins/reference/discord.md +0 -23
  434. package/docs/plugins/reference/document-extract.md +0 -23
  435. package/docs/plugins/reference/duckduckgo.md +0 -23
  436. package/docs/plugins/reference/elevenlabs.md +0 -23
  437. package/docs/plugins/reference/exa.md +0 -23
  438. package/docs/plugins/reference/fal.md +0 -23
  439. package/docs/plugins/reference/feishu.md +0 -23
  440. package/docs/plugins/reference/file-transfer.md +0 -19
  441. package/docs/plugins/reference/firecrawl.md +0 -23
  442. package/docs/plugins/reference/fireworks.md +0 -23
  443. package/docs/plugins/reference/github-copilot.md +0 -23
  444. package/docs/plugins/reference/gmi.md +0 -23
  445. package/docs/plugins/reference/google-meet.md +0 -23
  446. package/docs/plugins/reference/google.md +0 -23
  447. package/docs/plugins/reference/googlechat.md +0 -23
  448. package/docs/plugins/reference/gradium.md +0 -23
  449. package/docs/plugins/reference/groq.md +0 -23
  450. package/docs/plugins/reference/huggingface.md +0 -23
  451. package/docs/plugins/reference/imessage.md +0 -23
  452. package/docs/plugins/reference/inworld.md +0 -23
  453. package/docs/plugins/reference/irc.md +0 -23
  454. package/docs/plugins/reference/kilocode.md +0 -23
  455. package/docs/plugins/reference/kimi.md +0 -23
  456. package/docs/plugins/reference/line.md +0 -23
  457. package/docs/plugins/reference/litellm.md +0 -23
  458. package/docs/plugins/reference/llm-task.md +0 -19
  459. package/docs/plugins/reference/lmstudio.md +0 -23
  460. package/docs/plugins/reference/lobster.md +0 -19
  461. package/docs/plugins/reference/matrix.md +0 -23
  462. package/docs/plugins/reference/mattermost.md +0 -23
  463. package/docs/plugins/reference/memory-core.md +0 -19
  464. package/docs/plugins/reference/memory-lancedb.md +0 -23
  465. package/docs/plugins/reference/memory-wiki.md +0 -23
  466. package/docs/plugins/reference/microsoft-foundry.md +0 -19
  467. package/docs/plugins/reference/microsoft.md +0 -19
  468. package/docs/plugins/reference/migrate-claude.md +0 -19
  469. package/docs/plugins/reference/migrate-hermes.md +0 -19
  470. package/docs/plugins/reference/minimax.md +0 -23
  471. package/docs/plugins/reference/mistral.md +0 -23
  472. package/docs/plugins/reference/moonshot.md +0 -23
  473. package/docs/plugins/reference/msteams.md +0 -23
  474. package/docs/plugins/reference/nextcloud-talk.md +0 -23
  475. package/docs/plugins/reference/nostr.md +0 -23
  476. package/docs/plugins/reference/novita.md +0 -23
  477. package/docs/plugins/reference/nvidia.md +0 -23
  478. package/docs/plugins/reference/oc-path.md +0 -23
  479. package/docs/plugins/reference/ollama.md +0 -23
  480. package/docs/plugins/reference/open-prose.md +0 -19
  481. package/docs/plugins/reference/openai.md +0 -23
  482. package/docs/plugins/reference/opencode-go.md +0 -23
  483. package/docs/plugins/reference/opencode.md +0 -23
  484. package/docs/plugins/reference/openrouter.md +0 -23
  485. package/docs/plugins/reference/openshell.md +0 -19
  486. package/docs/plugins/reference/perplexity.md +0 -23
  487. package/docs/plugins/reference/pixverse.md +0 -23
  488. package/docs/plugins/reference/policy.md +0 -72
  489. package/docs/plugins/reference/qa-channel.md +0 -23
  490. package/docs/plugins/reference/qa-lab.md +0 -19
  491. package/docs/plugins/reference/qa-matrix.md +0 -19
  492. package/docs/plugins/reference/qianfan.md +0 -23
  493. package/docs/plugins/reference/qqbot.md +0 -23
  494. package/docs/plugins/reference/qwen.md +0 -23
  495. package/docs/plugins/reference/runway.md +0 -23
  496. package/docs/plugins/reference/searxng.md +0 -19
  497. package/docs/plugins/reference/senseaudio.md +0 -23
  498. package/docs/plugins/reference/sglang.md +0 -23
  499. package/docs/plugins/reference/signal.md +0 -23
  500. package/docs/plugins/reference/skill-workshop.md +0 -23
  501. package/docs/plugins/reference/slack.md +0 -23
  502. package/docs/plugins/reference/stepfun.md +0 -23
  503. package/docs/plugins/reference/synology-chat.md +0 -23
  504. package/docs/plugins/reference/synthetic.md +0 -23
  505. package/docs/plugins/reference/tavily.md +0 -23
  506. package/docs/plugins/reference/telegram.md +0 -23
  507. package/docs/plugins/reference/tencent.md +0 -23
  508. package/docs/plugins/reference/tlon.md +0 -23
  509. package/docs/plugins/reference/together.md +0 -23
  510. package/docs/plugins/reference/tokenjuice.md +0 -23
  511. package/docs/plugins/reference/tts-local-cli.md +0 -19
  512. package/docs/plugins/reference/twitch.md +0 -23
  513. package/docs/plugins/reference/venice.md +0 -23
  514. package/docs/plugins/reference/vercel-ai-gateway.md +0 -23
  515. package/docs/plugins/reference/vllm.md +0 -23
  516. package/docs/plugins/reference/voice-call.md +0 -23
  517. package/docs/plugins/reference/volcengine.md +0 -23
  518. package/docs/plugins/reference/voyage.md +0 -19
  519. package/docs/plugins/reference/vydra.md +0 -23
  520. package/docs/plugins/reference/web-readability.md +0 -19
  521. package/docs/plugins/reference/webhooks.md +0 -23
  522. package/docs/plugins/reference/whatsapp.md +0 -23
  523. package/docs/plugins/reference/workboard.md +0 -23
  524. package/docs/plugins/reference/xai.md +0 -23
  525. package/docs/plugins/reference/xiaomi.md +0 -23
  526. package/docs/plugins/reference/zai.md +0 -23
  527. package/docs/plugins/reference/zalo.md +0 -23
  528. package/docs/plugins/reference/zalouser.md +0 -24
  529. package/docs/plugins/reference.md +0 -145
  530. package/docs/plugins/sdk-agent-harness.md +0 -338
  531. package/docs/plugins/sdk-channel-inbound.md +0 -70
  532. package/docs/plugins/sdk-channel-ingress.md +0 -137
  533. package/docs/plugins/sdk-channel-message.md +0 -18
  534. package/docs/plugins/sdk-channel-outbound.md +0 -113
  535. package/docs/plugins/sdk-channel-plugins.md +0 -765
  536. package/docs/plugins/sdk-channel-turn.md +0 -9
  537. package/docs/plugins/sdk-entrypoints.md +0 -344
  538. package/docs/plugins/sdk-migration.md +0 -979
  539. package/docs/plugins/sdk-overview.md +0 -511
  540. package/docs/plugins/sdk-provider-plugins.md +0 -846
  541. package/docs/plugins/sdk-runtime.md +0 -676
  542. package/docs/plugins/sdk-setup.md +0 -550
  543. package/docs/plugins/sdk-subpaths.md +0 -391
  544. package/docs/plugins/sdk-testing.md +0 -403
  545. package/docs/plugins/skill-workshop.md +0 -713
  546. package/docs/plugins/tool-plugins.md +0 -411
  547. package/docs/plugins/voice-call.md +0 -942
  548. package/docs/plugins/webhooks.md +0 -192
  549. package/docs/plugins/workboard.md +0 -252
  550. package/docs/plugins/zalouser.md +0 -86
  551. package/docs/prose.md +0 -137
  552. package/docs/providers/alibaba.md +0 -158
  553. package/docs/providers/anthropic.md +0 -381
  554. package/docs/providers/arcee.md +0 -144
  555. package/docs/providers/azure-speech.md +0 -119
  556. package/docs/providers/bedrock-mantle.md +0 -211
  557. package/docs/providers/bedrock.md +0 -414
  558. package/docs/providers/cerebras.md +0 -130
  559. package/docs/providers/chutes.md +0 -153
  560. package/docs/providers/claude-max-api-proxy.md +0 -191
  561. package/docs/providers/cloudflare-ai-gateway.md +0 -119
  562. package/docs/providers/comfy.md +0 -362
  563. package/docs/providers/deepgram.md +0 -184
  564. package/docs/providers/deepinfra.md +0 -92
  565. package/docs/providers/deepseek.md +0 -146
  566. package/docs/providers/ds4.md +0 -309
  567. package/docs/providers/elevenlabs.md +0 -130
  568. package/docs/providers/fal.md +0 -240
  569. package/docs/providers/fireworks.md +0 -144
  570. package/docs/providers/github-copilot.md +0 -257
  571. package/docs/providers/gmi.md +0 -92
  572. package/docs/providers/google.md +0 -472
  573. package/docs/providers/gradium.md +0 -123
  574. package/docs/providers/groq.md +0 -171
  575. package/docs/providers/huggingface.md +0 -235
  576. package/docs/providers/index.md +0 -105
  577. package/docs/providers/inferrs.md +0 -272
  578. package/docs/providers/inworld.md +0 -120
  579. package/docs/providers/kilocode.md +0 -135
  580. package/docs/providers/litellm.md +0 -234
  581. package/docs/providers/lmstudio.md +0 -224
  582. package/docs/providers/minimax.md +0 -505
  583. package/docs/providers/mistral.md +0 -235
  584. package/docs/providers/models.md +0 -64
  585. package/docs/providers/moonshot.md +0 -413
  586. package/docs/providers/novita.md +0 -92
  587. package/docs/providers/nvidia.md +0 -158
  588. package/docs/providers/ollama-cloud.md +0 -115
  589. package/docs/providers/ollama.md +0 -1225
  590. package/docs/providers/openai.md +0 -1093
  591. package/docs/providers/opencode-go.md +0 -123
  592. package/docs/providers/opencode.md +0 -149
  593. package/docs/providers/openrouter.md +0 -349
  594. package/docs/providers/perplexity-provider.md +0 -123
  595. package/docs/providers/pixverse.md +0 -165
  596. package/docs/providers/qianfan.md +0 -132
  597. package/docs/providers/qwen-oauth.md +0 -115
  598. package/docs/providers/qwen.md +0 -364
  599. package/docs/providers/runway.md +0 -103
  600. package/docs/providers/senseaudio.md +0 -68
  601. package/docs/providers/sglang.md +0 -161
  602. package/docs/providers/stepfun.md +0 -229
  603. package/docs/providers/synthetic.md +0 -154
  604. package/docs/providers/tencent.md +0 -130
  605. package/docs/providers/together.md +0 -140
  606. package/docs/providers/venice.md +0 -312
  607. package/docs/providers/vercel-ai-gateway.md +0 -128
  608. package/docs/providers/vllm.md +0 -407
  609. package/docs/providers/volcengine.md +0 -199
  610. package/docs/providers/vydra.md +0 -180
  611. package/docs/providers/xai.md +0 -571
  612. package/docs/providers/xiaomi.md +0 -262
  613. package/docs/providers/zai.md +0 -224
  614. package/docs/refactor/access.md +0 -9
  615. package/docs/refactor/acp.md +0 -298
  616. package/docs/refactor/canvas.md +0 -131
  617. package/docs/refactor/database-first.md +0 -2256
  618. package/docs/refactor/ingress-core.md +0 -341
  619. package/docs/reference/AGENTS.default.md +0 -131
  620. package/docs/reference/RELEASING.md +0 -799
  621. package/docs/reference/api-usage-costs.md +0 -208
  622. package/docs/reference/application-modernization-plan.md +0 -208
  623. package/docs/reference/code-mode.md +0 -773
  624. package/docs/reference/credits.md +0 -33
  625. package/docs/reference/device-models.md +0 -50
  626. package/docs/reference/fengming-sdk-api-design.md +0 -390
  627. package/docs/reference/full-release-validation.md +0 -202
  628. package/docs/reference/memory-config.md +0 -604
  629. package/docs/reference/prompt-caching.md +0 -358
  630. package/docs/reference/release-performance-sweep.md +0 -360
  631. package/docs/reference/rich-output-protocol.md +0 -101
  632. package/docs/reference/rpc.md +0 -43
  633. package/docs/reference/secret-placeholder-conventions.md +0 -33
  634. package/docs/reference/secretref-credential-surface.md +0 -159
  635. package/docs/reference/secretref-user-supplied-credentials-matrix.json +0 -663
  636. package/docs/reference/session-management-compaction.md +0 -474
  637. package/docs/reference/templates/AGENTS.dev.md +0 -90
  638. package/docs/reference/templates/AGENTS.md +0 -227
  639. package/docs/reference/templates/BOOT.md +0 -16
  640. package/docs/reference/templates/BOOTSTRAP.md +0 -66
  641. package/docs/reference/templates/CLAUDE.md +0 -1
  642. package/docs/reference/templates/HEARTBEAT.md +0 -24
  643. package/docs/reference/templates/IDENTITY.dev.md +0 -52
  644. package/docs/reference/templates/IDENTITY.md +0 -34
  645. package/docs/reference/templates/SOUL.dev.md +0 -82
  646. package/docs/reference/templates/SOUL.md +0 -49
  647. package/docs/reference/templates/TOOLS.dev.md +0 -29
  648. package/docs/reference/templates/TOOLS.md +0 -51
  649. package/docs/reference/templates/USER.dev.md +0 -23
  650. package/docs/reference/templates/USER.md +0 -28
  651. package/docs/reference/test.md +0 -247
  652. package/docs/reference/token-use.md +0 -246
  653. package/docs/reference/transcript-hygiene.md +0 -214
  654. package/docs/reference/wizard.md +0 -252
  655. package/docs/security/CONTRIBUTING-THREAT-MODEL.md +0 -101
  656. package/docs/security/THREAT-MODEL-ATLAS.md +0 -611
  657. package/docs/security/formal-verification.md +0 -170
  658. package/docs/security/incident-response.md +0 -59
  659. package/docs/security/network-proxy.md +0 -268
  660. package/docs/snippets/plugin-publish/minimal-fengming.plugin.json +0 -12
  661. package/docs/snippets/plugin-publish/minimal-package.json +0 -16
  662. package/docs/specs/claw-supervisor.md +0 -247
  663. package/docs/start/bootstrapping.md +0 -49
  664. package/docs/start/docs-directory.md +0 -69
  665. package/docs/start/fengming.md +0 -252
  666. package/docs/start/getting-started.md +0 -152
  667. package/docs/start/hubs.md +0 -201
  668. package/docs/start/lore.md +0 -223
  669. package/docs/start/onboarding-overview.md +0 -72
  670. package/docs/start/onboarding.md +0 -98
  671. package/docs/start/quickstart.md +0 -25
  672. package/docs/start/setup.md +0 -178
  673. package/docs/start/showcase.md +0 -363
  674. package/docs/start/wizard-cli-automation.md +0 -232
  675. package/docs/start/wizard-cli-reference.md +0 -331
  676. package/docs/start/wizard.md +0 -141
  677. package/docs/style.css +0 -137
  678. package/docs/superpowers/specs/2026-04-22-tweakcn-custom-theme-import-design.md +0 -316
  679. package/docs/tools/acp-agents-setup.md +0 -351
  680. package/docs/tools/acp-agents.md +0 -854
  681. package/docs/tools/agent-send.md +0 -130
  682. package/docs/tools/apply-patch.md +0 -64
  683. package/docs/tools/brave-search.md +0 -139
  684. package/docs/tools/browser-control.md +0 -391
  685. package/docs/tools/browser-linux-troubleshooting.md +0 -173
  686. package/docs/tools/browser-login.md +0 -77
  687. package/docs/tools/browser-wsl2-windows-remote-cdp-troubleshooting.md +0 -219
  688. package/docs/tools/browser.md +0 -810
  689. package/docs/tools/btw.md +0 -159
  690. package/docs/tools/capability-cookbook.md +0 -12
  691. package/docs/tools/clawhub.md +0 -5
  692. package/docs/tools/code-execution.md +0 -173
  693. package/docs/tools/creating-skills.md +0 -158
  694. package/docs/tools/diffs.md +0 -525
  695. package/docs/tools/duckduckgo-search.md +0 -109
  696. package/docs/tools/elevated.md +0 -128
  697. package/docs/tools/exa-search.md +0 -152
  698. package/docs/tools/exec-approvals-advanced.md +0 -444
  699. package/docs/tools/exec-approvals.md +0 -494
  700. package/docs/tools/exec.md +0 -285
  701. package/docs/tools/firecrawl.md +0 -155
  702. package/docs/tools/gemini-search.md +0 -114
  703. package/docs/tools/goal.md +0 -217
  704. package/docs/tools/grok-search.md +0 -129
  705. package/docs/tools/image-generation.md +0 -493
  706. package/docs/tools/index.md +0 -178
  707. package/docs/tools/kimi-search.md +0 -105
  708. package/docs/tools/llm-task.md +0 -137
  709. package/docs/tools/lobster.md +0 -365
  710. package/docs/tools/loop-detection.md +0 -154
  711. package/docs/tools/media-overview.md +0 -160
  712. package/docs/tools/minimax-search.md +0 -102
  713. package/docs/tools/multi-agent-sandbox-tools.md +0 -409
  714. package/docs/tools/music-generation.md +0 -372
  715. package/docs/tools/ollama-search.md +0 -153
  716. package/docs/tools/pdf.md +0 -213
  717. package/docs/tools/perplexity-search.md +0 -220
  718. package/docs/tools/plugin.md +0 -363
  719. package/docs/tools/reactions.md +0 -100
  720. package/docs/tools/searxng-search.md +0 -141
  721. package/docs/tools/skills-config.md +0 -195
  722. package/docs/tools/skills.md +0 -569
  723. package/docs/tools/slash-commands.md +0 -487
  724. package/docs/tools/steer.md +0 -77
  725. package/docs/tools/subagents.md +0 -651
  726. package/docs/tools/tavily.md +0 -162
  727. package/docs/tools/thinking.md +0 -142
  728. package/docs/tools/tokenjuice.md +0 -84
  729. package/docs/tools/tool-search.md +0 -269
  730. package/docs/tools/trajectory.md +0 -229
  731. package/docs/tools/tts.md +0 -1009
  732. package/docs/tools/video-generation.md +0 -555
  733. package/docs/tools/web-fetch.md +0 -210
  734. package/docs/tools/web.md +0 -461
  735. package/docs/tts.md +0 -11
  736. package/docs/vps.md +0 -139
  737. package/docs/web/control-ui.md +0 -512
  738. package/docs/web/dashboard.md +0 -107
  739. package/docs/web/index.md +0 -133
  740. package/docs/web/tui.md +0 -250
  741. package/docs/web/webchat.md +0 -102
  742. package/npm-shrinkwrap.json +0 -12861
  743. package/patches/.gitkeep +0 -0
  744. package/patches/@agentclientprotocol__claude-agent-acp@0.37.0.patch +0 -41
  745. package/pnpm-workspace.yaml +0 -120
  746. package/scripts/crabbox-wrapper.mjs +0 -2004
  747. package/scripts/lib/official-external-channel-catalog.json +0 -560
  748. package/scripts/lib/official-external-plugin-catalog.json +0 -264
  749. package/scripts/lib/official-external-provider-catalog.json +0 -158
  750. package/scripts/lib/package-dist-imports.mjs +0 -171
  751. package/scripts/npm-runner.mjs +0 -91
  752. package/scripts/postinstall-bundled-plugins.mjs +0 -978
  753. package/scripts/preinstall-package-manager-warning.mjs +0 -64
  754. package/scripts/prepare-git-hooks.mjs +0 -72
  755. package/scripts/windows-cmd-helpers.mjs +0 -22
  756. package/skills/batch/SKILL.md +0 -118
  757. package/skills/code-review/SKILL.md +0 -107
  758. package/skills/debug/SKILL.md +0 -83
  759. package/skills/loop/SKILL.md +0 -118
  760. package/skills/run/SKILL.md +0 -79
  761. package/skills/run-skill-generator/SKILL.md +0 -179
  762. package/skills/verify/SKILL.md +0 -103
  763. package/src/agents/templates/HEARTBEAT.md +0 -3
@@ -1,877 +0,0 @@
1
- ---
2
- summary: "Deep troubleshooting runbook for gateway, channels, automation, nodes, and browser"
3
- read_when:
4
- - The troubleshooting hub pointed you here for deeper diagnosis
5
- - You need stable symptom based runbook sections with exact commands
6
- title: "Troubleshooting"
7
- sidebarTitle: "Troubleshooting"
8
- ---
9
-
10
- This page is the deep runbook. Start at [/help/troubleshooting](/help/troubleshooting) if you want the fast triage flow first.
11
-
12
- ## Command ladder
13
-
14
- Run these first, in this order:
15
-
16
- ```bash
17
- fengming status
18
- fengming gateway status
19
- fengming logs --follow
20
- fengming doctor
21
- fengming channels status --probe
22
- ```
23
-
24
- Expected healthy signals:
25
-
26
- - `fengming gateway status` shows `Runtime: running`, `Connectivity probe: ok`, and a `Capability: ...` line.
27
- - `fengming doctor` reports no blocking config/service issues.
28
- - `fengming channels status --probe` shows live per-account transport status and, where supported, probe/audit results such as `works` or `audit ok`.
29
-
30
- ## After an update
31
-
32
- Use this when an update finishes but the Gateway is down, channels are empty, or
33
- model calls start failing with 401s.
34
-
35
- ```bash
36
- fengming status --all
37
- fengming update status --json
38
- fengming gateway status --deep
39
- fengming doctor --fix
40
- fengming gateway restart
41
- ```
42
-
43
- Look for:
44
-
45
- - `Update restart` in `fengming status` / `fengming status --all`. Pending or
46
- failed handoffs include the next command to run.
47
- - `plugin load failed: dependency tree corrupted; run fengming doctor --fix`
48
- under Channels. That means the channel config still exists, but plugin
49
- registration failed before the channel could load.
50
- - provider 401s after re-auth. `fengming doctor --fix` checks for stale
51
- per-agent OAuth auth shadows and removes the old copies so all agents resolve
52
- the current shared profile.
53
-
54
- ## Split brain installs and newer config guard
55
-
56
- Use this when a gateway service unexpectedly stops after an update, or logs show that one `fengming` binary is older than the version that last wrote `fengming.json`.
57
-
58
- FengMing stamps config writes with `meta.lastTouchedVersion`. Read-only commands can still inspect a config written by a newer FengMing, but process and service mutations refuse to continue from an older binary. Blocked actions include gateway service start, stop, restart, uninstall, forced service reinstall, service-mode gateway startup, and `gateway --force` port cleanup.
59
-
60
- ```bash
61
- which fengming
62
- fengming --version
63
- fengming gateway status --deep
64
- fengming config get meta.lastTouchedVersion
65
- ```
66
-
67
- <Steps>
68
- <Step title="Fix PATH">
69
- Fix `PATH` so `fengming` resolves to the newer install, then rerun the action.
70
- </Step>
71
- <Step title="Reinstall the gateway service">
72
- Reinstall the intended gateway service from the newer install:
73
-
74
- ```bash
75
- fengming gateway install --force
76
- fengming gateway restart
77
- ```
78
-
79
- </Step>
80
- <Step title="Remove stale wrappers">
81
- Remove stale system package or old wrapper entries that still point at an old `fengming` binary.
82
- </Step>
83
- </Steps>
84
-
85
- <Warning>
86
- For intentional downgrade or emergency recovery only, set `FENGMING_ALLOW_OLDER_BINARY_DESTRUCTIVE_ACTIONS=1` for the single command. Leave it unset for normal operation.
87
- </Warning>
88
-
89
- ## Protocol mismatch after rollback
90
-
91
- Use this when logs keep printing `protocol mismatch` after you downgrade or roll back FengMing. This means an older Gateway is running, but a newer local client process is still trying to reconnect with a protocol range that the older Gateway cannot speak.
92
-
93
- ```bash
94
- fengming --version
95
- which -a fengming
96
- fengming gateway status --deep
97
- fengming doctor --deep
98
- fengming logs --follow
99
- ```
100
-
101
- Look for:
102
-
103
- - `protocol mismatch ... client=... v<version> min=<n> max=<n> expected=<n>` in Gateway logs.
104
- - `Established clients:` in `fengming gateway status --deep` or `Gateway clients` in `fengming doctor --deep`. This lists active TCP clients connected to the Gateway port, including PIDs and command lines when the OS allows it.
105
- - A client process whose command line points at the newer FengMing install or wrapper you rolled back from.
106
-
107
- Fix:
108
-
109
- 1. Stop or restart the stale FengMing client process shown by `gateway status --deep`.
110
- 2. Restart apps or wrappers that embed FengMing, such as local dashboards, editors, app-server helpers, or long-running `fengming logs --follow` shells.
111
- 3. Re-run `fengming gateway status --deep` or `fengming doctor --deep` and confirm the stale client PID is gone.
112
-
113
- Do not make an older Gateway accept a newer incompatible protocol. Protocol bumps protect the wire contract; rollback recovery is a process/version cleanup problem.
114
-
115
- ## Skill symlink skipped as path escape
116
-
117
- Use this when logs include:
118
-
119
- ```text
120
- Skipping escaped skill path outside its configured root: ... reason=symlink-escape
121
- ```
122
-
123
- FengMing treats every skill root as a containment boundary. A symlink under
124
- `~/.agents/skills`, `<workspace>/.agents/skills`, `<workspace>/skills`, or
125
- `~/.fengming/skills` is skipped when its real target resolves outside that root
126
- unless the target is explicitly trusted.
127
-
128
- Inspect the link:
129
-
130
- ```bash
131
- ls -l ~/.agents/skills/<name>
132
- realpath ~/.agents/skills/<name>
133
- fengming config get skills.load
134
- ```
135
-
136
- If the target is intentional, configure both the direct skill root and the
137
- allowed symlink target:
138
-
139
- ```json5
140
- {
141
- skills: {
142
- load: {
143
- extraDirs: ["~/Projects/manager/skills"],
144
- allowSymlinkTargets: ["~/Projects/manager/skills"],
145
- },
146
- },
147
- }
148
- ```
149
-
150
- Then start a new session or wait for the skills watcher to refresh. Restart the
151
- gateway if the running process predates the config change.
152
-
153
- Do not use broad targets such as `~`, `/`, or a whole synced project folder.
154
- Keep `allowSymlinkTargets` scoped to the real skill root that contains trusted
155
- `SKILL.md` directories.
156
-
157
- Related:
158
-
159
- - [Skills config](/tools/skills-config#symlinked-sibling-repos)
160
- - [Configuration examples](/gateway/configuration-examples#symlinked-sibling-skill-repo)
161
-
162
- ## Anthropic 429 extra usage required for long context
163
-
164
- Use this when logs/errors include: `HTTP 429: rate_limit_error: Extra usage is required for long context requests`.
165
-
166
- ```bash
167
- fengming logs --follow
168
- fengming models status
169
- fengming config get agents.defaults.models
170
- ```
171
-
172
- Look for:
173
-
174
- - Selected Anthropic model is a GA-capable 1M Claude 4.x model, or the model has legacy `params.context1m: true`.
175
- - Current Anthropic credential is not eligible for long-context usage.
176
- - Requests fail only on long sessions/model runs that need the 1M context path.
177
-
178
- Fix options:
179
-
180
- <Steps>
181
- <Step title="Use a standard context window">
182
- Switch to a standard-window model, or remove legacy `context1m` from older
183
- model config that is not GA-capable for 1M context.
184
- </Step>
185
- <Step title="Use an eligible credential">
186
- Use an Anthropic credential that is eligible for long-context requests, or switch to an Anthropic API key.
187
- </Step>
188
- <Step title="Configure fallback models">
189
- Configure fallback models so runs continue when Anthropic long-context requests are rejected.
190
- </Step>
191
- </Steps>
192
-
193
- Related:
194
-
195
- - [Anthropic](/providers/anthropic)
196
- - [Token use and costs](/reference/token-use)
197
- - [Why am I seeing HTTP 429 from Anthropic?](/help/faq-first-run#why-am-i-seeing-http-429-ratelimiterror-from-anthropic)
198
-
199
- ## Upstream 403 blocked responses
200
-
201
- Use this when an upstream LLM provider returns a generic `403` such as
202
- `Your request was blocked`.
203
-
204
- Do not assume this is always an FengMing configuration issue. The response can
205
- come from an upstream security layer such as a CDN, WAF, bot-management rule, or
206
- reverse proxy in front of an OpenAI-compatible endpoint.
207
-
208
- ```bash
209
- fengming status
210
- fengming gateway status
211
- fengming logs --follow
212
- ```
213
-
214
- Look for:
215
-
216
- - multiple models under the same provider failing in the same way
217
- - HTML or generic security text instead of a normal provider API error
218
- - provider-side security events for the same request time
219
- - a tiny direct `curl` probe succeeding while normal SDK-shaped requests fail
220
-
221
- Fix the provider-side filtering first when the evidence points to a WAF/CDN
222
- block. Prefer a narrowly scoped allow or skip rule for the API path FengMing
223
- uses, and avoid disabling protection for the whole site.
224
-
225
- <Warning>
226
- A successful minimal `curl` does not guarantee that real SDK-style requests will
227
- pass through the same upstream security layer.
228
- </Warning>
229
-
230
- Related:
231
-
232
- - [OpenAI-compatible endpoints](/gateway/configuration-reference#openai-compatible-endpoints)
233
- - [Provider configuration](/providers)
234
- - [Logs](/logging)
235
-
236
- ## Local OpenAI-compatible backend passes direct probes but agent runs fail
237
-
238
- Use this when:
239
-
240
- - `curl ... /v1/models` works
241
- - tiny direct `/v1/chat/completions` calls work
242
- - FengMing model runs fail only on normal agent turns
243
-
244
- ```bash
245
- curl http://127.0.0.1:1234/v1/models
246
- curl http://127.0.0.1:1234/v1/chat/completions \
247
- -H 'content-type: application/json' \
248
- -d '{"model":"<id>","messages":[{"role":"user","content":"hi"}],"stream":false}'
249
- fengming infer model run --model <provider/model> --prompt "hi" --json
250
- fengming logs --follow
251
- ```
252
-
253
- Look for:
254
-
255
- - direct tiny calls succeed, but FengMing runs fail only on larger prompts
256
- - `model_not_found` or 404 errors even though direct `/v1/chat/completions`
257
- works with the same bare model id
258
- - backend errors about `messages[].content` expecting a string
259
- - intermittent `incomplete turn detected ... stopReason=stop payloads=0` warnings with an OpenAI-compatible local backend
260
- - backend crashes that appear only with larger prompt-token counts or full agent runtime prompts
261
-
262
- <AccordionGroup>
263
- <Accordion title="Common signatures">
264
- - `model_not_found` with a local MLX/vLLM-style server → verify `baseUrl` includes `/v1`, `api` is `"openai-completions"` for `/v1/chat/completions` backends, and `models.providers.<provider>.models[].id` is the bare provider-local id. Select it with the provider prefix once, for example `mlx/mlx-community/Qwen3-30B-A3B-6bit`; keep the catalog entry as `mlx-community/Qwen3-30B-A3B-6bit`.
265
- - `messages[...].content: invalid type: sequence, expected a string` → backend rejects structured Chat Completions content parts. Fix: set `models.providers.<provider>.models[].compat.requiresStringContent: true`.
266
- - `validation.keys` or allowed message keys like `["role","content"]` → backend rejects OpenAI-style replay metadata on Chat Completions messages. Fix: set `models.providers.<provider>.models[].compat.strictMessageKeys: true`.
267
- - `incomplete turn detected ... stopReason=stop payloads=0` → the backend completed the Chat Completions request but returned no user-visible assistant text for that turn. FengMing retries replay-safe empty OpenAI-compatible turns once; persistent failures usually mean the backend is emitting empty/non-text content or suppressing final-answer text.
268
- - direct tiny requests succeed, but FengMing agent runs fail with backend/model crashes (for example Gemma on some `inferrs` builds) → FengMing transport is likely already correct; the backend is failing on the larger agent-runtime prompt shape.
269
- - failures shrink after disabling tools but do not disappear → tool schemas were part of the pressure, but the remaining issue is still upstream model/server capacity or a backend bug.
270
-
271
- </Accordion>
272
- <Accordion title="Fix options">
273
- 1. Set `compat.requiresStringContent: true` for string-only Chat Completions backends.
274
- 2. Set `compat.strictMessageKeys: true` for strict Chat Completions backends that only accept `role` and `content` on each message.
275
- 3. Set `compat.supportsTools: false` for models/backends that cannot handle FengMing's tool schema surface reliably.
276
- 4. Lower prompt pressure where possible: smaller workspace bootstrap, shorter session history, lighter local model, or a backend with stronger long-context support.
277
- 5. If tiny direct requests keep passing while FengMing agent turns still crash inside the backend, treat it as an upstream server/model limitation and file a repro there with the accepted payload shape.
278
- </Accordion>
279
- </AccordionGroup>
280
-
281
- Related:
282
-
283
- - [Configuration](/gateway/configuration)
284
- - [Local models](/gateway/local-models)
285
- - [OpenAI-compatible endpoints](/gateway/configuration-reference#openai-compatible-endpoints)
286
-
287
- ## No replies
288
-
289
- If channels are up but nothing answers, check routing and policy before reconnecting anything.
290
-
291
- ```bash
292
- fengming status
293
- fengming channels status --probe
294
- fengming pairing list --channel <channel> [--account <id>]
295
- fengming config get channels
296
- fengming logs --follow
297
- ```
298
-
299
- Look for:
300
-
301
- - Pairing pending for DM senders.
302
- - Group mention gating (`requireMention`, `mentionPatterns`).
303
- - Channel/group allowlist mismatches.
304
-
305
- Common signatures:
306
-
307
- - `drop guild message (mention required` → group message ignored until mention.
308
- - `pairing request` → sender needs approval.
309
- - `blocked` / `allowlist` → sender/channel was filtered by policy.
310
-
311
- Related:
312
-
313
- - [Channel troubleshooting](/channels/troubleshooting)
314
- - [Groups](/channels/groups)
315
- - [Pairing](/channels/pairing)
316
-
317
- ## Dashboard control UI connectivity
318
-
319
- When dashboard/control UI will not connect, validate URL, auth mode, and secure context assumptions.
320
-
321
- ```bash
322
- fengming gateway status
323
- fengming status
324
- fengming logs --follow
325
- fengming doctor
326
- fengming gateway status --json
327
- ```
328
-
329
- Look for:
330
-
331
- - Correct probe URL and dashboard URL.
332
- - Auth mode/token mismatch between client and gateway.
333
- - HTTP usage where device identity is required.
334
-
335
- If a local browser cannot connect to `127.0.0.1:18789` after an update, first
336
- recover the local Gateway service and confirm it is serving the dashboard:
337
-
338
- ```bash
339
- fengming gateway restart
340
- lsof -i :18789
341
- curl http://127.0.0.1:18789
342
- ```
343
-
344
- If `curl` returns FengMing HTML, the Gateway is working and the remaining issue
345
- is likely browser cache, an old deep link, or stale tab state. Open
346
- `http://127.0.0.1:18789` directly and navigate from the dashboard. If restart
347
- does not leave the service running, run `fengming gateway start` and recheck
348
- `fengming gateway status`.
349
-
350
- <AccordionGroup>
351
- <Accordion title="Connect / auth signatures">
352
- - `device identity required` → non-secure context or missing device auth.
353
- - `origin not allowed` → browser `Origin` is not in `gateway.controlUi.allowedOrigins` (or you are connecting from a non-loopback browser origin without an explicit allowlist).
354
- - `device nonce required` / `device nonce mismatch` → client is not completing the challenge-based device auth flow (`connect.challenge` + `device.nonce`).
355
- - `device signature invalid` / `device signature expired` → client signed the wrong payload (or stale timestamp) for the current handshake.
356
- - `AUTH_TOKEN_MISMATCH` with `canRetryWithDeviceToken=true` → client can do one trusted retry with cached device token.
357
- - That cached-token retry reuses the cached scope set stored with the paired device token. Explicit `deviceToken` / explicit `scopes` callers keep their requested scope set instead.
358
- - `AUTH_SCOPE_MISMATCH` → the device token was recognized, but its approved scopes do not cover this connect request; re-pair or approve the requested scope contract instead of rotating a shared gateway token.
359
- - Outside that retry path, connect auth precedence is explicit shared token/password first, then explicit `deviceToken`, then stored device token, then bootstrap token.
360
- - On the async Tailscale Serve Control UI path, failed attempts for the same `{scope, ip}` are serialized before the limiter records the failure. Two bad concurrent retries from the same client can therefore surface `retry later` on the second attempt instead of two plain mismatches.
361
- - `too many failed authentication attempts (retry later)` from a browser-origin loopback client → repeated failures from that same normalized `Origin` are locked out temporarily; another localhost origin uses a separate bucket.
362
- - repeated `unauthorized` after that retry → shared token/device token drift; refresh token config and re-approve/rotate device token if needed.
363
- - `gateway connect failed:` → wrong host/port/url target.
364
-
365
- </Accordion>
366
- </AccordionGroup>
367
-
368
- ### Auth detail codes quick map
369
-
370
- Use `error.details.code` from the failed `connect` response to pick the next action:
371
-
372
- | Detail code | Meaning | Recommended action |
373
- | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
374
- | `AUTH_TOKEN_MISSING` | Client did not send a required shared token. | Paste/set token in the client and retry. For dashboard paths: `fengming config get gateway.auth.token` then paste into Control UI settings. |
375
- | `AUTH_TOKEN_MISMATCH` | Shared token did not match gateway auth token. | If `canRetryWithDeviceToken=true`, allow one trusted retry. Cached-token retries reuse stored approved scopes; explicit `deviceToken` / `scopes` callers keep requested scopes. If still failing, run the [token drift recovery checklist](/cli/devices#token-drift-recovery-checklist). |
376
- | `AUTH_DEVICE_TOKEN_MISMATCH` | Cached per-device token is stale or revoked. | Rotate/re-approve device token using [devices CLI](/cli/devices), then reconnect. |
377
- | `AUTH_SCOPE_MISMATCH` | Device token is valid, but its approved role/scopes do not cover this connect request. | Re-pair the device or approve the requested scope contract; do not treat this as shared-token drift. |
378
- | `PAIRING_REQUIRED` | Device identity needs approval. Check `error.details.reason` for `not-paired`, `scope-upgrade`, `role-upgrade`, or `metadata-upgrade`, and use `requestId` / `remediationHint` when present. | Approve pending request: `fengming devices list` then `fengming devices approve <requestId>`. Scope/role upgrades use the same flow after you review the requested access. |
379
-
380
- <Note>
381
- Direct loopback backend RPCs authenticated with the shared gateway token/password should not depend on the CLI's paired-device scope baseline. If subagents or other internal calls still fail with `scope-upgrade`, verify the caller is using `client.id: "gateway-client"` and `client.mode: "backend"` and is not forcing an explicit `deviceIdentity` or device token.
382
- </Note>
383
-
384
- Device auth v2 migration check:
385
-
386
- ```bash
387
- fengming --version
388
- fengming doctor
389
- fengming gateway status
390
- ```
391
-
392
- If logs show nonce/signature errors, update the connecting client and verify it:
393
-
394
- <Steps>
395
- <Step title="Wait for connect.challenge">
396
- Client waits for the gateway-issued `connect.challenge`.
397
- </Step>
398
- <Step title="Sign the payload">
399
- Client signs the challenge-bound payload.
400
- </Step>
401
- <Step title="Send the device nonce">
402
- Client sends `connect.params.device.nonce` with the same challenge nonce.
403
- </Step>
404
- </Steps>
405
-
406
- If `fengming devices rotate` / `revoke` / `remove` is denied unexpectedly:
407
-
408
- - paired-device token sessions can manage only **their own** device unless the caller also has `operator.admin`
409
- - `fengming devices rotate --scope ...` can only request operator scopes that the caller session already holds
410
-
411
- Related:
412
-
413
- - [Configuration](/gateway/configuration) (gateway auth modes)
414
- - [Control UI](/web/control-ui)
415
- - [Devices](/cli/devices)
416
- - [Remote access](/gateway/remote)
417
- - [Trusted proxy auth](/gateway/trusted-proxy-auth)
418
-
419
- ## Gateway service not running
420
-
421
- Use this when service is installed but process does not stay up.
422
-
423
- ```bash
424
- fengming gateway status
425
- fengming status
426
- fengming logs --follow
427
- fengming doctor
428
- fengming gateway status --deep # also scan system-level services
429
- ```
430
-
431
- Look for:
432
-
433
- - `Runtime: stopped` with exit hints.
434
- - Service config mismatch (`Config (cli)` vs `Config (service)`).
435
- - Port/listener conflicts.
436
- - Extra launchd/systemd/schtasks installs when `--deep` is used.
437
- - `Other gateway-like services detected (best effort)` cleanup hints.
438
-
439
- <AccordionGroup>
440
- <Accordion title="Common signatures">
441
- - `Gateway start blocked: set gateway.mode=local` or `existing config is missing gateway.mode` → local gateway mode is not enabled, or the config file was clobbered and lost `gateway.mode`. Fix: set `gateway.mode="local"` in your config, or re-run `fengming onboard --mode local` / `fengming setup` to restamp the expected local-mode config. If you are running FengMing via Podman, the default config path is `~/.fengming/fengming.json`.
442
- - `refusing to bind gateway ... without auth` → non-loopback bind without a valid gateway auth path (token/password, or trusted-proxy where configured).
443
- - `another gateway instance is already listening` / `EADDRINUSE` → port conflict.
444
- - `Other gateway-like services detected (best effort)` → stale or parallel launchd/systemd/schtasks units exist. Most setups should keep one gateway per machine; if you do need more than one, isolate ports + config/state/workspace. See [/gateway#multiple-gateways-same-host](/gateway#multiple-gateways-same-host).
445
- - `System-level FengMing gateway service detected` from doctor → a systemd system unit exists while the user-level service is missing. Remove or disable the duplicate before allowing doctor to install a user service, or set `FENGMING_SERVICE_REPAIR_POLICY=external` if the system unit is the intended supervisor.
446
- - `Gateway service port does not match current gateway config` → the installed supervisor still pins the old `--port`. Run `fengming doctor --fix` or `fengming gateway install --force`, then restart the gateway service.
447
-
448
- </Accordion>
449
- </AccordionGroup>
450
-
451
- Related:
452
-
453
- - [Background exec and process tool](/gateway/background-process)
454
- - [Configuration](/gateway/configuration)
455
- - [Doctor](/gateway/doctor)
456
-
457
- ## macOS gateway silently stops responding, then resumes when you touch the dashboard
458
-
459
- Use this when channels (Telegram, WhatsApp, etc.) on a macOS host go quiet for minutes to hours at a time, and the gateway appears to come back the moment you open the Control UI, SSH in, or otherwise interact with the host. There is usually no obvious symptom in `fengming status` because by the time you look the gateway is alive again.
460
-
461
- ```bash
462
- ls ~/.fengming/logs/stability/ | tail -5
463
- fengming gateway stability --bundle latest
464
- pmset -g log | grep -iE "sleep|wake|maintenance" | tail -50
465
- launchctl print gui/$UID/ai.fengming.gateway | grep -E "state|last exit|runs"
466
- ```
467
-
468
- Look for:
469
-
470
- - One or more `*-uncaught_exception.json` bundles in `~/.fengming/logs/stability/` with `error.code` set to a transient network code such as `ENETDOWN`, `ENETUNREACH`, `EHOSTUNREACH`, or `ECONNREFUSED`.
471
- - `pmset -g log` lines like `Entering Sleep state due to 'Maintenance Sleep'` or `en0 driver is slow (msg: WillChangeState to 0)` aligned with the crash timestamps. Power Nap / Maintenance Sleep briefly puts the Wi-Fi driver into state 0; any outbound `connect()` that lands in that window can fail with `ENETDOWN` even on a host that otherwise has full network connectivity.
472
- - `launchctl print` output showing `state = not running` with multiple recent `runs` and an exit code, especially when the gap between crash and the next launch is on the order of an hour rather than seconds. macOS launchd applies an undocumented respawn-protection gate after a crash burst that can stop honoring `KeepAlive=true` until an external trigger such as interactive login, dashboard connection, or `launchctl kickstart` re-arms it.
473
-
474
- Common signatures:
475
-
476
- - A stability bundle whose `error.code` is `ENETDOWN` or a sibling code, with the call stack pointing into Node `net` `lookupAndConnect` / `Socket.connect`. FengMing `2026.5.26` and newer classify these as benign transient network errors so they no longer propagate to the top-level uncaught handler; if you are on an older release, upgrade first.
477
- - Long quiet periods that end the instant you connect to the Control UI or SSH into the host: the user-visible activity is what re-arms launchd's respawn gate, not anything the dashboard does to the gateway.
478
- - `runs` count incrementing across the day with no corresponding `received SIG*; shutting down` line in `~/Library/Logs/fengming/gateway.log`: clean shutdowns log a signal; transient crashes do not.
479
-
480
- What to do:
481
-
482
- 1. **Upgrade the gateway** if you are running a release before `2026.5.26`. After upgrading, future `ENETDOWN` errors are logged as warnings instead of terminating the process.
483
- 2. **Reduce maintenance sleep activity** on Mac mini / desktop hosts that are meant to run as always-on servers:
484
-
485
- ```bash
486
- sudo pmset -a sleep 0 disksleep 0 standby 0 powernap 0
487
- ```
488
-
489
- This significantly reduces, but does not entirely eliminate, the underlying driver flap. The system can still perform some maintenance sleeps for TCP keepalive and mDNS upkeep regardless of these flags.
490
-
491
- 3. **Add a liveness watchdog** so a future crash burst that gets parked by launchd is caught quickly:
492
-
493
- ```bash
494
- # Example launchd-aware liveness check, suitable for a 5-minute cron or LaunchAgent
495
- state=$(launchctl print gui/$UID/ai.fengming.gateway 2>/dev/null | awk -F'= ' '/state =/ {print $2; exit}')
496
- if [ "$state" != "running" ]; then
497
- launchctl kickstart -k gui/$UID/ai.fengming.gateway
498
- fi
499
- ```
500
-
501
- The point is to externally re-arm the respawn gate; `KeepAlive=true` alone is not sufficient on macOS after a crash burst.
502
-
503
- Related:
504
-
505
- - [macOS platform notes](/platforms/macos)
506
- - [Logging](/logging)
507
- - [Doctor](/gateway/doctor)
508
-
509
- ## Gateway exits during high memory use
510
-
511
- Use this when the Gateway disappears under load, the supervisor reports an OOM-style restart, or logs mention `critical memory pressure bundle written`.
512
-
513
- ```bash
514
- fengming gateway status --deep
515
- fengming logs --follow
516
- fengming gateway stability --bundle latest
517
- fengming gateway diagnostics export
518
- ```
519
-
520
- Look for:
521
-
522
- - `Reason: diagnostic.memory.pressure.critical` in the latest stability bundle.
523
- - `Memory pressure:` with `critical/rss_threshold`, `critical/heap_threshold`, or `critical/rss_growth`.
524
- - `V8 heap:` values near the heap limit.
525
- - `Largest session files:` entries such as `agents/<agent>/sessions/<session>.jsonl` or `sessions/<session>.jsonl`.
526
- - Linux cgroup memory counters when the gateway runs inside a container or memory-limited service.
527
-
528
- Common signatures:
529
-
530
- - `critical memory pressure bundle written` appears shortly before restart → FengMing captured a pre-OOM stability bundle. Inspect it with `fengming gateway stability --bundle latest`.
531
- - `memory pressure: level=critical ... memoryPressureSnapshot=disabled` appears in gateway logs → FengMing detected critical memory pressure, but the pre-OOM stability snapshot is off.
532
- - `Largest session files:` points at a very large redacted transcript path → reduce retained session history, inspect session growth, or move old transcripts out of the active store before restarting.
533
- - `V8 heap:` used bytes are close to the heap limit → lower prompt/session pressure, reduce concurrent work, or raise the Node heap limit only after confirming the workload is expected.
534
- - `Memory pressure: critical/rss_growth` → memory grew quickly inside one sampling window. Check the latest logs for a large import, runaway tool output, repeated retries, or a batch of queued agent work.
535
- - Critical memory pressure appears in logs but no bundle exists → this is the default. Set `diagnostics.memoryPressureSnapshot: true` to capture the pre-OOM stability bundle on future critical memory pressure events.
536
-
537
- The stability bundle is payload-free. It includes operational memory evidence and redacted relative file paths, not message text, webhook bodies, credentials, tokens, cookies, or raw session ids. Attach the diagnostics export to bug reports instead of copying raw logs.
538
-
539
- Related:
540
-
541
- - [Gateway health](/gateway/health)
542
- - [Diagnostics export](/gateway/diagnostics)
543
- - [Sessions](/cli/sessions)
544
-
545
- ## Gateway rejected invalid config
546
-
547
- Use this when Gateway startup fails with `Invalid config` or hot reload logs say
548
- it skipped an invalid edit.
549
-
550
- ```bash
551
- fengming logs --follow
552
- fengming config file
553
- fengming config validate
554
- fengming doctor
555
- ```
556
-
557
- Look for:
558
-
559
- - `Invalid config at ...`
560
- - `config reload skipped (invalid config): ...`
561
- - `Config write rejected: ...`
562
- - A timestamped `fengming.json.rejected.*` file beside the active config
563
- - A timestamped `fengming.json.clobbered.*` file if `doctor --fix` repaired a broken direct edit
564
- - FengMing keeps the latest 32 `.clobbered.*` files for each config path and rotates older ones
565
-
566
- <AccordionGroup>
567
- <Accordion title="What happened">
568
- - The config did not validate during startup, hot reload, or an FengMing-owned write.
569
- - Gateway startup fails closed instead of rewriting `fengming.json`.
570
- - Hot reload skips invalid external edits and keeps the current runtime config active.
571
- - FengMing-owned writes reject invalid/destructive payloads before commit and save `.rejected.*`.
572
- - `fengming doctor --fix` owns repair. It can remove non-JSON prefixes or restore the last-known-good copy while preserving the rejected payload as `.clobbered.*`.
573
- - When many repairs happen for one config path, FengMing rotates older `.clobbered.*` files so the newest repaired payload is still available.
574
-
575
- </Accordion>
576
- <Accordion title="Inspect and repair">
577
- ```bash
578
- CONFIG="$(fengming config file)"
579
- ls -lt "$CONFIG".clobbered.* "$CONFIG".rejected.* 2>/dev/null | head
580
- diff -u "$CONFIG" "$(ls -t "$CONFIG".clobbered.* 2>/dev/null | head -n 1)"
581
- fengming config validate
582
- fengming doctor
583
- ```
584
- </Accordion>
585
- <Accordion title="Common signatures">
586
- - `.clobbered.*` exists → doctor preserved a broken external edit while repairing the active config.
587
- - `.rejected.*` exists → an FengMing-owned config write failed schema or clobber checks before commit.
588
- - `Config write rejected:` → the write tried to drop required shape, shrink the file sharply, or persist invalid config.
589
- - `config reload skipped (invalid config):` → a direct edit failed validation and was ignored by the running Gateway.
590
- - `Invalid config at ...` → startup failed before Gateway services booted.
591
- - `missing-meta-vs-last-good`, `gateway-mode-missing-vs-last-good`, or `size-drop-vs-last-good:*` → an FengMing-owned write was rejected because it lost fields or size compared with the last-known-good backup.
592
- - `Config last-known-good promotion skipped` → the candidate contained redacted secret placeholders such as `***`.
593
-
594
- </Accordion>
595
- <Accordion title="Fix options">
596
- 1. Run `fengming doctor --fix` to let doctor repair prefixed/clobbered config or restore last-known-good.
597
- 2. Copy only the intended keys from `.clobbered.*` or `.rejected.*`, then apply them with `fengming config set` or `config.patch`.
598
- 3. Run `fengming config validate` before restarting.
599
- 4. If you edit by hand, keep the full JSON5 config, not just the partial object you wanted to change.
600
- </Accordion>
601
- </AccordionGroup>
602
-
603
- Related:
604
-
605
- - [Config](/cli/config)
606
- - [Configuration: hot reload](/gateway/configuration#config-hot-reload)
607
- - [Configuration: strict validation](/gateway/configuration#strict-validation)
608
- - [Doctor](/gateway/doctor)
609
-
610
- ## Gateway probe warnings
611
-
612
- Use this when `fengming gateway probe` reaches something, but still prints a warning block.
613
-
614
- ```bash
615
- fengming gateway probe
616
- fengming gateway probe --json
617
- fengming gateway probe --ssh user@gateway-host
618
- ```
619
-
620
- Look for:
621
-
622
- - `warnings[].code` and `primaryTargetId` in JSON output.
623
- - Whether the warning is about SSH fallback, multiple gateways, missing scopes, or unresolved auth refs.
624
-
625
- Common signatures:
626
-
627
- - `SSH tunnel failed to start; falling back to direct probes.` → SSH setup failed, but the command still tried direct configured/loopback targets.
628
- - `multiple reachable gateways detected` → more than one target answered. Usually this means an intentional multi-gateway setup or stale/duplicate listeners.
629
- - `Read-probe diagnostics are limited by gateway scopes (missing operator.read)` → connect worked, but detail RPC is scope-limited; pair device identity or use credentials with `operator.read`.
630
- - `Gateway accepted the WebSocket connection, but follow-up read diagnostics failed` → connect worked, but the full diagnostic RPC set timed out or failed. Treat this as a reachable Gateway with degraded diagnostics; compare `connect.ok` and `connect.rpcOk` in `--json` output.
631
- - `Capability: pairing-pending` or `gateway closed (1008): pairing required` → the gateway answered, but this client still needs pairing/approval before normal operator access.
632
- - unresolved `gateway.auth.*` / `gateway.remote.*` SecretRef warning text → auth material was unavailable in this command path for the failed target.
633
-
634
- Related:
635
-
636
- - [Gateway](/cli/gateway)
637
- - [Multiple gateways on the same host](/gateway#multiple-gateways-same-host)
638
- - [Remote access](/gateway/remote)
639
-
640
- ## Channel connected, messages not flowing
641
-
642
- If channel state is connected but message flow is dead, focus on policy, permissions, and channel specific delivery rules.
643
-
644
- ```bash
645
- fengming channels status --probe
646
- fengming pairing list --channel <channel> [--account <id>]
647
- fengming status --deep
648
- fengming logs --follow
649
- fengming config get channels
650
- ```
651
-
652
- Look for:
653
-
654
- - DM policy (`pairing`, `allowlist`, `open`, `disabled`).
655
- - Group allowlist and mention requirements.
656
- - Missing channel API permissions/scopes.
657
-
658
- Common signatures:
659
-
660
- - `mention required` → message ignored by group mention policy.
661
- - `pairing` / pending approval traces → sender is not approved.
662
- - `missing_scope`, `not_in_channel`, `Forbidden`, `401/403` → channel auth/permissions issue.
663
-
664
- Related:
665
-
666
- - [Channel troubleshooting](/channels/troubleshooting)
667
- - [Discord](/channels/discord)
668
- - [Telegram](/channels/telegram)
669
- - [WhatsApp](/channels/whatsapp)
670
-
671
- ## Cron and heartbeat delivery
672
-
673
- If cron or heartbeat did not run or did not deliver, verify scheduler state first, then delivery target.
674
-
675
- ```bash
676
- fengming cron status
677
- fengming cron list
678
- fengming cron runs --id <jobId> --limit 20
679
- fengming system heartbeat last
680
- fengming logs --follow
681
- ```
682
-
683
- Look for:
684
-
685
- - Cron enabled and next wake present.
686
- - Job run history status (`ok`, `skipped`, `error`).
687
- - Heartbeat skip reasons (`quiet-hours`, `requests-in-flight`, `cron-in-progress`, `lanes-busy`, `alerts-disabled`, `empty-heartbeat-file`, `no-tasks-due`).
688
-
689
- <AccordionGroup>
690
- <Accordion title="Common signatures">
691
- - `cron: scheduler disabled; jobs will not run automatically` → cron disabled.
692
- - `cron: timer tick failed` → scheduler tick failed; check file/log/runtime errors.
693
- - `heartbeat skipped` with `reason=quiet-hours` → outside active hours window.
694
- - `heartbeat skipped` with `reason=empty-heartbeat-file` → `HEARTBEAT.md` exists but only contains blank lines / markdown headers, so FengMing skips the model call.
695
- - `heartbeat skipped` with `reason=no-tasks-due` → `HEARTBEAT.md` contains a `tasks:` block, but none of the tasks are due on this tick.
696
- - `heartbeat: unknown accountId` → invalid account id for heartbeat delivery target.
697
- - `heartbeat skipped` with `reason=dm-blocked` → heartbeat target resolved to a DM-style destination while `agents.defaults.heartbeat.directPolicy` (or per-agent override) is set to `block`.
698
-
699
- </Accordion>
700
- </AccordionGroup>
701
-
702
- Related:
703
-
704
- - [Heartbeat](/gateway/heartbeat)
705
- - [Scheduled tasks](/automation/cron-jobs)
706
- - [Scheduled tasks: troubleshooting](/automation/cron-jobs#troubleshooting)
707
-
708
- ## Node paired, tool fails
709
-
710
- If a node is paired but tools fail, isolate foreground, permission, and approval state.
711
-
712
- ```bash
713
- fengming nodes status
714
- fengming nodes describe --node <idOrNameOrIp>
715
- fengming approvals get --node <idOrNameOrIp>
716
- fengming logs --follow
717
- fengming status
718
- ```
719
-
720
- Look for:
721
-
722
- - Node online with expected capabilities.
723
- - OS permission grants for camera/mic/location/screen.
724
- - Exec approvals and allowlist state.
725
-
726
- Common signatures:
727
-
728
- - `NODE_BACKGROUND_UNAVAILABLE` → node app must be in foreground.
729
- - `*_PERMISSION_REQUIRED` / `LOCATION_PERMISSION_REQUIRED` → missing OS permission.
730
- - `SYSTEM_RUN_DENIED: approval required` → exec approval pending.
731
- - `SYSTEM_RUN_DENIED: allowlist miss` → command blocked by allowlist.
732
-
733
- Related:
734
-
735
- - [Exec approvals](/tools/exec-approvals)
736
- - [Node troubleshooting](/nodes/troubleshooting)
737
- - [Nodes](/nodes/index)
738
-
739
- ## Browser tool fails
740
-
741
- Use this when browser tool actions fail even though the gateway itself is healthy.
742
-
743
- ```bash
744
- fengming browser status
745
- fengming browser start --browser-profile fengming
746
- fengming browser profiles
747
- fengming logs --follow
748
- fengming doctor
749
- ```
750
-
751
- Look for:
752
-
753
- - Whether `plugins.allow` is set and includes `browser`.
754
- - Valid browser executable path.
755
- - CDP profile reachability.
756
- - Local Chrome availability for `existing-session` / `user` profiles.
757
-
758
- <AccordionGroup>
759
- <Accordion title="Plugin / executable signatures">
760
- - `unknown command "browser"` or `unknown command 'browser'` → the bundled browser plugin is excluded by `plugins.allow`.
761
- - browser tool missing / unavailable while `browser.enabled=true` → `plugins.allow` excludes `browser`, so the plugin never loaded.
762
- - `Failed to start Chrome CDP on port` → browser process failed to launch.
763
- - `browser.executablePath not found` → configured path is invalid.
764
- - `browser.cdpUrl must be http(s) or ws(s)` → the configured CDP URL uses an unsupported scheme such as `file:` or `ftp:`.
765
- - `browser.cdpUrl has invalid port` → the configured CDP URL has a bad or out-of-range port.
766
- - `Playwright is not available in this gateway build; '<feature>' is unsupported.` → the current gateway install lacks the core browser runtime dependency; reinstall or update FengMing, then restart the gateway. ARIA snapshots and basic page screenshots can still work, but navigation, AI snapshots, CSS-selector element screenshots, and PDF export stay unavailable.
767
-
768
- </Accordion>
769
- <Accordion title="Chrome MCP / existing-session signatures">
770
- - `Could not find DevToolsActivePort for chrome` → Chrome MCP existing-session could not attach to the selected browser data dir yet. Open the browser inspect page, enable remote debugging, keep the browser open, approve the first attach prompt, then retry. If signed-in state is not required, prefer the managed `fengming` profile.
771
- - `No Chrome tabs found for profile="user"` → the Chrome MCP attach profile has no open local Chrome tabs.
772
- - `Remote CDP for profile "<name>" is not reachable` → the configured remote CDP endpoint is not reachable from the gateway host.
773
- - `Browser attachOnly is enabled ... not reachable` or `Browser attachOnly is enabled and CDP websocket ... is not reachable` → attach-only profile has no reachable target, or the HTTP endpoint answered but the CDP WebSocket still could not be opened.
774
-
775
- </Accordion>
776
- <Accordion title="Element / screenshot / upload signatures">
777
- - `fullPage is not supported for element screenshots` → screenshot request mixed `--full-page` with `--ref` or `--element`.
778
- - `element screenshots are not supported for existing-session profiles; use ref from snapshot.` → Chrome MCP / `existing-session` screenshot calls must use page capture or a snapshot `--ref`, not CSS `--element`.
779
- - `existing-session file uploads do not support element selectors; use ref/inputRef.` → Chrome MCP upload hooks need snapshot refs, not CSS selectors.
780
- - `existing-session file uploads currently support one file at a time.` → send one upload per call on Chrome MCP profiles.
781
- - `existing-session dialog handling does not support timeoutMs.` → dialog hooks on Chrome MCP profiles do not support timeout overrides.
782
- - `existing-session type does not support timeoutMs overrides.` → omit `timeoutMs` for `act:type` on `profile="user"` / Chrome MCP existing-session profiles, or use a managed/CDP browser profile when a custom timeout is required.
783
- - `existing-session evaluate does not support timeoutMs overrides.` → omit `timeoutMs` for `act:evaluate` on `profile="user"` / Chrome MCP existing-session profiles, or use a managed/CDP browser profile when a custom timeout is required.
784
- - `response body is not supported for existing-session profiles yet.` → `responsebody` still requires a managed browser or raw CDP profile.
785
- - stale viewport / dark-mode / locale / offline overrides on attach-only or remote CDP profiles → run `fengming browser stop --browser-profile <name>` to close the active control session and release Playwright/CDP emulation state without restarting the whole gateway.
786
-
787
- </Accordion>
788
- </AccordionGroup>
789
-
790
- Related:
791
-
792
- - [Browser (FengMing-managed)](/tools/browser)
793
- - [Browser troubleshooting](/tools/browser-linux-troubleshooting)
794
-
795
- ## If you upgraded and something suddenly broke
796
-
797
- Most post-upgrade breakage is config drift or stricter defaults now being enforced.
798
-
799
- <AccordionGroup>
800
- <Accordion title="1. Auth and URL override behavior changed">
801
- ```bash
802
- fengming gateway status
803
- fengming config get gateway.mode
804
- fengming config get gateway.remote.url
805
- fengming config get gateway.auth.mode
806
- ```
807
-
808
- What to check:
809
-
810
- - If `gateway.mode=remote`, CLI calls may be targeting remote while your local service is fine.
811
- - Explicit `--url` calls do not fall back to stored credentials.
812
-
813
- Common signatures:
814
-
815
- - `gateway connect failed:` → wrong URL target.
816
- - `unauthorized` → endpoint reachable but wrong auth.
817
-
818
- </Accordion>
819
- <Accordion title="2. Bind and auth guardrails are stricter">
820
- ```bash
821
- fengming config get gateway.bind
822
- fengming config get gateway.auth.mode
823
- fengming config get gateway.auth.token
824
- fengming gateway status
825
- fengming logs --follow
826
- ```
827
-
828
- What to check:
829
-
830
- - Non-loopback binds (`lan`, `tailnet`, `custom`) need a valid gateway auth path: shared token/password auth, or a correctly configured non-loopback `trusted-proxy` deployment.
831
- - Old keys like `gateway.token` do not replace `gateway.auth.token`.
832
-
833
- Common signatures:
834
-
835
- - `refusing to bind gateway ... without auth` → non-loopback bind without a valid gateway auth path.
836
- - `Connectivity probe: failed` while runtime is running → gateway alive but inaccessible with current auth/url.
837
-
838
- </Accordion>
839
- <Accordion title="3. Pairing and device identity state changed">
840
- ```bash
841
- fengming devices list
842
- fengming pairing list --channel <channel> [--account <id>]
843
- fengming logs --follow
844
- fengming doctor
845
- ```
846
-
847
- What to check:
848
-
849
- - Pending device approvals for dashboard/nodes.
850
- - Pending DM pairing approvals after policy or identity changes.
851
-
852
- Common signatures:
853
-
854
- - `device identity required` → device auth not satisfied.
855
- - `pairing required` → sender/device must be approved.
856
-
857
- </Accordion>
858
- </AccordionGroup>
859
-
860
- If the service config and runtime still disagree after checks, reinstall service metadata from the same profile/state directory:
861
-
862
- ```bash
863
- fengming gateway install --force
864
- fengming gateway restart
865
- ```
866
-
867
- Related:
868
-
869
- - [Authentication](/gateway/authentication)
870
- - [Background exec and process tool](/gateway/background-process)
871
- - [Gateway-owned pairing](/gateway/pairing)
872
-
873
- ## Related
874
-
875
- - [Doctor](/gateway/doctor)
876
- - [FAQ](/help/faq)
877
- - [Gateway runbook](/gateway)