Skip to content

capy 0.9.7

Choose a tag to compare

@cvince cvince released this 02 Oct 01:56
86e6b8a

capy 0.9.7

Improved

  • capy agents works without a terminal.
    • --yes writes or removes the Capy section in AGENTS.md / CLAUDE.md with no prompt.
    • --non-tty never prompts.
    • Without --yes and no terminal, it refuses with AGENTS_SETUP_NEEDS_TTY (exit 3). Under --json, the refusal names the flag to pass: unanswered: [{ id: "confirm", flag: "--yes" }].
  • capy agents --dry-run shows which files would be created, updated or removed, and changes nothing. It never prompts, so it works without a terminal and without --yes.
    • capy --dry-run agents works too.
    • Combine with --remove to preview a removal, and with --json for { ok, dry_run: true, files }.
  • Set a secret from a pipe: <cmd> | capy edit NAME and <cmd> | capy add NAME. The value goes straight from the producing command into Capy and never shows up in your shell history or an agent's context.
    • One trailing line ending is stripped; everything else (spaces, inner newlines) is kept. Empty input, input over 1 MiB, and NUL bytes are refused.
    • --json returns { ok, name, branch, action, pushed } with action = created | updated | unchanged. The value never appears in any output.
    • capy edit NAME in a terminal opens the editor on that variable.
    • capy edit with no name and no terminal now refuses with EDIT_NEEDS_TTY (exit 3) instead of hanging.
    • The capy agents section now tells agents to pipe values this way.
  • capy transport fits on screen.
    • The link now carries only a short ID and a one-time key (~100 characters), so the QR code is much smaller. The encrypted key waits on Capy's server, which can't read it without the key in your link.
    • In a terminal, the QR opens full screen, centered, with the masked link and c copy / r reveal / q done underneath.
    • A short note before the link explains how transport and capy pair work together.
  • capy deploy commits .capy/deploy.json with keep.lock. The target settings (names only, no values) now travel with the deploy commit, so teammates and CI get them too.
  • capy pair confirms the account first. After you approve in the browser, it asks "Enable this location as [email]?" before it installs the session or keys. Enter defaults to No.
  • QR codes are never silently skipped. If one is too big for the window, Capy still shows it and tells you to zoom out. This also applies to capy pair.