Upload agents to your organization’s library, install them from GitHub, and download or remove them.
Your organization keeps agents in a library, under a name you choose. Runs name an agent
from the library with --agent. Every agent needs a valid
contract.yaml.
The agent is saved under the name in its contract. To save it under another name, for example to keep two versions, pass --name. Uploading to a name that exists replaces that agent,
and runs that start afterwards use the new version.
The Valkyrie CLI clones the repository on your machine with Git, including submodules, and
uploads it. A /tree/BRANCH/FOLDER URL installs only FOLDER from branch BRANCH. Submodules must be HTTPS
GitHub repositories, and the branch name can’t contain /.
This extracts the agent into ./agents/my-agent. The output directory defaults to the
current directory. If the target exists, the download stops unless you pass --overwrite,
which replaces it only after the download succeeds.
An agent can be at most 1 GiB compressed, 5 GiB extracted, and 100,000 files and
directories. A larger upload fails with HTTP 413.
valkyrie run start --agent ./path uploads a local directory under its contract name, and
fails if an agent of that name exists. To replace one, use valkyrie agent push.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Valkyrie","description":"Run scalable, reproducible evaluations for AI agents.","colors":{"primary":"#386B46","light":"#6FD09F","dark":"#488959"},"logo":{"light":"https://mintcdn.com/valkyrie-vals/tCK_p9H_q6ml7cFr/images/valkyrie-logo-light.png?fit=max\u0026auto=format\u0026n=tCK_p9H_q6ml7cFr\u0026q=85\u0026s=defbf7b76eebf8e90b1beede16a4f7a3","dark":"https://mintcdn.com/valkyrie-vals/tCK_p9H_q6ml7cFr/images/valkyrie-logo-dark.png?fit=max\u0026auto=format\u0026n=tCK_p9H_q6ml7cFr\u0026q=85\u0026s=becaf91c5603e90328e67792fdd01b21","href":"https://www.vals.ai"},"favicon":{"light":"https://mintcdn.com/valkyrie-vals/GoPJBu1n3ZBfKc19/images/vals-icon-light.svg?fit=max\u0026auto=format\u0026n=GoPJBu1n3ZBfKc19\u0026q=85\u0026s=4db5ac875225c809eef2c0052e8f345b","dark":"https://mintcdn.com/valkyrie-vals/GoPJBu1n3ZBfKc19/images/vals-icon-dark.svg?fit=max\u0026auto=format\u0026n=GoPJBu1n3ZBfKc19\u0026q=85\u0026s=5319ff142c46a52e4f36531e260707c9"},"appearance":{"default":"system"},"background":{"color":{"light":"#F3F2F2","dark":"#171717"}},"navbar":{"links":[{"href":"https://github.com/vals-ai/Valkyrie","type":"github"}],"primary":{"type":"button","label":"vals.ai","href":"https://www.vals.ai"}},"footer":{"socials":{"website":"https://www.vals.ai","github":"https://github.com/vals-ai/Valkyrie"}},"fonts":{"family":"Söhne","source":"https://www.vals.ai/fonts/Soehne/soehne-buch.woff2","format":"woff2"},"icons":{"library":"lucide"},"contextual":{"options":["copy","view","chatgpt","claude","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"valkyrie-vals","hasAudioNarration":false,"actualSubdomain":"valkyrie-vals","customDomains":["docs.valkyrie.vals.ai"],"gitSource":{"type":"github","owner":"vals-ai","repo":"valkyrie-internal","deployBranch":"dev","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6adf6ca7374824585d6b5964","collectionId":"5f863e24-c7b0-4c3a-a1de-208dd5bbfc32","liveDeploymentHistoryId":"6adf6ca7374824585d6b5964","schemaVersion":"v3"},"entitlements":{},"buildId":"6adfaf9453ba55d15856e5e8","clientVersion":"0.0.3971","searchFilterCounts":[{"language":"default","tag":"Python SDK reference","count":26},{"language":"default","tag":"Types","count":13},{"language":"default","tag":"CLI reference","count":12},{"language":"default","tag":"Runs","count":5},{"language":"default","tag":"Get started","count":4},{"language":"default","tag":"Agents","count":3},{"language":"default","tag":"Benchmarks","count":3},{"language":"default","tag":"Python SDK","count":3},{"language":"default","tag":"Integrations","count":2},{"language":"default","tag":"Self-hosting","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"@font-face{font-family:\"Söhne\";src:url(https://www.vals.ai/fonts/Soehne/soehne-leicht.woff2) format(\"woff2\");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:\"Söhne\";src:url(https://www.vals.ai/fonts/Soehne/soehne-buch.woff2) format(\"woff2\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Söhne\";src:url(https://www.vals.ai/fonts/Soehne/soehne-kraftig.woff2) format(\"woff2\");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:\"Söhne\";src:url(https://www.vals.ai/fonts/Soehne/soehne-halbfett.woff2) format(\"woff2\");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:\"Söhne\";src:url(https://www.vals.ai/fonts/Soehne/soehne-dreiviertelfett.woff2) format(\"woff2\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-light.woff2) format(\"woff2\");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-light-italic.woff2) format(\"woff2\");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-regular.woff2) format(\"woff2\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-italic.woff2) format(\"woff2\");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-medium.woff2) format(\"woff2\");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-medium-italic.woff2) format(\"woff2\");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-bold.woff2) format(\"woff2\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Martina Plantijn\";src:url(https://www.vals.ai/fonts/MartinaPlantijn/martina-plantijn-bold-italic.woff2) format(\"woff2\");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:\"Berkeley Mono\";src:url(https://www.vals.ai/fonts/BerkeleyMono/BerkeleyMono-Regular.woff2) format(\"woff2\");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:\"Berkeley Mono\";src:url(https://www.vals.ai/fonts/BerkeleyMono/BerkeleyMono-Oblique.woff2) format(\"woff2\");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:\"Berkeley Mono\";src:url(https://www.vals.ai/fonts/BerkeleyMono/BerkeleyMono-Bold.woff2) format(\"woff2\");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:\"Berkeley Mono\";src:url(https://www.vals.ai/fonts/BerkeleyMono/BerkeleyMono-Bold-Oblique.woff2) format(\"woff2\");font-weight:700;font-style:italic;font-display:swap}#content-area,#footer,#navbar,#sidebar,body,html{font-family:\"Söhne\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif}#page-title,h1,h2,h3,h4,h5,h6{font-family:\"Martina Plantijn\",Georgia,serif;font-weight:400;letter-spacing:-.01em}#content-area h1,#page-title,.mdx-content h1{font-size:36px;line-height:40px}#content-area h2,.mdx-content h2{font-size:24px;line-height:32px}#content-area h3,.mdx-content h3{font-size:20px;line-height:32px;letter-spacing:normal}#content-area h4,#content-area h5,#content-area h6,#content-area li,#content-area p,.mdx-content h4,.mdx-content h5,.mdx-content h6,.mdx-content li,.mdx-content p{font-size:16px;line-height:24px}#header p{font-size:18px;line-height:28px}#navbar a,#topbar-cta-button,#topbar-cta-button a,[data-component-part=card-title],navbar-link{font-size:16px!important;line-height:24px!important}#pagination,#pagination a,#sidebar,#sidebar-content,#sidebar-content a,.callout,.callout [data-component-part=callout-content],[data-component-part=callout-content],[data-component-part=card-content],[data-component-part=pagination-next],[data-component-part=pagination-prev]{font-size:14px;line-height:20px}#navbar a[href*=\"github.com\"],#navbar a[href*=\"github.com\"] span{font-size:14px!important;font-weight:400!important;line-height:20px!important}#navbar a[href*=\"github.com\"]{gap:6px}#navbar a[href*=\"github.com\"]>span:last-of-type{margin-inline-start:12px!important}#sidebar-content h3,sidebar-group-header{font-family:\"Söhne\",-apple-system,BlinkMacSystemFont,\"Segoe UI\",sans-serif;font-size:13px;line-height:16px;letter-spacing:.13px;font-weight:500}#table-of-contents,breadcrumb-item,eyebrow,toc-item{font-size:13px;line-height:16px}breadcrumb-item,eyebrow{letter-spacing:.13px}code,kbd,pre,pre code,samp{font-family:\"Berkeley Mono\",ui-monospace,\"SFMono-Regular\",Menlo,monospace}code-block,pre,pre code{font-size:13px;line-height:20px}:root{--vals-ink:#191917;--vals-paper:#f3f2f2;--vals-border:#c7c4c1;--vals-border-subtle:rgb(62 59 56 / 0.15);--vals-radius:4px;--rounded-xl:4px;--rounded-2xl:4px}#content-area,#navbar,#sidebar{color:var(--vals-ink)}#navbar{border-bottom:1px solid var(--vals-border)}#chat-assistant-sheet,#chat-assistant-textarea,#content-area .code-group [data-component-part=code-block-root],#content-area .code-group [data-component-part=scroll-area-viewport],#mobile-nav,#mobile-nav-content,#page-context-menu,#pagination,#pagination a,#panel,#search-bar-entry,#search-bar-entry *,#search-bar-entry-mobile,#search-bar-entry-mobile *,#search-input,#sidebar-content a,#sidebar-content button,#sidebar-content li,#topbar-cta-button,#topbar-cta-button *,.callout,.card,.code-block,.code-block button,.code-block-copy-button,.code-block-fade-overlay,.code-group,.code-group [data-component-part=code-block-root],.code-group [data-component-part=scroll-area-viewport],.code-group [data-component-part=scroll-area],.code-group button,[data-badge],[data-component-name=theme-preference-menu],[data-component-name=theme-toggle],[data-component-part=card-icon],[data-component-part=code-block-header],[data-component-part=code-block-root],[data-component-part=pagination-next],[data-component-part=pagination-prev],[data-component-part=theme-preference-menu-trigger],[role=menu],[role=menu] *,[role=menuitem],accordion,accordion-group,callout,card,card-group,code-block,code-group,columns,expandable,frame,nav-dropdown-content,nav-dropdown-item,nav-dropdown-item-icon,step,steps,tabs,tile,toc-item[data-active-deepest],toc-item[data-active],tooltip,update{border-radius:var(--vals-radius)!important}#page-context-menu-button{border-radius:var(--vals-radius) 0 0 var(--vals-radius)!important}#page-context-menu button:not(#page-context-menu-button){border-radius:0 var(--vals-radius) var(--vals-radius) 0!important}#search-bar-entry,#search-bar-entry-mobile{box-shadow:none!important;border:1px solid var(--vals-border)!important}.callout,.card,.code-block,.code-group,accordion,accordion-group,callout,card,code-block,code-group,expandable,frame,tabs{border-color:var(--vals-border)!important;box-shadow:none!important}#sidebar-content li[data-active]{background:rgb(72 137 89/.1)!important}.dark #content-area,.dark #navbar,.dark #sidebar{color:#f3f2f2}.dark #navbar{border-bottom-color:rgb(255 255 255/.14)}.dark #search-bar-entry,.dark #search-bar-entry-mobile,.dark .callout,.dark .card,.dark .code-block,.dark .code-group,.dark accordion,.dark accordion-group,.dark callout,.dark card,.dark code-block,.dark code-group,.dark expandable,.dark frame,.dark tabs{border-color:rgb(255 255 255/.14)!important}.dark #sidebar-content li[data-active]{background:rgb(72 137 89/.22)!important}:not(pre)>code{font-size:12px!important;line-height:16px!important;padding-block:2px!important;padding-inline:4px!important;background-color:#fff!important;border:1px solid var(--vals-border)!important;border-radius:var(--vals-radius)!important}.dark :not(pre)>code{background-color:#262626!important;border-color:rgb(255 255 255/.14)!important}a:has(>code){border-bottom:none!important}a>code{color:#386b46!important}.dark a>code{color:#6fd09f!important}img.nav-logo{height:1.75rem!important;width:auto!important}#table-of-contents{max-height:calc(100vh - 8rem);overflow-y:auto;overscroll-behavior:contain}#table-of-contents-content,#table-of-contents-content li,#table-of-contents-content ul{display:flex;flex-direction:column;gap:2px}#table-of-contents-content{margin-top:12px}.dark :is(h1, h2, h3, h4) code,:is(h1, h2, h3, h4) code{font-size:inherit!important;line-height:inherit!important;padding:0!important;background-color:transparent!important;border:0!important}td>code:only-child{white-space:nowrap}"}],"page":{"pagePath":"agents/manage-agents","slug":"/agents/manage-agents","pageMetadata":{"title":"Manage agents","description":"Upload agents to your organization's library, install them from GitHub, and download or remove them.","href":"/agents/manage-agents"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Upload agents to your organization’s library, install them from GitHub, and download or remove them.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`Your organization keeps agents in a library, under a name you choose. Runs name an agent\nfrom the library with `,_jsx(_components.code,{children:`--agent`}),`. Every agent needs a valid\n`,_jsx(_components.a,{href:`/agents/agent-contract`,children:_jsx(_components.code,{children:`contract.yaml`})}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`upload-a-local-agent`,children:`Upload a local agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`valkyrie`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` push`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ./agents/my-agent`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The agent is saved under the `,_jsx(_components.code,{children:`name`}),` in its contract. To save it under another name, for example to keep two versions, pass `,_jsx(_components.code,{children:`--name`}),`. Uploading to a name that exists replaces that agent,\nand runs that start afterwards use the new version.`]}),`\n`,_jsx(Heading,{level:`2`,id:`install-an-agent-from-github`,children:`Install an agent from GitHub`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`valkyrie`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://github.com/acme/my-agent`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The Valkyrie CLI clones the repository on your machine with Git, including submodules, and\nuploads it. A `,_jsx(_components.code,{children:`/tree/BRANCH/FOLDER`}),` URL installs only `,_jsx(_components.em,{children:_jsx(_components.code,{children:`FOLDER`})}),` from branch `,_jsx(_components.em,{children:_jsx(_components.code,{children:`BRANCH`})}),`. Submodules must be HTTPS\nGitHub repositories, and the branch name can’t contain `,_jsx(_components.code,{children:`/`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`list-agents`,children:`List agents`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`valkyrie`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` list`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Page through the list with `,_jsx(_components.strong,{children:`h`}),` and `,_jsx(_components.strong,{children:`l`}),`, and quit with `,_jsx(_components.strong,{children:`q`}),`. To print every agent without paging, add `,_jsx(_components.code,{children:`--all`}),`. For scripts, add `,_jsx(_components.code,{children:`--format json`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`download-an-agent`,children:`Download an agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`valkyrie`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` download`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` my-agent`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --output-dir`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ./agents`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`This extracts the agent into `,_jsx(_components.code,{children:`./agents/my-agent`}),`. The output directory defaults to the\ncurrent directory. If the target exists, the download stops unless you pass `,_jsx(_components.code,{children:`--overwrite`}),`,\nwhich replaces it only after the download succeeds.`]}),`\n`,_jsx(Heading,{level:`2`,id:`remove-an-agent`,children:`Remove an agent`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`valkyrie`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` agent`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` remove`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` my-agent`})]}),`\n`]})})}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Removing an agent deletes it from the library, and you can’t undo it. The CLI asks you to\nconfirm first.`})}),`\n`,_jsx(Heading,{level:`2`,id:`limits`,children:`Limits`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`An agent can be at most 1 GiB compressed, 5 GiB extracted, and 100,000 files and\ndirectories. A larger upload fails with HTTP 413.`}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`valkyrie run start --agent ./path`}),` uploads a local directory under its contract name, and\nfails if an agent of that name exists. To replace one, use `,_jsx(_components.code,{children:`valkyrie agent push`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`To manage agents from Python, use `,_jsx(_components.a,{href:`/reference/sdk/agents`,children:_jsx(_components.code,{children:`client.agents`})}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Manage agents","description":"Upload agents to your organization's library, install them from GitHub, and download or remove them.","href":"/agents/manage-agents"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Upload a local agent","slug":"upload-a-local-agent","depth":2,"children":[]},{"title":"Install an agent from GitHub","slug":"install-an-agent-from-github","depth":2,"children":[]},{"title":"List agents","slug":"list-agents","depth":2,"children":[]},{"title":"Download an agent","slug":"download-an-agent","depth":2,"children":[]},{"title":"Remove an agent","slug":"remove-an-agent","depth":2,"children":[]},{"title":"Limits","slug":"limits","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"valkyrie-vals","siteName":"Valkyrie","title":"Manage agents - Valkyrie","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-22T01:29:58.635Z","originalFileLocation":"agents/manage-agents.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Upload agents to your organization\u0026#x27;s library, install them from GitHub, and download or remove them.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Valkyrie\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Manage agents - Valkyrie\">\u003cmeta data-mint-head property=\"og:description\" content=\"Upload agents to your organization\u0026#x27;s library, install them from GitHub, and download or remove them.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Valkyrie\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.valkyrie.vals.ai/agents/manage-agents\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://valkyrie-vals.mintlify.app/_mintlify/api/og/v2?division=Agents\u0026amp;title=Manage+agents\u0026amp;description=Upload+agents+to+your+organization%27s+library%2C+install+them+from+GitHub%2C+and+download+or+remove+them.\u0026amp;theme=733d9032b04eee9d86de0995\u0026amp;signature=37805d69dfa6fcf7c11ddde2aa0f9c509663675cee4f42f3e670fe9775164fb6\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Manage agents - Valkyrie\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Upload agents to your organization\u0026#x27;s library, install them from GitHub, and download or remove them.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://valkyrie-vals.mintlify.app/_mintlify/api/og/v2?division=Agents\u0026amp;title=Manage+agents\u0026amp;description=Upload+agents+to+your+organization%27s+library%2C+install+them+from+GitHub%2C+and+download+or+remove+them.\u0026amp;theme=733d9032b04eee9d86de0995\u0026amp;signature=37805d69dfa6fcf7c11ddde2aa0f9c509663675cee4f42f3e670fe9775164fb6\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/valkyrie-vals/oJhbVMD0h5yAk4Mv/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Valkyrie\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#386B46\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.valkyrie.vals.ai/agents/manage-agents\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/agents/manage-agents.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.valkyrie.vals.ai/#organization\",\"name\":\"Valkyrie\",\"url\":\"https://docs.valkyrie.vals.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/valkyrie-vals/tCK_p9H_q6ml7cFr/images/valkyrie-logo-light.png?fit=max\u0026auto=format\u0026n=tCK_p9H_q6ml7cFr\u0026q=85\u0026s=defbf7b76eebf8e90b1beede16a4f7a3\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.valkyrie.vals.ai#website\",\"name\":\"Valkyrie\",\"url\":\"https://docs.valkyrie.vals.ai\",\"publisher\":{\"@id\":\"https://docs.valkyrie.vals.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.valkyrie.vals.ai/agents/manage-agents#webpage\",\"url\":\"https://docs.valkyrie.vals.ai/agents/manage-agents\",\"name\":\"Manage agents\",\"description\":\"Upload agents to your organization's library, install them from GitHub, and download or remove them.\",\"dateModified\":\"2026-10-22T01:29:58.635Z\",\"isPartOf\":{\"@id\":\"https://docs.valkyrie.vals.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.valkyrie.vals.ai/agents/manage-agents#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.valkyrie.vals.ai/agents/manage-agents#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Agents\",\"item\":\"https://docs.valkyrie.vals.ai/agents/package-an-agent\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Manage agents\",\"item\":\"https://docs.valkyrie.vals.ai/agents/manage-agents\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.valkyrie.vals.ai/agents/manage-agents#article\",\"headline\":\"Manage agents\",\"name\":\"Manage agents\",\"description\":\"Upload agents to your organization's library, install them from GitHub, and download or remove them.\",\"url\":\"https://docs.valkyrie.vals.ai/agents/manage-agents\",\"mainEntityOfPage\":{\"@id\":\"https://docs.valkyrie.vals.ai/agents/manage-agents#webpage\"},\"dateModified\":\"2026-10-22T01:29:58.635Z\",\"publisher\":{\"@id\":\"https://docs.valkyrie.vals.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.valkyrie.vals.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Valkyrie\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Valkyrie","nav":{"global":null,"groups":[{"group":"Get started","pages":[{"title":"What is Valkyrie?","sidebarTitle":"Introduction","href":"/introduction/what-is-valkyrie"},{"title":"Quickstart","href":"/get-started/quickstart"},{"title":"Configure the CLI and SDK","sidebarTitle":"Configuration","href":"/get-started/configuration"},{"title":"Configure sandbox providers","sidebarTitle":"Sandbox providers","href":"/get-started/sandbox-providers"}]},{"group":"Agents","pages":[{"title":"Package an agent","description":"Wrap your agent in a directory that Valkyrie can install and run, then test it on one task.","href":"/agents/package-an-agent"},{"title":"Manage agents","href":"/agents/manage-agents"},{"title":"Agent contract reference","sidebarTitle":"Contract reference","description":"Every contract.yaml field, its placeholders, and the limits Valkyrie applies to agents.","href":"/agents/agent-contract"}]},{"group":"Runs","pages":[{"title":"Start a run","href":"/runs/start"},{"title":"Monitor runs","href":"/runs/monitor"},{"title":"Manage a run","href":"/runs/manage"},{"title":"Download results and outputs","sidebarTitle":"Results and outputs","href":"/runs/results-and-outputs"},{"title":"Task time limits","sidebarTitle":"Time limits","href":"/runs/time-limits"}]},{"group":"Benchmarks","pages":[{"title":"Convert a benchmark into a service","sidebarTitle":"Build a benchmark service","href":"/benchmarks/convert-a-benchmark"},{"title":"Connect a benchmark service","href":"/benchmarks/custom-services"},{"title":"Secure a benchmark service","sidebarTitle":"Authentication","href":"/benchmarks/authentication"}]},{"group":"Integrations","pages":[{"title":"Invoke a Lambda after a run","sidebarTitle":"Post-run Lambda","href":"/integrations/post-run-lambda"},{"title":"Analyze runs with Docent","sidebarTitle":"Docent","href":"/integrations/docent"}]},{"group":"Python SDK","pages":[{"title":"Set up the Python SDK","sidebarTitle":"Set up the SDK","href":"/sdk/quickstart"},{"title":"Manage runs with Python","sidebarTitle":"Runs","href":"/sdk/runs"},{"title":"Inspect resources with Python","sidebarTitle":"Tasks, logs, and more","href":"/sdk/resources"}]},{"group":"CLI reference","pages":[{"title":"CLI reference","href":"/reference/cli/index"},{"title":"valkyrie run","href":"/reference/cli/run"},{"title":"valkyrie agent","href":"/reference/cli/agent"},{"title":"valkyrie benchmark","href":"/reference/cli/benchmark"},{"title":"valkyrie queue","href":"/reference/cli/queue"},{"title":"valkyrie project","href":"/reference/cli/project"},{"title":"valkyrie secret","href":"/reference/cli/secret"},{"title":"valkyrie provider","href":"/reference/cli/provider"},{"title":"valkyrie login","href":"/reference/cli/login"},{"title":"valkyrie token","href":"/reference/cli/token"},{"title":"valkyrie org","href":"/reference/cli/org"},{"title":"valkyrie ui","href":"/reference/cli/ui"}]},{"group":"Python SDK reference","pages":[{"title":"Python SDK reference","href":"/reference/sdk/index"},{"title":"ValkyrieClient","href":"/reference/sdk/client"},{"title":"Artifacts resource","href":"/reference/sdk/artifacts"},{"title":"Runs resource","href":"/reference/sdk/runs"},{"title":"Benchmarks resource","href":"/reference/sdk/benchmarks"},{"title":"Agents resource","href":"/reference/sdk/agents"},{"title":"Benchmark services resource","href":"/reference/sdk/services"},{"title":"Logs resource","href":"/reference/sdk/logs"},{"title":"Scheduler resource","href":"/reference/sdk/scheduler"},{"title":"Secrets resource","href":"/reference/sdk/secrets"},{"title":"Projects resource","href":"/reference/sdk/projects"},{"title":"Providers resource","href":"/reference/sdk/providers"},{"title":"Settings resource","href":"/reference/sdk/settings"},{"group":"Types","pages":[{"title":"Python SDK types","href":"/reference/sdk/models/index"},{"title":"Artifacts types","href":"/reference/sdk/models/artifacts"},{"title":"Agents types","href":"/reference/sdk/models/agents"},{"title":"Runs types","href":"/reference/sdk/models/runs"},{"title":"Benchmarks types","href":"/reference/sdk/models/benchmarks"},{"title":"Services types","href":"/reference/sdk/models/services"},{"title":"Config types","href":"/reference/sdk/models/config"},{"title":"Logs types","href":"/reference/sdk/models/logs"},{"title":"Scheduler types","href":"/reference/sdk/models/scheduler"},{"title":"Projects types","href":"/reference/sdk/models/projects"},{"title":"Secrets types","href":"/reference/sdk/models/secrets"},{"title":"Settings types","href":"/reference/sdk/models/settings"},{"title":"Python SDK errors","href":"/reference/sdk/errors"}]}]},{"group":"Self-hosting","pages":[{"title":"Run Tracker locally","href":"/self-hosting/local-tracker"}]}]},"title":"Manage agents - Valkyrie","buildId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","deploymentId":"dpl_DFJrtvUi8HS5F9nkooKuDJsuD5BM","dynamics":[],"chunks":[]}