[{"data":1,"prerenderedAt":366},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fv2\u002Ftui\u002Fstructure":3},{"id":4,"title":5,"body":6,"description":17,"extension":358,"meta":359,"navigation":361,"path":362,"seo":363,"stem":364,"__hash__":365},"docs\u002Fdocs\u002Fv2\u002Ftui\u002Fstructure\u002Findex.md","Profile Structure",{"type":7,"value":8,"toc":353},"minimark",[9,14,18,135,147,152,167,170,223,233,237,309,321,325,342,349],[10,11,13],"h1",{"id":12},"your-profile","Your profile",[15,16,17],"p",{},"Everything the TUI knows about you lives in one directory, keyed by the account you are\nsigned in as.",[19,20,25],"pre",{"className":21,"code":22,"language":23,"meta":24,"style":24},"language-bash shiki shiki-themes dark-plus","~\u002F.axon\u002Fprofiles\u002F\u003Cyour-email>\u002F\n├── .axon\u002F               # generated types — regenerable\n├── agents\u002F              # your agents. zeno lands here\n├── node_modules\u002F        # installed by bun. regenerable\n├── plugins\u002F             # lifecycle hooks — every file auto-loads\n├── store\u002F               # history and UI state — NOT regenerable\n├── main.ts              # your config: commands, keys, palettes\n├── profile.config.ts    # extensions + settings\n├── package.json\n└── tsconfig.json\n","bash","",[26,27,28,37,52,63,74,85,96,107,118,126],"code",{"__ignoreMap":24},[29,30,33],"span",{"class":31,"line":32},"line",1,[29,34,36],{"class":35},"sTNBD","~\u002F.axon\u002Fprofiles\u002F\u003Cyour-email>\u002F\n",[29,38,40,44,48],{"class":31,"line":39},2,[29,41,43],{"class":42},"sCudf","├──",[29,45,47],{"class":46},"sKc5r"," .axon\u002F",[29,49,51],{"class":50},"sOLPB","               # generated types — regenerable\n",[29,53,55,57,60],{"class":31,"line":54},3,[29,56,43],{"class":42},[29,58,59],{"class":46}," agents\u002F",[29,61,62],{"class":50},"              # your agents. zeno lands here\n",[29,64,66,68,71],{"class":31,"line":65},4,[29,67,43],{"class":42},[29,69,70],{"class":46}," node_modules\u002F",[29,72,73],{"class":50},"        # installed by bun. regenerable\n",[29,75,77,79,82],{"class":31,"line":76},5,[29,78,43],{"class":42},[29,80,81],{"class":46}," plugins\u002F",[29,83,84],{"class":50},"             # lifecycle hooks — every file auto-loads\n",[29,86,88,90,93],{"class":31,"line":87},6,[29,89,43],{"class":42},[29,91,92],{"class":46}," store\u002F",[29,94,95],{"class":50},"               # history and UI state — NOT regenerable\n",[29,97,99,101,104],{"class":31,"line":98},7,[29,100,43],{"class":42},[29,102,103],{"class":46}," main.ts",[29,105,106],{"class":50},"              # your config: commands, keys, palettes\n",[29,108,110,112,115],{"class":31,"line":109},8,[29,111,43],{"class":42},[29,113,114],{"class":46}," profile.config.ts",[29,116,117],{"class":50},"    # extensions + settings\n",[29,119,121,123],{"class":31,"line":120},9,[29,122,43],{"class":42},[29,124,125],{"class":46}," package.json\n",[29,127,129,132],{"class":31,"line":128},10,[29,130,131],{"class":42},"└──",[29,133,134],{"class":46}," tsconfig.json\n",[15,136,137,138,142,143,146],{},"It is created on first launch and repaired on every boot: a missing folder is added back,\nbut ",[139,140,141],"strong",{},"a file that already exists is never overwritten",". A broken ",[26,144,145],{},"main.ts"," is still\nyours, and replacing it would cost someone their whole config to fix a typo.",[148,149,151],"h2",{"id":150},"a-profile-is-a-project","A profile is a project",[15,153,154,155,158,159,162,163,166],{},"That is the part worth internalising. It has a ",[26,156,157],{},"package.json",", a ",[26,160,161],{},"tsconfig.json",", a\n",[26,164,165],{},"bun install",", and a generated type frame — the same treatment an agent or a module gets.",[15,168,169],{},"Which is why this works with no imports and full autocomplete:",[19,171,175],{"className":172,"code":173,"language":174,"meta":24,"style":24},"language-ts shiki shiki-themes dark-plus","\u002F\u002F main.ts\ncommands.register(\"hello\", () => tui.info(\"hi\"))\n","ts",[26,176,177,182],{"__ignoreMap":24},[29,178,179],{"class":31,"line":32},[29,180,181],{"class":50},"\u002F\u002F main.ts\n",[29,183,184,188,191,194,197,200,203,207,210,212,215,217,220],{"class":31,"line":39},[29,185,187],{"class":186},"s3F5K","commands",[29,189,190],{"class":35},".",[29,192,193],{"class":42},"register",[29,195,196],{"class":35},"(",[29,198,199],{"class":46},"\"hello\"",[29,201,202],{"class":35},", () ",[29,204,206],{"class":205},"scz_3","=>",[29,208,209],{"class":186}," tui",[29,211,190],{"class":35},[29,213,214],{"class":42},"info",[29,216,196],{"class":35},[29,218,219],{"class":46},"\"hi\"",[29,221,222],{"class":35},"))\n",[15,224,225,226,229,230,232],{},"The eight globals are declared in ",[26,227,228],{},".axon\u002Ftypes\u002Fglobals.d.ts",", generated from the contract\nAxon ships. Your editor reads them because ",[26,231,161],{}," extends that frame.",[148,234,236],{"id":235},"what-survives-a-wipe","What survives a wipe",[238,239,240,251],"table",{},[241,242,243],"thead",{},[244,245,246,249],"tr",{},[247,248],"th",{},[247,250],{},[252,253,254,271,283,296],"tbody",{},[244,255,256,265],{},[257,258,259,261,262],"td",{},[26,260,145],{}," · ",[26,263,264],{},"profile.config.ts",[257,266,267,270],{},[139,268,269],{},"Yours."," Never touched",[244,272,273,278],{},[257,274,275],{},[26,276,277],{},"agents\u002F",[257,279,280,282],{},[139,281,269],{}," Real projects you can edit and publish",[244,284,285,290],{},[257,286,287],{},[26,288,289],{},"store\u002F",[257,291,292,295],{},[139,293,294],{},"Not regenerable."," History and state",[244,297,298,306],{},[257,299,300,261,303],{},[26,301,302],{},".axon\u002F",[26,304,305],{},"node_modules\u002F",[257,307,308],{},"Regenerable. Delete freely",[15,310,311,312,314,315,317,318,320],{},"Delete ",[26,313,302],{}," or ",[26,316,305],{}," and the next launch rebuilds them. Delete ",[26,319,289],{}," and\nyou lose your input history.",[148,322,324],{"id":323},"not-in-here","Not in here",[15,326,327,330,331,334,335,339,340,190],{},[139,328,329],{},"Installed extensions."," A registry extension is fetched to\n",[26,332,333],{},"~\u002F.axon\u002Fcache\u002Fextensions\u002F\u003Cscope>\u002F\u003Cname>\u002F\u003Cversion>\u002F"," — machine-wide, shared by every\nprofile, keyed by version. Your profile only records ",[336,337,338],"em",{},"which"," ones it loads, in\n",[26,341,264],{},[15,343,344,345,348],{},"That is why ",[26,346,347],{},"axon ext uninstall"," undeclares rather than deletes: the files are shared, and\nremoving them would break a profile you were not touching.",[350,351,352],"style",{},"html pre.shiki code .sTNBD, html code.shiki .sTNBD{--shiki-default:#D4D4D4}html pre.shiki code .sCudf, html code.shiki .sCudf{--shiki-default:#DCDCAA}html pre.shiki code .sKc5r, html code.shiki .sKc5r{--shiki-default:#CE9178}html pre.shiki code .sOLPB, html code.shiki .sOLPB{--shiki-default:#6A9955}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 .s3F5K, html code.shiki .s3F5K{--shiki-default:#9CDCFE}html pre.shiki code .scz_3, html code.shiki .scz_3{--shiki-default:#569CD6}",{"title":24,"searchDepth":39,"depth":39,"links":354},[355,356,357],{"id":150,"depth":39,"text":151},{"id":235,"depth":39,"text":236},{"id":323,"depth":39,"text":324},"md",{"icon":360},"vscode-icons:default-folder-opened",true,"\u002Fdocs\u002Fv2\u002Ftui\u002Fstructure",{"title":5,"description":17},"docs\u002Fv2\u002Ftui\u002Fstructure\u002Findex","h1QQULhVkuf6MyR_kmUcT1AKV4AvUDo4u0DErcL_Q94",1786791207930]