A good agent in Logic is one that is clear, concise, and easy to understand. It should provide enough context for the Logic API to perform the task you want it to do, while also being flexible enough to handle variations in input.The most important idea is that LLM understanding is similar to human understanding. If you write an agent that is easy for a person to read and understand, it will also be easy for the Logic API to understand.Here are some tips for writing a good agent:
Use simple language and avoid jargon. The agent should be easy to read and understand, even for someone who is not familiar with the topic.The Logic API is designed to handle a wide range of tasks, so you don’t need to include every detail. Focus on the key points that are necessary for the Logic API to perform the task.
Include enough information for the Logic API to understand the task you want it to perform. This might include examples of input and output, as well as any specific requirements or constraints.If you’re using specific file formats, make sure to specify them clearly. For example, if you want the Logic API to analyze an image, specify whether the image will be provided as a URL or base64-encoded data.If you’re using your own file formats, make sure to provide clear examples of how the data should be structured. This will help the Logic API understand how to process the input.
Using the agent editor, you can use text formatting to make your agent more readable. For example, you can use bullet points to list the items you want the Logic API to include in its analysis. You can also use headings to separate different sections of your agent.Make sure to organize your agent in a way that makes sense for the task at hand. For example, you might have a section for the input and a section for the output.
To ensure your agent works as intended, test it out using the Logic API. You can do this by sending a request to the API with sample input and checking the output. This will help you identify any issues or areas for improvement.Be sure to use the testing tools in the Logic dashboard. Once you create an agent, a dedicated testing page is automatically generated, letting you verify its behavior and make edits as needed.
A good agent is never truly finished. As you use the Logic API and receive feedback, you may find areas where your agent can be improved. Don’t hesitate to make changes and iterate on your agent to make it better.Use the testing features in the Logic dashboard to validate your agent. This will help you ensure that it behaves as expected and meets your requirements.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Logic Documentation","colors":{"primary":"#2657AC","light":"#88C0D0","dark":"#2657AC"},"logo":{"light":"https://mintcdn.com/logic/YO7O6hkpncKkRwwK/logo/Logic-Dark.png?fit=max\u0026auto=format\u0026n=YO7O6hkpncKkRwwK\u0026q=85\u0026s=109212947ad00a07499d42c15ee67ad4","dark":"https://mintcdn.com/logic/YO7O6hkpncKkRwwK/logo/Logic-Light.png?fit=max\u0026auto=format\u0026n=YO7O6hkpncKkRwwK\u0026q=85\u0026s=8e4bbc7e36815a5199839b17b73f1466"},"favicon":"https://mintcdn.com/logic/rNrK8vlZ0Y2WQcEV/favicon.svg?fit=max\u0026auto=format\u0026n=rNrK8vlZ0Y2WQcEV\u0026q=85\u0026s=56d6a6241316d364172d6aa70eca8f83","background":{"color":{"light":"#F7F5F2","dark":"#2E3440"}},"navbar":{"links":[{"href":"mailto:support@logic.app","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://app.logic.inc"}},"footer":{"socials":{"website":"https://logic.inc/","github":"https://github.com/with-logic","linkedin":"https://www.linkedin.com/company/with-logic"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Logic Dashboard","icon":"up-right-from-square","href":"https://app.logic.inc"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"logic","hasAudioNarration":false,"actualSubdomain":"logic","customDomains":["docs.logic.inc"],"gitSource":{"type":"github","owner":"with-logic","repo":"logic-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac3dfceb0593f944b91d9ce","collectionId":"6bd6b8d7-1c96-4a71-8c44-60c78394bf3f","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac3dfceb0593f944b91d9ce"},"entitlements":{},"buildId":"6ac3dfceb0593f944b91d9ce","clientVersion":"0.0.3926","searchFilterCounts":[{"language":"default","tag":"Guides","count":34},{"language":"default","tag":"API Reference","count":19},{"language":"default","tag":"MCP","count":11},{"language":"default","tag":"Execution Parameters","count":8},{"language":"default","tag":"Integration and Testing","count":7},{"language":"default","tag":"Other","count":6},{"language":"default","tag":"Platform Integrations","count":6},{"language":"default","tag":"Agent Editing","count":5},{"language":"default","tag":"Organization Settings","count":5},{"language":"default","tag":"Agents","count":3}]},"assistantConfig":{},"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":"vite-origin","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":"editor-agent-model-picker","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":"style.css","content":"/* vietnamese */\n@font-face {\n font-family: 'Work Sans';\n font-style: italic;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYqz_wNahGAdqQ43Rh_eZDkv_1w4A.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Work Sans';\n font-style: italic;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYqz_wNahGAdqQ43Rh_eZDlv_1w4A.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Work Sans';\n font-style: italic;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYqz_wNahGAdqQ43Rh_eZDrv_0.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Work Sans';\n font-style: normal;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYsz_wNahGAdqQ43Rh_c6Dpp_k.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Work Sans';\n font-style: normal;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYsz_wNahGAdqQ43Rh_cqDpp_k.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Work Sans';\n font-style: normal;\n font-weight: 100 900;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/worksans/v24/QGYsz_wNahGAdqQ43Rh_fKDp.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMSHK_IwU.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMSXK_IwU.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dNIFZifjKcF5UAWdDRYERMR3K_.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqEySRV3U.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqEiSRV3U.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dSIFZifjKcF5UAWdDRYERE_FeqHCSR.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE58RWq7.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYE98RWq7.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dPIFZifjKcF5UAWdDRYEF8RQ.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\n/* vietnamese */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFqaHjyV.woff2) format('woff2');\n unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;\n}\n/* latin-ext */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFuaHjyV.woff2) format('woff2');\n unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;\n}\n/* latin */\n@font-face {\n font-family: 'Space Mono';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(/_mintlify/assets/fonts/google/s/spacemono/v17/i7dMIFZifjKcF5UAWdDRaPpZUFWaHg.woff2) format('woff2');\n unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;\n}\nimg{border-radius:15px}img[src*=\"/logo/\"]{border-radius:0!important}body,button,h1,h2,h3,h4,h5,h6,input,label,li,p,td,th{font-family:'Work Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}code,kbd,pre,samp{font-family:'Space Mono','SFMono-Regular','SF Mono',Monaco,Consolas,'Liberation Mono',monospace}pre{background-color:#07204f!important}pre code{background-color:transparent!important}.dark pre{background-color:#3b4252!important}html.dark{--tw-shadow-color:rgba(36, 41, 58, 0.6)}"}],"page":{"pagePath":"guides/other/making-a-good-agent","slug":"/guides/other/making-a-good-agent","pageMetadata":{"title":"What Makes a Good Agent?","description":"How to write good agents in Logic","href":"/guides/other/making-a-good-agent"},"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: \"How to write good agents in Logic\"\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={p:`p`,..._provideComponents(),...props.components},{Heading}=_components;if(!Heading)_missingMdxReference(`Heading`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`what-makes-a-good-agent`,children:`What Makes a Good Agent?`}),`\n`,_jsx(_components.p,{children:`A good agent in Logic is one that is clear, concise, and easy to understand. It should provide enough context for the Logic API to perform the task you want it to do, while also being flexible enough to handle variations in input.`}),`\n`,_jsx(_components.p,{children:`The most important idea is that LLM understanding is similar to human understanding. If you write an agent that is easy for a person to read and understand, it will also be easy for the Logic API to understand.`}),`\n`,_jsx(_components.p,{children:`Here are some tips for writing a good agent:`}),`\n`,_jsx(Heading,{level:`3`,id:`1-be-clear-and-concise`,children:`1. Be Clear and Concise`}),`\n`,_jsx(_components.p,{children:`Use simple language and avoid jargon. The agent should be easy to read and understand, even for someone who is not familiar with the topic.`}),`\n`,_jsx(_components.p,{children:`The Logic API is designed to handle a wide range of tasks, so you don’t need to include every detail. Focus on the key points that are necessary for the Logic API to perform the task.`}),`\n`,_jsx(Heading,{level:`3`,id:`2-provide-context`,children:`2. Provide Context`}),`\n`,_jsx(_components.p,{children:`Include enough information for the Logic API to understand the task you want it to perform. This might include examples of input and output, as well as any specific requirements or constraints.`}),`\n`,_jsx(_components.p,{children:`If you’re using specific file formats, make sure to specify them clearly. For example, if you want the Logic API to analyze an image, specify whether the image will be provided as a URL or base64-encoded data.`}),`\n`,_jsx(_components.p,{children:`If you’re using your own file formats, make sure to provide clear examples of how the data should be structured. This will help the Logic API understand how to process the input.`}),`\n`,_jsx(Heading,{level:`3`,id:`3-use-text-formatting`,children:`3. Use Text Formatting`}),`\n`,_jsx(_components.p,{children:`Using the agent editor, you can use text formatting to make your agent more readable. For example, you can use bullet points to list the items you want the Logic API to include in its analysis. You can also use headings to separate different sections of your agent.`}),`\n`,_jsx(_components.p,{children:`Make sure to organize your agent in a way that makes sense for the task at hand. For example, you might have a section for the input and a section for the output.`}),`\n`,_jsx(Heading,{level:`3`,id:`4-test-your-agent`,children:`4. Test Your Agent`}),`\n`,_jsx(_components.p,{children:`To ensure your agent works as intended, test it out using the Logic API. You can do this by sending a request to the API with sample input and checking the output. This will help you identify any issues or areas for improvement.`}),`\n`,_jsx(_components.p,{children:`Be sure to use the testing tools in the Logic dashboard. Once you create an agent, a dedicated testing page is automatically generated, letting you verify its behavior and make edits as needed.`}),`\n`,_jsx(Heading,{level:`3`,id:`5-iterate-and-improve`,children:`5. Iterate and Improve`}),`\n`,_jsx(_components.p,{children:`A good agent is never truly finished. As you use the Logic API and receive feedback, you may find areas where your agent can be improved. Don’t hesitate to make changes and iterate on your agent to make it better.`}),`\n`,_jsx(_components.p,{children:`Use the testing features in the Logic dashboard to validate your agent. This will help you ensure that it behaves as expected and meets your requirements.`})]})}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":"What Makes a Good Agent?","description":"How to write good agents in Logic","href":"/guides/other/making-a-good-agent"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"What Makes a Good Agent?","slug":"what-makes-a-good-agent","depth":2,"children":[{"title":"1. Be Clear and Concise","slug":"1-be-clear-and-concise","depth":3,"children":[]},{"title":"2. Provide Context","slug":"2-provide-context","depth":3,"children":[]},{"title":"3. Use Text Formatting","slug":"3-use-text-formatting","depth":3,"children":[]},{"title":"4. Test Your Agent","slug":"4-test-your-agent","depth":3,"children":[]},{"title":"5. Iterate and Improve","slug":"5-iterate-and-improve","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"logic","siteName":"Logic Documentation","title":"What Makes a Good Agent? - Logic Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-04-23T19:47:36.793Z","originalFileLocation":"guides/other/making-a-good-agent.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=\"How to write good agents in Logic\">\u003cmeta data-mint-head name=\"application-name\" content=\"Logic Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_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/logic/HavgrsRgOE5UGvd1/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"What Makes a Good Agent? - Logic Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"How to write good agents in Logic\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Logic Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.logic.inc/guides/other/making-a-good-agent\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://logic.mintlify.app/_mintlify/api/og/v2?division=Other\u0026amp;title=What+Makes+a+Good+Agent%3F\u0026amp;description=How+to+write+good+agents+in+Logic\u0026amp;theme=f60085e1125789f63111dc85\u0026amp;signature=d7200bb6661e9fc1ddad64b80f1ef14463afe755022293304c1be1b01a5f7c26\">\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=\"What Makes a Good Agent? - Logic Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"How to write good agents in Logic\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://logic.mintlify.app/_mintlify/api/og/v2?division=Other\u0026amp;title=What+Makes+a+Good+Agent%3F\u0026amp;description=How+to+write+good+agents+in+Logic\u0026amp;theme=f60085e1125789f63111dc85\u0026amp;signature=d7200bb6661e9fc1ddad64b80f1ef14463afe755022293304c1be1b01a5f7c26\">\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/logic/HavgrsRgOE5UGvd1/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Logic Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2657AC\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.logic.inc/guides/other/making-a-good-agent\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/guides/other/making-a-good-agent.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.logic.inc/#organization\",\"name\":\"Logic Documentation\",\"url\":\"https://docs.logic.inc\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/logic/YO7O6hkpncKkRwwK/logo/Logic-Dark.png?fit=max\u0026auto=format\u0026n=YO7O6hkpncKkRwwK\u0026q=85\u0026s=109212947ad00a07499d42c15ee67ad4\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.logic.inc#website\",\"name\":\"Logic Documentation\",\"url\":\"https://docs.logic.inc\",\"publisher\":{\"@id\":\"https://docs.logic.inc/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.logic.inc/guides/other/making-a-good-agent#webpage\",\"url\":\"https://docs.logic.inc/guides/other/making-a-good-agent\",\"name\":\"What Makes a Good Agent?\",\"description\":\"How to write good agents in Logic\",\"dateModified\":\"2026-04-23T19:47:36.793Z\",\"isPartOf\":{\"@id\":\"https://docs.logic.inc#website\"},\"breadcrumb\":{\"@id\":\"https://docs.logic.inc/guides/other/making-a-good-agent#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.logic.inc/guides/other/making-a-good-agent#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Other\",\"item\":\"https://docs.logic.inc/guides/other/server-status\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What Makes a Good Agent?\",\"item\":\"https://docs.logic.inc/guides/other/making-a-good-agent\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.logic.inc/guides/other/making-a-good-agent#article\",\"headline\":\"What Makes a Good Agent?\",\"name\":\"What Makes a Good Agent?\",\"description\":\"How to write good agents in Logic\",\"url\":\"https://docs.logic.inc/guides/other/making-a-good-agent\",\"mainEntityOfPage\":{\"@id\":\"https://docs.logic.inc/guides/other/making-a-good-agent#webpage\"},\"dateModified\":\"2026-04-23T19:47:36.793Z\",\"publisher\":{\"@id\":\"https://docs.logic.inc/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.logic.inc#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Logic Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Logic Documentation","nav":{"global":{"anchors":[{"anchor":"Logic Dashboard","icon":"up-right-from-square","href":"https://app.logic.inc"}]},"tabs":[{"tab":"Guides","groups":[{"group":"Get Started","pages":[{"title":"Introduction to Logic","href":"/guides/introduction"},{"title":"Quick Start","href":"/guides/quick-start"},{"title":"Pricing Tiers","href":"/guides/pricing-tiers"}]},{"group":"Agent Editing","pages":[{"title":"Using the Logic Dashboard","href":"/guides/agent-editing/logic-dashboard"},{"title":"Making a New Agent","href":"/guides/agent-editing/making-agents"},{"title":"Generating Agents from Description","href":"/guides/agent-editing/generating-agents-from-description"},{"title":"Creating and Editing Agents","href":"/guides/agent-editing/creating-and-editing-agents"},{"title":"Deleting an Agent","href":"/guides/agent-editing/deleting-agents"}]},{"group":"Integration and Testing","pages":[{"title":"Testing Your Agent","href":"/guides/integration-and-testing/testing"},{"title":"Integrating Your Agent","href":"/guides/integration-and-testing/integration"},{"title":"Agent Schemas","href":"/guides/integration-and-testing/schemas"},{"title":"Using the API","href":"/guides/integration-and-testing/api"},{"title":"Using Logic as an MCP Server","href":"/guides/integration-and-testing/MCP-servers"},{"title":"Email Execution","href":"/guides/integration-and-testing/email-execution"},{"title":"Sending Emails","href":"/guides/integration-and-testing/send-email"}]},{"group":"Tools","pages":[{"title":"HTTP Tools","href":"/guides/tools/http-tools"},{"title":"MCP Client Integrations","href":"/guides/tools/mcp-clients"}]},{"group":"Versions and History","pages":[{"title":"Observability","href":"/guides/versions-and-history/observability"},{"title":"Spec History","href":"/guides/versions-and-history/spec-history"}]},{"group":"Organization Settings","pages":[{"title":"Organization","href":"/guides/organization-settings/organization"},{"title":"Accounts","href":"/guides/organization-settings/accounts"},{"title":"API Keys","href":"/guides/organization-settings/api-keys"},{"title":"Billing","href":"/guides/organization-settings/billing"},{"title":"Knowledge Library","href":"/guides/organization-settings/knowledge-library"}]},{"group":"Account Settings","pages":[{"title":"Account Settings","href":"/guides/account-settings/account-settings"},{"title":"Authentication Settings","href":"/guides/account-settings/authentication-settings"},{"title":"Manage Sessions","href":"/guides/account-settings/list-sessions"}]},{"group":"Other","pages":[{"title":"Server Status","href":"/guides/other/server-status"},{"title":"Understanding Agents","description":"How to get started with agents in Logic","href":"/guides/other/understanding-agents"},{"title":"What Makes a Good Agent?","href":"/guides/other/making-a-good-agent"},{"title":"The Logic Bits Publication","description":"Logic Bits is the official publication for Logic, where you can find essays, experiments, and ideas on AI, product design, and more.","href":"/guides/other/logic-bits"}]},{"group":"Example Agents","pages":[{"title":"Importing a Document (PDF, Word, Excel)","href":"/guides/example-agents/pdf"},{"title":"Generating 3D Objects","href":"/guides/example-agents/3dobj"},{"title":"Song Recommender","href":"/guides/example-agents/song-recommender"}]}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference/introduction"}]},{"tab":"MCP","pages":[{"title":"MCP","href":"/mcp/introduction"}]}]},"title":"What Makes a Good Agent? - Logic Documentation","buildId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","deploymentId":"dpl_9DauxEjb9gzCtcuhPQFbquJvx7FJ","dynamics":[],"chunks":[]}