What is Metaphor?

Metaphor is a simple language designed to help you focus on your goals when building software. It lets you capture your knowledge and expertise to create AI assistants that are customized to your needs.

You can find out more on our YouTube channel.

What makes Metaphor different?

Conventional software development creates islands of disconnected information. Product requirements, engineering implementation details, testing, security, and deployment are often captured in different ways. Left unchecked, ambiguous or inconsistent elements can find their way into implementations, confusing everyone and leading to high costs to correct them.

Worse, conventional software development tends to focus on a series of successive changes. Even if we start with good intentions, we rarely maintain the top-level view and tend to lose sight of the bigger picture over time.

Metaphor encourages you to work at a higher level. It's designed to let you focus on what you want your software to do, not how it's built. As new requirements and capabilities are needed, they can be captured in the Metaphor description of your software and checked to ensure they align with previous elements. Once you have a finished description, it can be passed to AI agents to help deliver the implementation, including any tests and documentation you might need.

By focusing on what you want and why, your investment is also future-proofed. It can help you maintain and modify what you build. And, with each new generation of AI agent, you can use their enhanced capabilities to help you continually build better software.

Iterate quickly

As AI agents do implementation work rapidly, trying new ideas and discarding ones you don't like is easy. This means you can afford to try a few different approaches if you're unsure which one might work best rather than settling for the first one you develop.

Like conventional software development, Metaphor encourages teams to use version control and careful review before accepting changes. This also helps keep everyone aligned and dramatically improves time to value creation.

Latest releases

You can find the latest release of the stand-alone Metaphor compiler on GitHub: github.com/m6r-ai/m6rc

You can also find the latest release of the Metaphor parser and prompt compiler library on GitHub too. This is a Python library that generates large context prompts, making it easy to embed complex prompting behaviour into your AI-powered applications. We use this as the core engine for many of our tools: github.com/m6r-ai/m6rclib

Examples

You can find examples powered by Metaphor on GitHub. Some of these are demos we've written, and some are tools we use to help us build our software!

Discussion forum

If you'd like to discuss Metaphor and it's uses, we have a metaphor-language discussion forum over on Google Groups: groups.google.com/g/metaphor-language