sdesol
Joined 17 years ago
Joined 17 years ago
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.
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.
https://github.com/gitsense/pi-brains/tree/staging
The README is being worked on but the three videos should give you a good sense of what it can do. Pi is also what makes what I will demo in
https://github.com/gitsense/chat/tree/update-readme
possible. Since Pi exposes so much, it is very easy to build advanced tooling around it to help easily grok hundreds of tool calls to help you understand what they agent knows and what it has tried.
https://github.com/gitsense/chat/tree/update-readme
The README and latest version is still being worked on but I am hoping to have the latest release in place soon.
Claude Code's success is not due to the agent but because the model is considered the best for programming and is very heavily subsidized, compared to pay as you go API prices. Consumers and Enterprise are not really locked in and will go where it makes the most sense.
I think they have almost no loyalty by actual developers.
This is really a killer feature in my opinion. I'm currently working on pi brains extension that is designed to solve the compaction issue I have, which is, I don't know what the AI knows after compaction.
https://gitsense.com/screenshots/pi-inspect-overview.png
The screenshot shot above contains what I call a compaction capsule which contains all the messages/events at the point of compaction. The "Files" section in the right side panel shows me how many files were read/modified since compaction.
After compacting, I can easily tell what Pi use to know and use `/tree` to go back in time.
I still wouldn't compact more than 5 times before starting a new session since compaction messages persists in Pi.
/brains inspect
that will let you inspect a session and one of the features is the ability to review a compacted message like so:
https://gitsense.com/screenshots/inspect-pi-session-compacte...
https://gitsense.com/screenshots/inspect-pi-session-compacte...
https://gitsense.com/screenshots/inspect-pi-session-compacte...
With /compact in Pi, it creates a message that you can easily review and I am curious as to how '/protect' works.
One of the features that I am working on is to make it easy for agents to retrieve the exact message/event before compaction and I am curious if /protect is a deterministic process or if it is just instructions.
You can find a simple example at https://github.com/gitsense/gsc-rules-demos which shows how skills can be injected when needed. The example is:
"read the file at data/accounting/q1.ledger and explain what this ledger tracks"
If you know what the use needs to read or edit, you can inject knowledge/skills for the agent.
https://github.com/gitsense/gsc-rules-demos
One of the rules shows how you can inject information when you know an agent wants to read a certain file. So if you have skills related to a certain file/directory, you can inject the information when you need to.
So using the OPs visualization tool, if you find the agent wandering you could create a new rule to guide the agent and compare it with and with guidance.
I think the issue is, on the surface this is very much a "watch this non-deterministic actvity" but I can see the value in it. This is self promotional but I am working on a "Brain" (https://github.com/gitsense/pi-brains) for the Pi (https://github.com/earendil-works/pi) coding agent and I can actually see this being quite useful to quickly tell if you did make an agent smarter or not.
There is obviously different ways you can do this, but I can see being able to quickly visualize changes based on additional knowledge/constraints can be quite useful.
Honestly if the difference was marginal, I would move to Pi. I just tried layzpi and I had the agent write/compile a hello world in c and it required 20k in tokens. My minimal setup required 5.3k in tokens.
People will say the cost is minimal since this is cached but 15k is a lot since that needs to be reasoned by the LLM. I haven't looked at Claude Code but I read somewhere the system prompt is like 20k so I can see how Claude Code might have seem smarter as what you are working was probably addressed in the system prompt.
For me the bloat is not worth it since I am more interested in the LLM being able to reason better.
https://github.com/gitsense/pi-brains
which is designed around the Pi philosophy of less is better by focusing on ondemand context/guidance. I won't bloat the context unless the LLM needs to do something I know it will need better guidance with. I have a demo repo for this at https://github.com/gitsense/gsc-rules-demos
One of the examples is, if I know the agent is reading a specific file, I will inject additional context. So if the agent never needs to do something in a certain file or directory, I don't need to pollute the context with "what it may need to know".
This is actually the reason for me wanting to create what I call "Brain checkpoints". After chatting with the agent and letting it do its thing for discovery, I needed an easy way to understand what it knows at any given point. What files it has read, what tool calls were made and so forth.
Checkpoints work extremely well in Pi since you can create a branch, and have the agent generate a checkpoint based on what has changed since the last checkpoint and this information will not pollute the main conversation but you benefit from the token caching.