
Tips-Tricks-for-AI-Coder
A comprehensive resource designed to help developers effectively use AI tools to develop websites, apps, and other projects.
Stars: 63

README:
Welcome to the Tips & Tricks for AI Coder Beginners, A comprehensive resource designed to help developers effectively use AI tools to develop websites, apps, and other projects. This guide is based on real-world experience and practical advice tailored for absolute beginners.
- đ§ Chapter 1: Getting the AI to Do What You Want â The Power of Thoughtful Prompts
- đ Chapter 2: When Things Aren't Going Your Way â Troubleshooting with AI and Regaining Momentum
- đ¸ Chapter 3: Using Screenshots and Tracking to Handle Persistent Issues
- đ ď¸ Chapter 4: Guiding AI to Address Problems, Errors, and Challenges Effectively
- đ Chapter 5: Understanding CDN Libraries and Their Role in Your Project
- đ¤ Chapter 6: How to Work with AI, Not Just Let It Work for You
- ⥠Chapter 7: Making the Most of Your AI Assistant â When to Use Agent Mode, Edit Mode, and Other Models
- đ Chapter 8: Taming the Code â Why Smaller Files Are Better (for You and Your AI)
- đ¤ Chapter 9: How to Choose the Best AI Coding Assistant
This guide also serves as a testament to my journey as a beginner developer learning to harness the power of AI. Every chapter is inspired by lessons I've learned while navigating the world of AI-driven development. My goal is to share these insights with you so you can avoid common pitfalls and maximize the potential of these tools.
Let me share with you one of the biggest lessons I learned early on. Here it is: The way you phrase what you ask the AI to do is everything. The difference between getting something brilliant and getting something useless often comes down to how you asked for it. Sounds simple, but this tip alone can save you a lot of frustration.
So, letâs talk about how to ask your AI âcoder assistantâ for help in a way that actually gets resultsâbecause trust me, the way you talk to the AI makes all the difference.
Hereâs the deal: AI tools are smart, but they arenât mind readers. Theyâre brilliant at following directions, but they need those directions to be clear and specific. If youâre vague or leave room for guessing, things can go sideways fast.
Think of it this way: Imagine youâre hiring a contractor to build you a house. If you say, âBuild me something nice,â you might end up with a treehouse when what you really wanted was a three-bedroom ranch with a pool. But if you hand them blueprints and say, âI want this exact house with these exact features,â theyâll know exactly what to do.
AI works the same way. If your instructions are specific, the output will be better. Instead of saying, âFix this code,â try something like, âFix the problem with the submit button not working when a user clicks it.â Instead of âMake my app pretty,â say, âModernize the appâs UI with sleek, professional fonts and high-quality icons.â See the difference? The AI now knows exactly what you want and has a clear path to follow.
One trick Iâve learned is to start with the right task-specific phraseâthink of it as the secret sauce that gets the AI into the right mode. Here are examples of phrases you can use for different situations. Feel free to copy, tweak, and use these as much as you want.
-
When Somethingâs Broken:
- Use this: âFix the problem withâŚâ
- Example: âFix the problem with the login button not doing anything when clicked.â
This tells the AI to focus on fixing one specific issue. Instead of trying to redo your entire code, it homes in on solving just that problem.
Pro Tip: If you know what broke things (like a certain line of code), include that detail. And if youâre not sure? No worriesâjust focus on describing the symptoms of the problem as clearly as possible.
-
When Adding New Features:
- Use this: âAdd a feature to the existingâŚâ
- Example: âAdd a feature to the existing app that allows users to filter products by price without removing any other features.â
This phrase is worth its weight in gold because it tells the AI two critical things: (1) what you want to add and (2) what not to touch. Trust me, you donât want the AI to accidentally break something while itâs adding your shiny new feature. Thatâs why the âwithout removing any other featuresâ part is so importantâit keeps everything else intact.
-
When You Need to Fix Browser Errors:
- Use this: âFix these errors found in the browser consoleâŚâ
- Example: âFix these errors found in the browser console: [Paste the error messages here].â
Okay, this might be the most beginner-friendly pro tip ever. If youâre building a web app and things arenât working, your browser console is like a detective whoâs already figured out the crime scene for you. To find it, right-click on your webpage, click âInspect,â and go to the âConsoleâ tab. Youâll see error messages thereâjust copy those and paste them into your AI tool.
Why does this work so well? Because those error messages often contain the exact information the AI needs to figure out what went wrong. Itâs like giving it a roadmap for fixing your app. Seriously, this trick is a lifesaver.
-
When You Want to Improve How Your App Looks:
- Use this: âImprove the overall app (or specific part) UI with professional, modern, visually appealingâŚâ
- Example: âImprove the overall app UI with professional, modern, visually appealing, high-quality fonts, icons, and a cohesive color palette inspired by minimalist designs.â
Letâs be realâdesign is subjective. What looks great to one person might not be someone elseâs cup of tea. Thatâs why itâs especially important to guide your AI with words like âmodern,â âprofessional,â and âhigh-quality.â These kinds of adjectives help the AI understand the overall vibe youâre going for.
Pro Tip: If you have a specific app or website that you love the look of, mention it! For example: âMake this look more like the design of Spotify.â The AI will try to mimic that style and apply it to your project.
-
When Removing Features:
- Use this: âRemove the [feature] and all related code without breaking the core features of the app.â
- Example: âRemove the search bar and all related code without breaking the shopping cart or user profile features.â
Removing features can be tricky because you donât want to accidentally take out something important. This phrase lets the AI know to cleanly remove the feature but leave everything else working exactly as it should.
-
When You Accidentally Delete Something:
- Use this: âI lost the [file], please restore it so that the project looks and functions exactly as it was.â
- Example: âI lost the style.css file, please restore it so the project looks and functions exactly as it did before.â
It's important to let the AI know what file you lost and give it some context (e.g., âThis file handled all the styling for my homepageâ). While the AI might not restore the file perfectly, itâll often provide enough to get things back on track.
If thereâs one thing you take away from this chapter, let it be this: specificity is everything. The more detail and clarity you give in your prompts, the better the AI will perform. Hereâs what Iâve learned:
- Always describe what you want in plain, simple language. Donât overcomplicate it!
- Focus on one task at a time. Big, multi-part prompts can overwhelm the AI.
- Donât be afraid to experiment. If the first answer isnât quite right, tweak your wording and try again.
This process might feel clunky at first, but I promise, the more you practice, the better youâll get at it.
Working with AI to build apps and websites isnât always smooth sailing. There will be moments when you feel like youâre on a roll, only to hit a wall where nothing seems to work. Youâve given the AI clear instructions (or so you thought), youâve rephrased your requests, and yet⌠your project isnât moving forward.
This chapter is all about troubleshooting those frustrating situations and getting yourself unstuck.
Sometimes, the AI just⌠forgets itself. If you find yourself repeating a command over and over, and nothing is changing, the problem might not be with your instructionsâit might be the chat history.
AI language models work by keeping track of previous instructions and responses in the current conversation. Over time, this history can become cluttered with conflicting context. For example:
- You might have asked for a feature earlier and then changed your mind, but the AI is still trying to balance both instructions.
- The AI could be interpreting your new commands in the context of outdated instructions instead of treating them as independent tasks.
The Fix: Start a new conversation with the AI.
- Open a fresh chat, paste the most recent version of your code, and explain what youâre trying to accomplish.
- Starting fresh clears the history and eliminates contradictions that may have crept in during your ongoing conversation.
- Bonus: A new chat can often lead to better, more focused results because the AI isnât distracted by its past âthoughts.â Itâs like pressing a reset button.
If starting fresh doesnât solve the problem, thereâs a chance the issue is in the code itself. Contradicting code happens when two pieces of code tell your app to do opposite things. This can often occur when:
- The AI added a new feature but forgot to clean up or remove old code related to a previous version of that feature.
- Youâve tried to patch multiple problems one at a time, and the AI accidentally created logic overlaps.
- Youâre working on a complex project, and somewhere along the way, something got tangled.
For example:
- Imagine youâre creating a button for your app. One part of your code says, âWhen the button is clicked, submit the form.â Another part says, âWhen the button is clicked, refresh the page.â Now the app is confusedâdoes the button submit or refresh?
The Fix: Ask the AI to identify and resolve contradictions. Using the chat feature of your AI assistant, you can give it a prompt like, âReview my code and identify any parts that might be contradicting each other.â Then paste the relevant sections into the chat.
Another Fix: Debug manually. If the AI isnât catching the problem (or you just want more control), start testing pieces of your app one at a time. Disable or comment out parts of the code and see how the app behaves when those sections arenât running. This process can help you locate the specific lines causing the conflict.
Hereâs a game-changer: AI doesnât always need to write code for you. You can also use it as a trusted debugging partner to answer your questions and guide you through problems without actually changing your project. This approach gives you more control and can help you better understand how everything is connected.
For example, you can ask:
- âWhat might be causing my app to crash when I click the submit button?â
- âHow does this section of my JavaScript interact with the CSS styling below?â
- âWhat impact would deleting this variable have on the rest of the code?â
This back-and-forth isnât about handing over control to the AIâitâs about using it as a coding coach. By treating AI as a teacher rather than a task executor, you can unlock insights that help you troubleshoot faster and better.
If one AI model isnât giving you answers you can work with, try mixing things up. Different models have different strengths:
- ChatGPT (especially GPT-4): Great for general-purpose coding advice, debugging, and generating reusable code snippets.
- Claude (Anthropic): Often excels at understanding complex instructions and summarizing code but can miss finer debugging details.
- Gemini (Google): May provide additional context if youâre dealing with Google-related tools or technologies.
- Specialized Coding Assistants (e.g., Cursor, GitHub Copilot, Windsurf): Integrated directly into IDEs for real-time coding help.
Hereâs how to do it:
- Copy your current code or problem description.
- Paste it into another model.
- Ask the same or similar question.
Even if youâve been working exclusively with one tool, switching to another can provide valuable new perspectives (and solutions).
Changelogs are lifesavers. They let you:
- Track exactly what the AI edited or added to your project.
- Roll back changes if something goes wrong.
- Compare older versions of your code to pinpoint issues.
Many tools and IDEs allow you to enable changelogs or version history. If not, you can use Git for version control to achieve the same effect.
Sometimes, the issue isnât you or the AIâitâs the language youâve chosen. If your app isnât working well or feels overly complex, ask the AI: âIs [current language] the best choice for this project?â
This one shift can be a game-changer.
This chapter focuses on leveraging screenshots in creative and effective ways, along with strategies for having the AI track and remember changes so that your workflow stays productive and frustration-free.
A screenshot can often say more than words, especially when something in your UI doesnât look or behave as expected. However, without proper context, the AI might misinterpret the screenshot and assume it represents the solution you want rather than the problem youâre highlighting. To address this, itâs critical to pair your screenshot with precise prompts that guide the AIâs focus.
-
Provide a Clear Description Alongside the Screenshot:
A screenshot without context can lead to misunderstandings. For example, if youâre highlighting a visual bug, include an explanation like:- âThis screenshot shows the UI after submitting a form. The button is supposed to redirect the user to a confirmation page, but nothing happens. Please identify the issue.â
-
Highlight Key Areas in the Screenshot:
Use basic image editing tools to circle, underline, or annotate the parts of the screenshot that are relevant to the problem. This helps the AI know where to focus. -
Clarify That the Screenshot Represents a Problem:
To make sure the AI doesnât misinterpret the image as your desired output, use this prompt:- âThe problem continues - the picture shows the problem, not the solution.â
Why this works: This phrasing explicitly tells the AI to treat the screenshot as evidence of the issue, ensuring it analyzes the problem rather than assuming the outcome.
Another common issue is when the AI generates code changes that donât appear in the app or websiteâs UI. This can happen for several reasonsâdeployment issues, unsaved changes, or even hidden bugs in your project structure. Screenshots are especially useful here because they can visually capture the âbeforeâ and âafterâ states, helping the AI pinpoint what went wrong.
-
Take two screenshots:
- One showing the state of the UI before applying the changes.
- Another showing the UI after applying the changes (where the issue remains).
-
Include both screenshots in your prompt with an explanation like:
- âThese two screenshots show the UI before and after I implemented your suggested changes. The UI doesnât reflect the changes. Analyze the code to find the issue and fix it.â
-
Use targeted prompts to go deeper:
- âAnalyze the entire directory and look for problems that are preventing your changes from being implemented.â
- âFigure out why your changes are not reflecting what I see on the project.â
Why this works: Combining screenshots with prompts gives the AI both visual and written context, making it easier for it to identify underlying issues.
Screenshots arenât just for pinpointing UI problems. Here are some additional ways you can use screenshots to improve communication with your AI assistant:
-
Show Error Messages or Logs:
If your browser console or application log shows an error, take a screenshot of it and include a prompt like:- âThis error message appears in the browser console after clicking the submit button. Please identify the issue causing this error and provide a solution.â
-
Capture Unexpected Behavior in Live Environments:
When debugging deployed projects, take screenshots of any unexpected behavior and describe what should have happened instead:- âThis screenshot shows the mobile layout where the navigation menu is broken. It should collapse into a hamburger menu, but it stays expanded. Please fix this issue.â
-
Highlight Missing Elements in the UI:
If something is missing from your UI (e.g., an image, button, or text), use a screenshot to show its absence:- âThis screenshot shows the current UI. The âAdd to Cartâ button is missing below each product listing. Please analyze the code and make sure the button appears in the correct location.â
-
Comparing Designs:
Use screenshots of designs from similar apps or projects as inspiration and ask the AI to replicate elements from those designs:- âHereâs a screenshot of a competitorâs navbar. Make my navbar look like this, matching its style and responsiveness.â
Another frequent challenge with AI-assisted development is when the AI forgets prior edits or loses track of changes it has made. To combat this, you can ask the AI to create a custom change-tracking system within your project. This system will document the changes it makes, acting as a âmemoryâ to reference whenever something goes wrong.
- âCreate a system within the project that automatically keeps track of all changes made to the code, along with timestamps and descriptions of each change.â
This can include:
-
A Centralized Log File:
The AI can create a file (e.g.,changelog.txt
) where it automatically appends a description of each change it makes:- Example format for changelog entries:
Timestamp: 2025-01-06 11:30PM File Edited: main.js Description: Fixed the submit button functionality to redirect to the confirmation page.
- Example format for changelog entries:
-
Inline Code Comments:
Ask the AI to annotate its changes directly in the code:- Example:
// Added event listener to fix the submit button issue (2025-01-06) submitButton.addEventListener('click', handleSubmit);
- Example:
-
Version Numbers or Tags:
Have the AI embed version numbers or tags within the code so you can revert to specific points if needed:- Example prompt: âAdd version tags in comments at the top of each file, updating them every time a change is made.â
- It creates a single source of truth for all changes, helping you debug and roll back if necessary.
- It reduces frustration when the AI forgets past edits, as you can refer to the changelog or inline comments.
https://github.com/techcow2/cursor-agent-tracking
When working on a project, youâre bound to encounter issuesâwhether itâs crashes, unexpected behavior, or persistent errors. These moments can be frustrating, but thereâs a simple and effective way to guide the AI to handle these challenges carefully while avoiding known pitfalls. This section will show you how to craft thoughtful prompts that help the AI tackle problems effectively without introducing new ones.
Sometimes, when trying to fix an issue or add a new feature, you might find that the AI inadvertently repeats the same mistake or introduces new problems. This can happen because the AI isnât aware of past errors or isnât given enough context to avoid them. Without clear guidance, it might overlook critical details or create unintended side effects.
To prevent these issues, you can craft prompts that combine your task description with explicit instructions about what to avoid. This ensures the AI approaches the task with caution and focuses on solving the problem without causing further complications.
-
Revert to a Stable State (if needed):
- Before making changes, ensure your project is in a stable state where it functions correctly without the problematic additions or modifications.
-
Identify and Document the Problem:
- Gather all relevant information about the issue:
- Error messages from logs or consoles.
- Steps to reproduce the problem.
- Observed behavior versus expected behavior.
- Gather all relevant information about the issue:
-
Craft Your Prompt:
- Use this template to guide the AI:
Implement [task/feature] carefully while avoiding [specific problem/error]. Ensure all existing functionality remains intact.
- Examples:
- âAdd a feature that allows users to filter products by category on the homepage. Implement this feature carefully and avoid causing this error: TypeError: Cannot read property 'map' of undefined.â
- âFix the issue with the login button not redirecting users after submission. Ensure no other features are disrupted during this process.â
- Use this template to guide the AI:
-
Provide Context (if applicable):
- If you suspect certain parts of your code are related to the issue, include those details in your prompt:
The error might be caused by how the product list is being rendered. Please ensure any changes to this part of the code do not introduce new bugs.
- If you suspect certain parts of your code are related to the issue, include those details in your prompt:
-
Review and Test Output:
- Carefully review the AIâs suggestions before applying them.
- Test changes in a controlled environment to confirm they resolve the issue without introducing new problems.
- Error Awareness: Including specific problems or errors in your prompt helps the AI focus on avoiding known pitfalls.
- Precision: Phrases like âimplement carefullyâ signal that accuracy is critical.
- Proactive Debugging: This approach encourages the AI to analyze potential risks and produce solutions that are both effective and safe.
When building or enhancing a website or a web-based application, efficiency and performance are two critical factors. One effective way to achieve these goals is by using Content Delivery Network (CDN) libraries. This chapter will guide you through what a CDN library is, how it benefits your project, and introduce some of the most popular libraries like Tailwind CSS, Bootstrap, Material UI, and more. It will also provide helpful examples on how to prompt your AI assistant to integrate and use these librariesâespecially useful if youâre new to coding and rely on AI to simplify development tasks.
A Content Delivery Network (CDN) is a geographically distributed network of servers that delivers web contentâsuch as JavaScript libraries, CSS frameworks, or fontsâquickly to users based on their location. A CDN library refers to a version of a popular framework or tool (like Bootstrap or jQuery) that is hosted on these networks. Instead of downloading the files to your own server or development machine, you reference them directly from the CDN.
-
Faster Loading Times
CDNs serve files from servers located closest to your users, reducing the time it takes for your site to load. -
Reduced Bandwidth for Your Server
Offloading the library hosting to a CDN means your own server doesnât have to handle those file downloads. -
Ease of Implementation
You can add powerful libraries quicklyâoften with just one or two lines of code. -
Automatic Updates
CDNs typically host the latest versions of libraries, so you can easily stay up to date. -
Caching Advantages
If a user has already loaded the same library or framework from a CDN on another site, their browser may use the cached version, speeding up load times further.
If youâre brand new to coding and rely on AI for setting up your project, here are prompt examples you can use to have AI handle library integration:
-
Integrating a CSS Framework
Example Prompt:âUse the Bootstrap CDN in my existing HTML file. Make sure the navbar collapses on mobile. Place a footer at the bottom with a simple copyright notice.â
-
Migrating from One Framework to Another
Example Prompt:âReplace Tailwind CSS with Bootstrap via CDN in my project. Carefully convert existing Tailwind classes to Bootstrap equivalents to keep the same overall design.â
-
Adding a JavaScript Utility
Example Prompt:âInclude Lodash from a CDN in my index.html. Then, in my main.js file, demonstrate how to use Lodashâs debounce function for a text input.â
These prompts give the AI clarity on which library to use, how to use it (via a CDN), and any specific tasks or features you want implemented.
Below, youâll find popular libraries you can easily add to your project via a CDN. Each entry includes a description, usage notes, a sample snippet, and a prompt example for your AI.
-
Description:
A utility-first CSS framework that helps you build custom designs rapidly by using pre-defined classes in your HTML. -
Best For:
Developers who want granular control over the design without writing a lot of custom CSS. -
Sample Implementation:
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/tailwind.min.css" rel="stylesheet" >
-
AI Prompt Example:
âAdd Tailwind CSS to my project via a CDN. Create a homepage with a header, a simple hero section, and a footer. Use Tailwind classes to ensure a clean, modern design.â
-
Description:
One of the most widely used CSS frameworks for building responsive, mobile-first websites. It comes with pre-designed components like navbars, forms, modals, and more. -
Best For:
Beginners who want a quick and consistent design with minimal setup. -
Sample Implementation:
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel="stylesheet" > <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js" ></script>
-
AI Prompt Example:
âAdd the latest Bootstrap CDN links to my website. Create a responsive navbar with a dropdown for âServicesâ and a search bar on the right. Ensure it looks good on mobile devices.â
-
Description:
A React-based library that implements Googleâs Material Design system, offering ready-to-use components like buttons, cards, and dialogs. -
Best For:
React projects requiring a sleek, modern, and professional design aesthetic. -
Sample Implementation:
-
CDN for Material Icons:
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet" >
-
React Integration (via npm):
npm install @mui/material @emotion/react @emotion/styled
(While Material UI primarily recommends npm, you can still reference their icon fonts via CDN.)
-
CDN for Material Icons:
-
AI Prompt Example:
âIntegrate Material Icons from a CDN and use them in my React app. Build a simple card component for displaying products with a material-style âAdd to Cartâ button.â
-
Description:
A comprehensive icon library offering scalable vector icons that can be easily styled with CSS. -
Best For:
Quickly adding social media icons, nav icons, or any other iconography without creating custom SVGs. -
Sample Implementation:
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0-beta3/css/all.min.css" rel="stylesheet" >
-
AI Prompt Example:
âAdd Font Awesome to my HTML via CDN. Replace all placeholder icons in my navbar with Font Awesome icons for âHome,â âProfile,â and âCart.â Ensure they scale correctly on mobile.â
-
Description:
A classic JavaScript library known for simplifying DOM manipulation, event handling, and AJAX operations. -
Best For:
Legacy projects or beginners who want to do complex UI interactions without writing extensive vanilla JavaScript. -
Sample Implementation:
<script src="https://code.jquery.com/jquery-3.6.4.min.js" ></script>
-
AI Prompt Example:
âAdd jQuery via CDN to my index.html. Show me how to hide a div when a user clicks a button, and log a success message to the console.â
-
Description:
A JavaScript utility library that provides a wide range of functions for data manipulation, including deep cloning, debouncing, and more. -
Best For:
Simplifying complex operations on arrays, objects, and strings. -
Sample Implementation:
<script src="https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js" ></script>
-
AI Prompt Example:
âAdd Lodash from a CDN. Convert my existing for-loops to Lodash methods, and demonstrate how to debounce a search field.â
-
Description:
A CSS library offering pre-made animations (fade, bounce, slide, etc.) that you can apply to elements by adding specific classes. -
Best For:
Quickly adding animations to elements without writing custom CSS animations. -
Sample Implementation:
<link href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/4.1.1/animate.min.css" rel="stylesheet" >
-
AI Prompt Example:
âInclude Animate.css via CDN and apply a fade-in animation to my hero section on page load. Also apply a bounce effect to the âSign Up Nowâ button.â
-
Description:
A versatile JavaScript library for creating interactive charts and graphs. -
Best For:
Beginners who want a straightforward way to visualize data without diving into more complex libraries. -
Sample Implementation:
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
const ctx = document.getElementById('myChart').getContext('2d'); new Chart(ctx, { type: 'bar', data: { labels: ['Red', 'Blue', 'Yellow'], datasets: [{ label: '# of Votes', data: [12, 19, 3], backgroundColor: ['red', 'blue', 'yellow'] }] } });
-
AI Prompt Example:
âAdd Chart.js via a CDN and create a bar chart showing monthly sales data. Label the y-axis as âSalesâ and the x-axis with the months of the year.â
-
Identify Your Needs
Decide if you need help primarily with styling (CSS) or with JavaScript functionality. Some libraries (like Bootstrap or Tailwind) focus on design, while others (like jQuery or Lodash) focus on helping with JavaScript tasks. -
Check Compatibility
Ensure the library you choose works well with the tools or frameworks you already have in place. -
Look for Active Community and Documentation
Well-supported libraries typically have better tutorials, larger communities for troubleshooting, and frequent updates. -
Ask Your AI
If youâre still unsure which library to use, prompt your AI for advice:âWhich library is best for a beginner-friendly, highly customizable UI: Tailwind, Bootstrap, or Material UI?â
The AI can explain the pros and cons for each choice in the context of your project.
Artificial intelligence is an incredibly powerful tool for coding, but to get the best results, I've learned that you shouldnât rely solely on full automation. Many AI-powered IDEs, like GitHub Copilot, Cursor & WindSurf offer Agent Mode, which can take full control of problem-solving, but this isnât always the most effective approach. In many cases, taking a more interactive roleâby highlighting sections of your code, requesting edits, and guiding the AIâyields better results. The key to maximizing AIâs potential is striking the right balance between automation and human oversight.
Think of AI as a collaborative partner, not just a tool that runs on autopilot. At the start of this journey, I was under the impression that AI can independently produce flawless code without any guidance. The reality is that AI performs best when itâs working alongside human intuition and problem-solving skills. Even if you donât fully grasp every detail of your code, having a general sense of where an issue lies is often enough to steer the AI in the right direction.
Letting AI take full control of debugging or code generation might sound convenient, but it often leads to unnecessary complications. Hereâs why a guided approach usually delivers better results:
- Overgeneralization: The AI might scan your entire codebase instead of focusing on the specific issue, making unnecessary modifications.
- Unintended Code Changes: Rather than fine-tuning a particular function, the AI could refactor multiple files, creating new problems in the process.
- Longer Processing Time: Running extensive, unfocused fixes takes time and could slow down development, especially in larger projects.
- Lower Fix Rate: Because the AI doesnât inherently understand the intent behind your code, its ability to blindly resolve problems successfully hovers around 50%.
By isolating the problem and guiding the AI with context, you significantly improve the chances of getting a correct fix. This works because:
- You Provide Context: Your insights help the AI zero in on the right section of code.
- More Accurate Fixes: Highlighting specific code increases the AIâs fix success rate to 85% or more.
- Faster Results: The AI processes smaller chunks of code, leading to quicker responses.
- Better Control: Instead of relying on AI to interpret vague commands, you direct it toward meaningful solutions.
This method is especially valuable in complex projects, where scanning and modifying the entire codebase isnât practical. Even with minimal coding knowledge, you can still benefit from AI assistance by guiding it to relevant problem areas and making incremental improvements based on its suggestions.
Letâs say youâre working on a website and notice that new content sometimes appears and sometimes doesnât. After experimenting, you realize that refreshing the page cycles between showing and hiding content. Thatâs as far as your debugging has gone.
If you let an AI agent take over with a vague command like:
âFix the problem where content is sometimes there and sometimes not.â
- The AI scans the entire codebase looking for anything related to content display.
- It may focus on irrelevant sections because the description lacks specificity.
- It might modify CSS rules or JavaScript functions across different areas, creating unintended side effects.
- Since âACME Incorporatedâ (the problematic section) appears multiple times across the website, the AI might edit all instances, generating even more inconsistencies.
Instead, letâs say you highlight the specific section of the code related to "The History of ACME Incorporated" and right-click to request an edit.
- Now, AI only reviews the highlighted section instead of the entire codebase.
- You provide a focused prompt:
âFix the issue where this section sometimes disappears and reappears on refresh.â
- AI recognizes only the relevant code and provides a more precise fix.
- Because AI is solving a localized problem, the chance of success jumps from 50% to 85%+.
Using GitHub Copilot or a similar AI-powered IDE, follow these steps to maximize effectiveness:
- Observe how the issue occurs and try to narrow down which part of the code is involved.
- Check for browser console errors or debugging logs for clues.
- Run simple tests to confirm what might be causing the problem.
- Select only the portion of the code where you suspect the issue lies.
- Avoid highlighting entire files unless necessary, as it may lead to excessive modifications.
- In GitHub Copilot, right-click the selected code and choose one of the following:
- "Fix this code" if you know it's broken.
- "Explain why this isnât working" if you need AIâs analysis.
- đ "Look for the yellow stars after highlighting code" Instead of right-clicking, left-click on the yellow stars for more options to interact with your codebase.đ
Instead of a vague command, structure your request with specifics:
- â
Good Prompt:
âFix the issue where this content section sometimes disappears after refresh. Ensure it always displays correctly.â
- â Bad Prompt:
âFix this bug.â
- AI-generated fixes may not be perfect on the first attempt. Review changes carefully.
- If something looks off, refine your prompt and run the AI again.
- Keep interactions short and iterativeâsmall adjustments lead to better long-term results.
Alright, now that you've got a solid understanding of how to work with AI rather than just letting it work for you, itâs time to put it into practice. Try highlighting, right-clicking, and using targeted prompts in your next coding session. Youâll be amazed at how much quicker and more accurate your fixes become!
AI is here to help, but it thrives when you take the lead. The more you interact with it, the better it gets at assisting you. Think of it like a teammateâyou wouldnât expect a great outcome without communicating clearly. So, keep experimenting, stay engaged, and most importantly, have fun refining your AI-assisted coding workflow!
Chapter 7: Making the Most of Your AI Assistant â When to Use Agent Mode, Edit Mode, and Other Models
In this chapter, weâll explore Agent Mode vs. Edit Mode in your AI code assistant to help you choose the right approach for any situation. Weâll also cover how to avoid rate limits and which AI models to pick for different tasks.
Modern AI-powered IDEs often provide at least two ways to interact with your code. Letâs break down Agent Mode and Edit Mode so you know exactly when to pick one over the other.
Agent Mode is like firing up a mini âdeveloperâs brainâ in your IDE. It looks at your entire codebase, identifies where changes need to happen, and can implement those changes automatically. This can be an absolute game-changer when:
-
Youâre Adding a New Feature
- Example: Implementing a new user profile system that spans multiple files (database schema, backend routes, front-end forms).
-
Youâre Making Big Structural Changes
- Example: Migrating your project from vanilla CSS to Tailwind, or refactoring your entire component structure in React.
-
Youâve Tried Simple Fixes in Edit Mode, But Nothing Works
- Sometimes, the quick patches just donât resolve the deeper issueâAgent Mode can take a broader look.
-
Youâre Not Sure Which Files Need Editing
- If you only have a vague idea of what needs to change, let the agent handle the âdetective work.â
Key Advantage: Itâs a âbig-pictureâ approachâAgent Mode can (theoretically) see the forest, not just the trees.
Caution: It can be overkill for small tweaks. If you only need to edit one or two lines, Agent Mode might create unintended changes elsewhere.
Edit Mode is your best friend for targeted changes in one or two specific files. You tell your AI code assistant exactly where to look, highlight the lines of code, and request a fix or improvement. This mode works best when:
-
Making Small Updates
- Example: Changing a function name or updating an API endpoint in a single file.
-
Fixing Minor Bugs
- Example: Correcting a single line thatâs causing a console error, or adjusting a CSS property thatâs misaligned.
-
Tweaking Known Problem Areas
- Example: You know that
login.js
is causing issuesâjust highlight the relevant code block and let your AI assistant fix it.
- Example: You know that
-
Testing Quick Ideas
- Example: âWhat if we rename this variable?â or âLet me see how the AI suggests a simpler for-loop.â
Key Advantage: Precision. You dictate exactly where the AI looks, drastically cutting down on guesswork.
Caution: Not ideal for large-scale changes or multi-file implementations. Youâll spend too much time highlighting different sections when a bigger âAgent Modeâ pass might be more efficient.
Even though your AI code assistant is powerful, it can sometimes run into rate limitsâessentially usage caps or busy servers that prevent you from making unlimited requests. Hereâs how you can sidestep these limitations:
-
Use GPT4o for Inline Chat
- GPT4o is typically faster for single-file edits and smaller changes.
- It often has lower queue times and can be more accurate for brief tasks.
-
Save Busy Models for Larger Tasks
- If youâre performing a big overhaul (i.e., Agent Mode or multi-file updates), you might need a more advanced or specialized model. But for quick fixes, GPT4o can help you avoid spikes in usage on the bigger models.
-
Keep Requests Specific
- The more targeted your prompts, the fewer times you need to re-run them.
- This helps reduce overall usage, preventing you from hitting limits quickly.
-
Switch Models When Necessary
- If one model is giving you trouble or seems âbusy,â you can switch to a different model if your platform supports it.
- Donât be afraid to bounce between models if you sense youâre nearing usage caps.
Selecting the right AI model can make or break your productivity. Hereâs a quick reference:
-
GPT4o
- Use it for smaller changes and inline edits.
- Great for rewriting a single function, fixing a bug in a small snippet, or adjusting a CSS style.
-
Claude 3.5 Sonnet
- Your go-to model for most tasks.
- Balanced approachâhandles moderate to complex changes without too much overhead.
-
Claude 3.7 Sonnet
- For bigger challengesâsignificant refactors, multi-feature builds, or complicated debugging sessions.
- If 3.5 Sonnet isnât quite getting you there, try 3.7.
-
Claude 3.7 Sonnet (Thinking)
- Last resort for âmajor problem meltdown.â
- If everything else fails or youâre adding a massive set of features, this is your big gun.
-
Other Models
- Explore them if none of the above deliver the results you need, or if you have specialized tasks.
Letâs look at a few real-world tips for using your tools effectivelyâespecially if youâre still growing your coding confidence.
-
Prompt Clarity Is Everything
- Whether youâre in Agent or Edit Mode, always specify the problem, the desired outcome, and (if possible) what to avoid.
- Example: âAdd a user registration feature that stores data in the existing MongoDB database without changing my express.js routes or altering the front-end sign-in form.â
-
Test in Small Steps
- Even if you need a big set of changes, consider breaking them down into smaller tasks if possible.
- This lets you catch problems early and revert easily if something goes wrong.
-
Use Version Control Religiously
- Commit changes before letting your tools modify your code.
- This way, you always have a stable restore point.
-
Watch the Console or Logs
- Right after your code assistant modifies your code, open up your browser console (for front-end) or terminal logs (for back-end) to see if new errors appear.
- This immediate feedback helps you catch issues introduced by AI-driven changes.
-
Combine Human Intuition with AI
- Even if youâre a beginner, you can still sense when something in your code âfeels off.â
- If an AI-generated block looks overly complicated, ask it to simplify or explain itself rather than blindly trusting it.
Letâs walk through how you might apply what weâve covered:
- Step 1: Identify your goal (e.g., adding a new âuser reviewsâ section that spans backend and frontend).
- Step 2: Switch to Agent Mode in your IDE.
- Step 3: Describe the feature in detail, emphasizing youâre not sure which files need changing. Provide any relevant database schemas or existing code.
- Step 4: Let Agent Mode propose changes. Review them carefully.
- Step 5: Test thoroughly and commit once you confirm everything is working.
- Step 1: Identify the bug (e.g., a âforgot passwordâ link that doesnât work).
-
Step 2: Pinpoint the file or code snippet causing the issue (e.g., a small function in
Auth.js
). - Step 3: Highlight the relevant lines, open Edit Mode, and ask your AI coder to fix it.
- Step 4: Test locally to verify the fix.
- Step 5: Commit if successful; revert and try again if it fails.
Staring at a 1,200-line file can be overwhelming. Itâs unwieldy, itâs intimidating, and it can quickly turn your coding sessions into a slog. But the truth is, long, monolithic files arenât just hard on youâtheyâre also tough on your AI assistant. Bigger files consume more âbrainpowerâ (a.k.a. tokens or requests) and can push you closer to those dreaded rate limits. Thatâs where keeping your files under 500 lines comes in as a lifesaver.
In this chapter, weâll explore what has personally worked for me, why shorter files make life easier for both humans and AI, how to split towering monoliths into smaller modules, and how to keep track of the process in a low-stress way.
Imagine youâve got a single file for all your appâs logicâauthentication, user management, data handling, and UI interactions, all smushed together. Thatâs like stuffing an entire library into one book. Sure, everythingâs there, but finding what you need is a nightmare.
- Fewer lines = Less confusion
- Smaller chunks = Quicker scanning
When you split your code into logical sections, you can open exactly what you need without scrolling forever or losing your place.
AI coding assistants have a certain âbudgetâ of data they can process per request. If your file is gigantic, the AI can slow down, produce incomplete thoughts, or even time out/hit rate-limits. Shorter files mean the AI can home in on exactly what youâre asking it to edit or explainâleading to faster, more accurate help.
- Less overhead each time the AI tries to understand your code
- Reduced risk of hitting usage caps or rate limits
Bugs happen. But when they do, itâs so much easier to track them down if your code is nicely split into separate files. For example, you wonât have to hunt through 37 âscrollsâ of code to find that one function messing things up. Shorter files keep everything simpler and more approachable.
Letâs say youâve got examplefile.js
thatâs ballooned to 800 lines. Instead of soldiering through it alone, ask your AI assistant to help:
Prompt Example:
âMyexamplefile.js
file has grown way too large (over 500 lines). Break it into smaller modules:
auth.js
for login-related codeuserProfile.js
for user profile logicexamplefile.js
should import these new modules and remove any duplicate code.
Make sure everything still works smoothly after the split.â
With a prompt like that, youâre telling the AI exactly what you want (smaller files) and how youâd like it structured. The AI will usually:
- Extract code snippets into new files (e.g.,
auth.js
,userProfile.js
). - Insert the right
import
/export
statements orrequire/module.exports
lines to connect everything together. - Remove the redundant or duplicated code in your main file.
So, why 500 lines? Itâs not a magic rule, but itâs a handy benchmark that has been working for me. If your file regularly creeps above that, itâs a sign you might be mixing too many features or functionalities in one place.
- Section Overload: If you have front-end logic, back-end logic, utility functions, and database calls all in a single file, itâs time to split them up.
- Mixed Responsibilities: If you find yourself building a small âmini-appâ inside a larger file, thatâs a big hint you should modularize.
-
Ongoing Prompts: Whenever you see a file growing, you can say:
âAs you add code, keep
orders.js
below 500 lines. If it starts to exceed that, split out the logic into a new file calledorderHelpers.js
without breaking existing functionality.â
This keeps your AI on track while itâs generating code, so it doesnât just dump everything into one giant file.
Comments are like sticky notes for your future self (and for anyone else, including your AI). You can say:
âAdd inline comments to each function explaining what it does and why we need it.â
These mini-explanations help you (and the AI) quickly recall each functionâs purpose. Bonus points if you include a brief changelog or history section at the top of each file.
A directory structure like this:
âââ controllers
â âââ authController.js
â âââ userController.js
âââ models
â âââ userModel.js
â âââ productModel.js
âââ utils
â âââ helpers.js
â âââ validators.js
âââ index.js
Makes your life easier than one big folder with randomly named files. Plus, your AI has a hint about where new code should goâso it wonât accidentally cram everything into index.js
.
Before you let the AI do a big refactor, commit your code. That way, if something goes sideways, you can revert to a safe point. Pro tip: if youâre about to do something major, make a new branch, then merge it back into the main branch once youâve tested everything.
Big files + repeated AI queries = quick path to hitting your usage limit. Every time the AI has to read or write code, itâs using up requests. By:
- Keeping files small
- Focusing the AI on just one feature or file at a time
- Adding clarifying comments
âŚyou cut down on those wasted queries. You wonât have to keep feeding thousands of lines back to the AI, and your prompts can be more precise (âFix the function at line 35 in auth.js
â).
-
Splitting a Monolith
âSplit
main.js
intomainUI.js
(front-end UI code) andmainAPI.js
(API-related code). Update imports/exports so everything works the same.â -
Keeping Things Tidy from the Start
âCreate a new file for all database queries called
dbQueries.js
. Move related functions fromapp.js
there. Make sure we still importdbQueries.js
inapp.js
.â -
Adding Comments & Changelogs
âAs you create
auth.js
anduserProfile.js
, add inline comments explaining each function. Also create a changelog entry inCHANGELOG.md
summarizing the changes.â
Modularization is your friend. It keeps your code base from feeling like a never-ending labyrinth, makes debugging a lot simpler, and saves you from hitting AI rate limits. Remember:
- Shoot for under 500 lines per file, or at least keep that number in mind as a nudge toward splitting things up.
- Use clear, targeted prompts so the AI knows exactly how you want your code organized.
- Donât forget to add comments and documentation as you goâitâs an investment in your sanity later.
Once you adopt these practices, youâll notice fewer headaches, faster AI responses, and a better coding experience overall.
Selecting an AI coding assistant might feel like youâre trying to pin down a moving target. Whatâs âbestâ this week could change drastically next week, thanks to the constant stream of new updates and features. Still, there are core principles you can keep in mind as you search for an assistant that meets both your technical and practical needs. In this chapter, weâll explore everything from IDE integration and pricing structures to code privacy and context limits. By the end, youâll have a comprehensive framework for evaluating these rapidly evolving tools.
AI coding assistants are a hot new frontierâthink of it as the âwild westâ of software development. Tools like GitHub Copilot, Trae, Cursor, and Windsurf roll out improvements on a near-weekly basis, while new competitors pop up out of nowhere. Todayâs best performance might be overshadowed tomorrow by a model upgrade or a big jump in context window size.
âWhatâs bestâ can hinge on many factors: cost, user experience, advanced debugging, or support for specialized programming languages. One developer might value a slick user interface, while another cares more about large context windows and advanced refactoring.
- One-size-fits-all doesnât really apply because âbestâ heavily depends on your workflow and coding style.
You may have encountered platforms like Loveable, Bolt, or Replitâall of which try to simplify coding with a user-friendly, in-browser environment.
- No Install Needed: You can code on nearly any device with an internet connection.
- Quick Setup: Great for beginners or rapid prototypesâno fussing with IDE plugins or local configurations.
- Limited âLock-Inâ for Hobby Projects: If youâre just tinkering, these can be enough to get you up and running fast.
- Restricted File Access: You might not see the underlying project structure or get to manage your own version control system.
- Fewer Advanced Debugging Tools: In traditional IDEs, you can set breakpoints, step through code, or integrate with specialized frameworks. Browser-based assistants may not offer this flexibility.
- Potential Vendor Lock-In: If your entire codebase lives on a single platform, migrating away can be tricky if you grow beyond their constraints.
Who Should Use These?
- Hobbyists wanting a quick, zero-install environment.
- Beginners who arenât yet comfortable installing an entire development stack.
- Hackathon participants who value speed over full-fledged debugging capabilities.
If youâre comfortable with Visual Studio Code or JetBrains IDEs like IntelliJ, PyCharm, or WebStorm, AI plugins that integrate directly can be a huge benefit. You stay in a familiar environment, your normal debug workflow remains intact, and you have granular control over your project files.
- GitHub Copilot: Ties directly into VS Code or JetBrains, well-tested, broad language coverage.
- Cursor: A fork of VS Code with integrated AI, so you get most of VS Codeâs extensions and environment plus AI features.
- Windsurf: Similar approach, aiming for a seamless extension in mainstream editors.
- Trae: Often praised for its advanced code suggestions, currently free and unlimited (at the time of writing).
- Deep Debugging: Set breakpoints, watch variables, or attach external debuggers.
- No Surprises: Code refactors happen in your local environment. You can review changes before you commit them.
- Integration with Version Control: You can push and pull from GitHub or GitLab without leaving your IDE.
- Fewer Quirks: Many web-based coding assistants have constraints on file types or project size. Local IDEs tend to be more flexible.
The race to provide better pricing, more interactions, and bigger context windows means these details can change frequently. However, certain themes stay consistent.
- Cursor: 500 completions on Pro.
- Windsurf: 500 completions on Pro.
- Trae: Free and unlimited (for now).
- Copilot: 2,000 completions/month plus 50 chat messages on a free plan.
A âcompletionâ could mean a code snippet the AI produces, while a âmessageâ might be one full turn in a chat. This distinction mattersâbe sure to read the fine print so you know whether youâre at risk of running out of monthly allowances.
Most of these platforms offer some sort of free tier or trial. This is the best way to sample the AIâs capabilities before committing money. Watch out for:
- Trial duration (e.g., 7 days, 14 days, or a full month).
- Trial limitations (some may restrict advanced features or significantly reduce context window size).
This indicates how much text (code or instructions) the AI can handle at once:
- Larger context windows let you paste entire files or even multiple files in one query.
- Smaller windows force you to break your tasks into multiple steps, which can cost more completions or messages.
Look for an AI assistant with a context window that suits your project size. If youâre building large-scale apps, youâll want more space so the AI can âseeâ your entire codebase.
- API-Only: Usually requires hooking up an external language model (e.g., OpenAIâs GPT) and paying per token. This can get expensive if youâre generating code frequently.
- Managed Services: Tools like Copilot, Cursor, Trae, and Windsurf mediate communication with their back-end AI, often at reduced, predictable costs.
If you prefer direct control and have the budget, an API approach could work. However, for most developers, a managed service is simpler and often cheaper.
Some AI assistants upload parts of your code to the cloud for analysis. If youâre dealing with proprietary or sensitive data, itâs essential to check how your code is stored, whether itâs encrypted, and if the service keeps logs.
- Copilot tends to excel with JavaScript/TypeScript, Python, and other mainstream languages.
- Some tools offer specialized knowledge in less common languages (like Rust, Go, or Haskell), or niche frameworks (like Django, Next.js, or Svelte).
If youâre writing in a specialized domain (e.g., embedded systems), do a quick test in each tool to see which one has better comprehension.
Some assistants target solo developers, while others let you share and collaborate on AI prompts in real timeâpotentially helpful if youâre working in a company setting. Check for features like:
- Multi-user chat or code suggestions.
- Shared completions or enterprise license options.
- Integration with Slack or Microsoft Teams for status updates.
Itâs perfectly fine to have multiple AI assistants installed, especially if youâre using a mainstream IDE like VS Code:
- Try them side by side. You can toggle one assistant off and the other on to see which yields better results for your current project.
- Watch performance changes. If an update slows one assistant down, you can pivot to another until itâs fixed.
- Leverage free quotas. Some months you might run out of completions on one tool; simply switch to a free or cheaper alternative until your quota resets.
Itâs easy to get attached to a single AI coding assistant because youâve learned all its quirks, but staying flexible can pay off:
- You might find a new assistant that offers a bigger context window right when you need it most.
- Another tool might drop a major feature that perfectly matches your workflow (like better refactoring or integrated test generation).
- Pricing can suddenly jump or drop, making an alternative more cost-effective.
Donât be afraid to remain a âfree agentâ in the AI coding world, adopting a âuse what works best for the momentâ approach.
Below is a longer table of AI assistants, complete with links and support info. Always check the docs or contact support if youâre unsure about a plan or featureâthey may have updated details since the publication of this guide.
Tool | Website | Support Link | Notes |
---|---|---|---|
Cline | Visit | Support | A smaller, community-driven project with open-source roots. |
Cody.ai | Visit | Support | Integrates well with Sourcegraph for code search + indexing. |
Copilot | Visit | Support | Backed by Microsoft & GitHub, solid for mainstream languages. |
Cursor | Visit | Support | Fork of VS Code, rapidly adding new features. |
Gemini | Visit | Support | Google's foray; might integrate well with other Google services. |
Trae | Visit | Support | Currently unlimited and free, though that may change. |
WindSurf | Visit | Support | Another VS Code extension with a big push toward dev productivity. |
Loveable | Visit | Support | In-browser environment, extremely user-friendly. |
Replit | Visit | Support | Web-based IDE with broad community, but limited deep debugging. |
Bolt | Visit | Support | Focus on simplicity; advanced debugging can be restricted. |
-
Licensing and Intellectual Property
- Some assistants store your code for training or indexing. If youâre dealing with proprietary code, check the TOS carefully.
-
Data Residency
- If you must comply with data residency laws (e.g., GDPR, HIPAA), ensure your AI assistant can handle that or offers an on-premise option.
-
Language Model Updates
- Many of these tools rely on back-end LLMs (Large Language Models). When those LLMs update, features, accuracy, and context windows can change drastically overnight.
-
Evolving Community
- Larger communities often mean more tutorials, more ready-made prompts, and faster help when you run into issues. Tools like Copilot or Replit have big user bases, while smaller or newer tools may offer more direct developer feedback or specialized features.
So, is there a single best AI coding assistant? Probably notâat least not in the long term. Each assistant serves a different niche, and their features or pricing can pivot so fast it makes your head spin. The best strategy is to:
- Define your needs: Large codebases vs. small ones, advanced debugging vs. quick prototypes, etc.
- Research each assistantâs latest updates: Check context window size, pricing, and known bugs.
- Take advantage of free trials: Kick the tires on each tool before you commit.
- Stay flexible: Donât lock yourself into a single tool, especially if the competition starts offering a better deal.
Keep these tips in mind, and you'll be well-equipped to navigate the fast-evolving world of AI coding assistants with confidence. From weekend projects to enterprise-grade systems, there's an assistantâor even multipleâthat can help you write cleaner code, boost efficiency, and speed up development like never before.
For Tasks:
Click tags to check more tools for each tasksFor Jobs:
Alternative AI tools for Tips-Tricks-for-AI-Coder
Similar Open Source Tools

