Scaffolding Openai Agents
aiskillstore/marketplace
Builds AI agents using OpenAI Agents SDK with async/await patterns and multi-agent orchestration.
Gives patterns for generating a minimal, valid Omnigent agent directory: the config.yaml fields, the right executor type, and the files each agent needs.
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install omnigent-ai/omnigent build-omnigent --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .claude/skills/build-omnigent && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .claude/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigentType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install omnigent-ai/omnigent build-omnigent --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .agents/skills/build-omnigent && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .agents/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install omnigent-ai/omnigent build-omnigent --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .cursor/skills/build-omnigent && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .cursor/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/omnigent-ai/omnigent.git --path omnigent/onboarding/agent/skills/build-omnigent--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install omnigent-ai/omnigent build-omnigent --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .gemini/skills/build-omnigent && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .gemini/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install omnigent-ai/omnigent build-omnigentInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .github/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .github/skills/build-omnigent && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .github/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install omnigent-ai/omnigent build-omnigent --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/omnigent-ai/omnigent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/omnigent/onboarding/agent/skills/build-omnigent .opencode/skills/build-omnigent && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "build-omnigent" agent skill from https://github.com/omnigent-ai/omnigent/tree/main/omnigent/onboarding/agent/skills/build-omnigent into .opencode/skills/build-omnigent/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "build-omnigent", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
build-omnigentGives patterns for generating a minimal, valid Omnigent agent directory: the config.yaml fields, the right executor type, and the files each agent needs.
This skill is a set of templates and rules for generating an Omnigent agent directory that the framework's own validator will accept. It starts with a kebab-case directory name, then builds config.yaml with spec_version, a lowercase name, a one-sentence description, an instructions file (AGENTS.md by default, or inline text) and an executor. The agent is told to produce only the files that are needed.
The executor choice matters most. claude_sdk and agents_sdk run a simple LLM agent in-process, for Anthropic and OpenAI respectively, while the omnigent executor is for CLI or coding harnesses with shell and file tools and sub-agents, and it requires a config.harness value such as claude-native, codex-native or pi. There is no llm executor. Optional sections cover built-in tools, sub-agents, os_env, interaction modalities and guardrails, with a pointer to the omnigent-knowledge skill for the deeper field reference.
When the environment exposes a validate_agent tool, the skill says to run it after generating files to confirm the spec loads. It also suggests calling list_builtin_tools, when available, instead of trusting the built-in tool list written in the skill.
4 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit c6a81cd. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml and markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
OPENAI_API_KEYANTHROPIC_API_KEYGEMINI_API_KEYGOOGLE_API_KEYGROQ_API_KEYDEEPSEEK_API_KEYXAI_API_KEYMISTRAL_API_KEYDATABRICKS_TOKENFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Omnigent Agent Builder loads about 2.1k tokens when it runs. Until then it costs about 30 tokens; SKILL.md has 713 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from omnigent-ai/omnigent at commit c6a81cd, republished under its Apache-2.0 licence (© omnigent-ai). 713 words, ~2,126 tokens.
.claude/skills/build-omnigent/SKILL.md (or your agent's skills folder).Use these patterns to generate a valid agent directory. Always generate the minimal set of files needed — don't over-engineer.
Every template below has been validated with the same parser/validator
that omnigent server uses. If your environment exposes the
validate_agent tool (the dedicated agent-authoring environment does),
run it after generating files to confirm the spec loads. Load the
omnigent-knowledge skill if you need the deeper field reference
(executor types, os_env, guardrails, sandboxing).
Use the agent name in kebab-case: my-research-agent/
Always include:
spec_version: 1name (lowercase, hyphens OK)description (one sentence)instructions — path to a file (default AGENTS.md) or inline text.
(prompt: is an accepted alias; instructions: wins if both are set.)executor — how the agent runs. See Step 2a.Include if needed:
tools.builtins — built-in tools. The current set is download_file,
export_agent, list_files, search_conversations, upload_file,
web_fetch, web_search. If the list_builtin_tools tool is available,
call it for the authoritative live set rather than trusting this list.tools.agents — sub-agents, by the name each declares under agents/
(a sub-agent's directory name may differ from its name).os_env — filesystem/shell access for harness agents (see the
shell-capable template).interaction.modalities — if the agent handles images or files.guardrails — runtime policy gates (see omnigent-knowledge).executor.type must be one of claude_sdk, agents_sdk, or
omnigent. There is no llm executor — do not use it.
| Need | executor |
|---|---|
| A fresh, simple LLM agent (default) | claude_sdk (Anthropic) or agents_sdk (OpenAI), in-process |
| Existing Claude SDK / OpenAI Agents SDK code | claude_sdk / agents_sdk |
| A CLI/coding harness, shell + file tools, sub-agents | omnigent + a config.harness |
When executor.type: omnigent, config.harness is required and must
be one of: claude-native (Claude Code, full coding tools), claude-sdk,
codex-native, codex, openai-agents, open-responses, pi.
(claude is an alias for claude-native.)
Model selection is optional — if omitted, the executor resolves the
provider's default model from the configured credentials (e.g. an
Anthropic key, a Claude subscription, or a Databricks profile). Pin one
only when asked; see omnigent-knowledge for executor.model / auth.
Write a focused system prompt:
Keep it under 500 words for a starter agent. The user can expand later.
Only generate skills if the agent has distinct modes of operation. Each skill needs:
skills/<dir>/SKILL.mdThe directory name is free-form and need not match the skill's name —
the runtime identifies a skill by its frontmatter name and loads its files
from whatever directory it sits in.
With YAML frontmatter:
---
name: skill-name
description: One-line description of what this skill does.
---
Detailed instructions for when this skill is loaded...config.yaml:
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: claude_sdk # or agents_sdk for OpenAI
instructions: AGENTS.mdAGENTS.md:
You are {agent_name}, {description}.
Answer questions clearly and concisely. If you don't know something,
say so rather than guessing.config.yaml:
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: claude_sdk
tools:
builtins:
- web_search # one of the builtins listed in Step 2
interaction:
modalities:
input: [text]
output: [text]
instructions: AGENTS.mdUse the omnigent executor with a coding harness when the agent needs to
run commands and read/write files. os_env grants OS access; the harness
exposes sys_os_read / sys_os_write / sys_os_edit / sys_os_shell.
config.yaml:
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: omnigent
config:
harness: claude-native
# Headless runs can't answer approval prompts — bypass them. Pair
# with a read-only prompt and/or a blast_radius guardrail for safety.
permission_mode: bypassPermissions # codex-native uses `yolo: true`
os_env:
type: caller_process
cwd: .
sandbox:
type: none # or linux_bwrap / darwin_seatbelt to sandbox
instructions: AGENTS.mdDirectory structure:
{agent_name}/
config.yaml
AGENTS.md
tools/
mcp/
github.yamlconfig.yaml:
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: claude_sdk
instructions: AGENTS.mdtools/mcp/github.yaml:
transport: http
url: https://your-mcp-server.example.com/sse
headers:
Authorization: Bearer ${{{mcp_token_var}}}The parent needs the omnigent executor — that's what provides the spawn
tools. Each sub-agent is a full agent and may use any executor.
Directory structure:
{agent_name}/
config.yaml
AGENTS.md
agents/
{sub_agent_1_dir}/
config.yaml
{sub_agent_2_dir}/
config.yamlDirectory names are free-form. A sub-agent's identity is the name in its
own config.yaml, and that is what the parent lists in tools.agents —
{sub_agent_1_dir} and {sub_agent_1} may differ.
Parent config.yaml:
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: omnigent
config:
harness: claude-sdk
tools:
agents:
- {sub_agent_1}
- {sub_agent_2}
instructions: AGENTS.mdSub-agent config (agents/{sub_agent_1_dir}/config.yaml):
spec_version: 1
name: {sub_agent_1}
description: {sub_agent_1_description}
executor: # any executor works here — only the parent needs omnigent
type: omnigent
config:
harness: claude-sdk
instructions: |
You are {sub_agent_1}. {sub_agent_1_instructions}Parent AGENTS.md should reference sub-agents:
You have sub-agents you can delegate to:
- **{sub_agent_1}** — {sub_agent_1_description}
- **{sub_agent_2}** — {sub_agent_2_description}
Call `sys_session_send(type="<name>", input="<task>")` to dispatch a
declared sub-agent. Emit multiple `sys_session_send` tool calls in the
same response to run them in parallel; results arrive via the inbox.When pinning credentials with ${ENV_VAR}, map providers to their
standard env var names:
openai → OPENAI_API_KEYanthropic → ANTHROPIC_API_KEYgemini → GEMINI_API_KEY or GOOGLE_API_KEYgroq → GROQ_API_KEYdeepseek → DEEPSEEK_API_KEYxai → XAI_API_KEYmistral → MISTRAL_API_KEYdatabricks → DATABRICKS_TOKEN (or an auth.profile)Before presenting the generated files to the user, verify (and if
validate_agent is available, run it to confirm):
spec_version: 1 is presentname is set and uses lowercase + hyphensexecutor.type is one of claude_sdk, agents_sdk, omnigentexecutor.type: omnigent, executor.config.harness is set to a
valid harnessinstructions (or prompt) points to a file that exists or is
inline texttools.agents, the parent uses executor.type: omnigent, and each entry is the declared name of a sub-agent under
agents/ (its directory name may differ; sub-agents may use any
executor)tools.builtins names are from the known set (Step 2) — or, if
list_builtin_tools is available, were confirmed against it[a-z0-9-]+ pattern (they need not match their
directory names)© omnigent-ai, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in omnigent/onboarding/agent/skills/build-omnigent of omnigent-ai/omnigent.
Open the folder on GitHubat commit c6a81cd
Omnigent Agent Builder next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Omnigent Agent Builder this skillomnigent-ai/omnigent | 11k | — | ~2.1k | Automated safety check: Pass | Apache-2.0 | |
| Scaffolding Openai Agentsaiskillstore/marketplace | 433 | — | ~3.3k | Automated safety check: Pass | None | |
| Agent Squad Python Guide2FastLabs/agent-squad | 7.8k | — | ~4.7k | Automated safety check: Pass | Apache-2.0 | |
| Openai Agentscoco-research/coco | 513 | — | ~3.3k | Automated safety check: Pass | MIT | |
| Adk Agent Builderjeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~960 | Automated safety check: Pass | MIT | |
| Building Multi Connector Agentairbytehq/airbyte-agent-sdk | 135 | — | ~1.7k | Automated safety check: Notes | Custom licence |
aiskillstore/marketplace
Builds AI agents using OpenAI Agents SDK with async/await patterns and multi-agent orchestration.
2FastLabs/agent-squad
Map of the agent-squad Python framework for async multi-agent orchestration: which agent, classifier, storage and tool provider to pick, and the pitfalls to avoid.
coco-research/coco
Build AI applications with OpenAI Agents SDK - text agents, voice agents, multi-agent handoffs, tools with Zod schemas, guardrails, and streaming.
jeremylongshore/tons-of-skills-marketplace
Scaffold production-ready AI agents on Google's Agent Development Kit (ADK): ReAct-style single agents, multi-agent orchestration (Sequential/Parallel/Loop), tool wiring, evaluation, and optional…
airbytehq/airbyte-agent-sdk
Builds a complete agent with multiple Airbyte connectors using PydanticAI or Claude SDK.
TencentEdgeOne/edgeone-makers-tools
EdgeOne Makers platform development router — the single entry point for building, storing data, and deploying on Tencent EdgeOne Makers.
omnigent-ai/omnigent
Brings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform.
omnigent-ai/omnigent
Scans Python agent code for framework imports and recommends the matching Omnigent executor type, or says when the framework is not natively supported yet.
omnigent-ai/omnigent
Runs the Omnigent load test with real hosts and multi-turn sessions against a mocked LLM, then explains the latency results from summary.md.
omnigent-ai/omnigent
Spins up an isolated Omnigent server, runner and mock model to prove a user-facing behavior or bug fix with recorded evidence instead of reasoning from code.
omnigent-ai/omnigent
Spins up a local Omnigent server and exercises the Antigravity (Gemini) SDK harness end to end: building agents, running real turns, smoke tests and bug-bashing.
omnigent-ai/omnigent
Spin up a live local Omnigent server and exercise the GitHub Copilot SDK harness end-to-end — build copilot agents, run real turns, smoke-test, and bug-bash.
Works with
Categories
Gives patterns for generating a minimal, valid Omnigent agent directory: the config.yaml fields, the right executor type, and the files each agent needs. This skill is a set of templates and rules for generating an Omnigent agent directory that the framework's own validator will accept.md by default, or inline text) and an executor.
Omnigent Agent Builder fits situations like: creating a new Omnigent agent directory from scratch; choosing between the claude_sdk, agents_sdk and omnigent executors; checking a generated config.yaml against the fields Omnigent requires; adding sub-agents or built-in tools to an agent spec.
Run `npx skills add omnigent-ai/omnigent --skill build-omnigent -a claude-code`. Or copy the skill folder (omnigent/onboarding/agent/skills/build-omnigent in omnigent-ai/omnigent) into .claude/skills/build-omnigent in your project. Claude Code loads it when a task matches its description.
Run `npx skills add omnigent-ai/omnigent --skill build-omnigent -a codex`. Or copy the skill folder (omnigent/onboarding/agent/skills/build-omnigent in omnigent-ai/omnigent) into .agents/skills/build-omnigent in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add omnigent-ai/omnigent --skill build-omnigent -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/build-omnigent, .gemini/skills/build-omnigent, .github/skills/build-omnigent and .opencode/skills/build-omnigent in your project.
Going by SKILL.md and its folder, Omnigent Agent Builder needs credentials named OPENAI_API_KEY, ANTHROPIC_API_KEY, GEMINI_API_KEY and GOOGLE_API_KEY. Our summary lists: The validate_agent tool, when the environment provides it.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Omnigent Agent Builder is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.1k tokens (SKILL.md is roughly 8.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Omnigent Agent Builder: Scaffolding Openai Agents (aiskillstore/marketplace, 433 stars), Agent Squad Python Guide (2FastLabs/agent-squad, 7.8k stars), Openai Agents (coco-research/coco, 513 stars) and Adk Agent Builder (jeremylongshore/tons-of-skills-marketplace, 2.8k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
omnigent-ai (a GitHub organization) maintains it in omnigent-ai/omnigent, which has 10,711 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 10, 2026.
Source: omnigent-ai/omnigent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.