Skip to content

feat(setup): add --skip-auth flag to oMo installer for CI reliability#260

Merged
marcusrbrown merged 1 commit intofeat/omo-config-updatesfrom
copilot/add-skip-auth-flag-to-omo-installer
Mar 1, 2026
Merged

feat(setup): add --skip-auth flag to oMo installer for CI reliability#260
marcusrbrown merged 1 commit intofeat/omo-config-updatesfrom
copilot/add-skip-auth-flag-to-omo-installer

Conversation

Copy link
Contributor

Copilot AI commented Feb 25, 2026

The oMo installer can emit auth prompts in certain conditions; in headless CI these prompts hang indefinitely. The --skip-auth flag suppresses them.

Changes

  • src/lib/setup/omo.ts — Added --skip-auth to the bunx args in installOmo, positioned after --no-tui:
const args = [
  `oh-my-opencode@${version}`,
  'install',
  '--no-tui',
  '--skip-auth',  // prevents auth prompts in headless CI
  `--claude=${claude}`,
  // ...
]
  • src/lib/setup/omo.test.ts — Updated existing arg-array assertions to include --skip-auth; added a dedicated test asserting the flag is present and ordered immediately after --no-tui.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/test/repo
    • Triggering command: /opt/hostedtoolcache/node/24.13.1/x64/bin/node /opt/hostedtoolcache/node/24.13.1/x64/bin/node --input-type=module -e import("file:///home/REDACTED/work/agent/agent/dist/main.js"); (http block)
  • https://api.github.com/repos/test/repo/issues/0/labels/agent%3A%20working
    • Triggering command: /opt/hostedtoolcache/node/24.13.1/x64/bin/node /opt/hostedtoolcache/node/24.13.1/x64/bin/node --input-type=module -e import("file:///home/REDACTED/work/agent/agent/dist/main.js"); (http block)
  • https://api.github.com/repos/test/repo/labels
    • Triggering command: /opt/hostedtoolcache/node/24.13.1/x64/bin/node /opt/hostedtoolcache/node/24.13.1/x64/bin/node --input-type=module -e import("file:///home/REDACTED/work/agent/agent/dist/main.js"); (http block)
  • https://api.github.com/user
    • Triggering command: /opt/hostedtoolcache/node/24.13.1/x64/bin/node /opt/hostedtoolcache/node/24.13.1/x64/bin/node --input-type=module -e import("file:///home/REDACTED/work/agent/agent/dist/main.js"); (http block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>feat(setup): add --skip-auth flag to oMo installer for CI reliability</issue_title>
<issue_description>## Summary

Add --skip-auth flag to the oMo installer arguments to prevent authentication prompts in headless CI environments. This prevents potential hangs when the installer prompts for credentials.

Motivation

The oMo installer can print auth prompts in certain conditions. In CI environments, these prompts have no way to be answered and can cause timeouts or hangs. The --skip-auth flag is specifically designed for this use case.

Implementation

File: src/lib/setup/omo.ts

Add --skip-auth to the args array in installOmo:

const args = [
  `oh-my-opencode@${version}`,
  'install',
  '--no-tui',
  '--skip-auth',  // ADD THIS
  `--claude=${claude}`,
  // ... rest of flags
]

Acceptance Criteria

  • --skip-auth added to installer args
  • Test updated to verify flag is passed
  • Build succeeds (pnpm build)
  • All tests pass (pnpm test)

Context

Identified in PR #236 during review of oMo installer behavior.

Scope

  • Effort: Small (single line change + test)
  • Risk: Low (flag is designed for CI)
  • Dependencies: None</issue_description>

Comments on the Issue (you are @copilot in this section)

Custom agent used: Fro Bot
Specialized for fro-bot/agent: project-scoped coding agent that implements repo-specific features, fixes, and maintenance while following this repo's TDD, TypeScript/ESM, and CI/build conventions.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI changed the title [WIP] Add --skip-auth flag to oMo installer for CI reliability feat(setup): add --skip-auth flag to oMo installer for CI reliability Feb 25, 2026
@marcusrbrown marcusrbrown marked this pull request as ready for review February 25, 2026 21:47
@marcusrbrown marcusrbrown changed the base branch from main to feat/omo-config-updates February 26, 2026 20:42
@marcusrbrown marcusrbrown force-pushed the copilot/add-skip-auth-flag-to-omo-installer branch from b1c4c16 to 7f2f273 Compare February 28, 2026 04:28
Co-authored-by: marcusrbrown <831617+marcusrbrown@users.noreply.github.com>
@marcusrbrown marcusrbrown force-pushed the copilot/add-skip-auth-flag-to-omo-installer branch from 7f2f273 to 2a8ca4c Compare March 1, 2026 22:56
@marcusrbrown marcusrbrown merged commit f84ad43 into feat/omo-config-updates Mar 1, 2026
1 check passed
@marcusrbrown marcusrbrown deleted the copilot/add-skip-auth-flag-to-omo-installer branch March 1, 2026 22:58
marcusrbrown added a commit that referenced this pull request Mar 2, 2026
* chore: update the project banner

* feat(setup): export OPENCODE_CONFIG_CONTENT for CI-safe OpenCode config isolation (#263)

feat(setup): export OPENCODE_CONFIG_CONTENT for CI-safe OpenCode config

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

* fix(setup): declare and validate opencode-config

* feat(setup): add --skip-auth flag to oMo installer for CI reliability (#260)

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

* feat(setup): add kimi-for-coding to oMo provider inputs (#268)

feat(setup): expose kimi-for-coding oMo CLI flag as action input

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

* feat(setup): add `omo-config` action input for custom oMo configuration (#274)

feat(setup): add omo-config action input for custom oMo configuration

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>

* fix(inputs): add kimi-for-coding to input validation and types

Previously, kimi-for-coding was listed as a valid value in action.yaml and
handled in setup.ts's parseOmoProviders, but was absent from inputs.ts.

This caused users who set 'omo-providers: kimi-for-coding' to fail input
validation with:
  Invalid omo-providers value: "kimi-for-coding". Valid values: ...

Three files updated:
1. src/lib/inputs.ts: added 'kimi-for-coding' to VALID_OMO_PROVIDERS and
   parseOmoProviders function
2. src/lib/types.ts: added readonly kimiForCoding field to OmoProviders
3. src/lib/agent/opencode.test.ts: updated all OmoProviders test objects

Fixes PR #266 blocking issue; all 961 tests pass.

* fix(setup): harden opencode/omo config input parsing

- trim setup inputs and treat whitespace-only config values as not provided
- fail fast with explicit error when opencode-config is invalid JSON
- enforce opencode-config and omo-config as JSON objects (not null/array/primitive)
- harden oMo deep merge against prototype-pollution keys
- add regression tests for null/array/string/invalid JSON and whitespace handling
- document opencode-config input in README
- rebuild dist/main.js

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(setup): add --skip-auth flag to oMo installer for CI reliability

2 participants