본문으로 건너뛰기
cccskills
무료GitHub에 공개

harness-integration-guide

Plan and review new Omnigent harness integrations, the adapters connecting agent runtimes to the platform. Compare SDK and subprocess approaches with native interface wrappers, using capability matrices and checklists for implementation and testing.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

원문원문 설명 보기

Reference guide for building new Omnigent harness integrations — covers SDK/subprocess harnesses and native harnesses as separate tracks, each with their own feature matrix, implementation patterns, and prioritized checklist.

연동 도구Gemini
설치 방법 보기

이럴 때 유용합니다

  • Plan a new agent runtime integration
  • Compare SDK and native integration requirements
  • Review approval, streaming, and session support
  • Check how to add an ACP-compatible CLI

포함된 파일(1)

  • SKILL.md10.6 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Harness integration guide

This skill describes the feature matrix every Omnigent harness must consider. Use it when planning, reviewing, or implementing a new harness.

Omnigent has two distinct harness tracks with different architectures and feature sets:

  • SDK/subprocess harnesses — run the vendor model directly (in-process SDK, CLI subprocess, or ACP subprocess). They own the model lifecycle.
  • Native harnesses — wrap a vendor's own TUI or server and mirror its output into Omnigent. They observe and relay, rather than drive.

Part 1 — SDK / subprocess harnesses

These harnesses run the vendor model directly and bridge Omnigent tools into the vendor's tool-calling interface.

Capability matrix

CapabilityWhat it means
Connects to Omnigent MCPHarness exposes/consumes tools via the MCP protocol (in-proc SDK MCP server)
Model overrideUser can select a model via --model / config; some harnesses are vendor-locked (e.g. Claude-only, GPT-only, Gemini-only)
AuthHow credentials are obtained — API key, gateway token, vendor CLI login, OAuth, etc.
StreamingHarness forwards token-level or delta-level streaming to the Omnigent forwarder
Omnigent policiesHarness enforces Omnigent-side tool policies — must support ALLOW, ASK, and DENY verdicts for both tool calls and tool results
Native elicitationWhen a policy verdict is ASK, the harness surfaces the approval request in the Omnigent web UI so the user can approve or deny
InterruptUser can cancel a running turn mid-stream
Live queue (concurrent)Multiple turns can be queued and processed concurrently
Tool-boundary steerOmnigent can inject steering text at tool-call boundaries
Resume/fork from Omnigent transcriptRebuild a conversation from a stored Omnigent transcript (replay history, seed prompt, or vendor session ID)
CompactionLong conversations are compacted; harness surfaces CompactionComplete events
ReasoningModel reasoning/thinking tokens are forwarded
ImagesImage content (screenshots, diagrams) is forwarded — full binary, path reference, or text-flattened
Cost trackingHarness reports token usage and cost data back to Omnigent for each turn

MCP connectivity

The harness must bridge Omnigent's builtin MCP tools so the model can call them. These tools provide session management, agent orchestration, policy control, and web access:

  • sys_session_get_info, sys_session_list, sys_session_get_history
  • sys_agent_get, sys_agent_list, sys_agent_download
  • sys_call_async, sys_cancel_async, sys_cancel_task
  • sys_read_inbox
  • sys_add_policy, sys_policy_registry
  • load_skill
  • list_comments, update_comment
  • web_fetch, web_search

Omnigent policies

The harness must support the Omnigent policy engine's three verdicts at two checkpoints:

CheckpointALLOWASKDENY
Tool call (before execution)Proceed silentlySurface approval request to user (via elicitation)Block the call and return a policy-denied error to the model
Tool result (after execution)Return result to modelSurface result for user review before returningSuppress the result and return a policy-denied error to the model

Native elicitation

When a policy verdict is ASK, the harness must surface the pending tool call or tool result in the Omnigent web UI as an approval card, then relay the user's approve/deny decision back to the harness to continue or block execution.

Resume / fork strategies

StrategyHow it works
Full history replayReplays the entire message history into a fresh thread/session
History prefix replayReplays a prefix of the history into a fresh session
Text-prefix replayInjects a text summary/prefix of prior history
Prompt seedingSeeds prior history into the system prompt on rebuild
Vendor session IDRelies on the vendor's own session persistence (no Omnigent-side rebuild)

Auth patterns

PatternDescription
API key / Databricks gatewayDirect API key or routed through a Databricks gateway
Vendor API key (direct)Vendor-specific API key (e.g. Cursor, Gemini)
Vendor CLI login / config fileCredentials stored in a vendor config file or managed via vendor CLI login
OAuth / GitHub tokenOAuth flow or platform token (e.g. GitHub PAT)
Gateway + fallbackPrimary gateway with fallback to vendor-native auth

Checklist for a new SDK/subprocess harness

All capabilities are required for a complete harness integration:

  • Connects to Omnigent MCP (in-proc SDK MCP server or vendor-specific bridge)
  • Model override works (or document vendor lock-in)
  • Auth is configured and documented (setup flow in omni setup)
  • Streaming forwards to the Omnigent forwarder
  • Omnigent policies enforce tool-use rules
  • Native elicitation surfaces tool-approval requests to web UI
  • Interrupt cancels the running turn
  • Live queue supports concurrent turns
  • Tool-boundary steering injects correctly
  • Resume/fork rebuilds conversation from Omnigent transcript
  • Compaction is surfaced (CompactionComplete events)
  • Reasoning tokens are forwarded
  • Images are forwarded (full binary preferred; path or text-flattened acceptable)
  • Cost tracking reports token usage and cost per turn
  • Unit tests cover tool bridging, auth, model routing
  • Mock LLM tests cover the happy path without real API calls

Shortcut: ACP CLI harnesses are one catalog row

If the vendor CLI speaks the Agent Client Protocol on stdio (the goose acp / qwen --acp family), do NOT write a new inner module, registry entries, or a spawn-env builder. Add one row to ACP_CLI_HARNESSES in omnigent/acp_cli_harnesses.py (label, binary, ACP argv, aliases, install hint or npm package, vendor login command) plus docs. Validity, module routing, picker label, capabilities, install spec, readiness, setup steps, spawn env, and the live e2e-matrix exclusion all derive from the row; tests/test_acp_cli_harnesses.py asserts the wiring per row automatically. These rows run through omnigent/inner/acp_harness.py and AcpExecutor, own their auth and model selection, and reject /model overrides up front.


Part 2 — Native harnesses

Native harnesses wrap a vendor's own TUI or server and mirror output into Omnigent. They relay the vendor's conversation into the Omnigent session.

Capability matrix

CapabilityWhat it means
TransportHow the native harness communicates — tmux TUI, app server, HTTP/SSE, file-inject TUI
Connects to Omnigent MCPWhether the native harness connects to the Omnigent MCP server
Model overrideUser can select a model at launch or per-prompt
AuthVendor login / config / token
Streaming (forwarder)deltas (token-level) vs complete-only (full response after completion)
Omnigent policiesWhether the native harness enforces Omnigent-side tool policies — must support ALLOW, ASK, and DENY verdicts for both tool calls and tool results
Native elicitationWhen a policy verdict is ASK, the native harness surfaces the approval request in the Omnigent web UI so the user can approve or deny
InterruptUser can abort a running turn
Bidirectional sync (TUI->Omni)TUI output mirrors into the Omnigent conversation
In-harness session-cmd syncSupports clear, fork, resume, switch commands from Omnigent
Resume/fork from Omnigent transcriptCan rebuild conversation from Omnigent transcript (native rebuild, or fresh launch)
CompactionVendor-internal compaction status
ReasoningModel reasoning/thinking tokens are forwarded
ImagesImage content is forwarded — path reference, full binary, or text-flattened
Cost trackingNative harness reports token usage and cost data back to Omnigent for each turn
Tool-output streamingLive incremental command/tool output (outputDelta) vs final aggregated output only
Working-tree diffThe vendor's aggregated per-turn diff is surfaced (vs reconstructed from per-file edits)
Generated/viewed mediaModel-produced or model-viewed images are mirrored (distinct from user-supplied image input)
Vendor modesVendor-specific modes (review mode, plan mode, etc.) are mirrored as status

