CLI configuration previews and writes
The authenticated /api/cli-tools/config and /api/cli-tools/apply routes return
non-cacheable, redacted previews. They preserve the existing authentication and
authorization checks. Request bodies reject unknown fields. An explicit base URL
must use HTTP(S) without embedded username/password credentials; when omitted,
the serverโs configured base URL is used.
For a batch preview, GET /api/cli-tools/config accepts an optional baseUrl query
parameter and takes the configuration credential from the
x-omniroute-config-api-key header. Credentials in the query string are rejected.
POST /api/cli-tools/config accepts toolId, baseUrl, apiKey and optional
model in its JSON body. Responses use Cache-Control: no-store on both success
and error paths. Preview text is not a usable credential-bearing configuration.
Preview projection redacts serialized caller credentials and credential fields already present in merged JSONC, TOML or YAML profiles. The apply route writes the original configuration; preview redaction does not alter the on-disk values. Malformed JSON is rejected with 400. Public error responses use the standard sanitized error envelope.
Applying a configuration uses a private temporary file in the destination
directory, flushes it, and atomically renames it into place. Files and backups use
mode 0600; permissions are set on the owned descriptor before rename. Final
destination symlinks and non-regular files are refused. Codex and OpenCode reads
also refuse final-path symlinks before merging existing TOML/JSONC. This does not
claim protection against an adversary who controls the parent directory.
The container write guard remains active: an unsafe ephemeral destination returns 422 and directs the operator to the host-side setup command. A dry run remains available and does not write files. See CLI integrations for the supported host-side setup commands and error sanitization for the public error contract.
HagiCode
HagiCode๋ ์์ด์ ํธ ์ฝ๋ฉ ์์ ๊ณต๊ฐ์ ๋๋ค. ํ๋ถํ๊ณ ํธ๋ฆฌํ UI ์ํธ์์ฉ์ผ๋ก ๊ณํ ์๋ฆฝ, ์์ด์ ํธ ์คํ, ํ๋ก์ ํธ ์์ ์ ์ฝ๊ฒ ์์ํ๊ณ ๋ฐ๋ผ๊ฐ๋ฉฐ ๊ฐ๋ฐ์ ๋ ํฅ๋ฏธ๋ก์ด ๊ฒฝํ์ผ๋ก ๋ง๋ญ๋๋ค.
ํ๋ถํ๊ณ ํธ๋ฆฌํ UI ์ํธ์์ฉ์ผ๋ก ๊ณํ๋ถํฐ ํ๋ก์ ํธ ์์ ๊น์ง ์ฝ๊ฒ ๋ฐ๋ผ๊ฐ ์ ์์ต๋๋ค.
- ์ค๋งํธOpenSpec ์ํฌํ๋ก๋ ์๋๋ฅผ ์ ์, ์ค๊ณ, ์์ ์ ๊ฑฐ์ณ ๋ฐฐํฌ๊น์ง ์ด์ด์ง๋ ์คํ ๊ฐ๋ฅํ ๊ฒฝ๋ก๋ก ๋ฐ๊ฟ๋๋ค.
- ํจ์จ์ ๋ค์ค ์์ด์ ํธ ์คํ์ผ๋ก ์กฐ์ฌ, ๊ตฌํ, ๊ฒํ ๋ฅผ ๋ณ๋ ฌ๋ก ์งํํ๋ฉฐ ์ฌ๋ฌ ์ ์ฅ์์ ์ต์ํ Agent CLI๋ฅผ ์ง์ํฉ๋๋ค.
- ํฅ๋ฏธ๋ก์ดํ๋ถํ๊ณ ํธ๋ฆฌํ UI ์ํธ์์ฉ์ผ๋ก ๊ณํ ์๋ฆฝ, ์์ด์ ํธ ์คํ, ํ๋ก์ ํธ ์์ ์ ์ฝ๊ฒ ์์ํ๊ณ ๋ฐ๋ผ๊ฐ ์ ์์ต๋๋ค.
Windows์ฉ ๋ค์ด๋ก๋
HagiCode ๊ณต์
์์ด๋์ด๋ฅผ ์ค์ ๋ก ๋ฐฐํฌ๋๋ ์ํํธ์จ์ด๋ก.
HagiCode๋ ์์ด์ ํธ ์ฝ๋ฉ ์์ ๊ณต๊ฐ์ ๋๋ค. OpenSpec ์ํฌํ๋ก๋ก ๋ณ๊ฒฝ์ ๊ณํํ๊ณ , ๋ค์ค ์์ด์ ํธ ์คํ์ผ๋ก ์งํํ๋ฉฐ, Hero Scenario๋ก ๊ธด ์์ ์ ์งํ ์ํฉ์ ํ๋์ ๋ณด์ฌ ์์ด๋์ด๋ฅผ ์ค์ ๋ก ๋ฐฐํฌ๋๋ ์ํํธ์จ์ด๋ก ๋ง๋ญ๋๋ค.
- ์ค๋งํธ
- OpenSpec ์ํฌํ๋ก๋ ์๋๋ฅผ ์ ์๋ถํฐ ๋ฐฐํฌ๊น์ง ์ด์ด์ง๋ ์คํ ๊ฐ๋ฅํ ๊ฒฝ๋ก๋ก ๋ฐ๊ฟ๋๋ค.
- ํจ์จ์
- ๋ค์ค ์์ด์ ํธ ์คํ์ผ๋ก ์กฐ์ฌ, ๊ตฌํ, ๊ฒํ ๋ฅผ ๋ณ๋ ฌ๋ก ์งํํฉ๋๋ค.
- ์ฆ๊ฑฐ์ด
- ํธ๋ฆฌํ UI ์ํธ์์ฉ์ผ๋ก ๊ณํ, ์์ด์ ํธ ์คํ, ํ๋ก์ ํธ ์์ ์ ์ฝ๊ฒ ๋ฐ๋ผ๊ฐ ์ ์์ต๋๋ค.
ยฉ 2026 HagiCode | Powered By hagilight-starlight@0.21.0 | Branch: main | Commit: de60bcd | Built:

