Osmedeus is a workflow engine for security automation. It executes YAML-defined workflows with support for multiple execution environments (host, Docker, SSH), scheduling, and distributed scanning.
The Osmedeus core engine is lightweight and can run anywhere with almost any specs. However, if you plan to use it for reconnaissance (which is the main use case), it is recommended to use a modern Linux, macOS, or Windows system with WSL. Since running reconnaissance generates heavy network traffic, it is also recommended to run Osmedeus in a cloud environment, such as a VM, Compute Engine, or EC2, to achieve the best performance.
Yes of course. Osmedeus has built-in support for LLMs and you can use it in your workflow to do things like generating recon reports, writing custom scripts, or even building your own agentic workflow. You can check out the LLM Workflow Example to see how it works.Be aware that using LLMs may require you to have API keys for the LLM provider and may incur additional costs based on your usage. Always monitor your usage and costs when using LLMs in your workflows.Since Osmedeus is an orchestration framework, you can leverage it to coordinate your own custom AI/LLM tools including integrations like Claude Code or OpenCode directly within your YAML workflows. For instance, you could design a custom agent that invokes multiple tools as part of a defined pipeline and seamlessly plug it into your workflow. The flexibility is virtually unlimited.
Yes, I’ve built the osmedeus-expert skill at github.com/osmedeus/osmedeus-skills and you can use it in your agentic tool to writing YAML workflows, running CLI commands, and configuring advanced features.
Osmedeus is a standalone Golang binary and works perfectly fine on its own. However, when using Osmedeus to run YAML workflows for security automation, it often needs to call external tools like httpx, nuclei, ffuf, etc. These tools must be installed and available on your system for those workflows to function properly.
No. Installing all tools is completely optional. The registry includes additional tools that are commonly used in YAML workflows, but you only need the ones required for your specific workflow. Installing everything is not necessary for running a basic workflow.
Like I said above, not all binaries listed in the registry are required for every workflow. Your scans may still function correctly even if some tools are missing.If you would like the ideal setup then I recommend using Docker to run Osmedeus and its workflows. This ensures that all dependencies are met and eliminates any compatibility issues. See the Docker Setup for more details.
You can Join https://discord.gg/mtQG2FQsYA to see if anyone can help. I might answer from time to time but I couldn’t promise to answer every single of them.
Nope, natively it doesn’t support proxy. But since the design of the tool is running other 3rd party tools and a lot of them don’t support proxy by default. I’ve already considered proxychains but it makes it extremely slow and breaks a lot of things.
It will stay there because it got a sudo password prompt. Some special tools require root permission to run like nmap. Make sure you allow nmap can be run without sudo password prompt.
It’s probably because the thing you put in was really big. Think about trying to run the content discovery against 2000 different hosts. That’s why it takes a long time.
Again it very much depends on your target. Osmedeus really shines on large scope targets, not the single intentionally vulnerable web app. Just scan some random VDP then you will see the result.
The reason it won’t find any vulnerability on the intentionally vulnerable app is the vulnscan module won’t support it. But you’re always welcome to customize the workflow to do so.
The simplest way to do it is running the process under https://tmuxcheatsheet.com/ . Other than that you can setup a service to run the osmedeus web server as a background process.
It is often the case that the availability of a subdomain found during a scan may not be the same when you attempt to manually verify it. This depends on the target and can vary.
Yes, it’s normal for certain commands to exhibit expected exit statuses, as they may succeed under specific conditions. However, if you’re confident that the raw bash command should succeed but is failing, please try copying the raw bash command and investigate why it’s encountering issues.
This is likely due to the fact that the workflow you executed did not generate any assets. You can verify this by checking the workspace directory located at ~/workspaces-osmedeus/<target>/ to see if any files were created.It is also because the workflow doesn’t use any database utility function to save the assets into the database. You can check the workflow file to see if it uses any database utility functions like db_import_asset. You can also see the full list of database related function at osmedeus func ls db --example
This is likely due to the fact that the workflow you executed did not generate any assets. You can verify this by checking the workspace directory located at ~/workspaces-osmedeus/<target>/ to see if any files were created.It is also because the workflow doesn’t use any notification utility function to save the assets into the notification. You can check the workflow file to see if it uses any notification utility functions like notify_telegram. You can also see the full list of notification related function at osmedeus func ls noti --example
$ osmedeus server2026-02-16T22:59:11+07:00 ERROR Failed to create server {"error": "failed to run database migrations: failed to create index: SQL logic error: no such column: webhook_uuid (1)"}Error: failed to run database migrations: failed to create index: SQL logic error: no such column: ... (1)
Error like this means that the database schema is outdated and the server cannot start. To fix this, you can run osmedeus db clean --force to clean up the database and then start the server again. This will reset your database, so make sure to backup any important data before running the command.
{"docsConfig":{"theme":"maple","$schema":"https://mintlify.com/docs.json","name":"Osmedeus Docs","colors":{"primary":"#8B5CF6","light":"#bd93f9","dark":"#15803D"},"logo":{"light":"https://mintcdn.com/osmedeus/QiTXLQ_BxGicl1Z6/logo/osm.png?fit=max\u0026auto=format\u0026n=QiTXLQ_BxGicl1Z6\u0026q=85\u0026s=e6312f264cc56f455ff45ec20e0ae1bd","dark":"https://mintcdn.com/osmedeus/QiTXLQ_BxGicl1Z6/logo/osm.png?fit=max\u0026auto=format\u0026n=QiTXLQ_BxGicl1Z6\u0026q=85\u0026s=e6312f264cc56f455ff45ec20e0ae1bd","href":"https://docs.osmedeus.org"},"favicon":"https://mintcdn.com/osmedeus/v2F2CQFtcKul_NUM/favicon.ico?fit=max\u0026auto=format\u0026n=v2F2CQFtcKul_NUM\u0026q=85\u0026s=353314d9cd30157694855ab05111ec38","background":{"decoration":"gradient","color":{"light":"#F8FAFC","dark":"#0F172A"}},"navbar":{"links":[{"href":"https://osmedeus.org/","label":"Website"},{"href":"https://x.com/OsmedeusEngine","label":"Twitter"}],"primary":{"type":"button","label":"Github","href":"https://github.com/j3ssie/osmedeus"}},"footer":{"socials":{"twitter":"https://x.com/OsmedeusEngine","github":"https://github.com/j3ssie","discord":"https://discord.gg/mtQG2FQsYA","x":"https://x.com/j3ssie","linkedin":"https://www.linkedin.com/in/jessie-aiho"}},"seo":{"metatags":{"og:image":"https://raw.githubusercontent.com/osmedeus/assets/refs/heads/main/osm-banner.png","og:description":"A Modern Orchestration Engine for Security"}},"errors":{"404":{"redirect":false,"title":"Oh my, the page has gone missing all on its own!","description":"Oh dear! I'm terribly sorry for the mix-up. Perhaps try the main path home, or check your directions again. Yours politely, with a tip of the hat."}},"contextual":{"options":["copy","view","chatgpt","claude","vscode"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Contact","icon":"x-twitter","href":"https://x.com/j3ssie"},{"anchor":"Sponring","icon":"hands-holding-diamond","href":"/sponsor"},{"anchor":"Roadmap","icon":"map","href":"/others/roadmap"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"osmedeus","hasAudioNarration":false,"actualSubdomain":"osmedeus","customDomains":["docs.osmedeus.org"],"gitSource":{"type":"github","owner":"osmedeus","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a22017000b8795e6e0a8ca5","collectionId":"2663fac8-8d77-4c89-bf06-941a5adfe847","schemaVersion":"v2"},"entitlements":{},"buildId":"6a77308e0552c0e84ca38141:success","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"default","tag":"Advanced Usage","count":34},{"language":"default","tag":"Getting Started","count":19},{"language":"default","tag":"Advanced Topics \u0026 Extending Osmedeus","count":7},{"language":"default","tag":"Reference \u0026 FAQ","count":7},{"language":"default","tag":"Reference","count":7},{"language":"default","tag":"Cloud","count":7},{"language":"default","tag":"Workflows","count":5},{"language":"default","tag":"Understand Architecture","count":4},{"language":"default","tag":"Functions","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"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":"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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"styling.css","content":"body{font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-mono,code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.nav-logo{height:44px}.eyebrow{color:#666;font-weight:400}"}],"page":{"pagePath":"others/faq","slug":"/others/faq","pageMetadata":{"title":"FAQs","description":"FAQs and Common Errors","icon":"block-question","href":"/others/faq","hidden":false},"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: \"FAQs and Common Errors\"\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`,hr:`hr`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Expandable,Heading,ResponseField,Table}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Expandable)_missingMdxReference(`Expandable`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!ResponseField)_missingMdxReference(`ResponseField`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`A collection of frequently asked questions along with explanations of common errors and how to resolve them.`}),`\n`,_jsx(Heading,{level:`2`,id:`1-general`,children:`1. General`}),`\n`,_jsx(ResponseField,{name:`What is Osmedeus?`,id:`param-what-is-osmedeus`,children:_jsx(Expandable,{title:`Answer`,children:_jsx(_components.p,{children:`Osmedeus is a workflow engine for security automation. It executes YAML-defined workflows with support for multiple execution environments (host, Docker, SSH), scheduling, and distributed scanning.`})})}),`\n`,_jsx(ResponseField,{name:`What are the system requirements?`,id:`param-what-are-the-system-requirements`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`The Osmedeus core engine is lightweight and can run anywhere with almost any specs. `,_jsx(`br`,{})]}),_jsxs(_components.p,{children:[`However, if you plan to use it for `,_jsx(_components.strong,{children:`reconnaissance`}),` (which is the main use case), it is recommended to use a modern Linux, macOS, or Windows system with WSL. `,_jsx(`br`,{})]}),_jsxs(_components.p,{children:[`Since running reconnaissance generates heavy network traffic, it is also recommended to run Osmedeus in a cloud environment, `,_jsx(_components.strong,{children:`such as a VM, Compute Engine, or EC2`}),`, to achieve the best performance.`]})]})}),`\n`,_jsx(ResponseField,{name:`How do I install Osmedeus?`,id:`param-how-do-i-install-osmedeus`,children:_jsx(Expandable,{title:`Answer`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`8`,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:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Build from source`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`make`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` build`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Install to $GOBIN`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`make`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Install security tools`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` binary`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --all`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`Does Osmedeus support AI/LLM integration? Can I use tools like Claude Code and Codex with it?`,id:`param-does-osmedeus-support-ai-llm-integration-can-i-use-tools-like-claude-code-and-codex-with-it`,children:_jsxs(Expandable,{title:`Answer`,children:[_jsxs(_components.p,{children:[`Yes of course. Osmedeus has built-in support for LLMs and you can use it in your workflow to do things like generating recon reports, writing custom scripts, or even building your own agentic workflow. You can check out the `,_jsx(_components.a,{href:`/advanced/llm/`,children:`LLM Workflow Example`}),` to see how it works.`]}),_jsx(_components.p,{children:`Be aware that using LLMs may require you to have API keys for the LLM provider and may incur additional costs based on your usage. Always monitor your usage and costs when using LLMs in your workflows.`}),_jsx(_components.p,{children:`Since Osmedeus is an orchestration framework, you can leverage it to coordinate your own custom AI/LLM tools including integrations like Claude Code or OpenCode directly within your YAML workflows. For instance, you could design a custom agent that invokes multiple tools as part of a defined pipeline and seamlessly plug it into your workflow. The flexibility is virtually unlimited.`})]})}),`\n`,_jsx(ResponseField,{name:`Does Osmedeus have an AI Skills that I can use in my agent?`,defaultOpen:`true`,id:`param-does-osmedeus-have-an-ai-skills-that-i-can-use-in-my-agent`,children:_jsx(Expandable,{title:`Answer`,children:_jsxs(_components.p,{children:[`Yes, I’ve built the `,_jsx(_components.a,{href:`https://github.com/osmedeus/osmedeus-skills`,children:`osmedeus-expert`}),` skill at `,_jsx(_components.a,{href:`https://github.com/osmedeus/osmedeus-skills`,children:`github.com/osmedeus/osmedeus-skills`}),` and you can use it in your agentic tool to writing YAML workflows, running CLI commands, and configuring advanced features.`]})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`2-binary-installation`,children:`2. Binary Installation`}),`\n`,_jsx(ResponseField,{name:`Why do I need to install external binary?`,id:`param-why-do-i-need-to-install-external-binary`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Osmedeus is a standalone Golang binary and works perfectly fine on its own. However, when using Osmedeus to run YAML workflows for security automation, it often needs to call external tools like `,_jsx(_components.code,{children:`httpx, nuclei, ffuf, etc`}),`. These tools must be installed and available on your system for those workflows to function properly.`]})})}),`\n`,_jsx(ResponseField,{name:\"I encountered an error when installing the binary or running `osmedeus health`. What should I do?\",id:`param-i-encountered-an-error-when-installing-the-binary-or-running-osmedeus-health-what-should-i-do`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Not all binaries listed in the registry are required for every workflow. Your scans may still function correctly even if some tools are missing.`})})}),`\n`,_jsx(ResponseField,{name:\"Do I need to install all the binaries in the registry using `osmedeus install binary --all --install-optional` ?\",id:`param-do-i-need-to-install-all-the-binaries-in-the-registry-using-osmedeus-install-binary-all-install-optional`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:`No. Installing all tools is completely optional. The registry includes additional tools that are commonly used in YAML workflows, but you only need the ones required for your specific workflow. Installing everything is not necessary for running a basic workflow.`})})}),`\n`,_jsx(ResponseField,{name:`I tried everything I can but still haven't managed to install the required binaries. What should I do?`,id:`param-i-tried-everything-i-can-but-still-havent-managed-to-install-the-required-binaries-what-should-i-do`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`Like I said above, not all binaries listed in the registry are required for every workflow. Your scans may still function correctly even if some tools are missing.`}),_jsxs(_components.p,{children:[`If you would like the ideal setup then I recommend using Docker to run Osmedeus and its workflows. This ensures that all dependencies are met and eliminates any compatibility issues. See the `,_jsx(_components.a,{href:`/getting-started/docker-setup`,children:`Docker Setup`}),` for more details.`]})]})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`3-scan-execution-\u0026-scanning-results`,children:`3. Scan Execution \u0026 Scanning Results`}),`\n`,_jsx(ResponseField,{name:`How do I run a basic scan?`,id:`param-how-do-i-run-a-basic-scan`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`5`,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:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Run a flow workflow`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` general`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Run a module workflow`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -m`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` vulnerability-scan`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I scan multiple targets?`,id:`param-how-do-i-scan-multiple-targets`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`5`,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:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# From command line`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` fast`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` target1.com`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` target2.com`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# From file`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` fast`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -T`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` targets.txt`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -c`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 5`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I set a timeout?`,id:`param-how-do-i-set-a-timeout`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -m`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` port-scan`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --timeout`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` 2h`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`Where are scan results stored?`,id:`param-where-are-scan-results-stored`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Results are stored in workspaces at `,_jsx(_components.code,{children:`~/workspaces-osmedeus/\u003ctarget>/`}),`.`]})})}),`\n`,_jsx(ResponseField,{name:`Where should I put my token (Github, Shodan, etc)?`,id:`param-where-should-i-put-my-token-github-shodan-etc`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`All you need to do is follow `,_jsx(_components.a,{href:`/getting-started/basic-setup/`,children:_jsx(_components.strong,{children:`this guide to setup the token`})})]})})}),`\n`,_jsx(ResponseField,{name:`How can I setup to send notification?`,id:`param-how-can-i-setup-to-send-notification`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`All you need to do is follow `,_jsx(_components.a,{href:`/advanced/notification-and-cdn/`,children:_jsx(_components.strong,{children:`this guide to setup notification`})})]})})}),`\n`,_jsx(ResponseField,{name:`Where I can get a live support?`,id:`param-where-i-can-get-a-live-support`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`You can Join `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`https://discord.gg/mtQG2FQsYA`})}),` to see if anyone can help. I might answer from time to time but I couldn’t promise to answer every single of them.`]})})}),`\n`,_jsx(ResponseField,{name:`Does it support Proxy?`,id:`param-does-it-support-proxy`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Nope, natively it doesn’t support proxy. But since the design of the tool is running other 3rd party tools and a lot of them don’t support proxy by default. I’ve already considered proxychains but it makes it extremely slow and breaks a lot of things.`})})}),`\n`,_jsx(ResponseField,{name:`Why was my scan stuck at portscan?`,id:`param-why-was-my-scan-stuck-at-portscan`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`It will stay there because it got a sudo password prompt. Some special tools require `,_jsx(_components.em,{children:`root`}),` permission to run like `,_jsx(_components.strong,{children:`nmap`}),`. Make sure you allow `,_jsx(_components.strong,{children:`nmap`}),` can be run without sudo password prompt.`]})})}),`\n`,_jsx(ResponseField,{name:`Why did my scan such as vulnerability scanning, port scanning, or content discovery take so long?`,id:`param-why-did-my-scan-such-as-vulnerability-scanning-port-scanning-or-content-discovery-take-so-long`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`It’s probably because the thing you put in was really big. Think about trying to run the content discovery against `,_jsx(_components.strong,{children:`2000 different hosts`}),`. That’s why it takes a long time.`]})})}),`\n`,_jsx(ResponseField,{name:`Why Osmedeus didn't find any vulnerability even when I scan it with the intentionally vulnerable app?`,id:`param-why-osmedeus-didnt-find-any-vulnerability-even-when-i-scan-it-with-the-intentionally-vulnerable-app`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Again it very much depends on your target. Osmedeus really shines on large scope targets, not the single intentionally vulnerable web app. Just scan some random VDP then you will see the result.\nThe reason it won’t find any vulnerability on the intentionally vulnerable app is the `,_jsx(_components.strong,{children:`vulnscan`}),` module won’t support it. But you’re always welcome to customize the workflow to do so.`]})})}),`\n`,_jsx(ResponseField,{name:`I found a new tool that is pretty awesome. Can you add it in Osmedeus?`,id:`param-i-found-a-new-tool-that-is-pretty-awesome-can-you-add-it-in-osmedeus`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Yes, just follow `,_jsx(_components.a,{href:`/advanced/writing-your-first-workflow/`,children:_jsx(_components.strong,{children:`this guide`})}),` to add it to your workflow.`]})})}),`\n`,_jsx(ResponseField,{name:`Does the X scan run tool Y or not?`,id:`param-does-the-x-scan-run-tool-y-or-not`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Read the flow and module files to determine what a step actually runs`}),`\n`,_jsx(_components.li,{children:`Seriously, read the flow and module files.`}),`\n`,_jsx(_components.li,{children:`Remember that you were warned twice about reading the flow and module files.`}),`\n`,_jsxs(_components.li,{children:[`Search for the tool command in the workflow folder to confirm whether it is used or not (e.g: `,_jsx(_components.code,{children:`rg -F 'nuclei' ~/osmedeus-base/workflows/`}),`)`]}),`\n`]})})}),`\n`,_jsx(ResponseField,{name:`Where can I find the password for the Web UI?`,id:`param-where-can-i-find-the-password-for-the-web-ui`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Please refer to `,_jsx(_components.a,{href:`/getting-started/web-ui/`,children:_jsx(_components.strong,{children:`this page`})}),` to start a web server and get credentials. You may need to run this command `,_jsx(_components.code,{children:`osmedeus config view server.password`})]})})}),`\n`,_jsx(ResponseField,{name:`How can I keep the scan or the web UI running in the background?`,id:`param-how-can-i-keep-the-scan-or-the-web-ui-running-in-the-background`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`The simplest way to do it is running the process under `,_jsx(_components.code,{children:`https://tmuxcheatsheet.com/`}),` . Other than that you can setup a service to run the osmedeus web server as a background process.`]})})}),`\n`,_jsx(ResponseField,{name:`What should I do if Osmedeus found a vulnerability X?`,id:`param-what-should-i-do-if-osmedeus-found-a-vulnerability-x`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.ol,{children:[`\n`,_jsx(_components.li,{children:`Read the vulnerability X description.`}),`\n`,_jsx(_components.li,{children:`Seriously, read the vulnerability X description.`}),`\n`,_jsx(_components.li,{children:`Remember that you were warned twice about reading the vulnerability X description.`}),`\n`,_jsx(_components.li,{children:`Search for that vulnerability X name.`}),`\n`,_jsx(_components.li,{children:`Manually verify the vulnerability X.`}),`\n`,_jsxs(_components.li,{children:[`Still no results? maybe `,_jsx(_components.code,{children:`https://letmegooglethat.com/?q=what+is+a+vulnerability+X`}),` can help you.`]}),`\n`]})})}),`\n`,_jsx(ResponseField,{name:`Osmedeus found some vulnerable subdomains, but I am unable to access them?`,id:`param-osmedeus-found-some-vulnerable-subdomains-but-i-am-unable-to-access-them`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:`It is often the case that the availability of a subdomain found during a scan may not be the same when you attempt to manually verify it. This depends on the target and can vary.`})})}),`\n`,_jsx(ResponseField,{name:\"When I run with the `--debug` flag, I've noticed that certain commands are returning errors with exit statuses such as 128, 255, or -1. Is this to be expected?\",id:`param-when-i-run-with-the-debug-flag-i-ve-noticed-that-certain-commands-are-returning-errors-with-exit-statuses-such-as-128-255-or-1-is-this-to-be-expected`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:`Yes, it’s normal for certain commands to exhibit expected exit statuses, as they may succeed under specific conditions. However, if you’re confident that the raw bash command should succeed but is failing, please try copying the raw bash command and investigate why it’s encountering issues.`})})}),`\n`,_jsx(ResponseField,{name:`How can I determine which workflow to run for my target?`,id:`param-how-can-i-determine-which-workflow-to-run-for-my-target`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`You can run `,_jsx(_components.code,{children:`osmedeus workflow ls`}),` or `,_jsx(_components.code,{children:`osmedeus workflow show \u003cworkflow-name> --verbose`}),` to see the description and that would fit to the scan`]})})}),`\n`,_jsx(ResponseField,{name:`The scan executed without issues, but the UI doesn't display any assets?`,id:`param-the-scan-executed-without-issues-but-the-ui-doesnt-display-any-assets`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`This is likely due to the fact that the workflow you executed did not generate any assets. You can verify this by checking the workspace directory located at `,_jsx(_components.code,{children:`~/workspaces-osmedeus/\u003ctarget>/`}),` to see if any files were created.`]}),_jsxs(_components.p,{children:[`It is also because the workflow doesn’t use any database utility function to save the assets into the database. You can check the workflow file to see if it uses any database utility functions like `,_jsx(_components.code,{children:`db_import_asset`}),`. You can also see the full list of database related function at `,_jsx(_components.code,{children:`osmedeus func ls db --example`})]})]})}),`\n`,_jsx(ResponseField,{name:`Why I didn't see any notification even when I setup the ?`,id:`param-why-i-didnt-see-any-notification-even-when-i-setup-the`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`This is likely due to the fact that the workflow you executed did not generate any assets. You can verify this by checking the workspace directory located at `,_jsx(_components.code,{children:`~/workspaces-osmedeus/\u003ctarget>/`}),` to see if any files were created.`]}),_jsxs(_components.p,{children:[`It is also because the workflow doesn’t use any notification utility function to save the assets into the notification. You can check the workflow file to see if it uses any notification utility functions like `,_jsx(_components.code,{children:`notify_telegram`}),`. You can also see the full list of notification related function at `,_jsx(_components.code,{children:`osmedeus func ls noti --example`})]})]})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`4-workflows`,children:`4. Workflows`}),`\n`,_jsx(ResponseField,{name:`What is the difference between a flow and a module?`,id:`param-what-is-the-difference-between-a-flow-and-a-module`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Module`}),`: A single workflow unit containing steps that execute sequentially`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Flow`}),`: Orchestrates multiple modules, allowing parallel execution and dependencies between modules`]}),`\n`]})})}),`\n`,_jsx(ResponseField,{name:`Where are workflows stored?`,id:`param-where-are-workflows-stored`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`Workflows are stored in `,_jsx(_components.code,{children:`~/osmedeus-base/workflows/`}),`:`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`flows/`}),` - Flow workflows`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`modules/`}),` - Module workflows`]}),`\n`]})]})}),`\n`,_jsx(ResponseField,{name:`How do I create a custom workflow?`,id:`param-how-do-i-create-a-custom-workflow`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`Create a YAML file in the workflows directory:`}),_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`yaml`,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:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`my-workflow`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`kind`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`module`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`description`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`My custom workflow`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`params`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`target`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` required`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`steps`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` - `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`scan-target`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` type`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`bash`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` command`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`nmap {{target}}`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`What step types are available?`,id:`param-what-step-types-are-available`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`bash`})}),_jsx(_components.td,{children:`Execute shell commands`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`function`})}),_jsx(_components.td,{children:`Execute JavaScript utility functions`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`parallel-steps`})}),_jsx(_components.td,{children:`Run steps concurrently`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`foreach`})}),_jsx(_components.td,{children:`Iterate over items`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`remote-bash`})}),_jsx(_components.td,{children:`Execute in Docker or via SSH`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`http`})}),_jsx(_components.td,{children:`Make HTTP requests`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`llm`})}),_jsx(_components.td,{children:`Execute LLM API calls`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`agent`})}),_jsx(_components.td,{children:`Agentic LLM execution with tool calling`})]})]})]})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`5-api-\u0026-server`,children:`5. API \u0026 Server`}),`\n`,_jsx(ResponseField,{name:`How do I start the API server?`,id:`param-how-do-i-start-the-api-server`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`})]}),`\n`]})})}),_jsx(_components.p,{children:`The server starts on port 8002 by default.`})]})}),`\n`,_jsx(ResponseField,{name:\"I got this `failed to run database migrations`. What should I do?\",id:`param-i-got-this-failed-to-run-database-migrations-what-should-i-do`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(CodeBlock,{filename:``,numberOfLines:`3`,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:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`$`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`2026-02-16T22:59:11+07:00`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ERROR`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Failed`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` to`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` create`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {\"error\":`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"failed to run database migrations: failed to create index: SQL logic error: no such column: webhook_uuid (1)\"}`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Error:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` failed`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` to`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` database`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` migrations:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` failed`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` to`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` create`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` index:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` SQL`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` logic`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` error:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` no`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` such`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` column:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ...`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` (1)`})]}),`\n`]})})}),_jsxs(_components.p,{children:[`Error like this means that the database schema is outdated and the server cannot start. To fix this, you can run `,_jsx(_components.code,{children:`osmedeus db clean --force`}),` to clean up the database and then start the server again. This will reset your database, so make sure to backup any important data before running the command.`]})]})}),`\n`,_jsx(ResponseField,{name:`How do I authenticate with the API?`,id:`param-how-do-i-authenticate-with-the-api`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`8`,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:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Get a JWT token`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` http://localhost:8002/osm/api/login`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{\"username\": \"osmedeus\", \"password\": \"admin\"}'`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Use the token`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` http://localhost:8002/osm/api/workflows`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer \u003ctoken>\"`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I disable authentication?`,id:`param-how-do-i-disable-authentication`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --no-auth`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`Can I use API keys instead of JWT?`,id:`param-can-i-use-api-keys-instead-of-jwt`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(_components.p,{children:[`Yes, enable API key authentication in the server configuration. Then use the `,_jsx(_components.code,{children:`X-API-Key`}),` header instead of `,_jsx(_components.code,{children:`Authorization: Bearer`}),`.`]})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`6-scheduling`,children:`6. Scheduling`}),`\n`,_jsx(ResponseField,{name:`How do I schedule a recurring scan?`,id:`param-how-do-i-schedule-a-recurring-scan`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`13`,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:`13`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Via CLI (creates a cron schedule)`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -f`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` subdomain-enum`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --schedule`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"0 2 * * *\"`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Via API`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` http://localhost:8002/osm/api/schedules`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$TOKEN`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"name\": \"daily-scan\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_name\": \"subdomain-enum\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"target\": \"example.com\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"schedule\": \"0 2 * * *\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`What cron format is used?`,id:`param-what-cron-format-is-used`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`Standard 5-field cron: `,_jsx(_components.code,{children:`minute hour day-of-month month day-of-week`})]}),_jsx(_components.p,{children:`Examples:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`0 2 * * *`}),` - Daily at 2 AM`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`0 0 * * 0`}),` - Weekly on Sunday`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`*/30 * * * *`}),` - Every 30 minutes`]}),`\n`]})]})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`7-runners`,children:`7. Runners`}),`\n`,_jsx(ResponseField,{name:`What runners are available?`,id:`param-what-runners-are-available`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Runner`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`host`})}),_jsx(_components.td,{children:`Execute on local machine (default)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`docker`})}),_jsx(_components.td,{children:`Execute in Docker containers`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ssh`})}),_jsx(_components.td,{children:`Execute on remote machines via SSH`})]})]})]})})}),`\n`,_jsx(ResponseField,{name:`How do I run a scan in Docker?`,id:`param-how-do-i-run-a-scan-in-docker`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -m`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` port-scan`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --runner`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` docker`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --docker-image`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` osmedeus/osmedeus:latest`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I run a scan on a remote host?`,id:`param-how-do-i-run-a-scan-on-a-remote-host`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` run`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -m`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` port-scan`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -t`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` example.com`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --runner`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ssh`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --ssh-host`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` worker.example.com`})]}),`\n`]})})})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`8-distributed-mode`,children:`8. Distributed Mode`}),`\n`,_jsx(ResponseField,{name:`How do I set up distributed scanning?`,id:`param-how-do-i-set-up-distributed-scanning`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`Start the master:`}),_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --master`})]}),`\n`]})})}),_jsx(_components.p,{children:`Join workers:`}),_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` worker`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` join`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --master`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` http://master:8002`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`How do I submit tasks to the distributed pool?`,id:`param-how-do-i-submit-tasks-to-the-distributed-pool`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`7`,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:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` http://localhost:8002/osm/api/tasks`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Authorization: Bearer `}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#9CDCFE`},children:`$TOKEN`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_name\": \"subdomain-enum\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"target\": \"example.com\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`9-troubleshooting`,children:`9. Troubleshooting`}),`\n`,_jsx(ResponseField,{name:`How do I check if tools are installed?`,id:`param-how-do-i-check-if-tools-are-installed`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` binary`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --all`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --check`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I install missing tools?`,id:`param-how-do-i-install-missing-tools`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(CodeBlock,{filename:``,numberOfLines:`5`,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:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Install specific tools`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` binary`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --name`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` nuclei`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --name`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` httpx`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:`# Install all tools`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` binary`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --all`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I view scan logs?`,id:`param-how-do-i-view-scan-logs`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`Logs are stored in the workspace:`}),_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:`cat`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/osmedeus-base/workspaces/`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`\u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`targe`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`t`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`/log/execution.log`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`How do I export a workspace for sharing?`,id:`param-how-do-i-export-a-workspace-for-sharing`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` snapshot`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` export`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:` \u003c`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`workspac`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`e`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D4D4D4`},children:`>`})]}),`\n`]})})})})}),`\n`,_jsx(ResponseField,{name:`How do I import a shared workspace?`,id:`param-how-do-i-import-a-shared-workspace`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` snapshot`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` import`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` snapshot.zip`})]}),`\n`]})})})})}),`\n`,_jsx(_components.hr,{}),`\n`,_jsx(Heading,{level:`2`,id:`10-configuration`,children:`10. Configuration`}),`\n`,_jsx(ResponseField,{name:`Where is the configuration file?`,id:`param-where-is-the-configuration-file`,children:_jsx(Expandable,{title:`Answer`,defaultOpen:`true`,children:_jsx(_components.p,{children:_jsx(_components.code,{children:`~/osmedeus-base/osm-settings.yaml`})})})}),`\n`,_jsx(ResponseField,{name:`How do I change the default port?`,id:`param-how-do-i-change-the-default-port`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`Edit `,_jsx(_components.code,{children:`osm-settings.yaml`}),`:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,language:`yaml`,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:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`server`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` port`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`9000`})]}),`\n`]})})}),_jsxs(_components.p,{children:[`Or use the `,_jsx(_components.code,{children:`--port`}),` flag:`]}),_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:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` server`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --port`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:` 9000`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`How do I configure database settings?`,id:`param-how-do-i-configure-database-settings`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsxs(_components.p,{children:[`Edit `,_jsx(_components.code,{children:`osm-settings.yaml`}),`:`]}),_jsx(CodeBlock,{filename:``,numberOfLines:`7`,language:`yaml`,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:`yaml`,children:_jsxs(_components.code,{language:`yaml`,numberOfLines:`7`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`database`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`:`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` db_engine`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`sqlite3`}),_jsx(_components.span,{style:{color:`#6E7781`,\"--shiki-dark\":`#6A9955`},children:` # or postgres`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` host`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`localhost`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` port`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5432`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` name`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`osmedeus`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` username`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`user`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:` password`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`pass`})]}),`\n`]})})})]})}),`\n`,_jsx(Heading,{level:`2`,id:`11-clean-up-\u0026-uninstall`,children:`11. Clean up \u0026 Uninstall`}),`\n`,_jsx(ResponseField,{name:`How do I clean up the workspace?`,id:`param-how-do-i-clean-up-the-workspace`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`just run the command below to clean up workspace and database and generate the default osmedeus config`}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,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:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`rm`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -rf`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/osmedeus-base`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/workspaces-osmedeus`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` install`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` base`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --preset`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`How do I clean up the workspace?`,id:`param-how-do-i-clean-up-the-workspace-1`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`just run the command below to clean up workspace and database and generate the default osmedeus config`}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,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:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`rm`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -rf`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/workspaces-osmedeus`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` db`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` clean`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` --force`})]}),`\n`]})})})]})}),`\n`,_jsx(ResponseField,{name:`How do I uninstall osmedeus?`,id:`param-how-do-i-uninstall-osmedeus`,children:_jsxs(Expandable,{title:`Answer`,defaultOpen:`true`,children:[_jsx(_components.p,{children:`just run the command below`}),_jsx(CodeBlock,{filename:``,numberOfLines:`2`,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:`2`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`rm`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -rf`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/.osmedeus`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/osmedeus-base`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` ~/workspaces-osmedeus`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`rm`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -rf`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` $(`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#DCDCAA`},children:`which`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` osmedeus`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`)`})]}),`\n`]})})})]})})]})}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":"FAQs","description":"FAQs and Common Errors","icon":"block-question","href":"/others/faq","hidden":false}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"1. General","slug":"1-general","depth":2,"children":[]},{"title":"2. Binary Installation","slug":"2-binary-installation","depth":2,"children":[]},{"title":"3. Scan Execution \u0026 Scanning Results","slug":"3-scan-execution-\u0026-scanning-results","depth":2,"children":[]},{"title":"4. Workflows","slug":"4-workflows","depth":2,"children":[]},{"title":"5. API \u0026 Server","slug":"5-api-\u0026-server","depth":2,"children":[]},{"title":"6. Scheduling","slug":"6-scheduling","depth":2,"children":[]},{"title":"7. Runners","slug":"7-runners","depth":2,"children":[]},{"title":"8. Distributed Mode","slug":"8-distributed-mode","depth":2,"children":[]},{"title":"9. Troubleshooting","slug":"9-troubleshooting","depth":2,"children":[]},{"title":"10. Configuration","slug":"10-configuration","depth":2,"children":[]},{"title":"11. Clean up \u0026 Uninstall","slug":"11-clean-up-\u0026-uninstall","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"osmedeus","siteName":"Osmedeus Docs","title":"FAQs - Osmedeus Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-02-24T06:32:01.911Z","originalFileLocation":"others/faq.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=\"FAQs and Common Errors\">\u003cmeta data-mint-head name=\"application-name\" content=\"Osmedeus Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_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/osmedeus/qvNuVPpvBcJJ9KMg/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"FAQs - Osmedeus Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"A Modern Orchestration Engine for Security\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Osmedeus Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.osmedeus.org/others/faq\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://raw.githubusercontent.com/osmedeus/assets/refs/heads/main/osm-banner.png\">\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=\"FAQs - Osmedeus Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A Modern Orchestration Engine for Security\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://raw.githubusercontent.com/osmedeus/assets/refs/heads/main/osm-banner.png\">\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/osmedeus/qvNuVPpvBcJJ9KMg/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Osmedeus Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#8B5CF6\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.osmedeus.org/others/faq\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/others/faq.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.osmedeus.org/#organization\",\"name\":\"Osmedeus Docs\",\"url\":\"https://docs.osmedeus.org\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/osmedeus/QiTXLQ_BxGicl1Z6/logo/osm.png?fit=max\u0026auto=format\u0026n=QiTXLQ_BxGicl1Z6\u0026q=85\u0026s=e6312f264cc56f455ff45ec20e0ae1bd\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.osmedeus.org#website\",\"name\":\"Osmedeus Docs\",\"url\":\"https://docs.osmedeus.org\",\"publisher\":{\"@id\":\"https://docs.osmedeus.org/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.osmedeus.org/others/faq#webpage\",\"url\":\"https://docs.osmedeus.org/others/faq\",\"name\":\"FAQs\",\"description\":\"FAQs and Common Errors\",\"dateModified\":\"2026-02-24T06:32:01.911Z\",\"isPartOf\":{\"@id\":\"https://docs.osmedeus.org#website\"},\"breadcrumb\":{\"@id\":\"https://docs.osmedeus.org/others/faq#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.osmedeus.org/others/faq#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Reference\",\"item\":\"https://docs.osmedeus.org/reference/workflow-schema\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"FAQs\",\"item\":\"https://docs.osmedeus.org/others/faq\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.osmedeus.org/others/faq#article\",\"headline\":\"FAQs\",\"name\":\"FAQs\",\"description\":\"FAQs and Common Errors\",\"url\":\"https://docs.osmedeus.org/others/faq\",\"mainEntityOfPage\":{\"@id\":\"https://docs.osmedeus.org/others/faq#webpage\"},\"image\":\"https://raw.githubusercontent.com/osmedeus/assets/refs/heads/main/osm-banner.png\",\"dateModified\":\"2026-02-24T06:32:01.911Z\",\"publisher\":{\"@id\":\"https://docs.osmedeus.org/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.osmedeus.org#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Osmedeus Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Osmedeus Docs","nav":{"global":{"anchors":[{"anchor":"Contact","icon":"x-twitter","href":"https://x.com/j3ssie"},{"anchor":"Sponring","icon":"hands-holding-diamond","href":"/sponsor"},{"anchor":"Roadmap","icon":"map","href":"/others/roadmap"}]},"tabs":[{"tab":"Getting Started","groups":[{"group":"Getting Started","icon":"rocket","pages":[{"title":"Introduction","icon":"hand-wave","href":""},{"title":"Quickstart","icon":"rocket","href":"/quickstart"},{"title":"CLI Interface","icon":"terminal","href":"/getting-started/cli"},{"title":"Web UI","icon":"browsers","href":"/getting-started/web-ui"},{"title":"Basic Configuration","icon":"gear","href":"/getting-started/basic-setup"},{"title":"Docker Installation \u0026 Setup","icon":"docker","href":"/getting-started/docker-setup"}]},{"group":"Advanced Usage","icon":"hat-wizard","pages":[{"title":"Extra Configuration","icon":"flask-gear","href":"/advanced/api-key-configuration"},{"title":"Notification and CDN Configuration","icon":"bells","href":"/advanced/notification-and-cdn"},{"title":"Deployment","icon":"gopuram","href":"/advanced/deployment"},{"title":"Event-Driven Triggers","icon":"bolt","href":"/advanced/event-driven"},{"title":"Distributed Execution","icon":"chart-network","href":"/advanced/distributed"},{"title":"Development","icon":"code-branch","href":"/advanced/development"},{"title":"Cloud Usage Guide","icon":"book-open","href":"/cloud/usage-guide"},{"title":"Writing Your First Workflow","icon":"diagram-project","href":"/advanced/writing-your-first-workflow"},{"title":"LLM \u0026 Agents Integration","icon":"brain","href":"/advanced/llm"}]},{"group":"Understand Architecture","icon":"lightbulb","pages":[{"title":"Architecture Overview","icon":"sitemap","mode":"wide","href":"/architecture/index"},{"title":"Workflow Architecture","icon":"diagram-project","href":"/architecture/workflows"},{"title":"Runners","icon":"play","href":"/architecture/runners"},{"title":"Template Engine Architecture","icon":"wand-magic-sparkles","href":"/architecture/templates"}]},{"group":"Workflows","icon":"chart-diagram","pages":[{"title":"Workflow Overview","icon":"square-list","href":"/workflows/overview"},{"title":"Flow Workflows","icon":"arrows-split-up-and-left","href":"/workflows/flows"},{"title":"Variables and Exports","icon":"arrow-right-arrow-left","href":"/workflows/variables"},{"title":"Control Flow","icon":"code-branch","href":"/workflows/control-flow"},{"title":"Step Types","icon":"list-check","href":"/workflows/step-types"}]},{"group":"Functions","icon":"cube","pages":[{"title":"Functions Overview","icon":"lightbulb","href":"/functions/overview"},{"title":"Functions Reference","icon":"list","href":"/functions/reference"}]},{"group":"Cloud","icon":"clouds","pages":[{"title":"Cloud Usage Guide","icon":"book-open","href":"/cloud/usage-guide"},{"title":"Cloud Quick Reference","icon":"bolt","href":"/cloud/quick-reference"},{"title":"Cloud Cheatsheet","icon":"list-check","href":"/cloud/cheatsheet"},{"title":"Cloud Usage Examples","icon":"rectangle-terminal","href":"/cloud/usage-examples"},{"title":"AWS Provider Guide","icon":"aws","href":"/cloud/provider-aws"},{"title":"GCP Provider Guide","icon":"google","href":"/cloud/provider-gcp"},{"title":"Hetzner Provider Guide","icon":"server","href":"/cloud/provider-hetzner"}]},{"group":"Advanced Topics \u0026 Extending Osmedeus","icon":"cube","pages":[{"title":"Using Osmedeus as a Library","icon":"code","href":"/advanced/library"},{"title":"Adding Runners","icon":"sliders","href":"/extending/runners"},{"title":"Adding Step Types","icon":"layer-group","href":"/extending/step-types"},{"title":"Adding Functions","icon":"function","href":"/extending/functions"},{"title":"Adding CLI Commands","icon":"command","href":"/extending/cli-commands"},{"title":"Scheduling \u0026 Queue","icon":"clock","href":"/advanced/scheduling"},{"title":"Snapshots","icon":"arrow-down-to-line","href":"/advanced/snapshots"}]},{"group":"Reference","icon":"book","pages":[{"title":"Workflow Schema Reference","icon":"diagram-project","href":"/reference/workflow-schema"},{"title":"Type Reference","icon":"brackets","href":"/reference/types"},{"title":"Default Variables Reference","icon":"code-simple","href":"/reference/variables"},{"title":"Osmedeus API Documentation","description":"RESTful API reference for managing security automation workflows","icon":"plug","href":"/api-references/index"},{"title":"FAQs","icon":"block-question","href":"/others/faq"},{"title":"Security Warning","description":"Important Security Notice and Disclaimer","icon":"triangle-exclamation","href":"/others/security-warning"},{"title":"Premium Edition","icon":"diamonds-4","href":"/others/premium-edition"}]}]},{"tab":"Advanced Usage","pages":[{"title":"Advanced Usage","href":"/advanced/api-key-configuration"}]},{"tab":"Reference \u0026 FAQ","groups":[{"group":"Reference","icon":"book","pages":[{"title":"Workflow Schema Reference","icon":"diagram-project","href":"/reference/workflow-schema"},{"title":"Type Reference","icon":"brackets","href":"/reference/types"},{"title":"Default Variables Reference","icon":"code-simple","href":"/reference/variables"},{"title":"Osmedeus API Documentation","description":"RESTful API reference for managing security automation workflows","icon":"plug","href":"/api-references/index"},{"title":"FAQs","icon":"block-question","href":"/others/faq"},{"title":"Security Warning","description":"Important Security Notice and Disclaimer","icon":"triangle-exclamation","href":"/others/security-warning"},{"title":"Premium Edition","icon":"diamonds-4","href":"/others/premium-edition"}]}]}]},"title":"FAQs - Osmedeus Docs","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":[],"chunks":[]}