[{"data":1,"prerenderedAt":563},["ShallowReactive",2],{"docs-\u002Fdocs\u002Fv2\u002Fagent\u002Ffolder":3},{"id":4,"title":5,"body":6,"description":555,"extension":556,"meta":557,"navigation":558,"path":559,"seo":560,"stem":561,"__hash__":562},"docs\u002Fdocs\u002Fv2\u002Fagent\u002Ffolder.md","Agent Folder",{"type":7,"value":8,"toc":549},"minimark",[9,13,22,143,150,155,164,172,180,199,207,215,223,239,243,251,335,341,345,361,386,390,393,545],[10,11,5],"h1",{"id":12},"agent-folder",[14,15,16,17,21],"p",{},"An agent is a folder at ",[18,19,20],"code",{},"~\u002F.axon\u002Fagents\u002F\u003Cname>\u002F",". It is a standard Bun TypeScript project\nwith a shape Axon knows how to read.",[23,24,29],"pre",{"className":25,"code":26,"language":27,"meta":28,"style":28},"language-bash shiki shiki-themes dark-plus","my-agent\u002F\n├── .agent\u002F               # generated — do not edit\n├── data\u002F                 # durable storage and knowledge\n├── modules\u002F              # installed capability packages\n├── server\u002F               # HTTP routes, plugins, middleware\n├── src\u002F                  # boot prompt, tools, prompts, scripts\n├── tests\u002F                # agent test files\n├── .env                  # secrets — never committed, never published\n├── axon.config.ts        # identity, engine, policy, environment\n└── package.json          # dependencies\n","bash","",[18,30,31,40,54,65,76,87,98,109,120,131],{"__ignoreMap":28},[32,33,36],"span",{"class":34,"line":35},"line",1,[32,37,39],{"class":38},"sCudf","my-agent\u002F\n",[32,41,43,46,50],{"class":34,"line":42},2,[32,44,45],{"class":38},"├──",[32,47,49],{"class":48},"sKc5r"," .agent\u002F",[32,51,53],{"class":52},"sOLPB","               # generated — do not edit\n",[32,55,57,59,62],{"class":34,"line":56},3,[32,58,45],{"class":38},[32,60,61],{"class":48}," data\u002F",[32,63,64],{"class":52},"                 # durable storage and knowledge\n",[32,66,68,70,73],{"class":34,"line":67},4,[32,69,45],{"class":38},[32,71,72],{"class":48}," modules\u002F",[32,74,75],{"class":52},"              # installed capability packages\n",[32,77,79,81,84],{"class":34,"line":78},5,[32,80,45],{"class":38},[32,82,83],{"class":48}," server\u002F",[32,85,86],{"class":52},"               # HTTP routes, plugins, middleware\n",[32,88,90,92,95],{"class":34,"line":89},6,[32,91,45],{"class":38},[32,93,94],{"class":48}," src\u002F",[32,96,97],{"class":52},"                  # boot prompt, tools, prompts, scripts\n",[32,99,101,103,106],{"class":34,"line":100},7,[32,102,45],{"class":38},[32,104,105],{"class":48}," tests\u002F",[32,107,108],{"class":52},"                # agent test files\n",[32,110,112,114,117],{"class":34,"line":111},8,[32,113,45],{"class":38},[32,115,116],{"class":48}," .env",[32,118,119],{"class":52},"                  # secrets — never committed, never published\n",[32,121,123,125,128],{"class":34,"line":122},9,[32,124,45],{"class":38},[32,126,127],{"class":48}," axon.config.ts",[32,129,130],{"class":52},"        # identity, engine, policy, environment\n",[32,132,134,137,140],{"class":34,"line":133},10,[32,135,136],{"class":38},"└──",[32,138,139],{"class":48}," package.json",[32,141,142],{"class":52},"          # dependencies\n",[14,144,145,146,149],{},"Your IDE understands it. You version control it. You install packages with ",[18,147,148],{},"bun add",". The\nshape is the only thing that makes it an agent.",[151,152,154],"h2",{"id":153},"what-each-part-does","What each part does",[14,156,157,163],{},[158,159,160],"strong",{},[18,161,162],{},"axon.config.ts"," — the single file Axon reads at boot. Agent identity, which engine\nto use, capsule policy, and environment configuration. One file, everything declared.",[14,165,166,171],{},[158,167,168],{},[18,169,170],{},".env"," — agent-local secrets. Never committed, never published, never shared between\nagents. Add API keys here.",[14,173,174,179],{},[158,175,176],{},[18,177,178],{},"src\u002F"," — the agent's brain. Boot prompt, tools, prompts, and scripts. Everything the\nagent knows and can do lives here.",[14,181,182,187,188,191,192,194,195,198],{},[158,183,184],{},[18,185,186],{},"tests\u002F"," — Bun test files. The ",[18,189,190],{},"Axon()"," harness boots your full runtime against\n",[18,193,162],{},". Use ",[18,196,197],{},"Mock()"," as the engine so tests are deterministic and free.",[14,200,201,206],{},[158,202,203],{},[18,204,205],{},"server\u002F"," — the HTTP layer. Routes expose the agent over HTTP. Plugins run at boot.\nMiddleware runs before each request.",[14,208,209,214],{},[158,210,211],{},[18,212,213],{},"data\u002F"," — durable storage. Knowledge the agent reads, sessions Axon writes, state\nmodules persist. Grows over time; backed by durable storage in cloud deployments.",[14,216,217,222],{},[158,218,219],{},[18,220,221],{},"modules\u002F"," — installed capability packages. Each module contributes tools, prompts,\nscripts, and routes. Axon loads them automatically at boot.",[14,224,225,230,231,234,235,238],{},[158,226,227],{},[18,228,229],{},".agent\u002F"," — generated output. Type declarations, manifest, Docker artifacts. Recreated\nby ",[18,232,233],{},"axon prepare"," and ",[18,236,237],{},"axon build",". Never edit it manually.",[151,240,242],{"id":241},"auto-discovery","Auto-discovery",[14,244,245,246,234,248,250],{},"Everything in ",[18,247,178],{},[18,249,221],{}," is discovered by filename — no registration, no\nimports, no config entries.",[23,252,254],{"className":25,"code":253,"language":27,"meta":28,"style":28},"src\u002Ftools\u002Fgithub.ts              → github.* tool namespace\nsrc\u002Fprompts\u002Fcode-review.md       → \"code-review\" prompt\nsrc\u002Fprompts\u002Fsession.vue          → \"session\" prompt\nsrc\u002Fscripts\u002Fscout.ts             → \"scout\" script\nmodules\u002F@axon\u002Flinear\u002Fsrc\u002Ftools\u002F  → linear.* tool namespace\n",[18,255,256,277,291,304,318],{"__ignoreMap":28},[32,257,258,261,264,267,271,274],{"class":34,"line":35},[32,259,260],{"class":38},"src\u002Ftools\u002Fgithub.ts",[32,262,263],{"class":48},"              →",[32,265,266],{"class":48}," github.",[32,268,270],{"class":269},"scz_3","*",[32,272,273],{"class":48}," tool",[32,275,276],{"class":48}," namespace\n",[32,278,279,282,285,288],{"class":34,"line":42},[32,280,281],{"class":38},"src\u002Fprompts\u002Fcode-review.md",[32,283,284],{"class":48},"       →",[32,286,287],{"class":48}," \"code-review\"",[32,289,290],{"class":48}," prompt\n",[32,292,293,296,299,302],{"class":34,"line":56},[32,294,295],{"class":38},"src\u002Fprompts\u002Fsession.vue",[32,297,298],{"class":48},"          →",[32,300,301],{"class":48}," \"session\"",[32,303,290],{"class":48},[32,305,306,309,312,315],{"class":34,"line":67},[32,307,308],{"class":38},"src\u002Fscripts\u002Fscout.ts",[32,310,311],{"class":48},"             →",[32,313,314],{"class":48}," \"scout\"",[32,316,317],{"class":48}," script\n",[32,319,320,323,326,329,331,333],{"class":34,"line":78},[32,321,322],{"class":38},"modules\u002F@axon\u002Flinear\u002Fsrc\u002Ftools\u002F",[32,324,325],{"class":48},"  →",[32,327,328],{"class":48}," linear.",[32,330,270],{"class":269},[32,332,273],{"class":48},[32,334,276],{"class":48},[14,336,337,338,340],{},"Add a file, it's available. Remove a file, it's gone. ",[18,339,233],{}," regenerates type\ndeclarations when you add or change tools.",[151,342,344],{"id":343},"creating-an-agent","Creating an agent",[23,346,348],{"className":25,"code":347,"language":27,"meta":28,"style":28},"axon init my-agent\n",[18,349,350],{"__ignoreMap":28},[32,351,352,355,358],{"class":34,"line":35},[32,353,354],{"class":38},"axon",[32,356,357],{"class":48}," init",[32,359,360],{"class":48}," my-agent\n",[14,362,363,364,367,368,370,371,373,374,377,378,381,382,385],{},"Scaffolds the folder at ",[18,365,366],{},"~\u002F.axon\u002Fagents\u002Fmy-agent\u002F"," with ",[18,369,162],{},", ",[18,372,170],{},",\n",[18,375,376],{},"package.json",", and ",[18,379,380],{},"src\u002Fboot.vue",". Open it with ",[18,383,384],{},"axon --agent my-agent",".",[151,387,389],{"id":388},"what-gets-published","What gets published",[14,391,392],{},"When you publish to the registry, Axon packages the source:",[23,394,396],{"className":25,"code":395,"language":27,"meta":28,"style":28},"axon.config.ts    ✓ included\nsrc\u002F              ✓ included\nserver\u002F           ✓ included\ndata\u002Fknowledge\u002F   ✓ included\nmodules\u002F          ✓ included (metadata only)\npackage.json      ✓ included\n.env              ✗ excluded — never published\nnode_modules\u002F     ✗ excluded — reinstalled on install\n.agent\u002F           ✗ excluded — regenerated on prepare\ndata\u002Fsessions\u002F    ✗ excluded — local runtime state\n",[18,397,398,408,417,426,436,456,465,484,505,524],{"__ignoreMap":28},[32,399,400,402,405],{"class":34,"line":35},[32,401,162],{"class":38},[32,403,404],{"class":48},"    ✓",[32,406,407],{"class":48}," included\n",[32,409,410,412,415],{"class":34,"line":42},[32,411,178],{"class":38},[32,413,414],{"class":48},"              ✓",[32,416,407],{"class":48},[32,418,419,421,424],{"class":34,"line":56},[32,420,205],{"class":38},[32,422,423],{"class":48},"           ✓",[32,425,407],{"class":48},[32,427,428,431,434],{"class":34,"line":67},[32,429,430],{"class":38},"data\u002Fknowledge\u002F",[32,432,433],{"class":48},"   ✓",[32,435,407],{"class":48},[32,437,438,440,443,446,450,453],{"class":34,"line":78},[32,439,221],{"class":38},[32,441,442],{"class":48},"          ✓",[32,444,445],{"class":48}," included",[32,447,449],{"class":448},"sTNBD"," (metadata ",[32,451,452],{"class":48},"only",[32,454,455],{"class":448},")\n",[32,457,458,460,463],{"class":34,"line":89},[32,459,376],{"class":38},[32,461,462],{"class":48},"      ✓",[32,464,407],{"class":48},[32,466,467,469,472,475,478,481],{"class":34,"line":100},[32,468,170],{"class":38},[32,470,471],{"class":48},"              ✗",[32,473,474],{"class":48}," excluded",[32,476,477],{"class":48}," —",[32,479,480],{"class":48}," never",[32,482,483],{"class":48}," published\n",[32,485,486,489,492,494,496,499,502],{"class":34,"line":111},[32,487,488],{"class":38},"node_modules\u002F",[32,490,491],{"class":48},"     ✗",[32,493,474],{"class":48},[32,495,477],{"class":48},[32,497,498],{"class":48}," reinstalled",[32,500,501],{"class":48}," on",[32,503,504],{"class":48}," install\n",[32,506,507,509,512,514,516,519,521],{"class":34,"line":122},[32,508,229],{"class":38},[32,510,511],{"class":48},"           ✗",[32,513,474],{"class":48},[32,515,477],{"class":48},[32,517,518],{"class":48}," regenerated",[32,520,501],{"class":48},[32,522,523],{"class":48}," prepare\n",[32,525,526,529,532,534,536,539,542],{"class":34,"line":133},[32,527,528],{"class":38},"data\u002Fsessions\u002F",[32,530,531],{"class":48},"    ✗",[32,533,474],{"class":48},[32,535,477],{"class":48},[32,537,538],{"class":48}," local",[32,540,541],{"class":48}," runtime",[32,543,544],{"class":48}," state\n",[546,547,548],"style",{},"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 .scz_3, html code.shiki .scz_3{--shiki-default:#569CD6}html pre.shiki code .sTNBD, html code.shiki .sTNBD{--shiki-default:#D4D4D4}",{"title":28,"searchDepth":42,"depth":42,"links":550},[551,552,553,554],{"id":153,"depth":42,"text":154},{"id":241,"depth":42,"text":242},{"id":343,"depth":42,"text":344},{"id":388,"depth":42,"text":389},"An agent is a folder at ~\u002F.axon\u002Fagents\u002F\u003Cname>\u002F. It is a standard Bun TypeScript project\nwith a shape Axon knows how to read.","md",{},true,"\u002Fdocs\u002Fv2\u002Fagent\u002Ffolder",{"title":5,"description":555},"docs\u002Fv2\u002Fagent\u002Ffolder","rKC5xPoiEIRsTt_WGhljRzPGhW_Cl3S6VmKY7207dys",1785671806429]