[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6HWX9VVMEF3RHKC73CEPZ5D":3,"skill-same:01M6HWX9VVMEF3RHKC73CEPZ5D":64},{"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":18,"publishedAt":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":39,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":42,"ownerDescription":6,"updatedAt":43,"install":44,"resources":57},"01M6HWX9VVMEF3RHKC73CEPZ5D","robust-file-creation",null,"Fallback to run_shell and write_file when execute_code_sandbox or shell_agent fail on filesystem operations","HKUDS\u002FAgentPilot","HKUDS","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F118165258?v=4","01M6HW8VRNZP64G0P4MVJW2KKQ","✨Data Intelligence Lab@HKU✨","01M6HW8VWZVHBRHYH3T330PFWV",8024,"MIT","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Frobust-file-creation\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"file","creation","robust file creation","sandbox","run","code","shell","filesystem","write","execute","operations","fallback","2026-11-10 10:12:30",false,"---\nname: robust-file-creation\ndescription: Fallback to run_shell and write_file when execute_code_sandbox or shell_agent fail on filesystem operations\n---\n\n# Robust File Creation Strategy\n\nWhen creating complex project structures, automated tools like `execute_code_sandbox` and `shell_agent` may fail with 'unknown error' on filesystem operations. This skill provides a reliable fallback strategy using explicit shell commands.\n\n## When to Use\n\nApply this pattern when:\n- `execute_code_sandbox` fails with unknown error on file\u002Fdirectory creation\n- `shell_agent` fails to complete filesystem operations after retries\n- You need to create nested directory structures with multiple files\n- Task progress is blocked by filesystem tool failures\n\n## Fallback Procedure\n\n### Step 1: Detect the Failure\nWhen either `execute_code_sandbox` or `shell_agent` fails on filesystem operations (especially after automatic retries), immediately switch to the manual hybrid approach.\n\n### Step 2: Create Directories Explicitly\nUse `run_shell` with `mkdir -p` for each required directory:\n\n```bash\nrun_shell command=\"mkdir -p \u002Fpath\u002Fto\u002Fnested\u002Fdirectory\"\n```\n\nThe `-p` flag ensures parent directories are created automatically.\n\n### Step 3: Write Files Individually\nUse `write_file` tool for each file with explicit path and content:\n\n```\nwrite_file path=\"\u002Fpath\u002Fto\u002Ffile.py\" content=\"...\"\n```\n\nDo not attempt to batch multiple file creations in a single operation.\n\n### Step 4: Verify Creation (Optional)\nConfirm the structure was created correctly:\n\n```bash\nrun_shell command=\"ls -la \u002Fpath\u002Fto\u002Fdirectory\"\n# or\nrun_shell command=\"tree \u002Fpath\u002Fto\u002Fdirectory\"\n```\n\n## Complete Example Flow\n\n```\n[execute_code_sandbox fails on project setup]\n        ↓\n[run_shell mkdir -p src\u002Fcomponents]\n[run_shell mkdir -p src\u002Futils]\n[run_shell mkdir -p tests]\n        ↓\n[write_file path=\"src\u002Fmain.py\" content=\"...\"]\n[write_file path=\"src\u002Fcomponents\u002Fwidget.py\" content=\"...\"]\n[write_file path=\"tests\u002Ftest_main.py\" content=\"...\"]\n        ↓\n[run_shell ls -la src\u002F  # verify]\n```\n\n## Best Practices\n\n1. **Create all directories first** before writing any files to avoid path errors\n2. **Write files one at a time** rather than attempting batch operations\n3. **Use absolute or clearly relative paths** to avoid ambiguity\n4. **Verify after creation** when working on critical deliverables\n5. **Document the structure** in comments or SKILL.md if it's complex\n\n## Why This Works\n\n- `run_shell` executes commands directly without the abstraction layer that can fail\n- `write_file` is a primitive operation with fewer failure modes\n- Separating directory creation from file writing isolates potential failure points\n- Explicit commands are easier to debug when issues occur\n\n## Anti-Patterns to Avoid\n\n❌ Don't keep retrying the same failing `execute_code_sandbox` command\n❌ Don't attempt to create complex nested structures in a single Python script via sandbox\n❌ Don't assume directories exist before writing files to them\n❌ Don't skip verification on critical project scaffolding","# Robust File Creation Strategy\n\nWhen creating complex project structures, automated tools like `execute_code_sandbox` and `shell_agent` may fail with 'unknown error' on filesystem operations. This skill provides a reliable fallback strategy using explicit shell commands.\n\n## When to Use\n\nApply this pattern when:\n- `execute_code_sandbox` fails with unknown error on file\u002Fdirectory creation\n- `shell_agent` fails to complete filesystem operations after retries\n- You need to create nested directory structures with multiple files\n- Task progress is blocked by filesystem tool failures\n\n## Fallback Procedure\n\n### Step 1: Detect the Failure\nWhen either `execute_code_sandbox` or `shell_agent` fails on filesystem operations (especially after automatic retries), immediately switch to the manual hybrid approach.\n\n### Step 2: Create Directories Explicitly\nUse `run_shell` with `mkdir -p` for each required directory:\n\n```bash\nrun_shell command=\"mkdir -p \u002Fpath\u002Fto\u002Fnested\u002Fdirectory\"\n```\n\nThe `-p` flag ensures parent directories are created automatically.\n\n### Step 3: Write Files Individually\nUse `write_file` tool for each file with explicit path and content:\n\n```\nwrite_file path=\"\u002Fpath\u002Fto\u002Ffile.py\" content=\"...\"\n```\n\nDo not attempt to batch multiple file creations in a single operation.\n\n### Step 4: Verify Creation (Optional)\nConfirm the structure was created correctly:\n\n```bash\nrun_shell command=\"ls -la \u002Fpath\u002Fto\u002Fdirectory\"\n# or\nrun_shell command=\"tree \u002Fpath\u002Fto\u002Fdirectory\"\n```\n\n## Complete Example Flow\n\n```\n[execute_code_sandbox fails on project setup]\n        ↓\n[run_shell mkdir -p src\u002Fcomponents]\n[run_shell mkdir -p src\u002Futils]\n[run_shell mkdir -p tests]\n        ↓\n[write_file path=\"src\u002Fmain.py\" content=\"...\"]\n[write_file path=\"src\u002Fcomponents\u002Fwidget.py\" content=\"...\"]\n[write_file path=\"tests\u002Ftest_main.py\" content=\"...\"]\n        ↓\n[run_shell ls -la src\u002F  # verify]\n```\n\n## Best Practices\n\n1. **Create all directories first** before writing any files to avoid path errors\n2. **Write files one at a time** rather than attempting batch operations\n3. **Use absolute or clearly relative paths** to avoid ambiguity\n4. **Verify after creation** when working on critical deliverables\n5. **Document the structure** in comments or SKILL.md if it's complex\n\n## Why This Works\n\n- `run_shell` executes commands directly without the abstraction layer that can fail\n- `write_file` is a primitive operation with fewer failure modes\n- Separating directory creation from file writing isolates potential failure points\n- Explicit commands are easier to debug when issues occur\n\n## Anti-Patterns to Avoid\n\n❌ Don't keep retrying the same failing `execute_code_sandbox` command\n❌ Don't attempt to create complex nested structures in a single Python script via sandbox\n❌ Don't assume directories exist before writing files to them\n❌ Don't skip verification on critical project scaffolding",{"name":5,"description":7},"main","6b84b0689ca0d9e7b1e4061188ff6b60758e0f8a","openspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Frobust-file-creation",941,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot","https:\u002F\u002Fgithub.com\u002FHKUDS","https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh","2026-11-12 22:26:39",{"source":8,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add HKUDS\u002FAgentPilot --skill robust-file-creation",{"tool":50,"command":51},"bunx","bunx skills add HKUDS\u002FAgentPilot --skill robust-file-creation",{"tool":53,"command":54},"pnpm","pnpm dlx skills add HKUDS\u002FAgentPilot --skill robust-file-creation","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Frobust-file-creation\u002FSKILL.md",true,[58],{"path":59,"resourceType":60,"resourceTypeDesc":61,"sizeBytes":62,"sourceHtmlUrl":63},".skill_id","OTHER","其他",34,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Frobust-file-creation\u002F.skill_id",[65,84,103,128,152,173],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":31},"01M6HYB297NDABRERJRVG0K8R0","agentpilot","Set up AgentPilot and use its single entry to prepare missing inputs and run configured RSI experiments. Use when the user requests AgentPilot installation or work with AgentPilot.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fplugins\u002Fagentpilot\u002Fskills\u002Fagentpilot\u002FSKILL.md",[],[67,72,73,74,75,76,77,78,79,80,81,82,23,83],"prepare","requests","with","missing","installation","rsi","up","use","user","work","SET","experiments",{"skillNo":85,"name":86,"nameZh":6,"description":87,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":88,"categories":89,"keywords":90,"publishedAt":31},"01M6HYAYWXTTE1J7DJM0MFNQ4H","remember","Review auto-memory entries and propose promotions to OPENSPACE.md, OPENSPACE.local.md, or retained auto-memory topics; detect duplicates, stale facts, conflicts, and ambiguous entries before making changes.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fskills\u002Fremember\u002FSKILL.md",[],[86,91,92,93,94,95,96,97,98,99,100,101,102],"memory","review","auto","openspace","changes","facts","detect","entries","local","conflicts","stale","duplicates",{"skillNo":104,"name":105,"nameZh":6,"description":106,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":107,"categories":108,"keywords":114,"publishedAt":31},"01M6HYAVMPM4SBDV60R2B5HPV8","skill-discovery","Search reusable OpenSpace skills locally, and browse cloud packages step by step when a cloud skill may help. Reusing proven skills saves tokens, improves reliability, and extends your capabilities beyond built-in tools.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fhost_skills\u002Fskill-discovery\u002FSKILL.md",[109],{"categoryNo":110,"categoryName":111,"taxonomyType":112,"taxonomyTypeDesc":113},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[115,116,117,94,118,119,120,121,122,123,124,125,126,127],"skill discovery","discovery","reusable","step by step","tokens","packages","help","cloud","reliability","capabilities","browse","search","Tools",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":135,"publishedAt":31},"01M6HYAR811B3RB0M50RBEDGN6","delegate-task","Delegate tasks to OpenSpace — a full-stack autonomous worker for coding, DevOps, web research, and desktop automation, backed by an extensive MCP tool and skill library. Skills auto-improve through use, reducing token consumption over time. A cloud community lets agents share and collectively evolve reusable skills.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fopenspace\u002Fhost_skills\u002Fdelegate-task\u002FSKILL.md",[134],{"categoryNo":110,"categoryName":111,"taxonomyType":112,"taxonomyTypeDesc":113},[136,137,138,94,139,140,141,142,143,117,93,79,144,145,146,147,148,149,150,151],"delegate","task","delegate task","time","improve","desktop automation","worker","community","autonomous","tool","stack","for","share","tasks","automation","MCP",{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":31},"01M6HYAM9FSGV6E52AYENDQXYH","write-special-chars-ts-check","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, plus a reliable TypeScript type-checking step that filters output to only the newly-written files to avoid being misled by pre-existing errors.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Flegacy\u002Fv1\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-ts-check\u002FSKILL.md",[],[159,27,160,161,162,163,164,165,19,166,167,168,169,170,147,171,172],"write special chars ts check","check","type","files","filters","only","template","python","typescript","output","Existing","type-checking","errors","script",{"skillNo":174,"name":175,"nameZh":6,"description":176,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":177,"categories":178,"keywords":179,"publishedAt":31},"01M6HYAH05HGV7SVWSVR8PJRQD","write-special-chars-readback","Workaround for write_file failures caused by special characters (apostrophes, backticks, template literals) using a Python heredoc script, with mandatory post-write verification via read_file and cleanup of \u002Ftmp helper scripts.","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Flegacy\u002Fv1\u002Fshowcase\u002Fskills\u002Fwrite-special-chars-readback\u002FSKILL.md",[],[180,181,27,74,147,172,182,183,184,185,186,165,19,187,188,166],"write special chars readback","readback","helper","post","via","scripts","read","verification","cleanup"]