HNHacker News
TopNewBestAskShowJobs

the_mitsuhiko

16,536 karma · joined April 2, 2010

[ my public key: https://keybase.io/mitsuhiko; my proof: https://keybase.io/mitsuhiko/sigs/duqRDxeBy97WrpVMvLJQoVQXx4RaI6jX0_g8_89TtWw ]
submissionscomments
the_mitsuhiko··on Claude Code is leaking real email address as a User-Agent string in curl command
I have never ever seen this behavior. For something that shows up on hackernews I would expect at least someone to provide a way to reproduce it.
the_mitsuhiko··on Pi's Minimalism Is Its Advantage
Ctrl+P in most coding agents is bound to bringing up a command bar. You should be able to bind both hotkeys to the functionality you want already.
the_mitsuhiko··on Pi's Minimalism Is Its Advantage
I don’t know what the standard C-p and C-n bindings are. Could you share?

The startup time is a known issue and scales badly with extensions. We’re aware of it but fixing it is tricky.

the_mitsuhiko··on Pi's Minimalism Is Its Advantage
The problem with the XDG spec is that it now forces you to have different paths on different platforms. It just increases the complexity and at the end of the day unless all software adheres to it, you still end up with a “polluted HOME”.

I’m not a fan of config directories being in different locations on different platforms because it’s now one extra thing everyone needs to handle.

(Disclaimer: I work on Pi but I dislike XDG in all settings)

the_mitsuhiko··on New cars are getting 1.2cm longer and 0.5cm taller each year
I guess they might have said mid-size? But definitely not large SUV.
the_mitsuhiko··on New cars are getting 1.2cm longer and 0.5cm taller each year
The wild thing for me is that we just recently bought an XC90 and an American friend asked me how we're managing with three kids in a "compact SUV". That car is about as large as cars get over here for the most part.
the_mitsuhiko··on The session you cannot take with you
This path would only be viable for one or two providers and even does not work within one provider. For instance within OpenAI many of their models do not share the same capabilities. The complex of what you are suggesting is staggering considering the number of providers and models involved.
the_mitsuhiko··on The session you cannot take with you
> uhh openai just did a whole thing with arc agi where they very clearly explained that you will lose a lot of performance if you do, this isnt just about convenience

Which part are you referring to here? web_search coming from the provider hiding the tokens is just a convenience, there is no reason it can't be done with revealing information. Their compaction on the server might be amazing, but at least in principle it can be replicated on the client side as well and it could have been implemented in a way that reveals the new initial context.

the_mitsuhiko··on The session you cannot take with you
It definitely is getting quite challenging. That said, a lot of user experiences are modelled around retaining transcripts for longer than a few minutes. Every claw or chat based application creates a very real user experience desire of that conversation being something you can continue, even weeks after when the model might have gone away / have been replaced.

Now unless you fully want to commit yourself to one provider, you will on the application layer need to deal with this anyways in one form or another. We want to at least try to address most of this on the harness layer, regardless of how tricky that is.

the_mitsuhiko··on The session you cannot take with you
I guess the good aspect of sign in with Google is that it falls back nicely to sign-in via email which is very portable.
the_mitsuhiko··on The session you cannot take with you
> But in the background of the article is clearly the goal to make sessions portable, not just being able to inspect it. It's partially implied even in the title.

But not on the level that providers need to agree to a common format. Within Pi we are able to model portable sessions between providers even if they have provider specific APIs. For instance most models do not agree on how to do deferred tool loading. But they now have some support for that even if it diverges between models and APIs. So we can model deferred tool loading specifically for different providers without having to align on a common set of APIs or similar.

What cannot be made portable, is when information is sealed in the transcript or the information is entirely locked away on the provider's servers (store = true).

the_mitsuhiko··on The session you cannot take with you
The post for the most part is mine, so if something AI generated slipped into it it's on me. I can share with you what I did to write the article which I do for most of my writing.

I start out with what I want to talk about, and then make an initial draft. In this case I also had Sol research all current APIs so I don't have blind spots. I tend to also talk with an AI to see if the structure structure of the post makes sense. I then wrote all sections by hand but used Sol to fix up typos, grammar and punctuation. I also had Sol apply notes and patches that were provided via Discord.

If I find the earlier drafts I can check if it did some more outrageous edits, but I kinda doubt it did. I do know that my workflow of having an LLM to fixes up later is increasingly breaking on SOTA models and I have complained about this before. Normally I now carefully apply fixes that it proposes, but in this case I didn't due to time constraints.

I am curious though why it claims that this is AI generated.

the_mitsuhiko··on The session you cannot take with you
> What are features that only work with session transparency / ownership?

That's sort of the thing: very little (beyond switching models and providers). Obviously what you lose is a convenient way to run analytics over your own sessions if more and more information is not revealed to you, but before encrypted prompts that wasn't that much of an issue anyways.

the_mitsuhiko··on The session you cannot take with you
> providers increasingly diverging how they implement certain features and the APIs becoming quite complicated and provider specific

This post only talks about the former.

the_mitsuhiko··on The session you cannot take with you
But then on a cache miss you need to resend the whole thing. Cached websocket connections on OpenAI work like this in a way. But once you lose the connection then you lose that.

Your idea though is the core of the responses API with store where everything is stored on their side and then you append to it.

For the LLM there is no difference btw. In either way you need to locate the cache and use it.

the_mitsuhiko··on The session you cannot take with you
Hosted tools are absolutely fine. Hiding away their results in encrypted blobs less so.
the_mitsuhiko··on The session you cannot take with you
We were thinking about it while writing it. I think one thing at least open source harnesses can do is push back on using some of these conveniences from the providers. For instance the moment we start compromising on the idea of portable sessions, then there will be less pressure (For instance people asked for OpenAI server side compaction or built-in native web_search support).

The real thing that will take this alive though is people pushing back a bit against some of these newfangled APIs. Now that there is real competition from the new generation of Chinese models which have much fewer of those restrictions, I think there might be a moment.

the_mitsuhiko··on The session you cannot take with you
Because if you don't, you trash the KV cache and things get way more expensive. We wrote about it here: https://earendil.com/posts/prompt-caching/

Encrypted reasoning content is one of the things we keep as blobs in the transcript, even though we can only send it back to the original provider that created them, as otherwise we cannot keep caches live.

the_mitsuhiko··on The session you cannot take with you
We do not.
the_mitsuhiko··on Annoying and alarming things about OpenCode
> It's for using lsp to do things like symbol renames. It's cheaper to call an LSP server to do those kind of simple refactors than to spend tokens on the model doing it.

Is OpenCode pushing the LLM into doing these refactors via LSP? I found that making these refactors with ast-grep is quite efficient.

> It can also use LSP to build context without having to grep around a ton. You don't have to grep and hten pull lines and make guesses for a function. You just ask the LSP for it.

I guess I was not particularly successful with having the agent actually do that. I think what fff is attempting to do (with fuzzy expansion of slightly inaccurate greps) results in better results to me, but even that is debatable.

To be fair, we do not have evals for this today, but we're generally looking into token efficiency and how likely models are at using tools the right way, and we did not find a ton of evidence of LSP helping, even for finding data.

But I would love to see some sessions from people where they have success with LSP data for either refactoring or looking up, because this would be super useful to better understand out blind spots.

the_mitsuhiko··on Annoying and alarming things about OpenCode
> How you deal with LSP? One of the best things in OpenCode is LSP integration.

I would love to learn how LSP helps you. I did various basic evals with LSP and I did not find it to improve the agent performance at all. Maybe on newer models this gets better because they are now RLing with LSP in the context, but at least in the past having a commit hook that runs lints and typecheck at the end, is more token efficient than having every edit be injected extra LSP results. You are almost guaranteed to be wasting tokens since partial edits are unlikely going to result in type checks passing.

(Disclaimer: I work on Pi)

the_mitsuhiko··on Opinionated and easy Pi.dev configuration
We are going to address this. Not by loading the agent but by finding a way to provide official plugins or blessed plugins. But we’re not yet sure what the right approach is.
the_mitsuhiko··on Better Models: Worse Tools
> Suggestion for Pi: capitalize tool names for the Sonnet/Opus models (edit -> Edit, bash -> Bash, ...).

Pi is doing that.

the_mitsuhiko··on Better Models: Worse Tools
> When you use a Codex subscription in an agent like Pi or OpenCode, all the requests and tool call execution go through a sandbox owned by Codex app server

That is not the case. There are some subtle differences between subscription and regular inference API, but not to the degree that behaviors change entirely. In Pi we're doing tests against both API and subscription API regularly to see how they behave.

the_mitsuhiko··on Better Models: Worse Tools
That kills the KV cache unfortunately. In some models (Gemini) I also doesn’t work because there is a signature on the model messages.
the_mitsuhiko··on Better Models: Worse Tools
The problem with hyper targeting harnesses to models is that you end up locking yourself quite quickly into special behaviors of models, and you make your sessions non transferrable. That can be an acceptable trade-off and I know people who do that.
the_mitsuhiko··on The KIDS Act would require age checks to get online
Those things are still illegal for minors. I find that to be a rather weak argument.
the_mitsuhiko··on Pledging another $400k to the Zig software foundation
> Will money save you from heartache?

Probably yes. If you consider dating to be a numbers game, money moves things into your favor greatly and will give you a chance to move past.

> From the pain of losing a loved one?

Money will help greatly, because for many people getting over loss involves therapy which costs money.

> From being lonely?

Money for many people buys companionship.

> From having no respect from your peers?

Given that people associate respect with money excessively, probably yes as well.

> From losing your health to incurable cancer?

Your chances of surviving cancer greatly scale with money.

Sure, there are limits to it, but absolutely access to money is tremendously pushing things towards happiness. I think it would be disingenuous to pretend otherwise, at least in a capitalist society we all live in.

the_mitsuhiko··on Pledging another $400k to the Zig software foundation
Money can very much buy happiness. Most of the things that make you unhappy can be remedied with money. How much money you need to accomplish that depends though.
the_mitsuhiko··on Dangerous Technology for Americans Only
> If you’re arguing for abolishing the nation state or any concept the establishes right and obligations based on you being born there, then it would help your cause to not entangle it with racism.

Racism in one form or another is at the very core of the nation state. I disagree with the very notion that rights should be established with a razor that cuts by citizenship. It’s a blunt tool that might work to some degree but clearly the US shows that citizenship is an insufficient measurement to the positive contribution to GDP or entrepreneurship.

> It would also be more interesting if you can explain how you imagine we’d even get to a place where there is only a single earthly jurisdiction with free movement etc. now THAT would be an interesting thought experiment.

I don’t know the path to there. That does not mean I can’t see that as a goal worth perusing and to see things they take humanity further from that goal as a regression.

← PreviousPage 2 of 34Next →