local_multimodal_ai_chat
Local Multimodal AI Chat is a hands-on project that teaches you how to build a multimodal chat application. It integrates different AI models to handle audio, images, and PDFs in a single chat interface. This project is perfect for anyone interested in AI and software development who wants to gain practical experience with these technologies.

WriteNow
Write Now is an all-in-one writing assistant that helps users elevate their text with features like proofreading, rewriting, friendly and professional tones, concise mode, and custom AI server configuration. It prioritizes user privacy and offers a Lite Edition for trial purposes. Users can install Write Now through the Havoc Store and configure AI server endpoints for enhanced functionality.

ai-dev-gallery
The AI Dev Gallery is an app designed to help Windows developers integrate AI capabilities within their own apps and projects. It contains over 25 interactive samples powered by local AI models, allows users to explore, download, and run models from Hugging Face and GitHub, and provides the ability to view the C# source code and export a standalone Visual Studio project for each sample. The app is open-source and welcomes contributions and suggestions from the community.

OpenCopilot
OpenCopilot allows you to have your own product's AI copilot. It integrates with your underlying APIs and can execute API calls whenever needed. It uses LLMs to determine if the user's request requires calling an API endpoint. Then, it decides which endpoint to call and passes the appropriate payload based on the given API definition.

claude-coder
Claude Coder is an AI-powered coding companion in the form of a VS Code extension that helps users transform ideas into code, convert designs into applications, debug intuitively, accelerate development with automation, and improve coding skills. It aims to bridge the gap between imagination and implementation, making coding accessible and efficient for developers of all skill levels.

copilot
OpenCopilot is a tool that allows users to create their own AI copilot for their products. It integrates with APIs to execute calls as needed, using LLMs to determine the appropriate endpoint and payload. Users can define API actions, validate schemas, and integrate a user-friendly chat bubble into their SaaS app. The tool is capable of calling APIs, transforming responses, and populating request fields based on context. It is not suitable for handling large APIs without JSON transformers. Users can teach the copilot via flows and embed it in their app with minimal code.

AutoGPT
AutoGPT is a revolutionary tool that empowers everyone to harness the power of AI. With AutoGPT, you can effortlessly build, test, and delegate tasks to AI agents, unlocking a world of possibilities. Our mission is to provide the tools you need to focus on what truly matters: innovation and creativity.

LLavaImageTagger
LLMImageIndexer is an intelligent image processing and indexing tool that leverages local AI to generate comprehensive metadata for your image collection. It uses advanced language models to analyze images and generate captions and keyword metadata. The tool offers features like intelligent image analysis, metadata enhancement, local processing, multi-format support, user-friendly GUI, GPU acceleration, cross-platform support, stop and start capability, and keyword post-processing. It operates directly on image file metadata, allowing users to manage files, add new files, and run the tool multiple times without reprocessing previously keyworded files. Installation instructions are provided for Windows, macOS, and Linux platforms, along with usage guidelines and configuration options.

