[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6HWFPZ4DPM7EY35KPDAS1YK":3,"skill-same:01M6HWFPZ4DPM7EY35KPDAS1YK":65},{"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":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":40,"repositoryHtmlUrl":41,"repositoryHomepageUrl":6,"ownerHtmlUrl":42,"ownerBlogUrl":43,"ownerDescription":6,"updatedAt":44,"install":45,"resources":58},"01M6HWFPZ4DPM7EY35KPDAS1YK","fallback-file-ops",null,"Use run_shell as fallback 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",7993,"MIT","https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Ffallback-file-ops\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31],"file","ops","fallback","fallback file ops","sandbox","run","code","shell","filesystem","execute","operations","use","as","2026-11-10 10:12:30",false,"---\nname: fallback-file-ops\ndescription: Use run_shell as fallback when execute_code_sandbox or shell_agent fail on filesystem operations\n---\n\n# Fallback File Operations\n\n## Purpose\n\nWhen `execute_code_sandbox` or `shell_agent` fail with 'unknown error' on filesystem operations, fall back to `run_shell` with explicit `mkdir` and file write commands. This hybrid approach is more reliable for creating complex project structures.\n\n## When to Apply\n\n- `execute_code_sandbox` returns 'unknown error' on file\u002Fdirectory creation\n- `shell_agent` fails to write files or create nested directories\n- You need to create complex project structures with multiple levels\n\n## Procedure\n\n### Step 1: Detect Tool Failure\n\n Monitor for these failure patterns:\n- Error message contains \"unknown error\"\n- File operations silently fail (file not created)\n- Directory creation returns success but directory doesn't exist\n\n### Step 2: Switch to run_shell\n\nWhen failures occur, immediately switch to `run_shell` for filesystem operations:\n\n```bash\n# Create directory structure explicitly\nrun_shell: mkdir -p \u002Fpath\u002Fto\u002Fnested\u002Fdirectory\n\n# Write files using shell redirection or echo\nrun_shell: echo \"content\" > \u002Fpath\u002Fto\u002Ffile.txt\n\n# Or use cat with heredoc for multi-line files\nrun_shell: cat > \u002Fpath\u002Fto\u002Ffile.txt \u003C\u003C 'EOF'\nline 1\nline 2\nEOF\n```\n\n### Step 3: Verify Creation\n\nAfter each operation, verify the file\u002Fdirectory was created:\n\n```bash\nrun_shell: ls -la \u002Fpath\u002Fto\u002Fcreated\u002Fitem\nrun_shell: test -f \u002Fpath\u002Fto\u002Ffile && echo \"File exists\"\nrun_shell: test -d \u002Fpath\u002Fto\u002Fdir && echo \"Directory exists\"\n```\n\n### Step 4: Continue with Hybrid Approach\n\n- Use `run_shell` for all filesystem operations (mkdir, write, copy, move)\n- Continue using `execute_code_sandbox` or `shell_agent` for code execution, compilation, or other non-filesystem tasks\n- Document which tool handles which operation for clarity\n\n## Example: Creating Project Structure\n\n```yaml\n# Failed attempt with execute_code_sandbox\nexecute_code_sandbox: create directory src\u002Fcomponents\n\n# Fallback with run_shell\nrun_shell: mkdir -p src\u002Fcomponents\nrun_shell: mkdir -p src\u002Futils\nrun_shell: mkdir -p tests\u002Funit\nrun_shell: echo \"\u002F\u002F Component file\" > src\u002Fcomponents\u002FButton.tsx\nrun_shell: echo \"\u002F\u002F Utility file\" > src\u002Futils\u002Fhelpers.ts\n```\n\n## Best Practices\n\n1. **Be explicit**: Always use full paths or confirm working directory\n2. **Create parent directories**: Use `mkdir -p` for nested structures\n3. **Verify before proceeding**: Check files exist before dependent operations\n4. **Log tool switches**: Note when you fall back to run_shell for debugging\n5. **Batch operations**: Group related file operations in consecutive run_shell calls\n\n## Common Pitfalls\n\n- Don't assume filesystem state after tool failure\n- Don't mix tools for the same file operation (pick one and stick with it)\n- Don't skip verification steps when using fallback","# Fallback File Operations\n\n## Purpose\n\nWhen `execute_code_sandbox` or `shell_agent` fail with 'unknown error' on filesystem operations, fall back to `run_shell` with explicit `mkdir` and file write commands. This hybrid approach is more reliable for creating complex project structures.\n\n## When to Apply\n\n- `execute_code_sandbox` returns 'unknown error' on file\u002Fdirectory creation\n- `shell_agent` fails to write files or create nested directories\n- You need to create complex project structures with multiple levels\n\n## Procedure\n\n### Step 1: Detect Tool Failure\n\n Monitor for these failure patterns:\n- Error message contains \"unknown error\"\n- File operations silently fail (file not created)\n- Directory creation returns success but directory doesn't exist\n\n### Step 2: Switch to run_shell\n\nWhen failures occur, immediately switch to `run_shell` for filesystem operations:\n\n```bash\n# Create directory structure explicitly\nrun_shell: mkdir -p \u002Fpath\u002Fto\u002Fnested\u002Fdirectory\n\n# Write files using shell redirection or echo\nrun_shell: echo \"content\" > \u002Fpath\u002Fto\u002Ffile.txt\n\n# Or use cat with heredoc for multi-line files\nrun_shell: cat > \u002Fpath\u002Fto\u002Ffile.txt \u003C\u003C 'EOF'\nline 1\nline 2\nEOF\n```\n\n### Step 3: Verify Creation\n\nAfter each operation, verify the file\u002Fdirectory was created:\n\n```bash\nrun_shell: ls -la \u002Fpath\u002Fto\u002Fcreated\u002Fitem\nrun_shell: test -f \u002Fpath\u002Fto\u002Ffile && echo \"File exists\"\nrun_shell: test -d \u002Fpath\u002Fto\u002Fdir && echo \"Directory exists\"\n```\n\n### Step 4: Continue with Hybrid Approach\n\n- Use `run_shell` for all filesystem operations (mkdir, write, copy, move)\n- Continue using `execute_code_sandbox` or `shell_agent` for code execution, compilation, or other non-filesystem tasks\n- Document which tool handles which operation for clarity\n\n## Example: Creating Project Structure\n\n```yaml\n# Failed attempt with execute_code_sandbox\nexecute_code_sandbox: create directory src\u002Fcomponents\n\n# Fallback with run_shell\nrun_shell: mkdir -p src\u002Fcomponents\nrun_shell: mkdir -p src\u002Futils\nrun_shell: mkdir -p tests\u002Funit\nrun_shell: echo \"\u002F\u002F Component file\" > src\u002Fcomponents\u002FButton.tsx\nrun_shell: echo \"\u002F\u002F Utility file\" > src\u002Futils\u002Fhelpers.ts\n```\n\n## Best Practices\n\n1. **Be explicit**: Always use full paths or confirm working directory\n2. **Create parent directories**: Use `mkdir -p` for nested structures\n3. **Verify before proceeding**: Check files exist before dependent operations\n4. **Log tool switches**: Note when you fall back to run_shell for debugging\n5. **Batch operations**: Group related file operations in consecutive run_shell calls\n\n## Common Pitfalls\n\n- Don't assume filesystem state after tool failure\n- Don't mix tools for the same file operation (pick one and stick with it)\n- Don't skip verification steps when using fallback",{"name":5,"description":7},"main","6b84b0689ca0d9e7b1e4061188ff6b60758e0f8a","openspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Ffallback-file-ops",940,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot","https:\u002F\u002Fgithub.com\u002FHKUDS","https:\u002F\u002Fsites.google.com\u002Fview\u002Fchaoh","2026-11-06 23:04:01",{"source":8,"skillName":5,"commands":46,"prompt":56,"zipAvailable":57},[47,50,53],{"tool":48,"command":49},"npx","npx skills add HKUDS\u002FAgentPilot --skill fallback-file-ops",{"tool":51,"command":52},"bunx","bunx skills add HKUDS\u002FAgentPilot --skill fallback-file-ops",{"tool":54,"command":55},"pnpm","pnpm dlx skills add HKUDS\u002FAgentPilot --skill fallback-file-ops","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Ffallback-file-ops\u002FSKILL.md",true,[59],{"path":60,"resourceType":61,"resourceTypeDesc":62,"sizeBytes":63,"sourceHtmlUrl":64},".skill_id","OTHER","其他",31,"https:\u002F\u002Fgithub.com\u002FHKUDS\u002FAgentPilot\u002Fblob\u002Fmain\u002Fopenspace\u002Fbenchmarks\u002Fgdpval\u002Fskills\u002Ffallback-file-ops\u002F.skill_id",[66,84,103,128,152,174],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":32},"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",[],[68,73,74,75,76,77,78,79,30,80,81,82,24,83],"prepare","requests","with","missing","installation","rsi","up","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":32},"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":32},"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":32},"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,30,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":32},"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,160,161,162,163,164,165,166,19,167,168,169,170,171,147,172,173],"write special chars ts check","write","check","type","files","filters","only","template","python","typescript","output","Existing","type-checking","errors","script",{"skillNo":175,"name":176,"nameZh":6,"description":177,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":178,"categories":179,"keywords":180,"publishedAt":32},"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",[],[181,182,160,75,147,173,183,184,185,186,187,166,19,188,189,167],"write special chars readback","readback","helper","post","via","scripts","read","verification","cleanup"]