rtk-ai/rtk

Feature request: rtk passthrough for env -u/env VAR=val command prefix

Open

#1 606 ouverte le 29 avr. 2026

Voir sur GitHub
 (1 commentaire) (0 réactions) (0 assignés)Rust (2 914 forks)batch import
area:clieffort-mediumenhancementhelp wantedpriority:medium

Métriques du dépôt

Stars
 (48 085 stars)
Métriques de merge PR
 (Merge moyen 11j 1h) (45 PRs mergées en 30 j)

Description

Real-world numbers from rtk discover --all --since 30:

Pattern Calls (30d)
env -u VAR ... <cmd> 92

The env prefix (used to unset/override environment variables before invoking another binary, e.g. env -u HTTP_PROXY -u HTTPS_PROXY curl ...) is a common workaround in environments where certain env vars need to be stripped for specific commands. Today this prefix prevents rtk from rewriting the inner command, because the rewrite engine matches on the leading token, sees env, and bails out.

Suggested wrapper behavior:

rtk env <env-args> <inner-cmd> <inner-args...> should:

  1. Parse env flags / VAR=value assignments / -u VAR removals up to the first non-env token
  2. Recursively rewrite the inner command via the standard rtk rewrite pipeline
  3. Re-emit env <env-args> <rewritten-inner-cmd> so the env modifications still apply

Example:

  • Input: env -u HTTP_PROXY -u HTTPS_PROXY curl -s https://example.com/api
  • Output: env -u HTTP_PROXY -u HTTPS_PROXY rtk curl -s https://example.com/api

This mirrors what rtk already does for direct invocations, but lets the env prefix pass through transparently. The savings come from the inner command's normal RTK filter (curl, go, node, etc.), not from env itself.

Methodology: counts come from rtk discover --all --since 30 against the local Claude Code transcript directory.

Guide contributeur