Build your first DLLM application with Codex

Create a local chat application from ChatTemplate, use Codex to add a custom command, and run the updated application in DLLM Desktop. Japanese Coach is the example project; the same development cycle applies to your own personal workflow automation.

By the end, you will have a managed application that responds to /echo Hello and a new /server-time command. You will also know how to review, commit, push, and restart the application after each change. The Japanese-learning feature at the end is an optional extension to this working starter.

DLLM Desktop provides the chat interface and manages the local application. ChatTemplate supplies the starting code; your application's code determines how it responds to messages and commands.

Before you begin

If DLLM Desktop is not installed yet, start with the setup instructions on the homepage, then return here to create your application.

This guide assumes that you have already:

  • downloaded and opened DLLM Desktop; and
  • installed the required local software, including Docker, Git, Python, and Conda.

The walkthrough also uses VS Code and its Codex extension to work on the application code.

You also need a Git-compatible repository service. Create a new empty repository for this application before continuing. For this guide, call it japanesecoach and copy its SSH URL, for example:

[email protected]:your-account/japanesecoach.git

An empty repository lets DLLM Desktop create the application files cleanly.

1. Open DLLM Desktop

Open DLLM Desktop and wait for its local workspace to be ready. The dashboard shows registered applications in the left-hand sidebar. Select New App + to create your first application.

DLLM Desktop UI, the New App + button is near the left-top corner

2. Create the application from ChatTemplate

In New App, complete the form with the following values:

FieldValue
Templatechattemplate
NameJapanese Coach
Descriptionpractise Japanese sentences.
RepositoryThe SSH URL of the empty repository you created

Then select Create App.

New App form with Template, Name, Description, and Repository fields

3. Allow the project setup to run

After you select Create App, DLLM Desktop opens a Codex terminal to set up the new project. When Codex asks for permission to access the project folder, select Yes to continue.

The setup renames and configures the template for Japanese Coach. Leave the terminal open and wait for it to finish; this can take a few minutes.

Codex terminal configuring the Japanese Coach project

4. Confirm that the project was created

When the setup completes, DLLM Desktop shows a success message in the New App page. This confirms that Japanese Coach was added to the local bootstrap configuration.

New App page showing a successful project-creation message

5. Wait for Japanese Coach to start

DLLM Desktop automatically reloads the application configuration and starts Japanese Coach. Wait a few minutes for the application to become available.

Japanese Coach then appears in the application list. You now have a managed local project that you can open in an agent coding tool and extend with the features needed for your work.

Japanese Coach listed as a running application in DLLM Desktop

6. Check the starter application

Japanese Coach includes a built-in echo command. In the chat, send:

/echo Hello

The application replies with [echo-pong] Hello. This confirms that the new application is running and responding to chat messages.

Japanese Coach responding to the built-in echo command

7. Open the project in VS Code

Select the vscode button at the top right of DLLM Desktop. It opens the japanesecoach project directly in VS Code, with service.py open. This file is the starting point for the application's code.

The Japanese Coach project open in VS Code, showing service.py and Restricted Mode

8. Trust the project folder

VS Code initially opens the project in Restricted Mode. Select Restricted Mode, then select Trust in the Workspace Trust dialog. Only trust a folder when it is the repository you created or otherwise recognise.

VS Code Workspace Trust dialog for the Japanese Coach project

9. Select the project Conda environment

Use VS Code's Python environment picker to select dllmjapanesecoach. DLLM Desktop creates this Conda environment during project setup; selecting it lets VS Code use the project's Python dependencies.

VS Code Python environment picker showing dllmjapanesecoach

10. Connect Codex to DLLM documentation

Codex does not include DLLM's application APIs by default. Add the DLLM documentation MCP server before asking it to change the project:

  1. In the Codex extension, open the gear menu and select MCP servers.

  2. Select Add server, then choose Streamable HTTP.

  3. Use dllm-information as the server name and enter the following URL:

    https://www.dllmstack.com/mcp
    
  4. Save the server and restart the Codex extension.

You can enter /mcp in Codex to confirm that dllm-information is connected. The project's AGENTS.md then tells Codex which DLLM documentation resources to read when it needs to implement an application command.

11. Ask Codex to add a command

With the japanesecoach project open in Codex, describe the feature you want in plain language:

add a command to return server time to user.

Codex conversation about server time command implementation

Codex updates the project for the requested feature. In this example, it adds a server-time chat command in service.py that returns the current server time. Review the resulting change before continuing or sharing it.

VS Code showing the server-time command added to service.py

12. See why the new command is not live yet

Return to Japanese Coach in DLLM Desktop and try the new command: /server-time. It fails with Unsupported command because the running application is still using the version last fetched from the repository, not the change that is only on your computer.

Japanese Coach showing Unsupported command before the new code is pushed

13. Commit and push the reviewed change

Use your normal Git workflow to review the changed files, git add the files you intend to publish, create a git commit, and git push it to the repository. DLLM Desktop can then fetch the updated project when it restarts.

14. Restart Japanese Coach

In DLLM Desktop, select the restart ⟳ button. japanesecoach restarts in a few seconds and loads the version you pushed. Then send the following command in Japanese Coach:

/server-time

The server replies with its current time, confirming that the change is live.

Japanese Coach replying with the server time after restart

15. Choose your next feature (optional)

The starter application has now completed its first change-and-restart cycle. From here, the tutorial is deliberately open-ended: return to Codex and describe the capability you want Japanese Coach to have. Codex can help you explore the project, propose an implementation, and make the changes; review its work before you commit and push it.

For example, you could ask Codex to turn Japanese Coach into a reading exercise for a Japanese news post:

Add a command to get the latest post from Threads, @sankei_news. The post is
written in Japanese. To help the user learn Japanese, break down the post
sentence and explain each phrase. Send the result to the user in Markdown.
Then send another message to the user in ruby format, with the phonetics of the
post sentence.

Codex conversation with an open-ended Japanese Coach feature request

Use this as a starting point, then refine the request and the implementation with Codex to suit your own Japanese Coach. When you are satisfied with the result, follow the same review, commit, push, and restart cycle from steps 13 and 14 to make it available in DLLM Desktop.

Continue building

You now have a running DLLM application and a repeatable way to update it. Use these references as you develop your next feature: