Hacker News new | past | comments | ask | show | jobs | submit login
I Use Cline for AI Engineering (addyo.substack.com)
100 points by lobo_tuerto 1 day ago | hide | past | favorite | 30 comments





Cline is a great alternative to Cursor if you are not willing to switch over to another (forked) editor.

However, it's baffling to me that by default Cline ignores `pkg/` folder that is common in Go projects. Check this issue - https://github.com/cline/cline/issues/927

I think Aider, Cline and Cursor are not far from each other in their capabilities.

Cursor was probably the most polished experience - especially their `Tab` autocomplete. However, I found this effect really interesting. Let's say 7 out of 10 times it's seamless, but there's uncanny valley of autocomplete in 3 out of 10 times - where you expect it to the right thing, but it either predicts wrong or takes a tad too long, 'breaking the immersion', if you will.

Cline does the job really well if you're in VSCode. Aider is great if you prefer terminal based workflow, or do not want to commit to another editor. Another great thing in Aider is `//AI!` comment. You can start Aider in --watch-files mode and it will watch for instructions, and start executing them. This way I can work in my preferred editor and have a tool in the background performing AI tasks.

A slight edge in my case goes to Aider for this reason, despite the fact that it does not feel quite as polished as the other two.


How has no one pointed out the business models are different and result in entirely different products and priorities?

Cursor charges $20/mo. So their whole business model revolves around using less than $20 worth of tokens and cheaper models.

With Cline, you pay for your own tokens and can choose whichever model you like (uses openrouter).

You can see the difference almost immediately - everything is better. Context management isn’t kneecapped, edits are comprehensive, cline reads every file that is relevant into the context, and the UX is intuitive.

I was personally blown away — I tell it to do something complex in an existing codebase, and Cline just… does it? And it asks me questions along the way to make sure it’s in alignment with my goals.

This is how AI copilots should feel to use. Cline is by far the best option I’ve tried so far.

Note: I will say though - your token usage WILL be high. I have easily spent over $20 in a single night coding with cline. That’s the entire monthly subscription cost of Cursor spent within an evening.

But it’s easily worth it. Hell, I’ll spend $100 in an hour on tokens if it makes me more productive.


