A comprehensive Zed editor extension for the Duso programming language - Scripted Intelligence for AI agents and automation.
- Full support for Duso language syntax
- Keywords:
if/then/else/elseif/end,while,for,function,return,try/catch - 70+ built-in functions (parallel, spawn, fetch, datastore, etc.)
- String templates with
{{ expr }}syntax - Comments:
//line and/* */block comments
- Real-time language features
- Error checking and diagnostics
- Auto-completion
- Code navigation
- Hover information
- Document symbols and outline
- Quick insertion of common patterns
- Functions, loops, conditionals
- Parallel execution blocks
- Try/catch error handling
- Module imports and Claude integration
- Auto-closing brackets
- Proper indentation for code blocks
- Bracket matching
- Code outline
- Open Zed
- Go to Extensions
- Search for "duso"
- Click Install
cd ~/.zed/extensions
git clone https://github.com/duso-org/duso-zed.git- Duso must be installed on your system. Get it from:
- Duso Homepage: Download and install binary
- Homebrew:
brew tap duso-org/homebrew-duso && brew install duso - GitHub Releases
The extension uses Duso's built-in LSP server (duso -lsp) for all language features.
The extension works out of the box with no configuration needed. It automatically:
- Recognizes
.dufiles as Duso scripts - Launches the LSP server when needed
- Applies syntax highlighting and smart indentation
- Create a
.dufile:
touch hello.du- Write some Duso:
// Your first Duso script
print("Hello, Duso!")
// Use snippets for quick coding
// Type 'fn' and press Tab to create a function
- Open the file in Zed - syntax highlighting and LSP features are automatically enabled.
| Trigger | Expansion |
|---|---|
fn |
function declaration |
if |
if statement |
ifelse |
if/else statement |
for |
for loop (range) |
forin |
for-in loop (iteration) |
while |
while loop |
try |
try/catch block |
parallel |
parallel execution block |
spawn |
spawn process |
require |
module import |
fetch |
HTTP fetch |
The extension provides access to Duso's built-in documentation:
- Right-click on any function name
- Hover for information via LSP
- Check the Duso documentation:
duso -docorduso -docserver
- Official Docs:
duso -read(guides and reference) - Examples:
duso -read examples/ - Reference:
duso -doc(built-in function reference) - Website: duso.rocks
Make sure Duso is installed and available in your PATH:
which duso
duso -version- Verify the file has a
.duextension - Check that the Duso extension is enabled in Zed
- Reload Zed (Cmd+Shift+P → "Revert to auto-saved copy" or restart)
- Check that Duso LSP works:
duso -lsp(should start without errors, press Ctrl+C to stop) - Check Zed logs: View → Toggle Developer Console
We'd love your contributions!
- Duso Language - The main Duso repository
© 2026 Ludonode LLC | Licensed under Apache License 2.0