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,447 +0,0 @@
1
- ---
2
- summary: "How the installer scripts work (install.sh, install-cli.sh, install.ps1), flags, and automation"
3
- read_when:
4
- - You want to understand `fengming.ai/install.sh`
5
- - You want to automate installs (CI / headless)
6
- - You want to install from a GitHub checkout
7
- title: "Installer internals"
8
- ---
9
-
10
- FengMing ships three installer scripts, served from `fengming.ai`.
11
-
12
- | Script | Platform | What it does |
13
- | ---------------------------------- | -------------------- | -------------------------------------------------------------------------------------------------------------- |
14
- | [`install.sh`](#installsh) | macOS / Linux / WSL | Installs Node if needed, installs FengMing via npm (default) or git, and can run onboarding. |
15
- | [`install-cli.sh`](#install-clish) | macOS / Linux / WSL | Installs Node + FengMing into a local prefix (`~/.fengming`) with npm or git checkout modes. No root required. |
16
- | [`install.ps1`](#installps1) | Windows (PowerShell) | Installs Node if needed, installs FengMing via npm (default) or git, and can run onboarding. |
17
-
18
- ## Quick commands
19
-
20
- <Tabs>
21
- <Tab title="install.sh">
22
- ```bash
23
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash
24
- ```
25
-
26
- ```bash
27
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --help
28
- ```
29
-
30
- </Tab>
31
- <Tab title="install-cli.sh">
32
- ```bash
33
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash
34
- ```
35
-
36
- ```bash
37
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --help
38
- ```
39
-
40
- </Tab>
41
- <Tab title="install.ps1">
42
- ```powershell
43
- iwr -useb https://fengming.ai/install.ps1 | iex
44
- ```
45
-
46
- ```powershell
47
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -Tag beta -NoOnboard -DryRun
48
- ```
49
-
50
- </Tab>
51
- </Tabs>
52
-
53
- <Note>
54
- If install succeeds but `fengming` is not found in a new terminal, see [Node.js troubleshooting](/install/node#troubleshooting).
55
- </Note>
56
-
57
- ---
58
-
59
- <a id="installsh"></a>
60
-
61
- ## install.sh
62
-
63
- <Tip>
64
- Recommended for most interactive installs on macOS/Linux/WSL.
65
- </Tip>
66
-
67
- ### Flow (install.sh)
68
-
69
- <Steps>
70
- <Step title="Detect OS">
71
- Supports macOS and Linux (including WSL).
72
- </Step>
73
- <Step title="Ensure Node.js 24 by default">
74
- Checks Node version and installs Node 24 if needed (Homebrew on macOS, NodeSource setup scripts on Linux apt/dnf/yum). On macOS, Homebrew is installed only when the installer needs it for Node or Git. FengMing still supports Node 22 LTS, currently `22.19+`, for compatibility.
75
- On Alpine/musl Linux, the installer uses apk packages instead of NodeSource; the configured Alpine repositories must provide Node `22.19+` (Alpine 3.21 or newer at the time of writing).
76
- </Step>
77
- <Step title="Ensure Git">
78
- Installs Git if missing using the detected package manager, including Homebrew on macOS and apk on Alpine.
79
- </Step>
80
- <Step title="Install FengMing">
81
- - `npm` method (default): global npm install
82
- - `git` method: clone/update repo, install deps with pnpm, build, then install wrapper at `~/.local/bin/fengming`
83
-
84
- </Step>
85
- <Step title="Post-install tasks">
86
- - Refreshes a loaded gateway service best-effort (`fengming gateway install --force`, then restart)
87
- - Runs `fengming doctor --non-interactive` on upgrades and git installs (best effort)
88
- - Attempts onboarding when appropriate (TTY available, onboarding not disabled, and bootstrap/config checks pass)
89
-
90
- </Step>
91
- </Steps>
92
-
93
- ### Source checkout detection
94
-
95
- If run inside an FengMing checkout (`package.json` + `pnpm-workspace.yaml`), the script offers:
96
-
97
- - use checkout (`git`), or
98
- - use global install (`npm`)
99
-
100
- If no TTY is available and no install method is set, it defaults to `npm` and warns.
101
-
102
- The script exits with code `2` for invalid method selection or invalid `--install-method` values.
103
-
104
- ### Examples (install.sh)
105
-
106
- <Tabs>
107
- <Tab title="Default">
108
- ```bash
109
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash
110
- ```
111
- </Tab>
112
- <Tab title="Skip onboarding">
113
- ```bash
114
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --no-onboard
115
- ```
116
- </Tab>
117
- <Tab title="Git install">
118
- ```bash
119
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --install-method git
120
- ```
121
- </Tab>
122
- <Tab title="GitHub main checkout">
123
- ```bash
124
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --install-method git --version main
125
- ```
126
- </Tab>
127
- <Tab title="Dry run">
128
- ```bash
129
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --dry-run
130
- ```
131
- </Tab>
132
- </Tabs>
133
-
134
- <AccordionGroup>
135
- <Accordion title="Flags reference">
136
-
137
- | Flag | Description |
138
- | ------------------------------------- | ---------------------------------------------------------- |
139
- | `--install-method npm\|git` | Choose install method (default: `npm`). Alias: `--method` |
140
- | `--npm` | Shortcut for npm method |
141
- | `--git` | Shortcut for git method. Alias: `--github` |
142
- | `--version <version\|dist-tag\|spec>` | npm version, dist-tag, or package spec (default: `latest`) |
143
- | `--beta` | Use beta dist-tag if available, else fallback to `latest` |
144
- | `--git-dir <path>` | Checkout directory (default: `~/fengming`). Alias: `--dir` |
145
- | `--no-git-update` | Skip `git pull` for existing checkout |
146
- | `--no-prompt` | Disable prompts |
147
- | `--no-onboard` | Skip onboarding |
148
- | `--onboard` | Enable onboarding |
149
- | `--dry-run` | Print actions without applying changes |
150
- | `--verbose` | Enable debug output (`set -x`, npm notice-level logs) |
151
- | `--help` | Show usage (`-h`) |
152
-
153
- </Accordion>
154
-
155
- <Accordion title="Environment variables reference">
156
-
157
- | Variable | Description |
158
- | ------------------------------------------------- | ------------------------------------------------------------------ |
159
- | `FENGMING_INSTALL_METHOD=git\|npm` | Install method |
160
- | `FENGMING_VERSION=latest\|next\|<semver>\|<spec>` | npm version, dist-tag, or package spec |
161
- | `FENGMING_BETA=0\|1` | Use beta if available |
162
- | `FENGMING_HOME=<path>` | Base directory for FengMing state and default git/onboarding paths |
163
- | `FENGMING_GIT_DIR=<path>` | Checkout directory |
164
- | `FENGMING_GIT_UPDATE=0\|1` | Toggle git updates |
165
- | `FENGMING_NO_PROMPT=1` | Disable prompts |
166
- | `FENGMING_NO_ONBOARD=1` | Skip onboarding |
167
- | `FENGMING_DRY_RUN=1` | Dry run mode |
168
- | `FENGMING_VERBOSE=1` | Debug mode |
169
- | `FENGMING_NPM_LOGLEVEL=error\|warn\|notice` | npm log level |
170
-
171
- </Accordion>
172
- </AccordionGroup>
173
-
174
- ---
175
-
176
- <a id="install-clish"></a>
177
-
178
- ## install-cli.sh
179
-
180
- <Info>
181
- Designed for environments where you want everything under a local prefix
182
- (default `~/.fengming`) and no system Node dependency. Supports npm installs
183
- by default, plus git-checkout installs under the same prefix flow.
184
- </Info>
185
-
186
- ### Flow (install-cli.sh)
187
-
188
- <Steps>
189
- <Step title="Install local Node runtime">
190
- Downloads a pinned supported Node LTS tarball (the version is embedded in the script and updated independently) to `<prefix>/tools/node-v<version>` and verifies SHA-256.
191
- On Alpine/musl Linux, where Node does not publish compatible tarballs for the pinned runtime, installs `nodejs` and `npm` with `apk` and links that runtime into the prefix wrapper path. The Alpine repositories must provide Node `22.19+`; use Alpine 3.21 or newer if older repositories only provide Node 20 or 21.
192
- </Step>
193
- <Step title="Ensure Git">
194
- If Git is missing, attempts install via apt/dnf/yum/apk on Linux or Homebrew on macOS.
195
- </Step>
196
- <Step title="Install FengMing under prefix">
197
- - `npm` method (default): installs under the prefix with npm, then writes wrapper to `<prefix>/bin/fengming`
198
- - `git` method: clones/updates a checkout (default `~/fengming`) and still writes the wrapper to `<prefix>/bin/fengming`
199
-
200
- </Step>
201
- <Step title="Refresh loaded gateway service">
202
- If a gateway service is already loaded from that same prefix, the script runs
203
- `fengming gateway install --force`, then `fengming gateway restart`, and
204
- probes gateway health best-effort.
205
- </Step>
206
- </Steps>
207
-
208
- ### Examples (install-cli.sh)
209
-
210
- <Tabs>
211
- <Tab title="Default">
212
- ```bash
213
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash
214
- ```
215
- </Tab>
216
- <Tab title="Custom prefix + version">
217
- ```bash
218
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --prefix /opt/fengming --version latest
219
- ```
220
- </Tab>
221
- <Tab title="Git install">
222
- ```bash
223
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --install-method git --git-dir ~/fengming
224
- ```
225
- </Tab>
226
- <Tab title="Automation JSON output">
227
- ```bash
228
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --json --prefix /opt/fengming
229
- ```
230
- </Tab>
231
- <Tab title="Run onboarding">
232
- ```bash
233
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --onboard
234
- ```
235
- </Tab>
236
- </Tabs>
237
-
238
- <AccordionGroup>
239
- <Accordion title="Flags reference">
240
-
241
- | Flag | Description |
242
- | --------------------------- | ------------------------------------------------------------------------------- |
243
- | `--prefix <path>` | Install prefix (default: `~/.fengming`) |
244
- | `--install-method npm\|git` | Choose install method (default: `npm`). Alias: `--method` |
245
- | `--npm` | Shortcut for npm method |
246
- | `--git`, `--github` | Shortcut for git method |
247
- | `--git-dir <path>` | Git checkout directory (default: `~/fengming`). Alias: `--dir` |
248
- | `--version <ver>` | FengMing version or dist-tag (default: `latest`) |
249
- | `--node-version <ver>` | Node version (default: `22.22.0`) |
250
- | `--json` | Emit NDJSON events |
251
- | `--onboard` | Run `fengming onboard` after install |
252
- | `--no-onboard` | Skip onboarding (default) |
253
- | `--set-npm-prefix` | On Linux, force npm prefix to `~/.npm-global` if current prefix is not writable |
254
- | `--help` | Show usage (`-h`) |
255
-
256
- </Accordion>
257
-
258
- <Accordion title="Environment variables reference">
259
-
260
- | Variable | Description |
261
- | ------------------------------------------- | ------------------------------------------------------------------ |
262
- | `FENGMING_PREFIX=<path>` | Install prefix |
263
- | `FENGMING_INSTALL_METHOD=git\|npm` | Install method |
264
- | `FENGMING_VERSION=<ver>` | FengMing version or dist-tag |
265
- | `FENGMING_NODE_VERSION=<ver>` | Node version |
266
- | `FENGMING_HOME=<path>` | Base directory for FengMing state and default git/onboarding paths |
267
- | `FENGMING_GIT_DIR=<path>` | Git checkout directory for git installs |
268
- | `FENGMING_GIT_UPDATE=0\|1` | Toggle git updates for existing checkouts |
269
- | `FENGMING_NO_ONBOARD=1` | Skip onboarding |
270
- | `FENGMING_NPM_LOGLEVEL=error\|warn\|notice` | npm log level |
271
-
272
- </Accordion>
273
- </AccordionGroup>
274
-
275
- ---
276
-
277
- <a id="installps1"></a>
278
-
279
- ## install.ps1
280
-
281
- ### Flow (install.ps1)
282
-
283
- <Steps>
284
- <Step title="Ensure PowerShell + Windows environment">
285
- Requires PowerShell 5+.
286
- </Step>
287
- <Step title="Ensure Node.js 24 by default">
288
- If missing, attempts install via winget, then Chocolatey, then Scoop. If no package manager is available, the script downloads the official Node.js Windows zip into `%LOCALAPPDATA%\FengMing\deps\portable-node` and adds it to the current process and user PATH. Node 22 LTS, currently `22.19+`, remains supported for compatibility.
289
- </Step>
290
- <Step title="Install FengMing">
291
- - `npm` method (default): global npm install using selected `-Tag`, launched from a writable installer temp directory so shells opened in protected folders such as `C:\` still work
292
- - `git` method: clone/update repo, install/build with pnpm, and install wrapper at `%USERPROFILE%\.local\bin\fengming.cmd`. If Git is missing, the script bootstraps user-local MinGit under `%LOCALAPPDATA%\FengMing\deps\portable-git` and adds it to the current process and user PATH.
293
-
294
- </Step>
295
- <Step title="Post-install tasks">
296
- - Adds needed bin directory to user PATH when possible
297
- - Refreshes a loaded gateway service best-effort (`fengming gateway install --force`, then restart)
298
- - Runs `fengming doctor --non-interactive` on upgrades and git installs (best effort)
299
-
300
- </Step>
301
- <Step title="Handle failures">
302
- `iwr ... | iex` and scriptblock installs report a terminating error without closing the current PowerShell session. Direct `powershell -File` / `pwsh -File` installs still exit non-zero for automation.
303
- </Step>
304
- </Steps>
305
-
306
- ### Examples (install.ps1)
307
-
308
- <Tabs>
309
- <Tab title="Default">
310
- ```powershell
311
- iwr -useb https://fengming.ai/install.ps1 | iex
312
- ```
313
- </Tab>
314
- <Tab title="Git install">
315
- ```powershell
316
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -InstallMethod git
317
- ```
318
- </Tab>
319
- <Tab title="GitHub main checkout">
320
- ```powershell
321
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -InstallMethod git -Tag main
322
- ```
323
- </Tab>
324
- <Tab title="Custom git directory">
325
- ```powershell
326
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -InstallMethod git -GitDir "C:\fengming"
327
- ```
328
- </Tab>
329
- <Tab title="Dry run">
330
- ```powershell
331
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -DryRun
332
- ```
333
- </Tab>
334
- <Tab title="Debug trace">
335
- ```powershell
336
- # install.ps1 has no dedicated -Verbose flag yet.
337
- Set-PSDebug -Trace 1
338
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -NoOnboard
339
- Set-PSDebug -Trace 0
340
- ```
341
- </Tab>
342
- </Tabs>
343
-
344
- <AccordionGroup>
345
- <Accordion title="Flags reference">
346
-
347
- | Flag | Description |
348
- | --------------------------- | ---------------------------------------------------------- |
349
- | `-InstallMethod npm\|git` | Install method (default: `npm`) |
350
- | `-Tag <tag\|version\|spec>` | npm dist-tag, version, or package spec (default: `latest`) |
351
- | `-GitDir <path>` | Checkout directory (default: `%USERPROFILE%\fengming`) |
352
- | `-NoOnboard` | Skip onboarding |
353
- | `-NoGitUpdate` | Skip `git pull` |
354
- | `-DryRun` | Print actions only |
355
-
356
- </Accordion>
357
-
358
- <Accordion title="Environment variables reference">
359
-
360
- | Variable | Description |
361
- | ---------------------------------- | ------------------ |
362
- | `FENGMING_INSTALL_METHOD=git\|npm` | Install method |
363
- | `FENGMING_GIT_DIR=<path>` | Checkout directory |
364
- | `FENGMING_NO_ONBOARD=1` | Skip onboarding |
365
- | `FENGMING_GIT_UPDATE=0` | Disable git pull |
366
- | `FENGMING_DRY_RUN=1` | Dry run mode |
367
-
368
- </Accordion>
369
- </AccordionGroup>
370
-
371
- <Note>
372
- If `-InstallMethod git` is used and Git is missing, the script tries a user-local MinGit bootstrap before printing the Git for Windows link.
373
- </Note>
374
-
375
- ---
376
-
377
- ## CI and automation
378
-
379
- Use non-interactive flags/env vars for predictable runs.
380
-
381
- <Tabs>
382
- <Tab title="install.sh (non-interactive npm)">
383
- ```bash
384
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash -s -- --no-prompt --no-onboard
385
- ```
386
- </Tab>
387
- <Tab title="install.sh (non-interactive git)">
388
- ```bash
389
- FENGMING_INSTALL_METHOD=git FENGMING_NO_PROMPT=1 \
390
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install.sh | bash
391
- ```
392
- </Tab>
393
- <Tab title="install-cli.sh (JSON)">
394
- ```bash
395
- curl -fsSL --proto '=https' --tlsv1.2 https://fengming.ai/install-cli.sh | bash -s -- --json --prefix /opt/fengming
396
- ```
397
- </Tab>
398
- <Tab title="install.ps1 (skip onboarding)">
399
- ```powershell
400
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -NoOnboard
401
- ```
402
- </Tab>
403
- </Tabs>
404
-
405
- ---
406
-
407
- ## Troubleshooting
408
-
409
- <AccordionGroup>
410
- <Accordion title="Why is Git required?">
411
- Git is required for `git` install method. For `npm` installs, Git is still checked/installed to avoid `spawn git ENOENT` failures when dependencies use git URLs.
412
- </Accordion>
413
-
414
- <Accordion title="Why does npm hit EACCES on Linux?">
415
- Some Linux setups point npm global prefix to root-owned paths. `install.sh` can switch prefix to `~/.npm-global` and append PATH exports to shell rc files (when those files exist).
416
- </Accordion>
417
-
418
- <Accordion title='Windows: "npm error spawn git / ENOENT"'>
419
- Rerun the installer so it can bootstrap user-local MinGit, or install Git for Windows and reopen PowerShell.
420
- </Accordion>
421
-
422
- <Accordion title='Windows: "fengming is not recognized"'>
423
- Run `npm config get prefix` and add that directory to your user PATH (no `\bin` suffix needed on Windows), then reopen PowerShell.
424
- </Accordion>
425
-
426
- <Accordion title="Windows: how to get verbose installer output">
427
- `install.ps1` does not currently expose a `-Verbose` switch.
428
- Use PowerShell tracing for script-level diagnostics:
429
-
430
- ```powershell
431
- Set-PSDebug -Trace 1
432
- & ([scriptblock]::Create((iwr -useb https://fengming.ai/install.ps1))) -NoOnboard
433
- Set-PSDebug -Trace 0
434
- ```
435
-
436
- </Accordion>
437
-
438
- <Accordion title="fengming not found after install">
439
- Usually a PATH issue. See [Node.js troubleshooting](/install/node#troubleshooting).
440
- </Accordion>
441
- </AccordionGroup>
442
-
443
- ## Related
444
-
445
- - [Install overview](/install)
446
- - [Updating](/install/updating)
447
- - [Uninstall](/install/uninstall)
@@ -1,196 +0,0 @@
1
- ---
2
- summary: "Deploy FengMing Gateway to a Kubernetes cluster with Kustomize"
3
- read_when:
4
- - You want to run FengMing on a Kubernetes cluster
5
- - You want to test FengMing in a Kubernetes environment
6
- title: "Kubernetes"
7
- ---
8
-
9
- A minimal starting point for running FengMing on Kubernetes — not a production-ready deployment. It covers the core resources and is meant to be adapted to your environment.
10
-
11
- ## Why not Helm?
12
-
13
- FengMing is a single container with some config files. The interesting customization is in agent content (markdown files, skills, config overrides), not infrastructure templating. Kustomize handles overlays without the overhead of a Helm chart. If your deployment grows more complex, a Helm chart can be layered on top of these manifests.
14
-
15
- ## What you need
16
-
17
- - A running Kubernetes cluster (AKS, EKS, GKE, k3s, kind, OpenShift, etc.)
18
- - `kubectl` connected to your cluster
19
- - An API key for at least one model provider
20
-
21
- ## Quick start
22
-
23
- ```bash
24
- # Replace with your provider: ANTHROPIC, GEMINI, OPENAI, or OPENROUTER
25
- export <PROVIDER>_API_KEY="..."
26
- ./scripts/k8s/deploy.sh
27
-
28
- kubectl port-forward svc/fengming 18789:18789 -n fengming
29
- open http://localhost:18789
30
- ```
31
-
32
- Retrieve the configured shared secret for the Control UI. This deploy script
33
- creates token auth by default:
34
-
35
- ```bash
36
- kubectl get secret fengming-secrets -n fengming -o jsonpath='{.data.FENGMING_GATEWAY_TOKEN}' | base64 -d
37
- ```
38
-
39
- For local debugging, `./scripts/k8s/deploy.sh --show-token` prints the token after deploy.
40
-
41
- ## Local testing with Kind
42
-
43
- If you don't have a cluster, create one locally with [Kind](https://kind.sigs.k8s.io/):
44
-
45
- ```bash
46
- ./scripts/k8s/create-kind.sh # auto-detects docker or podman
47
- ./scripts/k8s/create-kind.sh --delete # tear down
48
- ```
49
-
50
- Then deploy as usual with `./scripts/k8s/deploy.sh`.
51
-
52
- ## Step by step
53
-
54
- ### 1) Deploy
55
-
56
- **Option A** — API key in environment (one step):
57
-
58
- ```bash
59
- # Replace with your provider: ANTHROPIC, GEMINI, OPENAI, or OPENROUTER
60
- export <PROVIDER>_API_KEY="..."
61
- ./scripts/k8s/deploy.sh
62
- ```
63
-
64
- The script creates a Kubernetes Secret with the API key and an auto-generated gateway token, then deploys. If the Secret already exists, it preserves the current gateway token and any provider keys not being changed.
65
-
66
- **Option B** — create the secret separately:
67
-
68
- ```bash
69
- export <PROVIDER>_API_KEY="..."
70
- ./scripts/k8s/deploy.sh --create-secret
71
- ./scripts/k8s/deploy.sh
72
- ```
73
-
74
- Use `--show-token` with either command if you want the token printed to stdout for local testing.
75
-
76
- ### 2) Access the gateway
77
-
78
- ```bash
79
- kubectl port-forward svc/fengming 18789:18789 -n fengming
80
- open http://localhost:18789
81
- ```
82
-
83
- ## What gets deployed
84
-
85
- ```
86
- Namespace: fengming (configurable via FENGMING_NAMESPACE)
87
- ├── Deployment/fengming # Single pod, init container + gateway
88
- ├── Service/fengming # ClusterIP on port 18789
89
- ├── PersistentVolumeClaim # 10Gi for agent state and config
90
- ├── ConfigMap/fengming-config # fengming.json + AGENTS.md
91
- └── Secret/fengming-secrets # Gateway token + API keys
92
- ```
93
-
94
- ## Customization
95
-
96
- ### Agent instructions
97
-
98
- Edit the `AGENTS.md` in `scripts/k8s/manifests/configmap.yaml` and redeploy:
99
-
100
- ```bash
101
- ./scripts/k8s/deploy.sh
102
- ```
103
-
104
- ### Gateway config
105
-
106
- Edit `fengming.json` in `scripts/k8s/manifests/configmap.yaml`. See [Gateway configuration](/gateway/configuration) for the full reference.
107
-
108
- ### Add providers
109
-
110
- Re-run with additional keys exported:
111
-
112
- ```bash
113
- export ANTHROPIC_API_KEY="..."
114
- export OPENAI_API_KEY="..."
115
- ./scripts/k8s/deploy.sh --create-secret
116
- ./scripts/k8s/deploy.sh
117
- ```
118
-
119
- Existing provider keys stay in the Secret unless you overwrite them.
120
-
121
- Or patch the Secret directly:
122
-
123
- ```bash
124
- kubectl patch secret fengming-secrets -n fengming \
125
- -p '{"stringData":{"<PROVIDER>_API_KEY":"..."}}'
126
- kubectl rollout restart deployment/fengming -n fengming
127
- ```
128
-
129
- ### Custom namespace
130
-
131
- ```bash
132
- FENGMING_NAMESPACE=my-namespace ./scripts/k8s/deploy.sh
133
- ```
134
-
135
- ### Custom image
136
-
137
- Edit the `image` field in `scripts/k8s/manifests/deployment.yaml`:
138
-
139
- ```yaml
140
- image: ghcr.io/fengming/fengming:latest # or pin to a specific version from https://github.com/fengming/fengming/releases
141
- ```
142
-
143
- ### Expose beyond port-forward
144
-
145
- The default manifests bind the gateway to loopback inside the pod. That works with `kubectl port-forward`, but it does not work with a Kubernetes `Service` or Ingress path that needs to reach the pod IP.
146
-
147
- If you want to expose the gateway through an Ingress or load balancer:
148
-
149
- - Change the gateway bind in `scripts/k8s/manifests/configmap.yaml` from `loopback` to a non-loopback bind that matches your deployment model
150
- - Keep gateway auth enabled and use a proper TLS-terminated entrypoint
151
- - Configure the Control UI for remote access using the supported web security model (for example HTTPS/Tailscale Serve and explicit allowed origins when needed)
152
-
153
- ## Re-deploy
154
-
155
- ```bash
156
- ./scripts/k8s/deploy.sh
157
- ```
158
-
159
- This applies all manifests and restarts the pod to pick up any config or secret changes.
160
-
161
- ## Teardown
162
-
163
- ```bash
164
- ./scripts/k8s/deploy.sh --delete
165
- ```
166
-
167
- This deletes the namespace and all resources in it, including the PVC.
168
-
169
- ## Architecture notes
170
-
171
- - The gateway binds to loopback inside the pod by default, so the included setup is for `kubectl port-forward`
172
- - No cluster-scoped resources — everything lives in a single namespace
173
- - Security: `readOnlyRootFilesystem`, `drop: ALL` capabilities, non-root user (UID 1000)
174
- - The default config keeps the Control UI on the safer local-access path: loopback bind plus `kubectl port-forward` to `http://127.0.0.1:18789`
175
- - If you move beyond localhost access, use the supported remote model: HTTPS/Tailscale plus the appropriate gateway bind and Control UI origin settings
176
- - Secrets are generated in a temp directory and applied directly to the cluster — no secret material is written to the repo checkout
177
-
178
- ## File structure
179
-
180
- ```
181
- scripts/k8s/
182
- ├── deploy.sh # Creates namespace + secret, deploys via kustomize
183
- ├── create-kind.sh # Local Kind cluster (auto-detects docker/podman)
184
- └── manifests/
185
- ├── kustomization.yaml # Kustomize base
186
- ├── configmap.yaml # fengming.json + AGENTS.md
187
- ├── deployment.yaml # Pod spec with security hardening
188
- ├── pvc.yaml # 10Gi persistent storage
189
- └── service.yaml # ClusterIP on 18789
190
- ```
191
-
192
- ## Related
193
-
194
- - [Docker](/install/docker)
195
- - [Docker VM runtime](/install/docker-vm-runtime)
196
- - [Install overview](/install)