[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7CT7YMBDB38TSA4P9WS556Y":3,"skill-same:01M7CT7YMBDB38TSA4P9WS556Y":44},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":14,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":29,"install":30,"resources":43},"01M7CT7YMBDB38TSA4P9WS556Y","detect-framework",null,"Detect Python agent frameworks from code imports and map them to Omnigent executor types. Load when the user has existing agent code to integrate.","roland-id-au\u002Fomniagent","roland-id-au","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F2590653?v=4","01M7CT4DEBVK4R185WFWCWN4JD","Buck Chancey","01M7CT4DFGWX49CGE347EF4V6T",0,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fomnigent\u002Fonboarding\u002Fagent\u002Fskills\u002Fdetect-framework\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: detect-framework\ndescription: Detect Python agent frameworks from code imports and map them to Omnigent executor types. Load when the user has existing agent code to integrate.\n---\n\n# Framework Detection\n\nWhen the user has existing Python code they want to integrate into\nOmnigent, detect the framework from import statements and recommend\nthe appropriate executor type.\n\n## Detection Procedure\n\n1. Ask the user for the path to their agent code (or look for Python\n   files in the current directory if filesystem access is enabled).\n\n2. Scan Python files for import patterns. Check in this priority order:\n\n| Import pattern | Framework | Executor type |\n|---------------|-----------|---------------|\n| `import anthropic` or `from anthropic` + agent patterns (e.g. `Agent`, `tool`, system prompt setup) | Claude SDK | `claude_sdk` |\n| `import openai` or `from openai` + agents patterns (e.g. `Agent`, `Runner`, `function_tool`) | OpenAI Agents SDK | `agents_sdk` |\n| `from langgraph` or `import langgraph` | LangGraph | Not natively supported yet |\n| `from deepagents` or `import deepagents` | DeepAgents | Not natively supported yet |\n| `from langchain` or `import langchain` | LangChain | Not natively supported yet |\n| `from crewai` or `import crewai` | CrewAI | Not natively supported yet |\n| `from autogen` or `import autogen` | AutoGen | Not natively supported yet |\n| None of the above | Unknown | Not natively supported yet |\n\n3. Report what you found and recommend the executor type.\n\n## What to generate for each executor type\n\n### `llm` (default — no existing code)\n\nGenerate a standard agent directory:\n```yaml\nexecutor:\n  type: llm  # or omit entirely (llm is the default)\n```\n\n### `claude_sdk`\n\nThe user's Claude SDK code runs directly. Generate config that points\nto their entry module:\n```yaml\nexecutor:\n  type: claude_sdk\n```\n\n### `agents_sdk`\n\nThe user's OpenAI Agents SDK code runs directly:\n```yaml\nexecutor:\n  type: agents_sdk\n```\n\n## Asking about unsupported frameworks\n\nIf the user's framework is not natively supported, let them know:\n- Explain that Omnigent does not currently have a supported executor for that framework.\n- Offer to show them a pre-filled GitHub issue URL requesting first-class\n  support for their framework.\n- If they want to start fresh instead, recommend generating a standard `llm` agent.\n- The issue URL format: `https:\u002F\u002Fgithub.com\u002Fdbczumar\u002Fomnigent\u002Fissues\u002Fnew?title=...&body=...`\n","# Framework Detection\n\nWhen the user has existing Python code they want to integrate into\nOmnigent, detect the framework from import statements and recommend\nthe appropriate executor type.\n\n## Detection Procedure\n\n1. Ask the user for the path to their agent code (or look for Python\n   files in the current directory if filesystem access is enabled).\n\n2. Scan Python files for import patterns. Check in this priority order:\n\n| Import pattern | Framework | Executor type |\n|---------------|-----------|---------------|\n| `import anthropic` or `from anthropic` + agent patterns (e.g. `Agent`, `tool`, system prompt setup) | Claude SDK | `claude_sdk` |\n| `import openai` or `from openai` + agents patterns (e.g. `Agent`, `Runner`, `function_tool`) | OpenAI Agents SDK | `agents_sdk` |\n| `from langgraph` or `import langgraph` | LangGraph | Not natively supported yet |\n| `from deepagents` or `import deepagents` | DeepAgents | Not natively supported yet |\n| `from langchain` or `import langchain` | LangChain | Not natively supported yet |\n| `from crewai` or `import crewai` | CrewAI | Not natively supported yet |\n| `from autogen` or `import autogen` | AutoGen | Not natively supported yet |\n| None of the above | Unknown | Not natively supported yet |\n\n3. Report what you found and recommend the executor type.\n\n## What to generate for each executor type\n\n### `llm` (default — no existing code)\n\nGenerate a standard agent directory:\n```yaml\nexecutor:\n  type: llm  # or omit entirely (llm is the default)\n```\n\n### `claude_sdk`\n\nThe user's Claude SDK code runs directly. Generate config that points\nto their entry module:\n```yaml\nexecutor:\n  type: claude_sdk\n```\n\n### `agents_sdk`\n\nThe user's OpenAI Agents SDK code runs directly:\n```yaml\nexecutor:\n  type: agents_sdk\n```\n\n## Asking about unsupported frameworks\n\nIf the user's framework is not natively supported, let them know:\n- Explain that Omnigent does not currently have a supported executor for that framework.\n- Offer to show them a pre-filled GitHub issue URL requesting first-class\n  support for their framework.\n- If they want to start fresh instead, recommend generating a standard `llm` agent.\n- The issue URL format: `https:\u002F\u002Fgithub.com\u002Fdbczumar\u002Fomnigent\u002Fissues\u002Fnew?title=...&body=...`\n",{"name":5,"description":7},"deploy\u002Froland-id-au-omniagent","83ee3dcd78468bbe3baf4bb264a0c99a53aa0fec","omnigent\u002Fonboarding\u002Fagent\u002Fskills\u002Fdetect-framework","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent","https:\u002F\u002Fgithub.com\u002Froland-id-au","2026-09-16 03:15:34",{"source":8,"skillName":5,"commands":31,"prompt":41,"zipAvailable":42},[32,35,38],{"tool":33,"command":34},"npx","npx skills add roland-id-au\u002Fomniagent --skill detect-framework",{"tool":36,"command":37},"bunx","bunx skills add roland-id-au\u002Fomniagent --skill detect-framework",{"tool":39,"command":40},"pnpm","pnpm dlx skills add roland-id-au\u002Fomniagent --skill detect-framework","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fomnigent\u002Fonboarding\u002Fagent\u002Fskills\u002Fdetect-framework\u002FSKILL.md",true,[],[45,52,59,66,71,76],{"skillNo":46,"name":47,"nameZh":6,"description":48,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":49,"categories":50,"keywords":51,"publishedAt":19},"01M7CTDVNPM78AJ051GVDB44X5","deep-research","Research checklist and source-quality guidance for the archer e2e fixture.","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fexamples\u002Farcher\u002Fskills\u002Fdeep-research\u002FSKILL.md",[],[],{"skillNo":53,"name":54,"nameZh":6,"description":55,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":56,"categories":57,"keywords":58,"publishedAt":19},"01M7CTDS8SPN8P5GK1Q4SCSY7K","pi-e2e-xyz-greet-c4a8d5","Test greeter — pi skills e2e. The unique suffix c4a8d5 appears in the skill name so a string match in the agent's output proves Pi loaded this skill.","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fagents\u002Fpi_skills_none\u002Fskills\u002Fpi-e2e-xyz-greet-c4a8d5\u002FSKILL.md",[],[],{"skillNo":60,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":63,"categories":64,"keywords":65,"publishedAt":19},"01M7CTDP4R9F06966W78WNZS2Y","pi-e2e-xyz-count-d2f6e1","Test counter — pi skills e2e. The unique suffix d2f6e1 appears in the skill name so a string match in the agent's output proves Pi loaded this skill.","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fagents\u002Fpi_skills_none\u002Fskills\u002Fpi-e2e-xyz-count-d2f6e1\u002FSKILL.md",[],[],{"skillNo":67,"name":54,"nameZh":6,"description":55,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":68,"categories":69,"keywords":70,"publishedAt":19},"01M7CTDKP4W1Q18ZCY0XANDSEG","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fagents\u002Fpi_skills_list\u002Fskills\u002Fpi-e2e-xyz-greet-c4a8d5\u002FSKILL.md",[],[],{"skillNo":72,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":73,"categories":74,"keywords":75,"publishedAt":19},"01M7CTDFBMA3EBZNV7J380THGP","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fagents\u002Fpi_skills_list\u002Fskills\u002Fpi-e2e-xyz-count-d2f6e1\u002FSKILL.md",[],[],{"skillNo":77,"name":54,"nameZh":6,"description":55,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M7CTDCVTXTG72BKEV2HY7M6W","https:\u002F\u002Fgithub.com\u002Froland-id-au\u002Fomniagent\u002Fblob\u002Fdeploy\u002Froland-id-au-omniagent\u002Fwork\u002Fomnigent-main\u002Ftests\u002Fresources\u002Fagents\u002Fpi_skills_all\u002Fskills\u002Fpi-e2e-xyz-greet-c4a8d5\u002FSKILL.md",[],[]]