Skip to main content

daemon-backend-oh-my-pi

Nested daemon-cli-backends reference for the Oh-My-Pi (`omp`) daemon backend's flag surface. Read this only when a daemon task needs Oh-My-Pi-specific CLI flags (model selection, tool or provider switches): it routes you to the installed CLI's live help via shell and shows how to translate that help into the generic `backend_options` mechanism. It is not a flag catalog.

跳到安装

来源信息

仓库
Lingtai-AI/lingtai-kernel
最近来源活动
2026年8月7日 07:21
检测到的 SKILL.md 语言
英语
星标
11
分支
14

安装方式

默认使用会先检查来源的 Prompt;你也可以切换为直接命令,或下载本地副本。

检查来源文件

决定是否安装前,请先阅读 SKILL.md,以及 SkillsMP 当前展示的配套文件。

正在显示 SKILL.md

SKILL.md
来源说明 · 只读预览
name
daemon-backend-oh-my-pi
description
Nested daemon-cli-backends reference for the Oh-My-Pi (`omp`) daemon backend's flag surface. Read this only when a daemon task needs Oh-My-Pi-specific CLI flags (model selection, tool or provider switches): it routes you to the installed CLI's live help via shell and shows how to translate that help into the generic `backend_options` mechanism. It is not a flag catalog.
version
0.2.0
last_changed_at
2026-08-07T00:00:00.000Z
related_files
["src/lingtai/tools/daemon/manual/reference/cli-backends/SKILL.md"]
maintenance
Tracks the Oh-My-Pi daemon backend flag-discovery topic it documents; update when that integration changes.
# Oh-My-Pi Daemon Backend — Flag Discovery Entrypoint The installed CLI's own help is the authority for Oh-My-Pi (npm package `@oh-my-pi/pi-coding-agent`, binary `omp`) flags; this page is only the entrypoint. Conversion rules, key safety, and persistence live in the parent [`reference/cli-backends/SKILL.md`](../../../SKILL.md). `omp` is an accepted backend alias that canonicalizes to `oh-my-pi`; persisted daemon entries use the canonical name. ## Discover flags from the installed CLI 1. Run, in bash: `omp --version` and `omp --help`. The daemon backend wraps the root `omp` invocation (no subcommand), so the root help is the relevant flag surface. These are local read-only commands; no session is started. Run `omp <command> --help` only on demand for a subcommand the installed root help itself lists — subcommands are outside the daemon wrapper. 2. Translate what you found into `backend_options` with the parent's generic conversion rules. Nothing Oh-My-Pi-specific is added to that contract here. ## Example: model selection ```jsonc { "backend": "oh-my-pi", "tasks": [{ "task": "Implement and validate the change.", "tools": [], "backend_options": { "model": "<model id from the installed CLI>" } }] } // argv: --model <model id from the installed CLI> ``` The model vocabulary belongs to the installed CLI and its configured providers — LingTai does not validate, enumerate, or simulate model ids. Use the CLI's own discovery surface (root `--help`) and pass the id through. ## Subscription & auth Per-provider keys through the CLI's own config; LingTai does not inject or rotate credentials. Official docs: https://github.com/pi-coding-agent/pi-coding-agent ## Harness boundary: reserved flags The daemon owns Oh-My-Pi's non-interactive JSON harness (`omp --mode json --approval-mode yolo <task>`). `backend_options` refuses exactly these reserved flags before spawn (one bad key refuses the whole batch): `--mode`, `--print`, `--auto-approve`, `--yolo`, `--approval-mode`, `--session`, `--resume`, `--continue`, `--no-session`, `--session-dir` Keys are written without leading dashes, and underscores become dashes, so `{"approval_mode": "write"}` targets `--approval-mode` and is refused. Overriding these would break JSON event capture, re-enable interactive prompting, or hijack session ownership. ## Session, ask, and MCP status - The first `type:session` JSON header line carries the resumable session id; the OpenCode-family parser stores it as `oh_my_pi_session_id` in `daemon.json`. - `ask` is async and resumes via `omp --mode json --approval-mode yolo --session <id> <message>`; emanate-time `backend_options` persist for the session and are not re-passed. - Per-run `daemon_common` MCP injection is **not wired yet** for this backend (pending source evidence of an accepted config/env path), so the MCP `finish` completion contract does not apply here — and `backend_options` is not the place to hand-wire MCP.
在 GitHub 查看