[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6H5Z05XR8C5033TMK2E9QNP":3,"skill-same:01M6H5Z05XR8C5033TMK2E9QNP":81},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":58,"ownerDescription":59,"updatedAt":60,"install":61,"resources":74},"01M6H5Z05XR8C5033TMK2E9QNP","find-research",null,"Use when a design question is about people rather than tools — attention, engagement, flow, tension and relaxation, animation timing, interaction, perceived performance — and you want a reputable answer instead of a guess (\"is there research on this?\", \"what do the authorities say about loading spinners?\", the user has adjusted one feature many times). Finds, vets, archives and records research as a provenance-backed record in the project's research\u002F store, in the same format as the shared library at $TILLANDSIAS_RESEARCH. Works for any project in a Tillandsias forge.","8007342\u002Ftillandsias","8007342","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F162944123?v=4","01M6H5SFAKAV1RH8MY0C9X2SZZ","Tlatoāni","01M6H5SFF2BBW9HGM3DXAZ84TG",6,"MIT","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Ffind-research\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"find research","research","find","project","for","answer","loading","timing","records","as","feature","attention","design","shared","do","use","question","Animation","forge","performance","2026-11-10 10:12:30",false,"---\nname: find-research\ndescription: Use when a design question is about people rather than tools — attention, engagement, flow, tension and relaxation, animation timing, interaction, perceived performance — and you want a reputable answer instead of a guess (\"is there research on this?\", \"what do the authorities say about loading spinners?\", the user has adjusted one feature many times). Finds, vets, archives and records research as a provenance-backed record in the project's research\u002F store, in the same format as the shared library at $TILLANDSIAS_RESEARCH. Works for any project in a Tillandsias forge.\nlicense: MIT\nmetadata:\n  author: tillandsias\n  trace: spec:research-records\n---\n\n# Find research\n\nA research record is a claim with a complete provenance chain. This skill\nproduces one. It never produces a citation from memory.\n\n## 1. Check what already exists\n\nBefore searching the web, read the indexes. Both are one line per record,\n`\u003Cdomain>\u002F\u003Cslug>.md — \u003Cclaim> [\u003Cauthority>, \u003Cstrength>]`:\n\n```bash\nlib=\"${TILLANDSIAS_RESEARCH:-\u002Fopt\u002Fresearch}\"\n[ -f \"$lib\u002FINDEX.md\" ] || lib=\"research\"      # hollow mount: fall back to the repo copy\nrg -i '\u003Ctopic words>' \"$lib\u002FINDEX.md\" research\u002FINDEX.md 2>\u002Fdev\u002Fnull\n```\n\nIf a shared record answers the question, pull it in (step 5) and stop. If a\nproject record answers it, cite it (`\u002Fcite-research`) and stop.\n\n## 2. State the question as a claim to test\n\nWrite one sentence of the form \"people \u003Cdo\u002Fperceive\u002Fprefer> X when Y\". That\nsentence is what you search for and what the record's `claim:` will be, if\nthe research supports it. If the research contradicts it, the record says\nwhat the research found, not what you hoped.\n\n## 3. Search reputable sources first\n\nIn this order, stopping when you have a primary source:\n\n1. Peer-reviewed work: a DOI you can resolve. Verify the metadata through\n   the Crossref record, `https:\u002F\u002Fapi.crossref.org\u002Fworks\u002F\u003Cdoi>` (free, no\n   key), and keep the title, authors, venue and year it returns.\n2. Standards bodies (W3C\u002FWAI, ISO, IETF) and platform guidelines\n   (Apple HIG, Material, GNOME HIG) for rules that are rules rather than\n   findings.\n3. Primary industry reports (a scanned original, a company's own research\n   page) — grade `primary-report`.\n4. Recognised expert syntheses (Nielsen Norman Group, Baymard, a\n   university lab's summary) — grade `expert-secondary`.\n5. Everything else is `tertiary` and is not enough on its own; use it only\n   to find the primary.\n\nOpen the source. Read the part that supports the claim. If a page refuses\n(403\u002F429\u002F502), try its archived copy; if neither opens, **drop it** and say so\nin your reply. The ranitas field report lost half its citations to exactly\nthis rot, which is why `archived:` is mandatory.\n\n## 4. Archive and cache\n\n- Get a snapshot URL: `https:\u002F\u002Fweb.archive.org\u002Fweb\u002F2026\u002F\u003Curl>` redirects to\n  the latest snapshot (read the `Location` header with `curl -sI`). If none\n  exists, request one with `https:\u002F\u002Fweb.archive.org\u002Fsave\u002F\u003Curl>` and record\n  `archived: pending: save requested \u003Cdate>` until it appears.\n- Anything you download to read (PDF, page text) goes to the cache layer,\n  never into the workspace or the record:\n  `${XDG_CACHE_HOME:-$HOME\u002F.cache}\u002Ftillandsias\u002Fresearch\u002F`. Check free space\n  first (`df -h` on that path); a full disk is the most common overnight\n  forge crash.\n\n## 5. Write the record\n\nCopy the template and fill every field; the validator refuses a record that\nis missing any of them:\n\n```bash\nmkdir -p research\u002F\u003Cdomain>\ncp \"${TILLANDSIAS_RESEARCH:-research}\u002FTEMPLATE.md\" research\u002F\u003Cdomain>\u002F\u003Cslug-author-year>.md\n```\n\n- `claim:` one sentence, the primary's wording, not a popular round number.\n- `authority:` primary \u002F secondary \u002F tertiary — who said it.\n- `strength:` established \u002F replicated \u002F single-study \u002F expert-opinion \u002F\n  contested — how well it is known. A single paper is `single-study` even\n  when famous.\n- `## Evidence`: what was measured, on whom, and where the claim is weaker\n  than it sounds. Where your design choice goes beyond the research (an\n  exact duration, a colour), say that it is a design choice.\n- `origin: project`.\n\nTo pull a shared record into the project instead, copy it from the library\nand change `origin: shared` to `origin: project`; keep everything else.\n\nThen validate and regenerate the project index:\n\n```bash\n# In a Tillandsias checkout the validator is scripts\u002Flua\u002Fcheck-research-records.lua;\n# in any other project, use the copy the forge ships beside this skill.\nv=scripts\u002Flua\u002Fcheck-research-records.lua\n[ -f \"$v\" ] || v=\"$(dirname \"$(readlink -f \"${BASH_SOURCE[0]:-\u002Fopt\u002Fskills\u002Ffind-research\u002FSKILL.md}\")\")\u002Fcheck-research-records.lua\"\nTILLANDSIAS_RESEARCH_DIR=research tillandsias-plan script run \"$v\" -- --write-index\n```\n\nThe last line must be `ok:research-records:...`. A `violation:` line names\nthe record, the field and the reason. (Order 1809-apd2 replaces this with a\n`research pull` \u002F validate command.)\n\n## 6. Report in one paragraph\n\nSay what you looked for, which records you added or pulled in (by\n`research:\u003Cid>`), which candidates you dropped and why, and what the research\nsays that changes the design. Then cite it in the work with\n`\u002Fcite-research`.\n","# Find research\n\nA research record is a claim with a complete provenance chain. This skill\nproduces one. It never produces a citation from memory.\n\n## 1. Check what already exists\n\nBefore searching the web, read the indexes. Both are one line per record,\n`\u003Cdomain>\u002F\u003Cslug>.md — \u003Cclaim> [\u003Cauthority>, \u003Cstrength>]`:\n\n```bash\nlib=\"${TILLANDSIAS_RESEARCH:-\u002Fopt\u002Fresearch}\"\n[ -f \"$lib\u002FINDEX.md\" ] || lib=\"research\"      # hollow mount: fall back to the repo copy\nrg -i '\u003Ctopic words>' \"$lib\u002FINDEX.md\" research\u002FINDEX.md 2>\u002Fdev\u002Fnull\n```\n\nIf a shared record answers the question, pull it in (step 5) and stop. If a\nproject record answers it, cite it (`\u002Fcite-research`) and stop.\n\n## 2. State the question as a claim to test\n\nWrite one sentence of the form \"people \u003Cdo\u002Fperceive\u002Fprefer> X when Y\". That\nsentence is what you search for and what the record's `claim:` will be, if\nthe research supports it. If the research contradicts it, the record says\nwhat the research found, not what you hoped.\n\n## 3. Search reputable sources first\n\nIn this order, stopping when you have a primary source:\n\n1. Peer-reviewed work: a DOI you can resolve. Verify the metadata through\n   the Crossref record, `https:\u002F\u002Fapi.crossref.org\u002Fworks\u002F\u003Cdoi>` (free, no\n   key), and keep the title, authors, venue and year it returns.\n2. Standards bodies (W3C\u002FWAI, ISO, IETF) and platform guidelines\n   (Apple HIG, Material, GNOME HIG) for rules that are rules rather than\n   findings.\n3. Primary industry reports (a scanned original, a company's own research\n   page) — grade `primary-report`.\n4. Recognised expert syntheses (Nielsen Norman Group, Baymard, a\n   university lab's summary) — grade `expert-secondary`.\n5. Everything else is `tertiary` and is not enough on its own; use it only\n   to find the primary.\n\nOpen the source. Read the part that supports the claim. If a page refuses\n(403\u002F429\u002F502), try its archived copy; if neither opens, **drop it** and say so\nin your reply. The ranitas field report lost half its citations to exactly\nthis rot, which is why `archived:` is mandatory.\n\n## 4. Archive and cache\n\n- Get a snapshot URL: `https:\u002F\u002Fweb.archive.org\u002Fweb\u002F2026\u002F\u003Curl>` redirects to\n  the latest snapshot (read the `Location` header with `curl -sI`). If none\n  exists, request one with `https:\u002F\u002Fweb.archive.org\u002Fsave\u002F\u003Curl>` and record\n  `archived: pending: save requested \u003Cdate>` until it appears.\n- Anything you download to read (PDF, page text) goes to the cache layer,\n  never into the workspace or the record:\n  `${XDG_CACHE_HOME:-$HOME\u002F.cache}\u002Ftillandsias\u002Fresearch\u002F`. Check free space\n  first (`df -h` on that path); a full disk is the most common overnight\n  forge crash.\n\n## 5. Write the record\n\nCopy the template and fill every field; the validator refuses a record that\nis missing any of them:\n\n```bash\nmkdir -p research\u002F\u003Cdomain>\ncp \"${TILLANDSIAS_RESEARCH:-research}\u002FTEMPLATE.md\" research\u002F\u003Cdomain>\u002F\u003Cslug-author-year>.md\n```\n\n- `claim:` one sentence, the primary's wording, not a popular round number.\n- `authority:` primary \u002F secondary \u002F tertiary — who said it.\n- `strength:` established \u002F replicated \u002F single-study \u002F expert-opinion \u002F\n  contested — how well it is known. A single paper is `single-study` even\n  when famous.\n- `## Evidence`: what was measured, on whom, and where the claim is weaker\n  than it sounds. Where your design choice goes beyond the research (an\n  exact duration, a colour), say that it is a design choice.\n- `origin: project`.\n\nTo pull a shared record into the project instead, copy it from the library\nand change `origin: shared` to `origin: project`; keep everything else.\n\nThen validate and regenerate the project index:\n\n```bash\n# In a Tillandsias checkout the validator is scripts\u002Flua\u002Fcheck-research-records.lua;\n# in any other project, use the copy the forge ships beside this skill.\nv=scripts\u002Flua\u002Fcheck-research-records.lua\n[ -f \"$v\" ] || v=\"$(dirname \"$(readlink -f \"${BASH_SOURCE[0]:-\u002Fopt\u002Fskills\u002Ffind-research\u002FSKILL.md}\")\")\u002Fcheck-research-records.lua\"\nTILLANDSIAS_RESEARCH_DIR=research tillandsias-plan script run \"$v\" -- --write-index\n```\n\nThe last line must be `ok:research-records:...`. A `violation:` line names\nthe record, the field and the reason. (Order 1809-apd2 replaces this with a\n`research pull` \u002F validate command.)\n\n## 6. Report in one paragraph\n\nSay what you looked for, which records you added or pulled in (by\n`research:\u003Cid>`), which candidates you dropped and why, and what the research\nsays that changes the design. Then cite it in the work with\n`\u002Fcite-research`.\n",{"name":5,"license":15,"metadata":49,"description":7},{"trace":50,"author":51},"spec:research-records","tillandsias","main","bf1668fd1df1b3363b826d083f060234cd2e1d0c","skills\u002Ffind-research",0,"https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias","https:\u002F\u002Fgithub.com\u002F8007342","https:\u002F\u002Ftlatoani.net","I used to be a software engineer.","2026-11-15 01:25:25",{"source":8,"skillName":5,"commands":62,"prompt":72,"zipAvailable":73},[63,66,69],{"tool":64,"command":65},"npx","npx skills add 8007342\u002Ftillandsias --skill find-research",{"tool":67,"command":68},"bunx","bunx skills add 8007342\u002Ftillandsias --skill find-research",{"tool":70,"command":71},"pnpm","pnpm dlx skills add 8007342\u002Ftillandsias --skill find-research","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Ffind-research\u002FSKILL.md",true,[75],{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"check-research-records.lua","OTHER","其他",8536,"https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Ffind-research\u002Fcheck-research-records.lua",[82,104,137,156,178,190],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":44},"01M6H60M8Y949GNECQVKAYFNH3","start-a-new-project","Use when the user wants to start a new project, asks how to begin, or is in an empty or nearly empty repository (\"how do I start?\", \"I want to build an app\", \"help me set up a new project\"). Guides them, in plain language, to describe the app as specs first (spec-driven development with OpenSpec), recommends Flutter (and the Flame engine for games and graphics), and sets up specs, a plan folder for longer work, and a README. Works for any project, not only Tillandsias.","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fstart-a-new-project\u002FSKILL.md",[],[89,90,27,91,92,93,94,95,39,96,97,98,38,33,99,100,101,102,103,28],"start","new project","start a new project","development","SET","flutter","README","only","up","openspec","app","how to","flame","games","spec-driven",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":108,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":117,"publishedAt":44},"01M6H60EXYDCPSD1QGC89HM0ZC","smoke-curl-install-and-test-e2e","Clean-room end-to-end smoke test of a PUBLISHED release. Curl-installs the latest release binary from GitHub, does a full `podman system reset --force`, runs `tillandsias --debug --init` from a pristine state, and (if init is clean) launches `tillandsias --cloud 8007342\u002Ftillandsias --opencode` with ONE short fixed smoke prompt (run the credential guard, reply with a fixed token; never the \u002Fmeta-orchestration loop, 1941-smkp). Every issue observed — by this skill's agent during install\u002Freset\u002Finit, or by the agent's one turn inside the forge — is filed as a plan\u002Fissues work packet for later pickup by \u002Fadvance-work-from-plan.","GPL-3.0","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fsmoke-curl-install-and-test-e2e\u002FSKILL.md",[111,114],{"categoryNo":112,"categoryName":113,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":115,"categoryName":116,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[118,119,120,121,122,123,124,125,126,127,42,128,129,130,131,132,133,134,135,136],"test","e2e","curl","install","smoke","smoke curl install and test e2e","orchestration","init","podman","issues","Meta","loop","plan","work","short","never","clean","end","reset",{"skillNo":138,"name":139,"nameZh":6,"description":140,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":143,"publishedAt":44},"01M6H609K8BAW74S59C68QRKC3","project-discipline","How THIS project wants its branches and pushes shaped — read its branch-discipline level (0 push to main freely; 1 integration branch + pull requests; 2 work refs into the integration branch), the drift between what it declares and what its history shows, which hooks it has installed, how to raise it, and the work format each hook refusal asks for. Every refusal that says \"use \u002Fproject-discipline for instructions\" resolves here. Works for any project in a Tillandsias forge, not only Tillandsias.","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fproject-discipline\u002FSKILL.md",[],[144,27,145,146,147,148,42,149,131,150,39,96,151,52,152,153,100,154,155,28],"discipline","project discipline","pull requests","pull","push","history","branch","hooks","branches","drift","requests","which",{"skillNo":157,"name":158,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":108,"licenseFileUrl":6,"sourceHtmlUrl":160,"categories":161,"keywords":162,"publishedAt":44},"01M6H605G5NAKPP1RE10T3716W","probe-macos-tray-on-windows","Daily cross-platform health probe — compiles the macos-tray crate from the local Windows host. Expected to succeed as a stub (the crate is fully cfg-gated for non-macOS); a build failure here means a shared module or crate broke for everyone. Files structured findings to plan\u002Fissues\u002Fprobe-macos-tray-on-windows-findings-\u003CDATE>.md.","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fprobe-macos-tray-on-windows\u002FSKILL.md",[],[163,164,165,166,127,167,168,130,169,170,171,172,173,37,174,175,33,176,28,177],"macos","windows","probe","probe macos tray on windows","CFG","health","daily","files","build","gated","local","platform","module","host","expected",{"skillNo":179,"name":180,"nameZh":6,"description":181,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":108,"licenseFileUrl":6,"sourceHtmlUrl":182,"categories":183,"keywords":184,"publishedAt":44},"01M6H603KPFQJNC7WWD6X5Q4AA","multihost-orchestration","Compatibility alias for the canonical coordinate-multihost-work skill.","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fmultihost-orchestration\u002FSKILL.md",[],[124,185,131,186,187,188,189,28],"multihost orchestration","compatibility","coordinate","alias","canonical",{"skillNo":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":108,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":198,"publishedAt":44},"01M6H5ZXRBC66CSA5N28HP2BY7","meta-orchestration","Host-aware Tillandsias recurring runtime loop: sync remote state, drain claimable plan work, run eligible e2e smoke gates, coordinate integrations on mutable Linux, release when warranted, update plan, commit, and push before exit.","https:\u002F\u002Fgithub.com\u002F8007342\u002Ftillandsias\u002Fblob\u002Fmain\u002Fskills\u002Fmeta-orchestration\u002FSKILL.md",[196,197],{"categoryNo":112,"categoryName":113,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":115,"categoryName":116,"taxonomyType":21,"taxonomyTypeDesc":22},[124,128,199,200,201,202,203,204,205,148,129,130,206,131,207,122,208,187,176,209],"meta orchestration","commit","sync","run","update","release","state","integrations","recurring","exit","remote"]