[{"data":1,"prerenderedAt":739},["ShallowReactive",2],{"navigation":3,"\u002Fen\u002Fhow-to\u002Finstructions":129,"\u002Fen\u002Fhow-to\u002Finstructions-surround":734},[4,68],{"title":5,"path":6,"stem":7,"children":8,"page":22},"En","\u002Fen","en",[9,13,23],{"title":10,"path":11,"stem":12},"Product Overview","\u002Fen\u002Fintroduction","en\u002F0.introduction",{"title":14,"path":15,"stem":16,"children":17,"page":22},"Tutorials","\u002Fen\u002Ftutorials","en\u002F1.tutorials",[18],{"title":19,"path":20,"stem":21},"Quick Start","\u002Fen\u002Ftutorials\u002Fquickstart","en\u002F1.tutorials\u002Fquickstart",false,{"title":24,"path":25,"stem":26,"children":27,"page":22},"How To","\u002Fen\u002Fhow-to","en\u002F2.how-to",[28,32,36,40,44,48,52,56,60,64],{"title":29,"path":30,"stem":31},"Canvas Workspace","\u002Fen\u002Fhow-to\u002Fcanvas","en\u002F2.how-to\u002Fcanvas",{"title":33,"path":34,"stem":35},"Configuration","\u002Fen\u002Fhow-to\u002Fconfigure","en\u002F2.how-to\u002Fconfigure",{"title":37,"path":38,"stem":39},"Scheduled Tasks","\u002Fen\u002Fhow-to\u002Fcron-jobs","en\u002F2.how-to\u002Fcron-jobs",{"title":41,"path":42,"stem":43},"Configuring System Service","\u002Fen\u002Fhow-to\u002Finstall","en\u002F2.how-to\u002Finstall",{"title":45,"path":46,"stem":47},"Managing Instructions","\u002Fen\u002Fhow-to\u002Finstructions","en\u002F2.how-to\u002Finstructions",{"title":49,"path":50,"stem":51},"MCP Servers","\u002Fen\u002Fhow-to\u002Fmcp-servers","en\u002F2.how-to\u002Fmcp-servers",{"title":53,"path":54,"stem":55},"Managing Profiles","\u002Fen\u002Fhow-to\u002Fprofiles","en\u002F2.how-to\u002Fprofiles",{"title":57,"path":58,"stem":59},"Configuring Runtimes","\u002Fen\u002Fhow-to\u002Fruntimes","en\u002F2.how-to\u002Fruntimes",{"title":61,"path":62,"stem":63},"Managing Skills","\u002Fen\u002Fhow-to\u002Fskills","en\u002F2.how-to\u002Fskills",{"title":65,"path":66,"stem":67},"VS Code Integration","\u002Fen\u002Fhow-to\u002Fvscode","en\u002F2.how-to\u002Fvscode",{"title":69,"path":70,"stem":71,"children":72,"page":22},"Zh","\u002Fzh","zh",[73,77,85],{"title":74,"path":75,"stem":76},"产品概述","\u002Fzh\u002Fintroduction","zh\u002F0.introduction",{"title":14,"path":78,"stem":79,"children":80,"page":22},"\u002Fzh\u002Ftutorials","zh\u002F1.tutorials",[81],{"title":82,"path":83,"stem":84},"快速开始","\u002Fzh\u002Ftutorials\u002Fquickstart","zh\u002F1.tutorials\u002Fquickstart",{"title":24,"path":86,"stem":87,"children":88,"page":22},"\u002Fzh\u002Fhow-to","zh\u002F2.how-to",[89,93,97,101,105,109,113,117,121,125],{"title":90,"path":91,"stem":92},"Canvas 工作区","\u002Fzh\u002Fhow-to\u002Fcanvas","zh\u002F2.how-to\u002Fcanvas",{"title":94,"path":95,"stem":96},"配置","\u002Fzh\u002Fhow-to\u002Fconfigure","zh\u002F2.how-to\u002Fconfigure",{"title":98,"path":99,"stem":100},"定时任务","\u002Fzh\u002Fhow-to\u002Fcron-jobs","zh\u002F2.how-to\u002Fcron-jobs",{"title":102,"path":103,"stem":104},"配置系统服务","\u002Fzh\u002Fhow-to\u002Finstall","zh\u002F2.how-to\u002Finstall",{"title":106,"path":107,"stem":108},"管理指令文件","\u002Fzh\u002Fhow-to\u002Finstructions","zh\u002F2.how-to\u002Finstructions",{"title":110,"path":111,"stem":112},"MCP 服务器","\u002Fzh\u002Fhow-to\u002Fmcp-servers","zh\u002F2.how-to\u002Fmcp-servers",{"title":114,"path":115,"stem":116},"管理 Profile","\u002Fzh\u002Fhow-to\u002Fprofiles","zh\u002F2.how-to\u002Fprofiles",{"title":118,"path":119,"stem":120},"配置 Runtime","\u002Fzh\u002Fhow-to\u002Fruntimes","zh\u002F2.how-to\u002Fruntimes",{"title":122,"path":123,"stem":124},"管理 Skill","\u002Fzh\u002Fhow-to\u002Fskills","zh\u002F2.how-to\u002Fskills",{"title":126,"path":127,"stem":128},"VS Code 集成","\u002Fzh\u002Fhow-to\u002Fvscode","zh\u002F2.how-to\u002Fvscode",{"id":130,"title":45,"body":131,"description":728,"extension":729,"links":730,"meta":731,"navigation":262,"path":46,"seo":732,"stem":47,"__hash__":733},"docs\u002Fen\u002F2.how-to\u002Finstructions.md",{"type":132,"value":133,"toc":709},"minimark",[134,139,143,146,165,169,172,177,180,191,195,198,204,207,219,223,227,230,288,291,295,298,330,333,337,341,344,543,547,558,562,565,570,576,581,587,591,602,606,612,618,643,648,652,663,668,672,683,687,690,705],[135,136,138],"h2",{"id":137},"what-are-instruction-files","What are Instruction Files?",[140,141,142],"p",{},"An instruction file is a Markdown-formatted text file containing\noperational guidelines and standards for AI Agents. When creating a new\ntask, Sink automatically reads and injects instruction file content to\nhelp Agents understand your workflow, project standards, and expected\nbehavior.",[140,144,145],{},"Common uses for instruction files include:",[147,148,149,153,156,159,162],"ul",{},[150,151,152],"li",{},"Defining code style and naming conventions",[150,154,155],{},"Explaining project architecture and core concepts",[150,157,158],{},"Specifying how to use particular tools or libraries",[150,160,161],{},"Listing disabled or restricted operations",[150,163,164],{},"Providing project-specific AI Agent workflows",[135,166,168],{"id":167},"instruction-file-locations","Instruction File Locations",[140,170,171],{},"Sink supports instruction files at two levels:",[173,174,176],"h3",{"id":175},"user-level-instruction-file","User-Level Instruction File",[140,178,179],{},"A global instruction file that applies to all workspaces. Location:",[181,182,187],"pre",{"className":183,"code":185,"language":186},[184],"language-text","~\u002F.sink\u002FSINK.md\n","text",[188,189,185],"code",{"__ignoreMap":190},"",[173,192,194],{"id":193},"workspace-level-instruction-file","Workspace-Level Instruction File",[140,196,197],{},"An instruction file for a specific workspace with higher priority.\nLocation:",[181,199,202],{"className":200,"code":201,"language":186},[184],"\u003Cworkspace>\u002F.sink\u002FSINK.md\n",[188,203,201],{"__ignoreMap":190},[140,205,206],{},"If both files exist, content is merged in the following order:",[208,209,210,213,216],"ol",{},[150,211,212],{},"Workspace-level content (highest priority)",[150,214,215],{},"User-level content (secondary)",[150,217,218],{},"Builtin-level content (lowest priority; pre-configured in the\ndistribution)",[135,220,222],{"id":221},"creating-and-editing-instruction-files","Creating and Editing Instruction Files",[173,224,226],{"id":225},"edit-with-a-text-editor","Edit with a Text Editor",[140,228,229],{},"Use your preferred text editor to directly edit instruction files:",[181,231,235],{"className":232,"code":233,"language":234,"meta":190,"style":190},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Edit user-level instruction file (global)\nnano ~\u002F.sink\u002FSINK.md\n\n# Edit workspace-level instruction file (project-specific)\ncd \u002Fpath\u002Fto\u002Fworkspace\nnano .sink\u002FSINK.md\n","bash",[188,236,237,246,257,264,270,280],{"__ignoreMap":190},[238,239,242],"span",{"class":240,"line":241},"line",1,[238,243,245],{"class":244},"sHwdD","# Edit user-level instruction file (global)\n",[238,247,249,253],{"class":240,"line":248},2,[238,250,252],{"class":251},"sBMFI","nano",[238,254,256],{"class":255},"sfazB"," ~\u002F.sink\u002FSINK.md\n",[238,258,260],{"class":240,"line":259},3,[238,261,263],{"emptyLinePlaceholder":262},true,"\n",[238,265,267],{"class":240,"line":266},4,[238,268,269],{"class":244},"# Edit workspace-level instruction file (project-specific)\n",[238,271,273,277],{"class":240,"line":272},5,[238,274,276],{"class":275},"s2Zo4","cd",[238,278,279],{"class":255}," \u002Fpath\u002Fto\u002Fworkspace\n",[238,281,283,285],{"class":240,"line":282},6,[238,284,252],{"class":251},[238,286,287],{"class":255}," .sink\u002FSINK.md\n",[140,289,290],{},"After saving, newly created tasks will automatically use the updated\ninstructions.",[173,292,294],{"id":293},"view-instruction-files-in-web-ui","View Instruction Files in Web UI",[140,296,297],{},"View the merged instruction file in the Web UI:",[208,299,300,303,306],{},[150,301,302],{},"Open the Web UI",[150,304,305],{},"Click “Instructions” in the left menu",[150,307,308,309],{},"You can view:\n",[147,310,311,318,324],{},[150,312,313,317],{},[314,315,316],"strong",{},"Effective view",": The final merged instructions (workspace +\nuser)",[150,319,320,323],{},[314,321,322],{},"Workspace view",": Workspace-level content only",[150,325,326,329],{},[314,327,328],{},"User view",": User-level content only",[140,331,332],{},"The source path of each layer is also displayed in the UI.",[135,334,336],{"id":335},"instruction-file-best-practices","Instruction File Best Practices",[173,338,340],{"id":339},"content-structure","Content Structure",[140,342,343],{},"It’s recommended to organize instruction files into clear sections:",[181,345,349],{"className":346,"code":347,"language":348,"meta":190,"style":190},"language-markdown shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Project Guidelines\n\n## Overview\n\nProject name, objectives, and core concept descriptions.\n\n## Code Standards\n\n- Programming language and version requirements\n- Code style (indentation, naming conventions, etc.)\n- Essential best practices to follow\n\n## Architecture\n\n- Project directory structure\n- Core module descriptions\n- Dependencies and data flow\n\n## Tools and Libraries\n\n- Key dependencies and their versions\n- How to configure related tools\n- Recommended plugins or extensions\n\n## Workflow\n\n- How to create new features\n- How to run tests\n- Pre-commit checklist\n\n## Restrictions and Prohibitions\n\n- Files or directories that cannot be modified\n- Banned dependencies or practices\n- Security-related restrictions\n","markdown",[188,350,351,356,360,365,369,374,378,384,389,395,401,407,412,418,423,429,435,441,446,452,457,463,469,475,480,486,491,497,503,509,514,520,525,531,537],{"__ignoreMap":190},[238,352,353],{"class":240,"line":241},[238,354,355],{},"# Project Guidelines\n",[238,357,358],{"class":240,"line":248},[238,359,263],{"emptyLinePlaceholder":262},[238,361,362],{"class":240,"line":259},[238,363,364],{},"## Overview\n",[238,366,367],{"class":240,"line":266},[238,368,263],{"emptyLinePlaceholder":262},[238,370,371],{"class":240,"line":272},[238,372,373],{},"Project name, objectives, and core concept descriptions.\n",[238,375,376],{"class":240,"line":282},[238,377,263],{"emptyLinePlaceholder":262},[238,379,381],{"class":240,"line":380},7,[238,382,383],{},"## Code Standards\n",[238,385,387],{"class":240,"line":386},8,[238,388,263],{"emptyLinePlaceholder":262},[238,390,392],{"class":240,"line":391},9,[238,393,394],{},"- Programming language and version requirements\n",[238,396,398],{"class":240,"line":397},10,[238,399,400],{},"- Code style (indentation, naming conventions, etc.)\n",[238,402,404],{"class":240,"line":403},11,[238,405,406],{},"- Essential best practices to follow\n",[238,408,410],{"class":240,"line":409},12,[238,411,263],{"emptyLinePlaceholder":262},[238,413,415],{"class":240,"line":414},13,[238,416,417],{},"## Architecture\n",[238,419,421],{"class":240,"line":420},14,[238,422,263],{"emptyLinePlaceholder":262},[238,424,426],{"class":240,"line":425},15,[238,427,428],{},"- Project directory structure\n",[238,430,432],{"class":240,"line":431},16,[238,433,434],{},"- Core module descriptions\n",[238,436,438],{"class":240,"line":437},17,[238,439,440],{},"- Dependencies and data flow\n",[238,442,444],{"class":240,"line":443},18,[238,445,263],{"emptyLinePlaceholder":262},[238,447,449],{"class":240,"line":448},19,[238,450,451],{},"## Tools and Libraries\n",[238,453,455],{"class":240,"line":454},20,[238,456,263],{"emptyLinePlaceholder":262},[238,458,460],{"class":240,"line":459},21,[238,461,462],{},"- Key dependencies and their versions\n",[238,464,466],{"class":240,"line":465},22,[238,467,468],{},"- How to configure related tools\n",[238,470,472],{"class":240,"line":471},23,[238,473,474],{},"- Recommended plugins or extensions\n",[238,476,478],{"class":240,"line":477},24,[238,479,263],{"emptyLinePlaceholder":262},[238,481,483],{"class":240,"line":482},25,[238,484,485],{},"## Workflow\n",[238,487,489],{"class":240,"line":488},26,[238,490,263],{"emptyLinePlaceholder":262},[238,492,494],{"class":240,"line":493},27,[238,495,496],{},"- How to create new features\n",[238,498,500],{"class":240,"line":499},28,[238,501,502],{},"- How to run tests\n",[238,504,506],{"class":240,"line":505},29,[238,507,508],{},"- Pre-commit checklist\n",[238,510,512],{"class":240,"line":511},30,[238,513,263],{"emptyLinePlaceholder":262},[238,515,517],{"class":240,"line":516},31,[238,518,519],{},"## Restrictions and Prohibitions\n",[238,521,523],{"class":240,"line":522},32,[238,524,263],{"emptyLinePlaceholder":262},[238,526,528],{"class":240,"line":527},33,[238,529,530],{},"- Files or directories that cannot be modified\n",[238,532,534],{"class":240,"line":533},34,[238,535,536],{},"- Banned dependencies or practices\n",[238,538,540],{"class":240,"line":539},35,[238,541,542],{},"- Security-related restrictions\n",[173,544,546],{"id":545},"length-control","Length Control",[147,548,549,552,555],{},[150,550,551],{},"Keep instruction files under 10,000 characters",[150,553,554],{},"Overly long instructions may reduce Agent processing efficiency",[150,556,557],{},"Prioritize the most critical information; details can be added as code\ncomments",[173,559,561],{"id":560},"clarity-and-specificity","Clarity and Specificity",[140,563,564],{},"Use clear language and concrete examples:",[140,566,567],{},[314,568,569],{},"Good example:",[181,571,574],{"className":572,"code":573,"language":186},[184],"Use TypeScript for development. Must install type definitions (@types\u002F*).\nNever use any type unless specifically justified.\n",[188,575,573],{"__ignoreMap":190},[140,577,578],{},[314,579,580],{},"Poor example:",[181,582,585],{"className":583,"code":584,"language":186},[184],"Follow best practices. Do the reasonable thing.\n",[188,586,584],{"__ignoreMap":190},[173,588,590],{"id":589},"update-frequency","Update Frequency",[147,592,593,596,599],{},[150,594,595],{},"Regularly update instruction files to keep them in sync with project\nstate",[150,597,598],{},"Update immediately after adding new standards or restrictions",[150,600,601],{},"Remove outdated information",[135,603,605],{"id":604},"troubleshooting","Troubleshooting",[140,607,608,611],{},[314,609,610],{},"Issue",": Instruction file is not loaded by the Agent",[140,613,614,617],{},[314,615,616],{},"Solution",":",[147,619,620,630,637,640],{},[150,621,622,623,626,627],{},"Confirm the file exists at the correct location: ",[188,624,625],{},"~\u002F.sink\u002FSINK.md"," or\n",[188,628,629],{},"\u003Cworkspace>\u002F.sink\u002FSINK.md",[150,631,632,633,636],{},"Check that the filename is exactly correct: ",[188,634,635],{},"SINK.md"," (case-sensitive)",[150,638,639],{},"Ensure the file is pure Markdown format (no YAML frontmatter)",[150,641,642],{},"Newly created tasks use the latest instructions; existing tasks are\nnot affected",[140,644,645,647],{},[314,646,610],{},": Already created tasks don’t update after modifying\ninstruction file",[140,649,650,617],{},[314,651,616],{},[147,653,654,657,660],{},[150,655,656],{},"Instruction files only apply to newly created tasks",[150,658,659],{},"Existing tasks have fixed instructions that won’t change if modified",[150,661,662],{},"To apply new instructions, create a new task",[140,664,665,667],{},[314,666,610],{},": Multiple instruction files conflict or have duplicate content",[140,669,670,617],{},[314,671,616],{},[147,673,674,677,680],{},[150,675,676],{},"Check if both user-level and workspace-level instructions are defined",[150,678,679],{},"Use the Web UI’s “Effective” tab to view the final merged result",[150,681,682],{},"Consider moving common instructions to user-level and project-specific\nones to workspace-level",[135,684,686],{"id":685},"next-steps","Next Steps",[140,688,689],{},"After configuring instruction files, you can:",[208,691,692,699],{},[150,693,694,698],{},[695,696,53],"a",{"href":697},".\u002Fprofiles"," — Define Agent personality and\ncapabilities",[150,700,701,704],{},[695,702,19],{"href":703},"..\u002Ftutorials\u002Fquickstart"," — Create your first task\nand observe Agent behavior",[706,707,708],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":190,"searchDepth":241,"depth":248,"links":710},[711,712,716,720,726,727],{"id":137,"depth":248,"text":138},{"id":167,"depth":248,"text":168,"children":713},[714,715],{"id":175,"depth":259,"text":176},{"id":193,"depth":259,"text":194},{"id":221,"depth":248,"text":222,"children":717},[718,719],{"id":225,"depth":259,"text":226},{"id":293,"depth":259,"text":294},{"id":335,"depth":248,"text":336,"children":721},[722,723,724,725],{"id":339,"depth":259,"text":340},{"id":545,"depth":259,"text":546},{"id":560,"depth":259,"text":561},{"id":589,"depth":259,"text":590},{"id":604,"depth":248,"text":605},{"id":685,"depth":248,"text":686},"How to write and manage instruction files for AI Agents","md",null,{},{"title":45,"description":728},"lhIZ7IkXrWh2wiubOaRZqsEJVvc8UKnAWmzbnYnKMn8",[735,737],{"title":41,"path":42,"stem":43,"description":736,"children":-1},"Configure Sink as a system service that starts automatically on login",{"title":49,"path":50,"stem":51,"description":738,"children":-1},"Configure Model Context Protocol servers for agents",1778225993174]