Launch HN: Skillsync (YC W26) – AI chat sessions made portable across agents
Thread
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
Launch HN: Skillsync (YC W26) – AI chat sessions made portable across agents
Loading the complete thread in the background. This saved snapshot is available now. Refresh
Unofficial Hacker News client; not affiliated with Y Combinator.
bcorigliano · · focus · HN ↗
Have you tested to see if there was any degradation happening when switching from one model to the other ? I mean some must be inevitable (maybe not!), but how much?
cat-whisperer · · focus · HN ↗
Nars088 · · focus · HN ↗
bcorigliano · · focus · HN ↗
pjm331 · · focus · HN ↗
Because syncing is trivially solved by just telling the agent to keep a work journal in markdown
cat-whisperer · · focus · HN ↗
The markdown journal is a fair way to do it, and a popular one. It has a couple of limits though.
A journal comes out of a prompt, so it records one way of looking at the session. Whatever that prompt didn't ask about is gone, and you usually find out which detail you needed much later. But the raw session still has it.
Being able to unify the schema lets you do things notes can't. You can continue a teammate's session on your own machine, or pick up a claude.ai conversation in Claude Code or Codex. The new agent gets the transcript: all the decisions in the trajectory, not a summary of it.
agentdev001 · · focus · HN ↗
Nars088 · · focus · HN ↗
general_reveal · · focus · HN ↗
deadbabe · · focus · HN ↗
general_reveal · · focus · HN ↗
cat-whisperer · · focus · HN ↗
cat-whisperer · · focus · HN ↗
The case I hit all the time is that an idea strikes on my commute, so I pull out my phone and start brainstorming in the Claude app. By the time I'm home I've done the research and chased down the tangents in that conversation. I open my laptop, use Skillsync to continue it in Claude Code, and start on the implementation.
podviaznikov · · focus · HN ↗
i do the same for apple notes and imessage. so very portable
<a href="https://apps.apple.com/us/app/exporter-notes-to-markdown/id6741618455?mt=12">https://apps.apple.com/us/app/exporter-notes-to-markdown/id6...
Narsagna · · focus · HN ↗
Also curious, do you further process the synced files on dropbox at all? how are you using them today?
podviaznikov · · focus · HN ↗
In my experience 95% of the session transcript I don't care about.
But there are some that I want to keep and maybe come back one month later.
Usually it's not even engineering-related. Maybe doing some research on visas, relocation.
But sometime also doing project research and sometime I want to come back to the same topic 2 month later(because new things came up) and I want my new agent to go and read prior conversation.
Narsagna · · focus · HN ↗
sdesol · · focus · HN ↗
<a href="https://github.com/gitsense/chat/tree/readme-scale-knowledge" rel="nofollow">https://github.com/gitsense/chat/tree/readme-scale-knowledge
Since I only support Pi natively, your solution will make it possible for codex/claude/etc. users to discover their conversations in my app. Will definitely include this as workaround for making codex, claude and other sessions available for discovery.
cat-whisperer · · focus · HN ↗
you can use that internally for this
sdesol · · focus · HN ↗
The only thing that seems to be missing is synching but I have a workaround for that but it won't be near realtime. For example, Pi changes are usually a second or less behind the Pi session log.
With txcript, it will probably be 5 seconds which is fine since the use case will mostly revolve around discovery, organizing and inspection.
marknutter · · focus · HN ↗
cat-whisperer · · focus · HN ↗
Nars088 · · focus · HN ↗
yoavfr · · focus · HN ↗
Narsagna · · focus · HN ↗
btown · · focus · HN ↗
And shipping sessions to colleagues is critical as well. My team relies heavily on a homegrown /resume-from-transcript skill that forces the harness to read every part of a Claude Code JSONL into context, letting us jump into colleagues' sessions.
What I thought this might be from the title, though, is a separate but related problem. The more semi-technical people in a company who start to use agentic systems, the more likely they are to create a vital playbook as a "skill" - but one not designed for easy tracking in a repository, that relies on local state, references their name repeatedly, references other skills and rules that they've developed for their own work, etc. Cleaning these, figuring out what should be promoted across a team, figuring out when someone makes an update whether that's something that deserves human review, syncing across people who haven't used git/pull requests before - it's a big challenge that's highly context-dependent. If skills are the place where guardrails exist, "who watches the watchmen?"
There's an interesting duality here, because a colleague being able to ship a session where they iterated on such a skill, to a colleague who can understand the context of their change, is incredibly valuable. But it still relies on a human in the loop, and doesn't scale as a result. I think there's a really interesting design space here.
cat-whisperer · · focus · HN ↗
Curious about your /resume skill. You said merge, so are you pulling a colleague's session into one you already have open? We only do the other direction today, where you reopen their session and continue from it. I'd love to know which one your team reaches for more.
btown · · focus · HN ↗
Certainly we're often resuming the session directly as a handoff, and it works for that, albeit with some context overhead for the markdown reads (though arguably we could just put the JSONL in the session folder and resume it natively). But if both you and a colleague have done independent investigation on the same project, it also makes "mind melds" possible, including their temporary scripts and unmerged changes - just begin the resumption within one's own session.
cat-whisperer · · focus · HN ↗
the mind meld thing sounds interesting, it sounds like git merge but for the transcripts
Narsagna · · focus · HN ↗
This is interesting, I've noticed some teams where the power users (usually the ones creating most of the skills) ship an additional skill to help users update their existing skills. This 'update' skill asks them questions to understand the user's context before actually updaing the skill
bhkdotdev · · focus · HN ↗
really excited to check out txcript… a shared translation layer could make my life sooo much easier!
sean-regents · · focus · HN ↗
bhkdotdev · · focus · HN ↗
Narsagna · · focus · HN ↗
swyx · · focus · HN ↗
Narsagna · · focus · HN ↗
voiceeh · · focus · HN ↗
I like to create a design with one model, sync it to another and iterate on it, then potentially go to another to apply/implement.
Narsagna · · focus · HN ↗
paultnylund · · focus · HN ↗
[dead]
solfox · · focus · HN ↗
cat-whisperer · · focus · HN ↗
cat-whisperer · · focus · HN ↗
solfox · · focus · HN ↗
solfox · · focus · HN ↗
cat-whisperer · · focus · HN ↗
sujee · · focus · HN ↗
Narsagna · · focus · HN ↗
bb-connor · · focus · HN ↗
Narsagna · · focus · HN ↗
bb-connor · · focus · HN ↗
bks · · focus · HN ↗
vira28 · · focus · HN ↗
1. It's tightly integrated with Pi 2. Creates context automatically from sessions 3. No external dependencies - sqlite and numpy
Narsagna · · focus · HN ↗
mmykola87 · · focus · HN ↗
I went with this approach because the transcript doesn't go into a file; it goes into another live session, which messes up its flow. We've already talked about this a bit when we were discussing "how to make reading Markdown cheaper." My answer was different: don't bring it over at all. The next session doesn't need to know how we got there—it just needs to know what we decided and what we've actually verified.
I don't think we've talked about this in this thread yet. Portability is all about a session that's already wrapped up. I often have two sessions open at the same time. One is building an endpoint, and the other is the screen that calls it. They need to check in with each other before either is complete, based on different assumptions. Moving the transcript around won't fix this. What's needed is a message, not a copy.
I made a small open-source layer for this: a mailbox and a "walkie-talkie" for sessions in the clients you've already opened - <a href="https://github.com/automatis-tools/agents-can-communicate" rel="nofollow">https://github.com/automatis-tools/agents-can-communicate. It doesn't transfer memory and doesn't detect discrepancies on its own. The session has to check for those things.
cat-whisperer · · focus · HN ↗
Porting is also cheap, since it's just a format conversion. Getting a new session back up to speed from notes usually isn't.
Concurrent sessions is a separate problem, and I agree that a message is the right shape there. Where portability helps is that different harnesses are good at different things, so you can start a task in one and move it to another that's better at the next part, without starting over.
mmykola87 · · focus · HN ↗
"Asking the old one again" works as long as it's alive. In my case it's exactly the opposite — either I've hit the limit, or I've switched to a different model. Then there's no one to ask, and whatever wasn't recorded is gone.
And "cheap" is measured from the wrong side. The conversion is cheap, but the transcript doesn't go into a file — it goes into a live session and spends its turn every time it moves.
mmykola87 · · focus · HN ↗
"Asking the old one again" works as long as it's alive. In my case it's exactly the opposite — either I've hit the limit, or I've switched to a different model. Then there's no one to ask, and whatever wasn't recorded is gone.
And "cheap" is measured from the wrong side. The conversion is cheap, but the transcript doesn't go into a file — it goes into a live session and spends its turn every time it
afaraha · · focus · HN ↗
[dead]
ccbakla · · focus · HN ↗
[dead]
joas_coder · · focus · HN ↗
Narsagna · · focus · HN ↗
Edwinat23 · · focus · HN ↗
Ishwar170695 · · focus · HN ↗
Two questions on the translation side: what gets dropped or normalized when a session crosses agents (reasoning blocks, tool-call IDs, provider-specific message types)? And is the output serialized deterministically, so the receiving agent's cache can warm up and stay warm after the move?
Narsagna · · focus · HN ↗
Would love to know more about the study, can you tell me how you went about it?
timwis · · focus · HN ↗
[deleted] · · focus · HN ↗
[deleted]
Narsagna · · focus · HN ↗
AsaVerren · · focus · HN ↗
[dead]