MoonBit是一个新型的编程语言
MoonBit 是一个用于云和边缘计算的 WebAssembly 端到端编程语言工具链。无需安装即可在 https://try.moonbitlang.cn 上使用 IDE 环境;它也不依赖任何服务器。
我的理解,MoonBit是一个新型的编程语言,同时它还是一套编程工具和解决方案。
moon-pilot是智能代码编写工具
MoonBit 包含MoonBit Toolchain工具链,MoonBit Toolchain里有moon-pilot,据介绍:moon-pilot在你的终端中直接释放 MoonBit 语言的原始力量。并行重构你的代码。将数小时的工作流程转变为一个单一的命令。你的工具。你的工作流程。你的代码库,以思想的速度进化。
我的理解,moon-pilot就是一个代码智能体(Coding Agent),也就是一个可以用自然语言写代码的工具。
首先安装VSCode
具体安装方法参考:Ubuntu24.04安装VSCode-CSDN博客
安装MoonBit和工具链相关
在VSCode插件中查找MoonBit插件,安装

安装moonbit toolchain
安装完Moonbit Language插件后,就可以安装工具链,在VSCode的搜索框直接输入
> moonbit:install moonbit toolchain
注意,大于号也要键入:

最后安装完成提示
moonbit was installed successfully to ~/.moon
To verify the downloaded binaries, check https://www.moonbitlang.com/download#verifying-binaries for instructions.
To know how to add shell completions, run 'moon shell-completion --help'
Added "~/.moon/bin" to $PATH in "~/.bashrc"
To get started, run:
source ~/.bashrc
moon help
这样MoonBit toolchain就安装好了,moon-pilot等也就安装好了。
配置pilot使用的模型
为了使用moon-pilot,需要先设置好使用的大模型。
编辑文件:cat ~/.moonagent/models/models.json
加入一个本地模型
[ {
"api_key": "your-api-key-here",
"base_url": "http://127.0.0.1:1337/v1",
"context_window": 32768,
"description": "",
"input_price": 2.1,
"is_reasoning": false,
"max_output_tokens": 24288,
"model_name": "gpt-4o",
"model_type": "saas/openai",
"name": "gpt-4o",
"output_price": 10.5
}]
关于本地模型的搭建,参考:免费的平民AI大模型使用平台G4F(GPT4Free)安装和使用的持续性跟进记录-CSDN博客
当然,也可以使用网络上各大公司提供的大模型,如GLM、DeepSeek、ChatGPT、Ernie等。
启动moon-pilot
执行moon-pilot 启动成功

来一个简单的任务
写helloworld
act ▶ 帮我创建一个hello world的离子
🤖 Agent is running...
📊 Conversation tokens: 23410
🤖 Requesting API...
╭──────────────────────────────────────────────────────────────────────╮
│ 🤖 moonagent │
├──────────────────────────────────────────────────────────────────────┤
│ 要创建一个简单的 "Hello World" 应用程序使用 Ionic │
│ 框架,您可以按照以下步骤进行操作。假设您已经在您的计算机上安装了 │
│ Node.js 和 │
│ npm。 │
│ │
│ 1. 安装 Ionic CLI │
│ │
│ 首先,您需要安装 Ionic CLI。如果还没有安装,可以通过以下命令安装: │
│ │
│ │ npm install -g @ionic/cli │
│ │
│ 2. 创建新的 Ionic 应用程序 │
│ │
│ 使用 Ionic CLI 创建一个新的应用程序。运行以下命令: │
│ │
│ │ ionic start helloWorldApp blank │
│ │
│ 这里,helloWorldApp 是应用程序的名称,blank │
│ 是一个空白模板,适合从头开始创建。 │
│ │
│ 3. 进入项目目录 │
│ │
│ 创建完成后,进入新项目的目录: │
│ │
│ │ cd helloWorldApp │
│ │
│ 4. 修改首页 │
│ │
│ 打开 src/app/home/home.page.html 文件,并将其内容修改为: │
│ │
│ │ <ion-header> │
│ │ <ion-toolbar> │
│ │ <ion-title> │
│ │ Hello │
╰──────────────────────────────────────────────────────────────────────╯
它使用了Ionic这个现代Web技术的开源移动应用开发框架 来写helloworld,还是挺有趣的。
总结
MoonBit很好很强大。moon-pilot很好很强大。
但是moon-pilot的文档写的不太好,开篇没有介绍自己,除了一句:MoonBit Pilot:为 MoonBit 项目提供的人工智能开发助手。文档进入后的第一页,没说自己是啥软件,起什么作用;没说怎么安装,怎么启动。文档直接给出了进入软件的界面....我是自己到命令行,输入moon,靠终端名字自动补齐,才知道启动命令是moon-pilot 。
pilot的安装也是巨坑,需要安装VSCode,然后在里面再安装moonbit插件,然后再安装工具链,而pilot就在工具链的软件包里。
当然,瑕不掩瑜,艰难的入门之后,我认为moon-pilot将会给大家带来飞一样的感觉!
调试
启动moon-pilot报错Operation not permitted
moon-pilot
cannot set capabilities: Operation not permitted
在VSCode的终端里就报错,在Ubuntu的控制台,同样在work目录,没有报错,可以执行。
先凑合用吧
启动moon-pilot报错No model configuration available
CLI Execution Error: Error: No model configuration available
at PF.loadModelConfig (/home/skywalk/.moon/bin/internal/moon-pilot/src/sdk/cli/index.ts:165:17)
at async PF.run (/home/skywalk/.moon/bin/internal/moon-pilot/src/sdk/cli/index.ts:56:5)
at async WT (/home/skywalk/.moon/bin/internal/moon-pilot/src/sdk/cli/index.ts:259:12)
at async <anonymous> (/home/skywalk/.moon/bin/internal/moon-pilot/src/sdk/cli/index.ts:268:16)
at async <anonymous> (/home/skywalk/.moon/bin/internal/moon-pilot/src/index.ts:47:20)
没有配置AI模型的问题,其实它已经提示了:
moon-pilot
No model specified, looking for default model configuration...
No model specified and no models found in configuration file.
Please either:
-
Specify a model with --model <name>
-
Add model configurations to ~/.moonagent/models/models.json
Example configuration file format:
{ "api_key": "your-api-key-here", "base_url": "https://openrouter.ai/api/v1", "context_window": 32768, "description": "", "input_price": 21, "is_reasoning": false, "max_output_tokens": 24288, "model_name": "anthropic/claude-sonnet-4", "model_type": "saas/openai", "name": "claude-sonnet-4", "output_price": 105 }
CLI Execution Error: Error: No model configuration available