In this tutorial, you will use Maestro to build a working feature from scratch, validate it with tests, and package it for delivery. By the end, you will have experienced the full Maestro workflow and built confidence in the partnership model.

What You Will Build

You will ask Maestro to create a Python utility library with:
  • A set of string manipulation functions
  • Comprehensive tests
  • Documentation
This is a small project, but it exercises every part of the Maestro workflow: giving instructions, watching Maestro work, validating output, and downloading results.

Prerequisites

  • A Maestro account (sign up at igent.ai)
  • A web browser
  • No local development environment required

Step 1: Start a New Session

Open Maestro in your browser. You will see an empty chat interface. This is your session — a persistent workspace where you and Maestro collaborate. You should see:
  • A text input area at the bottom
  • A capacity indicator in the top right (it should show low usage)
  • Navigation controls on the left

Step 2: Give Maestro a Clear Goal

Type the following into the chat and send it:
Create a Python utility library called "textkit" with the following functions:

1. reverse_words(text) - reverses the order of words in a string
2. count_vowels(text) - counts the number of vowels in a string
3. truncate(text, max_length, suffix="...") - truncates text to max_length, adding suffix if truncated
4. is_palindrome(text) - checks if text is a palindrome (ignoring case and spaces)

Requirements:
- Type hints on all functions
- Docstrings on all functions
- Comprehensive tests using pytest
- Handle edge cases (empty strings, None input)

Success criteria: All tests pass with >90% coverage.
You should see Maestro begin working. It will:
  • Plan its approach
  • Create the source files
  • Create test files
  • Apply changes to the workspace

Step 3: Watch Maestro Work

As Maestro works, you will see several things happen: File proposals: Maestro will show you code it plans to create. These appear as formatted code blocks with file paths. Apply Changes: After proposing files, Maestro applies them to your workspace. You will see a confirmation message. Terminal output: When Maestro runs tests, you will see real-time output from the sandbox terminal. This is actual code executing in an isolated environment. Watch for Maestro to:
  1. Create textkit.py with the four functions
  2. Create test_textkit.py with tests
  3. Run the tests in the sandbox
  4. Report results
You should see test output that looks something like:
========================= test session starts ==========================
collected 20 items

test_textkit.py::test_reverse_words_basic PASSED
test_textkit.py::test_reverse_words_empty PASSED
...
========================= 20 passed in 0.05s ===========================

Step 4: Validate the Results

Do not simply accept Maestro’s claim that tests pass. Check the output yourself:
  • Are all tests passing? Look at the final line of test output.
  • Is coverage adequate? If Maestro showed a coverage report, check the percentage.
  • Were edge cases tested? Look for tests with empty strings and None values.
If anything is missing, tell Maestro. For example:
The tests don't cover the case where truncate receives a max_length of 0. Add that test and run the full suite again.
Maestro will add the test and re-run. You should see updated output confirming all tests pass.

Step 5: Request an Improvement

Now exercise the iteration cycle. Ask Maestro to enhance the library:
Add a new function: slug(text) that converts text to a URL-friendly slug.
- Lowercase all characters
- Replace spaces with hyphens
- Remove non-alphanumeric characters (except hyphens)
- Collapse multiple hyphens into one

Add tests for the new function and run the full test suite.
Watch Maestro:
  1. Edit the source file to add the new function
  2. Add new tests
  3. Run the complete test suite (not just the new tests)
  4. Report results
You should see all previous tests still passing, plus new tests for the slug function.

Step 6: Download Your Work

Now package the result. Type:
/download-all
Your browser will download a zip file containing all files from the session. Extract it to see the project structure:
textkit.py
test_textkit.py
These files are ready to use in any Python project.

Step 7: Review What You Built

Take a moment to open the downloaded files and read them. You should find:
  • Clean, documented code with type hints and docstrings
  • Comprehensive tests covering normal cases and edge cases
  • Consistent patterns across all functions

What You Accomplished

You have completed a full Maestro workflow:
  1. Defined a clear goal with specific requirements and success criteria
  2. Watched Maestro implement the solution autonomously
  3. Validated the output by reviewing test results
  4. Iterated by requesting an improvement
  5. Verified no regressions by checking all tests still pass
  6. Downloaded the deliverable for use in your own projects
This is the fundamental pattern for all Maestro work, whether you are building a small utility or a large system spanning thousands of lines.

Next Steps

Now that you have experienced the basic workflow:
  • Core Concepts: Understand sessions, capacity, and the partnership model
  • Prompting Guide: Learn to write effective requests for complex projects
  • Use Cases: See what kinds of projects Maestro handles