M.I.L.E.S
M.I.L.E.S. (Machine Intelligent Language Enabled System) is a voice assistant powered by GPT-4 Turbo, offering a range of capabilities beyond existing assistants. With its advanced language understanding, M.I.L.E.S. provides accurate and efficient responses to user queries. It seamlessly integrates with smart home devices, Spotify, and offers real-time weather information. Additionally, M.I.L.E.S. possesses persistent memory, a built-in calculator, and multi-tasking abilities. Its realistic voice, accurate wake word detection, and internet browsing capabilities enhance the user experience. M.I.L.E.S. prioritizes user privacy by processing data locally, encrypting sensitive information, and adhering to strict data retention policies.

rustcrab
Rustcrab is a repository for Rust developers, offering resources, tools, and guides to enhance Rust programming skills. It is a Next.js application with Tailwind CSS and TypeScript, featuring real-time display of GitHub stars, light/dark mode toggling, integration with daily.dev, and social media links. Users can clone the repository, install dependencies, run the development server, build for production, and deploy to various platforms. Contributions are encouraged through opening issues or submitting pull requests.

kairon
Kairon is an open-source conversational digital transformation platform that helps build LLM-based digital assistants at scale. It provides a no-coding web interface for adapting, training, testing, and maintaining AI assistants. Kairon focuses on pre-processing data for chatbots, including question augmentation, knowledge graph generation, and post-processing metrics. It offers end-to-end lifecycle management, low-code/no-code interface, secure script injection, telemetry monitoring, chat client designer, analytics module, and real-time struggle analytics. Kairon is suitable for teams and individuals looking for an easy interface to create, train, test, and deploy digital assistants.

