Repository navigation
v0.2.8
- Repair artwork selection in Claude Desktop. The invisible artwork selection region now includes the accessibility text Desktop requires. This prevents Desktop from rejecting the region and showing a
Client hookserror over the creature. A clipped margin keeps the artwork's bottom and right edges clickable. Rarity, family, names and native controls keep their existing behavior. - Compatibility and privacy. Packs still contain two cards, with the second rare or better. API v1, rules 1, generator 2, minimum client, request fields, stored game fields and public player fields are unchanged. Website appearance, existing cards and released compatibility recordings are preserved.
Validation:
Validating plugin manifest: plugin\.claude-plugin\plugin.json
> types ./types/index.d.ts declares on $: nothing (no EngineInterface member)
> types ./types/index.d.ts declares state: spinlings.account, spinlings.me, spinlings.cards, spinlings.signals, spinlings.battle, spinlings.moments, spinlings.reveal, spinlings.social, spinlings.pane, spinlings.prefs, spinlings.presence, spinlings.privacy, spinlings.clock
Validating hooks: plugin\hooks\hooks.json
> ./register.tsx hooks: session.start, classic.SessionStart{source=clear|resume|fork}, session.end, turn.start, turn.step, turn.complete, agent.spawn, session.measure, session.compact, command.run{command=spin}, ui.close{id=spinlings}, ui.message{component=Pane, requestId=spinlings, module="hooks/ui/card-hit.tsx"}, ui.render{component=AbovePrompt}, ui.render{component=Pane, requestId=spinlings}, ui.render{component=Spinner}
> ./register.tsx calls: $.audio.play (via chime), $.clock.after, $.clock.every (via fxOf), $.clock.now (via fxOf), $.command.register, $.http.fetch (via fxOf), $.session.model (via modelOf), $.state.get, $.state.set, $.store.delete (via fxOf), $.store.get (via fxOf), $.store.keys (via fxOf), $.store.set (via fxOf), $.ui.blit (via blit), $.ui.close (via fxOf), $.ui.copy (via fxOf), $.ui.focus, $.ui.log (via fxOf, quietly), $.ui.open (via fxOf), $.ui.resolve, $.ui.status (via fxOf), $.ui.toast (via fxOf)
> ./register.tsx state writes: spinlings.account, spinlings.battle, spinlings.cards, spinlings.clock, spinlings.me, spinlings.moments, spinlings.pane, spinlings.prefs, spinlings.presence, spinlings.privacy, spinlings.reveal, spinlings.signals, spinlings.social
> ./register.tsx state reads: spinlings.account, spinlings.battle, spinlings.cards, spinlings.clock, spinlings.me, spinlings.moments, spinlings.pane, spinlings.prefs, spinlings.presence, spinlings.privacy, spinlings.reveal, spinlings.signals, spinlings.social
> ./register.tsx surface modules: hooks/ui/card-hit.tsx
√ Validation passed