···4343 ${envString}
4444 ${preHook}
45454646- # Check if bulk key file should be used for decryption
4747- if [[ -n "''${PASS_BULK_KEY_FILE:-}" ]]; then
4848- if [[ ! -f "$PASS_BULK_KEY_FILE" ]] || [[ ! -s "$PASS_BULK_KEY_FILE" ]]; then
4949- mkdir -p "$(dirname "$PASS_BULK_KEY_FILE")"
5050- ${exePath} show bulk-operations/age-key > "$PASS_BULK_KEY_FILE" 2>/dev/null || true
5151- fi
5252- fi
4646+ # Determine if the command needs decryption
4747+ needs_decrypt=true
4848+ case "''${1:-}" in
4949+ ls|find|git|insert|generate|rm|mv|cp|help|version|init)
5050+ needs_decrypt=false
5151+ ;;
5252+ esac
53535454- # Set up identities for age decryption
5555- if [[ -n "''${PASS_BULK_KEY_FILE:-}" ]] && [[ -f "$PASS_BULK_KEY_FILE" ]] && [[ -s "$PASS_BULK_KEY_FILE" ]]; then
5656- # Use bulk key if available
5757- export PASSAGE_IDENTITIES_FILE="$PASS_BULK_KEY_FILE"
5858- else
5959- # Detect available age keys
6060- export AGE_DETECT_KEYS_DIR="${self}/keys"
6161- eval "$(age-detect)"
6262-6363- # Set up identity file if detected
6464- if [[ -n "''${IDENTITY_FILE:-}" ]]; then
6565- export PASSAGE_IDENTITIES_FILE="$IDENTITY_FILE"
6666- trap 'rm -f "$IDENTITY_FILE"' EXIT
5454+ setup_identities() {
5555+ # Check if bulk key file should be used for decryption
5656+ if [[ -n "''${PASS_BULK_KEY_FILE:-}" ]]; then
5757+ if [[ ! -f "$PASS_BULK_KEY_FILE" ]] || [[ ! -s "$PASS_BULK_KEY_FILE" ]]; then
5858+ mkdir -p "$(dirname "$PASS_BULK_KEY_FILE")"
5959+ ${exePath} show bulk-operations/age-key > "$PASS_BULK_KEY_FILE" 2>/dev/null || true
6060+ fi
6761 fi
6262+6363+ # Set up identities for age decryption
6464+ if [[ -n "''${PASS_BULK_KEY_FILE:-}" ]] && [[ -f "$PASS_BULK_KEY_FILE" ]] && [[ -s "$PASS_BULK_KEY_FILE" ]]; then
6565+ # Use bulk key if available
6666+ export PASSAGE_IDENTITIES_FILE="$PASS_BULK_KEY_FILE"
6767+ else
6868+ # Detect available age keys
6969+ export AGE_DETECT_KEYS_DIR="${self}/keys"
7070+ eval "$(age-detect)"
7171+7272+ # Set up identity file if detected
7373+ if [[ -n "''${IDENTITY_FILE:-}" ]]; then
7474+ export PASSAGE_IDENTITIES_FILE="$IDENTITY_FILE"
7575+ trap 'rm -f "$IDENTITY_FILE"' EXIT
7676+ fi
7777+ fi
7878+ }
7979+8080+ if [[ "$needs_decrypt" == true ]]; then
8181+ setup_identities
6882 fi
69837084 ${