[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6FNN6SE7XKVPATMHFTWHA68":3,"skill-same:01M6FNN6SE7XKVPATMHFTWHA68":69},{"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":26,"publishedAt":40,"linkOnly":41,"markdownContent":42,"markdownBody":43,"frontMatter":44,"refName":45,"commitSha":46,"skillDirectory":47,"forksCount":48,"repositoryHtmlUrl":49,"repositoryHomepageUrl":50,"ownerHtmlUrl":51,"ownerBlogUrl":52,"ownerDescription":53,"updatedAt":54,"install":55,"resources":68},"01M6FNN6SE7XKVPATMHFTWHA68","research",null,"Research external tools\u002Fcompetitors for a topic and write findings to BRAINSTORM.md (project topics) or ~\u002F.clade\u002Fresearch\u002F (personal topics). Use when user says \"\u002Fresearch [topic]\".","shenxingy\u002FClade","shenxingy","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F89829751?v=4","01M6CQXHTV3WQZJMG0JXD93MEK","Xingyu (Alex) Shen","01M6CQXHYCTGPJ5HD8Z7MD4Q5P",10,"MIT","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fresearch\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[5,27,28,29,30,31,32,33,34,35,36,37,38,39],"personal","Tools","competitors","brainstorm","write","user","use","project","external tools","for","topics","research external","when","2026-11-10 10:12:30",false,"---\nname: research\ndescription: \"Research external tools\u002Fcompetitors for a topic and write findings to BRAINSTORM.md (project topics) or ~\u002F.clade\u002Fresearch\u002F (personal topics). Use when user says \\\"\u002Fresearch [topic]\\\".\"\n---\n\n# Clade for Codex\n\nThis workflow runs **directly in Codex**. Do not launch the `claude` CLI or\ndelegate the workflow to Clade's MCP bridge.\n\nCodex compatibility rules:\n\n- Plugin skills are namespaced. Invoke this workflow explicitly as\n  `$clade:research`; a bare `$name` does not select the installed Clade plugin.\n- Read the nearest `AGENTS.md` files for repository instructions. If a project\n  has only `CLAUDE.md`, treat it as legacy project guidance and read it too.\n- Store new Clade working state under `.clade\u002F` (or `~\u002F.clade\u002F` for personal\n  state). Existing legacy Claude state may be read for migration, but do not\n  create new vendor-specific state.\n- A `\u002Fskill-name` reference means the corresponding Codex\n  `$clade:skill-name` plugin skill, or the same workflow invoked naturally when\n  explicit skill invocation is not available.\n- Use Codex web, file, shell, image, and subagent capabilities when the source\n  workflow names a vendor-specific tool. If a capability is unavailable, use\n  the documented fallback instead of spawning another agent CLI.\n- Paths such as `\u003Cplugin-root>\u002F...` are relative to the installed Clade plugin\n  containing this `SKILL.md`; resolve that root before invoking a helper.\n\n## Canonical Clade workflow\n\nResearch external tools\u002Fcompetitors\u002Fapproaches for a given topic and write a structured analysis to BRAINSTORM.md (project-scoped topics) or `~\u002F.clade\u002Fresearch\u002F` (personal topics — see Rules).\n\n## Retrieval routing (run first)\n\nLoad the installed `web-search` skill when available. It selects native tools\nfor small lookups and TinyFish for bulk\u002Frecurring collection or unavailable\nnative retrieval, with excerpts, bounded output, private caching and explicit\nfailure handoffs. Keep analysis in this session; do not launch another model\nCLI. Provider documentation tools and user-selected\u002Fexcluded providers take\nprecedence. If the skill is absent, use available native search and page tools.\n\nStart with at most 5 targeted searches. Expand only when an unresolved evidence\ngap justifies it. One empty search is not proof that live research is unavailable:\nrevise the query or use the configured fallback. If all available retrieval\npaths fail, label current facts unverified; do not pass training knowledge off\nas live research.\n\n## Steps\n\n0. **FIRST: Determine if topic is personal or project-scoped** (see Personal Topic Detection below)\n   - If **personal** → skip step 1, go to step 5 (write to ~\u002F.clade\u002Fresearch\u002F instead)\n   - If **project-scoped** → proceed with steps 1-5 (write to BRAINSTORM.md)\n1. Read `VISION.md`, `TODO.md`, and `BRAINSTORM.md` for project context (understand what already exists before researching)\n2. Follow retrieval routing above. Search for 3-5 relevant tools\u002Fapproaches and read primary sources. Add date filters when freshness matters; do not append a year to every query indiscriminately.\n3. For each result: extract key features, pricing\u002Flicensing, UX patterns, what they do well, what they do poorly\n4. Compare against current VISION.md — what gaps does this research reveal? what patterns can we borrow?\n5. Write findings:\n\n```markdown\n## [Research] {date} — {topic}\n\n### Tools surveyed\n| Tool | Key features | What to borrow |\n|---|---|---|\n| ... | ... | ... |\n\n### Gaps vs current VISION\n- ...\n\n### Recommended additions to TODO.md\n- [ ] ...\n```\n\n## Personal Topic Detection\n\nBefore starting research, check ALL of these:\n\n| Criterion | Personal | Project-Scoped |\n|-----------|----------|---|\n| **Ownership** | User's own infrastructure, accounts, hardware, tools | Project's domain, codebase, user's work assignments |\n| **Scope** | User's life decisions, personal setup, self-improvement | Product features, tech decisions, competitor analysis |\n| **Audience** | Only the user cares | Project team cares, code review will see it |\n| **Reusability** | Specific to user's context, not portable | Patterns generalizable to the project |\n\n**Apply the \"Stranger Clone Test\"**: If someone cloned this repo, would they learn anything about the user's personal life, accounts, or infrastructure? If YES → PERSONAL. If NO → project-scoped.\n\n**Examples:**\n- ✅ PERSONAL: \"what laptop to buy\", \"best personal finance apps\", \"home server setup\", \"password manager comparison for my accounts\"\n- ✅ PROJECT-SCOPED: \"auth libraries for Node\", \"UI component libraries\", \"competitor analysis vs SalesForce\", \"LLM pricing tiers\"\n\n## Rules\n- Always read VISION.md first — generic suggestions are noise, project-specific insights are signal\n- Check source dates and current primary documentation for changing facts.\n- Be specific and actionable — \"add OAuth2 login flow like tool X's 2-click setup\" not \"add authentication\"\n- Mark entries as `[Research]` (not `[AI]`) so they're distinguishable in BRAINSTORM.md\n- Do NOT auto-process into GOALS.md or TODO.md — just write to BRAINSTORM.md inbox or personal research dir\n- **Personal-topic routing**: If determined to be PERSONAL in step 0, write report to `~\u002F.clade\u002Fresearch\u002F{YYYY-MM-DD}-{slug}.md` INSTEAD of BRAINSTORM.md — personal context must never land in a git-tracked project file\n\n\n---\n\n## Completion Status\n\n- ✅ **DONE** — task completed successfully\n- ⚠ **DONE_WITH_CONCERNS** — completed but with caveats to note\n- ❌ **BLOCKED** — cannot proceed; write details to `.clade\u002Fblockers.md`\n- ❓ **NEEDS_CONTEXT** — missing information; use AskUserQuestion\n\n**3-strike rule:** If the same approach fails 3 times, switch to BLOCKED — do not retry indefinitely.\n\n## Delivery completion\n\nIf this workflow changes files or external state:\n\n- Inspect the real final state before responding, including `git status` for a\n  repository task.\n- Never report `DONE` while task-owned changes are uncommitted. Use or continue\n  `$clade:delivery` and create a repository-compliant checkpoint or preserve\n  the work when committing is unavailable.\n- When the user request or trusted repository policy makes publication,\n  deployment, or live verification part of the task, do not silently downgrade\n  the result to local-only work.\n- If a required delivery transition lacks authority, credentials, a destination,\n  or reachable external state, report `BLOCKED` or `NEEDS_CONTEXT` rather than\n  appending a \"not committed\u002Fpushed\u002Fdeployed\" caveat after `DONE`.\n","# Clade for Codex\n\nThis workflow runs **directly in Codex**. Do not launch the `claude` CLI or\ndelegate the workflow to Clade's MCP bridge.\n\nCodex compatibility rules:\n\n- Plugin skills are namespaced. Invoke this workflow explicitly as\n  `$clade:research`; a bare `$name` does not select the installed Clade plugin.\n- Read the nearest `AGENTS.md` files for repository instructions. If a project\n  has only `CLAUDE.md`, treat it as legacy project guidance and read it too.\n- Store new Clade working state under `.clade\u002F` (or `~\u002F.clade\u002F` for personal\n  state). Existing legacy Claude state may be read for migration, but do not\n  create new vendor-specific state.\n- A `\u002Fskill-name` reference means the corresponding Codex\n  `$clade:skill-name` plugin skill, or the same workflow invoked naturally when\n  explicit skill invocation is not available.\n- Use Codex web, file, shell, image, and subagent capabilities when the source\n  workflow names a vendor-specific tool. If a capability is unavailable, use\n  the documented fallback instead of spawning another agent CLI.\n- Paths such as `\u003Cplugin-root>\u002F...` are relative to the installed Clade plugin\n  containing this `SKILL.md`; resolve that root before invoking a helper.\n\n## Canonical Clade workflow\n\nResearch external tools\u002Fcompetitors\u002Fapproaches for a given topic and write a structured analysis to BRAINSTORM.md (project-scoped topics) or `~\u002F.clade\u002Fresearch\u002F` (personal topics — see Rules).\n\n## Retrieval routing (run first)\n\nLoad the installed `web-search` skill when available. It selects native tools\nfor small lookups and TinyFish for bulk\u002Frecurring collection or unavailable\nnative retrieval, with excerpts, bounded output, private caching and explicit\nfailure handoffs. Keep analysis in this session; do not launch another model\nCLI. Provider documentation tools and user-selected\u002Fexcluded providers take\nprecedence. If the skill is absent, use available native search and page tools.\n\nStart with at most 5 targeted searches. Expand only when an unresolved evidence\ngap justifies it. One empty search is not proof that live research is unavailable:\nrevise the query or use the configured fallback. If all available retrieval\npaths fail, label current facts unverified; do not pass training knowledge off\nas live research.\n\n## Steps\n\n0. **FIRST: Determine if topic is personal or project-scoped** (see Personal Topic Detection below)\n   - If **personal** → skip step 1, go to step 5 (write to ~\u002F.clade\u002Fresearch\u002F instead)\n   - If **project-scoped** → proceed with steps 1-5 (write to BRAINSTORM.md)\n1. Read `VISION.md`, `TODO.md`, and `BRAINSTORM.md` for project context (understand what already exists before researching)\n2. Follow retrieval routing above. Search for 3-5 relevant tools\u002Fapproaches and read primary sources. Add date filters when freshness matters; do not append a year to every query indiscriminately.\n3. For each result: extract key features, pricing\u002Flicensing, UX patterns, what they do well, what they do poorly\n4. Compare against current VISION.md — what gaps does this research reveal? what patterns can we borrow?\n5. Write findings:\n\n```markdown\n## [Research] {date} — {topic}\n\n### Tools surveyed\n| Tool | Key features | What to borrow |\n|---|---|---|\n| ... | ... | ... |\n\n### Gaps vs current VISION\n- ...\n\n### Recommended additions to TODO.md\n- [ ] ...\n```\n\n## Personal Topic Detection\n\nBefore starting research, check ALL of these:\n\n| Criterion | Personal | Project-Scoped |\n|-----------|----------|---|\n| **Ownership** | User's own infrastructure, accounts, hardware, tools | Project's domain, codebase, user's work assignments |\n| **Scope** | User's life decisions, personal setup, self-improvement | Product features, tech decisions, competitor analysis |\n| **Audience** | Only the user cares | Project team cares, code review will see it |\n| **Reusability** | Specific to user's context, not portable | Patterns generalizable to the project |\n\n**Apply the \"Stranger Clone Test\"**: If someone cloned this repo, would they learn anything about the user's personal life, accounts, or infrastructure? If YES → PERSONAL. If NO → project-scoped.\n\n**Examples:**\n- ✅ PERSONAL: \"what laptop to buy\", \"best personal finance apps\", \"home server setup\", \"password manager comparison for my accounts\"\n- ✅ PROJECT-SCOPED: \"auth libraries for Node\", \"UI component libraries\", \"competitor analysis vs SalesForce\", \"LLM pricing tiers\"\n\n## Rules\n- Always read VISION.md first — generic suggestions are noise, project-specific insights are signal\n- Check source dates and current primary documentation for changing facts.\n- Be specific and actionable — \"add OAuth2 login flow like tool X's 2-click setup\" not \"add authentication\"\n- Mark entries as `[Research]` (not `[AI]`) so they're distinguishable in BRAINSTORM.md\n- Do NOT auto-process into GOALS.md or TODO.md — just write to BRAINSTORM.md inbox or personal research dir\n- **Personal-topic routing**: If determined to be PERSONAL in step 0, write report to `~\u002F.clade\u002Fresearch\u002F{YYYY-MM-DD}-{slug}.md` INSTEAD of BRAINSTORM.md — personal context must never land in a git-tracked project file\n\n\n---\n\n## Completion Status\n\n- ✅ **DONE** — task completed successfully\n- ⚠ **DONE_WITH_CONCERNS** — completed but with caveats to note\n- ❌ **BLOCKED** — cannot proceed; write details to `.clade\u002Fblockers.md`\n- ❓ **NEEDS_CONTEXT** — missing information; use AskUserQuestion\n\n**3-strike rule:** If the same approach fails 3 times, switch to BLOCKED — do not retry indefinitely.\n\n## Delivery completion\n\nIf this workflow changes files or external state:\n\n- Inspect the real final state before responding, including `git status` for a\n  repository task.\n- Never report `DONE` while task-owned changes are uncommitted. Use or continue\n  `$clade:delivery` and create a repository-compliant checkpoint or preserve\n  the work when committing is unavailable.\n- When the user request or trusted repository policy makes publication,\n  deployment, or live verification part of the task, do not silently downgrade\n  the result to local-only work.\n- If a required delivery transition lacks authority, credentials, a destination,\n  or reachable external state, report `BLOCKED` or `NEEDS_CONTEXT` rather than\n  appending a \"not committed\u002Fpushed\u002Fdeployed\" caveat after `DONE`.\n",{"name":5,"description":7},"main","bb20646cb013d2f52f854743fcee83dcc5ccfbd9","plugins\u002Fclade\u002Fskills\u002Fresearch",6,"https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade","https:\u002F\u002Falexshen.dev\u002Fen\u002Fblog\u002Fclade","https:\u002F\u002Fgithub.com\u002Fshenxingy","https:\u002F\u002Falexshen.dev\u002F","Founding Engineer @ Scam AI | ECE @ Duke University | Data Science @ Duke Kunshan University","2026-11-13 19:38:31",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add shenxingy\u002FClade --skill research",{"tool":61,"command":62},"bunx","bunx skills add shenxingy\u002FClade --skill research",{"tool":64,"command":65},"pnpm","pnpm dlx skills add shenxingy\u002FClade --skill research","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fresearch\u002FSKILL.md",true,[],[70,89,121,141,165,182],{"skillNo":71,"name":72,"nameZh":6,"description":73,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":74,"categories":75,"keywords":77,"publishedAt":40},"01M6FNPBA3494GF2W7V4MMAKG3","worktree","Create or inspect runtime-adaptive isolated Git workspaces with explicit ownership and delivery routing","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fworktree\u002FSKILL.md",[76],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[72,78,79,80,81,82,83,84,85,86,87,88],"adaptive","inspect","with","ownership","delivery routing","runtime","delivery","workspaces","git","routing","create",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":101,"publishedAt":40},"01M6FNP75BY8CS006EWGN29FM0","web-search","Route online research and URL reading to native tools or TinyFish MCP\u002FAPI; prepare targeted requests, handle progress and failures, and check returned evidence. Applies to web search, fetching, and bulk collection; excludes repository\u002Ffile search.","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fweb-search\u002FSKILL.md",[95,96],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":97,"categoryName":98,"taxonomyType":99,"taxonomyTypeDesc":100},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[102,103,104,105,106,5,107,108,109,110,111,112,113,114,115,116,117,118,119,120],"web search","search","web","repository","file","MCP","requests","collection","reading","URL","native","bulk","progress","file search","route","tinyfish","evidence","check","api",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":128,"publishedAt":40},"01M6FNP2616DRTZRSZJQM3HPHY","verify","Verify project behavior anchors — compilation, tests, and interaction checks after autonomous runs. NOT the Codex built-in \u002Fverify (which runs the app to observe a single change working) — this one walks the AGENTS.md \"Features (Behavior Anchors)\" list.","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fverify\u002FSKILL.md",[127],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[123,129,130,131,132,133,134,34,135,136,137,138,139,140],"app","single","features","which","interaction","tests","observe","autonomous","behavior","list","change","codex",{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":148,"publishedAt":40},"01M6FNNX95R9H29BNERFY15704","tasks","Coordinate dependency-aware project tasks across independent Codex, Codex, Kimi and human sessions using Beads. Use for shared plans, claiming work, task handoffs, acceptance and agent monitoring snapshots.","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Ftasks\u002FSKILL.md",[147],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[143,36,149,150,34,151,152,153,154,155,156,157,158,159,33,160,161,162,163,164,140],"plans","work","shared","across","human","task","coordinate","kimi","snapshots","agent monitoring","dependency","using beads","beads","monitoring","acceptance","sessions",{"skillNo":166,"name":167,"nameZh":6,"description":168,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":169,"categories":170,"keywords":172,"publishedAt":40},"01M6FNNTAD1BCZX5Q9TC55MZCH","sync","End-of-session documentation sync — updates TODO.md and PROGRESS.md only (run \u002Fcommit after to commit everything)","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fsync\u002FSKILL.md",[171],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[167,173,174,175,176,177,178,179,114,180,181],"session","run","documentation","commit","only","documentation sync","updates","end","todo",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":189,"publishedAt":40},"01M6FNNPTR5H23MD3849E66WYA","status","Show a provider-neutral, freshness-aware snapshot of active Agent work, Git delivery, execution identity, and usage limits. Use for “what's going on right now”, what is running, progress updates, active runtime\u002Fprovider\u002Fmodel, or stuck-work checks.","https:\u002F\u002Fgithub.com\u002Fshenxingy\u002FClade\u002Fblob\u002Fmain\u002Fplugins\u002Fclade\u002Fskills\u002Fstatus\u002FSKILL.md",[188],{"categoryNo":24,"categoryName":25,"taxonomyType":21,"taxonomyTypeDesc":22},[184,83,190,191,36,179,192,193,114,194,84,195,196,33,197,150,198,199,86,200],"running","limits","usage","now","active","show","provider","snapshot","model","execution","identity"]