[{"data":1,"prerenderedAt":783},["ShallowReactive",2],{"docs.index":3,"docs.page.\u002Fdocs\u002Fplaybooks\u002Froutines":358},[4,20,26,33,43,52,59,65,71,76,82,89,95,100,104,111,115,119,123,132,137,141,147,152,157,163,170,177,183,189,193,199,205,211,217,222,226,230,236,242,247,252,256,260,265,271,277,283,287,294,299,305,310,314,318,322,328,333,338,343,347,353],{"path":5,"title":6,"navTitle":7,"seoTitle":8,"description":9,"type":10,"position":11,"updated":12,"release":13,"related":14,"plans":17},"\u002Fdocs\u002Faccount\u002Fbilling","Upgrade and manage billing","Billing",null,"Move a workspace onto Grove or Forest, understand how seats are charged, and what happens if a payment fails or you cancel.","how-to",2,"2026-09-29","public",[15,16],"\u002Fdocs\u002Faccount\u002Fplans-and-limits","\u002Fdocs\u002Fsharing\u002Finvite-people",[18,19],"grove","forest",{"path":21,"title":22,"navTitle":8,"seoTitle":8,"description":23,"type":24,"position":25,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Faccount","Account and billing","What each plan includes, how billing and seats work, managing your account, and how Treehouse keeps your files safe.","hub",7,{"path":15,"title":27,"navTitle":8,"seoTitle":8,"description":28,"type":29,"position":30,"updated":12,"release":13,"related":31,"plans":8},"Plans and limits","What Seedling, Grove and Forest include, how usage is counted, and what happens when a workspace reaches a limit.","reference",1,[5,16,32],"\u002Fdocs\u002Fsharing\u002Fshare-links",{"path":34,"title":35,"navTitle":8,"seoTitle":8,"description":36,"type":37,"position":38,"updated":12,"release":13,"related":39,"plans":8},"\u002Fdocs\u002Faccount\u002Fsecurity-and-privacy","Security and privacy","How Treehouse encrypts your files, who can see what in a workspace, and how keys, share links and HTML pages are kept in check.","concept",4,[40,32,41,42],"\u002Fdocs\u002Fagents\u002Fconnect\u002Fapi-keys","\u002Fdocs\u002Ffiles\u002Fprivate-files","\u002Fdocs\u002Ffiles\u002Fhtml-pages",{"path":44,"title":45,"navTitle":46,"seoTitle":8,"description":47,"type":10,"position":48,"updated":12,"release":13,"related":49,"plans":8},"\u002Fdocs\u002Faccount\u002Fyour-account","Manage your account","Your account","Create an account, sign in and out, reset a forgotten password, and move between the workspaces you belong to.",3,[50,51,34],"\u002Fdocs\u002Fget-started\u002Fquickstart","\u002Fdocs\u002Fsharing\u002Fcustomise-your-workspace",{"path":40,"title":53,"navTitle":54,"seoTitle":8,"description":55,"type":10,"position":38,"updated":12,"release":13,"related":56,"plans":8},"Manage API keys","API keys","Create a key for each agent, see which keys can reach your workspaces, and revoke the ones you no longer need.",[57,58,34],"\u002Fdocs\u002Fagents\u002Fconnect\u002Fclaude-code","\u002Fdocs\u002Fagents\u002Freference\u002Fauthentication",{"path":57,"title":60,"navTitle":8,"seoTitle":8,"description":61,"type":10,"position":11,"updated":12,"release":13,"related":62,"plans":8},"Connect Claude Code","Give Claude Code access to a workspace through your synced folder, the Treehouse MCP server, or both.",[63,40,64],"\u002Fdocs\u002Fagents\u002Fconnect\u002Fhow-agents-work","\u002Fdocs\u002Fplaybooks\u002Fwrite-your-agents-md",{"path":63,"title":66,"navTitle":67,"seoTitle":8,"description":68,"type":37,"position":30,"updated":12,"release":13,"related":69,"plans":8},"How agents work with Treehouse","How agents work","The two ways an agent can reach a workspace, what it can do there, and how its work shows up for everyone else.",[57,40,70],"\u002Fdocs\u002Fagents\u002Fhandbook",{"path":72,"title":73,"navTitle":74,"seoTitle":8,"description":75,"type":24,"position":30,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fagents\u002Fconnect","Connect an agent","Connect","Give Claude Code, Codex, Cursor or any other agent access to a workspace, with its own key when you want its work labelled.",{"path":77,"title":78,"navTitle":8,"seoTitle":8,"description":79,"type":10,"position":48,"updated":12,"release":13,"related":80,"plans":8},"\u002Fdocs\u002Fagents\u002Fconnect\u002Fother-agents","Connect other agents","Connection settings for Cursor, VS Code, Codex, Gemini CLI, Claude Desktop and any other MCP client.",[57,40,81],"\u002Fdocs\u002Fagents\u002Freference\u002Fmcp-server",{"path":70,"title":83,"navTitle":83,"seoTitle":84,"description":85,"type":24,"position":11,"updated":12,"release":13,"related":86,"plans":8},"Agent handbook","Agent handbook: how agents work in Treehouse","Written for agents. How to reach a Treehouse workspace, the rules that keep everyone's work safe, and the conventions the web app understands.",[81,87,88],"\u002Fdocs\u002Fagents\u002Fhandbook\u002Fversions-and-conflicts","\u002Fdocs\u002Fplaybooks\u002Freview-loop",{"path":87,"title":90,"navTitle":8,"seoTitle":8,"description":91,"type":37,"position":30,"updated":12,"release":13,"related":92,"plans":8},"Versions and conflicts","The concurrency contract every Treehouse client shares - version numbers, compare-and-swap writes, conflicted copies, deletes, moves and restores.",[93,94,81],"\u002Fdocs\u002Ffiles\u002Fconflicted-copies","\u002Fdocs\u002Fagents\u002Freference\u002Frest-api",{"path":96,"title":97,"navTitle":8,"seoTitle":98,"description":99,"type":24,"position":30,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fagents","Agents","Treehouse for agents","Everything an agent needs to work in a Treehouse workspace, and everything you need to connect one.",{"path":58,"title":101,"navTitle":8,"seoTitle":8,"description":102,"type":29,"position":30,"updated":12,"release":13,"related":103,"plans":8},"Authentication","How API keys work, what each kind of key can reach, the device authorisation flow the CLI and desktop app use, and how keys are revoked.",[40,81,94],{"path":105,"title":106,"navTitle":8,"seoTitle":8,"description":107,"type":29,"position":38,"updated":12,"release":13,"related":108,"plans":8},"\u002Fdocs\u002Fagents\u002Freference\u002Fchange-feed","Change feed","Read every change to a workspace in order with a cursor, so a script or agent can react to new and edited files.",[109,110,87],"\u002Fdocs\u002Fsharing\u002Factivity","\u002Fdocs\u002Fplaybooks\u002Froutines",{"path":112,"title":113,"navTitle":8,"seoTitle":8,"description":114,"type":24,"position":48,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fagents\u002Freference","API reference","The protocol reference - authentication, every MCP tool, the REST API and the change feed.",{"path":81,"title":116,"navTitle":8,"seoTitle":8,"description":117,"type":29,"position":11,"updated":12,"release":13,"related":118,"plans":8},"MCP server","Every tool the Treehouse MCP server exposes, with parameters, outputs, limits and the instructions it gives connected agents.",[57,77,87],{"path":94,"title":120,"navTitle":8,"seoTitle":8,"description":121,"type":29,"position":48,"updated":12,"release":13,"related":122,"plans":8},"REST API","Endpoints for reading, writing, moving, searching, sharing and commenting on workspace files over HTTP, with headers, status codes and examples.",[58,87,105],{"path":124,"title":125,"navTitle":126,"seoTitle":8,"description":127,"type":29,"position":128,"updated":12,"release":13,"related":129,"plans":8},"\u002Fdocs\u002Fdesktop\u002Fcli-reference","Sync CLI reference","Sync CLI","Every treehouse command and flag, the files and environment variables the CLI reads, and the safety rules it follows while syncing.",5,[130,131,105],"\u002Fdocs\u002Fdesktop\u002Fsync-with-the-cli","\u002Fdocs\u002Fdesktop\u002Fhow-sync-works",{"path":131,"title":133,"navTitle":8,"seoTitle":8,"description":134,"type":37,"position":11,"updated":12,"release":13,"related":135,"plans":8},"How sync works","What the sync engine does in the background, which files it skips, and how it protects your work when things go wrong.",[93,41,109,136],"\u002Fdocs\u002Fget-started\u002Fhow-treehouse-works",{"path":138,"title":139,"navTitle":8,"seoTitle":8,"description":140,"type":24,"position":128,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fdesktop","Desktop app and sync","Keep a folder on your computer in step with a workspace, using the Mac app or the sync CLI.",{"path":142,"title":143,"navTitle":8,"seoTitle":8,"description":144,"type":10,"position":30,"updated":12,"release":13,"related":145,"plans":8},"\u002Fdocs\u002Fdesktop\u002Finstall-the-desktop-app","Install the desktop app","Download Treehouse for Mac, sign in and pick a folder, and your workspace's files appear on your computer and stay in sync.",[131,146,130],"\u002Fdocs\u002Fdesktop\u002Fmanage-synced-folders",{"path":146,"title":148,"navTitle":8,"seoTitle":8,"description":149,"type":10,"position":48,"updated":12,"release":13,"related":150,"plans":8},"Manage synced folders","Check sync status, pause, move or stop syncing a folder, add another workspace, and sign out, all from the Treehouse icon in your menu bar.",[131,130,151],"\u002Fdocs\u002Fhelp\u002Ftroubleshooting",{"path":130,"title":153,"navTitle":154,"seoTitle":8,"description":155,"type":10,"position":38,"updated":12,"release":13,"related":156,"plans":8},"Sync a folder with the CLI","Sync with the CLI","Install the treehouse command-line tool to sync a folder on Windows, Linux, a server or any machine where the desktop app doesn't run.",[124,131,146],{"path":93,"title":158,"navTitle":8,"seoTitle":8,"description":159,"type":37,"position":160,"updated":12,"release":13,"related":161,"plans":8},"Conflicted copies","When two edits to the same file collide, Treehouse keeps both. Here's what a conflicted copy is, how to spot one and how to resolve it.",9,[162,131,87],"\u002Fdocs\u002Ffiles\u002Fversion-history",{"path":164,"title":165,"navTitle":166,"seoTitle":8,"description":167,"type":10,"position":11,"updated":12,"release":13,"related":168,"plans":8},"\u002Fdocs\u002Ffiles\u002Fcreate-and-edit","Create and edit files","Create and edit","Make new files and folders in the web app, edit markdown, code and HTML, and save your changes.",[169,93,162],"\u002Fdocs\u002Ffiles\u002Ffront-matter",{"path":171,"title":172,"navTitle":173,"seoTitle":8,"description":174,"type":10,"position":128,"updated":12,"release":13,"related":175,"plans":8},"\u002Fdocs\u002Ffiles\u002Ffolder-pages","Turn a folder into a page or calendar","Folder pages and calendars","Give a folder a front page with a README, or show a folder of dated notes as a calendar you can reschedule by dragging.",[169,42,176],"\u002Fdocs\u002Fplaybooks\u002Fshape-your-workspace",{"path":169,"title":178,"navTitle":179,"seoTitle":8,"description":180,"type":29,"position":181,"updated":12,"release":13,"related":182,"plans":8},"Front matter reference","Front matter","The YAML block at the top of a markdown file, and the keys Treehouse reads from it to label, title and schedule your files.",6,[171,164,110],{"path":42,"title":184,"navTitle":185,"seoTitle":8,"description":186,"type":10,"position":25,"updated":12,"release":13,"related":187,"plans":8},"Publish an HTML page","HTML pages","Show HTML files as full pages, decide when their scripts may run, and share them publicly as reports, dashboards or decks.",[32,171,188],"\u002Fdocs\u002Ffiles\u002Fview-files",{"path":190,"title":191,"navTitle":8,"seoTitle":8,"description":192,"type":24,"position":48,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Ffiles","Files and folders","Find, read, write, upload and organise the files in a workspace, and get back anything that changed.",{"path":194,"title":195,"navTitle":196,"seoTitle":8,"description":197,"type":10,"position":38,"updated":12,"release":13,"related":198,"plans":8},"\u002Fdocs\u002Ffiles\u002Forganise-files","Rename, move and organise files","Organise files","Rename, move, reorder and delete files and folders, and give them icons, from the sidebar tree.",[162,41,176],{"path":41,"title":200,"navTitle":201,"seoTitle":8,"description":202,"type":10,"position":203,"updated":12,"release":13,"related":204,"plans":8},"Keep files private","Private files","Make a file or folder visible only to you and your own agents, even in a workspace you share with others.",10,[194,32,63],{"path":206,"title":207,"navTitle":208,"seoTitle":8,"description":209,"type":10,"position":48,"updated":12,"release":13,"related":210,"plans":8},"\u002Fdocs\u002Ffiles\u002Fupload-and-download","Upload and download files","Upload and download","Add files from your computer to a workspace, decide what happens when names clash, and download a copy of any file.",[164,131,15],{"path":162,"title":212,"navTitle":213,"seoTitle":8,"description":214,"type":10,"position":215,"updated":12,"release":13,"related":216,"plans":8},"See and restore earlier versions","Version history","Look through every change to a file, see who made it, view or restore an older version, and catch up on what changed while you were away.",8,[93,109,87],{"path":188,"title":218,"navTitle":219,"seoTitle":8,"description":220,"type":10,"position":30,"updated":12,"release":13,"related":221,"plans":8},"Find and view files","Find and view","Browse the file tree, search by name, and see how Treehouse shows markdown, HTML, code, images and everything else.",[164,171,162],{"path":136,"title":223,"navTitle":8,"seoTitle":8,"description":224,"type":37,"position":48,"updated":12,"release":13,"related":225,"plans":8},"How Treehouse works","Workspaces, versions, conflicted copies and attribution - the handful of ideas the rest of Treehouse is built on.",[162,93,63,87],{"path":227,"title":228,"navTitle":8,"seoTitle":8,"description":229,"type":24,"position":11,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fget-started","Get started","What Treehouse is, how to set up your first workspace, and how it works underneath.",{"path":50,"title":231,"navTitle":8,"seoTitle":8,"description":232,"type":233,"position":11,"updated":12,"release":13,"related":234,"plans":8},"Quickstart","Create a workspace, sync it to your computer, connect an agent and let it set things up. About ten minutes.","guide",[235,57,64],"\u002Fdocs\u002Fget-started\u002Fset-up-with-an-agent",{"path":235,"title":237,"navTitle":238,"seoTitle":8,"description":239,"type":10,"position":38,"updated":12,"release":13,"related":240,"plans":8},"Set up a workspace with an agent","Set up with an agent","Hand a new, empty workspace to an agent. It interviews you, proposes a structure and builds it once you agree.",[176,64,241],"\u002Fdocs\u002Fplaybooks\u002Finbox-and-filing",{"path":243,"title":244,"navTitle":244,"seoTitle":8,"description":245,"type":37,"position":30,"updated":12,"release":13,"related":246,"plans":8},"\u002Fdocs\u002Fget-started\u002Fwhat-is-treehouse","What is Treehouse?","A shared workspace of plain files that people and agents both work in, with the sharing, history and review that plain folders lack.",[50,136,63],{"path":248,"title":249,"navTitle":250,"seoTitle":8,"description":251,"type":29,"position":11,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fhelp\u002Ffaq","Frequently asked questions","FAQ","Short answers to the questions people ask most about Treehouse, agents, sharing and data.",{"path":253,"title":254,"navTitle":8,"seoTitle":8,"description":255,"type":29,"position":48,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fhelp\u002Fglossary","Glossary","The words Treehouse uses, and what each one means in the app and in these docs.",{"path":257,"title":258,"navTitle":8,"seoTitle":8,"description":259,"type":24,"position":215,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fhelp","Help","Fixes for common problems, answers to common questions, and the words Treehouse uses.",{"path":151,"title":261,"navTitle":8,"seoTitle":262,"description":263,"type":10,"position":30,"updated":12,"release":13,"related":264,"plans":8},"Troubleshooting","Troubleshooting Treehouse sync, agents and sharing","The problems people hit most often with sync, agent connections, sharing and limits, and how to fix each one.",[146,57,93],{"path":266,"title":267,"navTitle":8,"seoTitle":268,"description":269,"type":24,"position":270,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs","Treehouse docs","Treehouse documentation","How to set up a shared workspace for your team and your agents, and how to get the most out of it once you have.",0,{"path":272,"title":273,"navTitle":274,"seoTitle":8,"description":275,"type":233,"position":215,"updated":12,"release":13,"related":276,"plans":8},"\u002Fdocs\u002Fplaybooks\u002Fclient-work","Run client work","Client work","A folder per client, agents that prepare the deliverables, and share links that give clients exactly what they should see.",[32,42,88],{"path":241,"title":278,"navTitle":279,"seoTitle":8,"description":280,"type":233,"position":48,"updated":12,"release":13,"related":281,"plans":8},"Run an inbox your agent files","Inbox and filing","Drop anything into Inbox\u002F without deciding where it goes, and have an agent file it by rules you write once.",[110,282,176],"\u002Fdocs\u002Fplaybooks\u002Fsecond-brain",{"path":284,"title":285,"navTitle":8,"seoTitle":8,"description":286,"type":24,"position":181,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fplaybooks","Playbooks","Opinionated patterns for running a workspace with your agents, from the rulebook they follow to the routines that keep it alive.",{"path":288,"title":289,"navTitle":290,"seoTitle":8,"description":291,"type":233,"position":128,"updated":12,"release":13,"related":292,"plans":8},"\u002Fdocs\u002Fplaybooks\u002Fmemory-and-decisions","Give your agents a memory","Memory and decisions","Status pages, decision records and handoff notes that let any agent pick up where the last session left off.",[64,293,171],"\u002Fdocs\u002Fplaybooks\u002Fmultiple-agents",{"path":293,"title":295,"navTitle":296,"seoTitle":8,"description":297,"type":233,"position":25,"updated":12,"release":13,"related":298,"plans":8},"Work with several agents","Several agents","Give each agent its own key and its own lane, hand work over through files, and let versioning catch the collisions.",[40,288,93],{"path":88,"title":300,"navTitle":301,"seoTitle":8,"description":302,"type":233,"position":38,"updated":12,"release":13,"related":303,"plans":8},"Review your agent's work","Review loop","Let an agent draft, review it with comments in the web app, and have the agent work through your feedback thread by thread.",[304,162,57],"\u002Fdocs\u002Fsharing\u002Fcomments",{"path":110,"title":306,"navTitle":307,"seoTitle":8,"description":308,"type":233,"position":181,"updated":12,"release":13,"related":309,"plans":8},"Set up routines","Routines","Recurring agent work, like a morning inbox run or a weekly review, and where the schedule lives when Treehouse doesn't run agents itself.",[241,130,105],{"path":282,"title":311,"navTitle":8,"seoTitle":8,"description":312,"type":233,"position":160,"updated":12,"release":13,"related":313,"plans":8},"Build a second brain","A personal workspace where you capture everything quickly and an agent keeps it filed, linked and useful.",[241,110,171],{"path":176,"title":315,"navTitle":8,"seoTitle":8,"description":316,"type":233,"position":11,"updated":12,"release":13,"related":317,"plans":8},"Shape your workspace","Folder structures that work for people and agents alike, and the handful of habits that keep a workspace easy to navigate as it grows.",[64,171,194],{"path":64,"title":319,"navTitle":8,"seoTitle":8,"description":320,"type":233,"position":30,"updated":12,"release":13,"related":321,"plans":8},"Write your AGENTS.md","The one file every agent reads first. What to put in it so any agent, in any session, works the way your team does.",[176,63,235],{"path":323,"title":324,"navTitle":325,"seoTitle":8,"description":326,"type":24,"position":160,"updated":12,"release":13,"related":327,"plans":8},"\u002Fdocs\u002Fself-hosting","Self-host Treehouse","Self-hosting","Run your own Treehouse server - the architecture, required and optional environment variables, storage and encryption, and connecting clients.",[58,81,124],{"path":109,"title":329,"navTitle":330,"seoTitle":8,"description":331,"type":10,"position":38,"updated":12,"release":13,"related":332,"plans":8},"See what changed in a workspace","Activity","The activity feed shows every change and comment in a workspace, who made it, and whether it came from a person or an agent.",[63,40,162,93],{"path":304,"title":334,"navTitle":335,"seoTitle":8,"description":336,"type":10,"position":48,"updated":12,"release":13,"related":337,"plans":8},"Comment on a document","Comments","Leave comments on passages of a markdown file, reply and resolve threads, and let agents read and act on your feedback.",[88,162,109],{"path":51,"title":339,"navTitle":340,"seoTitle":8,"description":341,"type":10,"position":128,"updated":12,"release":13,"related":342,"plans":8},"Customise your workspace","Customise a workspace","Rename a workspace, give it an icon and colour, create new workspaces, and choose a theme for everyone or just for you.",[15,32],{"path":344,"title":345,"navTitle":8,"seoTitle":8,"description":346,"type":24,"position":38,"updated":12,"release":13,"related":8,"plans":8},"\u002Fdocs\u002Fsharing","Share and collaborate","Invite people into a workspace, share files with anyone by link, comment on documents and see who changed what.",{"path":16,"title":348,"navTitle":349,"seoTitle":8,"description":350,"type":10,"position":30,"updated":12,"release":13,"related":351,"plans":352},"Invite people to a workspace","Invite people","Bring teammates into a workspace with an invite link, see who's a member, and remove people when they no longer need access.",[32,5,40],[18,19],{"path":32,"title":354,"navTitle":355,"seoTitle":8,"description":356,"type":10,"position":11,"updated":12,"release":13,"related":357,"plans":8},"Share a file or folder with a link","Share links","Send members straight to a file, or give anyone read-only access to a file or folder, with an optional password and a pinned version.",[16,42,162,15],{"id":359,"title":306,"body":360,"description":308,"extension":777,"meta":778,"navTitle":307,"navigation":409,"path":110,"plans":8,"position":181,"related":779,"release":13,"seo":780,"seoTitle":8,"stem":781,"type":233,"updated":12,"__hash__":782},"docs\u002Fdocs\u002Fplaybooks\u002Froutines.md",{"type":361,"value":362,"toc":765},"minimark",[363,367,372,375,472,475,479,484,500,564,567,571,578,582,593,597,600,604,694,698,712,741,747,751,761],[364,365,366],"p",{},"Some of the most useful agent work is routine: filing the inbox every morning, drafting a weekly summary, checking which specs haven't been touched in a month. Treehouse is where that work lands, but it doesn't run agents or keep a schedule. The routine lives wherever your agent runs; the workspace gives it the rules and a place to write.",[368,369,371],"h2",{"id":370},"write-the-routine-down-first","Write the routine down first",[364,373,374],{},"Put each routine's instructions in the workspace, not in the scheduler. Then the scheduled command stays one line, and anyone can read or improve what the routine does.",[376,377,383],"pre",{"className":378,"code":379,"filename":380,"language":381,"meta":382,"style":382},"language-markdown shiki shiki-themes everforest-dark","---\ntitle: Weekly review\n---\n\nEvery Friday afternoon:\n\n1. Read every project README in Projects\u002F.\n2. Write Reviews\u002FYYYY-MM-DD-weekly.md with `date:` set to today, covering:\n   what moved this week, what's blocked, and anything overdue in \"Next\".\n3. List any project README not updated in 14 days as \"Needs attention\".\n4. Don't change the project files themselves.\n","Routines\u002Fweekly-review.md","markdown","",[384,385,386,394,400,405,411,416,420,429,450,455,463],"code",{"__ignoreMap":382},[387,388,390],"span",{"class":389,"line":30},"line",[387,391,393],{"class":392},"sAuXP","---\n",[387,395,396],{"class":389,"line":11},[387,397,399],{"class":398},"sY0Nt","title: Weekly review\n",[387,401,402],{"class":389,"line":48},[387,403,393],{"class":404},"sBO76",[387,406,407],{"class":389,"line":38},[387,408,410],{"emptyLinePlaceholder":409},true,"\n",[387,412,413],{"class":389,"line":128},[387,414,415],{"class":398},"Every Friday afternoon:\n",[387,417,418],{"class":389,"line":181},[387,419,410],{"emptyLinePlaceholder":409},[387,421,422,426],{"class":389,"line":25},[387,423,425],{"class":424},"safYi","1.",[387,427,428],{"class":398}," Read every project README in Projects\u002F.\n",[387,430,431,434,437,441,445,447],{"class":389,"line":215},[387,432,433],{"class":424},"2.",[387,435,436],{"class":398}," Write Reviews\u002FYYYY-MM-DD-weekly.md with ",[387,438,440],{"class":439},"sySyC","`",[387,442,444],{"class":443},"sRC7j","date:",[387,446,440],{"class":439},[387,448,449],{"class":398}," set to today, covering:\n",[387,451,452],{"class":389,"line":160},[387,453,454],{"class":398},"   what moved this week, what's blocked, and anything overdue in \"Next\".\n",[387,456,457,460],{"class":389,"line":203},[387,458,459],{"class":424},"3.",[387,461,462],{"class":398}," List any project README not updated in 14 days as \"Needs attention\".\n",[387,464,466,469],{"class":389,"line":465},11,[387,467,468],{"class":424},"4.",[387,470,471],{"class":398}," Don't change the project files themselves.\n",[364,473,474],{},"The scheduled prompt is then just: \"Run the routine in Routines\u002Fweekly-review.md.\"",[368,476,478],{"id":477},"choose-where-it-runs","Choose where it runs",[480,481,483],"h3",{"id":482},"on-your-computer-with-claude-code-and-cron","On your computer, with Claude Code and cron",[364,485,486,487,491,492,495,496,499],{},"If the workspace is ",[488,489,490],"a",{"href":138},"synced"," to your Mac, a cron job can run Claude Code in the folder without you there. ",[384,493,494],{},"claude -p"," runs a single prompt non-interactively, and ",[384,497,498],{},"--permission-mode acceptEdits"," lets it create, edit and move files without asking:",[376,501,505],{"className":502,"code":503,"language":504,"meta":382,"style":382},"language-bash shiki shiki-themes everforest-dark","# crontab -e: file the inbox at 8am on weekdays\n0 8 * * 1-5 cd ~\u002FTreehouse\u002FAcme && claude -p \"Process everything in Inbox\u002F following the rules in Inbox\u002FREADME.md.\" --permission-mode acceptEdits >> ~\u002FLibrary\u002FLogs\u002Ftreehouse-inbox.log 2>&1\n","bash",[384,506,507,513],{"__ignoreMap":382},[387,508,509],{"class":389,"line":30},[387,510,512],{"class":511},"s67c6","# crontab -e: file the inbox at 8am on weekdays\n",[387,514,515,518,522,525,527,530,533,536,539,542,545,548,551,554,558,561],{"class":389,"line":11},[387,516,517],{"class":443},"0",[387,519,521],{"class":520},"s9lfW"," 8",[387,523,524],{"class":520}," *",[387,526,524],{"class":520},[387,528,529],{"class":439}," 1-5",[387,531,532],{"class":439}," cd",[387,534,535],{"class":439}," ~\u002FTreehouse\u002FAcme",[387,537,538],{"class":398}," && ",[387,540,541],{"class":443},"claude",[387,543,544],{"class":439}," -p",[387,546,547],{"class":443}," \"Process everything in Inbox\u002F following the rules in Inbox\u002FREADME.md.\"",[387,549,550],{"class":439}," --permission-mode",[387,552,553],{"class":439}," acceptEdits",[387,555,557],{"class":556},"sDOmQ"," >>",[387,559,560],{"class":439}," ~\u002FLibrary\u002FLogs\u002Ftreehouse-inbox.log",[387,562,563],{"class":556}," 2>&1\n",[364,565,566],{},"Your computer needs to be awake. Changes sync to the workspace as soon as they're written, and show up in Activity as yours.",[480,568,570],{"id":569},"on-a-server-with-the-sync-cli","On a server, with the sync CLI",[364,572,573,574,577],{},"For routines that shouldn't depend on your laptop, run the ",[488,575,576],{"href":130},"sync CLI"," on a small server (Linux arm64 or macOS) to keep a copy of the workspace there, and schedule your agent against that folder the same way. Approve the server with its own device so you can revoke it separately.",[480,579,581],{"id":580},"in-the-cloud-over-mcp","In the cloud, over MCP",[364,583,584,585,588,589,592],{},"A hosted or cloud agent that supports remote MCP servers can do the same work over the Treehouse MCP server, with its own ",[488,586,587],{"href":40},"API key",". Its changes are labelled with the key's name, which makes routine work easy to spot in the ",[488,590,591],{"href":109},"activity feed",".",[480,594,596],{"id":595},"a-reminder","A reminder",[364,598,599],{},"Automation you don't need is still worth skipping. A weekly calendar reminder to ask your agent \"Run the weekly review\" is a fine first version, and tells you whether the routine is worth automating.",[368,601,603],{"id":602},"routines-worth-having","Routines worth having",[605,606,607,620],"table",{},[608,609,610],"thead",{},[611,612,613,617],"tr",{},[614,615,616],"th",{},"Routine",[614,618,619],{},"What it does",[621,622,623,643,651,663,671,679],"tbody",{},[611,624,625,629],{},[626,627,628],"td",{},"Inbox run",[626,630,631,632,635,636,639,640,592],{},"Files everything in ",[384,633,634],{},"Inbox\u002F"," by the rules in ",[384,637,638],{},"Inbox\u002FREADME.md",". See ",[488,641,642],{"href":241},"run an inbox",[611,644,645,648],{},[626,646,647],{},"Weekly review",[626,649,650],{},"Summarises what moved across projects and flags what's stalled.",[611,652,653,656],{},[626,654,655],{},"Meeting follow-up",[626,657,658,659,662],{},"Turns the day's notes in ",[384,660,661],{},"Meetings\u002F"," into actions on the relevant project pages.",[611,664,665,668],{},[626,666,667],{},"Content calendar",[626,669,670],{},"Drafts next week's posts in a calendar folder, each dated for its publish day, ready for review.",[611,672,673,676],{},[626,674,675],{},"Stale-page check",[626,677,678],{},"Lists READMEs and specs not updated in a month, so someone can confirm they're still true.",[611,680,681,684],{},[626,682,683],{},"Comment sweep",[626,685,686,687,690,691,592],{},"Works through open ",[488,688,689],{"href":88},"review comments"," on files marked ",[384,692,693],{},"status: review",[368,695,697],{"id":696},"plan-with-a-calendar-folder","Plan with a calendar folder",[364,699,700,701,704,705,708,709,711],{},"For anything with a date, like a content plan, a release schedule or a series of client check-ins, make a folder that ",[488,702,703],{"href":171},"opens as a calendar",". Put ",[384,706,707],{},"view: calendar"," in its README, and have the agent give each file a ",[384,710,444],{},":",[376,713,716],{"className":378,"code":714,"filename":715,"language":381,"meta":382,"style":382},"---\ntitle: Pricing announcement\ndate: 2026-10-06\nstatus: draft\n---\n","Content\u002F2026-10-06-pricing-announcement.md",[384,717,718,722,727,732,737],{"__ignoreMap":382},[387,719,720],{"class":389,"line":30},[387,721,393],{"class":392},[387,723,724],{"class":389,"line":11},[387,725,726],{"class":398},"title: Pricing announcement\n",[387,728,729],{"class":389,"line":48},[387,730,731],{"class":398},"date: 2026-10-06\n",[387,733,734],{"class":389,"line":38},[387,735,736],{"class":398},"status: draft\n",[387,738,739],{"class":389,"line":128},[387,740,393],{"class":404},[364,742,743,744,746],{},"The web app shows the month at a glance. Drag a post to another day to reschedule it, and its ",[384,745,444],{}," is rewritten for you.",[368,748,750],{"id":749},"react-to-changes-instead-of-a-clock","React to changes instead of a clock",[364,752,753,754,757,758,760],{},"If you're comfortable with a little code, you can trigger an agent when something changes rather than at fixed times: watch the workspace's ",[488,755,756],{"href":105},"change feed"," for new files in ",[384,759,634],{},", and run your agent when one appears. Treehouse doesn't send webhooks, so the watcher polls; every couple of seconds is fine.",[762,763,764],"style",{},"html pre.shiki code .sAuXP, html code.shiki .sAuXP{--shiki-default:#859289;--shiki-default-font-weight:bold}html pre.shiki code .sY0Nt, html code.shiki .sY0Nt{--shiki-default:#D3C6AA}html pre.shiki code .sBO76, html code.shiki .sBO76{--shiki-default:#E69875;--shiki-default-font-weight:bold}html pre.shiki code .safYi, html code.shiki .safYi{--shiki-default:#E67E80}html pre.shiki code .sySyC, html code.shiki .sySyC{--shiki-default:#DBBC7F}html pre.shiki code .sRC7j, html code.shiki .sRC7j{--shiki-default:#A7C080}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 pre.shiki code .s67c6, html code.shiki .s67c6{--shiki-default:#859289;--shiki-default-font-style:italic}html pre.shiki code .s9lfW, html code.shiki .s9lfW{--shiki-default:#D699B6}html pre.shiki code .sDOmQ, html code.shiki .sDOmQ{--shiki-default:#E69875}",{"title":382,"searchDepth":11,"depth":48,"links":766},[767,768,774,775,776],{"id":370,"depth":11,"text":371},{"id":477,"depth":11,"text":478,"children":769},[770,771,772,773],{"id":482,"depth":48,"text":483},{"id":569,"depth":48,"text":570},{"id":580,"depth":48,"text":581},{"id":595,"depth":48,"text":596},{"id":602,"depth":11,"text":603},{"id":696,"depth":11,"text":697},{"id":749,"depth":11,"text":750},"md",{},[241,130,105],{"title":306,"description":308},"docs\u002Fplaybooks\u002Froutines","aHIQXxRa5PhbSdpuaBuZYVrM0VH-VnVPTLvDH8PJFjs",1790706078788]