Some tips and tricks to use Tidewave effectively.
Be specific
AI assistants are not very different from working with your teammates. If you give specific instructions, it is more likely they will deliver exactly what you asked. However, if you are vague, they may try things completely different from what you had in mind, sometimes surprising you, othertimes leading to work that will have to be discarded.
Short chats
In general, you should keep your chats (also known as conversations/threads) short.
Once the context window becomes too large, models may become imprecise, forget previous instructions, or start running into loops. Furthermore, once a model does something wrong, its mistakes remain in the prompt, and trying to coax them to fix it often leads them to repeat those mistakes in a loop, leading to increasing token/message consumption.
Keeping chats short help address those problems. Tidewave will include more functionality in the future to help you manage your chats and their context.
Configure your prompts
All coding agents (except Claude Code) allows you to write an AGENTS.md
file that is given as context to models, with specifics to your application
and stack. If you are using Claude Code, you can use a CLAUDE.md file instead.
Use eval: AI's swiss army knife
Tidewave can evaluate code within your project (using the project_eval tool),
as well as execute commands in the terminal (using shell_eval). Therefore,
you can ask Tidewave to execute complex tasks without a need for additional
tooling. With Tidewave, you can:
- evaluate code within the project context
- execute commands in the terminal
- run SQL queries directly on your development database
This direct integration streamlines your workflow and keeps everything within your existing development environment. For example, you no longer need to use a separate tool to connect to your database, you can either execute SQL queries directly or ask the agent to use your models and data schemas to load the data in a more structured format. In this case, remember to be precise and don't shy away from telling the exact tool it should use.
Similarly, any API that your application talks to is automatically available to Tidewave, which can then leverage your established authentication methods and access patterns without requiring you to set up and maintain additional development keys.
If you find yourself needing to automate workflows, you can implement those
as regular functions in your codebase and ask the agent to use them, by
explicitly telling Tidewave to "use project_eval to invoke function
Foo.Bar.baz". This means extending Tidewave is simply a matter of adding
new functions/methods to your codebase, like any other code you write, and
informing Tidewave where this functionality is defined.
In our experience, models become less effective when there are too many tools, and work best with a few powerful ones. With our eval tools, Tidewave has the full power of your programming language within the context of your project.