[{"data":1,"prerenderedAt":1038},["ShallowReactive",2],{"blog-post:en:\u002Fen\u002Fblog\u002Fcreate-kanban-board-markdown-fude-ai-agents":3},{"id":4,"title":5,"author":6,"body":7,"category":1005,"date":1006,"description":1007,"extension":1008,"image":1009,"imageAlt":1010,"meta":1011,"navigation":1012,"path":1013,"seo":1014,"stem":1015,"tags":1016,"translationKey":1017,"updatedAt":1006,"__hash__":1018,"html":1019,"bodyMarkdown":1020,"translations":1021,"previous":1028,"next":1033},"blog\u002Fen\u002Fblog\u002F9.create-kanban-board-markdown-fude-ai-agents.md","Create a Kanban Board in Markdown with Fude and AI Agents","Antoine Frankart",{"type":8,"value":9,"toc":989},"minimark",[10,19,35,38,46,53,56,61,64,67,73,80,83,111,114,117,121,124,265,268,274,278,283,286,350,356,359,379,382,402,405,408,412,415,420,427,447,450,454,465,474,477,486,489,492,496,499,537,540,543,578,582,585,588,593,596,599,609,613,616,647,663,666,670,673,690,693,714,717,721,724,727,734,737,740,743,747,750,785,788,814,817,821,824,948,951,962,965,968,971,978,985],[11,12,13,14,18],"p",{},"New in Fude: you can now display a ",[15,16,17],"strong",{},"Kanban board directly from a Markdown file",".",[11,20,21,22,29,30,34],{},"The idea came from ",[23,24,28],"a",{"href":25,"rel":26},"https:\u002F\u002Fx.com\u002Fcaffeinatedwes\u002Fstatus\u002F2080647645903700230?s=46",[27],"nofollow","this tweet by Wes Wagner",": the ",[31,32,33],"code",{},".md"," file is an excellent interface for agents, while the Kanban board is a better interface for humans.",[11,36,37],{},"Kanban boards have become a common way to track projects because they show the state of the work at a glance: what remains to be done, what is moving forward, what is waiting for review, and what is complete. A simple list may contain the same information, but it quickly becomes difficult to scan as the project grows.",[11,39,40,41,45],{},"At the same time, Markdown files are ",[23,42,44],{"href":43},"\u002Fen\u002Fblog\u002Fwhy-ai-responds-in-markdown\u002F","at the heart of AI workflows",". They are structured, readable, easy to version, and easy for both agents and humans to edit.",[11,47,48,49,52],{},"Combining the two creates a natural workflow: ",[15,50,51],{},"the agent creates and maintains the Markdown file, while Fude turns it into a board that you can read and track visually",". One file remains the source of truth, with no need to copy tasks into another tool.",[11,54,55],{},"Here is how to ask an AI agent to create your first board, understand the result, and write one yourself if you want to.",[57,58,60],"h2",{"id":59},"_1-ask-an-ai-agent-to-create-the-board","1. Ask an AI agent to create the board",[11,62,63],{},"The main use case is not entering every card by hand. It is letting an AI agent turn a specification, a task list, or a project plan into a Kanban board.",[11,65,66],{},"You can start with a short prompt:",[68,69,70],"blockquote",{},[11,71,72],{},"Prepare the plan for this feature as a Fude Kanban board, save it in a Markdown file, then open it in Fude.",[11,74,75,76,79],{},"If your agent already knows the Fude convention through the skill installed with the app, this instruction is enough. It knows how to use the ",[31,77,78],{},"kanban-board"," block, organize tasks into columns, and open the result in the reader.",[11,81,82],{},"For more control over the result, use a more detailed prompt:",[68,84,85],{},[11,86,87,88,91,92,94,95,97,98,100,101,104,105,107,108,110],{},"Create a Fude Kanban board to prepare the next release of the app.",[89,90],"br",{},"\nUse the columns “To do,” “In progress,” “In review,” and “Done.”",[89,93],{},"\nEach card must be a top-level Markdown task.",[89,96],{},"\nAdd tags for the relevant areas and a due date when it provides useful information.",[89,99],{},"\nPlace ",[31,102,103],{},"**Complete**"," in the “Done” column to mark it as an archive.",[89,106],{},"\nSave the result in a ",[31,109,33],{}," file, then open it in Fude.",[11,112,113],{},"The agent produces the file. Fude produces the view.",[11,115,116],{},"You can then review the plan without rereading a long raw list in your IDE, terminal, or AI application.",[57,118,120],{"id":119},"_2-the-result-is-a-real-board-not-a-screenshot","2. The result is a real board, not a screenshot",[11,122,123],{},"The board below is part of this article's Markdown. It is not an image.",[125,126,130],"pre",{"className":127,"code":128,"language":78,"meta":129,"style":129},"language-kanban-board shiki shiki-themes github-light github-dark","## To do\n\n- [ ] Prepare the launch screenshots #communication @{2026-09-10}\n- [ ] Document the syntax for agents #docs\n\n  Add a minimal example and a complete template to copy.\n\n## In progress\n\n- [ ] Finalize the website rendering #website\n- [ ] Check the light and dark themes #design\n\n## In review\n\n- [ ] Test comments inside cards #reader\n- Review the publishing guide #content\n\n## Done\n\n**Complete**\n\n- [x] Define the `kanban-board` format #markdown\n- [x] Add tags and due dates #parser\n","",[31,131,132,140,147,153,159,164,170,175,181,186,192,198,203,209,214,220,226,231,237,242,248,253,259],{"__ignoreMap":129},[133,134,137],"span",{"class":135,"line":136},"line",1,[133,138,139],{},"## To do\n",[133,141,143],{"class":135,"line":142},2,[133,144,146],{"emptyLinePlaceholder":145},true,"\n",[133,148,150],{"class":135,"line":149},3,[133,151,152],{},"- [ ] Prepare the launch screenshots #communication @{2026-09-10}\n",[133,154,156],{"class":135,"line":155},4,[133,157,158],{},"- [ ] Document the syntax for agents #docs\n",[133,160,162],{"class":135,"line":161},5,[133,163,146],{"emptyLinePlaceholder":145},[133,165,167],{"class":135,"line":166},6,[133,168,169],{},"  Add a minimal example and a complete template to copy.\n",[133,171,173],{"class":135,"line":172},7,[133,174,146],{"emptyLinePlaceholder":145},[133,176,178],{"class":135,"line":177},8,[133,179,180],{},"## In progress\n",[133,182,184],{"class":135,"line":183},9,[133,185,146],{"emptyLinePlaceholder":145},[133,187,189],{"class":135,"line":188},10,[133,190,191],{},"- [ ] Finalize the website rendering #website\n",[133,193,195],{"class":135,"line":194},11,[133,196,197],{},"- [ ] Check the light and dark themes #design\n",[133,199,201],{"class":135,"line":200},12,[133,202,146],{"emptyLinePlaceholder":145},[133,204,206],{"class":135,"line":205},13,[133,207,208],{},"## In review\n",[133,210,212],{"class":135,"line":211},14,[133,213,146],{"emptyLinePlaceholder":145},[133,215,217],{"class":135,"line":216},15,[133,218,219],{},"- [ ] Test comments inside cards #reader\n",[133,221,223],{"class":135,"line":222},16,[133,224,225],{},"- Review the publishing guide #content\n",[133,227,229],{"class":135,"line":228},17,[133,230,146],{"emptyLinePlaceholder":145},[133,232,234],{"class":135,"line":233},18,[133,235,236],{},"## Done\n",[133,238,240],{"class":135,"line":239},19,[133,241,146],{"emptyLinePlaceholder":145},[133,243,245],{"class":135,"line":244},20,[133,246,247],{},"**Complete**\n",[133,249,251],{"class":135,"line":250},21,[133,252,146],{"emptyLinePlaceholder":145},[133,254,256],{"class":135,"line":255},22,[133,257,258],{},"- [x] Define the `kanban-board` format #markdown\n",[133,260,262],{"class":135,"line":261},23,[133,263,264],{},"- [x] Add tags and due dates #parser\n",[11,266,267],{},"The headings become columns. The list items become cards. Checkboxes, tags, and dates provide the information you need to track the work.",[11,269,270,271,273],{},"The document is still a simple ",[31,272,33],{}," file. Your agent can edit it with its usual tools, Git can preserve its history, and Fude makes it pleasant to browse.",[57,275,277],{"id":276},"_3-create-columns-and-cards","3. Create columns and cards",[11,279,280,281,18],{},"A Fude board lives entirely inside a code block named ",[31,282,78],{},[11,284,285],{},"Here is the minimal structure:",[125,287,291],{"className":288,"code":289,"language":290,"meta":129,"style":129},"language-markdown shiki shiki-themes github-light github-dark","```kanban-board\n## To do\n\n- [ ] Prepare the documentation\n\n## In progress\n\n- [ ] Finalize the component\n\n## Done\n\n- [x] Define the format\n```\n","markdown",[31,292,293,298,302,306,311,315,319,323,328,332,336,340,345],{"__ignoreMap":129},[133,294,295],{"class":135,"line":136},[133,296,297],{},"```kanban-board\n",[133,299,300],{"class":135,"line":142},[133,301,139],{},[133,303,304],{"class":135,"line":149},[133,305,146],{"emptyLinePlaceholder":145},[133,307,308],{"class":135,"line":155},[133,309,310],{},"- [ ] Prepare the documentation\n",[133,312,313],{"class":135,"line":161},[133,314,146],{"emptyLinePlaceholder":145},[133,316,317],{"class":135,"line":166},[133,318,180],{},[133,320,321],{"class":135,"line":172},[133,322,146],{"emptyLinePlaceholder":145},[133,324,325],{"class":135,"line":177},[133,326,327],{},"- [ ] Finalize the component\n",[133,329,330],{"class":135,"line":183},[133,331,146],{"emptyLinePlaceholder":145},[133,333,334],{"class":135,"line":188},[133,335,236],{},[133,337,338],{"class":135,"line":194},[133,339,146],{"emptyLinePlaceholder":145},[133,341,342],{"class":135,"line":200},[133,343,344],{},"- [x] Define the format\n",[133,346,347],{"class":135,"line":205},[133,348,349],{},"```\n",[11,351,352,353,355],{},"The ",[31,354,78],{}," name explicitly tells Fude to display the content as a board. A regular Markdown list therefore remains a regular list.",[11,357,358],{},"Each heading opens a column. Its absolute level does not matter, as long as every column uses the same level:",[125,360,362],{"className":288,"code":361,"language":290,"meta":129,"style":129},"### To do\n### In progress\n### Done\n",[31,363,364,369,374],{"__ignoreMap":129},[133,365,366],{"class":135,"line":136},[133,367,368],{},"### To do\n",[133,370,371],{"class":135,"line":142},[133,372,373],{},"### In progress\n",[133,375,376],{"class":135,"line":149},[133,377,378],{},"### Done\n",[11,380,381],{},"Under each heading, a list item creates a card:",[125,383,385],{"className":288,"code":384,"language":290,"meta":129,"style":129},"- [ ] Open task\n- [x] Completed task\n- Idea with no completion state\n",[31,386,387,392,397],{"__ignoreMap":129},[133,388,389],{"class":135,"line":136},[133,390,391],{},"- [ ] Open task\n",[133,393,394],{"class":135,"line":142},[133,395,396],{},"- [x] Completed task\n",[133,398,399],{"class":135,"line":149},[133,400,401],{},"- Idea with no completion state\n",[11,403,404],{},"The last form works well for an idea, a note, or a decision that belongs on the board without being a task to check off.",[11,406,407],{},"The same document can contain text before and after the board, or even several boards. For example, you can track the implementation of the next release in one board and its launch communication in another.",[57,409,411],{"id":410},"_4-add-details-to-cards","4. Add details to cards",[11,413,414],{},"A card can contain more than a title. Fude recognizes tags, due dates, and Markdown content placed below the task.",[416,417,419],"h3",{"id":418},"add-tags","Add tags",[11,421,422,423,426],{},"A word beginning with ",[31,424,425],{},"#"," becomes a badge:",[125,428,430],{"className":288,"code":429,"language":290,"meta":129,"style":129},"- [ ] Review the navigation #design\n- [ ] Fix synchronization #backend\n- [ ] Prepare the campaign #growth\u002Femail\n",[31,431,432,437,442],{"__ignoreMap":129},[133,433,434],{"class":135,"line":136},[133,435,436],{},"- [ ] Review the navigation #design\n",[133,438,439],{"class":135,"line":142},[133,440,441],{},"- [ ] Fix synchronization #backend\n",[133,443,444],{"class":135,"line":149},[133,445,446],{},"- [ ] Prepare the campaign #growth\u002Femail\n",[11,448,449],{},"Tags make it easy to identify the areas involved without adding more columns.",[416,451,453],{"id":452},"add-a-due-date","Add a due date",[11,455,456,457,460,461,464],{},"A date placed between ",[31,458,459],{},"@{"," and ",[31,462,463],{},"}"," becomes a due date:",[125,466,468],{"className":288,"code":467,"language":290,"meta":129,"style":129},"- [ ] Publish the release notes #communication @{2026-09-15}\n",[31,469,470],{"__ignoreMap":129},[133,471,472],{"class":135,"line":136},[133,473,467],{},[11,475,476],{},"You can also include a time:",[125,478,480],{"className":288,"code":479,"language":290,"meta":129,"style":129},"- [ ] Release the new version #release @{2026-09-15T14:30}\n",[31,481,482],{"__ignoreMap":129},[133,483,484],{"class":135,"line":136},[133,485,479],{},[11,487,488],{},"Fude formats the date according to the app's language and visually identifies overdue dates.",[11,490,491],{},"The syntax accepts one due date per card. It deliberately excludes time zones: the time represents a local intention, not an instant to convert from one country to another.",[416,493,495],{"id":494},"add-a-description","Add a description",[11,497,498],{},"To keep more context inside a card, add indented content below its title:",[125,500,502],{"className":288,"code":501,"language":290,"meta":129,"style":129},"- [ ] Prepare the documentation #docs\n\n  Explain the minimal format before the advanced options.\n\n  - add an example created by an agent;\n  - show the result in Fude;\n  - provide a template to copy.\n",[31,503,504,509,513,518,522,527,532],{"__ignoreMap":129},[133,505,506],{"class":135,"line":136},[133,507,508],{},"- [ ] Prepare the documentation #docs\n",[133,510,511],{"class":135,"line":142},[133,512,146],{"emptyLinePlaceholder":145},[133,514,515],{"class":135,"line":149},[133,516,517],{},"  Explain the minimal format before the advanced options.\n",[133,519,520],{"class":135,"line":155},[133,521,146],{"emptyLinePlaceholder":145},[133,523,524],{"class":135,"line":161},[133,525,526],{},"  - add an example created by an agent;\n",[133,528,529],{"class":135,"line":166},[133,530,531],{},"  - show the result in Fude;\n",[133,533,534],{"class":135,"line":172},[133,535,536],{},"  - provide a template to copy.\n",[11,538,539],{},"Click the card in Fude to open this content in a reading window.",[11,541,542],{},"The content remains regular Markdown. It can contain:",[544,545,546,550,553,560,566,572,575],"ul",{},[547,548,549],"li",{},"paragraphs;",[547,551,552],{},"lists;",[547,554,555,559],{},[23,556,558],{"href":557},"\u002Fen\u002Fblog\u002Fbold-italic-strikethrough-underline-markdown\u002F","bold, italic, or strikethrough text",";",[547,561,562,559],{},[23,563,565],{"href":564},"\u002Fen\u002Fblog\u002Fhow-to-create-links-in-markdown\u002F","Markdown links",[547,567,568,559],{},[23,569,571],{"href":570},"\u002Fen\u002Fblog\u002Fhow-to-add-images-in-markdown\u002F","local or remote images",[547,573,574],{},"code blocks;",[547,576,577],{},"Mermaid diagrams.",[57,579,581],{"id":580},"_5-update-the-board-with-the-agent","5. Update the board with the agent",[11,583,584],{},"Creating the board is only the beginning. The format becomes most useful as the project moves forward.",[11,586,587],{},"Suppose the screenshots are complete and the documentation moves into review. You can ask:",[68,589,590],{},[11,591,592],{},"Update the board for the next release.\nMove the launch screenshots to “Done.”\nMove the documentation to “In review.”\nAdd a task to review the English version before September 15.",[11,594,595],{},"The agent edits the Markdown file directly. As soon as Fude reloads the document, the cards appear in their new columns.",[11,597,598],{},"There is no synchronization between two tools to maintain. The text is the board, and the board is a view of that text.",[11,600,601,602,605,606,18],{},"You can also make changes by hand. Moving a card means moving its line below another heading. Completing a task means replacing ",[31,603,604],{},"[ ]"," with ",[31,607,608],{},"[x]",[57,610,612],{"id":611},"_6-mark-completed-work","6. Mark completed work",[11,614,615],{},"A column can be displayed as an archive. Add the following marker below its heading:",[125,617,619],{"className":288,"code":618,"language":290,"meta":129,"style":129},"## Done\n\n**Complete**\n\n- [x] Define the board format\n- [x] Validate the first examples\n",[31,620,621,625,629,633,637,642],{"__ignoreMap":129},[133,622,623],{"class":135,"line":136},[133,624,236],{},[133,626,627],{"class":135,"line":142},[133,628,146],{"emptyLinePlaceholder":145},[133,630,631],{"class":135,"line":149},[133,632,247],{},[133,634,635],{"class":135,"line":155},[133,636,146],{"emptyLinePlaceholder":145},[133,638,639],{"class":135,"line":161},[133,640,641],{},"- [x] Define the board format\n",[133,643,644],{"class":135,"line":166},[133,645,646],{},"- [x] Validate the first examples\n",[11,648,649,650,653,654,653,657,660,661,18],{},"The visible column name remains up to you: ",[31,651,652],{},"Done",", ",[31,655,656],{},"Completed",[31,658,659],{},"Archive",", or any other title. Only the structural marker remains ",[31,662,103],{},[11,664,665],{},"The cards do not disappear. Fude simply presents this column more discreetly so the active work stays in focus.",[57,667,669],{"id":668},"_7-review-and-comment-on-the-agents-work","7. Review and comment on the agent's work",[11,671,672],{},"The Kanban board integrates with Fude's reading features. You can:",[544,674,675,678,681,684,687],{},[547,676,677],{},"click a card to read its full content;",[547,679,680],{},"search for a word in card titles and descriptions;",[547,682,683],{},"select a passage;",[547,685,686],{},"leave a comment inside a card;",[547,688,689],{},"identify cards that still contain open comments.",[11,691,692],{},"This creates a simple workflow:",[694,695,696,699,702,705,708,711],"ol",{},[547,697,698],{},"the agent creates or updates the Markdown file;",[547,700,701],{},"Fude displays the board;",[547,703,704],{},"you open a card and leave a comment, such as “split this task into two”;",[547,706,707],{},"the agent retrieves the comment through Fude's MCP server;",[547,709,710],{},"it updates the file with its usual tools;",[547,712,713],{},"you review the result and resolve the comment.",[11,715,716],{},"The comment remains attached to the document and its context. You do not create a second list of requests beside the project.",[57,718,720],{"id":719},"_8-a-board-to-read-not-another-project-management-tool","8. A board to read, not another project management tool",[11,722,723],{},"Fude displays the board, but it does not try to replace Trello or Linear.",[11,725,726],{},"There is no drag-and-drop, no form for creating a card, and no menu for changing its status. The board also does not combine tasks from several files or calculate velocity metrics.",[11,728,729,730,18],{},"The workflow remains deliberately simple: the agent or your editor changes the Markdown, then Fude displays the new state. This matches ",[23,731,733],{"href":732},"\u002Fen\u002Fblog\u002Ffude-markdown-reader-ai-era\u002F","Fude's role as a Markdown reader",[11,735,736],{},"Outside Fude, the block appears as code. GitHub, Obsidian, and other readers still let you read and edit the headings, tasks, tags, and dates, but they do not arrange them into columns.",[11,738,739],{},"The file therefore remains readable as text, easy to version with Git, comparable in a pull request, and accessible to your usual tools. Only the Kanban rendering depends on Fude.",[11,741,742],{},"Boards are part of Fude's reading features and are available for free.",[57,744,746],{"id":745},"_9-fix-common-problems","9. Fix common problems",[11,748,749],{},"A few rules prevent most issues:",[544,751,752,757,760,763,766,769,779],{},[547,753,754,755,559],{},"the block must use the exact name ",[31,756,78],{},[547,758,759],{},"it must contain at least one heading;",[547,761,762],{},"all column headings must use the same level;",[547,764,765],{},"each card must be a list item placed below a column;",[547,767,768],{},"content added after a blank line must remain indented below its card;",[547,770,771,772,775,776,559],{},"dates use the format ",[31,773,774],{},"@{2026-09-15}"," or ",[31,777,778],{},"@{2026-09-15T14:30}",[547,780,781,782,784],{},"an archived column contains ",[31,783,103],{}," on its own line.",[11,786,787],{},"If the board appears as a code block, start by checking its opening:",[125,789,791],{"className":288,"code":790,"language":290,"meta":129,"style":129},"```kanban-board\n## To do\n\n- [ ] First task\n```\n",[31,792,793,797,801,805,810],{"__ignoreMap":129},[133,794,795],{"class":135,"line":136},[133,796,297],{},[133,798,799],{"class":135,"line":142},[133,800,139],{},[133,802,803],{"class":135,"line":149},[133,804,146],{"emptyLinePlaceholder":145},[133,806,807],{"class":135,"line":155},[133,808,809],{},"- [ ] First task\n",[133,811,812],{"class":135,"line":161},[133,813,349],{},[11,815,816],{},"Fude never tries to turn a list into a board automatically. The block name is what triggers the rendering.",[57,818,820],{"id":819},"_10-copy-the-template","10. Copy the template",[11,822,823],{},"Here is a complete template for your next project:",[125,825,827],{"className":288,"code":826,"language":290,"meta":129,"style":129},"```kanban-board\n## Backlog\n\n- Idea to explore #discovery\n\n## To do\n\n- [ ] Prepare the documentation #docs @{2026-09-15}\n\n  Add the context needed to complete the task.\n\n- [ ] Check the themes #design\n\n## In progress\n\n- [ ] Finalize the board rendering #development\n\n## In review\n\n- [ ] Review the launch copy #communication\n\n## Done\n\n**Complete**\n\n- [x] Define the `kanban-board` format #markdown\n```\n",[31,828,829,833,838,842,847,851,855,859,864,868,873,877,882,886,890,894,899,903,907,911,916,920,924,928,933,938,943],{"__ignoreMap":129},[133,830,831],{"class":135,"line":136},[133,832,297],{},[133,834,835],{"class":135,"line":142},[133,836,837],{},"## Backlog\n",[133,839,840],{"class":135,"line":149},[133,841,146],{"emptyLinePlaceholder":145},[133,843,844],{"class":135,"line":155},[133,845,846],{},"- Idea to explore #discovery\n",[133,848,849],{"class":135,"line":161},[133,850,146],{"emptyLinePlaceholder":145},[133,852,853],{"class":135,"line":166},[133,854,139],{},[133,856,857],{"class":135,"line":172},[133,858,146],{"emptyLinePlaceholder":145},[133,860,861],{"class":135,"line":177},[133,862,863],{},"- [ ] Prepare the documentation #docs @{2026-09-15}\n",[133,865,866],{"class":135,"line":183},[133,867,146],{"emptyLinePlaceholder":145},[133,869,870],{"class":135,"line":188},[133,871,872],{},"  Add the context needed to complete the task.\n",[133,874,875],{"class":135,"line":194},[133,876,146],{"emptyLinePlaceholder":145},[133,878,879],{"class":135,"line":200},[133,880,881],{},"- [ ] Check the themes #design\n",[133,883,884],{"class":135,"line":205},[133,885,146],{"emptyLinePlaceholder":145},[133,887,888],{"class":135,"line":211},[133,889,180],{},[133,891,892],{"class":135,"line":216},[133,893,146],{"emptyLinePlaceholder":145},[133,895,896],{"class":135,"line":222},[133,897,898],{},"- [ ] Finalize the board rendering #development\n",[133,900,901],{"class":135,"line":228},[133,902,146],{"emptyLinePlaceholder":145},[133,904,905],{"class":135,"line":233},[133,906,208],{},[133,908,909],{"class":135,"line":239},[133,910,146],{"emptyLinePlaceholder":145},[133,912,913],{"class":135,"line":244},[133,914,915],{},"- [ ] Review the launch copy #communication\n",[133,917,918],{"class":135,"line":250},[133,919,146],{"emptyLinePlaceholder":145},[133,921,922],{"class":135,"line":255},[133,923,236],{},[133,925,926],{"class":135,"line":261},[133,927,146],{"emptyLinePlaceholder":145},[133,929,931],{"class":135,"line":930},24,[133,932,247],{},[133,934,936],{"class":135,"line":935},25,[133,937,146],{"emptyLinePlaceholder":145},[133,939,941],{"class":135,"line":940},26,[133,942,258],{},[133,944,946],{"class":135,"line":945},27,[133,947,349],{},[11,949,950],{},"You can write this block yourself, save it as a template, or ask your agent to generate it from an existing specification.",[11,952,953,954,958,959,18],{},"If you are still getting familiar with the format, start with the guide ",[23,955,957],{"href":956},"\u002Fen\u002Fblog\u002Fwhat-is-markdown-file-how-to-open\u002F","Markdown files (.md): what they are and how to open them",". To understand why agents produce this type of file so naturally, read the article about ",[23,960,961],{"href":43},"the relationship between Markdown and AI",[963,964],"hr",{},[11,966,967],{},"The goal is not for Fude to compete with Trello or Linear. The feature solves a more specific problem: making an AI-written plan as pleasant for a human to browse as it is easy for an agent to edit.",[11,969,970],{},"The result fits in a single file. The agent writes the source. Git preserves its history. Fude renders the board and becomes the place for reading and review.",[11,972,973,974,18],{},"To try the syntax without installing an app, paste the template into ",[23,975,977],{"href":976},"\u002Fen\u002Fmarkdown-viewer\u002F","Fude's online Markdown reader",[11,979,980,981],{},"📌 ",[23,982,984],{"href":983},"\u002Fen\u002F#download","Download Fude",[986,987,988],"style",{},"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":129,"searchDepth":142,"depth":142,"links":990},[991,992,993,994,999,1000,1001,1002,1003,1004],{"id":59,"depth":142,"text":60},{"id":119,"depth":142,"text":120},{"id":276,"depth":142,"text":277},{"id":410,"depth":142,"text":411,"children":995},[996,997,998],{"id":418,"depth":149,"text":419},{"id":452,"depth":149,"text":453},{"id":494,"depth":149,"text":495},{"id":580,"depth":142,"text":581},{"id":611,"depth":142,"text":612},{"id":668,"depth":142,"text":669},{"id":719,"depth":142,"text":720},{"id":745,"depth":142,"text":746},{"id":819,"depth":142,"text":820},"product-changelog","2026-07-29","Fude turns a Markdown block into a Kanban board. Learn how to ask an AI agent to create your board, add cards, tags, and due dates, then review it in Fude.","md","\u002Fimages\u002Fblog\u002Fblog9","Fude displaying a Markdown Kanban board",{},false,"\u002Fen\u002Fblog\u002Fcreate-kanban-board-markdown-fude-ai-agents",{"title":5,"description":1007},"en\u002Fblog\u002F9.create-kanban-board-markdown-fude-ai-agents",null,"markdown-kanban-boards","lF2wM0BrAkuj5RrXj47qvjX380MSrTbQXSHdsiMHq-o","\u003Cp data-fude-source-line=\"2\">\u003Cspan data-fude-source-start=\"1\" data-fude-source-end=\"36\">New in Fude: you can now display a \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"38\" data-fude-source-end=\"80\">Kanban board directly from a Markdown file\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"82\" data-fude-source-end=\"83\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"4\">\u003Cspan data-fude-source-start=\"85\" data-fude-source-end=\"104\">The idea came from \u003C\u002Fspan>\u003Ca href=\"https:\u002F\u002Fx.com\u002Fcaffeinatedwes\u002Fstatus\u002F2080647645903700230?s=46\" data-fude-link-kind=\"external\" rel=\"noopener noreferrer\">\u003Cspan data-fude-source-start=\"105\" data-fude-source-end=\"129\">this tweet by Wes Wagner\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"192\" data-fude-source-end=\"198\">: the \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"198\" data-fude-source-end=\"203\">.md\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"203\" data-fude-source-end=\"303\"> file is an excellent interface for agents, while the Kanban board is a better interface for humans.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"6\">\u003Cspan data-fude-source-start=\"305\" data-fude-source-end=\"624\">Kanban boards have become a common way to track projects because they show the state of the work at a glance: what remains to be done, what is moving forward, what is waiting for review, and what is complete. A simple list may contain the same information, but it quickly becomes difficult to scan as the project grows.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"8\">\u003Cspan data-fude-source-start=\"626\" data-fude-source-end=\"663\">At the same time, Markdown files are \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002Fblog\u002Fwhy-ai-responds-in-markdown\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"664\" data-fude-source-end=\"692\">at the heart of AI workflows\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"732\" data-fude-source-end=\"826\">. They are structured, readable, easy to version, and easy for both agents and humans to edit.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"10\">\u003Cspan data-fude-source-start=\"828\" data-fude-source-end=\"874\">Combining the two creates a natural workflow: \u003C\u002Fspan>\u003Cstrong>\u003Cspan data-fude-source-start=\"876\" data-fude-source-end=\"996\">the agent creates and maintains the Markdown file, while Fude turns it into a board that you can read and track visually\u003C\u002Fspan>\u003C\u002Fstrong>\u003Cspan data-fude-source-start=\"998\" data-fude-source-end=\"1083\">. One file remains the source of truth, with no need to copy tasks into another tool.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"12\">\u003Cspan data-fude-source-start=\"1085\" data-fude-source-end=\"1205\">Here is how to ask an AI agent to create your first board, understand the result, and write one yourself if you want to.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-1-ask-an-ai-agent-to-create-the-board\" data-fude-source-line=\"14\">\u003Cspan data-fude-source-start=\"1210\" data-fude-source-end=\"1248\">1. Ask an AI agent to create the board\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"16\">\u003Cspan data-fude-source-start=\"1250\" data-fude-source-end=\"1403\">The main use case is not entering every card by hand. It is letting an AI agent turn a specification, a task list, or a project plan into a Kanban board.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"18\">\u003Cspan data-fude-source-start=\"1405\" data-fude-source-end=\"1439\">You can start with a short prompt:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cblockquote data-fude-source-line=\"20\">\n\u003Cp>\u003Cspan data-fude-source-start=\"1443\" data-fude-source-end=\"1550\">Prepare the plan for this feature as a Fude Kanban board, save it in a Markdown file, then open it in Fude.\u003C\u002Fspan>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp data-fude-source-line=\"22\">\u003Cspan data-fude-source-start=\"1552\" data-fude-source-end=\"1694\">If your agent already knows the Fude convention through the skill installed with the app, this instruction is enough. It knows how to use the \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"1694\" data-fude-source-end=\"1708\">kanban-board\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"1708\" data-fude-source-end=\"1779\"> block, organize tasks into columns, and open the result in the reader.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"24\">\u003Cspan data-fude-source-start=\"1781\" data-fude-source-end=\"1842\">For more control over the result, use a more detailed prompt:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cblockquote data-fude-source-line=\"26\">\n\u003Cp>\u003Cspan data-fude-source-start=\"1846\" data-fude-source-end=\"1912\">Create a Fude Kanban board to prepare the next release of the app.\u003C\u002Fspan>\u003Cbr>\n\u003Cspan data-fude-source-start=\"1917\" data-fude-source-end=\"1981\">Use the columns “To do,” “In progress,” “In review,” and “Done.”\u003C\u002Fspan>\u003Cbr>\n\u003Cspan data-fude-source-start=\"1986\" data-fude-source-end=\"2030\">Each card must be a top-level Markdown task.\u003C\u002Fspan>\u003Cbr>\n\u003Cspan data-fude-source-start=\"2035\" data-fude-source-end=\"2118\">Add tags for the relevant areas and a due date when it provides useful information.\u003C\u002Fspan>\u003Cbr>\n\u003Cspan data-fude-source-start=\"2123\" data-fude-source-end=\"2129\">Place \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"2129\" data-fude-source-end=\"2143\">**Complete**\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"2143\" data-fude-source-end=\"2190\"> in the “Done” column to mark it as an archive.\u003C\u002Fspan>\u003Cbr>\n\u003Cspan data-fude-source-start=\"2195\" data-fude-source-end=\"2216\">Save the result in a \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"2216\" data-fude-source-end=\"2221\">.md\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"2221\" data-fude-source-end=\"2249\"> file, then open it in Fude.\u003C\u002Fspan>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp data-fude-source-line=\"33\">\u003Cspan data-fude-source-start=\"2251\" data-fude-source-end=\"2303\">The agent produces the file. Fude produces the view.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"35\">\u003Cspan data-fude-source-start=\"2305\" data-fude-source-end=\"2409\">You can then review the plan without rereading a long raw list in your IDE, terminal, or AI application.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-2-the-result-is-a-real-board-not-a-screenshot\" data-fude-source-line=\"37\">\u003Cspan data-fude-source-start=\"2414\" data-fude-source-end=\"2461\">2. The result is a real board, not a screenshot\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"39\">\u003Cspan data-fude-source-start=\"2463\" data-fude-source-end=\"2534\">The board below is part of this article's Markdown. It is not an image.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cdiv class=\"fude-kanban-block\" data-fude-kanban-source=\"## To do\n\n- [ ] Prepare the launch screenshots #communication @{2026-09-10}\n- [ ] Document the syntax for agents #docs\n\n  Add a minimal example and a complete template to copy.\n\n## In progress\n\n- [ ] Finalize the website rendering #website\n- [ ] Check the light and dark themes #design\n\n## In review\n\n- [ ] Test comments inside cards #reader\n- Review the publishing guide #content\n\n## Done\n\n**Complete**\n\n- [x] Define the &#x60;kanban-board&#x60; format #markdown\n- [x] Add tags and due dates #parser\" data-fude-kanban-source-offset=\"2552\" data-fude-source-line=\"41\">\u003Cpre data-fude-code-block-start=\"2552\" data-fude-code-block-end=\"3042\">\u003Ccode class=\"language-kanban-board\" data-fude-code-block-start=\"2552\" data-fude-code-block-end=\"3042\">## To do\n\n- [ ] Prepare the launch screenshots #communication @{2026-09-10}\n- [ ] Document the syntax for agents #docs\n\n  Add a minimal example and a complete template to copy.\n\n## In progress\n\n- [ ] Finalize the website rendering #website\n- [ ] Check the light and dark themes #design\n\n## In review\n\n- [ ] Test comments inside cards #reader\n- Review the publishing guide #content\n\n## Done\n\n**Complete**\n\n- [x] Define the `kanban-board` format #markdown\n- [x] Add tags and due dates #parser\n\u003C\u002Fcode>\u003C\u002Fpre>\u003C\u002Fdiv>\n\u003Cp data-fude-source-line=\"67\">\u003Cspan data-fude-source-start=\"3048\" data-fude-source-end=\"3185\">The headings become columns. The list items become cards. Checkboxes, tags, and dates provide the information you need to track the work.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"69\">\u003Cspan data-fude-source-start=\"3187\" data-fude-source-end=\"3218\">The document is still a simple \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3218\" data-fude-source-end=\"3223\">.md\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3223\" data-fude-source-end=\"3342\"> file. Your agent can edit it with its usual tools, Git can preserve its history, and Fude makes it pleasant to browse.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-3-create-columns-and-cards\" data-fude-source-line=\"71\">\u003Cspan data-fude-source-start=\"3347\" data-fude-source-end=\"3374\">3. Create columns and cards\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"73\">\u003Cspan data-fude-source-start=\"3376\" data-fude-source-end=\"3430\">A Fude board lives entirely inside a code block named \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3430\" data-fude-source-end=\"3444\">kanban-board\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3444\" data-fude-source-end=\"3445\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"75\">\u003Cspan data-fude-source-start=\"3447\" data-fude-source-end=\"3477\">Here is the minimal structure:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"3492\" data-fude-code-block-end=\"3633\" data-fude-source-line=\"77\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"3492\" data-fude-code-block-end=\"3633\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```kanban-board\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## To do\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Prepare the documentation\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## In progress\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Finalize the component\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## Done\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [x] Define the format\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"93\">\u003Cspan data-fude-source-start=\"3640\" data-fude-source-end=\"3644\">The \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"3644\" data-fude-source-end=\"3658\">kanban-board\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"3658\" data-fude-source-end=\"3778\"> name explicitly tells Fude to display the content as a board. A regular Markdown list therefore remains a regular list.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"95\">\u003Cspan data-fude-source-start=\"3780\" data-fude-source-end=\"3889\">Each heading opens a column. Its absolute level does not matter, as long as every column uses the same level:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"3903\" data-fude-code-block-end=\"3937\" data-fude-source-line=\"97\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"3903\" data-fude-code-block-end=\"3937\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">### To do\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">### In progress\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">### Done\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"103\">\u003Cspan data-fude-source-start=\"3943\" data-fude-source-end=\"3990\">Under each heading, a list item creates a card:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"4004\" data-fude-code-block-end=\"4072\" data-fude-source-line=\"105\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"4004\" data-fude-code-block-end=\"4072\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Open task\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">x\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">] Completed task\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- Idea with no completion state\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"111\">\u003Cspan data-fude-source-start=\"4078\" data-fude-source-end=\"4198\">The last form works well for an idea, a note, or a decision that belongs on the board without being a task to check off.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"113\">\u003Cspan data-fude-source-start=\"4200\" data-fude-source-end=\"4406\">The same document can contain text before and after the board, or even several boards. For example, you can track the implementation of the next release in one board and its launch communication in another.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-4-add-details-to-cards\" data-fude-source-line=\"115\">\u003Cspan data-fude-source-start=\"4411\" data-fude-source-end=\"4434\">4. Add details to cards\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"117\">\u003Cspan data-fude-source-start=\"4436\" data-fude-source-end=\"4550\">A card can contain more than a title. Fude recognizes tags, due dates, and Markdown content placed below the task.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3 id=\"user-content-add-tags\" data-fude-source-line=\"119\">\u003Cspan data-fude-source-start=\"4556\" data-fude-source-end=\"4564\">Add tags\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp data-fude-source-line=\"121\">\u003Cspan data-fude-source-start=\"4566\" data-fude-source-end=\"4588\">A word beginning with \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4588\" data-fude-source-end=\"4591\">#\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4591\" data-fude-source-end=\"4608\"> becomes a badge:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"4622\" data-fude-code-block-end=\"4733\" data-fude-source-line=\"123\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"4622\" data-fude-code-block-end=\"4733\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Review the navigation #design\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Fix synchronization #backend\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Prepare the campaign #growth\u002Femail\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"129\">\u003Cspan data-fude-source-start=\"4739\" data-fude-source-end=\"4816\">Tags make it easy to identify the areas involved without adding more columns.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3 id=\"user-content-add-a-due-date\" data-fude-source-line=\"131\">\u003Cspan data-fude-source-start=\"4822\" data-fude-source-end=\"4836\">Add a due date\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp data-fude-source-line=\"133\">\u003Cspan data-fude-source-start=\"4838\" data-fude-source-end=\"4860\">A date placed between \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4860\" data-fude-source-end=\"4864\">@{\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4864\" data-fude-source-end=\"4869\"> and \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"4869\" data-fude-source-end=\"4872\">}\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"4872\" data-fude-source-end=\"4892\"> becomes a due date:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"4906\" data-fude-code-block-end=\"4966\" data-fude-source-line=\"135\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"4906\" data-fude-code-block-end=\"4966\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Publish the release notes #communication @{2026-09-15}\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"139\">\u003Cspan data-fude-source-start=\"4972\" data-fude-source-end=\"5000\">You can also include a time:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"5014\" data-fude-code-block-end=\"5072\" data-fude-source-line=\"141\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"5014\" data-fude-code-block-end=\"5072\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Release the new version #release @{2026-09-15T14:30}\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"145\">\u003Cspan data-fude-source-start=\"5078\" data-fude-source-end=\"5170\">Fude formats the date according to the app's language and visually identifies overdue dates.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"147\">\u003Cspan data-fude-source-start=\"5172\" data-fude-source-end=\"5344\">The syntax accepts one due date per card. It deliberately excludes time zones: the time represents a local intention, not an instant to convert from one country to another.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch3 id=\"user-content-add-a-description\" data-fude-source-line=\"149\">\u003Cspan data-fude-source-start=\"5350\" data-fude-source-end=\"5367\">Add a description\u003C\u002Fspan>\u003C\u002Fh3>\n\u003Cp data-fude-source-line=\"151\">\u003Cspan data-fude-source-start=\"5369\" data-fude-source-end=\"5442\">To keep more context inside a card, add indented content below its title:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"5456\" data-fude-code-block-end=\"5654\" data-fude-source-line=\"153\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"5456\" data-fude-code-block-end=\"5654\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [ ] Prepare the documentation #docs\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">  Explain the minimal format before the advanced options.\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">  - add an example created by an agent;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">  - show the result in Fude;\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">  - provide a template to copy.\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"163\">\u003Cspan data-fude-source-start=\"5660\" data-fude-source-end=\"5724\">Click the card in Fude to open this content in a reading window.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"165\">\u003Cspan data-fude-source-start=\"5726\" data-fude-source-end=\"5779\">The content remains regular Markdown. It can contain:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cul data-fude-source-line=\"167\">\n\u003Cli>\u003Cspan data-fude-source-start=\"5783\" data-fude-source-end=\"5794\">paragraphs;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"5797\" data-fude-source-end=\"5803\">lists;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fblog\u002Fbold-italic-strikethrough-underline-markdown\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"5807\" data-fude-source-end=\"5842\">bold, italic, or strikethrough text\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"5899\" data-fude-source-end=\"5900\">;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fblog\u002Fhow-to-create-links-in-markdown\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"5904\" data-fude-source-end=\"5918\">Markdown links\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"5962\" data-fude-source-end=\"5963\">;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"\u002Fen\u002Fblog\u002Fhow-to-add-images-in-markdown\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"5967\" data-fude-source-end=\"5989\">local or remote images\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"6031\" data-fude-source-end=\"6032\">;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"6035\" data-fude-source-end=\"6047\">code blocks;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"6050\" data-fude-source-end=\"6067\">Mermaid diagrams.\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"user-content-5-update-the-board-with-the-agent\" data-fude-source-line=\"175\">\u003Cspan data-fude-source-start=\"6072\" data-fude-source-end=\"6106\">5. Update the board with the agent\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"177\">\u003Cspan data-fude-source-start=\"6108\" data-fude-source-end=\"6210\">Creating the board is only the beginning. The format becomes most useful as the project moves forward.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"179\">\u003Cspan data-fude-source-start=\"6212\" data-fude-source-end=\"6302\">Suppose the screenshots are complete and the documentation moves into review. You can ask:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cblockquote data-fude-source-line=\"181\">\n\u003Cp>\u003Cspan data-fude-source-start=\"6306\" data-fude-source-end=\"6490\">Update the board for the next release.\nMove the launch screenshots to “Done.”\nMove the documentation to “In review.”\nAdd a task to review the English version before September 15.\u003C\u002Fspan>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Cp data-fude-source-line=\"186\">\u003Cspan data-fude-source-start=\"6492\" data-fude-source-end=\"6612\">The agent edits the Markdown file directly. As soon as Fude reloads the document, the cards appear in their new columns.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"188\">\u003Cspan data-fude-source-start=\"6614\" data-fude-source-end=\"6733\">There is no synchronization between two tools to maintain. The text is the board, and the board is a view of that text.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"190\">\u003Cspan data-fude-source-start=\"6735\" data-fude-source-end=\"6863\">You can also make changes by hand. Moving a card means moving its line below another heading. Completing a task means replacing \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"6863\" data-fude-source-end=\"6868\">[ ]\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"6868\" data-fude-source-end=\"6874\"> with \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"6874\" data-fude-source-end=\"6879\">[x]\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"6879\" data-fude-source-end=\"6880\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-6-mark-completed-work\" data-fude-source-line=\"192\">\u003Cspan data-fude-source-start=\"6885\" data-fude-source-end=\"6907\">6. Mark completed work\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"194\">\u003Cspan data-fude-source-start=\"6909\" data-fude-source-end=\"6993\">A column can be displayed as an archive. Add the following marker below its heading:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"7007\" data-fude-code-block-end=\"7093\" data-fude-source-line=\"196\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"7007\" data-fude-code-block-end=\"7093\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">## Done\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">**Complete**\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">x\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">] Define the board format\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">- [\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-token-keyword, color-mix(in srgb, var(--color-accent-primary) 68%, var(--color-code-text) 32%))\">x\u003C\u002Fspan>\u003Cspan style=\"color:var(--fude-code-foreground, var(--color-code-text))\">] Validate the first examples\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"205\">\u003Cspan data-fude-source-start=\"7099\" data-fude-source-end=\"7142\">The visible column name remains up to you: \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"7142\" data-fude-source-end=\"7148\">Done\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"7148\" data-fude-source-end=\"7150\">, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"7150\" data-fude-source-end=\"7161\">Completed\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"7161\" data-fude-source-end=\"7163\">, \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"7163\" data-fude-source-end=\"7172\">Archive\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"7172\" data-fude-source-end=\"7229\">, or any other title. Only the structural marker remains \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"7229\" data-fude-source-end=\"7243\">**Complete**\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"7243\" data-fude-source-end=\"7244\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"207\">\u003Cspan data-fude-source-start=\"7246\" data-fude-source-end=\"7357\">The cards do not disappear. Fude simply presents this column more discreetly so the active work stays in focus.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-7-review-and-comment-on-the-agents-work\" data-fude-source-line=\"209\">\u003Cspan data-fude-source-start=\"7362\" data-fude-source-end=\"7403\">7. Review and comment on the agent's work\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"211\">\u003Cspan data-fude-source-start=\"7405\" data-fude-source-end=\"7471\">The Kanban board integrates with Fude's reading features. You can:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cul data-fude-source-line=\"213\">\n\u003Cli>\u003Cspan data-fude-source-start=\"7475\" data-fude-source-end=\"7513\">click a card to read its full content;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7516\" data-fude-source-end=\"7566\">search for a word in card titles and descriptions;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7569\" data-fude-source-end=\"7586\">select a passage;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7589\" data-fude-source-end=\"7619\">leave a comment inside a card;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7622\" data-fude-source-end=\"7670\">identify cards that still contain open comments.\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp data-fude-source-line=\"219\">\u003Cspan data-fude-source-start=\"7672\" data-fude-source-end=\"7703\">This creates a simple workflow:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Col data-fude-source-line=\"221\">\n\u003Cli>\u003Cspan data-fude-source-start=\"7708\" data-fude-source-end=\"7755\">the agent creates or updates the Markdown file;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7759\" data-fude-source-end=\"7783\">Fude displays the board;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7787\" data-fude-source-end=\"7859\">you open a card and leave a comment, such as “split this task into two”;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7863\" data-fude-source-end=\"7921\">the agent retrieves the comment through Fude's MCP server;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7925\" data-fude-source-end=\"7966\">it updates the file with its usual tools;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"7970\" data-fude-source-end=\"8016\">you review the result and resolve the comment.\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp data-fude-source-line=\"228\">\u003Cspan data-fude-source-start=\"8018\" data-fude-source-end=\"8143\">The comment remains attached to the document and its context. You do not create a second list of requests beside the project.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-8-a-board-to-read-not-another-project-management-tool\" data-fude-source-line=\"230\">\u003Cspan data-fude-source-start=\"8148\" data-fude-source-end=\"8203\">8. A board to read, not another project management tool\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"232\">\u003Cspan data-fude-source-start=\"8205\" data-fude-source-end=\"8278\">Fude displays the board, but it does not try to replace Trello or Linear.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"234\">\u003Cspan data-fude-source-start=\"8280\" data-fude-source-end=\"8460\">There is no drag-and-drop, no form for creating a card, and no menu for changing its status. The board also does not combine tasks from several files or calculate velocity metrics.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"236\">\u003Cspan data-fude-source-start=\"8462\" data-fude-source-end=\"8598\">The workflow remains deliberately simple: the agent or your editor changes the Markdown, then Fude displays the new state. This matches \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002Fblog\u002Ffude-markdown-reader-ai-era\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"8599\" data-fude-source-end=\"8631\">Fude's role as a Markdown reader\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"8671\" data-fude-source-end=\"8672\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"238\">\u003Cspan data-fude-source-start=\"8674\" data-fude-source-end=\"8859\">Outside Fude, the block appears as code. GitHub, Obsidian, and other readers still let you read and edit the headings, tasks, tags, and dates, but they do not arrange them into columns.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"240\">\u003Cspan data-fude-source-start=\"8861\" data-fude-source-end=\"9040\">The file therefore remains readable as text, easy to version with Git, comparable in a pull request, and accessible to your usual tools. Only the Kanban rendering depends on Fude.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"242\">\u003Cspan data-fude-source-start=\"9042\" data-fude-source-end=\"9112\">Boards are part of Fude's reading features and are available for free.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-9-fix-common-problems\" data-fude-source-line=\"244\">\u003Cspan data-fude-source-start=\"9117\" data-fude-source-end=\"9139\">9. Fix common problems\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"246\">\u003Cspan data-fude-source-start=\"9141\" data-fude-source-end=\"9173\">A few rules prevent most issues:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cul data-fude-source-line=\"248\">\n\u003Cli>\u003Cspan data-fude-source-start=\"9177\" data-fude-source-end=\"9211\">the block must use the exact name \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"9211\" data-fude-source-end=\"9225\">kanban-board\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"9225\" data-fude-source-end=\"9226\">;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9229\" data-fude-source-end=\"9266\">it must contain at least one heading;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9269\" data-fude-source-end=\"9313\">all column headings must use the same level;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9316\" data-fude-source-end=\"9368\">each card must be a list item placed below a column;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9371\" data-fude-source-end=\"9440\">content added after a blank line must remain indented below its card;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9443\" data-fude-source-end=\"9464\">dates use the format \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"9464\" data-fude-source-end=\"9479\">@{2026-09-15}\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"9479\" data-fude-source-end=\"9483\"> or \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"9483\" data-fude-source-end=\"9504\">@{2026-09-15T14:30}\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"9504\" data-fude-source-end=\"9505\">;\u003C\u002Fspan>\u003C\u002Fli>\n\u003Cli>\u003Cspan data-fude-source-start=\"9508\" data-fude-source-end=\"9536\">an archived column contains \u003C\u002Fspan>\u003Ccode>\u003Cspan data-fude-source-start=\"9536\" data-fude-source-end=\"9550\">**Complete**\u003C\u002Fspan>\u003C\u002Fcode>\u003Cspan data-fude-source-start=\"9550\" data-fude-source-end=\"9567\"> on its own line.\u003C\u002Fspan>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp data-fude-source-line=\"256\">\u003Cspan data-fude-source-start=\"9569\" data-fude-source-end=\"9637\">If the board appears as a code block, start by checking its opening:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"9652\" data-fude-code-block-end=\"9698\" data-fude-source-line=\"258\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"9652\" data-fude-code-block-end=\"9698\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```kanban-board\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## To do\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] First task\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"266\">\u003Cspan data-fude-source-start=\"9705\" data-fude-source-end=\"9811\">Fude never tries to turn a list into a board automatically. The block name is what triggers the rendering.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch2 id=\"user-content-10-copy-the-template\" data-fude-source-line=\"268\">\u003Cspan data-fude-source-start=\"9816\" data-fude-source-end=\"9837\">10. Copy the template\u003C\u002Fspan>\u003C\u002Fh2>\n\u003Cp data-fude-source-line=\"270\">\u003Cspan data-fude-source-start=\"9839\" data-fude-source-end=\"9889\">Here is a complete template for your next project:\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cpre style=\"background-color:var(--fude-code-background, var(--color-code-bg));color:var(--fude-code-foreground, var(--color-code-text))\" tabindex=\"0\" class=\"shiki fude-code-theme fude-code-block\" data-language=\"markdown\" data-fude-code-block-start=\"9904\" data-fude-code-block-end=\"10304\" data-fude-source-line=\"272\">\u003Ccode class=\"language-markdown\" data-language=\"markdown\" data-fude-code-block-start=\"9904\" data-fude-code-block-end=\"10304\">\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```kanban-board\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## Backlog\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- Idea to explore #discovery\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## To do\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Prepare the documentation #docs @{2026-09-15}\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">  Add the context needed to complete the task.\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Check the themes #design\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## In progress\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Finalize the board rendering #development\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## In review\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [ ] Review the launch copy #communication\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">## Done\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">**Complete**\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">- [x] Define the `kanban-board` format #markdown\u003C\u002Fspan>\u003C\u002Fspan>\n\u003Cspan class=\"line\">\u003Cspan style=\"color:var(--fude-code-token-string, color-mix(in srgb, var(--color-accent-primary) 78%, var(--color-code-text) 22%))\">```\u003C\u002Fspan>\u003C\u002Fspan>\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp data-fude-source-line=\"302\">\u003Cspan data-fude-source-start=\"10311\" data-fude-source-end=\"10433\">You can write this block yourself, save it as a template, or ask your agent to generate it from an existing specification.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"304\">\u003Cspan data-fude-source-start=\"10435\" data-fude-source-end=\"10507\">If you are still getting familiar with the format, start with the guide \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002Fblog\u002Fwhat-is-markdown-file-how-to-open\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"10508\" data-fude-source-end=\"10564\">Markdown files (.md): what they are and how to open them\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"10610\" data-fude-source-end=\"10700\">. To understand why agents produce this type of file so naturally, read the article about \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002Fblog\u002Fwhy-ai-responds-in-markdown\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"10701\" data-fude-source-end=\"10741\">the relationship between Markdown and AI\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"10781\" data-fude-source-end=\"10782\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Chr data-fude-source-line=\"306\">\n\u003Cp data-fude-source-line=\"308\">\u003Cspan data-fude-source-start=\"10789\" data-fude-source-end=\"10987\">The goal is not for Fude to compete with Trello or Linear. The feature solves a more specific problem: making an AI-written plan as pleasant for a human to browse as it is easy for an agent to edit.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"310\">\u003Cspan data-fude-source-start=\"10989\" data-fude-source-end=\"11147\">The result fits in a single file. The agent writes the source. Git preserves its history. Fude renders the board and becomes the place for reading and review.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"312\">\u003Cspan data-fude-source-start=\"11149\" data-fude-source-end=\"11218\">To try the syntax without installing an app, paste the template into \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002Fmarkdown-viewer\u002F\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"11219\" data-fude-source-end=\"11248\">Fude's online Markdown reader\u003C\u002Fspan>\u003C\u002Fa>\u003Cspan data-fude-source-start=\"11271\" data-fude-source-end=\"11272\">.\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp data-fude-source-line=\"314\">\u003Cspan data-fude-source-start=\"11274\" data-fude-source-end=\"11276\">📌 \u003C\u002Fspan>\u003Ca href=\"\u002Fen\u002F#download\" data-fude-link-kind=\"unopenable\">\u003Cspan data-fude-source-start=\"11277\" data-fude-source-end=\"11290\">Download Fude\u003C\u002Fspan>\u003C\u002Fa>\u003C\u002Fp>","\nNew in Fude: you can now display a **Kanban board directly from a Markdown file**.\n\nThe idea came from [this tweet by Wes Wagner](https:\u002F\u002Fx.com\u002Fcaffeinatedwes\u002Fstatus\u002F2080647645903700230?s=46): the `.md` file is an excellent interface for agents, while the Kanban board is a better interface for humans.\n\nKanban boards have become a common way to track projects because they show the state of the work at a glance: what remains to be done, what is moving forward, what is waiting for review, and what is complete. A simple list may contain the same information, but it quickly becomes difficult to scan as the project grows.\n\nAt the same time, Markdown files are [at the heart of AI workflows](\u002Fen\u002Fblog\u002Fwhy-ai-responds-in-markdown\u002F). They are structured, readable, easy to version, and easy for both agents and humans to edit.\n\nCombining the two creates a natural workflow: **the agent creates and maintains the Markdown file, while Fude turns it into a board that you can read and track visually**. One file remains the source of truth, with no need to copy tasks into another tool.\n\nHere is how to ask an AI agent to create your first board, understand the result, and write one yourself if you want to.\n\n## 1. Ask an AI agent to create the board\n\nThe main use case is not entering every card by hand. It is letting an AI agent turn a specification, a task list, or a project plan into a Kanban board.\n\nYou can start with a short prompt:\n\n> Prepare the plan for this feature as a Fude Kanban board, save it in a Markdown file, then open it in Fude.\n\nIf your agent already knows the Fude convention through the skill installed with the app, this instruction is enough. It knows how to use the `kanban-board` block, organize tasks into columns, and open the result in the reader.\n\nFor more control over the result, use a more detailed prompt:\n\n> Create a Fude Kanban board to prepare the next release of the app.  \n> Use the columns “To do,” “In progress,” “In review,” and “Done.”  \n> Each card must be a top-level Markdown task.  \n> Add tags for the relevant areas and a due date when it provides useful information.  \n> Place `**Complete**` in the “Done” column to mark it as an archive.  \n> Save the result in a `.md` file, then open it in Fude.\n\nThe agent produces the file. Fude produces the view.\n\nYou can then review the plan without rereading a long raw list in your IDE, terminal, or AI application.\n\n## 2. The result is a real board, not a screenshot\n\nThe board below is part of this article's Markdown. It is not an image.\n\n```kanban-board\n## To do\n\n- [ ] Prepare the launch screenshots #communication @{2026-09-10}\n- [ ] Document the syntax for agents #docs\n\n  Add a minimal example and a complete template to copy.\n\n## In progress\n\n- [ ] Finalize the website rendering #website\n- [ ] Check the light and dark themes #design\n\n## In review\n\n- [ ] Test comments inside cards #reader\n- Review the publishing guide #content\n\n## Done\n\n**Complete**\n\n- [x] Define the `kanban-board` format #markdown\n- [x] Add tags and due dates #parser\n```\n\nThe headings become columns. The list items become cards. Checkboxes, tags, and dates provide the information you need to track the work.\n\nThe document is still a simple `.md` file. Your agent can edit it with its usual tools, Git can preserve its history, and Fude makes it pleasant to browse.\n\n## 3. Create columns and cards\n\nA Fude board lives entirely inside a code block named `kanban-board`.\n\nHere is the minimal structure:\n\n````markdown\n```kanban-board\n## To do\n\n- [ ] Prepare the documentation\n\n## In progress\n\n- [ ] Finalize the component\n\n## Done\n\n- [x] Define the format\n```\n````\n\nThe `kanban-board` name explicitly tells Fude to display the content as a board. A regular Markdown list therefore remains a regular list.\n\nEach heading opens a column. Its absolute level does not matter, as long as every column uses the same level:\n\n```markdown\n### To do\n### In progress\n### Done\n```\n\nUnder each heading, a list item creates a card:\n\n```markdown\n- [ ] Open task\n- [x] Completed task\n- Idea with no completion state\n```\n\nThe last form works well for an idea, a note, or a decision that belongs on the board without being a task to check off.\n\nThe same document can contain text before and after the board, or even several boards. For example, you can track the implementation of the next release in one board and its launch communication in another.\n\n## 4. Add details to cards\n\nA card can contain more than a title. Fude recognizes tags, due dates, and Markdown content placed below the task.\n\n### Add tags\n\nA word beginning with `#` becomes a badge:\n\n```markdown\n- [ ] Review the navigation #design\n- [ ] Fix synchronization #backend\n- [ ] Prepare the campaign #growth\u002Femail\n```\n\nTags make it easy to identify the areas involved without adding more columns.\n\n### Add a due date\n\nA date placed between `@{` and `}` becomes a due date:\n\n```markdown\n- [ ] Publish the release notes #communication @{2026-09-15}\n```\n\nYou can also include a time:\n\n```markdown\n- [ ] Release the new version #release @{2026-09-15T14:30}\n```\n\nFude formats the date according to the app's language and visually identifies overdue dates.\n\nThe syntax accepts one due date per card. It deliberately excludes time zones: the time represents a local intention, not an instant to convert from one country to another.\n\n### Add a description\n\nTo keep more context inside a card, add indented content below its title:\n\n```markdown\n- [ ] Prepare the documentation #docs\n\n  Explain the minimal format before the advanced options.\n\n  - add an example created by an agent;\n  - show the result in Fude;\n  - provide a template to copy.\n```\n\nClick the card in Fude to open this content in a reading window.\n\nThe content remains regular Markdown. It can contain:\n\n- paragraphs;\n- lists;\n- [bold, italic, or strikethrough text](\u002Fen\u002Fblog\u002Fbold-italic-strikethrough-underline-markdown\u002F);\n- [Markdown links](\u002Fen\u002Fblog\u002Fhow-to-create-links-in-markdown\u002F);\n- [local or remote images](\u002Fen\u002Fblog\u002Fhow-to-add-images-in-markdown\u002F);\n- code blocks;\n- Mermaid diagrams.\n\n## 5. Update the board with the agent\n\nCreating the board is only the beginning. The format becomes most useful as the project moves forward.\n\nSuppose the screenshots are complete and the documentation moves into review. You can ask:\n\n> Update the board for the next release.\n> Move the launch screenshots to “Done.”\n> Move the documentation to “In review.”\n> Add a task to review the English version before September 15.\n\nThe agent edits the Markdown file directly. As soon as Fude reloads the document, the cards appear in their new columns.\n\nThere is no synchronization between two tools to maintain. The text is the board, and the board is a view of that text.\n\nYou can also make changes by hand. Moving a card means moving its line below another heading. Completing a task means replacing `[ ]` with `[x]`.\n\n## 6. Mark completed work\n\nA column can be displayed as an archive. Add the following marker below its heading:\n\n```markdown\n## Done\n\n**Complete**\n\n- [x] Define the board format\n- [x] Validate the first examples\n```\n\nThe visible column name remains up to you: `Done`, `Completed`, `Archive`, or any other title. Only the structural marker remains `**Complete**`.\n\nThe cards do not disappear. Fude simply presents this column more discreetly so the active work stays in focus.\n\n## 7. Review and comment on the agent's work\n\nThe Kanban board integrates with Fude's reading features. You can:\n\n- click a card to read its full content;\n- search for a word in card titles and descriptions;\n- select a passage;\n- leave a comment inside a card;\n- identify cards that still contain open comments.\n\nThis creates a simple workflow:\n\n1. the agent creates or updates the Markdown file;\n2. Fude displays the board;\n3. you open a card and leave a comment, such as “split this task into two”;\n4. the agent retrieves the comment through Fude's MCP server;\n5. it updates the file with its usual tools;\n6. you review the result and resolve the comment.\n\nThe comment remains attached to the document and its context. You do not create a second list of requests beside the project.\n\n## 8. A board to read, not another project management tool\n\nFude displays the board, but it does not try to replace Trello or Linear.\n\nThere is no drag-and-drop, no form for creating a card, and no menu for changing its status. The board also does not combine tasks from several files or calculate velocity metrics.\n\nThe workflow remains deliberately simple: the agent or your editor changes the Markdown, then Fude displays the new state. This matches [Fude's role as a Markdown reader](\u002Fen\u002Fblog\u002Ffude-markdown-reader-ai-era\u002F).\n\nOutside Fude, the block appears as code. GitHub, Obsidian, and other readers still let you read and edit the headings, tasks, tags, and dates, but they do not arrange them into columns.\n\nThe file therefore remains readable as text, easy to version with Git, comparable in a pull request, and accessible to your usual tools. Only the Kanban rendering depends on Fude.\n\nBoards are part of Fude's reading features and are available for free.\n\n## 9. Fix common problems\n\nA few rules prevent most issues:\n\n- the block must use the exact name `kanban-board`;\n- it must contain at least one heading;\n- all column headings must use the same level;\n- each card must be a list item placed below a column;\n- content added after a blank line must remain indented below its card;\n- dates use the format `@{2026-09-15}` or `@{2026-09-15T14:30}`;\n- an archived column contains `**Complete**` on its own line.\n\nIf the board appears as a code block, start by checking its opening:\n\n````markdown\n```kanban-board\n## To do\n\n- [ ] First task\n```\n````\n\nFude never tries to turn a list into a board automatically. The block name is what triggers the rendering.\n\n## 10. Copy the template\n\nHere is a complete template for your next project:\n\n````markdown\n```kanban-board\n## Backlog\n\n- Idea to explore #discovery\n\n## To do\n\n- [ ] Prepare the documentation #docs @{2026-09-15}\n\n  Add the context needed to complete the task.\n\n- [ ] Check the themes #design\n\n## In progress\n\n- [ ] Finalize the board rendering #development\n\n## In review\n\n- [ ] Review the launch copy #communication\n\n## Done\n\n**Complete**\n\n- [x] Define the `kanban-board` format #markdown\n```\n````\n\nYou can write this block yourself, save it as a template, or ask your agent to generate it from an existing specification.\n\nIf you are still getting familiar with the format, start with the guide [Markdown files (.md): what they are and how to open them](\u002Fen\u002Fblog\u002Fwhat-is-markdown-file-how-to-open\u002F). To understand why agents produce this type of file so naturally, read the article about [the relationship between Markdown and AI](\u002Fen\u002Fblog\u002Fwhy-ai-responds-in-markdown\u002F).\n\n---\n\nThe goal is not for Fude to compete with Trello or Linear. The feature solves a more specific problem: making an AI-written plan as pleasant for a human to browse as it is easy for an agent to edit.\n\nThe result fits in a single file. The agent writes the source. Git preserves its history. Fude renders the board and becomes the place for reading and review.\n\nTo try the syntax without installing an app, paste the template into [Fude's online Markdown reader](\u002Fen\u002Fmarkdown-viewer\u002F).\n\n📌 [Download Fude](\u002Fen\u002F#download)\n",[1022,1025],{"locale":1023,"slug":1024},"en","create-kanban-board-markdown-fude-ai-agents",{"locale":1026,"slug":1027},"fr","creer-tableau-kanban-markdown-fude-agents-ia",{"title":1029,"path":1030,"stem":1031,"description":1032,"children":-1},"Bold, Italic, Strikethrough, and Underline in Markdown","\u002Fen\u002Fblog\u002Fbold-italic-strikethrough-underline-markdown","en\u002Fblog\u002F8.bold-italic-strikethrough-underline-markdown","Learn how to write bold, italic, and strikethrough text in Markdown, handle underline and highlighting, and compare rendering in GitHub, Obsidian, and Fude.",{"title":1034,"path":1035,"stem":1036,"description":1037,"children":-1},"Markdown Lists: Bullets, Numbering, Nesting, and Checkboxes","\u002Fen\u002Fblog\u002Fmarkdown-lists-bullets-numbering-nesting-checkboxes","en\u002Fblog\u002F10.markdown-lists-bullets-numbering-nesting-checkboxes","Learn how to create bulleted, numbered, nested, and task lists in Markdown, then avoid common indentation and rendering issues.",1786014097632]