Niwa – Your Versatile Text Editor Assistant
Meet Niwa, an AI assistant that enhances your text editing experience with powerful capabilities. Whether you're coding, writing documentation, crafting content, or managing your tasks, Niwa is here to help with its versatile toolset and multi-role support. Thanks to Claude 3.5 Sonnet's capabilities, Niwa can handle complex tasks step-by-step. With tools that let him create & edit files, explore large projects, use the browser, and execute terminal commands (after you grant permission), he can assist you in ways that go beyond traditional text editing. While autonomous AI scripts traditionally run in sandboxed environments, this extension provides a human-in-the-loop GUI to approve every file change and terminal command, providing a safe and accessible way to explore the potential of AI assistance.
Use any API and ModelNiwa supports API providers like OpenRouter, Anthropic, OpenAI, Google Gemini, AWS Bedrock, Azure, and GCP Vertex. You can also configure any OpenAI compatible API, or use a local model through LM Studio/Ollama. If you're using OpenRouter, the extension fetches their latest model list, allowing you to use the newest models as soon as they're available. The extension also keeps track of total tokens and API usage cost for the entire task loop and individual requests, keeping you informed of spend every step of the way. Run Commands in TerminalThanks to the new shell integration updates in VSCode v1.93, Niwa can execute commands directly in your terminal and receive the output. This allows him to perform a wide range of tasks, from installing packages and running build scripts to deploying applications, managing databases, and executing tests, all while adapting to your environment to get the job done right. For long running processes like dev servers, use the "Proceed While Running" button to let Niwa continue in the task while the command runs in the background. As Niwa works he'll be notified of any new terminal output along the way, letting him react to issues that may come up, such as compile-time errors when editing files. Create and Edit FilesNiwa can create and edit files directly in your editor, presenting you a diff view of the changes. You can edit or revert Niwa's changes directly in the diff view editor, or provide feedback in chat until you're satisfied with the result. Niwa also monitors linter/compiler errors (missing imports, syntax errors, etc.) so he can fix issues that come up along the way on his own. All changes made by Niwa are recorded in your file's Timeline, providing an easy way to track and revert modifications if needed. Use the BrowserWith Claude 3.5 Sonnet's new Computer Use capability, Niwa can launch a browser, click elements, type text, and scroll, capturing screenshots and console logs at each step. This allows for interactive debugging, end-to-end testing, and even general web use! This gives him autonomy to fixing visual bugs and runtime issues without you needing to handhold and copy-pasting error logs yourself. Try asking Niwa to "test the app", and watch as he runs a command like Add Context
Checkpoints: Compare and RestoreAs Niwa works through a task, the extension takes a snapshot of your workspace at each step. You can use the 'Compare' button to see a diff between the snapshot and your current workspace, and the 'Restore' button to roll back to that point. For example, when working with a local web server, you can use 'Restore Workspace Only' to quickly test different versions of your app, then use 'Restore Task and Workspace' when you find the version you want to continue building from. This lets you safely explore different approaches without losing progress. |