← Back to context

Comment by tkgally

6 days ago

Just for reference, here is the metaprompt I first gave to Opus:

“I want to ask Claude Code to write a browser-based synthesizer for me. Please prepare a prompt for it that I can give to it for it to write the synthesizer. The synthesizer should automatically create interesting polyphonic music in which the various voices play off against each other in both harmony and contrast. The controls will affect the tone, rhythmic patterns, number of voices, complexity and randomness of the melodies, and other features. The controlled features should be original—not just standard synthesizer functions—and encourage creative explorations even by naive users. So write a prompt that I can give to Claude Code to create that synthesizer.”

I then gave the prompt produced by Opus to Fable in Claude Code.

You'd probably get better results giving the metaprompt to Fable. Information doesn't magically get created, running something through a dumb model to give to a smart model gets worse results than if you just give the smart model the prompt directly.

  • Now that Fable is back, I had it create two more browser-based music generators. For the first, I had Fable in chat write a full prompt based on the same metaprompt as above. Here is the prompt it wrote:

    https://gally.net/temp/20260701_Fable_synthesizer_2_with_pro...

    I then gave that full prompt to Fable in Claude Code. Here is the result:

    https://gally.net/temp/20260701_Fable_synthesizer_2_with_pro...

    For the second, I just gave a short prompt [1] directly to Fable in Claude Code. Here is that result:

    https://gally.net/temp/20260701_Fable_synthesizer_3_with_dir...

    I can’t say that one is better than the other; that would take a lot more tests, and the judgments would be pretty subjective in any case.

    Both were completely one-shot. Last year, when I was doing similar tests with various models, the synthesizers rarely worked right on the first shot, and I would have to do some back-and-forth to get them functioning. This time, Fable was able to open the files in Chrome itself, view and adjust the page layout, and monitor the browser events for errors. Each time it made some adjustments to the file. The only thing it wasn’t able to do was listen to and assess the sounds produced.

    [1] “Write a browser-based synthesizer for me. The synthesizer should automatically create interesting polyphonic music in which the various voices play off against each other in both harmony and contrast. The controls will affect the tone, rhythmic patterns, number of voices, complexity and randomness of the melodies, and other features. The controlled features should be original—not just standard synthesizer functions—and encourage creative explorations even by naive users.”

  • That occurred to me, too, when I posted that metaprompt above. But that was only the second or third prompt I gave to Fable during the couple of days I had access to it, and I used the metaprompting strategy that had worked well with earlier models. If and when I get access to Fable again, I will try giving it a similar short prompt directly.

    I should mention that Fable also did an impressive job on a couple of major project-redesign tasks I gave it. Those aren't things I can share here, though.

    • The general way I think about it is that it's OK (and usually encouraged) to have a smarter model prompt a dumber model, but never the other way around.