# Installing theme CLI and creating a theme

**URL:** https://meta.discourse.org/t/installing-theme-cli-and-creating-a-theme/394294
**Category:** Development
**Created:** [January 25, 2026, 6:22pm UTC](https://meta.discourse.org/t/installing-theme-cli-and-creating-a-theme/394294 "2026-01-25T18:22:35Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Andrew\_Rowe](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/andrew_rowe/32/445877_2.png) [@Andrew\_Rowe](https://meta.discourse.org/u/Andrew_Rowe)
#### Post date: [January 25, 2026, 6:22pm UTC](https://meta.discourse.org/t/installing-theme-cli-and-creating-a-theme/394294/1 "2026-01-25T18:22:35Z")

</div>

I did not want to clutter that topic but I was following this guide

> [@Theme Developer Tutorial: 2. Creating a remote theme](https://meta.discourse.org/t/theme-developer-tutorial-2-creating-a-remote-theme/357797):
>
> In the last chapter, we created a basic theme via the Discourse admin interface. This works well enough for very simple themes. But as soon as you want to do something more complex, or share a theme more widely, you’ll need to create a Remote Theme. Install the discourse\_theme CLI The first step towards developing a remote theme is to install the discourse\_theme CLI on your computer. This tool is used to generate the initial scaffold for a theme, and can then synchronize it in real-time to a lo…

when I got to this step

> [@Theme Developer Tutorial: 2. Creating a remote theme](https://meta.discourse.org/t/theme-developer-tutorial-2-creating-a-remote-theme/357797/1):
>
> When setup is done, you’ll see `✅ Done!`, and you’ll be prompted to start “watching” the theme. Answer yes, and then work through the watching setup.

instead I got

```plaintext
/var/lib/gems/3.0.0/gems/discourse_theme-2.1.6/lib/discourse_theme/scaffold.rb:53:in `block in generate': undefined method `safe_dump' for Psych:Module (NoMethodError)
Did you mean? safe_load
	from /var/lib/gems/3.0.0/gems/discourse_theme-2.1.6/lib/discourse_theme/scaffold.rb:18:in `chdir'
	from /var/lib/gems/3.0.0/gems/discourse_theme-2.1.6/lib/discourse_theme/scaffold.rb:18:in `generate'
	from /var/lib/gems/3.0.0/gems/discourse_theme-2.1.6/lib/discourse_theme/cli.rb:68:in `run'
	from /var/lib/gems/3.0.0/gems/discourse_theme-2.1.6/bin/discourse_theme:6:in `<top (required)>'
	from /usr/local/bin/discourse_theme:25:in `load'
	from /usr/local/bin/discourse_theme:25:in `<main>'

```

did I do something wrong?

Edit: The bot said install ruby-dev if you get an error and that worked

---

<div class="post-metadata">

### Author: ![chapoi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/chapoi/32/537252_2.png) [@chapoi](https://meta.discourse.org/u/chapoi)
#### Post date: [January 27, 2026, 9:00am UTC](https://meta.discourse.org/t/installing-theme-cli-and-creating-a-theme/394294/2 "2026-01-27T09:00:51Z")

</div>


