{"id":"3ac727c8-3fb2-4b7f-94a0-be373c867c50","shortId":"nkqD9z","kind":"skill","title":"create-agent","tagline":">-","description":"# Create Agent\n\nCreate and update Harness AI agent instances - standalone templates used as building blocks in pipelines for automated code, agentic workflows, and infrastructure tasks.\n\n## Instructions\n\nFollow this workflow to create or update an agent. **This is INTERACTIVE — show YAML for review and wait for confirmation before creating/updating the agent.**\n\n### Phase 1: Check Existing Solutions First\n\n**IMPORTANT: Before creating a new agent, check if an existing one can solve the use case.**\n\n1. **List existing agents** — Call `harness_list` with `resource_type=\"agent\"` (include `org_id` and `project_id` if scoped to a project)\n   - Check if any system or custom agents already exist that can handle this task\n   - Ask user if they want to use/modify an existing agent instead of creating new\n2. **For updating existing agents** — Use `harness_get` with `resource_type=\"agent\"` and `agent_id` to retrieve the current agent configuration\n   - Review the current `spec`, `name`, `description`, and other fields\n   - Identify what needs to be changed (spec, name, description, wiki, logo)\n   - Use `harness_update` (not `harness_create`) to update the agent with only the fields that need modification\n\n### Phase 2: Requirements Gathering\n\nIf creating a new agent or updating an existing one, collect the following before generating YAML:\n\n#### 1. Agent Metadata\n- **Name**: Display name for the agent (e.g. \"Code Coverage Agent\", \"PR Reviewer\")\n- **Description**: Brief description of the agent's purpose (optional)\n- **UID**: Unique identifier (auto-generated from name if not provided — e.g. \"Code Coverage Agent\" → \"code_coverage_agent\")\n\n#### 2. Task Details\n\n**This is an INTERACTIVE requirements gathering process. Ask clarifying questions and verify understanding with the user before proceeding.**\n\n##### Step 1: Understand the Agent's Purpose\n\nAsk and clarify the following with the user:\n\n1. **Agent's exact goal**: What specific outcome should the agent achieve?\n   - Examples: \"Increase code coverage to 80%\", \"Review PRs for security vulnerabilities\", \"Generate unit tests for uncovered functions\"\n   - Be specific — avoid vague goals like \"improve code quality\"\n\n2. **Inputs the agent needs**: What data or context does the agent require to start?\n   - Repository information? (repo name, branch, PR number)\n   - Execution context? (pipeline execution ID, previous step outputs)\n   - Configuration? (coverage threshold, target files, exclusion patterns)\n   - Secrets? (API keys, tokens for external services)\n\n3. **Outputs the agent produces**: What artifacts, reports, or actions should result?\n   - Files? (COVERAGE.md, test files, reports)\n   - External actions? (create PR, post comments, send notifications)\n   - Data? (metrics, logs, analysis results)\n\n4. **What the agent works on**: What files, services, or systems does it interact with?\n   - Specific file paths or patterns? (e.g., `pkg/**/*.go`, `src/services/`)\n   - External services? (GitHub API, Slack, monitoring systems)\n   - Databases or APIs? (read-only access, write operations)\n\n5. **Task workflow**: Understand the user's workflow for the task — what should happen step-by-step (do 1, then 2, then 3, etc.)\n\n6. **Constraints and preferences**: Any user preferences for completing the task — limitations, rules, or coding standards the agent should follow\n   - Examples: \"Use idiomatic Go code\", \"Do not modify existing tests\", \"Keep reports under 10000 characters\"\n\n7. **Definition of done**: How do you know the agent succeeded?\n   - Specific criteria? (\"Coverage increased by X%\", \"All files have tests\")\n   - Artifacts created? (\"PR created with tests\", \"COVERAGE.md updated\")\n   - Exit conditions? (\"No security vulnerabilities found\", \"All checks passed\")\n\n##### Step 2: Recommend Configuration\n\nBased on the requirements gathered in Step 1, recommend specific configurations and verify with the user:\n\n1. **Task instructions** (`task` field):\n   - Break down the goal into detailed step-by-step instructions\n   - Include specific commands, file paths, and expected outcomes\n   - Reference inputs using `<+inputs.fieldName>` syntax\n   - Example: \"1. Run `go test -cover ./...` to measure coverage\\n2. Identify functions below 80% coverage\\n3. Generate tests for uncovered functions\\n4. Create PR with new tests\"\n\n2. **Runtime inputs** (`inputs` section in spec):\n   - Only add if user confirms runtime parameters are needed\n   - Map each input to what the agent needs (repo, branch, executionId, thresholds, etc.)\n   - Example: `repo` (string), `coverageThreshold` (string), `llmKey` (secret)\n\n3. **User preferences** (RULES section in `task` field):\n   - Convert constraints and coding standards into a dedicated RULES section at the end of the task\n   - Format as a markdown section with bullet points\n   - Be specific and actionable\n   - Example: Add `## RULES\\n- Use idiomatic Go code\\n- Do not modify existing tests\\n- Keep COVERAGE.md under 10000 characters` at the end of the task\n\n4. **Connectors**:\n   - LLM connector for model access (required for all agents) - User must create via Harness UI or MCP\n   - MCP connectors for external services (GitHub, Slack, Harness platform, etc.) - only if needed\n   - All authentication and secrets are managed within the connectors\n\n**Present this recommended configuration to the user and iterate until confirmed.**\n\n#### 3. Default Configuration & Inputs\n\n**Agent Structure:** Agents use `agent.step.run` format with a single step.\n\n**Default container image:**\n```yaml\ncontainer:\n  image: pkg.harness.io/vrvdt5ius7uwygso8s0bia/harness-agents/harness-ai-agent:latest\n```\n\n**Required environment variables:**\n```yaml\nenv:\n  ANTHROPIC_MODEL: <+inputs.anthropicModel>           # Points to anthropicModel input field\n  PLUGIN_HARNESS_CONNECTOR: <+inputs.llmConnector.id> # Points to llmConnector input's id property\n```\n\n**Default max_turns:**\n```yaml\nmax_turns: 150  # Adjust 100-200 based on task complexity\n```\n\n**MCP configuration (only if external services needed):**\n```yaml\nmcp_format: harness\nmcp_servers: <+connectorInputs.resolveList(<+inputs.mcpConnectors>)>  # Points to mcpConnectors input field\n```\n\n**Required inputs (always include):**\n```yaml\nagent:\n  inputs:\n    llmConnector:\n      type: connector\n      required: true\n      default: your_llm_connector_id  # User must replace with actual connector ID\n    \n    anthropicModel:\n      type: string\n      required: true\n      default: arn:aws:bedrock:us-east-1:587817102444:application-inference-profile/7p8sn93lhspw # User may replace with their preferred model\n```\n\n**Optional inputs (add as needed):**\n```yaml\n    # MCP connectors - only if agent needs external services\n    mcpConnectors:\n      type: array\n      default:\n        - your_github_mcp_connector  # User must replace\n        - your_slack_mcp_connector   # User must replace\n    \n    # Custom parameters\n    repo_name:\n      type: string\n      default: my-org/my-repo\n```\n\n**Supported input types:** `string`, `secret`, `boolean`, `connector`, `array`\n\n**IMPORTANT:** Users must create connectors via Harness UI or `harness_create` with `resource_type=\"connector\"` before running the agent.\n\n### Phase 3: Generate Agent Spec\n\nAssemble the complete agent YAML specification (`spec` field):\n\n1. Start with `version: 1` and `agent:` structure\n2. Create `agent.step.run` block with:\n   - `container.image: pkg.harness.io/vrvdt5ius7uwygso8s0bia/harness-agents/harness-ai-agent:latest`\n   - `with` section:\n     - `task:` with step-by-step instructions and `## RULES` section\n     - `max_turns: 150` (adjust 100-200 based on complexity)\n     - `mcp_format: harness` (only if MCPs needed)\n     - `mcp_servers: <+connectorInputs.resolveList(<+inputs.mcpConnectors>)>` (only if MCPs needed)\n   - `env` section:\n     - `ANTHROPIC_MODEL: <+inputs.anthropicModel>`\n     - `PLUGIN_HARNESS_CONNECTOR: <+inputs.llmConnector.id>`\n3. Add `agent.inputs` section with:\n   - `llmConnector` (required - use placeholder ID)\n   - `anthropicModel` (required - use default ARN, but user may update)\n   - `mcpConnectors` (optional - only if needed)\n   - Custom inputs (as needed)\n\n**Always notify users to create connectors and replace placeholder IDs before running the agent.**\n\n### Phase 4: Present for Review\n\nPresent the complete agent configuration to the user:\n- Agent metadata (name, description, uid)\n- Full spec YAML\n- Required connectors\n\n**Wait for explicit confirmation before creating/updating the agent.**\n\n### Phase 5: Create or Update Agent\n\nOnly after confirmation, use `harness_create` to create a new agent or `harness_update` to update an existing one:\n\n#### Creating a New Agent\n\n```\nCall MCP tool: harness_create\nParameters:\n  resource_type: \"agent\"\n  org_id: \"<organization>\"\n  project_id: \"<project>\"\n  body: {\n    uid: \"<agent_identifier>\",\n    name: \"<Agent Display Name>\",\n    description: \"<Brief description of agent purpose>\",\n    spec: \"<agent YAML spec as a string>\",\n    wiki: \"<optional: markdown documentation>\"\n  }\n```\n\n**Key fields for creation:**\n- `uid` (required): Unique identifier. Auto-generated from `name` if not provided (e.g. \"Code Coverage Agent\" → \"code_coverage_agent\")\n- `name` (required): Display name for the agent\n- `description` (optional): Brief description\n- `spec` (required): The full agent YAML specification as a string (includes `version: 1`, `agent:`, `stages:`, etc.)\n- `wiki` (optional): Markdown documentation for the agent\n\n#### Updating an Existing Agent\n\n```\nCall MCP tool: harness_update\nParameters:\n  resource_type: \"agent\"\n  agent_id: \"<agent_identifier>\"\n  org_id: \"<organization>\"\n  project_id: \"<project>\"\n  body: {\n    name: \"<Updated Display Name>\",           # optional\n    description: \"<Updated description>\",     # optional\n    spec: \"<updated agent YAML spec>\",        # optional\n    wiki: \"<updated markdown docs>\"           # optional\n  }\n```\n\n**Key notes for updates:**\n- All fields in the body are optional — only provide fields you want to update\n- Only custom agents (role='custom') can be updated; system agents cannot be modified\n- The `spec` field replaces the entire agent specification when provided\n- Use `harness_get` first to retrieve the current agent configuration before updating\n\n## Example: Code Review Agent\n\n```yaml\nversion: 1\nagent:\n  step:\n    run:\n      container:\n        image: pkg.harness.io/vrvdt5ius7uwygso8s0bia/harness-agents/harness-ai-agent:latest\n      with:\n        task: |\n          Review the pull request for repository <+inputs.repo_name> on branch <+inputs.branch>.\n          \n          1. Analyze code changes for security vulnerabilities\n          2. Check for code quality issues\n          3. Verify test coverage\n          4. Post review comments using GitHub MCP tools\n          \n          ## RULES\n          - Focus on critical security issues first\n          - Be constructive in feedback\n          - Suggest specific code improvements\n        max_turns: 150\n        mcp_format: harness\n        mcp_servers: <+connectorInputs.resolveList(<+inputs.mcpConnectors>)>\n      env:\n        ANTHROPIC_MODEL: <+inputs.anthropicModel>\n        PLUGIN_HARNESS_CONNECTOR: <+inputs.llmConnector.id>\n  \n  inputs:\n    llmConnector:\n      type: connector\n      required: true\n      default: your_llm_connector_id  # User must replace with actual connector ID\n    \n    anthropicModel:\n      type: string\n      required: true\n      default: arn:aws:bedrock:us-east-1:587817102444:application-inference-profile/7p8sn93lhspw\n    \n    mcpConnectors:\n      type: array\n      default:\n        - your_github_mcp_connector  # User must replace with actual connector ID\n    \n    repo_name:\n      type: string\n      default: my-org/my-repo\n    \n    branch:\n      type: string\n      default: main\n```\n\n## CRITICAL GUIDELINES\n\n**These are essential rules you MUST follow when creating/updating agents:**\n\n| Guideline                  | Rule                                                                                                                                     |\n| ----------------------------| ------------------------------------------------------------------------------------------------------------------------------------------|\n| **Check existing first**   | Always call `harness_list(resource_type=\"agent\")` to see if an existing agent can solve the use case before creating new                 |\n| **Updating agents**        | Use `harness_get` to retrieve current config, then `harness_update` (not `harness_create`) to modify. Only custom agents can be updated. |\n| **Agent spec format**      | The `spec` field contains standalone agent YAML (version: 1, agent:, stages:, steps:, inputs:)                                           |\n| **Connectors required**    | All agents require `llmConnector` (required) and optional `mcpConnectors` (array) in the inputs section — users must create these first  |\n| **Connector placeholders** | Always use placeholders like `your_llm_connector_id` and notify users to replace with actual connector IDs                               |\n| **Prefer inputs**          | Use `inputs` for configuration instead of environment variables — reference with `${{ inputs.variableName }}`                            |\n| **No clone/platform**      | Do NOT add `clone`, `platform`, `os`, `arch`, or `allowed_tools` sections — agents are standalone with simplified structure              |\n| **Quality first**          | Agent quality is paramount — verify YAML structure, validate all references, ensure complete task instructions before creating           |\n\n\n## Examples\n\n- \"Create an agent that reviews PRs for security issues\" - Gather requirements, generate agent spec with GitHub MCP connector, create via `harness_create`\n- \"Update my code coverage agent to use a different model\" - Fetch agent with `harness_get`, modify spec, update via `harness_update`\n- \"Build an agent that runs tests and reports results to Slack\" - Multi-MCP setup with GitHub and Slack connectors\n- \"Create an autonomous agent to fix failing tests\" - Agent with shell steps and Claude Code plugin\n\n## Troubleshooting\n\n### Connector Not Found\n\n1. Verify the connector exists in Harness UI with the exact ID used in the agent spec\n2. Check that the connector is in the correct scope (account/org/project)\n3. Create the connector using `harness_create` with `resource_type=\"connector\"` if it doesn't exist\n\n### MCP Tools Not Available\n\n1. Verify `mcpConnectors` input includes the correct connector IDs\n2. Check that MCP connectors are properly configured with valid endpoints\n3. Ensure the connector has the necessary permissions for the MCP server\n\n### Agent Task Failing\n\n1. Check `max_turns` is sufficient for task complexity (increase if needed)\n2. Verify all input references use correct syntax: `${{ inputs.variableName }}`\n3. Review task instructions for clarity and completeness\n\n## Best Practices\n\n- Use `type: connector` for LLM and MCP access\n- **Prefer inputs over environment variables** for all configuration\n- Include meaningful descriptions on all inputs\n- Provide detailed step-by-step instructions in `task` field with `## RULES` section\n- Adjust `max_turns` based on task complexity (100-200)\n- Always use placeholder connector IDs and notify users to replace them\n- Create connectors via Harness UI or `harness_create` with `resource_type=\"connector\"`","tags":["create","agent","harness","skills","agent-skills","agents"],"capabilities":["skill","source-harness","skill-create-agent","topic-agent-skills","topic-agents"],"categories":["harness-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/harness/harness-skills/create-agent","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add harness/harness-skills","source_repo":"https://github.com/harness/harness-skills","install_from":"skills.sh"}},"qualityScore":"0.457","qualityRationale":"deterministic score 0.46 from registry signals: · indexed on github topic:agent-skills · 15 github stars · SKILL.md body (15,353 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:06:28.959Z","embedding":null,"createdAt":"2026-05-09T01:05:27.533Z","updatedAt":"2026-05-18T19:06:28.959Z","lastSeenAt":"2026-05-18T19:06:28.959Z","tsv":"'-200':814,1006,1852 '/7p8sn93lhspw':881,1415 '/my-repo':931,1439 '/vrvdt5ius7uwygso8s0bia/harness-agents/harness-ai-agent:latest':780,988,1307 '1':55,76,204,268,282,453,543,552,582,875,972,976,1201,1299,1321,1409,1517,1695,1743,1778 '100':813,1005,1851 '10000':492,698 '150':811,1003,1363 '2':126,185,246,320,455,533,608,980,1328,1712,1752,1790 '3':364,457,644,758,960,1034,1334,1723,1763,1799 '4':394,706,1077,1338 '5':434,1108 '587817102444':876,1410 '6':459 '7':494 '80':299,594 'access':431,712,1816 'account/org/project':1722 'achiev':293 'action':373,382,679 'actual':860,1394,1428,1558 'add':616,681,891,1035,1578 'adjust':812,1004,1844 'agent':3,5,11,24,38,53,65,79,86,104,121,130,137,139,145,176,192,205,212,216,224,242,245,271,283,292,323,331,367,397,476,503,630,716,762,764,844,899,958,962,967,978,1075,1084,1089,1106,1112,1123,1135,1144,1174,1177,1184,1193,1202,1211,1215,1224,1225,1260,1267,1277,1289,1296,1300,1456,1468,1474,1484,1502,1506,1514,1518,1525,1587,1595,1614,1624,1638,1645,1657,1678,1683,1710,1775 'agent.inputs':1036 'agent.step.run':766,982 'ai':10 'allow':1584 'alreadi':105 'alway':841,1062,1462,1544,1853 'analysi':392 'analyz':1322 'anthrop':786,1027,1372 'anthropicmodel':791,863,1044,1397 'api':358,421,427 'applic':878,1412 'application-inference-profil':877,1411 'arch':1582 'arn':869,1048,1403 'array':905,939,1418,1532 'artifact':370,515 'ask':112,256,274 'assembl':964 'authent':739 'auto':232,1164 'auto-gener':231,1163 'autom':22 'autonom':1677 'avail':1742 'avoid':313 'aw':870,1404 'base':536,815,1007,1847 'bedrock':871,1405 'best':1807 'block':18,983 'bodi':1149,1231,1248 'boolean':937 'branch':339,633,1319,1440 'break':557 'brief':220,1187 'build':17,1655 'bullet':674 'call':80,1136,1216,1463 'cannot':1268 'case':75,1479 'chang':161,1324 'charact':493,699 'check':56,66,98,530,1329,1459,1713,1753,1779 'clarifi':257,276 'clariti':1804 'claud':1688 'clone':1579 'clone/platform':1575 'code':23,214,240,243,296,318,473,483,655,687,1172,1175,1294,1323,1331,1359,1636,1689 'collect':198 'command':570 'comment':386,1341 'complet':467,966,1083,1606,1806 'complex':818,1009,1786,1850 'condit':524 'config':1491 'configur':146,350,535,546,750,760,820,1085,1290,1566,1759,1824 'confirm':49,619,757,1102,1115 'connector':707,709,726,746,796,848,854,861,896,910,917,938,944,954,1032,1067,1098,1377,1382,1388,1395,1423,1429,1522,1542,1550,1559,1629,1674,1692,1698,1716,1726,1733,1750,1756,1766,1811,1856,1865,1875 'connectorinputs.resolvelist':832,1019,1369 'constraint':460,653 'construct':1354 'contain':773,776,1303,1512 'container.image':985 'context':328,343 'convert':652 'correct':1720,1749,1796 'cover':586 'coverag':215,241,244,297,351,507,589,595,1173,1176,1337,1637 'coverage.md':377,521,696 'coveragethreshold':640 'creat':2,4,6,34,62,124,172,189,383,516,518,603,719,943,950,981,1066,1109,1118,1120,1132,1140,1481,1497,1539,1610,1612,1630,1633,1675,1724,1729,1864,1871 'create-ag':1 'creating/updating':51,1104,1455 'creation':1158 'criteria':506 'critic':1349,1445 'current':144,149,1288,1490 'custom':103,921,1058,1259,1262,1501 'data':326,389 'databas':425 'dedic':659 'default':759,772,805,851,868,906,927,1047,1385,1402,1419,1435,1443 'definit':495 'descript':152,164,219,221,1092,1152,1185,1188,1234,1827 'detail':248,562,1832 'differ':1642 'display':208,1180 'document':1208 'doesn':1736 'done':497 'e.g':213,239,414,1171 'east':874,1408 'end':664,702 'endpoint':1762 'ensur':1605,1764 'entir':1276 'env':785,1025,1371 'environ':782,1569,1820 'essenti':1449 'etc':458,636,734,1204 'exact':285,1705 'exampl':294,479,581,637,680,1293,1611 'exclus':355 'execut':342,345 'executionid':634 'exist':57,69,78,106,120,129,196,487,692,1130,1214,1460,1473,1699,1738 'exit':523 'expect':574 'explicit':1101 'extern':362,381,418,728,823,901 'fail':1681,1777 'feedback':1356 'fetch':1644 'field':155,180,556,651,793,838,971,1156,1245,1253,1273,1511,1840 'file':354,376,379,401,410,512,571 'first':59,1284,1352,1461,1541,1594 'fix':1680 'focus':1347 'follow':30,200,278,478,1453 'format':668,767,828,1011,1365,1508 'found':528,1694 'full':1094,1192 'function':310,592,601 'gather':187,254,540,1621 'generat':202,233,305,597,961,1165,1623 'get':133,1283,1487,1648 'github':420,730,908,1343,1421,1627,1671 'go':416,482,584,686 'goal':286,315,560 'guidelin':1446,1457 'handl':109 'happen':447 'har':9,81,132,168,171,721,732,795,829,946,949,1012,1031,1117,1125,1139,1219,1282,1366,1376,1464,1486,1493,1496,1632,1647,1653,1701,1728,1867,1870 'id':89,92,140,346,803,855,862,1043,1071,1146,1148,1226,1228,1230,1389,1396,1430,1551,1560,1706,1751,1857 'identifi':156,230,591,1162 'idiomat':481,685 'imag':774,777,1304 'import':60,940 'improv':317,1360 'includ':87,568,842,1199,1747,1825 'increas':295,508,1787 'infer':879,1413 'inform':336 'infrastructur':27 'input':321,577,610,611,626,761,792,801,837,840,845,890,933,1059,1379,1521,1535,1562,1564,1746,1793,1818,1830 'inputs.anthropicmodel':788,1029,1374 'inputs.branch':1320 'inputs.fieldname':579 'inputs.llmconnector.id':797,1033,1378 'inputs.mcpconnectors':833,1020,1370 'inputs.repo':1316 'inputs.variablename':1573,1798 'instanc':12 'instead':122,1567 'instruct':29,554,567,997,1608,1802,1837 'interact':41,252,407 'issu':1333,1351,1620 'iter':755 'keep':489,695 'key':359,1155,1240 'know':501 'like':316,1547 'limit':470 'list':77,82,1465 'llm':708,853,1387,1549,1813 'llmconnector':800,846,1039,1380,1527 'llmkey':642 'log':391 'logo':166 'main':1444 'manag':743 'map':624 'markdown':671,1207 'max':806,809,1001,1361,1780,1845 'may':883,1051 'mcp':724,725,819,827,830,895,909,916,1010,1017,1137,1217,1344,1364,1367,1422,1628,1668,1739,1755,1773,1815 'mcpconnector':836,903,1053,1416,1531,1745 'mcps':1015,1023 'meaning':1826 'measur':588 'metadata':206,1090 'metric':390 'model':711,787,888,1028,1373,1643 'modif':183 'modifi':486,691,1270,1499,1649 'monitor':423 'multi':1667 'multi-mcp':1666 'must':718,857,912,919,942,1391,1425,1452,1538 'my-org':928,1436 'n':683,688,694 'n2':590 'n3':596 'n4':602 'name':151,163,207,209,235,338,924,1091,1151,1167,1178,1181,1232,1317,1432 'necessari':1769 'need':158,182,324,623,631,737,825,893,900,1016,1024,1057,1061,1789 'new':64,125,191,606,1122,1134,1482 'note':1241 'notif':388 'notifi':1063,1553,1859 'number':341 'one':70,197,1131 'oper':433 'option':227,889,1054,1186,1206,1233,1235,1237,1239,1250,1530 'org':88,930,1145,1227,1438 'os':1581 'outcom':289,575 'output':349,365 'paramet':621,922,1141,1221 'paramount':1598 'pass':531 'path':411,572 'pattern':356,413 'permiss':1770 'phase':54,184,959,1076,1107 'pipelin':20,344 'pkg':415 'pkg.harness.io':779,987,1306 'pkg.harness.io/vrvdt5ius7uwygso8s0bia/harness-agents/harness-ai-agent:latest':778,986,1305 'placehold':1042,1070,1543,1546,1855 'platform':733,1580 'plugin':794,1030,1375,1690 'point':675,789,798,834 'post':385,1339 'pr':217,340,384,517,604 'practic':1808 'prefer':462,465,646,887,1561,1817 'present':747,1078,1081 'previous':347 'proceed':266 'process':255 'produc':368 'profil':880,1414 'project':91,97,1147,1229 'proper':1758 'properti':804 'provid':238,1170,1252,1280,1831 'prs':301,1617 'pull':1312 'purpos':226,273 'qualiti':319,1332,1593,1596 'question':258 'read':429 'read-on':428 'recommend':534,544,749 'refer':576,1571,1604,1794 'replac':858,884,913,920,1069,1274,1392,1426,1556,1862 'repo':337,632,638,923,1431 'report':371,380,490,1662 'repositori':335,1315 'request':1313 'requir':186,253,332,539,713,781,839,849,866,1040,1045,1097,1160,1179,1190,1383,1400,1523,1526,1528,1622 'resourc':84,135,952,1142,1222,1466,1731,1873 'result':375,393,1663 'retriev':142,1286,1489 'review':45,147,218,300,1080,1295,1310,1340,1616,1800 'role':1261 'rule':471,647,660,682,999,1346,1450,1458,1842 'run':583,956,1073,1302,1659 'runtim':609,620 'scope':94,1721 'secret':357,643,741,936 'section':612,648,661,672,990,1000,1026,1037,1536,1586,1843 'secur':303,526,1326,1350,1619 'see':1470 'send':387 'server':831,1018,1368,1774 'servic':363,402,419,729,824,902 'setup':1669 'shell':1685 'show':42 'simplifi':1591 'singl':770 'skill' 'skill-create-agent' 'slack':422,731,915,1665,1673 'solut':58 'solv':72,1476 'source-harness' 'spec':150,162,614,963,970,1095,1153,1189,1236,1272,1507,1510,1625,1650,1711 'specif':288,312,409,505,545,569,677,969,1195,1278,1358 'src/services':417 'stage':1203,1519 'standalon':13,1513,1589 'standard':474,656 'start':334,973 'step':267,348,449,451,532,542,564,566,771,994,996,1301,1520,1686,1834,1836 'step-by-step':448,563,993,1833 'string':639,641,865,926,935,1198,1399,1434,1442 'structur':763,979,1592,1601 'succeed':504 'suffici':1783 'suggest':1357 'support':932 'syntax':580,1797 'system':101,404,424,1266 'target':353 'task':28,111,247,435,444,469,553,555,650,667,705,817,991,1309,1607,1776,1785,1801,1839,1849 'templat':14 'test':307,378,488,514,520,585,598,607,693,1336,1660,1682 'threshold':352,635 'token':360 'tool':1138,1218,1345,1585,1740 'topic-agent-skills' 'topic-agents' 'troubleshoot':1691 'true':850,867,1384,1401 'turn':807,810,1002,1362,1781,1846 'type':85,136,847,864,904,925,934,953,1143,1223,1381,1398,1417,1433,1441,1467,1732,1810,1874 'ui':722,947,1702,1868 'uid':228,1093,1150,1159 'uncov':309,600 'understand':261,269,437 'uniqu':229,1161 'unit':306 'updat':8,36,128,169,174,194,522,1052,1111,1126,1128,1212,1220,1243,1257,1265,1292,1483,1494,1505,1634,1651,1654 'us':873,1407 'us-east':872,1406 'use':15,74,131,167,480,578,684,765,1041,1046,1116,1281,1342,1478,1485,1545,1563,1640,1707,1727,1795,1809,1854 'use/modify':118 'user':113,264,281,439,464,551,618,645,717,753,856,882,911,918,941,1050,1064,1088,1390,1424,1537,1554,1860 'vagu':314 'valid':1602,1761 'variabl':783,1570,1821 'verifi':260,548,1335,1599,1696,1744,1791 'version':975,1200,1298,1516 'via':720,945,1631,1652,1866 'vulner':304,527,1327 'wait':47,1099 'want':116,1255 'wiki':165,1154,1205,1238 'within':744 'work':398 'workflow':25,32,436,441 'write':432 'x':510 'yaml':43,203,775,784,808,826,843,894,968,1096,1194,1297,1515,1600","prices":[{"id":"c3166333-3854-46fd-a46d-518658f8bfe0","listingId":"3ac727c8-3fb2-4b7f-94a0-be373c867c50","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"harness","category":"harness-skills","install_from":"skills.sh"},"createdAt":"2026-05-09T01:05:27.533Z"}],"sources":[{"listingId":"3ac727c8-3fb2-4b7f-94a0-be373c867c50","source":"github","sourceId":"harness/harness-skills/create-agent","sourceUrl":"https://github.com/harness/harness-skills/tree/main/skills/create-agent","isPrimary":false,"firstSeenAt":"2026-05-09T01:05:27.533Z","lastSeenAt":"2026-05-18T19:06:28.959Z"}],"details":{"listingId":"3ac727c8-3fb2-4b7f-94a0-be373c867c50","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"harness","slug":"create-agent","github":{"repo":"harness/harness-skills","stars":15,"topics":["agent-skills","agents"],"license":"apache-2.0","html_url":"https://github.com/harness/harness-skills","pushed_at":"2026-05-13T01:28:28Z","description":"A collection of structured AI agent skills that   enable Claude Code, Cursor, GitHub Copilot, and   other AI coding assistants to create, operate,   debug, and govern Harness CI/CD workflows through   natural language.","skill_md_sha":"84f2a4d3df88189ceb0501b6b10e55419ac040ca","skill_md_path":"skills/create-agent/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/harness/harness-skills/tree/main/skills/create-agent"},"layout":"multi","source":"github","category":"harness-skills","frontmatter":{"name":"create-agent","license":"Apache-2.0","description":">-","compatibility":"Requires Harness MCP v2 server (harness-mcp-v2)"},"skills_sh_url":"https://skills.sh/harness/harness-skills/create-agent"},"updatedAt":"2026-05-18T19:06:28.959Z"}}