Introducing Dowel 0.0.21
One binary for every command your Dart project needs.
Scaffolding, code generation, transactional plugin installs, hot reload orchestration and a REPL, with an MCP server for your AI agent. If you know php artisan, you know the verbs.
Install once. Command everything.
Every package invents its own install ritual and its own wrapper script. Dowel registers every command in one place and describes every plugin install in one protocol.
-
One command registry
Packages register their commands in one binary, and collisions are caught at boot.
Learn more about One command registry -
Plugin protocol
A plugin declares its install in
Learn more about Plugin protocolinstall.yaml, with a fluent DSL when YAML is not enough. -
Safe installs
Installs are idempotent and every change is recorded, so
Learn more about Safe installsplugin:uninstallcan undo it. -
Signature DSL
Declare a command as
Learn more about Signature DSL'cmd:name {arg} {--flag}', the way you would inphp artisan. -
Live VM hooks
Learn more about Live VM hookstinker,reloadandhot-restartdrive the running Flutter VM directly. -
MCP server
A stdio server exposes the whole command surface to AI agents.
Learn more about MCP server
Your agent speaks Dowel.
The Dowel skill teaches your coding assistant the command and plugin conventions before the first line. One command wires it up.
run in your project other editors
works with
And runs the commands itself.
Skills teach the conventions. The stdio MCP server gives your agent every registered command as a tool.
-
Local stdio
Runs in your project, nothing to host.
-
Every command
Substrate and plugin commands as tools.
-
No account
MIT, free forever.
# stdio, runs on your machine
Local, no account, MIT.