Skip to content

[agent] feat: interactive envx send, stdin format detection, KEY=VALUE by default - #93

Merged
alexng353 merged 2 commits into
mainfrom
agent/send-interactive
Sep 27, 2026
Merged

alexng353 merged 2 commits into
mainfrom
agent/send-interactive

Conversation

@alexng353

Copy link
Copy Markdown
Member

[agent]

Summary

  • envx send interactive mode: with no arguments in a terminal, pick a trusted friend → type a hidden secret or send a file → choose an expiry. envx send <friend> keeps going straight to the hidden prompt. Without a TTY and no friend, it errors with guidance.
  • Input detection: piped stdin was already read without --stdin. Piped/file input whose every line is a conventional UPPER_NAME=value assignment is now sent as variables automatically (announced on stderr). Base64-looking tokens (QUJDRA==), lowercase password=x, and mixed content stay text. --text forces text; --env still forces variables.
  • KEY=VALUE by default: envx variables defaults to KEY=VALUE lines (--table for the box table; --kv hidden no-op for compatibility). envx read prints variable messages as KEY=VALUE lines, so envx read <id> > .env works. envx get config prints key=value lines.

Testing

  • cargo fmt --check, cargo clippy --all-targets (no new warnings), cargo test (71 passed)
  • Docker against a disposable API + Postgres: tests/social_e2e.py and tests/social_pty.py pass, including new wizard (typed + file) and detection/--text/missing-friend cases.

Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com

🤖 Generated with Claude Code

alexng353 and others added 2 commits September 27, 2026 00:33
Bare `envx send` in a terminal picks a trusted friend, asks whether to
type a hidden secret or send a file, and offers an expiry. Piped or file
input that is entirely conventional KEY=VALUE lines is sent as variables
(noted on stderr); --text forces plain text and --env still forces
variables.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
`envx variables` now prints KEY=VALUE lines by default; --table opts
into the box table and --kv is kept as a hidden no-op. `envx read` prints
variable messages as KEY=VALUE lines instead of JSON, and `envx get
config` prints key=value lines.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@alexng353
alexng353 merged commit b4ca12f into main Sep 27, 2026
5 checks passed
@alexng353
alexng353 deleted the agent/send-interactive branch September 27, 2026 07:54
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.

1 participant