In their tool comparison section they did mention aider, but they did not mention RA.Aid (https://github.com/ai-christianson/RA.Aid, Apache 2.0), which puts aider in a full-fledged development agent.

The experience of using RA.Aid is similar to using cline (or Devin), but it is a simple CLI command and not tied to any IDE. In fact you could use tmux, nvim, and RA.Aid in chat mode and have an experience that is not far off from vscode with cline, cursor, or windsurf.


How does this differ from Aider's Architect mode? I never used it, but it was my impression that that was the same idea.

The architect mode in aider is basically a one step planning pass.

RA.Aid goes way beyond this. It will run fuzzy find, ripgrep, directory listings, web search via, ask the expert (reasoning models), multiple task planning, execution of shell commands and unit tests, etc.

It essentially follows a research, planning, and implementation cycle much like a human SWE would.


As far as I can tell aider does most, if not all, of that as well. The only things I'm unsure about is "ask the expert" and "multiple task planning"

Have you tried windsrf ( or more questionable trae)? They seem to be cursor alternative. I would like to know how they would compare it terms of UX to cline and cursor which I did not use. Aider is nice but I didn't try it much because I used it with Gemini API and aider complained about more deviating too much. So probably not aider fault.

I’m he other reason I really like cursors whenever there is a type/linter issue you can fix it with composer and it usually works well.

Working on adding a .clineignore file to fix this right now!

Tangential but “AI Engineering” to me implies working on AI not with AI. The article has some solid examples of how this tool is helpful but if we’re going to start to call all software development done with LLM assistance AI Engineering, “AI” and “Engineering” are going to lose all meaning even faster than they currently are.

Agreed, "I use Cline as my AI coding assistant" would be preferable, eventually morphing into just "I use Cline as my assistant." No need to mention "AI" once it becomes common in the same way as we don't say "I use vim as my software editor" or "I use VScode as my computer code editor".

Cline/Roo & Aider with Claude 3.5 are certainly at the better end of AI programming assistance from my (limited!) experience.

I do still find it the same 50/50 experience (maybe now closer to 65/45) as GH Copilot: sometimes whimsically amazing, sometimes horrifically confounding. And that’s not even with some of the complex code at work, that’s with some private, single file Python projects.


How do you combine roo code with aider?

Roo Code (formerly Roo Cline) is a fork of Cline that gets rave reviews https://github.com/RooVetGit/Roo-Code

anywhere i can read the reasonings behind the fork? are they taking a different approach on any topic?

I was briefly involved in a GitHub discussion that happened before the fork but I think I got the reason why. People (well, me in that case) were asking for more fine grained options like per project instructions, and the Cline author's response was basically "not interested in the added complexity but feel free to fork". So somebody did.

Although I think Cline did eventually add some of the requested options.


I find RooCodes mode selector drop down inferior to the way Cline handles Plan and Act mode.

"Cline approaches AI assistance differently from most tools in the market" - I'm not trying to be a hater but I feel like it isn't that much different from cursor?

You may be interested in watching this from the same author where he compares various IDEs including Cursor.

Addy Osmani – The Ai-Assisted Developer Workflow: Build Faster and Smarter Today https://www.youtube.com/watch?v=SpKtpW9TGF0


From time to time, I use Cline for coding. In my perspective, LLM models are not yet there to grasp all of the complexities of designing any larger modular system. But what in my oppinion Cline does quite well is performing some mundane tasks that otherwise require me coding them. I tell it what I want to do, where it should be located and then I try to provide as much context in the initial prompt as I can in the form of files and class names that it should take inspiration from. If I do this properly, then its able to perform the coding task sufficiently.

My problem with it is when its editing large files (1000+ LOC), because requests consume very many tokens AND it has problems editing the code so that sometimes its cycling infinitely trying to modify two lines in some function.

Anyway, I like it more then Cursor, because of the controll I have over the model and in some subjective ways its more pleasing to me seeing it "work".


I'm surprised you have to provide that much context manually. Cline (as do many other agentic coding assistants) uses treesitter to build a syntax tree and uses that to navigate the codebase and request which files it should open and load into the context. That in my experience works quite well. On the other hand, every codebase is different, so YMMV.

It's definitely not great when it comes to giant files. Now granted, those are an antipattern anyway, but sometimes it's just the way it is, and having diffing fail and then waiting while it burns through tokens trying to write out the whole file is a little meh.

That being said, I'm quite impressed overall. When it works it's quite wonderful, how it will use function calling to effectively hand VSCode control over to the LLM for spawning commands, reading the diagnostics etc.

For the multi-taskers among us, this is gold. Kicking off small atomic feature implementations in parallel, and hopping between Cline sessions is.. interesting.


When you use it and it works, how detailed your prompts are? AND how much code can it output in one go?

I prefer it to work on fairly narrowly scoped atomic features, and for those my prompts are quite minimal, or I do a short back and forth in "plan" mode until I'm happy with the plan.

For more complex features I do spec out the prompt in more detail.

The model can output at most 4k tokens I believe, though I think Cline will just run inference in multiple steps, so that shouldn't be a limitation that matters (only time/cost wise).


I've been using Windsurf's 'agent' type feature and liking it.

It's great when it can self-check with tests and type-checking. Like 'upgrade this lib to the latest version and ensure everything is working after'.

Occasionally, it will go off target, get distracted by parse errors, rewrite some areas unnecessarily, and forget the original goal. It can end up yak shaving, and losing context of the task.

Agents also suck at global knowledge and will reimplement something that exists somewhere else, for instance. I have a rule: "Do information gathering first," which encourages it to look around a bit before making changes.

Seeing the context size like cline does is useful. I think the flow action credits in windsurf are a custom model for applying changes, and hence the separation.


Cline is great, it has been my go-to ever since it came out. Works out far cheaper than Cursor would for my relatively low amount of coding, and I get to use all the stuff in VS I would anyway.

Cline has completely changed my approach to engineering. There's been this notion of "vibes" coding which I really resonate with -- using something like Cline I've found it performs better when I set a direction and let Cline fill in the gaps/details.

Can one of these use "requests" via copilot? There are multiple usable models in copilot but it’s quite limited feature wise.

Yupp, similar to what Karpathy is talking about on X (Twitter) lately.

Which he calls "vibe coding".

Link for the curious: https://x.com/karpathy/status/1886192184808149383


Vibe coding? I hope this stupidity do not proliferate. But knowing the level of intelligence of the core AI audience...



Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: