In practice, that's seldom possible. Hell, we're on hacker news - it's a tossup as to whether most of the companies you hear about on here will still be operating in two years. If those are the companies you work for, you'd be best off with an agent.
The companies on hackernews are not the majority of companies that employ developers though...
This is why we're creating matchist (matchist.com).
In London's finance industry, there are actually many contractors often working on temporary projects of a similar lifespan to a hollywood movie. The difference is the relationship with the third-party recruiters. The companies and their HR departments will still be around afterwards, similar to the point you're making here, so they establish long-term relationships with the agencies/recruiters. Thus, the agency is biased towards serving the needs of the company. It sees the company as its client, not the contractor. A lot of the time they can get exclusive assignments this way, and with many exclusive assignments around, it's not in the interest of a developer to be tied exclusively to any one agency.
In programming..."
In programming it's exactly the same. No one works in a software project for decades, and most gigs last 1-2 years until the programmer either moves to management or takes another project.
In Hollywood, people often need to create a reasonable sized business, have it work for a year or two, and then it falls apart. That's what a film is. Most people's engagement in this business is only a few months, maybe less, no matter how well they do. Therefore you need to get hired again, and again, and again.
In programming, there is a hope and expectation that people will last substantially longer in a job. Therefore you do not need to go back to the hiring well nearly as often, so it does not make sense for you to have a dedicated person who is going to regularly try to hire you out.