Skip to content

skern init prompts interactively with no non-interactive opt-out #104

Closed

Description

@ilkemerol

skern init asks:

Append skern usage instructions to agent config files (AGENTS.md, CLAUDE.md, .claude/CLAUDE.md)? [y/N]:

--instructions and --print-instructions opt in. There is no flag to opt out, so a tool that spawns skern init from an installer has to rely on the prompt defaulting to N when stdin is not a TTY. That works today but is undeclared behavior — it silently becomes a hang if the default ever changes to a blocking read.

Requested behavior: a --no-instructions flag (or a general --yes / --non-interactive) so automated callers state their intent explicitly instead of depending on stdin handling.

Definition of Done

  • Explicit opt-out flag
  • Documented behavior when stdin is not a TTY

Activity

  1. devrimcavusoglu commented on Aug 19, 2026

    @devrimcavusoglu
    Owner

    Implemented in #107: skern init --no-instructions.

    Worth knowing: skern already never prompted when stdin is not a TTY or --json is set — resolveInstructionChoices gates on isTerminal(stdin), so there was no path to a blocking read. What was missing was the stated guarantee plus an explicit flag; both are now in --help and the docs ("Interactivity contract"). --no-instructions combined with any opt-in flag is a validation error (exit 2).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions