We’ve released an incredible new feature for spec-driven development (SDD): Akka Specify. Akka now provides utilities to design, build, test, deploy and manage agentic AI systems through prompting from within your favorite AI assist tool.
No coding required
No IDE required
Supports Claude Code, Gemini CLI, Codex, Cursor, Copilot, and other AI-assistants
It couldn't be easier to multiply your productivity with spec-driven development and Akka. Get started from within the Akka CLI using the akka specify command:
None
$ akka specify init .
$ claude
You can run this in a completely empty directory: no pom file, no pre-existing templates, no git cloning required, and, as you’ll see, no manual coding required.
What is Spec-Driven Development
Spec-driven development (SDD) might sound like yet another new acronym encapsulating more difficult and esoteric AI jargon, but it’s just a natural evolution of writing prompts.
What seems like decades ago in “AI time”, we were writing prompts to produce code. We would ask our favorite model to write a function that does this or a class that does that. Eventually we got confident enough to ask it to build larger and larger pieces of an application.
Once these prompt-first applications got to any kind of complexity, a few things started to happen. The first is that the prompts became too big for us meager humans to deal with. Second, the prompt size started to make the code output unreliable and suffered from bad context windows and not enough knowledge in the context.
At this point a lot of us started to build more robust context for the models to create whole applications or services. I created dozens of applications that originated from a single SPEC.md file. This file just had natural language descriptions of requirements and acceptance criteria.
Eventually those exploring this kind of development felt the pain of having the entire spec of a large application all inside a single file. So we started to come up with formalizations and patterns to build better, more AI-friendly specs.
Of course, we asked ourselves, “How can we add more AI into this new SDLC?” So we started asking models to help us write specs, and then we asked them to build plans from those specs. From those plans, we asked the models to create task lists or issues, and from there we finally asked for generated code.
SDD embraces the notion that the important development artifact is the specification, because the code is now an autogenerated commodity.
There are different SDD frameworks. Akka Specify is based on the most popular SDD framework: spec-kit. Proven effective across a variety of project types and team sizes, spec-kit facilitates rapid iterations of features and integrates well with each organization’s tooling and best practices.
Start with a constitution. This defines the set of unbreakable rules that must be followed at all times, whether it’s during plan building, testing, or code generation. These rules are global for a project, but can be reused across entire teams or organizations.
Note: Akka provides a global constitution that you can extend for your organization’s templates, standards, and processes.
Then, start specifying new features by iterating through the following loop:
Specify - Defines what and why you want to build, but not how. This is your requirements and user stories. The AI assistant will take your prompt to produce formal requirements.
Clarify - Clarifies underspecified areas. Your assistant will analyze your spec and find places where it wouldn’t have enough information to make a decision. We recommend always running this step, though spec-kit treats it as optional.
Plan - Creates a detailed technical implementation plan with your tech stack of choice. This is where you specify the how.
Tasks - Asks the assistant to generate a discrete set of implementation steps for the plan.
Implement - Generates the code according to the rules of the constitution, the defined the spec, the plan, and the task list.
AI assist tooling will interact with you throughout this loop. You keep looping until the feature behaves to your satisfaction. Akka has extended this looping with additional utilities to manage the local build, run suites of unit and integration tests, mock local services, execute clusters, and run security scans. We then provide specialized AI skills for setting up a deployment to a local or remote Akka environment.
At the end of each feature iteration loop, you can run your service locally, run it as a local cluster, or deploy it to Akka Automated Operations. The AI will figure out how to navigate hostnames and route configuration. These behaviors can be tailored to integrate with your organizational tooling or customized with your templates.
Run akka specify init <dir> to initialize a new SDD project. This command creates an Akka project, installs Akka’s AI assist context, defines a constitution, and installs Akka commands for your AI assist tooling.
Then run Claude Code (or your favorite agent). Akka makes the SDD steps available as slash commands:
/akka.specify - Supply a prompt to produce your feature spec
/akka.clarify - Find gaps in your spec
/akka.plan - Convert your spec into a technical implementation plan
/akka.tasks - Itemize the work required to build according to the spec
/akka.implement - Generate all of the required code, tests, harnesses, etc.
/akka.build - Build, test, and run locally with hot reloading
/akka.deploy - Deploy to Akka Automated Operations
Within Claude Code, you start by writing a specification and launching /akka.specify. From there, Claude will guide you on the rest of the commands to execute when it’s time to execute them. You’ll get the hang of the iteration loop quickly.
Having gone through the motions of building real-world, production-grade, distributed applications using spec-first development, we’re finally in the future where the journey from idea to running in production can be measured in hours!
Try out Akka Specify for yourself and let us know what you’re building!