Introduction

I was lucky to be involved in a workshop on how to use Kiro and playing with it. As a non developer I have to say that the results are impressive. To quote I had the feeling that Any sufficiently advanced technology is indistinguishable from magic

What is Amazon Kiro?

What is Amazon Kiro? Amazon Kiro is one of the new cool tools focused on specs-driven development where, according to this good very post the main focus is not on the code itself, but it is on the generation of a set of artifacts, commonly markdown documents, associated with a dedicated workflow.

The sum of the documents plus the workflow in the tool then creates the code itself.

Kiro, like other tools, tried to

  • Structure the vibe coding approach with a set of artifacts
  • Track the modifications
  • Improve the interaction between the human and the tools.

Under the hood the usual structure of agents, LLM and so on. But it is not that the point. The main point is trying to move left (or upstream) the interactions and the inputs.

Kiro’s workflow is based on three major steps:

  • Requirements A document contains essentially a set of user’s stories
  • Design A document containins the definition of the software, some building blocks and tech specs
  • Tasks All the actions, mandatory or optionals, that need to be done to complete the code

Now the question is: Who is writing these documents? The answer is pretty simple, it is Kiro itself, having the human just reading, or trying to read, the documents and then click and confirm.

The Project - A Python reader for GGUF

With few Kiro’s credits and a rainy afternoon I decided to try to generate a python script able to read and explore the GGUF file format. For context the GGUF (GTP-Generated Unified Format) is the file format developed by the llama.cpp team and used in the LLM community an for store and save data of an LLM. To simplify a lot it is a sort of massive zip file containing metadata and the weights of the llm.

Fun fact: the magic numbers of the file are the letters GGUF themselves.

gguf-format

There are readers in the community on the GGUF file but building one was not the scope, it was just playing with Kiro.

What Kiro Asked

Fresh of about 500 credits of Kiro’s code I just wrote:

are you familiar with the GGUF file format, the one used for saving LLM?

Getting back

Yes, I’m familiar with GGUF (GPT-Generated Unified Format). It’s a binary format designed for storing and distributing large language models, created by Georgi Gerganov as part of the llama.cpp project. Key things about GGUF:

  • Successor to GGML: It replaced the older GGML format, addressing its limitations with better extensibility and metadata support
  • Efficient storage: Uses quantization techniques (like Q4_K_M, Q5_K_S, Q8_0) to compress models while maintaining reasonable quality, making large models more accessible
  • Self-contained: Stores model weights, architecture details, tokenizer info, and metadata all in a single file
  • Cross-platform: Designed to work across different systems and hardware, particularly optimized for CPU inference through llama.cpp
  • Metadata-rich: Includes comprehensive information about the model (architecture, parameters, quantization method, etc.) in a structured header The format is widely used in the open-source LLM community, especially for running models locally with tools like llama.cpp, Ollama, LM Studio, and similar inference engines. Are you looking to work with GGUF files in some way? I can help with parsing, converting, or building tools around this format.

And then I had this conversation:

[me] ok can you please create a spec for a python script able to read all the data from a GGUF file?

[Kiro] I see you’re working on a task that’s optimized for spec sessions. Would you like to start a dedicated spec session for the best experience?

[me] Yes

[Kiro] I’ll create a spec for a Python script that can read GGUF files. Let me start by gathering requirements from you and then we’ll build out a comprehensive design. I’ll help you create a spec for a Python script that can read all data from GGUF files. Let me start by gathering some information about the GGUF format to ensure we have accurate requirements.

and I said yes.

What Kiro did - The Specifications

Then Kiro started and, quite magically, found a bunch of urls with specs and documentation.

kiro-search

After that, in less than a minute, Kiro came back with the first document the requirements document, asking to approve. I did.

Another round, another cycle of Kiro and then the design document came back, again, asking for approval. I approved again

Last run, Kiro generated the task document with 11 tasks, each one with many subtasks. Kiro asked me to Mark all tasks required and I did

What Kiro did - The Coding

After that I realised that I let slip the dogs of wars. For a while an endless set of approve actions like running python scripts, shell scripts and validation. Kiro ran for about 14 hours but hanged, so the net time was, as far as I can see, about 2 only hours. Most of the work was writing tests on the script itself, crunching about 133 Kiro credits.

What Kiro did - The Outcome

The outcome of the coding is impressive

Plus artifacts, Readme and examples. All fresh and all well formatted.

The Results

The result is GGUF-Reader my first and last project on github, including documentations, examples, howto and all the tests. I haven’t run it as, every creator, I’m scared that my creature will turn in some monster or simply having bugs. The code will stay there, sleeping and dreaming electric sheep.

Conclusions

Coming back to the initial quote Any sufficiently advanced technology is indistinguishable from magic it was fun and magic using Kiro to build an entire project, starting from a couple of lines of english. Will I use it in my day-by-day work? As I’m not a coder I don’t think so but, maybe, I could have found a new hobby.