Announcement

Build Tables and Controls For Mods Faster with AI

Our comprehensive documentation updates include AI-ready prompts and examples for Steampipe plugin tables, Tailpipe log analysis, and Powerpipe controls.

Turbot Team
5 min. read - Jul 01, 2025
Our comprehensive documentation updates include AI-ready prompts and examples for Steampipe plugin tables, Tailpipe log analysis, and Powerpipe controls.

Building mods, tables and plugins for Steampipe, Powerpipe, and Tailpipe just got a whole lot faster. We've been working extensively with AI-assisted development internally, and the results have been impressive enough that we wanted to share our learnings with the community.

The Challenge: Accelerating Plugin Development

Creating new Steampipe or Tailpipe tables or Powerpipe controls traditionally could require understanding API documentation, implementing Go code, writing comprehensive documentation, and thorough testing. While our existing documentation helps, there's can be a significant learning curve for developers new to our tools or unfamiliar with specific cloud APIs and compliance frameworks.

That's where AI comes in. Through trial and error with our own plugin and mod development, we've discovered techniques that dramatically speed up the development process while maintaining code quality.

New AI guidance documents

We've created comprehensive "Using AI" prompt guides for Steampipe, Powerpipe and Tailpipe. These aren't just theoretical guidelines; they're battle-tested prompts and workflows we use daily in our own development.

While AI "just works" in many cases, with the right prompts and setup, it works exceptionally well. Our new guides capture:

  • Prerequisites for effective AI-assisted development
  • Copy-paste ready prompts tailored for development of new tables and mods
  • Specific instructions that improve AI accuracy
  • Workflows for testing and validation

Building an IAM Instance Profile table with AI

Let's walk through a real example: adding support for AWS IAM instance profiles to the Steampipe AWS plugin.

Using Cursor, we start with opening the entire AWS plugin repository. Rather than providing extensive guidelines in the prompt, we let the AI learn from existing patterns in the codebase.

The initial prompt

The first prompt came straight from our guidance document:

Your goal is to create a new Steampipe table and documentation for IAM instance profiles.
1. Review existing tables and their documentation in the plugin to understand the established patterns, naming conventions, and column structures.
2. Use `go doc` commands to understand the SDK's API structure for the resource type.
3. Create the table implementation with appropriate List/Get functions and any additional hydrate functions needed for extra API calls. Avoid hydrate functions that require paging as these belong in separate tables.
4. Register the new table in plugin.go in alphabetical order.
5. Create documentation at `docs/tables/<table_name>.md`.
- For Postgres queries, use `->` and `->>` operators with spaces before and after instead of `json_extract` functions.
- Include resource identifiers in non-aggregate queries.

AI learning from context

First, the AI analyzed the AWS Go SDK documentation for IAM instance profiles, understanding the available methods, input parameters, and response structures, as well as existing tables in the AWS plugin, identifying common patterns for similar IAM resources like roles and policies.

Code generation

With this context, the AI generated a complete table implementation following established conventions, including proper column definitions, transform functions, and error handling.

Documentation creation

Finally, it created comprehensive documentation with both PostgreSQL and SQLite query examples, following the same format as other tables in the plugin.

The beauty of this approach is its simplicity. No extensive markdown documents or complex cursor rules needed; just open the repo and let the AI learn from existing patterns.

MCP server for automated testing

One game-changing element in our workflow is using Steampipe's MCP (Model Context Protocol) server for testing. This tool transforms the validation process from guesswork into systematic verification.

Using the MCP server, the AI automatically verified that the table was properly registered and inspected the complete table schema. It then generated and ran comprehensive test queries, validating key qualifiers and edge cases before providing detailed test results.

This level of automated testing would typically require significant manual effort, but with the MCP server, it becomes a natural part of the AI-assisted workflow. The AI can quickly iterate through validation steps that would otherwise take considerable time to perform manually.

See it in action

What's Next?

This is just the beginning. As AI models continue to improve and we refine our techniques, we expect even greater acceleration in plugin development. We're excited to see what the community builds with these new capabilities.

Have a Steampipe table you've been wanting but didn't know how to build? Now might be the perfect time to give it a try - and let us know what you create!