antigravity-native-e2e…
Spin up a live local Omnigent server + runner and exercise the native Antigravity (agy) TUI harness (antigravity-native)…
Patterns and templates for generating valid Omnigent agent directories. Load when ready to create files.
Claude Code
$ npx -y skills add omnigent-ai/omnigent --skill build-omnigent --agent claude-code
Codex
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a codex -y
Cursor
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a cursor -y
Gemini CLI
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a gemini-cli -y
GitHub Copilot
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a github-copilot -y
OpenCode
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a opencode -y
Windsurf
$ npx skills add omnigent-ai/omnigent --skill build-omnigent -a windsurf -y
name: build-omnigent description: Patterns and templates for generating valid Omnigent agent directories. Load when ready to create files.
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:
(`prompt:` is an accepted alias; `instructions:` wins if both are set.)
Include if needed:
`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.
(a sub-agent's directory name may differ from its name).
shell-capable template).
`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.md
The 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.md**AGENTS.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.md**Directory structure:**
{agent_name}/
config.yaml
AGENTS.md
tools/
mcp/
github.yaml**config.yaml:**
spec_version: 1
name: {agent_name}
description: {description}
executor:
type: claude_sdk
instructions: AGENTS.md**tools/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 it
Omnigent is an open-source AI agent framework and meta-harness: orchestrate Claude Code, Codex, Cursor, Pi, and custom agents — swap harnesses without rewriting, enforce policies and sandboxing, and collaborate in real time from any device.
Spin up a live local Omnigent server + runner and exercise the native Antigravity (agy) TUI harness (antigravity-native)…
Spin up a live local Omnigent server and exercise the Antigravity (Gemini) SDK harness end-to-end — build antigravity agents, run…
Verify the Omnigent CLI's setup/onboarding flow, terminal UI/UX, and critical user journeys in a completely isolated,…
Spin up a live local Omnigent server and exercise the GitHub Copilot SDK harness end-to-end — build copilot agents, run real…
Spin up a live local Omnigent server and exercise the Cursor SDK harness end-to-end — build cursor agents, run real turns,…
Draft or refresh Omnigent package release notes for the next version using the existing GitHub Actions preview, merged PR…
Use your assigned AgentMail inbox to read email tasks, explicitly send or reply, and check delivery. Provided automatically by…
Create a new Architecture Decision Record with sequential numbering and AgentDB registration