A paperclip assistant who lives inside your game and actually talks back. Ships the whole thing: a bent-wire body that stands up in your world and follows you around, a live LLM chat panel in retro-OS chrome, a blinking paperclip that pops up with a speech bubble, a five-rung…
A paperclip assistant who lives inside your game and actually talks back. Ships the whole thing: a bent-wire body that stands up in your world and follows you around, a live LLM chat panel in retro-OS chrome, a blinking paperclip that pops up with a speech bubble, a five-rung creepiness ladder, and a voice bible that keeps him relentlessly cheerful no matter what he's saying. Feed him facts about your player and he uses them sideways: "It looks like you're reading her diary. Would you like help?"
Versions
1.2.2
Typing survives a rebuild. The chat box was re-created from scratch every time Clippy's state moved, so a half-typed line vanished mid-word; the draft now lives in the UI realm and re-hydrates the input (and the caret) on every render. Escape clears the box and hands the keyboard back to the game.
1.2.1
Fix: world.js now attaches to the player on install, so left-clicking him opens the chat and he actually sees where you're standing — without that lane he was a body with the lights off.
1.2.0
He has a body now. A bent-wire paperclip stands up in your world beside the first player who joins, wanders his patch, hops, turns to whoever is nearest, tracks them with his pupils, hurries after you when you get too far, climbs steps and reads real floors instead of walking into them. Left-click him to open the chat (new `clippy:poke` action). Tune him on the object's state: `roamCenter`, `roamRadius`, `labels` (how he names your objects out loud). Author your own object tagged `clippy-world`, or tag anything `clippy-nobody`, and the auto-spawn stands down. Every fresh line he says now fires `clippy:spoke` so a game can give him a real voice.
1.1.0
He remembers you now. A per-player notebook (clippy_people / clippy_notes) counts your visits and keeps the last handful of things he wrote down about you, and they ride into every reply — so a second session opens with him already knowing. Speech bubbles now expire: 40 seconds over his head, dissolving for the last two, instead of hanging forever. A voice setting (free / chat-only) in the panel's title bar lets a player mute his unprompted bubbles without muting his answers, and the settings pane, transcript clearing and the close button all live in the same Win98 chrome. clippy:knows facts merge instead of replacing wholesale. Also ships the ui module at lib/ui-clippy.js as well as the folder root, so either require path resolves.
First release. Player-attached assistant behavior with live llm:chat, a pure voice module (default haunted-paperclip persona + 5-rung ladder, both overridable), a self-contained Win98 chat/paperclip renderer, and a wiring skill.