HistoPilot update: UI, agent drawing, network cleanup and cloud2api
HistoPilot is now at 0.4.2. Recent work focused on the slide viewer, agent drawing and conversation recovery, alongside a cleanup of the network entry points. I have also started a new project: cloud2api.
A slide list that feels like a deck of cards
The left sidebar keeps slide thumbnails, but organizes them as cards instead of relying on an increasingly long list. The selected card comes forward, with transitions as the cards expand and collapse. The top toolbar stays on a single row so the slide has more room.
Here is a short recording of the actual interface:
The AI panel also received improvements to desktop dragging and its mobile layout. A new collaboration walkthrough shows how to share a slide with viewing or annotation permissions and an expiry, then review author-labelled annotations and notes attached to specific regions. The demonstration covers sharing, annotations and region notes.
Agent drawing: align the image before refining the contour
Slide identity and image revisions were aligned first. Image reads, region snapshots and contour refinement use stable slide IDs and consistent revision checks. This helps prevent confusion between slides with the same name and image-not-found failures. Acceptance checks look for snapshots actually obtained by the model, rather than treating a finished task as proof that it saw the image.
Natural-language requests can ask the agent to draw a tissue region. After the model produces a contour, GPU-backed SAM2 can attempt refinement. If the score is too low, the service is busy or the request times out, the original model contour is retained. AI annotations remain pending human review; generating or refining a contour is not a pathology conclusion.
Conversation recovery was improved as well: refreshing restores the current slide's existing conversation, switching slides preserves unsent drafts, and delayed initialization does not replace a new question with an older conversation.
Network cleanup: separate responsibilities and validation
The aim is to reduce unnecessary forwarding and give page delivery, application requests, file transfers and GPU computation clear paths. This personal site's pages and writing backend have moved into cloud-hosted containers. HistoPilot's slide services and computation still connect to the private network through controlled entry points.
Route changes start with a parallel entry point. Certificates, pages, backend requests and access from an independent external host are checked before switching and retiring the old path. Local network changes use an automatic rollback until a fresh remote connection has been verified.
Small packets measure latency; small files test both transfer directions with content checksums. A successful ping is not a file-transfer test, and a short burst is not sustained bandwidth. Health checks now have their own endpoint so internal probes do not inflate visitor-source statistics.
A new project: cloud2api
I have also started cloud2api, combining ideas from OpenList and GoAPI to improve the experience of using OpenList from an agent. The aim is a consistent interface for listing directories, reading files, uploading, downloading and requesting transfers, with explicit account scopes, permissions and path boundaries.
A local container MVP is in place. Local storage drivers simulate multiple drives while the gateway and permission flows are tested. Real cloud-drive integrations and the broader user experience still need further testing; I will cover that work separately.
Try the viewer at HistoPilot, or visit the HistoPilot project page for the project overview and repository link.
Comments
Leave a comment (email only, never shown)
No comments yet.