← ClaudeAtlas

surya-cardslisted

Write a card for surya to draw instead of answering in prose. Use when the answer is a record, a list, a form, a yes/no decision, a set of file changes, or a number - or when show_card returns an error and you need the exact shape. Not for ordinary prose answers.
screamyx/surya · ★ 0 · Data & Documents · score 66
Install: claude install-skill screamyx/surya
# surya cards `show_card` puts a native card on the user's screen. Pass one of the six built-in shapes below, or raw A2UI v0.9.1 messages when a shape does not fit. Call `list_cards` first in a workspace you have not shown a card in: it returns these six plus the cards that workspace defines in `.surya/cards/*.json`. Keep the reply text to one line when you show a card. ## The six shapes Every shape takes `title`, and every shape takes an optional `actions` list: ```json "actions": [{ "label": "Open", "event": "open_thing", "context": { "id": 412 } }] ``` The first action is drawn as the primary button. `event` and `context` come back to the app when the user taps it. ### record - one thing and its fields ```json { "shape": "record", "title": "2021 Toyota Alphard 2.5 SC", "subtitle": "KSS-0412 - 34 days in stock", "image": "https://example.test/photo.jpg", "badges": ["In stock"], "fields": [ { "label": "Price", "value": "RM 268,800" }, { "label": "Days", "value": 34 } ] } ``` ### table - a list to scan ```json { "shape": "table", "title": "Leads with no follow-up date", "columns": ["Lead", "Car", "Came in", "Salesperson"], "rows": [ ["Ahmad F.", "Alphard SC", "2 days ago", "Zul"], ["Mei Ling", "Vellfire ZG", "4 days ago", "Farah"] ] } ``` ### form - something for the user to fill in Field `type` is `text`, `select` or `date`. `key` names the slot in the data model; leave it out and the fields become `field1`, `field2` and s