Releases: perara/klipp
Releases 路 perara/klipp
Release list
Klipp 0.6.1
Fixed
klipp/canvas's types accept real MapLibre maps and three.js raycasters in projects that
compile withexactOptionalPropertyTypes. The example app compiles that way now, so it stays
so.
Install
# npm 12 and later: allow URL dependencies for this project first
npm config set allow-remote root --location=project
npm install -D https://github.com/perara/klipp/releases/download/v0.6.1/klipp-0.6.1.tgzKlipp 0.6.0
Added
- Pointing at what a canvas draws.
klipp/canvashasregisterCanvasand adapters for
MapLibre GL (maplibreTargets: the topmost rendered feature, by layer and id, property values
only when named inreveal) and three.js (threeTargets: the nearest visible object, by its
name down the scene graph, instanced meshes by instance). The chat, the agent's context, the
ticket and links all name the feature or object; an ID names it with@key. A canvas can
carry several adapters, asked newest first, such as a three.js layer drawn over a MapLibre
map, whose hand-set camera the three.js adapter aims through. - react-three-fiber objects (
<mesh>,<group>and the like) carry where they are written, as
userData.klipp, so pointing at a 3D object leads to its JSX. - Web components: Klipp points into open shadow roots, an ID steps into one with
s, and the
app's own JSX rendered into a shadow root keeps its ID and is found by links. - The example app has a page with a MapLibre map, a react-three-fiber scene and web components.
Fixed
- A message typed while Klipp was still finishing its answer was dropped; it is now shown at
once and sent as soon as the answer is done. - In files that use react-three-fiber, DOM elements (
<div>,<button>, custom elements)
weren't stamped; only three.js tags are left alone now. - Backslash-escaped text in Klipp's replies shows without the backslashes.
Install
# npm 12 and later: allow URL dependencies for this project first
npm config set allow-remote root --location=project
npm install -D https://github.com/perara/klipp/releases/download/v0.6.0/klipp-0.6.0.tgzKlipp 0.5.0
Security
- The chat answers only a browser on this machine at
localhost. A page that rebinds its own
name to127.0.0.1, a tunnel and a reverse proxy were let in before, since they connect from
loopback; now the address the request was sent to, and any forwarding headers, count too. chat.allowRemotenow pairs each device once, with a code the dev server prints, instead of
letting anyone on the network in.- Codex is confined to the repository: a permission profile lets it read only the repository,
the system files programs need and its own install, and the commands it runs get only a core
environment. It could read the whole disk before. - Agents no longer get the dev server's whole environment, only what they need to start and log
in.chat.passEnvpasses more by name. - Claude is also denied
.envrc,.dev.vars, Terraform variables and state, keystores,
.pypirc,.netrc,.pgpass,credentials*.jsonand.git/config. - The server files only a ticket the agent proposed in the conversation, once, while it waits on
the user; the browser adds only the page details. Before, it filed any title and body. - A GitHub token goes only to its own host: github.com tokens to github.com, Enterprise tokens
to their host, nothing to GitLab or other remotes. Filed issue addresses must behttps. - Console errors are sent by name and message; objects logged with them are no longer
serialized into the agent's context. - The page context is escaped so it can't close its own tag, and the agent is told to treat it
as data. - Claude's MCP token moved from the command line to a file only you can read.
- A crafted
?klipp=link can no longer put a link in Klipp's bubble.
Added
chat.allowRemotepairing,chat.pairingCodefor a fixed code,chat.passEnvand
chat.maxRuns(four agent runs at once by default).- The ticket card shows the whole ticket and the page details that will be added, before
anyone files it. - HTTP/2 (
server.https) support: requests carry:authorityinstead ofHost. - Files with decorators or import attributes (
withand the olderassert) are stamped; a
file that can't be parsed is reported instead of silently skipped. vite build --ssrwithKLIPP=1stamps the server bundle too, so hydrated markup keeps its
IDs.
Changed
- The Vite peer range is
^5.4.12 || ^6.0.9 || ^7 || ^8: the first releases of 5 and 6 that
check theHostheader. - Escape closes Klipp when focus is in Klipp; on the page, Escape is the page's again.
- On Windows the chat says to run the dev server in WSL, instead of that it can't find the
agent. vite previewserves the chat only for a build made with Klipp.- The manifest no longer includes the absolute repository root.
git statusfor the manifest runs in the background, so a large repository doesn't stall the
dev server.- Self-hosted remotes on a custom port keep the port in permalinks.
Fixed
- A page-tool call that threw left the agent waiting for 30 minutes; it now gets an error.
- A ticket card left over from a turn that ended no longer takes the user's next message.
- A message sent while the previous one was still collecting its element's details could run
alongside it. - Malformed lines from an agent, or malformed MCP requests, could crash the dev server.
- The MCP bridge and running agents are stopped when the dev server closes or restarts.
- More of Klipp's events stop at its own root: pointer and mouse moves, touch moves,
composition, drag and drop.
Install
# npm 12 and later: allow URL dependencies for this project first
npm config set allow-remote root --location=project
npm install -D https://github.com/perara/klipp/releases/download/v0.5.0/klipp-0.5.0.tgzKlipp 0.4.0
Klipp turns what testers notice into actionable tickets: bugs, feature requests, suggestions and questions, each with what its type needs. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.4.0/klipp-0.4.0.tgzKlipp 0.3.1
File references from the agent read as path:line. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.3.1/klipp-0.3.1.tgzKlipp 0.3.0
Klipp's brain is now your own Claude Code or Codex, run in the background by the dev server with your login. No API keys. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.3.0/klipp-0.3.0.tgzKlipp 0.2.2
Klipp's key, pointer and focus events no longer reach the page's own listeners. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.2.2/klipp-0.2.2.tgzKlipp 0.2.1
No install scripts in the package. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.2.1/klipp-0.2.1.tgzKlipp 0.2.0
An animated paperclip you chat with. Install with:
npm install -D https://github.com/perara/klipp/releases/download/v0.2.0/klipp-0.2.0.tgzSee the README for setup (ANTHROPIC_API_KEY for the dev server, gh auth login for filing issues).