deepdoctection
**deep** doctection is a Python library that orchestrates document extraction and document layout analysis tasks using deep learning models. It does not implement models but enables you to build pipelines using highly acknowledged libraries for object detection, OCR and selected NLP tasks and provides an integrated framework for fine-tuning, evaluating and running models. For more specific text processing tasks use one of the many other great NLP libraries. **deep** doctection focuses on applications and is made for those who want to solve real world problems related to document extraction from PDFs or scans in various image formats. **deep** doctection provides model wrappers of supported libraries for various tasks to be integrated into pipelines. Its core function does not depend on any specific deep learning library. Selected models for the following tasks are currently supported: * Document layout analysis including table recognition in Tensorflow with **Tensorpack**, or PyTorch with **Detectron2**, * OCR with support of **Tesseract**, **DocTr** (Tensorflow and PyTorch implementations available) and a wrapper to an API for a commercial solution, * Text mining for native PDFs with **pdfplumber**, * Language detection with **fastText**, * Deskewing and rotating images with **jdeskew**. * Document and token classification with all LayoutLM models provided by the **Transformer library**. (Yes, you can use any LayoutLM-model with any of the provided OCR-or pdfplumber tools straight away!). * Table detection and table structure recognition with **table-transformer**. * There is a small dataset for token classification available and a lot of new tutorials to show, how to train and evaluate this dataset using LayoutLMv1, LayoutLMv2, LayoutXLM and LayoutLMv3. * Comprehensive configuration of **analyzer** like choosing different models, output parsing, OCR selection. Check this notebook or the docs for more infos. * Document layout analysis and table recognition now runs with **Torchscript** (CPU) as well and **Detectron2** is not required anymore for basic inference. * [**new**] More angle predictors for determining the rotation of a document based on **Tesseract** and **DocTr** (not contained in the built-in Analyzer). * [**new**] Token classification with **LiLT** via **transformers**. We have added a model wrapper for token classification with LiLT and added a some LiLT models to the model catalog that seem to look promising, especially if you want to train a model on non-english data. The training script for LayoutLM can be used for LiLT as well and we will be providing a notebook on how to train a model on a custom dataset soon. **deep** doctection provides on top of that methods for pre-processing inputs to models like cropping or resizing and to post-process results, like validating duplicate outputs, relating words to detected layout segments or ordering words into contiguous text. You will get an output in JSON format that you can customize even further by yourself. Have a look at the **introduction notebook** in the notebook repo for an easy start. Check the **release notes** for recent updates. **deep** doctection or its support libraries provide pre-trained models that are in most of the cases available at the **Hugging Face Model Hub** or that will be automatically downloaded once requested. For instance, you can find pre-trained object detection models from the Tensorpack or Detectron2 framework for coarse layout analysis, table cell detection and table recognition. Training is a substantial part to get pipelines ready on some specific domain, let it be document layout analysis, document classification or NER. **deep** doctection provides training scripts for models that are based on trainers developed from the library that hosts the model code. Moreover, **deep** doctection hosts code to some well established datasets like **Publaynet** that makes it easy to experiment. It also contains mappings from widely used data formats like COCO and it has a dataset framework (akin to **datasets** so that setting up training on a custom dataset becomes very easy. **This notebook** shows you how to do this. **deep** doctection comes equipped with a framework that allows you to evaluate predictions of a single or multiple models in a pipeline against some ground truth. Check again **here** how it is done. Having set up a pipeline it takes you a few lines of code to instantiate the pipeline and after a for loop all pages will be processed through the pipeline.

AgentPilot
Agent Pilot is an open source desktop app for creating, managing, and chatting with AI agents. It features multi-agent, branching chats with various providers through LiteLLM. Users can combine models from different providers, configure interactions, and run code using the built-in Open Interpreter. The tool allows users to create agents, manage chats, work with multi-agent workflows, branching workflows, context blocks, tools, and plugins. It also supports a code interpreter, scheduler, voice integration, and integration with various AI providers. Contributions to the project are welcome, and users can report known issues for improvement.

Local-Multimodal-AI-Chat
Local Multimodal AI Chat is a multimodal chat application that integrates various AI models to manage audio, images, and PDFs seamlessly within a single interface. It offers local model processing with Ollama for data privacy, integration with OpenAI API for broader AI capabilities, audio chatting with Whisper AI for accurate voice interpretation, and PDF chatting with Chroma DB for efficient PDF interactions. The application is designed for AI enthusiasts and developers seeking a comprehensive solution for multimodal AI technologies.

ComfyUIMini
ComfyUI Mini is a lightweight and mobile-friendly frontend designed to run ComfyUI workflows. It allows users to save workflows locally on their device or PC, easily import workflows, and view generation progress information. The tool requires ComfyUI to be installed on the PC and a modern browser with WebSocket support on the mobile device. Users can access the WebUI by running the app and connecting to the local address of the PC. ComfyUI Mini provides a simple and efficient way to manage workflows on mobile devices.