Checklist for a new native harness

Capabilities are tiered by how essential they are. P0 must work or the harness is non-functional. P1 is required for a complete, parity-level integration — the web surface should match what the vendor TUI shows. Stretch items depend on vendor-specific signals and improve fidelity; they are optional and may legitimately be closed as wontfix when the vendor provides no signal or the data is redundant.

P0 — core (non-functional without these)

  • Transport chosen and implemented (tmux TUI, app server, HTTP/SSE)
  • Connects to Omnigent MCP
  • Auth configured (vendor login / config)
  • Streaming forwarder works (deltas preferred; complete-only acceptable)
  • Omnigent policies enforce tool-use rules (ALLOW / ASK / DENY at both tool call and tool result)
  • Native elicitation surfaces tool-approval requests to web UI
  • Interrupt aborts the running turn
  • Bidirectional sync mirrors TUI output into Omnigent conversation
  • Cost tracking reports token usage and cost per turn
  • Unit tests cover forwarder, auth, transport
  • Mock LLM tests cover the happy path without real API calls

P1 — parity (required for a complete integration)

  • Model override works at launch and per-prompt (or document vendor lock-in)
  • Session commands (clear, fork, resume) work from Omnigent
  • Resume/fork rebuilds from Omnigent transcript
  • Reasoning tokens are forwarded
  • Compaction status is surfaced
  • User-supplied images are forwarded (path preferred; binary or text-flattened acceptable)

Stretch — vendor-dependent fidelity

  • Live tool/command output is streamed (outputDelta), not just final aggregated output
  • The vendor's aggregated working-tree diff is surfaced (if provided)
  • Generated/viewed media (model-produced or model-viewed images) is mirrored
  • Vendor-specific modes (review mode, plan mode, etc.) are mirrored as status

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Test Omnigent’s native Antigravity integration with a live local server and the real agy CLI. Verify messages traveling between the web interface and terminal, mirrored replies, permission requests, interruption, session resumption, and process cleanup.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Testing message delivery from the web interface to agy
  • Checking terminal output against mirrored session replies
  • Verifying permission requests and interruption
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

Test Omnigent’s Antigravity SDK integration against a live local server. Build test agents and run real conversations to check Gemini authentication, model selection, tool connections, and failures across the full execution path.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Test authentication and real Gemini responses
  • Verify tool connections and sub-agent delegation
  • Investigate model selection failures
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

api-docs

무료

Create reference documentation directly from source code for public functions, classes, command-line commands, and endpoints. Organize parameters, defaults, return values, errors, and runnable examples, then check that the documentation matches the implementation.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Writing reference docs for a public module
  • Documenting command-line arguments and defaults
  • Adding minimal usage examples for an API
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

Create an Omnigent agent directory using validated templates for configuration and instructions. Choose how the agent runs, then add web search, shell access, external tool connections, or subagents only when the task requires them.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Creating a minimal Omnigent agent
  • Configuring an agent with web search
  • Adding shell access or MCP tool connections
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

changelog

무료

Turn a selected range of commits or merged pull requests into release notes grouped by change type. Describe user-visible effects, link to supporting changes, and highlight breaking changes so readers can assess an upgrade.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Write release notes covering changes since the last tag
  • Summarize pull requests merged during a selected period
  • Highlight breaking changes before an upgrade
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

Test Omnigent’s setup, help, and terminal interactions by driving the real CLI in an isolated environment. Capture rendered screens and compare checks before and after a change to establish whether a reported interface problem was fixed.

한국어 요약은 준비 중입니다. 영어 요약을 표시하고 있습니다.

  • Reproducing a first-run setup problem
  • Inspecting menus in a narrow terminal
  • Checking help text and command visibility
omnigent-ai/omnigent1.1만2026년 10월 19일 업데이트

omnigent-ai의 스킬 모두 보기

이 스킬의 문제 신고